@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.
- package/.medusa/server/medusa-config.d.ts +2 -0
- package/.medusa/server/src/admin/index.js +26651 -26545
- package/.medusa/server/src/admin/index.mjs +26654 -26548
- package/.medusa/server/src/api/admin/gift-cards/[id]/orders/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/gift-cards/[id]/orders/route.js +1 -1
- package/.medusa/server/src/api/admin/gift-cards/[id]/route.d.ts +4 -0
- package/.medusa/server/src/api/admin/gift-cards/[id]/route.js +1 -1
- package/.medusa/server/src/api/admin/gift-cards/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/admin/gift-cards/middlewares.js +1 -9
- package/.medusa/server/src/api/admin/gift-cards/query-config.d.ts +14 -0
- package/.medusa/server/src/api/admin/gift-cards/route.d.ts +4 -0
- package/.medusa/server/src/api/admin/gift-cards/route.js +1 -1
- package/.medusa/server/src/api/admin/gift-cards/validators.d.ts +381 -0
- package/.medusa/server/src/api/admin/gift-cards/validators.js +2 -8
- package/.medusa/server/src/api/admin/store-credit-accounts/[id]/credit/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/store-credit-accounts/[id]/credit/route.js +30 -0
- package/.medusa/server/src/api/admin/store-credit-accounts/[id]/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/store-credit-accounts/[id]/route.js +1 -6
- package/.medusa/server/src/api/admin/store-credit-accounts/[id]/transactions/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/store-credit-accounts/[id]/transactions/route.js +1 -1
- package/.medusa/server/src/api/admin/store-credit-accounts/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/admin/store-credit-accounts/middlewares.js +9 -1
- package/.medusa/server/src/api/admin/store-credit-accounts/query-config.d.ts +18 -0
- package/.medusa/server/src/api/admin/store-credit-accounts/query-config.js +2 -1
- package/.medusa/server/src/api/admin/store-credit-accounts/route.d.ts +4 -0
- package/.medusa/server/src/api/admin/store-credit-accounts/route.js +1 -1
- package/.medusa/server/src/api/admin/store-credit-accounts/validators.d.ts +412 -0
- package/.medusa/server/src/api/admin/store-credit-accounts/validators.js +6 -8
- package/.medusa/server/src/api/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/middlewares.js +7 -9
- package/.medusa/server/src/api/store/carts/[id]/gift-cards/route.d.ts +5 -0
- package/.medusa/server/src/api/store/carts/[id]/gift-cards/route.js +1 -1
- package/.medusa/server/src/api/store/carts/[id]/store-credits/route.d.ts +4 -0
- package/.medusa/server/src/api/store/carts/[id]/store-credits/route.js +1 -1
- package/.medusa/server/src/api/store/carts/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/store/carts/query-config.d.ts +4 -0
- package/.medusa/server/src/api/store/carts/validators.d.ts +25 -0
- package/.medusa/server/src/api/store/gift-cards/[idOrCode]/route.d.ts +3 -0
- package/.medusa/server/src/api/store/gift-cards/[idOrCode]/route.js +1 -1
- package/.medusa/server/src/api/store/gift-cards/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/store/gift-cards/middlewares.js +1 -10
- package/.medusa/server/src/api/store/gift-cards/query-config.d.ts +9 -0
- package/.medusa/server/src/api/store/gift-cards/validators.d.ts +11 -0
- package/.medusa/server/src/api/store/store-credit-accounts/[id]/route.d.ts +3 -0
- package/.medusa/server/src/api/store/store-credit-accounts/[id]/route.js +1 -1
- package/.medusa/server/src/api/store/store-credit-accounts/claim/route.d.ts +3 -0
- package/.medusa/server/src/api/store/store-credit-accounts/claim/route.js +25 -0
- package/.medusa/server/src/api/store/store-credit-accounts/middlewares.d.ts +2 -0
- package/.medusa/server/src/api/store/store-credit-accounts/middlewares.js +9 -1
- package/.medusa/server/src/api/store/store-credit-accounts/query-config.d.ts +9 -0
- package/.medusa/server/src/api/store/store-credit-accounts/route.d.ts +3 -0
- package/.medusa/server/src/api/store/store-credit-accounts/route.js +1 -1
- package/.medusa/server/src/api/store/store-credit-accounts/validators.d.ts +120 -0
- package/.medusa/server/src/api/store/store-credit-accounts/validators.js +5 -2
- package/.medusa/server/src/links/cart-gift-cards-link.d.ts +2 -0
- package/.medusa/server/src/links/customer-store-credit-account-link.d.ts +1 -0
- package/.medusa/server/src/links/gift-card-store-credit.d.ts +2 -0
- package/.medusa/server/src/links/order-gift-cards-link.d.ts +2 -0
- package/.medusa/server/src/links/order-line-item-gift-card-link.d.ts +1 -0
- package/.medusa/server/src/modules/loyalty/index.d.ts +21 -0
- package/.medusa/server/src/modules/loyalty/migrations/Migration20250123130553.d.ts +5 -0
- package/.medusa/server/src/modules/loyalty/migrations/Migration20250127174331.d.ts +5 -0
- package/.medusa/server/src/modules/loyalty/migrations/Migration20250206141026.d.ts +5 -0
- package/.medusa/server/src/modules/loyalty/migrations/Migration20250206141429.d.ts +5 -0
- package/.medusa/server/src/modules/loyalty/migrations/Migration20250206144714.d.ts +5 -0
- package/.medusa/server/src/modules/loyalty/migrations/Migration20250326095923.d.ts +5 -0
- package/.medusa/server/src/modules/loyalty/migrations/Migration20250617080328.d.ts +5 -0
- package/.medusa/server/src/modules/loyalty/models/gift-card.d.ts +18 -0
- package/.medusa/server/src/modules/loyalty/service.d.ts +21 -0
- package/.medusa/server/src/modules/store-credit/index.d.ts +5 -0
- package/.medusa/server/src/modules/store-credit/migrations/Migration20250129115518.d.ts +5 -0
- package/.medusa/server/src/modules/store-credit/migrations/Migration20250130213237.d.ts +5 -0
- package/.medusa/server/src/modules/store-credit/migrations/Migration20250130220640.d.ts +5 -0
- package/.medusa/server/src/modules/store-credit/migrations/Migration20250131205753.d.ts +5 -0
- package/.medusa/server/src/modules/store-credit/migrations/Migration20250520081315.d.ts +5 -0
- package/.medusa/server/src/modules/store-credit/migrations/Migration20250626081315.d.ts +5 -0
- package/.medusa/server/src/modules/store-credit/migrations/Migration20250626081315.js +16 -0
- package/.medusa/server/src/modules/store-credit/migrations/Migration20250722080351.d.ts +5 -0
- package/.medusa/server/src/modules/store-credit/migrations/Migration20250722080351.js +27 -0
- package/.medusa/server/src/modules/store-credit/models/account-transaction.d.ts +28 -0
- package/.medusa/server/src/modules/store-credit/models/account-transaction.js +1 -7
- package/.medusa/server/src/modules/store-credit/models/store-credit-account.d.ts +27 -0
- package/.medusa/server/src/modules/store-credit/models/store-credit-account.js +3 -6
- package/.medusa/server/src/modules/store-credit/service.d.ts +29 -0
- package/.medusa/server/src/modules/store-credit/service.js +19 -178
- package/.medusa/server/src/subscribers/create-gift-card.d.ts +5 -0
- package/.medusa/server/src/subscribers/create-gift-card.js +1 -3
- package/.medusa/server/src/types/cart/index.d.ts +6 -0
- package/.medusa/server/src/types/http/gift-card.d.ts +42 -0
- package/.medusa/server/src/types/http/index.d.ts +3 -0
- package/.medusa/server/src/types/http/index.js +1 -2
- package/.medusa/server/src/types/http/store-credit-account.d.ts +60 -0
- package/.medusa/server/src/types/http/transaction.d.ts +19 -0
- package/.medusa/server/src/types/index.d.ts +4 -0
- package/.medusa/server/src/types/loyalty/index.d.ts +3 -0
- package/.medusa/server/src/types/loyalty/module.d.ts +42 -0
- package/.medusa/server/src/types/loyalty/service.d.ts +24 -0
- package/.medusa/server/src/types/loyalty/workflows.d.ts +3 -0
- package/.medusa/server/src/types/modules.d.ts +6 -0
- package/.medusa/server/src/types/store-credit/index.d.ts +2 -0
- package/.medusa/server/src/types/store-credit/module.d.ts +82 -0
- package/.medusa/server/src/types/store-credit/module.js +1 -1
- package/.medusa/server/src/types/store-credit/service.d.ts +34 -0
- package/.medusa/server/src/utils/code-generator.d.ts +1 -0
- package/.medusa/server/src/utils/code-generator.js +32 -0
- package/.medusa/server/src/workflows/carts/index.d.ts +5 -0
- package/.medusa/server/src/workflows/carts/index.js +22 -0
- package/.medusa/server/src/workflows/carts/steps/validate-gift-card-balances.d.ts +5 -0
- package/.medusa/server/src/workflows/carts/steps/validate-gift-card-balances.js +14 -0
- package/.medusa/server/src/workflows/carts/workflows/add-gift-card-to-cart.d.ts +18 -0
- package/.medusa/server/src/workflows/carts/workflows/add-gift-card-to-cart.js +14 -56
- package/.medusa/server/src/workflows/carts/workflows/add-store-credits-to-cart.d.ts +15 -0
- package/.medusa/server/src/workflows/carts/workflows/add-store-credits-to-cart.js +12 -25
- package/.medusa/server/src/workflows/carts/workflows/confirm-cart-credit-lines.d.ts +9 -0
- package/.medusa/server/src/workflows/carts/workflows/confirm-cart-credit-lines.js +16 -34
- package/.medusa/server/src/workflows/carts/workflows/refresh-cart-gift-cards.d.ts +3 -0
- package/.medusa/server/src/workflows/carts/workflows/refresh-cart-gift-cards.js +5 -24
- package/.medusa/server/src/workflows/carts/workflows/remove-gift-cart-from-cart.d.ts +17 -0
- package/.medusa/server/src/workflows/carts/workflows/remove-gift-cart-from-cart.js +4 -4
- package/.medusa/server/src/workflows/common/steps/validate-presence-of.d.ts +5 -0
- package/.medusa/server/src/workflows/gift-cards/index.d.ts +9 -0
- package/.medusa/server/src/workflows/gift-cards/index.js +26 -0
- package/.medusa/server/src/workflows/gift-cards/steps/create-gift-cards.d.ts +2 -0
- package/.medusa/server/src/workflows/gift-cards/steps/create-gift-cards.js +3 -3
- package/.medusa/server/src/workflows/gift-cards/steps/delete-gift-cards.d.ts +3 -0
- package/.medusa/server/src/workflows/gift-cards/steps/retrieve-gift-card-balance.d.ts +6 -0
- package/.medusa/server/src/workflows/gift-cards/steps/retrieve-gift-card-balance.js +2 -3
- package/.medusa/server/src/workflows/gift-cards/steps/update-gift-cards.d.ts +2 -0
- package/.medusa/server/src/workflows/gift-cards/workflows/claim-gift-card.d.ts +23 -0
- package/.medusa/server/src/workflows/gift-cards/workflows/claim-gift-card.js +65 -0
- package/.medusa/server/src/workflows/gift-cards/workflows/create-gift-cards.d.ts +2 -0
- package/.medusa/server/src/workflows/gift-cards/workflows/create-gift-cards.js +51 -2
- package/.medusa/server/src/workflows/gift-cards/workflows/delete-gift-card.d.ts +3 -0
- package/.medusa/server/src/workflows/gift-cards/workflows/redeem-gift-card.d.ts +13 -0
- package/.medusa/server/src/workflows/gift-cards/workflows/redeem-gift-card.js +33 -64
- package/.medusa/server/src/workflows/gift-cards/workflows/update-gift-cards.d.ts +2 -0
- package/.medusa/server/src/workflows/hooks/after-order-created.d.ts +1 -0
- package/.medusa/server/src/workflows/hooks/after-order-credit-lines-created.d.ts +1 -0
- package/.medusa/server/src/workflows/hooks/before-payment-collection-refresh.d.ts +1 -0
- package/.medusa/server/src/workflows/hooks/complete-cart-before-payment-authorization.d.ts +1 -0
- package/.medusa/server/src/workflows/index.d.ts +3 -0
- package/.medusa/server/src/workflows/index.js +20 -0
- package/.medusa/server/src/workflows/orders/index.d.ts +2 -0
- package/.medusa/server/src/workflows/orders/index.js +19 -0
- package/.medusa/server/src/workflows/orders/workflows/link-gift-cards-to-order.d.ts +4 -0
- package/.medusa/server/src/workflows/orders/workflows/refund-credit-lines.d.ts +17 -0
- package/.medusa/server/src/workflows/orders/workflows/refund-credit-lines.js +2 -10
- package/.medusa/server/src/workflows/store-credit/index.d.ts +8 -0
- package/.medusa/server/src/workflows/store-credit/index.js +25 -0
- package/.medusa/server/src/workflows/store-credit/steps/create-store-credit-accounts.d.ts +2 -0
- package/.medusa/server/src/workflows/store-credit/steps/create-store-credit-accounts.js +8 -1
- package/.medusa/server/src/workflows/store-credit/steps/credit-account.d.ts +2 -0
- package/.medusa/server/src/workflows/store-credit/steps/debit-account.d.ts +2 -0
- package/.medusa/server/src/workflows/store-credit/workflows/claim-store-credit-account.d.ts +11 -0
- package/.medusa/server/src/workflows/store-credit/workflows/claim-store-credit-account.js +117 -0
- package/.medusa/server/src/workflows/store-credit/workflows/create-store-credit-accounts.d.ts +9 -0
- package/.medusa/server/src/workflows/store-credit/workflows/create-store-credit-accounts.js +1 -1
- package/.medusa/server/src/workflows/store-credit/workflows/credit-accounts.d.ts +2 -0
- package/.medusa/server/src/workflows/store-credit/workflows/credit-store-credit-account.d.ts +2 -0
- package/.medusa/server/src/workflows/store-credit/workflows/credit-store-credit-account.js +44 -0
- package/.medusa/server/src/workflows/store-credit/workflows/debit-accounts.d.ts +2 -0
- package/package.json +14 -3
- package/.medusa/server/src/api/admin/gift-cards/[id]/redeem/route.js +0 -24
- package/.medusa/server/src/api/admin/transaction-groups/middlewares.js +0 -16
- package/.medusa/server/src/api/admin/transaction-groups/query-config.js +0 -13
- package/.medusa/server/src/api/admin/transaction-groups/route.js +0 -27
- package/.medusa/server/src/api/admin/transaction-groups/validators.js +0 -19
- package/.medusa/server/src/api/store/gift-cards/[idOrCode]/redeem/route.js +0 -24
- package/.medusa/server/src/modules/store-credit/models/transaction-group.js +0 -28
- package/.medusa/server/src/types/http/transaction-group.js +0 -3
- package/.medusa/server/src/utils/gift-card.js +0 -32
- package/.medusa/server/src/workflows/store-credit/steps/create-transaction-groups.js +0 -17
- package/.medusa/server/src/workflows/store-credit/workflows/create-transaction-groups.js +0 -12
|
@@ -6,20 +6,18 @@ const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
|
6
6
|
const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
7
7
|
const types_1 = require("../../../types");
|
|
8
8
|
const create_store_credit_accounts_1 = require("../../store-credit/steps/create-store-credit-accounts");
|
|
9
|
-
const create_transaction_groups_1 = require("../../store-credit/workflows/create-transaction-groups");
|
|
10
9
|
const credit_accounts_1 = require("../../store-credit/workflows/credit-accounts");
|
|
11
10
|
const update_gift_cards_1 = require("./update-gift-cards");
|
|
12
|
-
exports.validateGiftCardRedeemStep = (0, workflows_sdk_1.createStep)("validate-gift-card-redeem", async function ({ giftCard, input, }) {
|
|
11
|
+
exports.validateGiftCardRedeemStep = (0, workflows_sdk_1.createStep)("validate-gift-card-redeem", async function ({ giftCardStoreCreditAccount, giftCard, input, }) {
|
|
13
12
|
if (giftCard.status === types_1.GiftCardStatus.REDEEMED) {
|
|
14
13
|
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Gift card is already redeemed");
|
|
15
14
|
}
|
|
15
|
+
if (giftCardStoreCreditAccount) {
|
|
16
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Gift card already has a store credit account");
|
|
17
|
+
}
|
|
16
18
|
});
|
|
17
19
|
/**
|
|
18
|
-
* A workflow that
|
|
19
|
-
*
|
|
20
|
-
* Workflow is used in this 2 scenarios:
|
|
21
|
-
* 1. Gift card is added to a cart -> an anonymous store credit account is created
|
|
22
|
-
* 2. Gift card is redeemed by an authenticated customer -> credits their store credit account
|
|
20
|
+
* A workflow that creates an anonymous store credit account for a gift card
|
|
23
21
|
*
|
|
24
22
|
* @param input - The input for the workflow
|
|
25
23
|
* @returns The workflow response
|
|
@@ -34,73 +32,44 @@ exports.redeemGiftCardWorkflow = (0, workflows_sdk_1.createWorkflow)("redeem-gif
|
|
|
34
32
|
const giftCard = (0, workflows_sdk_1.transform)({ giftCardQuery }, ({ giftCardQuery }) => {
|
|
35
33
|
return giftCardQuery.data[0];
|
|
36
34
|
});
|
|
37
|
-
|
|
35
|
+
const giftCardStoreCreditAccountQuery = (0, core_flows_1.useQueryGraphStep)({
|
|
36
|
+
entity: "gift_card_store_credit_account",
|
|
37
|
+
filters: {
|
|
38
|
+
gift_card_id: giftCard.id,
|
|
39
|
+
},
|
|
40
|
+
fields: ["id", "store_credit_account_id"],
|
|
41
|
+
}).config({ name: "get-gift-card-store-credit-account-query" });
|
|
42
|
+
const giftCardStoreCreditAccount = (0, workflows_sdk_1.transform)({ giftCardStoreCreditAccountQuery }, ({ giftCardStoreCreditAccountQuery }) => giftCardStoreCreditAccountQuery.data?.[0]);
|
|
38
43
|
(0, exports.validateGiftCardRedeemStep)({
|
|
44
|
+
giftCardStoreCreditAccount,
|
|
39
45
|
giftCard,
|
|
40
46
|
input,
|
|
41
47
|
});
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
currency_code: giftCard.currency_code,
|
|
50
|
-
},
|
|
51
|
-
fields: ["id", "customer_id", "currency_code"],
|
|
52
|
-
}).config({ name: "get-store-credit-account-query" });
|
|
53
|
-
const existingStoreCreditAccount = (0, workflows_sdk_1.transform)({ storeAccountQuery }, ({ storeAccountQuery }) => storeAccountQuery.data[0]);
|
|
54
|
-
return existingStoreCreditAccount;
|
|
48
|
+
const createdStoreCreditAccounts = (0, create_store_credit_accounts_1.createStoreCreditAccountsStep)([
|
|
49
|
+
{
|
|
50
|
+
currency_code: giftCard.currency_code,
|
|
51
|
+
},
|
|
52
|
+
]);
|
|
53
|
+
const createdStoreCreditAccount = (0, workflows_sdk_1.transform)({ createdStoreCreditAccounts }, ({ createdStoreCreditAccounts }) => {
|
|
54
|
+
return createdStoreCreditAccounts[0];
|
|
55
55
|
});
|
|
56
|
-
const
|
|
57
|
-
return
|
|
58
|
-
}).then(() => {
|
|
59
|
-
const createdStoreCreditAccounts = (0, create_store_credit_accounts_1.createStoreCreditAccountsStep)([
|
|
56
|
+
const linkToCreate = (0, workflows_sdk_1.transform)({ giftCard, createdStoreCreditAccount }, ({ giftCard, createdStoreCreditAccount }) => {
|
|
57
|
+
return [
|
|
60
58
|
{
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
]);
|
|
65
|
-
const createdStoreCreditAccount_ = (0, workflows_sdk_1.transform)({ createdStoreCreditAccounts }, ({ createdStoreCreditAccounts }) => {
|
|
66
|
-
return createdStoreCreditAccounts[0];
|
|
67
|
-
});
|
|
68
|
-
const linkToCreate = (0, workflows_sdk_1.transform)({ giftCard, createdStoreCreditAccount_ }, ({ giftCard, createdStoreCreditAccount_ }) => {
|
|
69
|
-
return [
|
|
70
|
-
{
|
|
71
|
-
[types_1.PluginModule.LOYALTY]: { gift_card_id: giftCard.id },
|
|
72
|
-
[types_1.PluginModule.STORE_CREDIT]: {
|
|
73
|
-
store_credit_account_id: createdStoreCreditAccount_.id,
|
|
74
|
-
},
|
|
59
|
+
[types_1.PluginModule.LOYALTY]: { gift_card_id: giftCard.id },
|
|
60
|
+
[types_1.PluginModule.STORE_CREDIT]: {
|
|
61
|
+
store_credit_account_id: createdStoreCreditAccount.id,
|
|
75
62
|
},
|
|
76
|
-
];
|
|
77
|
-
});
|
|
78
|
-
core_flows_1.createLinksWorkflow.runAsStep({ input: linkToCreate });
|
|
79
|
-
return createdStoreCreditAccount_;
|
|
80
|
-
});
|
|
81
|
-
const storeCreditAccount = (0, workflows_sdk_1.transform)({
|
|
82
|
-
existingStoreCreditAccountForCustomer,
|
|
83
|
-
createdStoreCreditAccount,
|
|
84
|
-
}, ({ existingStoreCreditAccountForCustomer, createdStoreCreditAccount, }) => {
|
|
85
|
-
return (existingStoreCreditAccountForCustomer ?? createdStoreCreditAccount);
|
|
86
|
-
});
|
|
87
|
-
const transactionGroups = create_transaction_groups_1.createTransactionGroupsWorkflow.runAsStep({
|
|
88
|
-
input: [
|
|
89
|
-
{
|
|
90
|
-
account_id: storeCreditAccount.id,
|
|
91
|
-
code: giftCard.code,
|
|
92
63
|
},
|
|
93
|
-
]
|
|
94
|
-
});
|
|
95
|
-
const transactionGroup = (0, workflows_sdk_1.transform)({ transactionGroups }, ({ transactionGroups }) => {
|
|
96
|
-
return transactionGroups[0];
|
|
64
|
+
];
|
|
97
65
|
});
|
|
66
|
+
core_flows_1.createLinksWorkflow.runAsStep({ input: linkToCreate });
|
|
98
67
|
credit_accounts_1.creditAccountsWorkflow.runAsStep({
|
|
99
68
|
input: [
|
|
100
69
|
{
|
|
101
|
-
account_id:
|
|
102
|
-
transaction_group_id: transactionGroup.id,
|
|
70
|
+
account_id: createdStoreCreditAccount.id,
|
|
103
71
|
amount: giftCard.value,
|
|
72
|
+
note: "Gift card redemption",
|
|
104
73
|
reference: "gift_card",
|
|
105
74
|
reference_id: giftCard.code,
|
|
106
75
|
},
|
|
@@ -116,11 +85,11 @@ exports.redeemGiftCardWorkflow = (0, workflows_sdk_1.createWorkflow)("redeem-gif
|
|
|
116
85
|
});
|
|
117
86
|
const accountQuery = (0, core_flows_1.useQueryGraphStep)({
|
|
118
87
|
entity: "store_credit_account",
|
|
119
|
-
filters: { id:
|
|
120
|
-
fields: ["id", "debits", "credits", "transactions.*"],
|
|
88
|
+
filters: { id: createdStoreCreditAccount.id },
|
|
89
|
+
fields: ["id", "debits", "credits", "code", "transactions.*"],
|
|
121
90
|
options: { throwIfKeyNotFound: true },
|
|
122
91
|
}).config({ name: "get-account-query" });
|
|
123
92
|
const account = (0, workflows_sdk_1.transform)({ accountQuery }, ({ accountQuery }) => accountQuery.data[0]);
|
|
124
93
|
return new workflows_sdk_1.WorkflowResponse(account);
|
|
125
94
|
});
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkZWVtLWdpZnQtY2FyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvZ2lmdC1jYXJkcy93b3JrZmxvd3MvcmVkZWVtLWdpZnQtY2FyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBd0Q7QUFDeEQsNERBR3FDO0FBQ3JDLDJEQU1pQztBQUNqQywwQ0FNd0I7QUFDeEIsd0dBQXNHO0FBQ3RHLGtGQUFzRjtBQUN0RiwyREFBOEQ7QUFFakQsUUFBQSwwQkFBMEIsR0FBRyxJQUFBLDBCQUFVLEVBQ2xELDJCQUEyQixFQUMzQixLQUFLLFdBQVcsRUFDZCwwQkFBMEIsRUFDMUIsUUFBUSxFQUNSLEtBQUssR0FLTjtJQUNDLElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxzQkFBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hELE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLCtCQUErQixDQUNoQyxDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksMEJBQTBCLEVBQUUsQ0FBQztRQUMvQixNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5Qiw4Q0FBOEMsQ0FDL0MsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDLENBQ0YsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ1UsUUFBQSxzQkFBc0IsR0FBRyxJQUFBLDhCQUFjLEVBQ2xELGtCQUFrQixFQUNsQixVQUFVLEtBQWtDO0lBQzFDLE1BQU0sYUFBYSxHQUFHLElBQUEsOEJBQWlCLEVBQUM7UUFDdEMsTUFBTSxFQUFFLFdBQVc7UUFDbkIsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxZQUFZLEVBQUU7UUFDbkMsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLGVBQWUsQ0FBQztR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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./carts"), exports);
|
|
18
|
+
__exportStar(require("./gift-cards"), exports);
|
|
19
|
+
__exportStar(require("./store-credit"), exports);
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwwQ0FBd0I7QUFDeEIsK0NBQTZCO0FBQzdCLGlEQUErQiJ9
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./workflows/link-gift-cards-to-order"), exports);
|
|
18
|
+
__exportStar(require("./workflows/refund-credit-lines"), exports);
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL29yZGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUVBQXFEO0FBQ3JELGtFQUFnRCJ9
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { OrderCreditLineDTO, OrderDTO } from "@medusajs/framework/types";
|
|
2
|
+
import { ModuleStoreCreditAccount } from "../../../types";
|
|
3
|
+
export declare const creditAccountTransactionsStep: import("@medusajs/workflows-sdk").StepFunction<{
|
|
4
|
+
order: OrderDTO;
|
|
5
|
+
storeCreditAccount: ModuleStoreCreditAccount;
|
|
6
|
+
creditLines: OrderCreditLineDTO[];
|
|
7
|
+
}, {
|
|
8
|
+
account_id: string;
|
|
9
|
+
amount: import("bignumber.js").BigNumber;
|
|
10
|
+
reference: string;
|
|
11
|
+
reference_id: string;
|
|
12
|
+
note: string;
|
|
13
|
+
}[]>;
|
|
14
|
+
export declare const refundCreditLinesWorkflow: import("@medusajs/workflows-sdk").ReturnWorkflow<{
|
|
15
|
+
order_id: string;
|
|
16
|
+
credit_lines: OrderCreditLineDTO[];
|
|
17
|
+
}, unknown, any[]>;
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.refundCreditLinesWorkflow = exports.creditAccountTransactionsStep = void 0;
|
|
7
4
|
const utils_1 = require("@medusajs/framework/utils");
|
|
8
5
|
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
9
6
|
const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
10
|
-
const crypto_1 = __importDefault(require("crypto"));
|
|
11
7
|
const types_1 = require("../../../types");
|
|
12
8
|
const credit_accounts_1 = require("../../../workflows/store-credit/workflows/credit-accounts");
|
|
13
9
|
const validateCustomerStep = (0, workflows_sdk_1.createStep)("validate-customer", async function ({ customer, negativeCreditLines, }) {
|
|
@@ -27,16 +23,12 @@ exports.creditAccountTransactionsStep = (0, workflows_sdk_1.createStep)("credit-
|
|
|
27
23
|
currency_code: order.currency_code,
|
|
28
24
|
});
|
|
29
25
|
}
|
|
30
|
-
const transactionGroup = await module.createTransactionGroups({
|
|
31
|
-
account_id: storeCreditAccount.id,
|
|
32
|
-
code: crypto_1.default.randomBytes(64).toString("base64url"),
|
|
33
|
-
});
|
|
34
26
|
const creditTransaction = {
|
|
35
27
|
account_id: storeCreditAccount.id,
|
|
36
|
-
transaction_group_id: transactionGroup.id,
|
|
37
28
|
amount: totalCreditAmount,
|
|
38
29
|
reference: "order",
|
|
39
30
|
reference_id: order.id,
|
|
31
|
+
note: "Store credit refund",
|
|
40
32
|
};
|
|
41
33
|
return new workflows_sdk_1.StepResponse([creditTransaction]);
|
|
42
34
|
});
|
|
@@ -91,4 +83,4 @@ exports.refundCreditLinesWorkflow = (0, workflows_sdk_1.createWorkflow)("refund-
|
|
|
91
83
|
});
|
|
92
84
|
});
|
|
93
85
|
});
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmdW5kLWNyZWRpdC1saW5lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvb3JkZXJzL3dvcmtmbG93cy9yZWZ1bmQtY3JlZGl0LWxpbmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUtBLHFEQUFnRTtBQUNoRSw0REFBZ0U7QUFDaEUsMkRBTWlDO0FBRWpDLDBDQUl3QjtBQUN4QiwrRkFBbUc7QUFFbkcsTUFBTSxvQkFBb0IsR0FBRyxJQUFBLDBCQUFVLEVBQ3JDLG1CQUFtQixFQUNuQixLQUFLLFdBQVcsRUFDZCxRQUFRLEVBQ1IsbUJBQW1CLEdBSXBCO0lBQ0Msa0hBQWtIO0lBQ2xILElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxJQUFJLG1CQUFtQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUM1RCxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5QixpRUFBaUUsQ0FDbEUsQ0FBQztJQUNKLENBQUM7SUFFRCxPQUFPLElBQUksNEJBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQ2xDLENBQUMsQ0FDRixDQUFDO0FBRVcsUUFBQSw2QkFBNkIsR0FBRyxJQUFBLDBCQUFVLEVBQ3JELDZCQUE2QixFQUM3QixLQUFLLFdBQ0gsRUFDRSxrQkFBa0IsRUFDbEIsS0FBSyxFQUNMLFdBQVcsR0FLWixFQUNELEVBQUUsU0FBUyxFQUFFO0lBRWIsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FDOUIsb0JBQVksQ0FBQyxZQUFZLENBQzFCLENBQUM7SUFFRixNQUFNLG1CQUFtQixHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUM1RCxjQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQ3hDLENBQUM7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
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./workflows/claim-store-credit-account";
|
|
2
|
+
export * from "./workflows/create-store-credit-accounts";
|
|
3
|
+
export * from "./workflows/credit-accounts";
|
|
4
|
+
export * from "./workflows/credit-store-credit-account";
|
|
5
|
+
export * from "./workflows/debit-accounts";
|
|
6
|
+
export * from "./steps/create-store-credit-accounts";
|
|
7
|
+
export * from "./steps/credit-account";
|
|
8
|
+
export * from "./steps/debit-account";
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./workflows/claim-store-credit-account"), exports);
|
|
18
|
+
__exportStar(require("./workflows/create-store-credit-accounts"), exports);
|
|
19
|
+
__exportStar(require("./workflows/credit-accounts"), exports);
|
|
20
|
+
__exportStar(require("./workflows/credit-store-credit-account"), exports);
|
|
21
|
+
__exportStar(require("./workflows/debit-accounts"), exports);
|
|
22
|
+
__exportStar(require("./steps/create-store-credit-accounts"), exports);
|
|
23
|
+
__exportStar(require("./steps/credit-account"), exports);
|
|
24
|
+
__exportStar(require("./steps/debit-account"), exports);
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3N0b3JlLWNyZWRpdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEseUVBQXVEO0FBQ3ZELDJFQUF5RDtBQUN6RCw4REFBNEM7QUFDNUMsMEVBQXdEO0FBQ3hELDZEQUEyQztBQUUzQyx1RUFBcUQ7QUFDckQseURBQXVDO0FBQ3ZDLHdEQUFzQyJ9
|
|
@@ -3,8 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.createStoreCreditAccountsStep = void 0;
|
|
4
4
|
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
5
|
const types_1 = require("../../../types");
|
|
6
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
7
|
+
const code_generator_1 = require("../../../utils/code-generator");
|
|
6
8
|
exports.createStoreCreditAccountsStep = (0, workflows_sdk_1.createStep)("create-store-credit-accounts", async (input, { container }) => {
|
|
7
9
|
const module = container.resolve(types_1.PluginModule.STORE_CREDIT);
|
|
10
|
+
for (const account of input) {
|
|
11
|
+
if (!(0, utils_1.isPresent)(account.code)) {
|
|
12
|
+
account.code = (0, code_generator_1.generateCode)("SC");
|
|
13
|
+
}
|
|
14
|
+
}
|
|
8
15
|
const accounts = await module.createStoreCreditAccounts(input);
|
|
9
16
|
return new workflows_sdk_1.StepResponse(accounts, accounts.map((gc) => gc.id));
|
|
10
17
|
}, async (ids, { container }) => {
|
|
@@ -14,4 +21,4 @@ exports.createStoreCreditAccountsStep = (0, workflows_sdk_1.createStep)("create-
|
|
|
14
21
|
const module = container.resolve(types_1.PluginModule.STORE_CREDIT);
|
|
15
22
|
await module.deleteStoreCreditAccounts(ids);
|
|
16
23
|
});
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXN0b3JlLWNyZWRpdC1hY2NvdW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvc3RvcmUtY3JlZGl0L3N0ZXBzL2NyZWF0ZS1zdG9yZS1jcmVkaXQtYWNjb3VudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQTZFO0FBQzdFLDBDQUl3QjtBQUN4QixxREFBc0Q7QUFFdEQsa0VBQTZEO0FBRWhELFFBQUEsNkJBQTZCLEdBQUcsSUFBQSwwQkFBVSxFQUNyRCw4QkFBOEIsRUFDOUIsS0FBSyxFQUFFLEtBQXVDLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQy9ELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQzlCLG9CQUFZLENBQUMsWUFBWSxDQUMxQixDQUFDO0lBRUYsS0FBSyxNQUFNLE9BQU8sSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsSUFBQSxpQkFBUyxFQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzdCLE9BQU8sQ0FBQyxJQUFJLEdBQUcsSUFBQSw2QkFBWSxFQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BDLENBQUM7SUFDSCxDQUFDO0lBRUQsTUFBTSxRQUFRLEdBQUcsTUFBTSxNQUFNLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFL0QsT0FBTyxJQUFJLDRCQUFZLENBQ3JCLFFBQVEsRUFDUixRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQzVCLENBQUM7QUFDSixDQUFDLEVBQ0QsS0FBSyxFQUFFLEdBQWEsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDckMsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUNqQixPQUFPO0lBQ1QsQ0FBQztJQUVELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQzlCLG9CQUFZLENBQUMsWUFBWSxDQUMxQixDQUFDO0lBRUYsTUFBTSxNQUFNLENBQUMseUJBQXlCLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDOUMsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CustomerDTO } from "@medusajs/framework/types";
|
|
2
|
+
type ClaimStoreCreditAccountInput = {
|
|
3
|
+
code: string;
|
|
4
|
+
customer_id: string;
|
|
5
|
+
};
|
|
6
|
+
export declare const validateClaimStoreCreditAccountInputStep: import("@medusajs/workflows-sdk").StepFunction<{
|
|
7
|
+
input: ClaimStoreCreditAccountInput;
|
|
8
|
+
customer: CustomerDTO;
|
|
9
|
+
}, unknown>;
|
|
10
|
+
export declare const claimStoreCreditAccountWorkflow: import("@medusajs/workflows-sdk").ReturnWorkflow<ClaimStoreCreditAccountInput, undefined, []>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.claimStoreCreditAccountWorkflow = exports.validateClaimStoreCreditAccountInputStep = void 0;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
6
|
+
const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
7
|
+
const debit_account_1 = require("../steps/debit-account");
|
|
8
|
+
const credit_account_1 = require("../steps/credit-account");
|
|
9
|
+
const create_store_credit_accounts_1 = require("../steps/create-store-credit-accounts");
|
|
10
|
+
exports.validateClaimStoreCreditAccountInputStep = (0, workflows_sdk_1.createStep)("validate-claim-store-credit-account-input", async function (args) {
|
|
11
|
+
const { input, customer } = args;
|
|
12
|
+
if (!(0, utils_1.isPresent)(input.code)) {
|
|
13
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Code is required to claim a store credit account");
|
|
14
|
+
}
|
|
15
|
+
if (!input.customer_id) {
|
|
16
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Customer Id is required to claim a store credit account");
|
|
17
|
+
}
|
|
18
|
+
if (!customer.has_account) {
|
|
19
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Only customers with an account can claim a store credit account");
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
const validateSourceStoreCreditAccountsStep = (0, workflows_sdk_1.createStep)("validate-source-store-credit-account", async function (args) {
|
|
23
|
+
const { sourceStoreCreditAccount, targetStoreCreditAccount } = args;
|
|
24
|
+
if (sourceStoreCreditAccount.id === targetStoreCreditAccount.id) {
|
|
25
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Customer already owns the store credit account");
|
|
26
|
+
}
|
|
27
|
+
if (sourceStoreCreditAccount.customer_id) {
|
|
28
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Cannot claim a store credit account that belongs to a customer");
|
|
29
|
+
}
|
|
30
|
+
if (utils_1.MathBN.convert(sourceStoreCreditAccount.balance).lte(0)) {
|
|
31
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Cannot claim a store credit account with no balance");
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
/*
|
|
35
|
+
A workflow that claims a store credit account for a customer.
|
|
36
|
+
The account with `code` is debited and customer account is credited.
|
|
37
|
+
*/
|
|
38
|
+
exports.claimStoreCreditAccountWorkflow = (0, workflows_sdk_1.createWorkflow)("claim-store-credit-account", function (input) {
|
|
39
|
+
const sourceStoreCreditAccountData = (0, core_flows_1.useQueryGraphStep)({
|
|
40
|
+
entity: "store_credit_account",
|
|
41
|
+
fields: ["id", "code", "customer_id", "currency_code", "balance"],
|
|
42
|
+
filters: { code: input.code },
|
|
43
|
+
}).config({
|
|
44
|
+
name: "source-store-credit-account-data",
|
|
45
|
+
});
|
|
46
|
+
const sourceStoreCreditAccount = (0, workflows_sdk_1.transform)({ sourceStoreCreditAccountData }, ({ sourceStoreCreditAccountData }) => {
|
|
47
|
+
return sourceStoreCreditAccountData.data[0];
|
|
48
|
+
});
|
|
49
|
+
const accountCurrencyCode = (0, workflows_sdk_1.transform)({ sourceStoreCreditAccount }, ({ sourceStoreCreditAccount }) => {
|
|
50
|
+
return sourceStoreCreditAccount.currency_code;
|
|
51
|
+
});
|
|
52
|
+
const customerData = (0, core_flows_1.useQueryGraphStep)({
|
|
53
|
+
entity: "customer",
|
|
54
|
+
fields: ["id", "email", "has_account"],
|
|
55
|
+
filters: { id: input.customer_id },
|
|
56
|
+
}).config({
|
|
57
|
+
name: "customer-data",
|
|
58
|
+
});
|
|
59
|
+
const customer = (0, workflows_sdk_1.transform)({ customerData }, ({ customerData }) => {
|
|
60
|
+
return customerData.data[0];
|
|
61
|
+
});
|
|
62
|
+
(0, exports.validateClaimStoreCreditAccountInputStep)({ input, customer });
|
|
63
|
+
const existingCustomerStoreCreditAccountData = (0, core_flows_1.useQueryGraphStep)({
|
|
64
|
+
entity: "store_credit_account",
|
|
65
|
+
fields: ["id", "code", "customer_id", "currency_code", "balance"],
|
|
66
|
+
filters: {
|
|
67
|
+
customer_id: input.customer_id,
|
|
68
|
+
currency_code: accountCurrencyCode,
|
|
69
|
+
},
|
|
70
|
+
}).config({
|
|
71
|
+
name: "existing-customer-store-credit-account-data",
|
|
72
|
+
});
|
|
73
|
+
const existingCustomerStoreCreditAccount = (0, workflows_sdk_1.transform)({ existingCustomerStoreCreditAccountData }, ({ existingCustomerStoreCreditAccountData }) => {
|
|
74
|
+
return existingCustomerStoreCreditAccountData.data[0];
|
|
75
|
+
});
|
|
76
|
+
const createdStoreCreditAccount = (0, workflows_sdk_1.when)("store-account-does-not-exist", { existingCustomerStoreCreditAccount }, ({ existingCustomerStoreCreditAccount }) => !existingCustomerStoreCreditAccount).then(() => {
|
|
77
|
+
return (0, create_store_credit_accounts_1.createStoreCreditAccountsStep)([
|
|
78
|
+
{
|
|
79
|
+
customer_id: input.customer_id,
|
|
80
|
+
currency_code: sourceStoreCreditAccount.currency_code,
|
|
81
|
+
},
|
|
82
|
+
])[0];
|
|
83
|
+
});
|
|
84
|
+
const targetStoreCreditAccount = (0, workflows_sdk_1.transform)({
|
|
85
|
+
existingCustomerStoreCreditAccount,
|
|
86
|
+
createdStoreCreditAccount,
|
|
87
|
+
}, ({ existingCustomerStoreCreditAccount, createdStoreCreditAccount }) => {
|
|
88
|
+
return existingCustomerStoreCreditAccount || createdStoreCreditAccount;
|
|
89
|
+
});
|
|
90
|
+
const balanceToTransfer = (0, workflows_sdk_1.transform)({
|
|
91
|
+
sourceStoreCreditAccount,
|
|
92
|
+
}, ({ sourceStoreCreditAccount }) => {
|
|
93
|
+
return utils_1.MathBN.convert(sourceStoreCreditAccount.balance);
|
|
94
|
+
});
|
|
95
|
+
validateSourceStoreCreditAccountsStep({
|
|
96
|
+
sourceStoreCreditAccount,
|
|
97
|
+
targetStoreCreditAccount,
|
|
98
|
+
});
|
|
99
|
+
(0, debit_account_1.debitAccountStep)([
|
|
100
|
+
{
|
|
101
|
+
account_id: sourceStoreCreditAccount.id,
|
|
102
|
+
amount: balanceToTransfer,
|
|
103
|
+
reference: "store-credit",
|
|
104
|
+
reference_id: targetStoreCreditAccount.id,
|
|
105
|
+
},
|
|
106
|
+
]);
|
|
107
|
+
(0, credit_account_1.creditAccountStep)([
|
|
108
|
+
{
|
|
109
|
+
account_id: targetStoreCreditAccount.id,
|
|
110
|
+
amount: balanceToTransfer,
|
|
111
|
+
reference: "store-credit",
|
|
112
|
+
reference_id: sourceStoreCreditAccount.id,
|
|
113
|
+
},
|
|
114
|
+
]);
|
|
115
|
+
return new workflows_sdk_1.WorkflowResponse(void 0);
|
|
116
|
+
});
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhaW0tc3RvcmUtY3JlZGl0LWFjY291bnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3N0b3JlLWNyZWRpdC93b3JrZmxvd3MvY2xhaW0tc3RvcmUtY3JlZGl0LWFjY291bnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEscURBQTJFO0FBQzNFLDREQUFnRTtBQUNoRSwyREFNaUM7QUFJakMsMERBQTBEO0FBQzFELDREQUE0RDtBQUM1RCx3RkFBc0Y7QUFPekUsUUFBQSx3Q0FBd0MsR0FBRyxJQUFBLDBCQUFVLEVBQ2hFLDJDQUEyQyxFQUMzQyxLQUFLLFdBQVcsSUFHZjtJQUNDLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDO0lBRWpDLElBQUksQ0FBQyxJQUFBLGlCQUFTLEVBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDM0IsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsa0RBQWtELENBQ25ELENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2QixNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5Qix5REFBeUQsQ0FDMUQsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzFCLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLGlFQUFpRSxDQUNsRSxDQUFDO0lBQ0osQ0FBQztBQUNILENBQUMsQ0FDRixDQUFDO0FBRUYsTUFBTSxxQ0FBcUMsR0FBRyxJQUFBLDBCQUFVLEVBQ3RELHNDQUFzQyxFQUN0QyxLQUFLLFdBQVcsSUFHZjtJQUNDLE1BQU0sRUFBRSx3QkFB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
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ModuleCreateStoreCreditAccount } from "../../../types/store-credit";
|
|
2
|
+
export declare const validateStoreCreditAccountInputStep: import("@medusajs/workflows-sdk").StepFunction<ModuleCreateStoreCreditAccount[], unknown>;
|
|
3
|
+
type CreateStoreCreditAccountInput = {
|
|
4
|
+
code?: string;
|
|
5
|
+
customer_id: string;
|
|
6
|
+
currency_code: string;
|
|
7
|
+
};
|
|
8
|
+
export declare const createStoreCreditAccountsWorkflow: import("@medusajs/workflows-sdk").ReturnWorkflow<CreateStoreCreditAccountInput[], import("../../../types/store-credit").ModuleStoreCreditAccount[], []>;
|
|
9
|
+
export {};
|
|
@@ -20,4 +20,4 @@ exports.createStoreCreditAccountsWorkflow = (0, workflows_sdk_1.createWorkflow)(
|
|
|
20
20
|
const createdStoreCreditAccounts = (0, create_store_credit_accounts_1.createStoreCreditAccountsStep)(input);
|
|
21
21
|
return new workflows_sdk_1.WorkflowResponse(createdStoreCreditAccounts);
|
|
22
22
|
});
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXN0b3JlLWNyZWRpdC1hY2NvdW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvc3RvcmUtY3JlZGl0L3dvcmtmbG93cy9jcmVhdGUtc3RvcmUtY3JlZGl0LWFjY291bnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFEQUFtRTtBQUNuRSwyREFJaUM7QUFFakMsd0ZBQXNGO0FBR3pFLFFBQUEsbUNBQW1DLEdBQUcsSUFBQSwwQkFBVSxFQUMzRCxxQ0FBcUMsRUFDckMsS0FBSyxXQUFXLEtBQXVDO0lBQ3JELElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN2QixNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5QixtQkFBbUIsQ0FDcEIsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBQSxpQkFBUyxFQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbkQsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsNERBQTRELENBQzdELENBQUM7SUFDSixDQUFDO0FBQ0gsQ0FBQyxDQUNGLENBQUM7QUFRRjs7RUFFRTtBQUNXLFFBQUEsaUNBQWlDLEdBQUcsSUFBQSw4QkFBYyxFQUM3RCw4QkFBOEIsRUFDOUIsVUFBVSxLQUFzQztJQUM5QyxJQUFBLDJDQUFtQyxFQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTNDLE1BQU0sMEJBQTBCLEdBQUcsSUFBQSw0REFBNkIsRUFBQyxLQUFLLENBQUMsQ0FBQztJQUN4RSxPQUFPLElBQUksZ0NBQWdCLENBQUMsMEJBQTBCLENBQUMsQ0FBQztBQUMxRCxDQUFDLENBQ0YsQ0FBQyJ9
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.creditStoreCreditAccountWorkflow = void 0;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
6
|
+
const workflows_sdk_1 = require("@medusajs/workflows-sdk");
|
|
7
|
+
const credit_account_1 = require("../steps/credit-account");
|
|
8
|
+
const validateStoreCreditAccountInputStep = (0, workflows_sdk_1.createStep)("validate-store-credit-account-input", async function (input) {
|
|
9
|
+
if (input.amount <= 0) {
|
|
10
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Amount must be greater than 0");
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
exports.creditStoreCreditAccountWorkflow = (0, workflows_sdk_1.createWorkflow)("credit-store-credit-account", function (input) {
|
|
14
|
+
validateStoreCreditAccountInputStep(input);
|
|
15
|
+
const storeCreditAccountData = (0, core_flows_1.useQueryGraphStep)({
|
|
16
|
+
entity: "store_credit_account",
|
|
17
|
+
fields: ["id", "code", "customer_id", "currency_code", "balance"],
|
|
18
|
+
filters: { id: input.account_id },
|
|
19
|
+
options: { throwIfKeyNotFound: true },
|
|
20
|
+
});
|
|
21
|
+
const storeCreditAccount = (0, workflows_sdk_1.transform)({ storeCreditAccountData }, ({ storeCreditAccountData }) => {
|
|
22
|
+
return storeCreditAccountData.data[0];
|
|
23
|
+
});
|
|
24
|
+
const amount = (0, workflows_sdk_1.transform)({ input }, ({ input }) => {
|
|
25
|
+
return utils_1.MathBN.convert(input.amount);
|
|
26
|
+
});
|
|
27
|
+
const transactionInfo = (0, workflows_sdk_1.transform)({ input }, ({ input }) => {
|
|
28
|
+
return {
|
|
29
|
+
note: input.note || "",
|
|
30
|
+
reference: input.reference || "",
|
|
31
|
+
reference_id: input.reference_id || "",
|
|
32
|
+
};
|
|
33
|
+
});
|
|
34
|
+
(0, credit_account_1.creditAccountStep)([
|
|
35
|
+
{
|
|
36
|
+
account_id: storeCreditAccount.id,
|
|
37
|
+
amount: amount,
|
|
38
|
+
note: transactionInfo.note,
|
|
39
|
+
reference: transactionInfo.reference,
|
|
40
|
+
reference_id: transactionInfo.reference_id,
|
|
41
|
+
},
|
|
42
|
+
]);
|
|
43
|
+
});
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGl0LXN0b3JlLWNyZWRpdC1hY2NvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zdG9yZS1jcmVkaXQvd29ya2Zsb3dzL2NyZWRpdC1zdG9yZS1jcmVkaXQtYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxxREFBZ0U7QUFDaEUsNERBQWdFO0FBQ2hFLDJEQUFnRjtBQUdoRiw0REFBNEQ7QUFFNUQsTUFBTSxtQ0FBbUMsR0FBRyxJQUFBLDBCQUFVLEVBQ3BELHFDQUFxQyxFQUNyQyxLQUFLLFdBQVcsS0FBcUM7SUFDbkQsSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3RCLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLCtCQUErQixDQUNoQyxDQUFDO0lBQ0osQ0FBQztBQUNILENBQUMsQ0FDRixDQUFDO0FBRVcsUUFBQSxnQ0FBZ0MsR0FBRyxJQUFBLDhCQUFjLEVBQzVELDZCQUE2QixFQUM3QixVQUFVLEtBQXFDO0lBQzdDLG1DQUFtQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTNDLE1BQU0sc0JBQXNCLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztRQUMvQyxNQUFNLEVBQUUsc0JBQXNCO1FBQzlCLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxTQUFTLENBQUM7UUFDakUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUU7UUFDakMsT0FBTyxFQUFFLEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxFQUFFO0tBQ3RDLENBQUMsQ0FBQztJQUVILE1BQU0sa0JBQWtCLEdBQUcsSUFBQSx5QkFBUyxFQUNsQyxFQUFFLHNCQUFzQixFQUFFLEVBQzFCLENBQUMsRUFBRSxzQkFBc0IsRUFBRSxFQUFFLEVBQUU7UUFDN0IsT0FBTyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEMsQ0FBQyxDQUNGLENBQUM7SUFFRixNQUFNLE1BQU0sR0FBRyxJQUFBLHlCQUFTLEVBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUNoRCxPQUFPLGNBQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxlQUFlLEdBQUcsSUFBQSx5QkFBUyxFQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7UUFDekQsT0FBTztZQUNMLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDdEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLElBQUksRUFBRTtZQUNoQyxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVksSUFBSSxFQUFFO1NBQ3ZDLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsa0NBQWlCLEVBQUM7UUFDaEI7WUFDRSxVQUFVLEVBQUUsa0JBQWtCLENBQUMsRUFBRTtZQUNqQyxNQUFNLEVBQUUsTUFBTTtZQUNkLElBQUksRUFBRSxlQUFlLENBQUMsSUFBSTtZQUMxQixTQUFTLEVBQUUsZUFBZSxDQUFDLFNBQVM7WUFDcEMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxZQUFZO1NBQzNDO0tBQ0YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUNGLENBQUMifQ==
|