@lodashventure/medusa-membership 0.1.1 → 0.1.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.
@@ -1,60 +1,52 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GET = void 0;
4
- const utils_1 = require("@medusajs/framework/utils");
5
- const membership_1 = require("../../../../../modules/membership");
4
+ const retrieve_customer_membership_tier_1 = require("../../../../../workflows/membership/retrieve-customer-membership-tier");
5
+ const create_membership_1 = require("../../../../../workflows/membership/create-membership");
6
6
  const GET = async (req, res) => {
7
- const customerId = req.auth_context.actor_id;
8
- // Get the link service to find the customer's membership
9
- const link = req.scope.resolve(utils_1.ContainerRegistrationKeys.LINK);
10
- // Get the membership module service
11
- const membershipModuleService = req.scope.resolve(membership_1.MEMBERSHIP_MODULE);
12
- // Query service for more complex queries
13
- const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
14
7
  try {
15
- // Find the link between customer and membership
16
- const customerMembershipLink = await link.list({
17
- [utils_1.Modules.CUSTOMER]: {
8
+ const customerId = req.auth_context.actor_id;
9
+ const createIfNotExists = req.query.create === "true"; // Optional query param to create membership
10
+ // Use the workflow to retrieve the customer's membership and tier
11
+ // Pass req.scope for proper context resolution
12
+ const { result } = await (0, retrieve_customer_membership_tier_1.retrieveCustomerMembershipTierWorkflow)(req.scope).run({
13
+ input: {
18
14
  customer_id: customerId,
19
15
  },
20
- }, {
21
- select: [`${membership_1.MEMBERSHIP_MODULE}.*`],
22
16
  });
23
- if (!customerMembershipLink || customerMembershipLink.length === 0) {
24
- return res.status(404).json({
25
- message: "No membership found for this customer",
17
+ const typedResult = result;
18
+ if (!typedResult.membership) {
19
+ // If create flag is set, create a new membership with 0 points
20
+ if (createIfNotExists) {
21
+ await (0, create_membership_1.createMembershipWorkflow)(req.scope).run({
22
+ input: {
23
+ customer_id: customerId,
24
+ points: 0,
25
+ },
26
+ });
27
+ // Retrieve the newly created membership with tier
28
+ const { result: newResult } = await (0, retrieve_customer_membership_tier_1.retrieveCustomerMembershipTierWorkflow)(req.scope).run({
29
+ input: {
30
+ customer_id: customerId,
31
+ },
32
+ });
33
+ const typedNewResult = newResult;
34
+ return res.json({
35
+ membership: typedNewResult.membership,
36
+ member_tier: typedNewResult.member_tier,
37
+ created: true, // Indicate that a new membership was created
38
+ });
39
+ }
40
+ // Return a more informative response for customers without memberships
41
+ return res.json({
42
+ membership: null,
43
+ member_tier: null,
44
+ message: "No membership exists for this customer yet. Memberships are created after your first purchase.",
26
45
  });
27
46
  }
28
- const membershipId = customerMembershipLink[0][membership_1.MEMBERSHIP_MODULE].membership_id;
29
- // Get the membership with its tier information
30
- const { data: memberships } = await query.graph({
31
- entity: "membership",
32
- fields: ["*", "member_tier.*"],
33
- filters: {
34
- id: membershipId,
35
- },
36
- });
37
- if (!memberships || memberships.length === 0) {
38
- return res.status(404).json({
39
- message: "Membership not found",
40
- });
41
- }
42
- const membership = memberships[0];
43
- // If member_tier is not populated, fetch it separately
44
- let memberTier = membership.member_tier;
45
- if (!memberTier && membership.member_tier_id) {
46
- const tiers = await membershipModuleService.listMemberTiers({
47
- id: membership.member_tier_id,
48
- });
49
- memberTier = tiers[0] || null;
50
- }
51
47
  return res.json({
52
- membership: {
53
- id: membership.id,
54
- membership_points: membership.membership_points,
55
- member_tier_id: membership.member_tier_id,
56
- },
57
- member_tier: memberTier,
48
+ membership: typedResult.membership,
49
+ member_tier: typedResult.member_tier,
58
50
  });
59
51
  }
60
52
  catch (error) {
@@ -66,4 +58,4 @@ const GET = async (req, res) => {
66
58
  }
67
59
  };
68
60
  exports.GET = GET;
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS9tZW1iZXItdGllci9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSxxREFBK0U7QUFDL0Usa0VBQXNFO0FBRy9ELE1BQU0sR0FBRyxHQUFHLEtBQUssRUFDdEIsR0FBK0IsRUFDL0IsR0FBbUIsRUFDbkIsRUFBRTtJQUNGLE1BQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO0lBRTdDLHlEQUF5RDtJQUN6RCxNQUFNLElBQUksR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUUvRCxvQ0FBb0M7SUFDcEMsTUFBTSx1QkFBdUIsR0FBNEIsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQ3hFLDhCQUFpQixDQUNsQixDQUFDO0lBRUYseUNBQXlDO0lBQ3pDLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRWpFLElBQUksQ0FBQztRQUNILGdEQUFnRDtRQUNoRCxNQUFNLHNCQUFzQixHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FDNUM7WUFDRSxDQUFDLGVBQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDbEIsV0FBVyxFQUFFLFVBQVU7YUFDeEI7U0FDRixFQUNEO1lBQ0UsTUFBTSxFQUFFLENBQUMsR0FBRyw4QkFBaUIsSUFBSSxDQUFDO1NBQ25DLENBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxzQkFBc0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDbkUsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDMUIsT0FBTyxFQUFFLHVDQUF1QzthQUNqRCxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsTUFBTSxZQUFZLEdBQUcsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUMsOEJBQWlCLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFFaEYsK0NBQStDO1FBQy9DLE1BQU0sRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQzlDLE1BQU0sRUFBRSxZQUFZO1lBQ3BCLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxlQUFlLENBQUM7WUFDOUIsT0FBTyxFQUFFO2dCQUNQLEVBQUUsRUFBRSxZQUFZO2FBQ2pCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsSUFBSSxXQUFXLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzdDLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQzFCLE9BQU8sRUFBRSxzQkFBc0I7YUFDaEMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVsQyx1REFBdUQ7UUFDdkQsSUFBSSxVQUFVLEdBQUcsVUFBVSxDQUFDLFdBQVcsQ0FBQztRQUV4QyxJQUFJLENBQUMsVUFBVSxJQUFJLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUM3QyxNQUFNLEtBQUssR0FBRyxNQUFNLHVCQUF1QixDQUFDLGVBQWUsQ0FBQztnQkFDMUQsRUFBRSxFQUFFLFVBQVUsQ0FBQyxjQUFjO2FBQzlCLENBQUMsQ0FBQztZQUVILFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDO1FBQ2hDLENBQUM7UUFFRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDZCxVQUFVLEVBQUU7Z0JBQ1YsRUFBRSxFQUFFLFVBQVUsQ0FBQyxFQUFFO2dCQUNqQixpQkFBaUIsRUFBRSxVQUFVLENBQUMsaUJBQWlCO2dCQUMvQyxjQUFjLEVBQUUsVUFBVSxDQUFDLGNBQWM7YUFDMUM7WUFDRCxXQUFXLEVBQUUsVUFBVTtTQUN4QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsNkJBQTZCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDcEQsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUMxQixPQUFPLEVBQUUsNkJBQTZCO1lBQ3RDLEtBQUssRUFBRSxLQUFLLENBQUMsT0FBTztTQUNyQixDQUFDLENBQUM7SUFDTCxDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBakZXLFFBQUEsR0FBRyxPQWlGZCJ9
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS9tZW1iZXItdGllci9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSw2SEFBK0g7QUFDL0gsNkZBQWlHO0FBd0IxRixNQUFNLEdBQUcsR0FBRyxLQUFLLEVBQ3RCLEdBQStCLEVBQy9CLEdBQW1CLEVBQ25CLEVBQUU7SUFDRixJQUFJLENBQUM7UUFDSCxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUM3QyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLE1BQU0sQ0FBQyxDQUFDLDRDQUE0QztRQUVuRyxrRUFBa0U7UUFDbEUsK0NBQStDO1FBQy9DLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxNQUFNLElBQUEsMEVBQXNDLEVBQzdELEdBQUcsQ0FBQyxLQUFLLENBQ1YsQ0FBQyxHQUFHLENBQUM7WUFDSixLQUFLLEVBQUU7Z0JBQ0wsV0FBVyxFQUFFLFVBQVU7YUFDeEI7U0FDRixDQUFDLENBQUM7UUFFSCxNQUFNLFdBQVcsR0FBRyxNQUE4QyxDQUFDO1FBRW5FLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDNUIsK0RBQStEO1lBQy9ELElBQUksaUJBQWlCLEVBQUUsQ0FBQztnQkFDdEIsTUFBTSxJQUFBLDRDQUF3QixFQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUM7b0JBQzVDLEtBQUssRUFBRTt3QkFDTCxXQUFXLEVBQUUsVUFBVTt3QkFDdkIsTUFBTSxFQUFFLENBQUM7cUJBQ1Y7aUJBQ0YsQ0FBQyxDQUFDO2dCQUVILGtEQUFrRDtnQkFDbEQsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FDekIsTUFBTSxJQUFBLDBFQUFzQyxFQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUM7b0JBQzFELEtBQUssRUFBRTt3QkFDTCxXQUFXLEVBQUUsVUFBVTtxQkFDeEI7aUJBQ0YsQ0FBQyxDQUFDO2dCQUVMLE1BQU0sY0FBYyxHQUNsQixTQUFpRCxDQUFDO2dCQUVwRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUM7b0JBQ2QsVUFBVSxFQUFFLGNBQWMsQ0FBQyxVQUFVO29CQUNyQyxXQUFXLEVBQUUsY0FBYyxDQUFDLFdBQVc7b0JBQ3ZDLE9BQU8sRUFBRSxJQUFJLEVBQUUsNkNBQTZDO2lCQUM3RCxDQUFDLENBQUM7WUFDTCxDQUFDO1lBRUQsdUVBQXVFO1lBQ3ZFLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQztnQkFDZCxVQUFVLEVBQUUsSUFBSTtnQkFDaEIsV0FBVyxFQUFFLElBQUk7Z0JBQ2pCLE9BQU8sRUFDTCxnR0FBZ0c7YUFDbkcsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQztZQUNkLFVBQVUsRUFBRSxXQUFXLENBQUMsVUFBVTtZQUNsQyxXQUFXLEVBQUUsV0FBVyxDQUFDLFdBQVc7U0FDckMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLDZCQUE2QixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BELE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDMUIsT0FBTyxFQUFFLDZCQUE2QjtZQUN0QyxLQUFLLEVBQUcsS0FBZSxDQUFDLE9BQU87U0FDaEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztBQUNILENBQUMsQ0FBQztBQXBFVyxRQUFBLEdBQUcsT0FvRWQifQ==
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.retrieveCustomerMembershipTierWorkflow = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const membership_1 = require("../../modules/membership");
6
+ const utils_1 = require("@medusajs/framework/utils");
7
+ const retrieveCustomerMembershipTierStep = (0, workflows_sdk_1.createStep)("retrieve-customer-membership-tier", async (data, { container }) => {
8
+ const membershipModuleService = container.resolve(membership_1.MEMBERSHIP_MODULE);
9
+ const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
10
+ try {
11
+ // Query customer with membership relationship
12
+ const { data: [customer], } = await query.graph({
13
+ entity: "customer",
14
+ fields: ["*", "membership.*"],
15
+ filters: {
16
+ id: data.customer_id,
17
+ },
18
+ });
19
+ if (!customer || !customer.membership) {
20
+ return new workflows_sdk_1.StepResponse({
21
+ membership: null,
22
+ member_tier: null,
23
+ });
24
+ }
25
+ const membership = customer.membership;
26
+ // Get the member tier if it exists
27
+ let memberTier = null;
28
+ if (membership.member_tier_id) {
29
+ const [tier] = await membershipModuleService.listMemberTiers({
30
+ id: membership.member_tier_id,
31
+ });
32
+ memberTier = tier ? tier : null;
33
+ }
34
+ return new workflows_sdk_1.StepResponse({
35
+ membership: {
36
+ id: membership.id,
37
+ membership_points: membership.membership_points,
38
+ member_tier_id: membership.member_tier_id,
39
+ },
40
+ member_tier: memberTier,
41
+ });
42
+ }
43
+ catch (error) {
44
+ console.error("Error in retrieveCustomerMembershipTierStep:", error);
45
+ return new workflows_sdk_1.StepResponse({
46
+ membership: null,
47
+ member_tier: null,
48
+ });
49
+ }
50
+ });
51
+ exports.retrieveCustomerMembershipTierWorkflow = (0, workflows_sdk_1.createWorkflow)("retrieve-customer-membership-tier", (input) => {
52
+ const result = retrieveCustomerMembershipTierStep(input);
53
+ return new workflows_sdk_1.WorkflowResponse(result);
54
+ });
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV0cmlldmUtY3VzdG9tZXItbWVtYmVyc2hpcC10aWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9tZW1iZXJzaGlwL3JldHJpZXZlLWN1c3RvbWVyLW1lbWJlcnNoaXAtdGllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFLMkM7QUFDM0MseURBQTZEO0FBRTdELHFEQUFzRTtBQTRCdEUsTUFBTSxrQ0FBa0MsR0FBRyxJQUFBLDBCQUFVLEVBQ25ELG1DQUFtQyxFQUNuQyxLQUFLLEVBQ0gsSUFBeUMsRUFDekMsRUFBRSxTQUFTLEVBQUUsRUFDZ0QsRUFBRTtJQUMvRCxNQUFNLHVCQUF1QixHQUMzQixTQUFTLENBQUMsT0FBTyxDQUFDLDhCQUFpQixDQUFDLENBQUM7SUFDdkMsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVqRSxJQUFJLENBQUM7UUFDSCw4Q0FBOEM7UUFDOUMsTUFBTSxFQUNKLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUNqQixHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztZQUNwQixNQUFNLEVBQUUsVUFBVTtZQUNsQixNQUFNLEVBQUUsQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDO1lBQzdCLE9BQU8sRUFBRTtnQkFDUCxFQUFFLEVBQUUsSUFBSSxDQUFDLFdBQVc7YUFDckI7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3RDLE9BQU8sSUFBSSw0QkFBWSxDQUFDO2dCQUN0QixVQUFVLEVBQUUsSUFBSTtnQkFDaEIsV0FBVyxFQUFFLElBQUk7YUFDbEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUM7UUFFdkMsbUNBQW1DO1FBQ25DLElBQUksVUFBVSxHQUEwQixJQUFJLENBQUM7UUFDN0MsSUFBSSxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDOUIsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sdUJBQXVCLENBQUMsZUFBZSxDQUFDO2dCQUMzRCxFQUFFLEVBQUUsVUFBVSxDQUFDLGNBQWM7YUFDOUIsQ0FBQyxDQUFDO1lBQ0gsVUFBVSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUUsSUFBdUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3RELENBQUM7UUFFRCxPQUFPLElBQUksNEJBQVksQ0FBQztZQUN0QixVQUFVLEVBQUU7Z0JBQ1YsRUFBRSxFQUFFLFVBQVUsQ0FBQyxFQUFFO2dCQUNqQixpQkFBaUIsRUFBRSxVQUFVLENBQUMsaUJBQWlCO2dCQUMvQyxjQUFjLEVBQUUsVUFBVSxDQUFDLGNBQWM7YUFDMUM7WUFDRCxXQUFXLEVBQUUsVUFBVTtTQUN4QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsOENBQThDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDckUsT0FBTyxJQUFJLDRCQUFZLENBQUM7WUFDdEIsVUFBVSxFQUFFLElBQUk7WUFDaEIsV0FBVyxFQUFFLElBQUk7U0FDbEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztBQUNILENBQUMsQ0FDRixDQUFDO0FBRVcsUUFBQSxzQ0FBc0MsR0FBRyxJQUFBLDhCQUFjLEVBQ2xFLG1DQUFtQyxFQUNuQyxDQUFDLEtBQTBDLEVBQUUsRUFBRTtJQUM3QyxNQUFNLE1BQU0sR0FBRyxrQ0FBa0MsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6RCxPQUFPLElBQUksZ0NBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDdEMsQ0FBQyxDQUNGLENBQUMifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodashventure/medusa-membership",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "A starter for Medusa plugins.",
5
5
  "author": "Medusa (https://medusajs.com)",
6
6
  "license": "MIT",
@@ -25,7 +25,8 @@
25
25
  ],
26
26
  "scripts": {
27
27
  "build": "medusa plugin:build",
28
- "dev": "medusa plugin:develop"
28
+ "dev": "medusa plugin:develop",
29
+ "prepublishOnly": "medusa plugin:build"
29
30
  },
30
31
  "devDependencies": {
31
32
  "@medusajs/admin-sdk": "2.10.0",
@@ -82,4 +83,4 @@
82
83
  "thai-address-autocomplete-react": "^1.2.2",
83
84
  "zod": "^4.1.12"
84
85
  }
85
- }
86
+ }