@medusajs/loyalty-plugin 0.0.7-preview.4 → 0.0.7-preview.6

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 (173) hide show
  1. package/.medusa/server/medusa-config.d.ts +2 -0
  2. package/.medusa/server/src/admin/index.js +26651 -26545
  3. package/.medusa/server/src/admin/index.mjs +26654 -26548
  4. package/.medusa/server/src/api/admin/gift-cards/[id]/orders/route.d.ts +2 -0
  5. package/.medusa/server/src/api/admin/gift-cards/[id]/orders/route.js +1 -1
  6. package/.medusa/server/src/api/admin/gift-cards/[id]/route.d.ts +4 -0
  7. package/.medusa/server/src/api/admin/gift-cards/[id]/route.js +1 -1
  8. package/.medusa/server/src/api/admin/gift-cards/middlewares.d.ts +2 -0
  9. package/.medusa/server/src/api/admin/gift-cards/middlewares.js +1 -9
  10. package/.medusa/server/src/api/admin/gift-cards/query-config.d.ts +14 -0
  11. package/.medusa/server/src/api/admin/gift-cards/route.d.ts +4 -0
  12. package/.medusa/server/src/api/admin/gift-cards/route.js +1 -1
  13. package/.medusa/server/src/api/admin/gift-cards/validators.d.ts +381 -0
  14. package/.medusa/server/src/api/admin/gift-cards/validators.js +2 -8
  15. package/.medusa/server/src/api/admin/store-credit-accounts/[id]/credit/route.d.ts +3 -0
  16. package/.medusa/server/src/api/admin/store-credit-accounts/[id]/credit/route.js +30 -0
  17. package/.medusa/server/src/api/admin/store-credit-accounts/[id]/route.d.ts +3 -0
  18. package/.medusa/server/src/api/admin/store-credit-accounts/[id]/route.js +1 -6
  19. package/.medusa/server/src/api/admin/store-credit-accounts/[id]/transactions/route.d.ts +3 -0
  20. package/.medusa/server/src/api/admin/store-credit-accounts/[id]/transactions/route.js +1 -1
  21. package/.medusa/server/src/api/admin/store-credit-accounts/middlewares.d.ts +2 -0
  22. package/.medusa/server/src/api/admin/store-credit-accounts/middlewares.js +9 -1
  23. package/.medusa/server/src/api/admin/store-credit-accounts/query-config.d.ts +18 -0
  24. package/.medusa/server/src/api/admin/store-credit-accounts/query-config.js +2 -1
  25. package/.medusa/server/src/api/admin/store-credit-accounts/route.d.ts +4 -0
  26. package/.medusa/server/src/api/admin/store-credit-accounts/route.js +1 -1
  27. package/.medusa/server/src/api/admin/store-credit-accounts/validators.d.ts +412 -0
  28. package/.medusa/server/src/api/admin/store-credit-accounts/validators.js +6 -8
  29. package/.medusa/server/src/api/middlewares.d.ts +2 -0
  30. package/.medusa/server/src/api/middlewares.js +7 -9
  31. package/.medusa/server/src/api/store/carts/[id]/gift-cards/route.d.ts +5 -0
  32. package/.medusa/server/src/api/store/carts/[id]/gift-cards/route.js +1 -1
  33. package/.medusa/server/src/api/store/carts/[id]/store-credits/route.d.ts +4 -0
  34. package/.medusa/server/src/api/store/carts/[id]/store-credits/route.js +1 -1
  35. package/.medusa/server/src/api/store/carts/middlewares.d.ts +2 -0
  36. package/.medusa/server/src/api/store/carts/query-config.d.ts +4 -0
  37. package/.medusa/server/src/api/store/carts/validators.d.ts +25 -0
  38. package/.medusa/server/src/api/store/gift-cards/[idOrCode]/route.d.ts +3 -0
  39. package/.medusa/server/src/api/store/gift-cards/[idOrCode]/route.js +1 -1
  40. package/.medusa/server/src/api/store/gift-cards/middlewares.d.ts +2 -0
  41. package/.medusa/server/src/api/store/gift-cards/middlewares.js +1 -10
  42. package/.medusa/server/src/api/store/gift-cards/query-config.d.ts +9 -0
  43. package/.medusa/server/src/api/store/gift-cards/validators.d.ts +11 -0
  44. package/.medusa/server/src/api/store/store-credit-accounts/[id]/route.d.ts +3 -0
  45. package/.medusa/server/src/api/store/store-credit-accounts/[id]/route.js +1 -1
  46. package/.medusa/server/src/api/store/store-credit-accounts/claim/route.d.ts +3 -0
  47. package/.medusa/server/src/api/store/store-credit-accounts/claim/route.js +25 -0
  48. package/.medusa/server/src/api/store/store-credit-accounts/middlewares.d.ts +2 -0
  49. package/.medusa/server/src/api/store/store-credit-accounts/middlewares.js +9 -1
  50. package/.medusa/server/src/api/store/store-credit-accounts/query-config.d.ts +9 -0
  51. package/.medusa/server/src/api/store/store-credit-accounts/route.d.ts +3 -0
  52. package/.medusa/server/src/api/store/store-credit-accounts/route.js +1 -1
  53. package/.medusa/server/src/api/store/store-credit-accounts/validators.d.ts +120 -0
  54. package/.medusa/server/src/api/store/store-credit-accounts/validators.js +5 -2
  55. package/.medusa/server/src/links/cart-gift-cards-link.d.ts +2 -0
  56. package/.medusa/server/src/links/customer-store-credit-account-link.d.ts +1 -0
  57. package/.medusa/server/src/links/gift-card-store-credit.d.ts +2 -0
  58. package/.medusa/server/src/links/order-gift-cards-link.d.ts +2 -0
  59. package/.medusa/server/src/links/order-line-item-gift-card-link.d.ts +1 -0
  60. package/.medusa/server/src/modules/loyalty/index.d.ts +21 -0
  61. package/.medusa/server/src/modules/loyalty/migrations/Migration20250123130553.d.ts +5 -0
  62. package/.medusa/server/src/modules/loyalty/migrations/Migration20250127174331.d.ts +5 -0
  63. package/.medusa/server/src/modules/loyalty/migrations/Migration20250206141026.d.ts +5 -0
  64. package/.medusa/server/src/modules/loyalty/migrations/Migration20250206141429.d.ts +5 -0
  65. package/.medusa/server/src/modules/loyalty/migrations/Migration20250206144714.d.ts +5 -0
  66. package/.medusa/server/src/modules/loyalty/migrations/Migration20250326095923.d.ts +5 -0
  67. package/.medusa/server/src/modules/loyalty/migrations/Migration20250617080328.d.ts +5 -0
  68. package/.medusa/server/src/modules/loyalty/models/gift-card.d.ts +18 -0
  69. package/.medusa/server/src/modules/loyalty/service.d.ts +21 -0
  70. package/.medusa/server/src/modules/store-credit/index.d.ts +5 -0
  71. package/.medusa/server/src/modules/store-credit/migrations/Migration20250129115518.d.ts +5 -0
  72. package/.medusa/server/src/modules/store-credit/migrations/Migration20250130213237.d.ts +5 -0
  73. package/.medusa/server/src/modules/store-credit/migrations/Migration20250130220640.d.ts +5 -0
  74. package/.medusa/server/src/modules/store-credit/migrations/Migration20250131205753.d.ts +5 -0
  75. package/.medusa/server/src/modules/store-credit/migrations/Migration20250520081315.d.ts +5 -0
  76. package/.medusa/server/src/modules/store-credit/migrations/Migration20250626081315.d.ts +5 -0
  77. package/.medusa/server/src/modules/store-credit/migrations/Migration20250626081315.js +16 -0
  78. package/.medusa/server/src/modules/store-credit/migrations/Migration20250722080351.d.ts +5 -0
  79. package/.medusa/server/src/modules/store-credit/migrations/Migration20250722080351.js +27 -0
  80. package/.medusa/server/src/modules/store-credit/models/account-transaction.d.ts +28 -0
  81. package/.medusa/server/src/modules/store-credit/models/account-transaction.js +1 -7
  82. package/.medusa/server/src/modules/store-credit/models/store-credit-account.d.ts +27 -0
  83. package/.medusa/server/src/modules/store-credit/models/store-credit-account.js +3 -6
  84. package/.medusa/server/src/modules/store-credit/service.d.ts +29 -0
  85. package/.medusa/server/src/modules/store-credit/service.js +19 -178
  86. package/.medusa/server/src/subscribers/create-gift-card.d.ts +5 -0
  87. package/.medusa/server/src/subscribers/create-gift-card.js +1 -3
  88. package/.medusa/server/src/types/cart/index.d.ts +6 -0
  89. package/.medusa/server/src/types/http/gift-card.d.ts +42 -0
  90. package/.medusa/server/src/types/http/index.d.ts +3 -0
  91. package/.medusa/server/src/types/http/index.js +1 -2
  92. package/.medusa/server/src/types/http/store-credit-account.d.ts +60 -0
  93. package/.medusa/server/src/types/http/transaction.d.ts +19 -0
  94. package/.medusa/server/src/types/index.d.ts +4 -0
  95. package/.medusa/server/src/types/loyalty/index.d.ts +3 -0
  96. package/.medusa/server/src/types/loyalty/module.d.ts +42 -0
  97. package/.medusa/server/src/types/loyalty/service.d.ts +24 -0
  98. package/.medusa/server/src/types/loyalty/workflows.d.ts +3 -0
  99. package/.medusa/server/src/types/modules.d.ts +6 -0
  100. package/.medusa/server/src/types/store-credit/index.d.ts +2 -0
  101. package/.medusa/server/src/types/store-credit/module.d.ts +82 -0
  102. package/.medusa/server/src/types/store-credit/module.js +1 -1
  103. package/.medusa/server/src/types/store-credit/service.d.ts +34 -0
  104. package/.medusa/server/src/utils/code-generator.d.ts +1 -0
  105. package/.medusa/server/src/utils/code-generator.js +32 -0
  106. package/.medusa/server/src/workflows/carts/index.d.ts +5 -0
  107. package/.medusa/server/src/workflows/carts/index.js +22 -0
  108. package/.medusa/server/src/workflows/carts/steps/validate-gift-card-balances.d.ts +5 -0
  109. package/.medusa/server/src/workflows/carts/steps/validate-gift-card-balances.js +14 -0
  110. package/.medusa/server/src/workflows/carts/workflows/add-gift-card-to-cart.d.ts +18 -0
  111. package/.medusa/server/src/workflows/carts/workflows/add-gift-card-to-cart.js +14 -56
  112. package/.medusa/server/src/workflows/carts/workflows/add-store-credits-to-cart.d.ts +15 -0
  113. package/.medusa/server/src/workflows/carts/workflows/add-store-credits-to-cart.js +12 -25
  114. package/.medusa/server/src/workflows/carts/workflows/confirm-cart-credit-lines.d.ts +9 -0
  115. package/.medusa/server/src/workflows/carts/workflows/confirm-cart-credit-lines.js +16 -34
  116. package/.medusa/server/src/workflows/carts/workflows/refresh-cart-gift-cards.d.ts +3 -0
  117. package/.medusa/server/src/workflows/carts/workflows/refresh-cart-gift-cards.js +5 -24
  118. package/.medusa/server/src/workflows/carts/workflows/remove-gift-cart-from-cart.d.ts +17 -0
  119. package/.medusa/server/src/workflows/carts/workflows/remove-gift-cart-from-cart.js +4 -4
  120. package/.medusa/server/src/workflows/common/steps/validate-presence-of.d.ts +5 -0
  121. package/.medusa/server/src/workflows/gift-cards/index.d.ts +9 -0
  122. package/.medusa/server/src/workflows/gift-cards/index.js +26 -0
  123. package/.medusa/server/src/workflows/gift-cards/steps/create-gift-cards.d.ts +2 -0
  124. package/.medusa/server/src/workflows/gift-cards/steps/create-gift-cards.js +3 -3
  125. package/.medusa/server/src/workflows/gift-cards/steps/delete-gift-cards.d.ts +3 -0
  126. package/.medusa/server/src/workflows/gift-cards/steps/retrieve-gift-card-balance.d.ts +6 -0
  127. package/.medusa/server/src/workflows/gift-cards/steps/retrieve-gift-card-balance.js +2 -3
  128. package/.medusa/server/src/workflows/gift-cards/steps/update-gift-cards.d.ts +2 -0
  129. package/.medusa/server/src/workflows/gift-cards/workflows/claim-gift-card.d.ts +23 -0
  130. package/.medusa/server/src/workflows/gift-cards/workflows/claim-gift-card.js +65 -0
  131. package/.medusa/server/src/workflows/gift-cards/workflows/create-gift-cards.d.ts +2 -0
  132. package/.medusa/server/src/workflows/gift-cards/workflows/create-gift-cards.js +51 -2
  133. package/.medusa/server/src/workflows/gift-cards/workflows/delete-gift-card.d.ts +3 -0
  134. package/.medusa/server/src/workflows/gift-cards/workflows/redeem-gift-card.d.ts +13 -0
  135. package/.medusa/server/src/workflows/gift-cards/workflows/redeem-gift-card.js +33 -64
  136. package/.medusa/server/src/workflows/gift-cards/workflows/update-gift-cards.d.ts +2 -0
  137. package/.medusa/server/src/workflows/hooks/after-order-created.d.ts +1 -0
  138. package/.medusa/server/src/workflows/hooks/after-order-credit-lines-created.d.ts +1 -0
  139. package/.medusa/server/src/workflows/hooks/before-payment-collection-refresh.d.ts +1 -0
  140. package/.medusa/server/src/workflows/hooks/complete-cart-before-payment-authorization.d.ts +1 -0
  141. package/.medusa/server/src/workflows/index.d.ts +3 -0
  142. package/.medusa/server/src/workflows/index.js +20 -0
  143. package/.medusa/server/src/workflows/orders/index.d.ts +2 -0
  144. package/.medusa/server/src/workflows/orders/index.js +19 -0
  145. package/.medusa/server/src/workflows/orders/workflows/link-gift-cards-to-order.d.ts +4 -0
  146. package/.medusa/server/src/workflows/orders/workflows/refund-credit-lines.d.ts +17 -0
  147. package/.medusa/server/src/workflows/orders/workflows/refund-credit-lines.js +2 -10
  148. package/.medusa/server/src/workflows/store-credit/index.d.ts +8 -0
  149. package/.medusa/server/src/workflows/store-credit/index.js +25 -0
  150. package/.medusa/server/src/workflows/store-credit/steps/create-store-credit-accounts.d.ts +2 -0
  151. package/.medusa/server/src/workflows/store-credit/steps/create-store-credit-accounts.js +8 -1
  152. package/.medusa/server/src/workflows/store-credit/steps/credit-account.d.ts +2 -0
  153. package/.medusa/server/src/workflows/store-credit/steps/debit-account.d.ts +2 -0
  154. package/.medusa/server/src/workflows/store-credit/workflows/claim-store-credit-account.d.ts +11 -0
  155. package/.medusa/server/src/workflows/store-credit/workflows/claim-store-credit-account.js +117 -0
  156. package/.medusa/server/src/workflows/store-credit/workflows/create-store-credit-accounts.d.ts +9 -0
  157. package/.medusa/server/src/workflows/store-credit/workflows/create-store-credit-accounts.js +1 -1
  158. package/.medusa/server/src/workflows/store-credit/workflows/credit-accounts.d.ts +2 -0
  159. package/.medusa/server/src/workflows/store-credit/workflows/credit-store-credit-account.d.ts +2 -0
  160. package/.medusa/server/src/workflows/store-credit/workflows/credit-store-credit-account.js +44 -0
  161. package/.medusa/server/src/workflows/store-credit/workflows/debit-accounts.d.ts +2 -0
  162. package/package.json +14 -3
  163. package/.medusa/server/src/api/admin/gift-cards/[id]/redeem/route.js +0 -24
  164. package/.medusa/server/src/api/admin/transaction-groups/middlewares.js +0 -16
  165. package/.medusa/server/src/api/admin/transaction-groups/query-config.js +0 -13
  166. package/.medusa/server/src/api/admin/transaction-groups/route.js +0 -27
  167. package/.medusa/server/src/api/admin/transaction-groups/validators.js +0 -19
  168. package/.medusa/server/src/api/store/gift-cards/[idOrCode]/redeem/route.js +0 -24
  169. package/.medusa/server/src/modules/store-credit/models/transaction-group.js +0 -28
  170. package/.medusa/server/src/types/http/transaction-group.js +0 -3
  171. package/.medusa/server/src/utils/gift-card.js +0 -32
  172. package/.medusa/server/src/workflows/store-credit/steps/create-transaction-groups.js +0 -17
  173. package/.medusa/server/src/workflows/store-credit/workflows/create-transaction-groups.js +0 -12
@@ -0,0 +1,29 @@
1
+ import { Context, DAL, FindConfig, InferEntityType, ModulesSdkTypes, SoftDeleteReturn } from "@medusajs/framework/types";
2
+ import { IStoreCreditModuleService, ModuleAccountStats, ModuleAccountTransaction, ModuleCreditAccount, ModuleDebitAccount, ModuleRetrieveAccountStats, ModuleStoreCreditAccount, ModuleStoreCreditAccountFilters, ModuleUpdateStoreCreditAccount } from "../../types";
3
+ type InjectedDependencies = {
4
+ baseRepository: DAL.RepositoryService;
5
+ accountTransactionService: ModulesSdkTypes.IMedusaInternalService<any>;
6
+ };
7
+ declare const StoreCreditService_base: import("@medusajs/framework/utils").MedusaServiceReturnType<{
8
+ StoreCreditAccount: {
9
+ dto: ModuleStoreCreditAccount;
10
+ };
11
+ AccountTransaction: {
12
+ dto: ModuleAccountTransaction;
13
+ };
14
+ }>;
15
+ declare class StoreCreditService extends StoreCreditService_base implements IStoreCreditModuleService {
16
+ protected baseRepository_: DAL.RepositoryService;
17
+ protected readonly accountTransactionService_: ModulesSdkTypes.IMedusaInternalService<InferEntityType<ModuleAccountTransaction>>;
18
+ constructor({ baseRepository, accountTransactionService, }: InjectedDependencies);
19
+ listStoreCreditAccounts(filters: ModuleStoreCreditAccountFilters, config?: FindConfig<ModuleStoreCreditAccount>, sharedContext?: Context): Promise<ModuleStoreCreditAccount[]>;
20
+ updateStoreCreditAccounts(data: ModuleUpdateStoreCreditAccount | ModuleUpdateStoreCreditAccount[], sharedContext?: Context): Promise<ModuleStoreCreditAccount[]>;
21
+ deleteStoreCreditAccounts(ids: string | string[], sharedContext?: Context): Promise<void>;
22
+ softDeleteStoreCreditAccounts<TReturnableLinkableKeys extends string = string>(ids: string | string[], config?: SoftDeleteReturn<TReturnableLinkableKeys>, sharedContext?: Context): Promise<Record<string, string[]> | void>;
23
+ retrieveAccountStats(data: ModuleRetrieveAccountStats, sharedContext?: Context): Promise<ModuleAccountStats>;
24
+ creditAccounts_(creditAccountsData: ModuleCreditAccount[], sharedContext?: Context): Promise<ModuleAccountTransaction[]>;
25
+ creditAccounts(data: ModuleCreditAccount[], sharedContext?: Context): Promise<ModuleAccountTransaction[]>;
26
+ debitAccounts(debitAccountsData: ModuleDebitAccount[], sharedContext?: Context): Promise<ModuleAccountTransaction[]>;
27
+ debitAccounts_(debitAccountsData: ModuleDebitAccount[], sharedContext?: Context): Promise<ModuleAccountTransaction[]>;
28
+ }
29
+ export default StoreCreditService;
@@ -19,8 +19,7 @@ const utils_1 = require("@medusajs/framework/utils");
19
19
  const types_1 = require("../../types");
20
20
  const account_transaction_1 = __importDefault(require("./models/account-transaction"));
21
21
  const store_credit_account_1 = __importDefault(require("./models/store-credit-account"));
22
- const transaction_group_1 = __importDefault(require("./models/transaction-group"));
23
- class StoreCreditService extends (0, utils_1.MedusaService)({ StoreCreditAccount: store_credit_account_1.default, TransactionGroup: transaction_group_1.default, AccountTransaction: account_transaction_1.default }) {
22
+ class StoreCreditService extends (0, utils_1.MedusaService)({ StoreCreditAccount: store_credit_account_1.default, AccountTransaction: account_transaction_1.default }) {
24
23
  constructor({ baseRepository, accountTransactionService, }) {
25
24
  super(...arguments);
26
25
  this.baseRepository_ = baseRepository;
@@ -28,13 +27,10 @@ class StoreCreditService extends (0, utils_1.MedusaService)({ StoreCreditAccount
28
27
  }
29
28
  // @ts-expect-error
30
29
  async listStoreCreditAccounts(filters, config = {}, sharedContext = {}) {
31
- const transaction_group_id = filters.transaction_group_id;
32
- delete filters.transaction_group_id;
33
30
  const accounts = await super.listStoreCreditAccounts(filters, config, sharedContext);
34
31
  for (const account of accounts) {
35
32
  const stats = await this.retrieveAccountStats({
36
33
  account_id: account.id,
37
- transaction_group_id,
38
34
  }, sharedContext);
39
35
  account.balance = stats.balance;
40
36
  account.credits = stats.credits;
@@ -86,60 +82,13 @@ class StoreCreditService extends (0, utils_1.MedusaService)({ StoreCreditAccount
86
82
  */
87
83
  return await super.softDeleteStoreCreditAccounts(ids, config, sharedContext);
88
84
  }
89
- /* Entity: TransactionGroup */
90
- // @ts-expect-error
91
- async updateTransactionGroups(data, sharedContext = {}) {
92
- /*
93
- We should only allow updating the whitelisted fields for transaction groups.
94
-
95
- Changing the account or code will lead to unexpected results where balances are not tracked correctly.
96
- */
97
- const whitelistedFields = ["id", "metadata"];
98
- const normalizedData = Array.isArray(data) ? data : [data];
99
- normalizedData.forEach((transactionGroup) => {
100
- Object.keys(transactionGroup).forEach((key) => {
101
- if (!whitelistedFields.includes(key)) {
102
- throw new Error(`Field ${key} is not allowed to be updated`);
103
- }
104
- });
105
- });
106
- return await super.updateTransactionGroups(normalizedData, sharedContext);
107
- }
108
- // @ts-expect-error
109
- async deleteTransactionGroups(ids, sharedContext = {}) {
110
- /*
111
- TODO: Before deleting the transaction groups, we should check if the transaction groups have any transactions.
112
- If they do, we should throw an error.
113
-
114
- We should only allow deleting transaction groups that have no transactions.
115
- */
116
- return await super.deleteTransactionGroups(ids, sharedContext);
117
- }
118
- // @ts-expect-error
119
- async softDeleteTransactionGroups(ids, config, sharedContext = {}) {
120
- /*
121
- TODO: Before sodeleting the transaction groups, we should check if the transaction groups have any transactions.
122
- If they do, we should throw an error.
123
-
124
- We should only allow soft deleting transaction groups that have no transactions.
125
- */
126
- return await super.softDeleteTransactionGroups(ids, config, sharedContext);
127
- }
128
85
  /* Entity: AccountTransaction */
129
86
  async retrieveAccountStats(data, sharedContext = {}) {
130
87
  const manager = sharedContext.transactionManager ??
131
88
  sharedContext.manager;
132
89
  const knex = manager.getTransactionContext() ?? manager.getKnex();
133
- const { account_id, transaction_group_id } = data;
134
- let code;
90
+ const { account_id } = data;
135
91
  const account = await super.retrieveStoreCreditAccount(account_id, {}, sharedContext);
136
- if ((0, utils_1.isDefined)(transaction_group_id)) {
137
- const [transactionGroup] = await super.listTransactionGroups({ $or: [{ id: transaction_group_id }, { code: transaction_group_id }] }, {}, sharedContext);
138
- if (!transactionGroup) {
139
- throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, `TransactionGroup with id or code: ${transaction_group_id} was not found`);
140
- }
141
- code = transactionGroup.code;
142
- }
143
92
  // TODO: For higher accuracy and precision, we should run the transaction amounts through big number
144
93
  // in memory and then use that value for the balance.
145
94
  // We need to figure out clever ways to do this without running too many calculations in memory
@@ -153,15 +102,7 @@ class StoreCreditService extends (0, utils_1.MedusaService)({ StoreCreditAccount
153
102
  .leftJoin("store_credit_account_transaction as at", "at.account_id", "account.id")
154
103
  .where("account.id", account.id)
155
104
  .groupBy("account.id");
156
- if ((0, utils_1.isDefined)(code)) {
157
- accountBalanceQuery
158
- .leftJoin("store_credit_transaction_group as tg", "tg.id", "at.transaction_group_id")
159
- .where("tg.code", code);
160
- }
161
105
  const accountBalances = await accountBalanceQuery;
162
- if ((0, utils_1.isDefined)(code) && accountBalances.length === 0) {
163
- throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, `TransactionGroup with id or code: ${transaction_group_id} was not found within account: ${account.id}`);
164
- }
165
106
  const accountBalance = accountBalances[0];
166
107
  const response = {
167
108
  id: account.id,
@@ -171,65 +112,25 @@ class StoreCreditService extends (0, utils_1.MedusaService)({ StoreCreditAccount
171
112
  };
172
113
  return await this.baseRepository_.serialize(response);
173
114
  }
174
- async listTransactionGroupsStats(data, sharedContext = {}) {
175
- const manager = sharedContext.manager;
176
- const knex = manager.getKnex();
177
- const { account_id, transaction_group_id } = data;
178
- let code;
179
- const account = await super.retrieveStoreCreditAccount(account_id, {}, sharedContext);
180
- if ((0, utils_1.isDefined)(transaction_group_id)) {
181
- const transactionGroup = await super.retrieveTransactionGroup(transaction_group_id, {}, sharedContext);
182
- code = transactionGroup.code;
183
- }
184
- // TODO: For higher accuracy and precision, we should run the transaction amounts through big number
185
- // in memory and then use that value for the balance.
186
- // We need to figure out clever ways to do this without running too many calculations in memory
187
- const transactionGroupsQuery = knex("store_credit_transaction_group as tg")
188
- .select({
189
- id: "tg.id",
190
- credits: knex.raw(`SUM(CASE WHEN at.type = 'credit' THEN at.amount ELSE 0 END)`),
191
- debits: knex.raw(`SUM(CASE WHEN at.type = 'debit' THEN at.amount ELSE 0 END)`),
192
- balance: knex.raw(`COALESCE(SUM(CASE WHEN at.type = 'credit' THEN at.amount::numeric ELSE -at.amount::numeric END), 0)`),
193
- })
194
- .leftJoin("store_credit_account_transaction as at", "at.transaction_group_id", "tg.id")
195
- .where("tg.account_id", account.id)
196
- .groupBy("tg.id")
197
- .orderBy("tg.created_at", "asc");
198
- if ((0, utils_1.isDefined)(transaction_group_id)) {
199
- transactionGroupsQuery.where("tg.code", code);
200
- }
201
- let transactionGroups = await transactionGroupsQuery;
202
- transactionGroups = transactionGroups.map((transactionGroup) => ({
203
- id: transactionGroup.id,
204
- balance: utils_1.MathBN.convert(transactionGroup.balance).toNumber(),
205
- debits: utils_1.MathBN.convert(transactionGroup.debits).toNumber(),
206
- credits: utils_1.MathBN.convert(transactionGroup.credits).toNumber(),
207
- }));
208
- return await this.baseRepository_.serialize(transactionGroups);
209
- }
210
115
  async creditAccounts_(creditAccountsData, sharedContext = {}) {
211
116
  const transactions = [];
212
117
  for (const data of creditAccountsData) {
213
- const { account_id, transaction_group_id, amount, reference, reference_id, } = data;
214
- if (!transaction_group_id) {
215
- throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Transaction group ID is required");
216
- }
118
+ const { account_id, amount, reference, reference_id, note } = data;
217
119
  if (!account_id) {
218
120
  throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Account ID is required");
219
121
  }
220
122
  if (!(0, utils_1.isDefined)(amount)) {
221
123
  throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Amount is required");
222
124
  }
223
- const transactionGroup = await super.retrieveTransactionGroup(transaction_group_id, {}, sharedContext);
224
125
  const storeCreditAccount = await super.retrieveStoreCreditAccount(account_id, {}, sharedContext);
225
126
  const createdTransactions = await this.accountTransactionService_.create([
226
127
  {
227
- transaction_group_id: transactionGroup.id,
228
128
  account_id: storeCreditAccount.id,
229
129
  amount,
230
130
  type: types_1.TransactionType.CREDIT,
231
131
  reference,
232
132
  reference_id,
133
+ note,
233
134
  },
234
135
  ], sharedContext);
235
136
  transactions.push(...createdTransactions);
@@ -248,56 +149,30 @@ class StoreCreditService extends (0, utils_1.MedusaService)({ StoreCreditAccount
248
149
  const manager = sharedContext.transactionManager;
249
150
  const transactions = [];
250
151
  for (const data of debitAccountsData) {
251
- const { account_id, transaction_group_id, amount, reference, reference_id, } = data;
252
- if ("transaction_group_id" in data && !(0, utils_1.isDefined)(transaction_group_id)) {
253
- throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "transaction_group_id has to be defined if input contains a transaction_group_id");
254
- }
152
+ const { account_id, amount, reference, reference_id, note } = data;
153
+ const amountBN = utils_1.MathBN.convert(amount);
255
154
  if (!account_id) {
256
155
  throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Account ID is required");
257
156
  }
258
157
  if (!(0, utils_1.isDefined)(amount)) {
259
158
  throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Amount is required");
260
159
  }
261
- const accountStats = await this.retrieveAccountStats({ account_id, transaction_group_id }, sharedContext);
262
- if (utils_1.MathBN.convert(accountStats.balance).lt(utils_1.MathBN.convert(data.amount))) {
160
+ if (amountBN.lte(0)) {
161
+ throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Amount must be greater than 0");
162
+ }
163
+ const accountStats = await this.retrieveAccountStats({ account_id }, sharedContext);
164
+ if (utils_1.MathBN.convert(accountStats.balance).lt(amountBN)) {
263
165
  throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Insufficient balance");
264
166
  }
265
- const transactionGroups = await this.listTransactionGroupsStats({
167
+ const createdTransaction = await this.accountTransactionService_.create({
266
168
  account_id: accountStats.id,
267
- transaction_group_id,
169
+ amount: amountBN,
170
+ type: types_1.TransactionType.DEBIT,
171
+ reference,
172
+ reference_id,
173
+ note,
268
174
  }, sharedContext);
269
- const transactionGroupMap = new Map();
270
- for (const transactionGroup of transactionGroups) {
271
- const currentBalance = transactionGroupMap.get(transactionGroup.id) || utils_1.MathBN.convert(0);
272
- transactionGroupMap.set(transactionGroup.id, utils_1.MathBN.add(currentBalance, transactionGroup.balance));
273
- }
274
- let remainingAmount = utils_1.MathBN.convert(amount);
275
- const debitTransactions = [];
276
- for (const [transactionGroupId, balance] of transactionGroupMap) {
277
- if (utils_1.MathBN.convert(balance).lte(0)) {
278
- continue;
279
- }
280
- const debitAmount = utils_1.MathBN.min(remainingAmount, balance);
281
- if (utils_1.MathBN.convert(debitAmount).gt(0)) {
282
- debitTransactions.push({
283
- account_id: accountStats.id,
284
- amount: debitAmount,
285
- type: types_1.TransactionType.DEBIT,
286
- transaction_group_id: transactionGroupId,
287
- reference,
288
- reference_id,
289
- });
290
- remainingAmount = utils_1.MathBN.sub(remainingAmount, debitAmount);
291
- }
292
- if (utils_1.MathBN.convert(remainingAmount).lte(0)) {
293
- break;
294
- }
295
- }
296
- if (debitTransactions.length === 0) {
297
- throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Could not process debit transactions");
298
- }
299
- const createdTransactions = await this.accountTransactionService_.create(debitTransactions, sharedContext);
300
- transactions.push(...createdTransactions);
175
+ transactions.push(createdTransaction);
301
176
  await manager.flush();
302
177
  }
303
178
  return transactions;
@@ -339,33 +214,6 @@ __decorate([
339
214
  __metadata("design:paramtypes", [Object, Object, Object]),
340
215
  __metadata("design:returntype", Promise)
341
216
  ], StoreCreditService.prototype, "softDeleteStoreCreditAccounts", null);
342
- __decorate([
343
- (0, utils_1.InjectTransactionManager)()
344
- // @ts-expect-error
345
- ,
346
- __param(1, (0, utils_1.MedusaContext)()),
347
- __metadata("design:type", Function),
348
- __metadata("design:paramtypes", [Object, Object]),
349
- __metadata("design:returntype", Promise)
350
- ], StoreCreditService.prototype, "updateTransactionGroups", null);
351
- __decorate([
352
- (0, utils_1.InjectTransactionManager)()
353
- // @ts-expect-error
354
- ,
355
- __param(1, (0, utils_1.MedusaContext)()),
356
- __metadata("design:type", Function),
357
- __metadata("design:paramtypes", [Object, Object]),
358
- __metadata("design:returntype", Promise)
359
- ], StoreCreditService.prototype, "deleteTransactionGroups", null);
360
- __decorate([
361
- (0, utils_1.InjectTransactionManager)()
362
- // @ts-expect-error
363
- ,
364
- __param(2, (0, utils_1.MedusaContext)()),
365
- __metadata("design:type", Function),
366
- __metadata("design:paramtypes", [Object, Object, Object]),
367
- __metadata("design:returntype", Promise)
368
- ], StoreCreditService.prototype, "softDeleteTransactionGroups", null);
369
217
  __decorate([
370
218
  (0, utils_1.InjectManager)(),
371
219
  __param(1, (0, utils_1.MedusaContext)()),
@@ -373,13 +221,6 @@ __decorate([
373
221
  __metadata("design:paramtypes", [Object, Object]),
374
222
  __metadata("design:returntype", Promise)
375
223
  ], StoreCreditService.prototype, "retrieveAccountStats", null);
376
- __decorate([
377
- (0, utils_1.InjectManager)(),
378
- __param(1, (0, utils_1.MedusaContext)()),
379
- __metadata("design:type", Function),
380
- __metadata("design:paramtypes", [Object, Object]),
381
- __metadata("design:returntype", Promise)
382
- ], StoreCreditService.prototype, "listTransactionGroupsStats", null);
383
224
  __decorate([
384
225
  (0, utils_1.InjectTransactionManager)(),
385
226
  __param(1, (0, utils_1.MedusaContext)()),
@@ -409,4 +250,4 @@ __decorate([
409
250
  __metadata("design:returntype", Promise)
410
251
  ], StoreCreditService.prototype, "debitAccounts_", null);
411
252
  exports.default = StoreCreditService;
412
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3N0b3JlLWNyZWRpdC9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBU0EscURBUW1DO0FBRW5DLHVDQWdCcUI7QUFDckIsdUZBQThEO0FBQzlELHlGQUErRDtBQUMvRCxtRkFBMEQ7QUFPMUQsTUFBTSxrQkFDSixTQUFRLElBQUEscUJBQWEsRUFJbEIsRUFBRSxrQkFBa0IsRUFBbEIsOEJBQWtCLEVBQUUsZ0JBQWdCLEVBQWhCLDJCQUFnQixFQUFFLGtCQUFrQixFQUFsQiw2QkFBa0IsRUFBRSxDQUFDO0lBUWhFLFlBQVksRUFDVixjQUFjLEVBQ2QseUJBQXlCLEdBQ0o7UUFDckIsS0FBSyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFFcEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxjQUFjLENBQUM7UUFDdEMsSUFBSSxDQUFDLDBCQUEwQixHQUFHLHlCQUF5QixDQUFDO0lBQzlELENBQUM7SUFJSyxBQUROLG1CQUFtQjtJQUNuQixLQUFLLENBQUMsdUJBQXVCLENBQzNCLE9BQXdDLEVBQ3hDLFNBQStDLEVBQUUsRUFDaEMsZ0JBQXlCLEVBQUU7UUFFNUMsTUFBTSxvQkFBb0IsR0FBRyxPQUFPLENBQUMsb0JBQW9CLENBQUM7UUFDMUQsT0FBTyxPQUFPLENBQUMsb0JBQW9CLENBQUM7UUFFcEMsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsdUJBQXVCLENBQ2xELE9BQU8sRUFDUCxNQUFNLEVBQ04sYUFBYSxDQUNkLENBQUM7UUFFRixLQUFLLE1BQU0sT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQy9CLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUMzQztnQkFDRSxVQUFVLEVBQUUsT0FBTyxDQUFDLEVBQUU7Z0JBQ3RCLG9CQUFvQjthQUNyQixFQUNELGFB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
253
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3N0b3JlLWNyZWRpdC9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBU0EscURBUW1DO0FBRW5DLHVDQVdxQjtBQUNyQix1RkFBOEQ7QUFDOUQseUZBQStEO0FBTy9ELE1BQU0sa0JBQ0osU0FBUSxJQUFBLHFCQUFhLEVBR2xCLEVBQUUsa0JBQWtCLEVBQWxCLDhCQUFrQixFQUFFLGtCQUFrQixFQUFsQiw2QkFBa0IsRUFBRSxDQUFDO0lBUTlDLFlBQVksRUFDVixjQUFjLEVBQ2QseUJBQXlCLEdBQ0o7UUFDckIsS0FBSyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7UUFFcEIsSUFBSSxDQUFDLGVBQWUsR0FBRyxjQUFjLENBQUM7UUFDdEMsSUFBSSxDQUFDLDBCQUEwQixHQUFHLHlCQUF5QixDQUFDO0lBQzlELENBQUM7SUFJSyxBQUROLG1CQUFtQjtJQUNuQixLQUFLLENBQUMsdUJBQXVCLENBQzNCLE9BQXdDLEVBQ3hDLFNBQStDLEVBQUUsRUFDaEMsZ0JBQXlCLEVBQUU7UUFFNUMsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsdUJBQXVCLENBQ2xELE9BQU8sRUFDUCxNQUFNLEVBQ04sYUFBYSxDQUNkLENBQUM7UUFFRixLQUFLLE1BQU0sT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQy9CLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUMzQztnQkFDRSxVQUFVLEVBQUUsT0FBTyxDQUFDLEVBQUU7YUFDdkIsRUFDRCxhQUFhLENBQ2QsQ0FBQztZQUVGLE9BQU8sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNoQyxPQUFPLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDaEMsT0FBTyxDQUFDLE1BQU0sR0FBRyxL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
@@ -0,0 +1,5 @@
1
+ import type { SubscriberArgs, SubscriberConfig } from "@medusajs/framework";
2
+ export default function createGiftCardHandler({ event: { data }, container, }: SubscriberArgs<{
3
+ id: string;
4
+ }>): Promise<void>;
5
+ export declare const config: SubscriberConfig;
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.config = void 0;
4
4
  exports.default = createGiftCardHandler;
5
5
  const utils_1 = require("@medusajs/framework/utils");
6
- const gift_card_1 = require("../utils/gift-card");
7
6
  const create_gift_cards_1 = require("../workflows/gift-cards/workflows/create-gift-cards");
8
7
  async function createGiftCardHandler({ event: { data }, container, }) {
9
8
  const orderId = data.id;
@@ -31,7 +30,6 @@ async function createGiftCardHandler({ event: { data }, container, }) {
31
30
  for (const giftCardLineItem of giftCardLineItems) {
32
31
  // For each gift card line item quantity, create a gift card using for const giftCard of giftCardLineItem.quantity
33
32
  for (let i = 0; i < giftCardLineItem.quantity; i++) {
34
- const giftCardCode = (0, gift_card_1.giftCardCodeGenerator)();
35
33
  const giftCardValue = giftCardLineItem.subtotal / giftCardLineItem.quantity;
36
34
  const { result: [giftCard], } = await create_gift_cards_1.createGiftCardsWorkflow.run({
37
35
  input: [
@@ -52,4 +50,4 @@ async function createGiftCardHandler({ event: { data }, container, }) {
52
50
  exports.config = {
53
51
  event: utils_1.OrderWorkflowEvents.PLACED,
54
52
  };
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWdpZnQtY2FyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zdWJzY3JpYmVycy9jcmVhdGUtZ2lmdC1jYXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQVVBLHdDQTJEQztBQW5FRCxxREFHbUM7QUFFbkMsa0RBQTJEO0FBQzNELDJGQUE4RjtBQUUvRSxLQUFLLFVBQVUscUJBQXFCLENBQUMsRUFDbEQsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQ2YsU0FBUyxHQUNzQjtJQUMvQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ3hCLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFakUsTUFBTSxFQUNKLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUNkLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ3BCLE1BQU0sRUFBRSxPQUFPO1FBQ2YsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRTtRQUN4QixNQUFNLEVBQUU7WUFDTixJQUFJO1lBQ0osZUFBZTtZQUNmLFVBQVU7WUFDVixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLFNBQVM7WUFDVCwyQkFBMkI7WUFDM0IsT0FBTztZQUNQLFVBQVU7WUFDVixXQUFXO1NBQ1o7S0FDRixDQUFDLENBQUM7SUFFSCxNQUFNLGlCQUFpQixHQUFJLEtBQW9CLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FDMUQsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FDdEMsQ0FBQztJQUVGLElBQUksaUJBQWlCLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ25DLE9BQU87SUFDVCxDQUFDO0lBRUQsS0FBSyxNQUFNLGdCQUFnQixJQUFJLGlCQUFpQixFQUFFLENBQUM7UUFDakQsa0hBQWtIO1FBQ2xILEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNuRCxNQUFNLFlBQVksR0FBRyxJQUFBLGlDQUFxQixHQUFFLENBQUM7WUFFN0MsTUFBTSxhQUFhLEdBQ2pCLGdCQUFnQixDQUFDLFFBQVEsR0FBRyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUM7WUFFeEQsTUFBTSxFQUNKLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUNuQixHQUFHLE1BQU0sMkNBQXVCLENBQUMsR0FBRyxDQUFDO2dCQUNwQyxLQUFLLEVBQUU7b0JBQ0w7d0JBQ0UsS0FBSyxFQUFFLGFBQWE7d0JBQ3BCLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTt3QkFDbEMsWUFBWSxFQUFFLGdCQUFnQixDQUFDLEVBQUU7d0JBQ2pDLFNBQVMsRUFBRSxPQUFPO3dCQUNsQixZQUFZLEVBQUUsS0FBSyxDQUFDLEVBQUU7d0JBQ3RCLFFBQVEsRUFBRSxFQUFFO3FCQUNiO2lCQUNGO2dCQUNELFNBQVM7YUFDVixDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFFWSxRQUFBLE1BQU0sR0FBcUI7SUFDdEMsS0FBSyxFQUFFLDJCQUFtQixDQUFDLE1BQU07Q0FDbEMsQ0FBQyJ9
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWdpZnQtY2FyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zdWJzY3JpYmVycy9jcmVhdGUtZ2lmdC1jYXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQVVBLHdDQXlEQztBQWpFRCxxREFHbUM7QUFHbkMsMkZBQThGO0FBRS9FLEtBQUssVUFBVSxxQkFBcUIsQ0FBQyxFQUNsRCxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFDZixTQUFTLEdBQ3NCO0lBQy9CLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDeEIsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVqRSxNQUFNLEVBQ0osSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQ2QsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDcEIsTUFBTSxFQUFFLE9BQU87UUFDZixPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFO1FBQ3hCLE1BQU0sRUFBRTtZQUNOLElBQUk7WUFDSixlQUFlO1lBQ2YsVUFBVTtZQUNWLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIsU0FBUztZQUNULDJCQUEyQjtZQUMzQixPQUFPO1lBQ1AsVUFBVTtZQUNWLFdBQVc7U0FDWjtLQUNGLENBQUMsQ0FBQztJQUVILE1BQU0saUJBQWlCLEdBQUksS0FBb0IsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUMxRCxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUN0QyxDQUFDO0lBRUYsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbkMsT0FBTztJQUNULENBQUM7SUFFRCxLQUFLLE1BQU0sZ0JBQWdCLElBQUksaUJBQWlCLEVBQUUsQ0FBQztRQUNqRCxrSEFBa0g7UUFDbEgsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ25ELE1BQU0sYUFBYSxHQUNqQixnQkFBZ0IsQ0FBQyxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDO1lBRXhELE1BQU0sRUFDSixNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FDbkIsR0FBRyxNQUFNLDJDQUF1QixDQUFDLEdBQUcsQ0FBQztnQkFDcEMsS0FBSyxFQUFFO29CQUNMO3dCQUNFLEtBQUssRUFBRSxhQUFhO3dCQUNwQixhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWE7d0JBQ2xDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFO3dCQUNqQyxTQUFTLEVBQUUsT0FBTzt3QkFDbEIsWUFBWSxFQUFFLEtBQUssQ0FBQyxFQUFFO3dCQUN0QixRQUFRLEVBQUUsRUFBRTtxQkFDYjtpQkFDRjtnQkFDRCxTQUFTO2FBQ1YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7QUFDSCxDQUFDO0FBRVksUUFBQSxNQUFNLEdBQXFCO0lBQ3RDLEtBQUssRUFBRSwyQkFBbUIsQ0FBQyxNQUFNO0NBQ2xDLENBQUMifQ==
@@ -0,0 +1,6 @@
1
+ import { CartDTO } from "@medusajs/framework/types";
2
+ export type PluginCartDTO = CartDTO & {
3
+ gift_cards: {
4
+ code: string;
5
+ }[];
6
+ };
@@ -0,0 +1,42 @@
1
+ import { AdminCustomer, AdminOrderLineItem, BaseFilterable, FindParams, OperatorMap, PaginatedResponse, SelectParams, StoreCustomer, StoreOrderLineItem } from "@medusajs/framework/types";
2
+ import { GiftCardStatus, ModuleCreateGiftCard, ModuleGiftCard, ModuleUpdateGiftCard } from "../loyalty";
3
+ export interface AdminGetGiftCardsParams extends FindParams, BaseFilterable<AdminGetGiftCardsParams> {
4
+ id?: string | string[];
5
+ customer_id?: string | string[];
6
+ created_at?: OperatorMap<string>;
7
+ updated_at?: OperatorMap<string>;
8
+ }
9
+ export interface AdminCreateGiftCardParams extends ModuleCreateGiftCard {
10
+ }
11
+ export interface AdminUpdateGiftCardParams extends Omit<ModuleUpdateGiftCard, "id"> {
12
+ }
13
+ export interface AdminGiftCard extends Omit<ModuleGiftCard, "customer" | "line_item"> {
14
+ line_item: AdminOrderLineItem;
15
+ customer: AdminCustomer;
16
+ }
17
+ export interface AdminGiftCardResponse {
18
+ gift_card: AdminGiftCard;
19
+ }
20
+ export interface AdminGiftCardsResponse extends PaginatedResponse<{
21
+ gift_cards: AdminGiftCard[];
22
+ }> {
23
+ }
24
+ export interface StoreAddGiftCardToCart {
25
+ code: string;
26
+ }
27
+ export interface StoreRemoveGiftCardFromCart {
28
+ code: string;
29
+ }
30
+ export interface StoreGiftCard extends Omit<ModuleGiftCard, "customer" | "line_item"> {
31
+ customer: StoreCustomer;
32
+ line_item: StoreOrderLineItem;
33
+ }
34
+ export interface StoreGiftCardResponse {
35
+ gift_card: StoreGiftCard;
36
+ }
37
+ export interface StoreGetGiftCardsParams extends FindParams, BaseFilterable<AdminGetGiftCardsParams> {
38
+ id?: string | string[];
39
+ status?: GiftCardStatus | GiftCardStatus[];
40
+ }
41
+ export interface StoreGetGiftCardParams extends SelectParams {
42
+ }
@@ -0,0 +1,3 @@
1
+ export * from "./gift-card";
2
+ export * from "./store-credit-account";
3
+ export * from "./transaction";
@@ -17,5 +17,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./gift-card"), exports);
18
18
  __exportStar(require("./store-credit-account"), exports);
19
19
  __exportStar(require("./transaction"), exports);
20
- __exportStar(require("./transaction-group"), exports);
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdHlwZXMvaHR0cC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsOENBQTRCO0FBQzVCLHlEQUF1QztBQUN2QyxnREFBOEI7QUFDOUIsc0RBQW9DIn0=
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvdHlwZXMvaHR0cC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsOENBQTRCO0FBQzVCLHlEQUF1QztBQUN2QyxnREFBOEIifQ==
@@ -0,0 +1,60 @@
1
+ import { AdminCustomer, BaseFilterable, FindParams, OperatorMap, PaginatedResponse, StoreCustomer } from "@medusajs/framework/types";
2
+ import { ModuleStoreCreditAccount } from "../store-credit";
3
+ export interface AdminGetStoreCreditAccountsParams extends FindParams, BaseFilterable<AdminGetStoreCreditAccountsParams> {
4
+ id?: string | string[];
5
+ code?: string | string[];
6
+ customer_id?: string | string[];
7
+ currency_code?: string | string[];
8
+ created_at?: OperatorMap<string>;
9
+ updated_at?: OperatorMap<string>;
10
+ }
11
+ export interface AdminStoreCreditAccount extends ModuleStoreCreditAccount {
12
+ customer: AdminCustomer;
13
+ }
14
+ export interface AdminStoreCreditAccountsResponse extends PaginatedResponse<{
15
+ store_credit_accounts: AdminStoreCreditAccount[];
16
+ }> {
17
+ }
18
+ export interface AdminStoreCreditAccountResponse {
19
+ store_credit_account: AdminStoreCreditAccount;
20
+ }
21
+ export interface AdminCreateStoreCreditAccount {
22
+ currency_code: string;
23
+ customer_id?: string;
24
+ metadata?: Record<string, unknown>;
25
+ }
26
+ export interface AdminCreditStoreCreditAccount {
27
+ amount: number;
28
+ note?: string;
29
+ }
30
+ export interface StoreAddStoreCreditsToCart {
31
+ amount: number;
32
+ }
33
+ export interface StoreStoreCreditAccount extends ModuleStoreCreditAccount {
34
+ customer: StoreCustomer;
35
+ }
36
+ export interface StoreStoreCreditAccountResponse {
37
+ store_credit_account: StoreStoreCreditAccount;
38
+ }
39
+ export interface StoreGetStoreCreditAccountsParams extends FindParams, BaseFilterable<StoreGetStoreCreditAccountsParams> {
40
+ currency_code?: string;
41
+ created_at?: OperatorMap<string>;
42
+ updated_at?: OperatorMap<string>;
43
+ }
44
+ export interface StoreStoreCreditAccountsResponse extends PaginatedResponse<{
45
+ store_credit_accounts: StoreStoreCreditAccount[];
46
+ }> {
47
+ }
48
+ export interface StoreClaimStoreCreditAccountParams {
49
+ code: string;
50
+ }
51
+ export interface StoreClaimStoreCreditAccountResponse {
52
+ store_credit_account: StoreStoreCreditAccount;
53
+ }
54
+ export interface AdminCreditStoreCreditAccountParams {
55
+ amount: number;
56
+ note?: string;
57
+ }
58
+ export interface AdminCreditStoreCreditAccountResponse {
59
+ store_credit_account: AdminStoreCreditAccount;
60
+ }
@@ -0,0 +1,19 @@
1
+ import { BaseFilterable, FindParams, OperatorMap, PaginatedResponse } from "@medusajs/framework/types";
2
+ import { ModuleAccountTransaction, ModuleCreateAccountTransaction } from "../store-credit";
3
+ import { AdminStoreCreditAccount } from "./store-credit-account";
4
+ export interface AdminGetTransactionsParams extends FindParams, BaseFilterable<AdminGetTransactionsParams> {
5
+ q?: string;
6
+ id?: string | string[];
7
+ transaction_group_id?: string | string[];
8
+ created_at?: OperatorMap<string>;
9
+ updated_at?: OperatorMap<string>;
10
+ }
11
+ export interface AdminCreateTransactionParams extends ModuleCreateAccountTransaction {
12
+ }
13
+ export interface AdminTransaction extends ModuleAccountTransaction {
14
+ account: AdminStoreCreditAccount;
15
+ }
16
+ export interface AdminTransactionsResponse extends PaginatedResponse<{
17
+ transactions: AdminTransaction[];
18
+ }> {
19
+ }
@@ -0,0 +1,4 @@
1
+ export * from "./http";
2
+ export * from "./loyalty";
3
+ export * from "./modules";
4
+ export * from "./store-credit";
@@ -0,0 +1,3 @@
1
+ export * from "./module";
2
+ export * from "./service";
3
+ export * from "./workflows";
@@ -0,0 +1,42 @@
1
+ import { CustomerDTO } from "@medusajs/framework/types";
2
+ export declare enum GiftCardStatus {
3
+ PENDING = "pending",
4
+ REDEEMED = "redeemed"
5
+ }
6
+ export type GiftCardStatusValues = "pending" | "redeemed";
7
+ export type ModuleGiftCard = {
8
+ id: string;
9
+ code: string;
10
+ status: GiftCardStatus;
11
+ value: number;
12
+ currency_code: string;
13
+ customer_id: string;
14
+ customer: CustomerDTO;
15
+ reference_id: string | null;
16
+ note: string | null;
17
+ reference: string | null;
18
+ expires_at: string | null;
19
+ created_at: string;
20
+ updated_at: string;
21
+ };
22
+ export type ModuleCreateGiftCard = {
23
+ code: string;
24
+ value: number;
25
+ currency_code: string;
26
+ expires_at: string | null;
27
+ reference_id: string | null;
28
+ reference: string | null;
29
+ line_item_id: string;
30
+ customer_id: string | null;
31
+ metadata: Record<string, unknown>;
32
+ };
33
+ export type ModuleUpdateGiftCard = {
34
+ id: string;
35
+ value?: number;
36
+ status?: GiftCardStatus;
37
+ note?: string | null;
38
+ currency_code?: string;
39
+ expires_at?: string | null;
40
+ customer_id?: string;
41
+ metadata?: Record<string, unknown>;
42
+ };
@@ -0,0 +1,24 @@
1
+ import { BaseFilterable, Context, FindConfig, IModuleService } from "@medusajs/types";
2
+ import { ModuleCreateGiftCard, ModuleGiftCard, ModuleUpdateGiftCard } from "./module";
3
+ export interface ModuleGiftCardFilters extends BaseFilterable<ModuleGiftCardFilters> {
4
+ q?: string;
5
+ id?: string | string[];
6
+ code?: string | string[];
7
+ reference_id?: string | string[];
8
+ reference?: string | string[];
9
+ status?: string | string[];
10
+ currency_code?: string | string[];
11
+ order?: string;
12
+ }
13
+ /**
14
+ * The main service interface for the Loyalty Module.
15
+ */
16
+ export interface ILoyaltyModuleService extends IModuleService {
17
+ createGiftCards(data: ModuleCreateGiftCard, sharedContext?: Context): Promise<ModuleGiftCard>;
18
+ createGiftCards(data: ModuleCreateGiftCard[], sharedContext?: Context): Promise<ModuleGiftCard[]>;
19
+ updateGiftCards(data: ModuleUpdateGiftCard, sharedContext?: Context): Promise<ModuleGiftCard>;
20
+ updateGiftCards(data: ModuleUpdateGiftCard[], sharedContext?: Context): Promise<ModuleGiftCard[]>;
21
+ listGiftCards(filters?: ModuleGiftCardFilters, config?: FindConfig<ModuleGiftCard>, sharedContext?: Context): Promise<ModuleGiftCard[]>;
22
+ retrieveGiftCard(id: string, config?: FindConfig<ModuleGiftCard>, sharedContext?: Context): Promise<ModuleGiftCard>;
23
+ deleteGiftCards(ids: string[], sharedContext?: Context): Promise<void>;
24
+ }
@@ -0,0 +1,3 @@
1
+ export type RedeemGiftCardWorkflowInput = {
2
+ gift_card_id: string;
3
+ };