@lodashventure/medusa-membership 0.0.8 → 0.1.0

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.
@@ -6,6 +6,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.consentMiddleware = void 0;
7
7
  const framework_1 = require("@medusajs/framework");
8
8
  const zod_1 = __importDefault(require("zod"));
9
+ // Validation schema for consent settings update
10
+ const consentSettingsUpdateSchema = zod_1.default.object({
11
+ consent_key_id: zod_1.default.string(),
12
+ enable: zod_1.default.boolean(),
13
+ });
9
14
  exports.consentMiddleware = (0, framework_1.defineMiddlewares)({
10
15
  routes: [
11
16
  {
@@ -27,6 +32,19 @@ exports.consentMiddleware = (0, framework_1.defineMiddlewares)({
27
32
  })),
28
33
  ],
29
34
  },
35
+ // Consent settings routes
36
+ {
37
+ method: ["GET"],
38
+ matcher: "/store/customers/me/consents/settings",
39
+ middlewares: [],
40
+ },
41
+ {
42
+ method: ["PATCH"],
43
+ matcher: "/store/customers/me/consents/settings",
44
+ middlewares: [
45
+ (0, framework_1.validateAndTransformBody)(consentSettingsUpdateSchema),
46
+ ],
47
+ },
30
48
  ],
31
49
  });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc2VudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvbWlkZGxld2FyZXMvY29uc2VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFHNkI7QUFDN0IsOENBQW9CO0FBRVAsUUFBQSxpQkFBaUIsR0FBRyxJQUFBLDZCQUFpQixFQUFDO0lBQ2pELE1BQU0sRUFBRTtRQUNOO1lBQ0UsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDO1lBQ2pCLE9BQU8sRUFBRSxpQ0FBaUM7WUFDMUMsV0FBVyxFQUFFO2dCQUNYLElBQUEsb0NBQXdCLEVBQ3RCLGFBQUMsQ0FBQyxNQUFNLENBQUM7b0JBQ1AsSUFBSSxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7b0JBQzNCLFdBQVcsRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO2lCQUNuQyxDQUFRLENBQ1Y7YUFDRjtTQUNGO1FBQ0Q7WUFDRSxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUM7WUFDakIsT0FBTyxFQUFFLHNDQUFzQztZQUMvQyxXQUFXLEVBQUU7Z0JBQ1gsSUFBQSxvQ0FBd0IsRUFDdEIsYUFBQyxDQUFDLE1BQU0sQ0FBQztvQkFDUCxNQUFNLEVBQUUsYUFBQyxDQUFDLE9BQU8sRUFBRTtpQkFDcEIsQ0FBUSxDQUNWO2FBQ0Y7U0FDRjtLQUNGO0NBQ0YsQ0FBQyxDQUFDIn0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc2VudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvbWlkZGxld2FyZXMvY29uc2VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFHNkI7QUFDN0IsOENBQW9CO0FBRXBCLGdEQUFnRDtBQUNoRCxNQUFNLDJCQUEyQixHQUFHLGFBQUMsQ0FBQyxNQUFNLENBQUM7SUFDM0MsY0FBYyxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUU7SUFDMUIsTUFBTSxFQUFFLGFBQUMsQ0FBQyxPQUFPLEVBQUU7Q0FDcEIsQ0FBQyxDQUFDO0FBRVUsUUFBQSxpQkFBaUIsR0FBRyxJQUFBLDZCQUFpQixFQUFDO0lBQ2pELE1BQU0sRUFBRTtRQUNOO1lBQ0UsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDO1lBQ2pCLE9BQU8sRUFBRSxpQ0FBaUM7WUFDMUMsV0FBVyxFQUFFO2dCQUNYLElBQUEsb0NBQXdCLEVBQ3RCLGFBQUMsQ0FBQyxNQUFNLENBQUM7b0JBQ1AsSUFBSSxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7b0JBQzNCLFdBQVcsRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO2lCQUNuQyxDQUFRLENBQ1Y7YUFDRjtTQUNGO1FBQ0Q7WUFDRSxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUM7WUFDakIsT0FBTyxFQUFFLHNDQUFzQztZQUMvQyxXQUFXLEVBQUU7Z0JBQ1gsSUFBQSxvQ0FBd0IsRUFDdEIsYUFBQyxDQUFDLE1BQU0sQ0FBQztvQkFDUCxNQUFNLEVBQUUsYUFBQyxDQUFDLE9BQU8sRUFBRTtpQkFDcEIsQ0FBUSxDQUNWO2FBQ0Y7U0FDRjtRQUNELDBCQUEwQjtRQUMxQjtZQUNFLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNmLE9BQU8sRUFBRSx1Q0FBdUM7WUFDaEQsV0FBVyxFQUFFLEVBQUU7U0FDaEI7UUFDRDtZQUNFLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQztZQUNqQixPQUFPLEVBQUUsdUNBQXVDO1lBQ2hELFdBQVcsRUFBRTtnQkFDWCxJQUFBLG9DQUF3QixFQUFDLDJCQUFrQyxDQUFDO2FBQzdEO1NBQ0Y7S0FDRjtDQUNGLENBQUMsQ0FBQyJ9
@@ -20,6 +20,8 @@ exports.memberTiersMiddleware = (0, framework_1.defineMiddlewares)({
20
20
  (0, framework_1.validateAndTransformBody)(zod_1.default.object({
21
21
  name: zod_1.default.string(),
22
22
  description: zod_1.default.string().default(""),
23
+ privilege_description: zod_1.default.string().optional(),
24
+ min_points: zod_1.default.number(),
23
25
  })),
24
26
  ],
25
27
  },
@@ -30,9 +32,11 @@ exports.memberTiersMiddleware = (0, framework_1.defineMiddlewares)({
30
32
  (0, framework_1.validateAndTransformBody)(zod_1.default.object({
31
33
  name: zod_1.default.string().optional(),
32
34
  description: zod_1.default.string().optional(),
35
+ privilege_description: zod_1.default.string().optional(),
36
+ min_points: zod_1.default.number().optional(),
33
37
  })),
34
38
  ],
35
39
  },
36
40
  ],
37
41
  });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtYmVyLXRpZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwaS9taWRkbGV3YXJlcy9tZW1iZXItdGllcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBRzZCO0FBQzdCLDhDQUFvQjtBQUNwQiw0RUFBeUU7QUFFNUQsUUFBQSxxQkFBcUIsR0FBRyxJQUFBLDZCQUFpQixFQUFDO0lBQ3JELE1BQU0sRUFBRTtRQUNOO1lBQ0UsT0FBTyxFQUFFLGtDQUFrQztZQUMzQyxXQUFXLEVBQUUsQ0FBQyxJQUFBLG1DQUFnQixFQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDckQ7UUFDRDtZQUNFLE1BQU0sRUFBRSxNQUFNO1lBQ2QsT0FBTyxFQUFFLHFCQUFxQjtZQUM5QixXQUFXLEVBQUU7Z0JBQ1gsSUFBQSxvQ0FBd0IsRUFDdEIsYUFBQyxDQUFDLE1BQU0sQ0FBQztvQkFDUCxJQUFJLEVBQUUsYUFBQyxDQUFDLE1BQU0sRUFBRTtvQkFDaEIsV0FBVyxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2lCQUNwQyxDQUFRLENBQ1Y7YUFDRjtTQUNGO1FBQ0Q7WUFDRSxNQUFNLEVBQUUsT0FBTztZQUNmLE9BQU8sRUFBRSwwQkFBMEI7WUFDbkMsV0FBVyxFQUFFO2dCQUNYLElBQUEsb0NBQXdCLEVBQ3RCLGFBQUMsQ0FBQyxNQUFNLENBQUM7b0JBQ1AsSUFBSSxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7b0JBQzNCLFdBQVcsRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO2lCQUNuQyxDQUFRLENBQ1Y7YUFDRjtTQUNGO0tBQ0Y7Q0FDRixDQUFDLENBQUMifQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtYmVyLXRpZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FwaS9taWRkbGV3YXJlcy9tZW1iZXItdGllcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBRzZCO0FBQzdCLDhDQUFvQjtBQUNwQiw0RUFBeUU7QUFFNUQsUUFBQSxxQkFBcUIsR0FBRyxJQUFBLDZCQUFpQixFQUFDO0lBQ3JELE1BQU0sRUFBRTtRQUNOO1lBQ0UsT0FBTyxFQUFFLGtDQUFrQztZQUMzQyxXQUFXLEVBQUUsQ0FBQyxJQUFBLG1DQUFnQixFQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDckQ7UUFDRDtZQUNFLE1BQU0sRUFBRSxNQUFNO1lBQ2QsT0FBTyxFQUFFLHFCQUFxQjtZQUM5QixXQUFXLEVBQUU7Z0JBQ1gsSUFBQSxvQ0FBd0IsRUFDdEIsYUFBQyxDQUFDLE1BQU0sQ0FBQztvQkFDUCxJQUFJLEVBQUUsYUFBQyxDQUFDLE1BQU0sRUFBRTtvQkFDaEIsV0FBVyxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO29CQUNuQyxxQkFBcUIsRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO29CQUM1QyxVQUFVLEVBQUUsYUFBQyxDQUFDLE1BQU0sRUFBRTtpQkFDdkIsQ0FBUSxDQUNWO2FBQ0Y7U0FDRjtRQUNEO1lBQ0UsTUFBTSxFQUFFLE9BQU87WUFDZixPQUFPLEVBQUUsMEJBQTBCO1lBQ25DLFdBQVcsRUFBRTtnQkFDWCxJQUFBLG9DQUF3QixFQUN0QixhQUFDLENBQUMsTUFBTSxDQUFDO29CQUNQLElBQUksRUFBRSxhQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO29CQUMzQixXQUFXLEVBQUUsYUFBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtvQkFDbEMscUJBQXFCLEVBQUUsYUFBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtvQkFDNUMsVUFBVSxFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7aUJBQ2xDLENBQVEsQ0FDVjthQUNGO1NBQ0Y7S0FDRjtDQUNGLENBQUMsQ0FBQyJ9
@@ -7,6 +7,11 @@ exports.notificationsMiddleware = void 0;
7
7
  const framework_1 = require("@medusajs/framework");
8
8
  const zod_1 = __importDefault(require("zod"));
9
9
  const checkFeatureFlag_1 = require("../utils/middlewares/checkFeatureFlag");
10
+ // Validation schema for the PATCH endpoint's UpdateRequest interface
11
+ const notificationSettingsUpdateRequestSchema = zod_1.default.object({
12
+ notification_key: zod_1.default.string(),
13
+ enable: zod_1.default.boolean(),
14
+ });
10
15
  exports.notificationsMiddleware = (0, framework_1.defineMiddlewares)({
11
16
  routes: [
12
17
  {
@@ -22,6 +27,22 @@ exports.notificationsMiddleware = (0, framework_1.defineMiddlewares)({
22
27
  })),
23
28
  ],
24
29
  },
30
+ // Notification settings routes
31
+ {
32
+ method: ["GET"],
33
+ matcher: "/store/customers/me/notifications/settings",
34
+ middlewares: [
35
+ // checkFeatureFlag("enable_membership_notification"), // Temporarily disabled for testing
36
+ ],
37
+ },
38
+ {
39
+ method: ["PATCH"],
40
+ matcher: "/store/customers/me/notifications/settings",
41
+ middlewares: [
42
+ // checkFeatureFlag("enable_membership_notification"), // Temporarily disabled for testing
43
+ (0, framework_1.validateAndTransformBody)(notificationSettingsUpdateRequestSchema),
44
+ ],
45
+ },
25
46
  ],
26
47
  });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvbWlkZGxld2FyZXMvbm90aWZpY2F0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFHNkI7QUFDN0IsOENBQW9CO0FBQ3BCLDRFQUF5RTtBQUU1RCxRQUFBLHVCQUF1QixHQUFHLElBQUEsNkJBQWlCLEVBQUM7SUFDdkQsTUFBTSxFQUFFO1FBQ047WUFDRSxPQUFPLEVBQUUsbUNBQW1DO1lBQzVDLFdBQVcsRUFBRSxDQUFDLElBQUEsbUNBQWdCLEVBQUMsZ0NBQWdDLENBQUMsQ0FBQztTQUNsRTtRQUNEO1lBQ0UsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDO1lBQ2pCLE9BQU8sRUFBRSx5Q0FBeUM7WUFDbEQsV0FBVyxFQUFFO2dCQUNYLElBQUEsb0NBQXdCLEVBQ3RCLGFBQUMsQ0FBQyxNQUFNLENBQUM7b0JBQ1AsTUFBTSxFQUFFLGFBQUMsQ0FBQyxPQUFPLEVBQUU7aUJBQ3BCLENBQVEsQ0FDVjthQUNGO1NBQ0Y7S0FDRjtDQUNGLENBQUMsQ0FBQyJ9
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvbWlkZGxld2FyZXMvbm90aWZpY2F0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFHNkI7QUFDN0IsOENBQW9CO0FBQ3BCLDRFQUF5RTtBQUV6RSxxRUFBcUU7QUFDckUsTUFBTSx1Q0FBdUMsR0FBRyxhQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3ZELGdCQUFnQixFQUFFLGFBQUMsQ0FBQyxNQUFNLEVBQUU7SUFDNUIsTUFBTSxFQUFFLGFBQUMsQ0FBQyxPQUFPLEVBQUU7Q0FDcEIsQ0FBQyxDQUFDO0FBRVUsUUFBQSx1QkFBdUIsR0FBRyxJQUFBLDZCQUFpQixFQUFDO0lBQ3ZELE1BQU0sRUFBRTtRQUNOO1lBQ0UsT0FBTyxFQUFFLG1DQUFtQztZQUM1QyxXQUFXLEVBQUUsQ0FBQyxJQUFBLG1DQUFnQixFQUFDLGdDQUFnQyxDQUFDLENBQUM7U0FDbEU7UUFDRDtZQUNFLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQztZQUNqQixPQUFPLEVBQUUseUNBQXlDO1lBQ2xELFdBQVcsRUFBRTtnQkFDWCxJQUFBLG9DQUF3QixFQUN0QixhQUFDLENBQUMsTUFBTSxDQUFDO29CQUNQLE1BQU0sRUFBRSxhQUFDLENBQUMsT0FBTyxFQUFFO2lCQUNwQixDQUFRLENBQ1Y7YUFDRjtTQUNGO1FBQ0QsK0JBQStCO1FBQy9CO1lBQ0UsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ2YsT0FBTyxFQUFFLDRDQUE0QztZQUNyRCxXQUFXLEVBQUU7WUFDWCwwRkFBMEY7YUFDM0Y7U0FDRjtRQUNEO1lBQ0UsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDO1lBQ2pCLE9BQU8sRUFBRSw0Q0FBNEM7WUFDckQsV0FBVyxFQUFFO2dCQUNYLDBGQUEwRjtnQkFDMUYsSUFBQSxvQ0FBd0IsRUFBQyx1Q0FBOEMsQ0FBQzthQUN6RTtTQUNGO0tBQ0Y7Q0FDRixDQUFDLENBQUMifQ==
@@ -1,22 +1,108 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PATCH = void 0;
4
- const update_membership_consent_1 = require("../../../../../../workflows/membership-consent/update-membership-consent");
4
+ const framework_1 = require("@medusajs/framework");
5
+ const consent_update_notification_1 = require("../../../../../../workflows/membership-consent/consent-update-notification");
6
+ const membership_1 = require("../../../../../../modules/membership");
5
7
  const PATCH = async (req, res) => {
6
- const userId = req.auth_context.actor_id;
7
- const consentKeyId = req.params.keyId;
8
- const enable = req.body.enable;
9
- console.log({ consentKeyId, enable });
10
- const consents = await update_membership_consent_1.updateMembershipConsentWorkflow.run({
11
- input: [
12
- {
8
+ try {
9
+ const userId = req.auth_context.actor_id;
10
+ const consentKeyId = req.params.keyId;
11
+ const { enable } = req.body;
12
+ console.log("Update consent request:", {
13
+ userId,
14
+ consentKeyId,
15
+ enable,
16
+ body: req.body
17
+ });
18
+ // Validate enable is boolean
19
+ if (typeof enable !== "boolean") {
20
+ return res.status(400).json({
21
+ error: "Invalid request",
22
+ message: "enable must be a boolean value",
23
+ });
24
+ }
25
+ const membershipModuleService = framework_1.container.resolve(membership_1.MEMBERSHIP_MODULE);
26
+ // Check if consent exists
27
+ const existingConsents = await membershipModuleService.listMembershipConsents({
28
+ customer_id: userId,
29
+ consent_key_id: consentKeyId,
30
+ });
31
+ console.log("Existing consents found:", existingConsents);
32
+ const previousValue = existingConsents[0]?.enable || false;
33
+ if (existingConsents.length === 0) {
34
+ // Create consent if it doesn't exist
35
+ const newConsent = await membershipModuleService.createMembershipConsents({
13
36
  customer_id: userId,
14
37
  consent_key_id: consentKeyId,
15
38
  enable: enable,
39
+ });
40
+ console.log("Created new consent:", newConsent);
41
+ // Get consent key details
42
+ const consentKeys = await membershipModuleService.listMembershipConsentKeys();
43
+ const consentKey = consentKeys.find((key) => key.id === consentKeyId);
44
+ // Send notification for new consent
45
+ await consent_update_notification_1.consentUpdateNotificationWorkflow.run({
46
+ input: {
47
+ customer_id: userId,
48
+ consent_key_id: consentKeyId,
49
+ consent_key_name: consentKey?.name,
50
+ previous_value: false,
51
+ new_value: enable,
52
+ updated_at: new Date(),
53
+ },
54
+ });
55
+ return res.json({
56
+ message: "Consent created successfully",
57
+ consent: {
58
+ ...newConsent,
59
+ consent_key: consentKey || { id: consentKeyId },
60
+ },
61
+ });
62
+ }
63
+ // Update existing consent directly
64
+ const updatedConsents = await membershipModuleService.updateMembershipConsents({
65
+ selector: {
66
+ customer_id: userId,
67
+ consent_key_id: consentKeyId,
68
+ },
69
+ data: {
70
+ enable: enable,
71
+ },
72
+ });
73
+ console.log("Updated consents:", updatedConsents);
74
+ // Get consent key details
75
+ const consentKeys = await membershipModuleService.listMembershipConsentKeys();
76
+ const updatedConsent = updatedConsents[0];
77
+ const consentKey = consentKeys.find((key) => key.id === updatedConsent.consent_key_id);
78
+ // Send notification only if value actually changed
79
+ if (previousValue !== enable) {
80
+ await consent_update_notification_1.consentUpdateNotificationWorkflow.run({
81
+ input: {
82
+ customer_id: userId,
83
+ consent_key_id: consentKeyId,
84
+ consent_key_name: consentKey?.name,
85
+ previous_value: previousValue,
86
+ new_value: enable,
87
+ updated_at: new Date(),
88
+ },
89
+ });
90
+ }
91
+ res.json({
92
+ message: "Consent updated successfully",
93
+ consent: {
94
+ ...updatedConsent,
95
+ consent_key: consentKey || { id: updatedConsent.consent_key_id },
16
96
  },
17
- ],
18
- });
19
- res.json(consents.result.consents);
97
+ });
98
+ }
99
+ catch (error) {
100
+ console.error("Error updating consent:", error);
101
+ res.status(500).json({
102
+ error: "Failed to update consent",
103
+ message: error.message,
104
+ });
105
+ }
20
106
  };
21
107
  exports.PATCH = PATCH;
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS9jb25zZW50cy9ba2V5SWRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBLHdIQUEySDtBQUVwSCxNQUFNLEtBQUssR0FBRyxLQUFLLEVBQ3hCLEdBQW9ELEVBQ3BELEdBQW1CLEVBQ25CLEVBQUU7SUFDRixNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUN6QyxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUN0QyxNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUUvQixPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFFdEMsTUFBTSxRQUFRLEdBQUcsTUFBTSwyREFBK0IsQ0FBQyxHQUFHLENBQUM7UUFDekQsS0FBSyxFQUFFO1lBQ0w7Z0JBQ0UsV0FBVyxFQUFFLE1BQU07Z0JBQ25CLGNBQWMsRUFBRSxZQUFZO2dCQUM1QixNQUFNLEVBQUUsTUFBTTthQUNmO1NBQ0Y7S0FDRixDQUFDLENBQUM7SUFFSCxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDckMsQ0FBQyxDQUFDO0FBckJXLFFBQUEsS0FBSyxTQXFCaEIifQ==
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS9jb25zZW50cy9ba2V5SWRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUk2QjtBQUU3Qiw0SEFBK0g7QUFFL0gscUVBQXlFO0FBRWxFLE1BQU0sS0FBSyxHQUFHLEtBQUssRUFDeEIsR0FBb0QsRUFDcEQsR0FBbUIsRUFDbkIsRUFBRTtJQUNGLElBQUksQ0FBQztRQUNILE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBQ3pDLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ3RDLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDO1FBRTVCLE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLEVBQUU7WUFDckMsTUFBTTtZQUNOLFlBQVk7WUFDWixNQUFNO1lBQ04sSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1NBQ2YsQ0FBQyxDQUFDO1FBRUgsNkJBQTZCO1FBQzdCLElBQUksT0FBTyxNQUFNLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDaEMsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDMUIsS0FBSyxFQUFFLGlCQUFpQjtnQkFDeEIsT0FBTyxFQUFFLGdDQUFnQzthQUMxQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsTUFBTSx1QkFBdUIsR0FDM0IscUJBQVMsQ0FBQyxPQUFPLENBQTBCLDhCQUFpQixDQUFDLENBQUM7UUFFaEUsMEJBQTBCO1FBQzFCLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSx1QkFBdUIsQ0FBQyxzQkFBc0IsQ0FBQztZQUM1RSxXQUFXLEVBQUUsTUFBTTtZQUNuQixjQUFjLEVBQUUsWUFBWTtT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
@@ -1,15 +1,38 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GET = void 0;
4
- const retrieve_membership_consent_1 = require("../../../../../workflows/membership-consent/retrieve-membership-consent");
4
+ const membership_1 = require("../../../../../modules/membership");
5
+ const framework_1 = require("@medusajs/framework");
5
6
  const GET = async (req, res) => {
6
- const userId = req.auth_context.actor_id;
7
- const consents = await retrieve_membership_consent_1.retrieveMembershipConsentWorkflow.run({
8
- input: {
7
+ try {
8
+ const userId = req.auth_context.actor_id;
9
+ // Use the service directly to get data
10
+ const membershipModuleService = framework_1.container.resolve(membership_1.MEMBERSHIP_MODULE);
11
+ // Get all consent keys
12
+ const consentKeys = await membershipModuleService.listMembershipConsentKeys();
13
+ // Get user's consents
14
+ const consents = await membershipModuleService.listMembershipConsents({
9
15
  customer_id: userId,
10
- },
11
- });
12
- res.json(consents.result.consents);
16
+ });
17
+ // Manually map the consent keys to consents
18
+ const consentsWithKeys = consents.map((consent) => {
19
+ const consentKey = consentKeys.find((key) => key.id === consent.consent_key_id);
20
+ return {
21
+ ...consent,
22
+ consent_key: consentKey || {
23
+ id: consent.consent_key_id,
24
+ },
25
+ };
26
+ });
27
+ res.json(consentsWithKeys);
28
+ }
29
+ catch (error) {
30
+ console.error("Error fetching consents:", error);
31
+ res.status(500).json({
32
+ error: "Failed to fetch consents",
33
+ message: error.message,
34
+ });
35
+ }
13
36
  };
14
37
  exports.GET = GET;
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS9jb25zZW50cy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSx5SEFBNEg7QUFFckgsTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUN0QixHQUErQixFQUMvQixHQUFtQixFQUNuQixFQUFFO0lBQ0YsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUM7SUFFekMsTUFBTSxRQUFRLEdBQUcsTUFBTSwrREFBaUMsQ0FBQyxHQUFHLENBQUM7UUFDM0QsS0FBSyxFQUFFO1lBQ0wsV0FBVyxFQUFFLE1BQU07U0FDcEI7S0FDRixDQUFDLENBQUM7SUFFSCxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDckMsQ0FBQyxDQUFDO0FBYlcsUUFBQSxHQUFHLE9BYWQifQ==
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS9jb25zZW50cy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxrRUFBc0U7QUFDdEUsbURBSTZCO0FBRXRCLE1BQU0sR0FBRyxHQUFHLEtBQUssRUFDdEIsR0FBK0IsRUFDL0IsR0FBbUIsRUFDbkIsRUFBRTtJQUNGLElBQUksQ0FBQztRQUNILE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBRXpDLHVDQUF1QztRQUN2QyxNQUFNLHVCQUF1QixHQUMzQixxQkFBUyxDQUFDLE9BQU8sQ0FBMEIsOEJBQWlCLENBQUMsQ0FBQztRQUVoRSx1QkFBdUI7UUFDdkIsTUFBTSxXQUFXLEdBQUcsTUFBTSx1QkFBdUIsQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO1FBRTlFLHNCQUFzQjtRQUN0QixNQUFNLFFBQVEsR0FBRyxNQUFNLHVCQUF1QixDQUFDLHNCQUFzQixDQUFDO1lBQ3BFLFdBQVcsRUFBRSxNQUFNO1NBQ3BCLENBQUMsQ0FBQztRQUVILDRDQUE0QztRQUM1QyxNQUFNLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNoRCxNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUNqQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsY0FBYyxDQUMzQyxDQUFDO1lBRUYsT0FBTztnQkFDTCxHQUFHLE9BQU87Z0JBQ1YsV0FBVyxFQUFFLFVBQVUsSUFBSTtvQkFDekIsRUFBRSxFQUFFLE9BQU8sQ0FBQyxjQUFjO2lCQUMzQjthQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVILEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDakQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDbkIsS0FBSyxFQUFFLDBCQUEwQjtZQUNqQyxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDdkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztBQUNILENBQUMsQ0FBQztBQXpDVyxRQUFBLEdBQUcsT0F5Q2QifQ==
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PATCH = exports.GET = void 0;
4
+ const framework_1 = require("@medusajs/framework");
5
+ const membership_1 = require("../../../../../../modules/membership");
6
+ // GET endpoint to retrieve consent settings
7
+ const GET = async (req, res) => {
8
+ try {
9
+ const customerId = req.auth_context.actor_id;
10
+ if (!customerId) {
11
+ return res.status(401).json({
12
+ error: "Unauthorized: Customer ID not found",
13
+ });
14
+ }
15
+ const membershipModuleService = framework_1.container.resolve(membership_1.MEMBERSHIP_MODULE);
16
+ // Get all consent keys
17
+ const consentKeys = await membershipModuleService.listMembershipConsentKeys();
18
+ // Get customer's current consent settings
19
+ const customerConsents = await membershipModuleService.listMembershipConsents({
20
+ customer_id: customerId,
21
+ });
22
+ // Map consent keys with customer's current settings
23
+ const consentSettings = consentKeys.map((key) => {
24
+ const customerConsent = customerConsents.find((consent) => consent.consent_key_id === key.id);
25
+ return {
26
+ consent_key_id: key.id,
27
+ consent_key_name: key.name,
28
+ description: key.description,
29
+ enabled: customerConsent ? customerConsent.enable : false,
30
+ updated_at: customerConsent?.updated_at || null,
31
+ };
32
+ });
33
+ res.json({
34
+ consent_settings: consentSettings,
35
+ total_count: consentSettings.length,
36
+ });
37
+ }
38
+ catch (error) {
39
+ console.error("Failed to retrieve consent settings:", error);
40
+ res.status(500).json({
41
+ error: "Failed to retrieve consent settings",
42
+ message: error.message,
43
+ });
44
+ }
45
+ };
46
+ exports.GET = GET;
47
+ const PATCH = async (req, res) => {
48
+ try {
49
+ const { consent_key_id, enable } = req.body;
50
+ const customerId = req.auth_context.actor_id;
51
+ if (!customerId) {
52
+ return res.status(401).json({
53
+ error: "Unauthorized: Customer ID not found",
54
+ });
55
+ }
56
+ // Validate request body
57
+ if (!consent_key_id || enable === undefined) {
58
+ return res.status(400).json({
59
+ error: "Bad Request: consent_key_id and enable are required",
60
+ });
61
+ }
62
+ // Use the service directly to get data
63
+ const membershipModuleService = framework_1.container.resolve(membership_1.MEMBERSHIP_MODULE);
64
+ console.log("Update consent request - customer:", customerId, "consent_key_id:", consent_key_id, "enable:", enable);
65
+ // First check if consent exists
66
+ const existingConsents = await membershipModuleService.listMembershipConsents({
67
+ customer_id: customerId,
68
+ consent_key_id: consent_key_id,
69
+ });
70
+ console.log("Found existing consents:", existingConsents.length);
71
+ let result;
72
+ if (existingConsents.length === 0) {
73
+ // Create new consent
74
+ result = await membershipModuleService.createMembershipConsents({
75
+ customer_id: customerId,
76
+ consent_key_id: consent_key_id,
77
+ enable: enable,
78
+ });
79
+ console.log("Created new consent:", result);
80
+ }
81
+ else {
82
+ // Update existing consent
83
+ result = await membershipModuleService.updateMembershipConsents({
84
+ selector: {
85
+ customer_id: customerId,
86
+ consent_key_id: consent_key_id,
87
+ },
88
+ data: {
89
+ enable: enable,
90
+ },
91
+ });
92
+ console.log("Updated consent:", result);
93
+ }
94
+ res.json({
95
+ message: "Consent setting updated successfully",
96
+ consent_key_id: consent_key_id,
97
+ enabled: enable,
98
+ result,
99
+ });
100
+ }
101
+ catch (error) {
102
+ console.error("Failed to update consent:", error);
103
+ res.status(500).json({
104
+ error: "Failed to update consent setting",
105
+ message: error.message,
106
+ });
107
+ }
108
+ };
109
+ exports.PATCH = PATCH;
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS9jb25zZW50cy9zZXR0aW5ncy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFJNkI7QUFHN0IscUVBQXlFO0FBT3pFLDRDQUE0QztBQUNyQyxNQUFNLEdBQUcsR0FBRyxLQUFLLEVBQ3RCLEdBQStCLEVBQy9CLEdBQW1CLEVBQ25CLEVBQUU7SUFDRixJQUFJLENBQUM7UUFDSCxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUU3QyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEIsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDMUIsS0FBSyxFQUFFLHFDQUFxQzthQUM3QyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsTUFBTSx1QkFBdUIsR0FDM0IscUJBQVMsQ0FBQyxPQUFPLENBQTBCLDhCQUFpQixDQUFDLENBQUM7UUFFaEUsdUJBQXVCO1FBQ3ZCLE1BQU0sV0FBVyxHQUFHLE1BQU0sdUJBQXVCLENBQUMseUJBQXlCLEVBQUUsQ0FBQztRQUU5RSwwQ0FBMEM7UUFDMUMsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLHVCQUF1QixDQUFDLHNCQUFzQixDQUFDO1lBQzVFLFdBQVcsRUFBRSxVQUFVO1NBQ3hCLENBQUMsQ0FBQztRQUVILG9EQUFvRDtRQUNwRCxNQUFNLGVBQWUsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDOUMsTUFBTSxlQUFlLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUMzQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLGNBQWMsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUMvQyxDQUFDO1lBRUYsT0FBTztnQkFDTCxjQUFjLEVBQUUsR0FBRyxDQUFDLEVBQUU7Z0JBQ3RCLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxJQUFJO2dCQUMxQixXQUFXLEVBQUUsR0FBRyxDQUFDLFdBQVc7Z0JBQzVCLE9BQU8sRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUs7Z0JBQ3pELFVBQVUsRUFBRSxlQUFlLEVBQUUsVUFBVSxJQUFJLElBQUk7YUFDaEQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsR0FBRyxDQUFDLElBQUksQ0FBQztZQUNQLGdCQUFnQixFQUFFLGVBQWU7WUFDakMsV0FBVyxFQUFFLGVBQWUsQ0FBQyxNQUFNO1NBQ3BDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxzQ0FBc0MsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM3RCxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNuQixLQUFLLEVBQUUscUNBQXFDO1lBQzVDLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztTQUN2QixDQUFDLENBQUM7SUFDTCxDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBbERXLFFBQUEsR0FBRyxPQWtEZDtBQUVLLE1BQU0sS0FBSyxHQUFHLEtBQUssRUFDeEIsR0FBOEMsRUFDOUMsR0FBbUIsRUFDbkIsRUFBRTtJQUNGLElBQUksQ0FBQztRQUNILE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQztRQUM1QyxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztRQUU3QyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEIsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDMUIsS0FBSyxFQUFFLHFDQUFxQzthQUM3QyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsd0JBQXdCO1FBQ3hCLElBQUksQ0FBQyxjQUFjLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzVDLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQzFCLEtBQUssRUFBRSxxREFBcUQ7YUFDN0QsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELHVDQUF1QztRQUN2QyxNQUFNLHVCQUF1QixHQUMzQixxQkFBUyxDQUFDLE9BQU8sQ0FBMEIsOEJBQWlCLENBQUMsQ0FBQztRQUNoRSxPQUFPLENBQUMsR0FBRyxDQUFDLG9DQUFvQyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXBILGdDQUFnQztRQUNoQyxNQUFNLGdCQUFnQixHQUNwQixNQUFNLHVCQUF1QixDQUFDLHNCQUFzQixDQUFDO1lBQ25ELFdBQVcsRUFBRSxVQUFVO1lBQ3ZCLGNBQWMsRUFBRSxjQUFjO1NBQy9CLENBQUMsQ0FBQztRQUVMLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFakUsSUFBSSxNQUFNLENBQUM7UUFFWCxJQUFJLGdCQUFnQixDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNsQyxxQkFBcUI7WUFDckIsTUFBTSxHQUFHLE1BQU0sdUJBQXVCLENBQUMsd0JBQXdCLENBQUM7Z0JBQzlELFdBQVcsRUFBRSxVQUFVO2dCQUN2QixjQUFjLEVBQUUsY0FBYztnQkFDOUIsTUFBTSxFQUFFLE1BQU07YUFDZixDQUFDLENBQUM7WUFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLHNCQUFzQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzlDLENBQUM7YUFBTSxDQUFDO1lBQ04sMEJBQTBCO1lBQzFCLE1BQU0sR0FBRyxNQUFNLHVCQUF1QixDQUFDLHdCQUF3QixDQUFDO2dCQUM5RCxRQUFRLEVBQUU7b0JBQ1IsV0FBVyxFQUFFLFVBQVU7b0JBQ3ZCLGNBQWMsRUFBRSxjQUFjO2lCQUMvQjtnQkFDRCxJQUFJLEVBQUU7b0JBQ0osTUFBTSxFQUFFLE1BQU07aUJBQ2Y7YUFDRixDQUFDLENBQUM7WUFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFFRCxHQUFHLENBQUMsSUFBSSxDQUFDO1lBQ1AsT0FBTyxFQUFFLHNDQUFzQztZQUMvQyxjQUFjLEVBQUUsY0FBYztZQUM5QixPQUFPLEVBQUUsTUFBTTtZQUNmLE1BQU07U0FDUCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsMkJBQTJCLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbEQsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDbkIsS0FBSyxFQUFFLGtDQUFrQztZQUN6QyxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDdkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztBQUNILENBQUMsQ0FBQztBQXhFVyxRQUFBLEtBQUssU0F3RWhCIn0=
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PATCH = exports.GET = void 0;
4
+ const framework_1 = require("@medusajs/framework");
5
+ const membership_1 = require("../../../../../../modules/membership");
6
+ // GET endpoint to retrieve current notification settings
7
+ const GET = async (req, res) => {
8
+ try {
9
+ const customerId = req.auth_context.actor_id;
10
+ if (!customerId) {
11
+ return res.status(401).json({
12
+ error: "Unauthorized: Customer ID not found",
13
+ });
14
+ }
15
+ const membershipModuleService = framework_1.container.resolve(membership_1.MEMBERSHIP_MODULE);
16
+ // Get customer's current notification preferences
17
+ const notifications = await membershipModuleService.listMembershipNotifications({
18
+ customer_id: customerId,
19
+ });
20
+ // Format the response
21
+ const notificationSettings = notifications.map((notification) => ({
22
+ id: notification.id,
23
+ notification_key: notification.notification_key,
24
+ enabled: notification.enable,
25
+ created_at: notification.created_at,
26
+ updated_at: notification.updated_at,
27
+ }));
28
+ res.json({
29
+ notification_settings: notificationSettings,
30
+ total_count: notificationSettings.length,
31
+ });
32
+ }
33
+ catch (error) {
34
+ console.error("Failed to retrieve notification settings:", error);
35
+ res.status(500).json({
36
+ error: "Failed to retrieve notification settings",
37
+ message: error.message,
38
+ });
39
+ }
40
+ };
41
+ exports.GET = GET;
42
+ // PATCH endpoint for updating notification preferences
43
+ const PATCH = async (req, res) => {
44
+ try {
45
+ const customerId = req.auth_context.actor_id;
46
+ if (!customerId) {
47
+ return res.status(401).json({
48
+ error: "Unauthorized: Customer ID not found",
49
+ });
50
+ }
51
+ const { notification_key, enable } = req.body;
52
+ // Validate request body
53
+ if (!notification_key || enable === undefined) {
54
+ return res.status(400).json({
55
+ error: "Bad Request: notification_key and enable are required",
56
+ });
57
+ }
58
+ const membershipModuleService = framework_1.container.resolve(membership_1.MEMBERSHIP_MODULE);
59
+ // Check if notification preference exists
60
+ const existingNotifications = await membershipModuleService.listMembershipNotifications({
61
+ customer_id: customerId,
62
+ notification_key: notification_key,
63
+ });
64
+ let result;
65
+ if (existingNotifications.length === 0) {
66
+ // Create new notification preference
67
+ result = await membershipModuleService.createMembershipNotifications({
68
+ customer_id: customerId,
69
+ notification_key: notification_key,
70
+ enable,
71
+ });
72
+ console.log("Created notification preference:", result);
73
+ }
74
+ else {
75
+ // Update existing notification preference
76
+ const updateResult = await membershipModuleService.updateMembershipNotifications({
77
+ selector: {
78
+ customer_id: customerId,
79
+ notification_key: notification_key,
80
+ },
81
+ data: {
82
+ enable,
83
+ },
84
+ });
85
+ // The update returns an array, get the first item
86
+ result = Array.isArray(updateResult) ? updateResult[0] : updateResult;
87
+ console.log("Updated notification preference:", result);
88
+ }
89
+ res.json({
90
+ message: "Notification preference updated successfully",
91
+ notification_key: notification_key,
92
+ enabled: enable,
93
+ result,
94
+ });
95
+ }
96
+ catch (error) {
97
+ console.error("Failed to update notification preference:", error);
98
+ res.status(500).json({
99
+ error: "Failed to update notification preference",
100
+ message: error.message,
101
+ });
102
+ }
103
+ };
104
+ exports.PATCH = PATCH;
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS9ub3RpZmljYXRpb25zL3NldHRpbmdzL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUk2QjtBQUc3QixxRUFBeUU7QUFPekUseURBQXlEO0FBQ2xELE1BQU0sR0FBRyxHQUFHLEtBQUssRUFDdEIsR0FBK0IsRUFDL0IsR0FBbUIsRUFDbkIsRUFBRTtJQUNGLElBQUksQ0FBQztRQUNILE1BQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDO1FBRTdDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNoQixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUMxQixLQUFLLEVBQUUscUNBQXFDO2FBQzdDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxNQUFNLHVCQUF1QixHQUMzQixxQkFBUyxDQUFDLE9BQU8sQ0FBMEIsOEJBQWlCLENBQUMsQ0FBQztRQUVoRSxrREFBa0Q7UUFDbEQsTUFBTSxhQUFhLEdBQUcsTUFBTSx1QkFBdUIsQ0FBQywyQkFBMkIsQ0FBQztZQUM5RSxXQUFXLEVBQUUsVUFBVTtTQUN4QixDQUFDLENBQUM7UUFFSCxzQkFBc0I7UUFDdEIsTUFBTSxvQkFBb0IsR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2hFLEVBQUUsRUFBRSxZQUFZLENBQUMsRUFBRTtZQUNuQixnQkFBZ0IsRUFBRSxZQUFZLENBQUMsZ0JBQWdCO1lBQy9DLE9BQU8sRUFBRSxZQUFZLENBQUMsTUFBTTtZQUM1QixVQUFVLEVBQUUsWUFBWSxDQUFDLFVBQVU7WUFDbkMsVUFBVSxFQUFFLFlBQVksQ0FBQyxVQUFVO1NBQ3BDLENBQUMsQ0FBQyxDQUFD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
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.consentUpdateNotificationWorkflow = void 0;
4
+ const framework_1 = require("@medusajs/framework");
5
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
6
+ const membership_1 = require("../../modules/membership");
7
+ const createConsentNotificationStep = (0, workflows_sdk_1.createStep)("create-consent-notification", async (data) => {
8
+ const membershipModuleService = framework_1.container.resolve(membership_1.MEMBERSHIP_MODULE);
9
+ // Get consent key details if not provided
10
+ let consentKeyName = data.consent_key_name;
11
+ if (!consentKeyName) {
12
+ const consentKeys = await membershipModuleService.listMembershipConsentKeys({
13
+ id: data.consent_key_id,
14
+ });
15
+ consentKeyName = consentKeys[0]?.name || "Unknown consent";
16
+ }
17
+ // Create notification message
18
+ const action = data.new_value ? "enabled" : "disabled";
19
+ const message = `Consent preference for "${consentKeyName}" has been ${action}`;
20
+ // Create or update notification preference in the membership notifications table
21
+ // Note: This table tracks notification preferences, not actual notification messages
22
+ const existingNotifications = await membershipModuleService.listMembershipNotifications({
23
+ customer_id: data.customer_id,
24
+ notification_key: `consent_${data.consent_key_id}`,
25
+ });
26
+ let notification;
27
+ if (existingNotifications.length === 0) {
28
+ notification = await membershipModuleService.createMembershipNotifications({
29
+ customer_id: data.customer_id,
30
+ notification_key: `consent_${data.consent_key_id}`,
31
+ enable: data.new_value,
32
+ });
33
+ }
34
+ else {
35
+ notification = await membershipModuleService.updateMembershipNotifications({
36
+ selector: {
37
+ customer_id: data.customer_id,
38
+ notification_key: `consent_${data.consent_key_id}`,
39
+ },
40
+ data: {
41
+ enable: data.new_value,
42
+ },
43
+ });
44
+ // Get the updated record
45
+ notification = notification[0] || existingNotifications[0];
46
+ }
47
+ console.log(`Consent notification created: ${message}`);
48
+ return new workflows_sdk_1.StepResponse({ notification }, { notificationId: notification.id });
49
+ }, async (context) => {
50
+ // Rollback: Delete the notification if something goes wrong
51
+ if (context?.notificationId) {
52
+ const membershipModuleService = framework_1.container.resolve(membership_1.MEMBERSHIP_MODULE);
53
+ await membershipModuleService.deleteMembershipNotifications(context.notificationId);
54
+ }
55
+ });
56
+ exports.consentUpdateNotificationWorkflow = (0, workflows_sdk_1.createWorkflow)("consent-update-notification", (input) => {
57
+ const { notification } = createConsentNotificationStep(input);
58
+ return new workflows_sdk_1.WorkflowResponse({
59
+ notification,
60
+ });
61
+ });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc2VudC11cGRhdGUtbm90aWZpY2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9tZW1iZXJzaGlwLWNvbnNlbnQvY29uc2VudC11cGRhdGUtbm90aWZpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFnRDtBQUNoRCxxRUFLMkM7QUFDM0MseURBQTZEO0FBWTdELE1BQU0sNkJBQTZCLEdBQUcsSUFBQSwwQkFBVSxFQUM5Qyw2QkFBNkIsRUFDN0IsS0FBSyxFQUFFLElBQThCLEVBQUUsRUFBRTtJQUN2QyxNQUFNLHVCQUF1QixHQUMzQixxQkFBUyxDQUFDLE9BQU8sQ0FBMEIsOEJBQWlCLENBQUMsQ0FBQztJQUVoRSwwQ0FBMEM7SUFDMUMsSUFBSSxjQUFjLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQzNDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNwQixNQUFNLFdBQVcsR0FBRyxNQUFNLHVCQUF1QixDQUFDLHlCQUF5QixDQUFDO1lBQzFFLEVBQUUsRUFBRSxJQUFJLENBQUMsY0FBYztTQUN4QixDQUFDLENBQUM7UUFDSCxjQUFjLEdBQUcsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksSUFBSSxpQkFBaUIsQ0FBQztJQUM3RCxDQUFDO0lBRUQsOEJBQThCO0lBQzlCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDO0lBQ3ZELE1BQU0sT0FBTyxHQUFHLDJCQUEyQixjQUFjLGNBQWMsTUFBTSxFQUFFLENBQUM7SUFFaEYsaUZBQWlGO0lBQ2pGLHFGQUFxRjtJQUNyRixNQUFNLHFCQUFxQixHQUFHLE1BQU0sdUJBQXVCLENBQUMsMkJBQTJCLENBQUM7UUFDdEYsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1FBQzdCLGdCQUFnQixFQUFFLFdBQVcsSUFBSSxDQUFDLGNBQWMsRUFBRTtLQUNuRCxDQUFDLENBQUM7SUFFSCxJQUFJLFlBQVksQ0FBQztJQUNqQixJQUFJLHFCQUFxQixDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN2QyxZQUFZLEdBQUcsTUFBTSx1QkFBdUIsQ0FBQyw2QkFBNkIsQ0FBQztZQUN6RSxXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsZ0JBQWdCLEVBQUUsV0FBVyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ2xELE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUztTQUN2QixDQUFDLENBQUM7SUFDTCxDQUFDO1NBQU0sQ0FBQztRQUNOLFlBQVksR0FBRyxNQUFNLHVCQUF1QixDQUFDLDZCQUE2QixDQUFDO1lBQ3pFLFFBQVEsRUFBRTtnQkFDUixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQzdCLGdCQUFnQixFQUFFLFdBQVcsSUFBSSxDQUFDLGNBQWMsRUFBRTthQUNuRDtZQUNELElBQUksRUFBRTtnQkFDSixNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVM7YUFDdkI7U0FDRixDQUFDLENBQUM7UUFDSCx5QkFBeUI7UUFDekIsWUFBWSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQ0FBaUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUV4RCxPQUFPLElBQUksNEJBQVksQ0FDckIsRUFBRSxZQUFZLEVBQUUsRUFDaEIsRUFBRSxjQUFjLEVBQUUsWUFBWSxDQUFDLEVBQUUsRUFBRSxDQUNwQyxDQUFDO0FBQ0osQ0FBQyxFQUNELEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtJQUNoQiw0REFBNEQ7SUFDNUQsSUFBSSxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUM7UUFDNUIsTUFBTSx1QkFBdUIsR0FDM0IscUJBQVMsQ0FBQyxPQUFPLENBQTBCLDhCQUFpQixDQUFDLENBQUM7UUFFaEUsTUFBTSx1QkFBdUIsQ0FBQyw2QkFBNkIsQ0FDekQsT0FBTyxDQUFDLGNBQWMsQ0FDdkIsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDLENBQ0YsQ0FBQztBQUVXLFFBQUEsaUNBQWlDLEdBQUcsSUFBQSw4QkFBYyxFQUM3RCw2QkFBNkIsRUFDN0IsQ0FBQyxLQUErQixFQUFFLEVBQUU7SUFDbEMsTUFBTSxFQUFFLFlBQVksRUFBRSxHQUFHLDZCQUE2QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTlELE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQztRQUMxQixZQUFZO0tBQ2IsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUNGLENBQUMifQ==
@@ -20,20 +20,17 @@ const retrieveMembershipConsentStep = (0, workflows_sdk_1.createStep)("retrieve-
20
20
  .filter((ck) => !consentSet.has(ck.id))
21
21
  .map((ck) => ck.id);
22
22
  if (consents.length !== consentKeys.length) {
23
- const res = await create_membership_consent_1.createMembershipConsentWorkflow.run({
23
+ await create_membership_consent_1.createMembershipConsentWorkflow.run({
24
24
  input: {
25
25
  customer_id: data.customer_id,
26
26
  missing_consent_keys,
27
27
  },
28
28
  });
29
- consents = consents.concat(res.result.consents);
30
29
  }
31
- return new workflows_sdk_1.StepResponse({ consents }, { consents });
30
+ return new workflows_sdk_1.StepResponse({}, {});
32
31
  });
33
32
  exports.retrieveMembershipConsentWorkflow = (0, workflows_sdk_1.createWorkflow)("retrieve-membership-consent", (input) => {
34
- const { consents } = retrieveMembershipConsentStep(input);
35
- return new workflows_sdk_1.WorkflowResponse({
36
- consents,
37
- });
33
+ retrieveMembershipConsentStep(input);
34
+ return new workflows_sdk_1.WorkflowResponse({});
38
35
  });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV0cmlldmUtbWVtYmVyc2hpcC1jb25zZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9tZW1iZXJzaGlwLWNvbnNlbnQvcmV0cmlldmUtbWVtYmVyc2hpcC1jb25zZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFnRDtBQUNoRCxxREFBd0Q7QUFDeEQscUVBSzJDO0FBQzNDLHlEQUE2RDtBQUU3RCwrRkFBa0c7QUFNbEcsTUFBTSw2QkFBNkIsR0FBRyxJQUFBLDBCQUFVLEVBQzlDLDZCQUE2QixFQUM3QixLQUFLLEVBQUUsSUFBbUIsRUFBRSxFQUFFO0lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEIsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIseUJBQXlCLENBQzFCLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSx1QkFBdUIsR0FDM0IscUJBQVMsQ0FBQyxPQUFPLENBQTBCLDhCQUFpQixDQUFDLENBQUM7SUFFaEUsTUFBTSxXQUFXLEdBQ2YsTUFBTSx1QkFBdUIsQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO0lBRTVELElBQUksUUFBUSxHQUFHLE1BQU0sdUJBQXVCLENBQUMsc0JBQXNCLENBQUM7UUFDbEUsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO0tBQzlCLENBQUMsQ0FBQztJQUVILE1BQU0sVUFBVSxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLE1BQU0sb0JBQW9CLEdBQUcsV0FBVztTQUNyQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDdEMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFdEIsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMzQyxNQUFNLEdBQUcsR0FBRyxNQUFNLDJEQUErQixDQUFDLEdBQUcsQ0FBQztZQUNwRCxLQUFLLEVBQUU7Z0JBQ0wsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO2dCQUM3QixvQkFBb0I7YUFDckI7U0FDRixDQUFDLENBQUM7UUFDSCxRQUFRLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxPQUFPLElBQUksNEJBQVksQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztBQUN0RCxDQUFDLENBQ0YsQ0FBQztBQUVXLFFBQUEsaUNBQWlDLEdBQUcsSUFBQSw4QkFBYyxFQUM3RCw2QkFBNkIsRUFDN0IsQ0FBQyxLQUFvQixFQUFFLEVBQUU7SUFDdkIsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLDZCQUE2QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTFELE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQztRQUMxQixRQUFRO0tBQ1QsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUNGLENBQUMifQ==
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmV0cmlldmUtbWVtYmVyc2hpcC1jb25zZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9tZW1iZXJzaGlwLWNvbnNlbnQvcmV0cmlldmUtbWVtYmVyc2hpcC1jb25zZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFnRDtBQUNoRCxxREFBd0Q7QUFDeEQscUVBSzJDO0FBQzNDLHlEQUE2RDtBQUU3RCwrRkFBa0c7QUFNbEcsTUFBTSw2QkFBNkIsR0FBRyxJQUFBLDBCQUFVLEVBQzlDLDZCQUE2QixFQUM3QixLQUFLLEVBQUUsSUFBbUIsRUFBRSxFQUFFO0lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEIsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIseUJBQXlCLENBQzFCLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSx1QkFBdUIsR0FDM0IscUJBQVMsQ0FBQyxPQUFPLENBQTBCLDhCQUFpQixDQUFDLENBQUM7SUFFaEUsTUFBTSxXQUFXLEdBQ2YsTUFBTSx1QkFBdUIsQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO0lBRTVELElBQUksUUFBUSxHQUFHLE1BQU0sdUJBQXVCLENBQUMsc0JBQXNCLENBQUM7UUFDbEUsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO0tBQzlCLENBQUMsQ0FBQztJQUVILE1BQU0sVUFBVSxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLE1BQU0sb0JBQW9CLEdBQUcsV0FBVztTQUNyQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDdEMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFFdEIsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMzQyxNQUFNLDJEQUErQixDQUFDLEdBQUcsQ0FBQztZQUN4QyxLQUFLLEVBQUU7Z0JBQ0wsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO2dCQUM3QixvQkFBb0I7YUFDckI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxJQUFJLDRCQUFZLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ2xDLENBQUMsQ0FDRixDQUFDO0FBRVcsUUFBQSxpQ0FBaUMsR0FBRyxJQUFBLDhCQUFjLEVBQzdELDZCQUE2QixFQUM3QixDQUFDLEtBQW9CLEVBQUUsRUFBRTtJQUN2Qiw2QkFBNkIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVyQyxPQUFPLElBQUksZ0NBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDbEMsQ0FBQyxDQUNGLENBQUMifQ==