@mindful-web/marko-web-omeda-identity-x 1.66.0 → 1.69.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.
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web-omeda-identity-x$1.66.0/components/identify.marko",
5
+ marko_componentType = "/@mindful-web/marko-web-omeda-identity-x$1.69.2/components/identify.marko",
6
6
  marko_component = require("./identify.marko"),
7
7
  marko_renderer = require("marko/dist/runtime/components/renderer"),
8
8
  module_getCookieId = require("@mindful-web/marko-web-omeda-identity-x/utils/get-cookie-id"),
@@ -51,7 +51,7 @@ marko_template._ = marko_renderer(render, {
51
51
  }, marko_component);
52
52
 
53
53
  marko_template.meta = {
54
- id: "/@mindful-web/marko-web-omeda-identity-x$1.66.0/components/identify.marko",
54
+ id: "/@mindful-web/marko-web-omeda-identity-x$1.69.2/components/identify.marko",
55
55
  component: "./identify.marko",
56
56
  tags: [
57
57
  "@mindful-web/marko-web-identity-x/components/identify.marko",
@@ -0,0 +1,14 @@
1
+ const { get, getAsArray } = require('@mindful-web/object-path');
2
+
3
+ module.exports = async ({ req, payload }) => {
4
+ const omeda = req.app.locals.site.getAsObject('omeda');
5
+ const { user } = payload;
6
+ const found = getAsArray(user, 'externalIds')
7
+ .find(({ identifier, namespace }) => identifier.type === 'encrypted'
8
+ && namespace.provider === 'omeda'
9
+ && namespace.tenant === omeda.brandKey);
10
+ if (found) return get(found, 'identifier.value');
11
+ const rapidIdentity = await req.$idxOmedaRapidIdentify(payload);
12
+ return (rapidIdentity && rapidIdentity.encryptedCustomerId)
13
+ ? rapidIdentity.encryptedCustomerId : undefined;
14
+ };
@@ -0,0 +1,24 @@
1
+ const { getAsArray } = require('@mindful-web/object-path');
2
+ const getOmedaCustomerRecord = require('./get-omeda-customer-record');
3
+ const getEncryptedOmedaId = require('./get-encrypted-omeda-id');
4
+
5
+ module.exports = async ({ req, payload }) => {
6
+ const userDemoIds = new Set();
7
+ const userDeploymentIds = new Set();
8
+ const userProductIds = new Set();
9
+
10
+ const encryptedCustomerId = await getEncryptedOmedaId({ req, payload });
11
+ const omedaCustomer = encryptedCustomerId ? await getOmedaCustomerRecord({
12
+ omedaGraphQLClient: req.$omedaGraphQLClient,
13
+ encryptedCustomerId,
14
+ }) : {};
15
+
16
+ getAsArray(omedaCustomer, 'subscriptions')
17
+ .forEach(({ product }) => userProductIds.add(product.id));
18
+ getAsArray(omedaCustomer, 'demographics')
19
+ .forEach(({ demographic }) => userDemoIds.add(demographic.id));
20
+ getAsArray(omedaCustomer, 'primaryEmailAddress.optInStatus')
21
+ .forEach(({ deploymentTypeId }) => userDeploymentIds.add(deploymentTypeId));
22
+
23
+ return { userDemoIds, userDeploymentIds, userProductIds };
24
+ };
@@ -1,6 +1,8 @@
1
1
  const getAnsweredQuestionMap = require('./get-answered-question-map');
2
+ const getEncryptedOmedaId = require('./get-encrypted-omeda-id');
2
3
  const getOmedaCustomerRecord = require('./get-omeda-customer-record');
3
4
  const getOmedaLinkedFields = require('./get-omeda-linked-fields');
5
+ const getOmedaSubscriptionIds = require('./get-omeda-subscription-ids');
4
6
  const setOmedaData = require('./set-omeda-data');
5
7
  const setOmedaDemographics = require('./set-omeda-demographics');
6
8
  const setOmedaDeploymentTypes = require('./set-omeda-deployment-types');
@@ -9,8 +11,10 @@ const updateIdentityX = require('./update-identity-x');
9
11
 
10
12
  module.exports = {
11
13
  getAnsweredQuestionMap,
14
+ getEncryptedOmedaId,
12
15
  getOmedaCustomerRecord,
13
16
  getOmedaLinkedFields,
17
+ getOmedaSubscriptionIds,
14
18
  setOmedaData,
15
19
  setOmedaDemographics,
16
20
  setOmedaDeploymentTypes,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mindful-web/marko-web-omeda-identity-x",
3
- "version": "1.66.0",
3
+ "version": "1.69.2",
4
4
  "description": "Marko Omeda+IdentityX integration tools",
5
5
  "repository": "https://github.com/parameter1/mindful-web/tree/main/packages/marko-web-omeda-identity-x",
6
6
  "author": "Josh Worden <josh@parameter1.com>",
@@ -13,7 +13,7 @@
13
13
  "test": "yarn compile --no-clean && yarn lint"
14
14
  },
15
15
  "dependencies": {
16
- "@mindful-web/marko-web-identity-x": "^1.66.0",
16
+ "@mindful-web/marko-web-identity-x": "^1.68.6",
17
17
  "@mindful-web/marko-web-omeda": "^1.57.0",
18
18
  "@mindful-web/object-path": "^1.57.0",
19
19
  "@mindful-web/utils": "^1.57.0",
@@ -29,5 +29,5 @@
29
29
  "publishConfig": {
30
30
  "access": "public"
31
31
  },
32
- "gitHead": "be5509f793227a7e550b6f681a34e6dbb76d8b29"
32
+ "gitHead": "fcbd5d1058d6f8b4bd6393316e4013da27ee349a"
33
33
  }