@reorderjs/reorder 1.0.1 → 1.0.2
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/src/admin/index.js +2856 -2844
- package/.medusa/server/src/admin/index.mjs +2856 -2844
- package/.medusa/server/src/api/middlewares.js +5 -9
- package/.medusa/server/src/api/store/customers/me/subscriptions/[id]/change-address/route.js +32 -0
- package/.medusa/server/src/api/store/customers/me/subscriptions/[id]/change-frequency/route.js +31 -0
- package/.medusa/server/src/api/store/customers/me/subscriptions/[id]/pause/route.js +23 -0
- package/.medusa/server/src/api/store/customers/me/subscriptions/[id]/resume/route.js +23 -0
- package/.medusa/server/src/api/store/customers/me/subscriptions/[id]/retry-payment/route.js +58 -0
- package/.medusa/server/src/api/store/customers/me/subscriptions/[id]/route.js +10 -0
- package/.medusa/server/src/api/store/customers/me/subscriptions/[id]/skip-next-delivery/route.js +22 -0
- package/.medusa/server/src/api/store/customers/me/subscriptions/[id]/swap-product/route.js +31 -0
- package/.medusa/server/src/api/store/customers/me/subscriptions/middlewares.js +54 -0
- package/.medusa/server/src/api/store/customers/me/subscriptions/utils.js +322 -1
- package/.medusa/server/src/api/store/customers/me/subscriptions/validators.js +38 -2
- package/.medusa/server/src/api/store/products/[id]/subscription-offer/route.js +10 -0
- package/.medusa/server/src/api/store/products/middlewares.js +18 -0
- package/.medusa/server/src/api/store/products/validators.js +8 -0
- package/.medusa/server/src/modules/activity-log/migrations/Migration20260410191100.js +16 -0
- package/.medusa/server/src/modules/activity-log/types/index.js +2 -1
- package/.medusa/server/src/modules/renewal/utils/admin-query.js +51 -9
- package/.medusa/server/src/modules/subscription/utils/admin-query.js +15 -1
- package/.medusa/server/src/modules/subscription/utils/effective-next-renewal.js +39 -0
- package/.medusa/server/src/workflows/index.js +5 -2
- package/.medusa/server/src/workflows/skip-next-delivery.js +70 -0
- package/.medusa/server/src/workflows/steps/pause-subscription.js +1 -1
- package/.medusa/server/src/workflows/steps/process-renewal-cycle.js +3 -15
- package/.medusa/server/src/workflows/steps/skip-next-delivery.js +43 -0
- package/LICENSE +1 -1
- package/README.md +7 -7
- package/package.json +1 -1
|
@@ -13,6 +13,7 @@ const types_2 = require("../../modules/activity-log/types");
|
|
|
13
13
|
const effective_config_1 = require("../../modules/plan-offer/utils/effective-config");
|
|
14
14
|
const subscription_1 = require("../../modules/subscription");
|
|
15
15
|
const types_3 = require("../../modules/subscription/types");
|
|
16
|
+
const effective_next_renewal_1 = require("../../modules/subscription/utils/effective-next-renewal");
|
|
16
17
|
const errors_2 = require("../../modules/subscription/utils/errors");
|
|
17
18
|
const start_dunning_1 = require("../start-dunning");
|
|
18
19
|
const create_subscription_log_event_1 = require("./create-subscription-log-event");
|
|
@@ -22,19 +23,6 @@ function getRenewalActivityLogActorType(triggerType) {
|
|
|
22
23
|
? types_2.ActivityLogActorType.USER
|
|
23
24
|
: types_2.ActivityLogActorType.SCHEDULER;
|
|
24
25
|
}
|
|
25
|
-
function addCadence(anchor, interval, value) {
|
|
26
|
-
const next = new Date(anchor);
|
|
27
|
-
if (interval === types_3.SubscriptionFrequencyInterval.WEEK) {
|
|
28
|
-
next.setUTCDate(next.getUTCDate() + value * 7);
|
|
29
|
-
return next;
|
|
30
|
-
}
|
|
31
|
-
if (interval === types_3.SubscriptionFrequencyInterval.MONTH) {
|
|
32
|
-
next.setUTCMonth(next.getUTCMonth() + value);
|
|
33
|
-
return next;
|
|
34
|
-
}
|
|
35
|
-
next.setUTCFullYear(next.getUTCFullYear() + value);
|
|
36
|
-
return next;
|
|
37
|
-
}
|
|
38
26
|
function isPendingUpdateApplicable(scheduledFor, pendingUpdateData) {
|
|
39
27
|
if (!pendingUpdateData) {
|
|
40
28
|
return false;
|
|
@@ -413,7 +401,7 @@ exports.processRenewalCycleStep = (0, workflows_sdk_1.createStep)("process-renew
|
|
|
413
401
|
const nextInterval = appliedPendingChanges?.frequency_interval ??
|
|
414
402
|
subscription.frequency_interval;
|
|
415
403
|
const nextValue = appliedPendingChanges?.frequency_value ?? subscription.frequency_value;
|
|
416
|
-
const nextRenewalAt =
|
|
404
|
+
const nextRenewalAt = (0, effective_next_renewal_1.addSubscriptionCadence)(scheduledAnchor, nextInterval, nextValue);
|
|
417
405
|
const finishedAt = new Date();
|
|
418
406
|
const nextProductSnapshot = appliedPendingChanges
|
|
419
407
|
? {
|
|
@@ -638,4 +626,4 @@ exports.processRenewalCycleStep = (0, workflows_sdk_1.createStep)("process-renew
|
|
|
638
626
|
throw error;
|
|
639
627
|
}
|
|
640
628
|
});
|
|
641
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1yZW5ld2FsLWN5Y2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zdGVwcy9wcm9jZXNzLXJlbmV3YWwtY3ljbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEscURBQThFO0FBQzlFLHFFQUE0RTtBQUM1RSw0REFJb0M7QUFDcEMsbURBQXNEO0FBRXRELHVEQUtvQztBQUNwQywrREFBa0U7QUFDbEUsNkVBTWtEO0FBQ2xELDhGQUFnRztBQUNoRyw0REFHeUM7QUFDekMsc0ZBQWtHO0FBQ2xHLDZEQUFnRTtBQUVoRSw0REFJeUM7QUFDekMsb0VBQTRFO0FBQzVFLG9EQUF1RDtBQUN2RCxtRkFBNkU7QUFDN0Usc0RBQXdEO0FBNEd4RCxTQUFTLDhCQUE4QixDQUFDLFdBQW1DO0lBQ3pFLE9BQU8sV0FBVyxLQUFLLFFBQVE7UUFDN0IsQ0FBQyxDQUFDLDRCQUFvQixDQUFDLElBQUk7UUFDM0IsQ0FBQyxDQUFDLDRCQUFvQixDQUFDLFNBQVMsQ0FBQTtBQUNwQyxDQUFDO0FBRUQsU0FBUyxVQUFVLENBQ2pCLE1BQVksRUFDWixRQUF1QyxFQUN2QyxLQUFhO0lBRWIsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFFN0IsSUFBSSxRQUFRLEtBQUsscUNBQTZCLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFBO1FBQzlDLE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztJQUVELElBQUksUUFBUSxLQUFLLHFDQUE2QixDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3JELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFBO1FBQzVDLE9BQU8sSUFBSSxDQUFBO0lBQ2Is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
|
|
629
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1yZW5ld2FsLWN5Y2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zdGVwcy9wcm9jZXNzLXJlbmV3YWwtY3ljbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEscURBQThFO0FBQzlFLHFFQUE0RTtBQUM1RSw0REFJb0M7QUFDcEMsbURBQXNEO0FBRXRELHVEQUtvQztBQUNwQywrREFBa0U7QUFDbEUsNkVBTWtEO0FBQ2xELDhGQUFnRztBQUNoRyw0REFHeUM7QUFDekMsc0ZBQWtHO0FBQ2xHLDZEQUFnRTtBQUVoRSw0REFJeUM7QUFDekMsb0dBQWdHO0FBQ2hHLG9FQUE0RTtBQUM1RSxvREFBdUQ7QUFDdkQsbUZBQTZFO0FBQzdFLHNEQUF3RDtBQTRHeEQsU0FBUyw4QkFBOEIsQ0FBQyxXQUFtQztJQUN6RSxPQUFPLFdBQVcsS0FBSyxRQUFRO1FBQzdCLENBQUMsQ0FBQyw0QkFBb0IsQ0FBQyxJQUFJO1FBQzNCLENBQUMsQ0FBQyw0QkFBb0IsQ0FBQyxTQUFTLENBQUE7QUFDcEMsQ0FBQztBQUVELFNBQVMseUJBQXlCLENBQ2hDLFlBQWtCLEVBQ2xCLGlCQUF1RDtJQUV2RCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN2QixPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUM7SUFFRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEMsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQsT0FBTyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsSUFBSSxZQUFZLENBQUE7QUFDakUsQ0FBQztBQUVELEtBQUssVUFBVSxTQUFTLENBQ3RCLFNBQTBCLEVBQzFCLEVBQVU7SUFFVixNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUF1Qix3QkFBYyxDQUFDLENBQUE7SUFFN0UsSUFBSSxDQUFDO1FBQ0gsT0FBTyxD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
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.skipNextDeliveryStep = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const subscription_1 = require("../../modules/subscription");
|
|
6
|
+
const types_1 = require("../../modules/subscription/types");
|
|
7
|
+
const errors_1 = require("../../modules/subscription/utils/errors");
|
|
8
|
+
const pause_subscription_1 = require("./pause-subscription");
|
|
9
|
+
exports.skipNextDeliveryStep = (0, workflows_sdk_1.createStep)("skip-next-delivery", async function (input, { container }) {
|
|
10
|
+
const subscriptionModuleService = container.resolve(subscription_1.SUBSCRIPTION_MODULE);
|
|
11
|
+
const subscription = await subscriptionModuleService.retrieveSubscription(input.id);
|
|
12
|
+
if (subscription.status !== types_1.SubscriptionStatus.ACTIVE &&
|
|
13
|
+
subscription.status !== types_1.SubscriptionStatus.PAUSED &&
|
|
14
|
+
subscription.status !== types_1.SubscriptionStatus.PAST_DUE) {
|
|
15
|
+
throw errors_1.subscriptionErrors.invalidState(input.id, "skip the next delivery", subscription.status);
|
|
16
|
+
}
|
|
17
|
+
if (subscription.skip_next_cycle) {
|
|
18
|
+
throw errors_1.subscriptionErrors.conflict(`Subscription '${input.id}' already has the next cycle skipped`);
|
|
19
|
+
}
|
|
20
|
+
const updatedAt = new Date().toISOString();
|
|
21
|
+
const updated = await subscriptionModuleService.updateSubscriptions({
|
|
22
|
+
id: input.id,
|
|
23
|
+
skip_next_cycle: true,
|
|
24
|
+
metadata: {
|
|
25
|
+
...(subscription.metadata ?? {}),
|
|
26
|
+
skip_next_delivery_context: {
|
|
27
|
+
triggered_by: input.triggered_by ?? null,
|
|
28
|
+
updated_at: updatedAt,
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
return new workflows_sdk_1.StepResponse({
|
|
33
|
+
current: (0, pause_subscription_1.asSubscriptionWorkflowRecord)(updated),
|
|
34
|
+
previous: (0, pause_subscription_1.asSubscriptionWorkflowRecord)(subscription),
|
|
35
|
+
}, (0, pause_subscription_1.asSubscriptionWorkflowRecord)(subscription));
|
|
36
|
+
}, async function (subscription, { container }) {
|
|
37
|
+
if (!subscription) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
const subscriptionModuleService = container.resolve(subscription_1.SUBSCRIPTION_MODULE);
|
|
41
|
+
await subscriptionModuleService.updateSubscriptions((0, pause_subscription_1.asSubscriptionUpdateInput)(subscription));
|
|
42
|
+
});
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcC1uZXh0LWRlbGl2ZXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zdGVwcy9za2lwLW5leHQtZGVsaXZlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQTRFO0FBQzVFLDZEQUFnRTtBQUVoRSw0REFBcUU7QUFDckUsb0VBQTRFO0FBQzVFLDZEQUs2QjtBQU9oQixRQUFBLG9CQUFvQixHQUFHLElBQUEsMEJBQVUsRUFDNUMsb0JBQW9CLEVBQ3BCLEtBQUssV0FBVyxLQUFnQyxFQUFFLEVBQUUsU0FBUyxFQUFFO0lBQzdELE1BQU0seUJBQXlCLEdBQzdCLFNBQVMsQ0FBQyxPQUFPLENBQUMsa0NBQW1CLENBQUMsQ0FBQTtJQUV4QyxNQUFNLFlBQVksR0FBRyxNQUFNLHlCQUF5QixDQUFDLG9CQUFvQixDQUN2RSxLQUFLLENBQUMsRUFBRSxDQUNULENBQUE7SUFFRCxJQUNFLFlBQVksQ0FBQyxNQUFNLEtBQUssMEJBQWtCLENBQUMsTUFBTTtRQUNqRCxZQUFZLENBQUMsTUFBTSxLQUFLLDBCQUFrQixDQUFDLE1BQU07UUFDakQsWUFBWSxDQUFDLE1BQU0sS0FBSywwQkFBa0IsQ0FBQyxRQUFRLEVBQ25ELENBQUM7UUFDRCxNQUFNLDJCQUFrQixDQUFDLFlBQVksQ0FDbkMsS0FBSyxDQUFDLEVBQUUsRUFDUix3QkFBd0IsRUFDeEIsWUFBWSxDQUFDLE1BQU0sQ0FDcEIsQ0FBQTtJQUNILENBQUM7SUFFRCxJQUFJLFlBQVksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNqQyxNQUFNLDJCQUFrQixDQUFDLFFBQVEsQ0FDL0IsaUJBQWlCLEtBQUssQ0FBQyxFQUFFLHNDQUFzQyxDQUNoRSxDQUFBO0lBQ0gsQ0FBQztJQUVELE1BQU0sU0FBUyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUE7SUFFMUMsTUFBTSxPQUFPLEdBQUcsTUFBTSx5QkFBeUIsQ0FBQyxtQkFBbUIsQ0FBQztRQUNsRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUU7UUFDWixlQUFlLEVBQUUsSUFBSTtRQUNyQixRQUFRLEVBQUU7WUFDUixHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7WUFDaEMsMEJBQTBCLEVBQUU7Z0JBQzFCLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWSxJQUFJLElBQUk7Z0JBQ3hDLFVBQVUsRUFBRSxTQUFTO2FBQ3RCO1NBQ0Y7S0FDRixDQUFDLENBQUE7SUFFRixPQUFPLElBQUksNEJBQVksQ0FDckI7UUFDRSxPQUFPLEVBQUUsSUFBQSxpREFBNEIsRUFBQyxPQUFPLENBQUM7UUFDOUMsUUFBUSxFQUFFLElBQUEsaURBQTRCLEVBQUMsWUFBWSxDQUFDO0tBQ3JELEVBQ0QsSUFBQSxpREFBNEIsRUFBQyxZQUFZLENBQUMsQ0FDM0MsQ0FBQTtBQUNILENBQUMsRUFDRCxLQUFLLFdBQVcsWUFBd0MsRUFBRSxFQUFFLFNBQVMsRUFBRTtJQUNyRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbEIsT0FBTTtJQUNSLENBQUM7SUFFRCxNQUFNLHlCQUF5QixHQUM3QixTQUFTLENBQUMsT0FBTyxDQUFDLGtDQUFtQixDQUFDLENBQUE7SUFFeEMsTUFBTSx5QkFBeUIsQ0FBQyxtQkFBbUIsQ0FDakQsSUFBQSw4Q0FBeUIsRUFBQyxZQUFZLENBQUMsQ0FDeEMsQ0FBQTtBQUNILENBQUMsQ0FDRixDQUFBIn0=
|
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
</picture>
|
|
8
8
|
</a>
|
|
9
9
|
<h1> Open Source Subscription Medusa Plugin </h1>
|
|
10
|
-
<a href="https://github.com/
|
|
10
|
+
<a href="https://github.com/reorder-js/reorder?tab=MIT-1-ov-file">
|
|
11
11
|
<img alt="License" src="https://img.shields.io/badge/license-MIT-blue.svg" />
|
|
12
12
|
</a>
|
|
13
|
-
<a href="https://github.com/
|
|
13
|
+
<a href="https://github.com/reorder-js/reorder/issues">
|
|
14
14
|
<img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat" alt="PRs welcome!" />
|
|
15
15
|
<a href="https://www.reorderjs.com/contact">
|
|
16
|
-
<img alt="Support" src="https://img.shields.io/badge/support-contact%20author-
|
|
16
|
+
<img alt="Support" src="https://img.shields.io/badge/support-contact%20author-blue.svg" />
|
|
17
17
|
</a>
|
|
18
18
|
</div>
|
|
19
19
|
|
|
@@ -75,13 +75,13 @@ Today, the plugin provides strong Admin coverage across the implemented domains.
|
|
|
75
75
|
With `npm`:
|
|
76
76
|
|
|
77
77
|
```bash
|
|
78
|
-
npm install reorder
|
|
78
|
+
npm install @reorderjs/reorder
|
|
79
79
|
```
|
|
80
80
|
|
|
81
81
|
With `yarn`:
|
|
82
82
|
|
|
83
83
|
```bash
|
|
84
|
-
yarn add reorder
|
|
84
|
+
yarn add @reorderjs/reorder
|
|
85
85
|
```
|
|
86
86
|
|
|
87
87
|
### 2. Add the plugin to `medusa-config.ts`
|
|
@@ -90,7 +90,7 @@ yarn add reorder
|
|
|
90
90
|
plugins: [
|
|
91
91
|
// other plugins
|
|
92
92
|
{
|
|
93
|
-
resolve: "reorder",
|
|
93
|
+
resolve: "@reorderjs/reorder",
|
|
94
94
|
options: {},
|
|
95
95
|
},
|
|
96
96
|
]
|
|
@@ -107,7 +107,7 @@ If you want to work on the plugin itself locally:
|
|
|
107
107
|
### 1. Clone the repository
|
|
108
108
|
|
|
109
109
|
```bash
|
|
110
|
-
git clone
|
|
110
|
+
git clone https://github.com/reorder-js/reorder.git
|
|
111
111
|
cd reorder
|
|
112
112
|
```
|
|
113
113
|
|