@sgftech/medusa-payment-stripe-subscription 0.0.32 → 0.0.34
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/dist/api/middlewares.d.ts +1 -1
- package/dist/api/middlewares.js +9 -6
- package/dist/api/stripe/hooks/route.js +31 -0
- package/dist/subscribers/stripe-event.js +2 -2
- package/package.json +1 -1
- package/dist/api/store/stripe/hooks/route.js +0 -31
- /package/dist/api/{store/stripe → stripe}/hooks/route.d.ts +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { MedusaRequest, MiddlewaresConfig } from "@medusajs/medusa";
|
|
2
|
-
export declare const
|
|
2
|
+
export declare const validateRawData: (req: MedusaRequest, res: any, next: any) => Promise<void>;
|
|
3
3
|
export declare const config: MiddlewaresConfig;
|
package/dist/api/middlewares.js
CHANGED
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.config = exports.
|
|
3
|
+
exports.config = exports.validateRawData = void 0;
|
|
4
4
|
const body_parser_1 = require("body-parser");
|
|
5
|
-
const
|
|
5
|
+
const validateRawData = async (req, res, next) => {
|
|
6
|
+
const stripeSubscriptionProviderService = req.scope.resolve("stripeSubscriptionProviderService");
|
|
7
|
+
const stripe = stripeSubscriptionProviderService.getStripe();
|
|
8
|
+
await stripe.webhooks.signature.verifyHeader(req.body.toString(), req.headers["stripe-signature"], stripeSubscriptionProviderService.options.webhook_secret, 300);
|
|
6
9
|
req["rawData"] = req.body;
|
|
7
10
|
next();
|
|
8
11
|
};
|
|
9
|
-
exports.
|
|
12
|
+
exports.validateRawData = validateRawData;
|
|
10
13
|
exports.config = {
|
|
11
14
|
routes: [
|
|
12
15
|
{
|
|
13
16
|
method: ["POST", "PUT"],
|
|
14
|
-
matcher: "/
|
|
17
|
+
matcher: "/stripe/hooks/*",
|
|
15
18
|
bodyParser: false,
|
|
16
|
-
middlewares: [(0, body_parser_1.raw)({ type: "application/json" })]
|
|
19
|
+
middlewares: [(0, body_parser_1.raw)({ type: "application/json" }), exports.validateRawData]
|
|
17
20
|
}
|
|
18
21
|
]
|
|
19
22
|
};
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDZDQUFrQztBQUczQixNQUFNLGVBQWUsR0FBRyxLQUFLLEVBQ2hDLEdBQWtCLEVBQ2xCLEdBQUcsRUFDSCxJQUFJLEVBQ1MsRUFBRTtJQUNmLE1BQU0saUNBQWlDLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQ3ZELG1DQUFtQyxDQUNELENBQUM7SUFDdkMsTUFBTSxNQUFNLEdBQUcsaUNBQWlDLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDN0QsTUFBTSxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQ3hDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQ25CLEdBQUcsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQVcsRUFDekMsaUNBQWlDLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFDeEQsR0FBRyxDQUNOLENBQUM7SUFDRixHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQztJQUUxQixJQUFJLEVBQUUsQ0FBQztBQUNYLENBQUMsQ0FBQztBQWxCVyxRQUFBLGVBQWUsbUJBa0IxQjtBQUVXLFFBQUEsTUFBTSxHQUFzQjtJQUNyQyxNQUFNLEVBQUU7UUFDSjtZQUNJLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUM7WUFDdkIsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixVQUFVLEVBQUUsS0FBSztZQUNqQixXQUFXLEVBQUUsQ0FBQyxJQUFBLGlCQUFHLEVBQUMsRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxFQUFFLHVCQUFlLENBQUM7U0FDcEU7S0FDSjtDQUNKLENBQUMifQ==
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.POST = exports.constructWebhook = exports.STRIPE_HOOK_RECEIVED_EVENT = void 0;
|
|
4
|
+
exports.STRIPE_HOOK_RECEIVED_EVENT = "medusa.stripe_payment_intent_update";
|
|
5
|
+
function constructWebhook({ signature, body, container }) {
|
|
6
|
+
const stripeProviderService = container.resolve("stripeSubscriptionProviderService");
|
|
7
|
+
return stripeProviderService.constructWebhookEvent(body, signature);
|
|
8
|
+
}
|
|
9
|
+
exports.constructWebhook = constructWebhook;
|
|
10
|
+
const POST = async (req, response) => {
|
|
11
|
+
const event = constructWebhook({
|
|
12
|
+
signature: req.headers["stripe-signature"],
|
|
13
|
+
body: req.body,
|
|
14
|
+
container: req.scope
|
|
15
|
+
});
|
|
16
|
+
const eventBus = req.scope.resolve("eventBusService");
|
|
17
|
+
const pluginOptions = req.scope.resolve("stripeSubscriptionProviderService").options;
|
|
18
|
+
try {
|
|
19
|
+
await eventBus.emit(exports.STRIPE_HOOK_RECEIVED_EVENT, event, {
|
|
20
|
+
delay: pluginOptions.webhook_delay || 5000,
|
|
21
|
+
attempts: pluginOptions.webhook_retries || 3
|
|
22
|
+
});
|
|
23
|
+
response.sendStatus(200);
|
|
24
|
+
}
|
|
25
|
+
catch (e) {
|
|
26
|
+
response.sendStatus(500);
|
|
27
|
+
}
|
|
28
|
+
return;
|
|
29
|
+
};
|
|
30
|
+
exports.POST = POST;
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBpL3N0cmlwZS9ob29rcy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFRYSxRQUFBLDBCQUEwQixHQUFHLHFDQUFxQyxDQUFDO0FBRWhGLFNBQWdCLGdCQUFnQixDQUFDLEVBQzdCLFNBQVMsRUFDVCxJQUFJLEVBQ0osU0FBUyxFQUtaO0lBQ0csTUFBTSxxQkFBcUIsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUMzQyxtQ0FBbUMsQ0FDRCxDQUFDO0lBRXZDLE9BQU8scUJBQXFCLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ3hFLENBQUM7QUFkRCw0Q0FjQztBQUVNLE1BQU0sSUFBSSxHQUFHLEtBQUssRUFBRSxHQUFrQixFQUFFLFFBQXdCLEVBQUUsRUFBRTtJQUN2RSxNQUFNLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQztRQUMzQixTQUFTLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztRQUMxQyxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7UUFDZCxTQUFTLEVBQUUsR0FBRyxDQUFDLEtBQUs7S0FDdkIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQW9CLENBQUM7SUFDekUsTUFBTSxhQUFhLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQ25DLG1DQUFtQyxDQUN0QyxDQUFDLE9BQU8sQ0FBQztJQUNWLElBQUk7UUFDQSxNQUFNLFFBQVEsQ0FBQyxJQUFJLENBQUMsa0NBQTBCLEVBQUUsS0FBSyxFQUFFO1lBQ25ELEtBQUssRUFBRSxhQUFhLENBQUMsYUFBYSxJQUFJLElBQUk7WUFDMUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxlQUFlLElBQUksQ0FBQztTQUMvQyxDQUFDLENBQUM7UUFFSCxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQzVCO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDUixRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQzVCO0lBQ0QsT0FBTztBQUNYLENBQUMsQ0FBQztBQXRCVyxRQUFBLElBQUksUUFzQmYifQ==
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.config = void 0;
|
|
4
4
|
const handle_subscription_1 = require("../utils/handle-subscription");
|
|
5
|
-
const route_1 = require("../api/
|
|
5
|
+
const route_1 = require("../api/stripe/hooks/route");
|
|
6
6
|
async function stripeEventsHandler({ data, eventName, container }) {
|
|
7
7
|
const event = data;
|
|
8
8
|
const paymentIntent = event.data.object;
|
|
@@ -17,4 +17,4 @@ exports.default = stripeEventsHandler;
|
|
|
17
17
|
exports.config = {
|
|
18
18
|
event: route_1.STRIPE_HOOK_RECEIVED_EVENT
|
|
19
19
|
};
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaXBlLWV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N1YnNjcmliZXJzL3N0cmlwZS1ldmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxzRUFBc0U7QUFFdEUscURBQXVFO0FBRXhELEtBQUssVUFBVSxtQkFBbUIsQ0FBQyxFQUM5QyxJQUFJLEVBQ0osU0FBUyxFQUNULFNBQVMsRUFDa0I7SUFDM0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBRW5CLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBOEIsQ0FBQztJQUVoRSxNQUFNLElBQUEsNENBQXNCLEVBQUM7UUFDekIsS0FBSyxFQUFFLElBQUk7UUFDWCxTQUFTO1FBQ1QsYUFBYTtLQUNoQixDQUFDLENBQUM7SUFFSCw4QkFBOEI7QUFDbEMsQ0FBQztBQWhCRCxzQ0FnQkM7QUFFWSxRQUFBLE1BQU0sR0FBcUI7SUFDcEMsS0FBSyxFQUFFLGtDQUEwQjtDQUNwQyxDQUFDIn0=
|
package/package.json
CHANGED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.POST = exports.constructWebhook = exports.STRIPE_HOOK_RECEIVED_EVENT = void 0;
|
|
4
|
-
exports.STRIPE_HOOK_RECEIVED_EVENT = "medusa.stripe_payment_intent_update";
|
|
5
|
-
function constructWebhook({ signature, body, container }) {
|
|
6
|
-
const stripeProviderService = container.resolve("stripeSubscriptionProviderService");
|
|
7
|
-
return stripeProviderService.constructWebhookEvent(body, signature);
|
|
8
|
-
}
|
|
9
|
-
exports.constructWebhook = constructWebhook;
|
|
10
|
-
const POST = async (req, response) => {
|
|
11
|
-
const event = constructWebhook({
|
|
12
|
-
signature: req.headers["stripe-signature"],
|
|
13
|
-
body: req.body,
|
|
14
|
-
container: req.scope
|
|
15
|
-
});
|
|
16
|
-
const eventBus = req.scope.resolve("eventBusService");
|
|
17
|
-
const pluginOptions = req.scope.resolve("stripeSubscriptionProviderService").options;
|
|
18
|
-
try {
|
|
19
|
-
await eventBus.emit(exports.STRIPE_HOOK_RECEIVED_EVENT, event, {
|
|
20
|
-
delay: pluginOptions.webhook_delay || 5000,
|
|
21
|
-
attempts: pluginOptions.webhook_retries || 3
|
|
22
|
-
});
|
|
23
|
-
response.sendStatus(200);
|
|
24
|
-
}
|
|
25
|
-
catch (e) {
|
|
26
|
-
response.sendStatus(500);
|
|
27
|
-
}
|
|
28
|
-
return;
|
|
29
|
-
};
|
|
30
|
-
exports.POST = POST;
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3N0cmlwZS9ob29rcy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFRYSxRQUFBLDBCQUEwQixHQUFHLHFDQUFxQyxDQUFDO0FBRWhGLFNBQWdCLGdCQUFnQixDQUFDLEVBQzdCLFNBQVMsRUFDVCxJQUFJLEVBQ0osU0FBUyxFQUtaO0lBQ0csTUFBTSxxQkFBcUIsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUMzQyxtQ0FBbUMsQ0FDRCxDQUFDO0lBRXZDLE9BQU8scUJBQXFCLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ3hFLENBQUM7QUFkRCw0Q0FjQztBQUVNLE1BQU0sSUFBSSxHQUFHLEtBQUssRUFBRSxHQUFrQixFQUFFLFFBQXdCLEVBQUUsRUFBRTtJQUN2RSxNQUFNLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQztRQUMzQixTQUFTLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQztRQUMxQyxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7UUFDZCxTQUFTLEVBQUUsR0FBRyxDQUFDLEtBQUs7S0FDdkIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQW9CLENBQUM7SUFDekUsTUFBTSxhQUFhLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQ25DLG1DQUFtQyxDQUN0QyxDQUFDLE9BQU8sQ0FBQztJQUNWLElBQUk7UUFDQSxNQUFNLFFBQVEsQ0FBQyxJQUFJLENBQUMsa0NBQTBCLEVBQUUsS0FBSyxFQUFFO1lBQ25ELEtBQUssRUFBRSxhQUFhLENBQUMsYUFBYSxJQUFJLElBQUk7WUFDMUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxlQUFlLElBQUksQ0FBQztTQUMvQyxDQUFDLENBQUM7UUFFSCxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQzVCO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDUixRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQzVCO0lBQ0QsT0FBTztBQUNYLENBQUMsQ0FBQztBQXRCVyxRQUFBLElBQUksUUFzQmYifQ==
|
|
File without changes
|