@blaze-cms/plugin-gtm-fe 0.125.0-alpha.7 → 0.125.0-auth-updates.1
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/CHANGELOG.md +2 -10
- package/lib/GoogleTagManager/GTMFactory.js +13 -38
- package/lib/GoogleTagManager/GTMFactory.js.map +1 -1
- package/lib/GoogleTagManager/GTMRender.js +26 -60
- package/lib/GoogleTagManager/GTMRender.js.map +1 -1
- package/lib/GoogleTagManager/index.js +0 -4
- package/lib/GoogleTagManager/index.js.map +1 -1
- package/lib/GoogleTagManagerEvent/GTMClickEvent.js +13 -42
- package/lib/GoogleTagManagerEvent/GTMClickEvent.js.map +1 -1
- package/lib/GoogleTagManagerEvent/GTMClickEvents.js +2 -12
- package/lib/GoogleTagManagerEvent/GTMClickEvents.js.map +1 -1
- package/lib/GoogleTagManagerEvent/GTMEvent.js +6 -29
- package/lib/GoogleTagManagerEvent/GTMEvent.js.map +1 -1
- package/lib/GoogleTagManagerEvent/GTMEventFactory.js +18 -53
- package/lib/GoogleTagManagerEvent/GTMEventFactory.js.map +1 -1
- package/lib/GoogleTagManagerEvent/GTMEventRender.js +24 -70
- package/lib/GoogleTagManagerEvent/GTMEventRender.js.map +1 -1
- package/lib/GoogleTagManagerEvent/GTMEventSwitch.js +5 -19
- package/lib/GoogleTagManagerEvent/GTMEventSwitch.js.map +1 -1
- package/lib/GoogleTagManagerEvent/index.js +0 -4
- package/lib/GoogleTagManagerEvent/index.js.map +1 -1
- package/lib/constants.js +0 -1
- package/lib/constants.js.map +1 -1
- package/lib/helpers/build-and-push-web-vitals.js +2 -10
- package/lib/helpers/build-and-push-web-vitals.js.map +1 -1
- package/lib/helpers/build-data-layer.js +6 -41
- package/lib/helpers/build-data-layer.js.map +1 -1
- package/lib/helpers/build-nested-event.js +3 -30
- package/lib/helpers/build-nested-event.js.map +1 -1
- package/lib/helpers/build-props-to-display-array.js +0 -6
- package/lib/helpers/build-props-to-display-array.js.map +1 -1
- package/lib/helpers/build-user-layer.js +5 -29
- package/lib/helpers/build-user-layer.js.map +1 -1
- package/lib/helpers/build-user-query-props.js +4 -23
- package/lib/helpers/build-user-query-props.js.map +1 -1
- package/lib/helpers/filter-gtm-events.js +0 -7
- package/lib/helpers/filter-gtm-events.js.map +1 -1
- package/lib/helpers/get-ids-to-use.js +0 -4
- package/lib/helpers/get-ids-to-use.js.map +1 -1
- package/lib/helpers/get-render-props.js +4 -8
- package/lib/helpers/get-render-props.js.map +1 -1
- package/lib/helpers/index.js +0 -12
- package/lib/helpers/index.js.map +1 -1
- package/lib/helpers/push-to-data-layer.js +0 -5
- package/lib/helpers/push-to-data-layer.js.map +1 -1
- package/lib/helpers/reset-data-layer.js +0 -12
- package/lib/helpers/reset-data-layer.js.map +1 -1
- package/lib/index.js +2 -23
- package/lib/index.js.map +1 -1
- package/lib-es/GoogleTagManager/GTMFactory.js +0 -2
- package/lib-es/GoogleTagManager/GTMFactory.js.map +1 -1
- package/lib-es/GoogleTagManager/GTMRender.js +0 -7
- package/lib-es/GoogleTagManager/GTMRender.js.map +1 -1
- package/lib-es/GoogleTagManager/index.js.map +1 -1
- package/lib-es/GoogleTagManagerEvent/GTMClickEvent.js +0 -7
- package/lib-es/GoogleTagManagerEvent/GTMClickEvent.js.map +1 -1
- package/lib-es/GoogleTagManagerEvent/GTMClickEvents.js +0 -2
- package/lib-es/GoogleTagManagerEvent/GTMClickEvents.js.map +1 -1
- package/lib-es/GoogleTagManagerEvent/GTMEvent.js +0 -4
- package/lib-es/GoogleTagManagerEvent/GTMEvent.js.map +1 -1
- package/lib-es/GoogleTagManagerEvent/GTMEventFactory.js +3 -6
- package/lib-es/GoogleTagManagerEvent/GTMEventFactory.js.map +1 -1
- package/lib-es/GoogleTagManagerEvent/GTMEventRender.js +9 -19
- package/lib-es/GoogleTagManagerEvent/GTMEventRender.js.map +1 -1
- package/lib-es/GoogleTagManagerEvent/GTMEventSwitch.js +5 -8
- package/lib-es/GoogleTagManagerEvent/GTMEventSwitch.js.map +1 -1
- package/lib-es/GoogleTagManagerEvent/index.js.map +1 -1
- package/lib-es/constants.js.map +1 -1
- package/lib-es/helpers/build-and-push-web-vitals.js +0 -3
- package/lib-es/helpers/build-and-push-web-vitals.js.map +1 -1
- package/lib-es/helpers/build-data-layer.js +0 -11
- package/lib-es/helpers/build-data-layer.js.map +1 -1
- package/lib-es/helpers/build-nested-event.js +0 -9
- package/lib-es/helpers/build-nested-event.js.map +1 -1
- package/lib-es/helpers/build-props-to-display-array.js +0 -1
- package/lib-es/helpers/build-props-to-display-array.js.map +1 -1
- package/lib-es/helpers/build-user-layer.js +0 -9
- package/lib-es/helpers/build-user-layer.js.map +1 -1
- package/lib-es/helpers/build-user-query-props.js +0 -2
- package/lib-es/helpers/build-user-query-props.js.map +1 -1
- package/lib-es/helpers/filter-gtm-events.js +0 -2
- package/lib-es/helpers/filter-gtm-events.js.map +1 -1
- package/lib-es/helpers/get-ids-to-use.js +0 -1
- package/lib-es/helpers/get-ids-to-use.js.map +1 -1
- package/lib-es/helpers/get-render-props.js +0 -2
- package/lib-es/helpers/get-render-props.js.map +1 -1
- package/lib-es/helpers/index.js.map +1 -1
- package/lib-es/helpers/push-to-data-layer.js +0 -2
- package/lib-es/helpers/push-to-data-layer.js.map +1 -1
- package/lib-es/helpers/reset-data-layer.js +0 -3
- package/lib-es/helpers/reset-data-layer.js.map +1 -1
- package/lib-es/index.js +2 -6
- package/lib-es/index.js.map +1 -1
- package/package.json +6 -6
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
2
|
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
3
|
const _excluded = ["router", "action", "actionKey", "queryVariables", "parentComponent", "userPropsToDisplay", "handleOnSuccess"];
|
|
4
|
-
|
|
5
4
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
6
|
-
|
|
7
5
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
8
|
-
|
|
9
6
|
import React, { useState } from 'react';
|
|
10
7
|
import PropTypes from 'prop-types';
|
|
11
8
|
import { useQuery } from '@apollo/client';
|
|
@@ -14,19 +11,17 @@ import { getUser } from '@blaze-cms/react-page-builder';
|
|
|
14
11
|
import { withRouter } from 'next/router';
|
|
15
12
|
import GTMEvent from './GTMEvent';
|
|
16
13
|
import { buildDataLayer, buildNestedEvent, buildUserQueryProps, buildUserLayer } from '../helpers';
|
|
17
|
-
|
|
18
14
|
const GTMEventRender = _ref => {
|
|
19
15
|
let {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
16
|
+
router,
|
|
17
|
+
action,
|
|
18
|
+
actionKey,
|
|
19
|
+
queryVariables,
|
|
20
|
+
parentComponent,
|
|
21
|
+
userPropsToDisplay,
|
|
22
|
+
handleOnSuccess
|
|
23
|
+
} = _ref,
|
|
24
|
+
eventProps = _objectWithoutProperties(_ref, _excluded);
|
|
30
25
|
const {
|
|
31
26
|
asPath
|
|
32
27
|
} = router;
|
|
@@ -52,12 +47,10 @@ const GTMEventRender = _ref => {
|
|
|
52
47
|
});
|
|
53
48
|
if (loading || userLoading || error) return null;
|
|
54
49
|
const gtmData = data.entityData || data[actionKey];
|
|
55
|
-
|
|
56
50
|
if (currentLocation !== asPath) {
|
|
57
51
|
setCurrentLocation(asPath);
|
|
58
52
|
return null;
|
|
59
53
|
}
|
|
60
|
-
|
|
61
54
|
const {
|
|
62
55
|
eventTrigger,
|
|
63
56
|
propsToDisplay,
|
|
@@ -66,9 +59,7 @@ const GTMEventRender = _ref => {
|
|
|
66
59
|
const dataLayerProps = buildDataLayer(gtmData, propsToDisplay);
|
|
67
60
|
const dataLayerObject = buildNestedEvent(eventEcommerce, eventProps, dataLayerProps, parentComponent);
|
|
68
61
|
const userLayerObject = buildUserLayer(userData, userPropsToDisplay);
|
|
69
|
-
|
|
70
62
|
const extendedDataLayer = _objectSpread(_objectSpread({}, dataLayerObject), userLayerObject);
|
|
71
|
-
|
|
72
63
|
return /*#__PURE__*/React.createElement(GTMEvent, {
|
|
73
64
|
dataLayerObject: extendedDataLayer,
|
|
74
65
|
eventTrigger: eventTrigger,
|
|
@@ -76,7 +67,6 @@ const GTMEventRender = _ref => {
|
|
|
76
67
|
handleOnSuccess: handleOnSuccess
|
|
77
68
|
});
|
|
78
69
|
};
|
|
79
|
-
|
|
80
70
|
GTMEventRender.propTypes = {
|
|
81
71
|
userPropsToDisplay: PropTypes.array,
|
|
82
72
|
router: PropTypes.object.isRequired,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GTMEventRender.js","names":["React","useState","PropTypes","useQuery","checkIfLoggedIn","getUser","withRouter","GTMEvent","buildDataLayer","buildNestedEvent","buildUserQueryProps","buildUserLayer","GTMEventRender","router","action","actionKey","queryVariables","parentComponent","userPropsToDisplay","handleOnSuccess","eventProps","asPath","currentLocation","setCurrentLocation","data","error","loading","id","userId","hasUserProps","length","userProps","userData","userLoading","variables","skip","gtmData","entityData","eventTrigger","propsToDisplay","eventEcommerce","dataLayerProps","dataLayerObject","userLayerObject","extendedDataLayer","propTypes","array","object","isRequired","string","func","defaultProps"],"sources":["../../src/GoogleTagManagerEvent/GTMEventRender.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { checkIfLoggedIn } from '@blaze-cms/core-auth-ui';\nimport { getUser } from '@blaze-cms/react-page-builder';\nimport { withRouter } from 'next/router';\nimport GTMEvent from './GTMEvent';\nimport { buildDataLayer, buildNestedEvent, buildUserQueryProps, buildUserLayer } from '../helpers';\n\nconst GTMEventRender = ({\n router,\n action,\n actionKey,\n queryVariables,\n parentComponent,\n userPropsToDisplay,\n handleOnSuccess,\n ...eventProps\n}) => {\n const { asPath } = router;\n const [currentLocation, setCurrentLocation] = useState('');\n const { data = {}, error, loading } = useQuery(action, queryVariables);\n const { id: userId } = checkIfLoggedIn();\n const hasUserProps = userId && userPropsToDisplay && userPropsToDisplay.length;\n const userProps = hasUserProps ? buildUserQueryProps(userPropsToDisplay) : '';\n const { data: userData, loading: userLoading } = useQuery(getUser(userProps), {\n variables: { id: userId },\n skip: !hasUserProps\n });\n\n if (loading || userLoading || error) return null;\n const gtmData = data.entityData || data[actionKey];\n\n if (currentLocation !== asPath) {\n setCurrentLocation(asPath);\n return null;\n }\n\n const { eventTrigger, propsToDisplay, eventEcommerce } = eventProps;\n const dataLayerProps = buildDataLayer(gtmData, propsToDisplay);\n\n const dataLayerObject = buildNestedEvent(\n eventEcommerce,\n eventProps,\n dataLayerProps,\n parentComponent\n );\n const userLayerObject = buildUserLayer(userData, userPropsToDisplay);\n const extendedDataLayer = { ...dataLayerObject, ...userLayerObject };\n\n return (\n <GTMEvent\n dataLayerObject={extendedDataLayer}\n eventTrigger={eventTrigger}\n currentLocation={currentLocation}\n handleOnSuccess={handleOnSuccess}\n />\n );\n};\n\nGTMEventRender.propTypes = {\n userPropsToDisplay: PropTypes.array,\n router: PropTypes.object.isRequired,\n action: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n queryVariables: PropTypes.object.isRequired,\n parentComponent: PropTypes.object.isRequired,\n handleOnSuccess: PropTypes.func\n};\n\nGTMEventRender.defaultProps = {\n userPropsToDisplay: [],\n handleOnSuccess: () => {}\n};\n\nGTMEventRender.defaultProps = {\n userPropsToDisplay: []\n};\n\nexport default withRouter(GTMEventRender);\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"GTMEventRender.js","names":["React","useState","PropTypes","useQuery","checkIfLoggedIn","getUser","withRouter","GTMEvent","buildDataLayer","buildNestedEvent","buildUserQueryProps","buildUserLayer","GTMEventRender","router","action","actionKey","queryVariables","parentComponent","userPropsToDisplay","handleOnSuccess","eventProps","asPath","currentLocation","setCurrentLocation","data","error","loading","id","userId","hasUserProps","length","userProps","userData","userLoading","variables","skip","gtmData","entityData","eventTrigger","propsToDisplay","eventEcommerce","dataLayerProps","dataLayerObject","userLayerObject","extendedDataLayer","propTypes","array","object","isRequired","string","func","defaultProps"],"sources":["../../src/GoogleTagManagerEvent/GTMEventRender.js"],"sourcesContent":["import React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { checkIfLoggedIn } from '@blaze-cms/core-auth-ui';\nimport { getUser } from '@blaze-cms/react-page-builder';\nimport { withRouter } from 'next/router';\nimport GTMEvent from './GTMEvent';\nimport { buildDataLayer, buildNestedEvent, buildUserQueryProps, buildUserLayer } from '../helpers';\n\nconst GTMEventRender = ({\n router,\n action,\n actionKey,\n queryVariables,\n parentComponent,\n userPropsToDisplay,\n handleOnSuccess,\n ...eventProps\n}) => {\n const { asPath } = router;\n const [currentLocation, setCurrentLocation] = useState('');\n const { data = {}, error, loading } = useQuery(action, queryVariables);\n const { id: userId } = checkIfLoggedIn();\n const hasUserProps = userId && userPropsToDisplay && userPropsToDisplay.length;\n const userProps = hasUserProps ? buildUserQueryProps(userPropsToDisplay) : '';\n const { data: userData, loading: userLoading } = useQuery(getUser(userProps), {\n variables: { id: userId },\n skip: !hasUserProps\n });\n\n if (loading || userLoading || error) return null;\n const gtmData = data.entityData || data[actionKey];\n\n if (currentLocation !== asPath) {\n setCurrentLocation(asPath);\n return null;\n }\n\n const { eventTrigger, propsToDisplay, eventEcommerce } = eventProps;\n const dataLayerProps = buildDataLayer(gtmData, propsToDisplay);\n\n const dataLayerObject = buildNestedEvent(\n eventEcommerce,\n eventProps,\n dataLayerProps,\n parentComponent\n );\n const userLayerObject = buildUserLayer(userData, userPropsToDisplay);\n const extendedDataLayer = { ...dataLayerObject, ...userLayerObject };\n\n return (\n <GTMEvent\n dataLayerObject={extendedDataLayer}\n eventTrigger={eventTrigger}\n currentLocation={currentLocation}\n handleOnSuccess={handleOnSuccess}\n />\n );\n};\n\nGTMEventRender.propTypes = {\n userPropsToDisplay: PropTypes.array,\n router: PropTypes.object.isRequired,\n action: PropTypes.object.isRequired,\n actionKey: PropTypes.string.isRequired,\n queryVariables: PropTypes.object.isRequired,\n parentComponent: PropTypes.object.isRequired,\n handleOnSuccess: PropTypes.func\n};\n\nGTMEventRender.defaultProps = {\n userPropsToDisplay: [],\n handleOnSuccess: () => {}\n};\n\nGTMEventRender.defaultProps = {\n userPropsToDisplay: []\n};\n\nexport default withRouter(GTMEventRender);\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,OAAOC,SAAS,MAAM,YAAY;AAClC,SAASC,QAAQ,QAAQ,gBAAgB;AACzC,SAASC,eAAe,QAAQ,yBAAyB;AACzD,SAASC,OAAO,QAAQ,+BAA+B;AACvD,SAASC,UAAU,QAAQ,aAAa;AACxC,OAAOC,QAAQ,MAAM,YAAY;AACjC,SAASC,cAAc,EAAEC,gBAAgB,EAAEC,mBAAmB,EAAEC,cAAc,QAAQ,YAAY;AAElG,MAAMC,cAAc,GAAG,QASjB;EAAA,IATkB;MACtBC,MAAM;MACNC,MAAM;MACNC,SAAS;MACTC,cAAc;MACdC,eAAe;MACfC,kBAAkB;MAClBC;IAEF,CAAC;IADIC,UAAU;EAEb,MAAM;IAAEC;EAAO,CAAC,GAAGR,MAAM;EACzB,MAAM,CAACS,eAAe,EAAEC,kBAAkB,CAAC,GAAGtB,QAAQ,CAAC,EAAE,CAAC;EAC1D,MAAM;IAAEuB,IAAI,GAAG,CAAC,CAAC;IAAEC,KAAK;IAAEC;EAAQ,CAAC,GAAGvB,QAAQ,CAACW,MAAM,EAAEE,cAAc,CAAC;EACtE,MAAM;IAAEW,EAAE,EAAEC;EAAO,CAAC,GAAGxB,eAAe,EAAE;EACxC,MAAMyB,YAAY,GAAGD,MAAM,IAAIV,kBAAkB,IAAIA,kBAAkB,CAACY,MAAM;EAC9E,MAAMC,SAAS,GAAGF,YAAY,GAAGnB,mBAAmB,CAACQ,kBAAkB,CAAC,GAAG,EAAE;EAC7E,MAAM;IAAEM,IAAI,EAAEQ,QAAQ;IAAEN,OAAO,EAAEO;EAAY,CAAC,GAAG9B,QAAQ,CAACE,OAAO,CAAC0B,SAAS,CAAC,EAAE;IAC5EG,SAAS,EAAE;MAAEP,EAAE,EAAEC;IAAO,CAAC;IACzBO,IAAI,EAAE,CAACN;EACT,CAAC,CAAC;EAEF,IAAIH,OAAO,IAAIO,WAAW,IAAIR,KAAK,EAAE,OAAO,IAAI;EAChD,MAAMW,OAAO,GAAGZ,IAAI,CAACa,UAAU,IAAIb,IAAI,CAACT,SAAS,CAAC;EAElD,IAAIO,eAAe,KAAKD,MAAM,EAAE;IAC9BE,kBAAkB,CAACF,MAAM,CAAC;IAC1B,OAAO,IAAI;EACb;EAEA,MAAM;IAAEiB,YAAY;IAAEC,cAAc;IAAEC;EAAe,CAAC,GAAGpB,UAAU;EACnE,MAAMqB,cAAc,GAAGjC,cAAc,CAAC4B,OAAO,EAAEG,cAAc,CAAC;EAE9D,MAAMG,eAAe,GAAGjC,gBAAgB,CACtC+B,cAAc,EACdpB,UAAU,EACVqB,cAAc,EACdxB,eAAe,CAChB;EACD,MAAM0B,eAAe,GAAGhC,cAAc,CAACqB,QAAQ,EAAEd,kBAAkB,CAAC;EACpE,MAAM0B,iBAAiB,mCAAQF,eAAe,GAAKC,eAAe,CAAE;EAEpE,oBACE,oBAAC,QAAQ;IACP,eAAe,EAAEC,iBAAkB;IACnC,YAAY,EAAEN,YAAa;IAC3B,eAAe,EAAEhB,eAAgB;IACjC,eAAe,EAAEH;EAAgB,EACjC;AAEN,CAAC;AAEDP,cAAc,CAACiC,SAAS,GAAG;EACzB3B,kBAAkB,EAAEhB,SAAS,CAAC4C,KAAK;EACnCjC,MAAM,EAAEX,SAAS,CAAC6C,MAAM,CAACC,UAAU;EACnClC,MAAM,EAAEZ,SAAS,CAAC6C,MAAM,CAACC,UAAU;EACnCjC,SAAS,EAAEb,SAAS,CAAC+C,MAAM,CAACD,UAAU;EACtChC,cAAc,EAAEd,SAAS,CAAC6C,MAAM,CAACC,UAAU;EAC3C/B,eAAe,EAAEf,SAAS,CAAC6C,MAAM,CAACC,UAAU;EAC5C7B,eAAe,EAAEjB,SAAS,CAACgD;AAC7B,CAAC;AAEDtC,cAAc,CAACuC,YAAY,GAAG;EAC5BjC,kBAAkB,EAAE,EAAE;EACtBC,eAAe,EAAE,MAAM,CAAC;AAC1B,CAAC;AAEDP,cAAc,CAACuC,YAAY,GAAG;EAC5BjC,kBAAkB,EAAE;AACtB,CAAC;AAED,eAAeZ,UAAU,CAACM,cAAc,CAAC"}
|
|
@@ -6,15 +6,13 @@ import PropTypes from 'prop-types';
|
|
|
6
6
|
import GTMClickEvents from './GTMClickEvents';
|
|
7
7
|
import GTMEventFactory from './GTMEventFactory';
|
|
8
8
|
import { filterGtmEvents } from '../helpers';
|
|
9
|
-
|
|
10
9
|
const GTMEventSwitch = _ref => {
|
|
11
10
|
let {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
11
|
+
gtmEvents,
|
|
12
|
+
clickState,
|
|
13
|
+
clickId
|
|
14
|
+
} = _ref,
|
|
15
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
18
16
|
if (typeof window === 'undefined' || !gtmEvents.length) return null;
|
|
19
17
|
const {
|
|
20
18
|
clickEvents,
|
|
@@ -28,7 +26,6 @@ const GTMEventSwitch = _ref => {
|
|
|
28
26
|
gtmEvents: regularEvents
|
|
29
27
|
}, props));
|
|
30
28
|
};
|
|
31
|
-
|
|
32
29
|
GTMEventSwitch.propTypes = {
|
|
33
30
|
clickId: PropTypes.string,
|
|
34
31
|
gtmEvents: PropTypes.array,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GTMEventSwitch.js","names":["React","PropTypes","GTMClickEvents","GTMEventFactory","filterGtmEvents","GTMEventSwitch","gtmEvents","clickState","clickId","props","window","length","clickEvents","regularEvents","GTMClickFactory","propTypes","string","array","bool","defaultProps"],"sources":["../../src/GoogleTagManagerEvent/GTMEventSwitch.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport GTMClickEvents from './GTMClickEvents';\nimport GTMEventFactory from './GTMEventFactory';\nimport { filterGtmEvents } from '../helpers';\n\nconst GTMEventSwitch = ({ gtmEvents, clickState, clickId, ...props }) => {\n if (typeof window === 'undefined' || !gtmEvents.length) return null;\n const { clickEvents, regularEvents } = filterGtmEvents(gtmEvents);\n const GTMClickFactory = clickId ? GTMEventFactory : GTMClickEvents;\n\n return clickState ? (\n <GTMClickFactory gtmEvents={clickEvents} clickId={clickId} {...props} />\n ) : (\n <GTMEventFactory gtmEvents={regularEvents} {...props} />\n );\n};\n\nGTMEventSwitch.propTypes = {\n clickId: PropTypes.string,\n gtmEvents: PropTypes.array,\n clickState: PropTypes.bool\n};\n\nGTMEventSwitch.defaultProps = {\n clickId: null,\n gtmEvents: [],\n clickState: false\n};\n\nexport default GTMEventSwitch;\n"],"mappings":";;;AAAA,OAAOA,
|
|
1
|
+
{"version":3,"file":"GTMEventSwitch.js","names":["React","PropTypes","GTMClickEvents","GTMEventFactory","filterGtmEvents","GTMEventSwitch","gtmEvents","clickState","clickId","props","window","length","clickEvents","regularEvents","GTMClickFactory","propTypes","string","array","bool","defaultProps"],"sources":["../../src/GoogleTagManagerEvent/GTMEventSwitch.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport GTMClickEvents from './GTMClickEvents';\nimport GTMEventFactory from './GTMEventFactory';\nimport { filterGtmEvents } from '../helpers';\n\nconst GTMEventSwitch = ({ gtmEvents, clickState, clickId, ...props }) => {\n if (typeof window === 'undefined' || !gtmEvents.length) return null;\n const { clickEvents, regularEvents } = filterGtmEvents(gtmEvents);\n const GTMClickFactory = clickId ? GTMEventFactory : GTMClickEvents;\n\n return clickState ? (\n <GTMClickFactory gtmEvents={clickEvents} clickId={clickId} {...props} />\n ) : (\n <GTMEventFactory gtmEvents={regularEvents} {...props} />\n );\n};\n\nGTMEventSwitch.propTypes = {\n clickId: PropTypes.string,\n gtmEvents: PropTypes.array,\n clickState: PropTypes.bool\n};\n\nGTMEventSwitch.defaultProps = {\n clickId: null,\n gtmEvents: [],\n clickState: false\n};\n\nexport default GTMEventSwitch;\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,YAAY;AAClC,OAAOC,cAAc,MAAM,kBAAkB;AAC7C,OAAOC,eAAe,MAAM,mBAAmB;AAC/C,SAASC,eAAe,QAAQ,YAAY;AAE5C,MAAMC,cAAc,GAAG,QAAkD;EAAA,IAAjD;MAAEC,SAAS;MAAEC,UAAU;MAAEC;IAAkB,CAAC;IAAPC,KAAK;EAChE,IAAI,OAAOC,MAAM,KAAK,WAAW,IAAI,CAACJ,SAAS,CAACK,MAAM,EAAE,OAAO,IAAI;EACnE,MAAM;IAAEC,WAAW;IAAEC;EAAc,CAAC,GAAGT,eAAe,CAACE,SAAS,CAAC;EACjE,MAAMQ,eAAe,GAAGN,OAAO,GAAGL,eAAe,GAAGD,cAAc;EAElE,OAAOK,UAAU,gBACf,oBAAC,eAAe;IAAC,SAAS,EAAEK,WAAY;IAAC,OAAO,EAAEJ;EAAQ,GAAKC,KAAK,EAAI,gBAExE,oBAAC,eAAe;IAAC,SAAS,EAAEI;EAAc,GAAKJ,KAAK,EACrD;AACH,CAAC;AAEDJ,cAAc,CAACU,SAAS,GAAG;EACzBP,OAAO,EAAEP,SAAS,CAACe,MAAM;EACzBV,SAAS,EAAEL,SAAS,CAACgB,KAAK;EAC1BV,UAAU,EAAEN,SAAS,CAACiB;AACxB,CAAC;AAEDb,cAAc,CAACc,YAAY,GAAG;EAC5BX,OAAO,EAAE,IAAI;EACbF,SAAS,EAAE,EAAE;EACbC,UAAU,EAAE;AACd,CAAC;AAED,eAAeF,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["GTMEventSwitch"],"sources":["../../src/GoogleTagManagerEvent/index.js"],"sourcesContent":["import GTMEventSwitch from './GTMEventSwitch';\n\nexport default GTMEventSwitch;\n"],"mappings":"AAAA,OAAOA,
|
|
1
|
+
{"version":3,"file":"index.js","names":["GTMEventSwitch"],"sources":["../../src/GoogleTagManagerEvent/index.js"],"sourcesContent":["import GTMEventSwitch from './GTMEventSwitch';\n\nexport default GTMEventSwitch;\n"],"mappings":"AAAA,OAAOA,cAAc,MAAM,kBAAkB;AAE7C,eAAeA,cAAc"}
|
package/lib-es/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","names":["EVENT","ON_LOAD","ON_CLICK","IN_VIEW","ON_SUCCESS","PAGE_VIEW","ECOMMERCE","GTM_PROPS","key","label","GTM_EVENT_NAMES","productImpresion","productDetailImpression","productClick","promotionClick","GTM_EVENT_FACTORY","PLUGIN_NAME","PRODUCTS"],"sources":["../src/constants.js"],"sourcesContent":["const EVENT = 'event';\nconst ON_LOAD = 'onLoad';\nconst ON_CLICK = 'onClick';\nconst IN_VIEW = 'inView';\nconst ON_SUCCESS = 'onSuccess';\nconst PAGE_VIEW = 'pageView';\nconst ECOMMERCE = 'ecommerce';\nconst GTM_PROPS = [\n { key: 'eventAction' },\n { key: 'eventLabel' },\n { key: 'eventCategory' },\n { key: 'eventName', label: 'event' }\n];\nconst GTM_EVENT_NAMES = {\n productImpresion: 'impressions',\n productDetailImpression: 'detail',\n productClick: 'click',\n promotionClick: 'promotionClick'\n};\n\nconst GTM_EVENT_FACTORY = 'GtmEventFactory';\nconst PLUGIN_NAME = 'gtm-fe';\nconst PRODUCTS = 'products';\n\nexport {\n PLUGIN_NAME,\n EVENT,\n ECOMMERCE,\n GTM_PROPS,\n GTM_EVENT_NAMES,\n GTM_EVENT_FACTORY,\n ON_CLICK,\n IN_VIEW,\n ON_SUCCESS,\n ON_LOAD,\n PRODUCTS,\n PAGE_VIEW\n};\n"],"mappings":"AAAA,MAAMA,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"constants.js","names":["EVENT","ON_LOAD","ON_CLICK","IN_VIEW","ON_SUCCESS","PAGE_VIEW","ECOMMERCE","GTM_PROPS","key","label","GTM_EVENT_NAMES","productImpresion","productDetailImpression","productClick","promotionClick","GTM_EVENT_FACTORY","PLUGIN_NAME","PRODUCTS"],"sources":["../src/constants.js"],"sourcesContent":["const EVENT = 'event';\nconst ON_LOAD = 'onLoad';\nconst ON_CLICK = 'onClick';\nconst IN_VIEW = 'inView';\nconst ON_SUCCESS = 'onSuccess';\nconst PAGE_VIEW = 'pageView';\nconst ECOMMERCE = 'ecommerce';\nconst GTM_PROPS = [\n { key: 'eventAction' },\n { key: 'eventLabel' },\n { key: 'eventCategory' },\n { key: 'eventName', label: 'event' }\n];\nconst GTM_EVENT_NAMES = {\n productImpresion: 'impressions',\n productDetailImpression: 'detail',\n productClick: 'click',\n promotionClick: 'promotionClick'\n};\n\nconst GTM_EVENT_FACTORY = 'GtmEventFactory';\nconst PLUGIN_NAME = 'gtm-fe';\nconst PRODUCTS = 'products';\n\nexport {\n PLUGIN_NAME,\n EVENT,\n ECOMMERCE,\n GTM_PROPS,\n GTM_EVENT_NAMES,\n GTM_EVENT_FACTORY,\n ON_CLICK,\n IN_VIEW,\n ON_SUCCESS,\n ON_LOAD,\n PRODUCTS,\n PAGE_VIEW\n};\n"],"mappings":"AAAA,MAAMA,KAAK,GAAG,OAAO;AACrB,MAAMC,OAAO,GAAG,QAAQ;AACxB,MAAMC,QAAQ,GAAG,SAAS;AAC1B,MAAMC,OAAO,GAAG,QAAQ;AACxB,MAAMC,UAAU,GAAG,WAAW;AAC9B,MAAMC,SAAS,GAAG,UAAU;AAC5B,MAAMC,SAAS,GAAG,WAAW;AAC7B,MAAMC,SAAS,GAAG,CAChB;EAAEC,GAAG,EAAE;AAAc,CAAC,EACtB;EAAEA,GAAG,EAAE;AAAa,CAAC,EACrB;EAAEA,GAAG,EAAE;AAAgB,CAAC,EACxB;EAAEA,GAAG,EAAE,WAAW;EAAEC,KAAK,EAAE;AAAQ,CAAC,CACrC;AACD,MAAMC,eAAe,GAAG;EACtBC,gBAAgB,EAAE,aAAa;EAC/BC,uBAAuB,EAAE,QAAQ;EACjCC,YAAY,EAAE,OAAO;EACrBC,cAAc,EAAE;AAClB,CAAC;AAED,MAAMC,iBAAiB,GAAG,iBAAiB;AAC3C,MAAMC,WAAW,GAAG,QAAQ;AAC5B,MAAMC,QAAQ,GAAG,UAAU;AAE3B,SACED,WAAW,EACXhB,KAAK,EACLM,SAAS,EACTC,SAAS,EACTG,eAAe,EACfK,iBAAiB,EACjBb,QAAQ,EACRC,OAAO,EACPC,UAAU,EACVH,OAAO,EACPgB,QAAQ,EACRZ,SAAS"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import { getCLS, getFID, getLCP } from 'web-vitals';
|
|
2
2
|
import pushToDataLayer from './push-to-data-layer';
|
|
3
|
-
|
|
4
3
|
const buildAndPushWebVitals = () => {
|
|
5
4
|
getCLS(reportHandler);
|
|
6
5
|
getFID(reportHandler);
|
|
7
6
|
getLCP(reportHandler);
|
|
8
7
|
};
|
|
9
|
-
|
|
10
8
|
const reportHandler = ({
|
|
11
9
|
name,
|
|
12
10
|
delta,
|
|
@@ -22,6 +20,5 @@ const reportHandler = ({
|
|
|
22
20
|
};
|
|
23
21
|
pushToDataLayer(metrics);
|
|
24
22
|
};
|
|
25
|
-
|
|
26
23
|
export default buildAndPushWebVitals;
|
|
27
24
|
//# sourceMappingURL=build-and-push-web-vitals.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-and-push-web-vitals.js","names":["getCLS","getFID","getLCP","pushToDataLayer","buildAndPushWebVitals","reportHandler","name","delta","id","metrics","event","event_category","event_action","event_value","Math","round","event_label","nonInteraction"],"sources":["../../src/helpers/build-and-push-web-vitals.js"],"sourcesContent":["import { getCLS, getFID, getLCP } from 'web-vitals';\nimport pushToDataLayer from './push-to-data-layer';\n\nconst buildAndPushWebVitals = () => {\n getCLS(reportHandler);\n getFID(reportHandler);\n getLCP(reportHandler);\n};\n\nconst reportHandler = ({ name, delta, id }) => {\n const metrics = {\n event: 'web-vitals',\n event_category: 'Web Vitals',\n event_action: name,\n event_value: Math.round(name === 'CLS' ? delta * 1000 : delta),\n event_label: id,\n nonInteraction: true\n };\n\n pushToDataLayer(metrics);\n};\n\nexport default buildAndPushWebVitals;\n"],"mappings":"AAAA,SAASA,
|
|
1
|
+
{"version":3,"file":"build-and-push-web-vitals.js","names":["getCLS","getFID","getLCP","pushToDataLayer","buildAndPushWebVitals","reportHandler","name","delta","id","metrics","event","event_category","event_action","event_value","Math","round","event_label","nonInteraction"],"sources":["../../src/helpers/build-and-push-web-vitals.js"],"sourcesContent":["import { getCLS, getFID, getLCP } from 'web-vitals';\nimport pushToDataLayer from './push-to-data-layer';\n\nconst buildAndPushWebVitals = () => {\n getCLS(reportHandler);\n getFID(reportHandler);\n getLCP(reportHandler);\n};\n\nconst reportHandler = ({ name, delta, id }) => {\n const metrics = {\n event: 'web-vitals',\n event_category: 'Web Vitals',\n event_action: name,\n event_value: Math.round(name === 'CLS' ? delta * 1000 : delta),\n event_label: id,\n nonInteraction: true\n };\n\n pushToDataLayer(metrics);\n};\n\nexport default buildAndPushWebVitals;\n"],"mappings":"AAAA,SAASA,MAAM,EAAEC,MAAM,EAAEC,MAAM,QAAQ,YAAY;AACnD,OAAOC,eAAe,MAAM,sBAAsB;AAElD,MAAMC,qBAAqB,GAAG,MAAM;EAClCJ,MAAM,CAACK,aAAa,CAAC;EACrBJ,MAAM,CAACI,aAAa,CAAC;EACrBH,MAAM,CAACG,aAAa,CAAC;AACvB,CAAC;AAED,MAAMA,aAAa,GAAG,CAAC;EAAEC,IAAI;EAAEC,KAAK;EAAEC;AAAG,CAAC,KAAK;EAC7C,MAAMC,OAAO,GAAG;IACdC,KAAK,EAAE,YAAY;IACnBC,cAAc,EAAE,YAAY;IAC5BC,YAAY,EAAEN,IAAI;IAClBO,WAAW,EAAEC,IAAI,CAACC,KAAK,CAACT,IAAI,KAAK,KAAK,GAAGC,KAAK,GAAG,IAAI,GAAGA,KAAK,CAAC;IAC9DS,WAAW,EAAER,EAAE;IACfS,cAAc,EAAE;EAClB,CAAC;EAEDd,eAAe,CAACM,OAAO,CAAC;AAC1B,CAAC;AAED,eAAeL,qBAAqB"}
|
|
@@ -1,23 +1,16 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
|
|
3
2
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
4
|
-
|
|
5
3
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
6
|
-
|
|
7
4
|
const getFinalValue = (data, name) => {
|
|
8
5
|
if (name.includes('.')) {
|
|
9
6
|
const [relationName, fieldName] = name.split('.');
|
|
10
|
-
|
|
11
7
|
if (Array.isArray(data[relationName])) {
|
|
12
8
|
return data[relationName].reduce((str, element, index) => `${str}${index ? ',' : ''}${element[fieldName]}`, '');
|
|
13
9
|
}
|
|
14
|
-
|
|
15
10
|
return data[relationName] ? data[relationName][fieldName] : data[fieldName] || '';
|
|
16
11
|
}
|
|
17
|
-
|
|
18
12
|
return data[name];
|
|
19
13
|
};
|
|
20
|
-
|
|
21
14
|
const buildProps = (props, data) => props.reduce((acc, {
|
|
22
15
|
label: key,
|
|
23
16
|
propertiesToDisplay: [name],
|
|
@@ -26,12 +19,9 @@ const buildProps = (props, data) => props.reduce((acc, {
|
|
|
26
19
|
if (key && (staticMetric || name)) {
|
|
27
20
|
acc[key] = staticMetric || getFinalValue(data, name);
|
|
28
21
|
}
|
|
29
|
-
|
|
30
22
|
return acc;
|
|
31
23
|
}, {});
|
|
32
|
-
|
|
33
24
|
const buildDataLayerProps = (props, data) => Array.isArray(data) ? data.map(currentData => buildProps(props, currentData)) : buildProps(props, data);
|
|
34
|
-
|
|
35
25
|
const buildDataLayer = (data, propsToDisplay, url) => {
|
|
36
26
|
if (!propsToDisplay || !propsToDisplay.length) return null;
|
|
37
27
|
const propsToDisplayValues = buildDataLayerProps(propsToDisplay, data);
|
|
@@ -40,6 +30,5 @@ const buildDataLayer = (data, propsToDisplay, url) => {
|
|
|
40
30
|
url
|
|
41
31
|
}, propsToDisplayValues) : propsToDisplayValues;
|
|
42
32
|
};
|
|
43
|
-
|
|
44
33
|
export default buildDataLayer;
|
|
45
34
|
//# sourceMappingURL=build-data-layer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-data-layer.js","names":["getFinalValue","data","name","includes","relationName","fieldName","split","Array","isArray","reduce","str","element","index","buildProps","props","acc","label","key","propertiesToDisplay","staticMetric","buildDataLayerProps","map","currentData","buildDataLayer","propsToDisplay","url","length","propsToDisplayValues","event"],"sources":["../../src/helpers/build-data-layer.js"],"sourcesContent":["const getFinalValue = (data, name) => {\n if (name.includes('.')) {\n const [relationName, fieldName] = name.split('.');\n if (Array.isArray(data[relationName])) {\n return data[relationName].reduce(\n (str, element, index) => `${str}${index ? ',' : ''}${element[fieldName]}`,\n ''\n );\n }\n\n return data[relationName] ? data[relationName][fieldName] : data[fieldName] || '';\n }\n return data[name];\n};\n\nconst buildProps = (props, data) =>\n props.reduce((acc, { label: key, propertiesToDisplay: [name], staticMetric }) => {\n if (key && (staticMetric || name)) {\n acc[key] = staticMetric || getFinalValue(data, name);\n }\n\n return acc;\n }, {});\n\nconst buildDataLayerProps = (props, data) =>\n Array.isArray(data)\n ? data.map(currentData => buildProps(props, currentData))\n : buildProps(props, data);\n\nconst buildDataLayer = (data, propsToDisplay, url) => {\n if (!propsToDisplay || !propsToDisplay.length) return null;\n const propsToDisplayValues = buildDataLayerProps(propsToDisplay, data);\n\n return url\n ? {\n event: 'pageView',\n url,\n ...propsToDisplayValues\n }\n : propsToDisplayValues;\n};\n\nexport default buildDataLayer;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"build-data-layer.js","names":["getFinalValue","data","name","includes","relationName","fieldName","split","Array","isArray","reduce","str","element","index","buildProps","props","acc","label","key","propertiesToDisplay","staticMetric","buildDataLayerProps","map","currentData","buildDataLayer","propsToDisplay","url","length","propsToDisplayValues","event"],"sources":["../../src/helpers/build-data-layer.js"],"sourcesContent":["const getFinalValue = (data, name) => {\n if (name.includes('.')) {\n const [relationName, fieldName] = name.split('.');\n if (Array.isArray(data[relationName])) {\n return data[relationName].reduce(\n (str, element, index) => `${str}${index ? ',' : ''}${element[fieldName]}`,\n ''\n );\n }\n\n return data[relationName] ? data[relationName][fieldName] : data[fieldName] || '';\n }\n return data[name];\n};\n\nconst buildProps = (props, data) =>\n props.reduce((acc, { label: key, propertiesToDisplay: [name], staticMetric }) => {\n if (key && (staticMetric || name)) {\n acc[key] = staticMetric || getFinalValue(data, name);\n }\n\n return acc;\n }, {});\n\nconst buildDataLayerProps = (props, data) =>\n Array.isArray(data)\n ? data.map(currentData => buildProps(props, currentData))\n : buildProps(props, data);\n\nconst buildDataLayer = (data, propsToDisplay, url) => {\n if (!propsToDisplay || !propsToDisplay.length) return null;\n const propsToDisplayValues = buildDataLayerProps(propsToDisplay, data);\n\n return url\n ? {\n event: 'pageView',\n url,\n ...propsToDisplayValues\n }\n : propsToDisplayValues;\n};\n\nexport default buildDataLayer;\n"],"mappings":";;;AAAA,MAAMA,aAAa,GAAG,CAACC,IAAI,EAAEC,IAAI,KAAK;EACpC,IAAIA,IAAI,CAACC,QAAQ,CAAC,GAAG,CAAC,EAAE;IACtB,MAAM,CAACC,YAAY,EAAEC,SAAS,CAAC,GAAGH,IAAI,CAACI,KAAK,CAAC,GAAG,CAAC;IACjD,IAAIC,KAAK,CAACC,OAAO,CAACP,IAAI,CAACG,YAAY,CAAC,CAAC,EAAE;MACrC,OAAOH,IAAI,CAACG,YAAY,CAAC,CAACK,MAAM,CAC9B,CAACC,GAAG,EAAEC,OAAO,EAAEC,KAAK,KAAM,GAAEF,GAAI,GAAEE,KAAK,GAAG,GAAG,GAAG,EAAG,GAAED,OAAO,CAACN,SAAS,CAAE,EAAC,EACzE,EAAE,CACH;IACH;IAEA,OAAOJ,IAAI,CAACG,YAAY,CAAC,GAAGH,IAAI,CAACG,YAAY,CAAC,CAACC,SAAS,CAAC,GAAGJ,IAAI,CAACI,SAAS,CAAC,IAAI,EAAE;EACnF;EACA,OAAOJ,IAAI,CAACC,IAAI,CAAC;AACnB,CAAC;AAED,MAAMW,UAAU,GAAG,CAACC,KAAK,EAAEb,IAAI,KAC7Ba,KAAK,CAACL,MAAM,CAAC,CAACM,GAAG,EAAE;EAAEC,KAAK,EAAEC,GAAG;EAAEC,mBAAmB,EAAE,CAAChB,IAAI,CAAC;EAAEiB;AAAa,CAAC,KAAK;EAC/E,IAAIF,GAAG,KAAKE,YAAY,IAAIjB,IAAI,CAAC,EAAE;IACjCa,GAAG,CAACE,GAAG,CAAC,GAAGE,YAAY,IAAInB,aAAa,CAACC,IAAI,EAAEC,IAAI,CAAC;EACtD;EAEA,OAAOa,GAAG;AACZ,CAAC,EAAE,CAAC,CAAC,CAAC;AAER,MAAMK,mBAAmB,GAAG,CAACN,KAAK,EAAEb,IAAI,KACtCM,KAAK,CAACC,OAAO,CAACP,IAAI,CAAC,GACfA,IAAI,CAACoB,GAAG,CAACC,WAAW,IAAIT,UAAU,CAACC,KAAK,EAAEQ,WAAW,CAAC,CAAC,GACvDT,UAAU,CAACC,KAAK,EAAEb,IAAI,CAAC;AAE7B,MAAMsB,cAAc,GAAG,CAACtB,IAAI,EAAEuB,cAAc,EAAEC,GAAG,KAAK;EACpD,IAAI,CAACD,cAAc,IAAI,CAACA,cAAc,CAACE,MAAM,EAAE,OAAO,IAAI;EAC1D,MAAMC,oBAAoB,GAAGP,mBAAmB,CAACI,cAAc,EAAEvB,IAAI,CAAC;EAEtE,OAAOwB,GAAG;IAEJG,KAAK,EAAE,UAAU;IACjBH;EAAG,GACAE,oBAAoB,IAEzBA,oBAAoB;AAC1B,CAAC;AAED,eAAeJ,cAAc"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
|
|
3
2
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
4
|
-
|
|
5
3
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
6
|
-
|
|
7
4
|
import { GTM_EVENT_NAMES, GTM_PROPS, EVENT, ECOMMERCE, PRODUCTS, ON_CLICK } from '../constants';
|
|
8
|
-
|
|
9
5
|
const buildNestedEvent = (ecommerce, propsObject, props, parentComponent) => {
|
|
10
6
|
const {
|
|
11
7
|
productDetailImpression,
|
|
@@ -24,7 +20,6 @@ const buildNestedEvent = (ecommerce, propsObject, props, parentComponent) => {
|
|
|
24
20
|
list: name
|
|
25
21
|
};
|
|
26
22
|
const hasMultipleItems = Array.isArray(props);
|
|
27
|
-
|
|
28
23
|
if (!ecommerce) {
|
|
29
24
|
const basicEventObject = {};
|
|
30
25
|
GTM_PROPS.forEach(({
|
|
@@ -40,12 +35,10 @@ const buildNestedEvent = (ecommerce, propsObject, props, parentComponent) => {
|
|
|
40
35
|
} : props;
|
|
41
36
|
return _objectSpread(_objectSpread({}, basicEventObject), parsedProps);
|
|
42
37
|
}
|
|
43
|
-
|
|
44
38
|
if (!gtmActionLabel) return {
|
|
45
39
|
[EVENT]: eventAction,
|
|
46
40
|
[ECOMMERCE]: props
|
|
47
41
|
};
|
|
48
|
-
|
|
49
42
|
if (gtmActionLabel === productDetailImpression || gtmActionLabel === productClick) {
|
|
50
43
|
const parsedProducts = hasMultipleItems ? props : [props];
|
|
51
44
|
const eventObject = isClickEvent ? {
|
|
@@ -61,7 +54,6 @@ const buildNestedEvent = (ecommerce, propsObject, props, parentComponent) => {
|
|
|
61
54
|
}
|
|
62
55
|
};
|
|
63
56
|
}
|
|
64
|
-
|
|
65
57
|
const ecommerceObject = isClickEvent ? {
|
|
66
58
|
[gtmActionLabel]: props,
|
|
67
59
|
actionField
|
|
@@ -73,6 +65,5 @@ const buildNestedEvent = (ecommerce, propsObject, props, parentComponent) => {
|
|
|
73
65
|
[ECOMMERCE]: ecommerceObject
|
|
74
66
|
};
|
|
75
67
|
};
|
|
76
|
-
|
|
77
68
|
export default buildNestedEvent;
|
|
78
69
|
//# sourceMappingURL=build-nested-event.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-nested-event.js","names":["GTM_EVENT_NAMES","GTM_PROPS","EVENT","ECOMMERCE","PRODUCTS","ON_CLICK","buildNestedEvent","ecommerce","propsObject","props","parentComponent","productDetailImpression","productClick","eventAction","eventTrigger","name","gtmActionLabel","isClickEvent","actionField","list","hasMultipleItems","Array","isArray","basicEventObject","forEach","key","label","gtmValue","gtmKey","parsedProps","items","parsedProducts","eventObject","ecommerceObject"],"sources":["../../src/helpers/build-nested-event.js"],"sourcesContent":["import { GTM_EVENT_NAMES, GTM_PROPS, EVENT, ECOMMERCE, PRODUCTS, ON_CLICK } from '../constants';\n\nconst buildNestedEvent = (ecommerce, propsObject, props, parentComponent) => {\n const { productDetailImpression, productClick } = GTM_EVENT_NAMES;\n const { eventAction, eventTrigger } = propsObject;\n const { name } = parentComponent;\n const gtmActionLabel = GTM_EVENT_NAMES[eventAction];\n const isClickEvent = eventTrigger === ON_CLICK || gtmActionLabel === productClick;\n const actionField = { list: name };\n const hasMultipleItems = Array.isArray(props);\n\n if (!ecommerce) {\n const basicEventObject = {};\n GTM_PROPS.forEach(({ key, label }) => {\n const gtmValue = propsObject[key];\n const gtmKey = label || key;\n if (gtmValue) basicEventObject[gtmKey] = gtmValue;\n });\n const parsedProps = hasMultipleItems ? { items: props } : props;\n\n return { ...basicEventObject, ...parsedProps };\n }\n\n if (!gtmActionLabel) return { [EVENT]: eventAction, [ECOMMERCE]: props };\n if (gtmActionLabel === productDetailImpression || gtmActionLabel === productClick) {\n const parsedProducts = hasMultipleItems ? props : [props];\n const eventObject = isClickEvent\n ? { [PRODUCTS]: parsedProducts, actionField }\n : { [PRODUCTS]: parsedProducts };\n return {\n [EVENT]: eventAction,\n [ECOMMERCE]: { [gtmActionLabel]: eventObject }\n };\n }\n\n const ecommerceObject = isClickEvent\n ? { [gtmActionLabel]: props, actionField }\n : { [gtmActionLabel]: props };\n return { [EVENT]: eventAction, [ECOMMERCE]: ecommerceObject };\n};\n\nexport default buildNestedEvent;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"build-nested-event.js","names":["GTM_EVENT_NAMES","GTM_PROPS","EVENT","ECOMMERCE","PRODUCTS","ON_CLICK","buildNestedEvent","ecommerce","propsObject","props","parentComponent","productDetailImpression","productClick","eventAction","eventTrigger","name","gtmActionLabel","isClickEvent","actionField","list","hasMultipleItems","Array","isArray","basicEventObject","forEach","key","label","gtmValue","gtmKey","parsedProps","items","parsedProducts","eventObject","ecommerceObject"],"sources":["../../src/helpers/build-nested-event.js"],"sourcesContent":["import { GTM_EVENT_NAMES, GTM_PROPS, EVENT, ECOMMERCE, PRODUCTS, ON_CLICK } from '../constants';\n\nconst buildNestedEvent = (ecommerce, propsObject, props, parentComponent) => {\n const { productDetailImpression, productClick } = GTM_EVENT_NAMES;\n const { eventAction, eventTrigger } = propsObject;\n const { name } = parentComponent;\n const gtmActionLabel = GTM_EVENT_NAMES[eventAction];\n const isClickEvent = eventTrigger === ON_CLICK || gtmActionLabel === productClick;\n const actionField = { list: name };\n const hasMultipleItems = Array.isArray(props);\n\n if (!ecommerce) {\n const basicEventObject = {};\n GTM_PROPS.forEach(({ key, label }) => {\n const gtmValue = propsObject[key];\n const gtmKey = label || key;\n if (gtmValue) basicEventObject[gtmKey] = gtmValue;\n });\n const parsedProps = hasMultipleItems ? { items: props } : props;\n\n return { ...basicEventObject, ...parsedProps };\n }\n\n if (!gtmActionLabel) return { [EVENT]: eventAction, [ECOMMERCE]: props };\n if (gtmActionLabel === productDetailImpression || gtmActionLabel === productClick) {\n const parsedProducts = hasMultipleItems ? props : [props];\n const eventObject = isClickEvent\n ? { [PRODUCTS]: parsedProducts, actionField }\n : { [PRODUCTS]: parsedProducts };\n return {\n [EVENT]: eventAction,\n [ECOMMERCE]: { [gtmActionLabel]: eventObject }\n };\n }\n\n const ecommerceObject = isClickEvent\n ? { [gtmActionLabel]: props, actionField }\n : { [gtmActionLabel]: props };\n return { [EVENT]: eventAction, [ECOMMERCE]: ecommerceObject };\n};\n\nexport default buildNestedEvent;\n"],"mappings":";;;AAAA,SAASA,eAAe,EAAEC,SAAS,EAAEC,KAAK,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,QAAQ,QAAQ,cAAc;AAE/F,MAAMC,gBAAgB,GAAG,CAACC,SAAS,EAAEC,WAAW,EAAEC,KAAK,EAAEC,eAAe,KAAK;EAC3E,MAAM;IAAEC,uBAAuB;IAAEC;EAAa,CAAC,GAAGZ,eAAe;EACjE,MAAM;IAAEa,WAAW;IAAEC;EAAa,CAAC,GAAGN,WAAW;EACjD,MAAM;IAAEO;EAAK,CAAC,GAAGL,eAAe;EAChC,MAAMM,cAAc,GAAGhB,eAAe,CAACa,WAAW,CAAC;EACnD,MAAMI,YAAY,GAAGH,YAAY,KAAKT,QAAQ,IAAIW,cAAc,KAAKJ,YAAY;EACjF,MAAMM,WAAW,GAAG;IAAEC,IAAI,EAAEJ;EAAK,CAAC;EAClC,MAAMK,gBAAgB,GAAGC,KAAK,CAACC,OAAO,CAACb,KAAK,CAAC;EAE7C,IAAI,CAACF,SAAS,EAAE;IACd,MAAMgB,gBAAgB,GAAG,CAAC,CAAC;IAC3BtB,SAAS,CAACuB,OAAO,CAAC,CAAC;MAAEC,GAAG;MAAEC;IAAM,CAAC,KAAK;MACpC,MAAMC,QAAQ,GAAGnB,WAAW,CAACiB,GAAG,CAAC;MACjC,MAAMG,MAAM,GAAGF,KAAK,IAAID,GAAG;MAC3B,IAAIE,QAAQ,EAAEJ,gBAAgB,CAACK,MAAM,CAAC,GAAGD,QAAQ;IACnD,CAAC,CAAC;IACF,MAAME,WAAW,GAAGT,gBAAgB,GAAG;MAAEU,KAAK,EAAErB;IAAM,CAAC,GAAGA,KAAK;IAE/D,uCAAYc,gBAAgB,GAAKM,WAAW;EAC9C;EAEA,IAAI,CAACb,cAAc,EAAE,OAAO;IAAE,CAACd,KAAK,GAAGW,WAAW;IAAE,CAACV,SAAS,GAAGM;EAAM,CAAC;EACxE,IAAIO,cAAc,KAAKL,uBAAuB,IAAIK,cAAc,KAAKJ,YAAY,EAAE;IACjF,MAAMmB,cAAc,GAAGX,gBAAgB,GAAGX,KAAK,GAAG,CAACA,KAAK,CAAC;IACzD,MAAMuB,WAAW,GAAGf,YAAY,GAC5B;MAAE,CAACb,QAAQ,GAAG2B,cAAc;MAAEb;IAAY,CAAC,GAC3C;MAAE,CAACd,QAAQ,GAAG2B;IAAe,CAAC;IAClC,OAAO;MACL,CAAC7B,KAAK,GAAGW,WAAW;MACpB,CAACV,SAAS,GAAG;QAAE,CAACa,cAAc,GAAGgB;MAAY;IAC/C,CAAC;EACH;EAEA,MAAMC,eAAe,GAAGhB,YAAY,GAChC;IAAE,CAACD,cAAc,GAAGP,KAAK;IAAES;EAAY,CAAC,GACxC;IAAE,CAACF,cAAc,GAAGP;EAAM,CAAC;EAC/B,OAAO;IAAE,CAACP,KAAK,GAAGW,WAAW;IAAE,CAACV,SAAS,GAAG8B;EAAgB,CAAC;AAC/D,CAAC;AAED,eAAe3B,gBAAgB"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
function buildPropsToDisplayArray(propsToDisplay = []) {
|
|
2
2
|
return propsToDisplay.map(prop => !!prop && !!prop.propertiesToDisplay && prop.propertiesToDisplay[0]).filter(Boolean);
|
|
3
3
|
}
|
|
4
|
-
|
|
5
4
|
export default buildPropsToDisplayArray;
|
|
6
5
|
//# sourceMappingURL=build-props-to-display-array.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-props-to-display-array.js","names":["buildPropsToDisplayArray","propsToDisplay","map","prop","propertiesToDisplay","filter","Boolean"],"sources":["../../src/helpers/build-props-to-display-array.js"],"sourcesContent":["function buildPropsToDisplayArray(propsToDisplay = []) {\n return propsToDisplay\n .map(prop => !!prop && !!prop.propertiesToDisplay && prop.propertiesToDisplay[0])\n .filter(Boolean);\n}\n\nexport default buildPropsToDisplayArray;\n"],"mappings":"AAAA,SAASA,
|
|
1
|
+
{"version":3,"file":"build-props-to-display-array.js","names":["buildPropsToDisplayArray","propsToDisplay","map","prop","propertiesToDisplay","filter","Boolean"],"sources":["../../src/helpers/build-props-to-display-array.js"],"sourcesContent":["function buildPropsToDisplayArray(propsToDisplay = []) {\n return propsToDisplay\n .map(prop => !!prop && !!prop.propertiesToDisplay && prop.propertiesToDisplay[0])\n .filter(Boolean);\n}\n\nexport default buildPropsToDisplayArray;\n"],"mappings":"AAAA,SAASA,wBAAwB,CAACC,cAAc,GAAG,EAAE,EAAE;EACrD,OAAOA,cAAc,CAClBC,GAAG,CAACC,IAAI,IAAI,CAAC,CAACA,IAAI,IAAI,CAAC,CAACA,IAAI,CAACC,mBAAmB,IAAID,IAAI,CAACC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAChFC,MAAM,CAACC,OAAO,CAAC;AACpB;AAEA,eAAeN,wBAAwB"}
|
|
@@ -2,22 +2,17 @@ const getValue = (propertiesToDisplay, getUser) => {
|
|
|
2
2
|
const [baseProp, nestedProp] = propertiesToDisplay[0].split('.');
|
|
3
3
|
const baseValue = getUser[baseProp];
|
|
4
4
|
const isArray = Array.isArray(baseValue);
|
|
5
|
-
|
|
6
5
|
if (nestedProp && baseValue) {
|
|
7
6
|
let nestedValue;
|
|
8
|
-
|
|
9
7
|
if (isArray) {
|
|
10
8
|
nestedValue = baseValue.length ? baseValue.map(nested => nested ? nested[nestedProp] : '').join(', ') : '';
|
|
11
9
|
} else {
|
|
12
10
|
nestedValue = baseValue[nestedProp];
|
|
13
11
|
}
|
|
14
|
-
|
|
15
12
|
return nestedValue || '';
|
|
16
13
|
}
|
|
17
|
-
|
|
18
14
|
return baseValue || '';
|
|
19
15
|
};
|
|
20
|
-
|
|
21
16
|
const checkAndSetProps = (userPropsToDisplay, getUser) => {
|
|
22
17
|
const userDataLayer = {};
|
|
23
18
|
userPropsToDisplay.forEach(prop => {
|
|
@@ -26,19 +21,16 @@ const checkAndSetProps = (userPropsToDisplay, getUser) => {
|
|
|
26
21
|
label,
|
|
27
22
|
staticMetric
|
|
28
23
|
} = prop;
|
|
29
|
-
|
|
30
24
|
if (staticMetric) {
|
|
31
25
|
userDataLayer[label] = staticMetric;
|
|
32
26
|
return;
|
|
33
27
|
}
|
|
34
|
-
|
|
35
28
|
if (!propertiesToDisplay[0]) return;
|
|
36
29
|
const value = getValue(propertiesToDisplay, getUser);
|
|
37
30
|
userDataLayer[label] = value;
|
|
38
31
|
});
|
|
39
32
|
return userDataLayer;
|
|
40
33
|
};
|
|
41
|
-
|
|
42
34
|
const buildUserLayer = (userData, userPropsToDisplay) => {
|
|
43
35
|
if (!userData || !userData.getUser) return {};
|
|
44
36
|
const {
|
|
@@ -49,6 +41,5 @@ const buildUserLayer = (userData, userPropsToDisplay) => {
|
|
|
49
41
|
user: userDataLayer
|
|
50
42
|
};
|
|
51
43
|
};
|
|
52
|
-
|
|
53
44
|
export default buildUserLayer;
|
|
54
45
|
//# sourceMappingURL=build-user-layer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-user-layer.js","names":["getValue","propertiesToDisplay","getUser","baseProp","nestedProp","split","baseValue","isArray","Array","nestedValue","length","map","nested","join","checkAndSetProps","userPropsToDisplay","userDataLayer","forEach","prop","label","staticMetric","value","buildUserLayer","userData","user"],"sources":["../../src/helpers/build-user-layer.js"],"sourcesContent":["const getValue = (propertiesToDisplay, getUser) => {\n const [baseProp, nestedProp] = propertiesToDisplay[0].split('.');\n const baseValue = getUser[baseProp];\n const isArray = Array.isArray(baseValue);\n if (nestedProp && baseValue) {\n let nestedValue;\n if (isArray) {\n nestedValue = baseValue.length\n ? baseValue.map(nested => (nested ? nested[nestedProp] : '')).join(', ')\n : '';\n } else {\n nestedValue = baseValue[nestedProp];\n }\n return nestedValue || '';\n }\n return baseValue || '';\n};\n\nconst checkAndSetProps = (userPropsToDisplay, getUser) => {\n const userDataLayer = {};\n userPropsToDisplay.forEach(prop => {\n const { propertiesToDisplay, label, staticMetric } = prop;\n if (staticMetric) {\n userDataLayer[label] = staticMetric;\n return;\n }\n if (!propertiesToDisplay[0]) return;\n const value = getValue(propertiesToDisplay, getUser);\n userDataLayer[label] = value;\n });\n\n return userDataLayer;\n};\n\nconst buildUserLayer = (userData, userPropsToDisplay) => {\n if (!userData || !userData.getUser) return {};\n const { getUser } = userData;\n\n const userDataLayer = checkAndSetProps(userPropsToDisplay, getUser);\n\n return { user: userDataLayer };\n};\n\nexport default buildUserLayer;\n"],"mappings":"AAAA,MAAMA,QAAQ,GAAG,CAACC,
|
|
1
|
+
{"version":3,"file":"build-user-layer.js","names":["getValue","propertiesToDisplay","getUser","baseProp","nestedProp","split","baseValue","isArray","Array","nestedValue","length","map","nested","join","checkAndSetProps","userPropsToDisplay","userDataLayer","forEach","prop","label","staticMetric","value","buildUserLayer","userData","user"],"sources":["../../src/helpers/build-user-layer.js"],"sourcesContent":["const getValue = (propertiesToDisplay, getUser) => {\n const [baseProp, nestedProp] = propertiesToDisplay[0].split('.');\n const baseValue = getUser[baseProp];\n const isArray = Array.isArray(baseValue);\n if (nestedProp && baseValue) {\n let nestedValue;\n if (isArray) {\n nestedValue = baseValue.length\n ? baseValue.map(nested => (nested ? nested[nestedProp] : '')).join(', ')\n : '';\n } else {\n nestedValue = baseValue[nestedProp];\n }\n return nestedValue || '';\n }\n return baseValue || '';\n};\n\nconst checkAndSetProps = (userPropsToDisplay, getUser) => {\n const userDataLayer = {};\n userPropsToDisplay.forEach(prop => {\n const { propertiesToDisplay, label, staticMetric } = prop;\n if (staticMetric) {\n userDataLayer[label] = staticMetric;\n return;\n }\n if (!propertiesToDisplay[0]) return;\n const value = getValue(propertiesToDisplay, getUser);\n userDataLayer[label] = value;\n });\n\n return userDataLayer;\n};\n\nconst buildUserLayer = (userData, userPropsToDisplay) => {\n if (!userData || !userData.getUser) return {};\n const { getUser } = userData;\n\n const userDataLayer = checkAndSetProps(userPropsToDisplay, getUser);\n\n return { user: userDataLayer };\n};\n\nexport default buildUserLayer;\n"],"mappings":"AAAA,MAAMA,QAAQ,GAAG,CAACC,mBAAmB,EAAEC,OAAO,KAAK;EACjD,MAAM,CAACC,QAAQ,EAAEC,UAAU,CAAC,GAAGH,mBAAmB,CAAC,CAAC,CAAC,CAACI,KAAK,CAAC,GAAG,CAAC;EAChE,MAAMC,SAAS,GAAGJ,OAAO,CAACC,QAAQ,CAAC;EACnC,MAAMI,OAAO,GAAGC,KAAK,CAACD,OAAO,CAACD,SAAS,CAAC;EACxC,IAAIF,UAAU,IAAIE,SAAS,EAAE;IAC3B,IAAIG,WAAW;IACf,IAAIF,OAAO,EAAE;MACXE,WAAW,GAAGH,SAAS,CAACI,MAAM,GAC1BJ,SAAS,CAACK,GAAG,CAACC,MAAM,IAAKA,MAAM,GAAGA,MAAM,CAACR,UAAU,CAAC,GAAG,EAAG,CAAC,CAACS,IAAI,CAAC,IAAI,CAAC,GACtE,EAAE;IACR,CAAC,MAAM;MACLJ,WAAW,GAAGH,SAAS,CAACF,UAAU,CAAC;IACrC;IACA,OAAOK,WAAW,IAAI,EAAE;EAC1B;EACA,OAAOH,SAAS,IAAI,EAAE;AACxB,CAAC;AAED,MAAMQ,gBAAgB,GAAG,CAACC,kBAAkB,EAAEb,OAAO,KAAK;EACxD,MAAMc,aAAa,GAAG,CAAC,CAAC;EACxBD,kBAAkB,CAACE,OAAO,CAACC,IAAI,IAAI;IACjC,MAAM;MAAEjB,mBAAmB;MAAEkB,KAAK;MAAEC;IAAa,CAAC,GAAGF,IAAI;IACzD,IAAIE,YAAY,EAAE;MAChBJ,aAAa,CAACG,KAAK,CAAC,GAAGC,YAAY;MACnC;IACF;IACA,IAAI,CAACnB,mBAAmB,CAAC,CAAC,CAAC,EAAE;IAC7B,MAAMoB,KAAK,GAAGrB,QAAQ,CAACC,mBAAmB,EAAEC,OAAO,CAAC;IACpDc,aAAa,CAACG,KAAK,CAAC,GAAGE,KAAK;EAC9B,CAAC,CAAC;EAEF,OAAOL,aAAa;AACtB,CAAC;AAED,MAAMM,cAAc,GAAG,CAACC,QAAQ,EAAER,kBAAkB,KAAK;EACvD,IAAI,CAACQ,QAAQ,IAAI,CAACA,QAAQ,CAACrB,OAAO,EAAE,OAAO,CAAC,CAAC;EAC7C,MAAM;IAAEA;EAAQ,CAAC,GAAGqB,QAAQ;EAE5B,MAAMP,aAAa,GAAGF,gBAAgB,CAACC,kBAAkB,EAAEb,OAAO,CAAC;EAEnE,OAAO;IAAEsB,IAAI,EAAER;EAAc,CAAC;AAChC,CAAC;AAED,eAAeM,cAAc"}
|
|
@@ -7,7 +7,6 @@ const buildUserQueryProps = userProps => {
|
|
|
7
7
|
}) => {
|
|
8
8
|
const [propKey] = propertiesToDisplay;
|
|
9
9
|
if (!propKey || propKey === 'id') return;
|
|
10
|
-
|
|
11
10
|
if (propKey.indexOf('.') !== -1) {
|
|
12
11
|
const [baseProp, nestedProp] = propKey.split('.');
|
|
13
12
|
if (nestedProps[baseProp]) nestedProps[baseProp].push(nestedProp);else nestedProps[baseProp] = [nestedProp];
|
|
@@ -22,6 +21,5 @@ const buildUserQueryProps = userProps => {
|
|
|
22
21
|
});
|
|
23
22
|
return basicProps.join(' ');
|
|
24
23
|
};
|
|
25
|
-
|
|
26
24
|
export default buildUserQueryProps;
|
|
27
25
|
//# sourceMappingURL=build-user-query-props.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-user-query-props.js","names":["buildUserQueryProps","userProps","length","basicProps","nestedProps","forEach","propertiesToDisplay","propKey","indexOf","baseProp","nestedProp","split","push","Object","keys","nestedKey","nested","prop","join"],"sources":["../../src/helpers/build-user-query-props.js"],"sourcesContent":["const buildUserQueryProps = userProps => {\n if (!userProps || !userProps.length) return '';\n const basicProps = [];\n const nestedProps = {};\n userProps.forEach(({ propertiesToDisplay }) => {\n const [propKey] = propertiesToDisplay;\n if (!propKey || propKey === 'id') return;\n if (propKey.indexOf('.') !== -1) {\n const [baseProp, nestedProp] = propKey.split('.');\n if (nestedProps[baseProp]) nestedProps[baseProp].push(nestedProp);\n else nestedProps[baseProp] = [nestedProp];\n } else basicProps.push(propKey);\n });\n\n Object.keys(nestedProps).forEach(nestedKey => {\n const nested = nestedProps[nestedKey];\n basicProps.push(nestedKey);\n basicProps.push('{');\n nested.forEach(prop => basicProps.push(prop));\n basicProps.push('}');\n });\n\n return basicProps.join(' ');\n};\n\nexport default buildUserQueryProps;\n"],"mappings":"AAAA,MAAMA,mBAAmB,GAAGC,SAAS,IAAI;EACvC,IAAI,CAACA,
|
|
1
|
+
{"version":3,"file":"build-user-query-props.js","names":["buildUserQueryProps","userProps","length","basicProps","nestedProps","forEach","propertiesToDisplay","propKey","indexOf","baseProp","nestedProp","split","push","Object","keys","nestedKey","nested","prop","join"],"sources":["../../src/helpers/build-user-query-props.js"],"sourcesContent":["const buildUserQueryProps = userProps => {\n if (!userProps || !userProps.length) return '';\n const basicProps = [];\n const nestedProps = {};\n userProps.forEach(({ propertiesToDisplay }) => {\n const [propKey] = propertiesToDisplay;\n if (!propKey || propKey === 'id') return;\n if (propKey.indexOf('.') !== -1) {\n const [baseProp, nestedProp] = propKey.split('.');\n if (nestedProps[baseProp]) nestedProps[baseProp].push(nestedProp);\n else nestedProps[baseProp] = [nestedProp];\n } else basicProps.push(propKey);\n });\n\n Object.keys(nestedProps).forEach(nestedKey => {\n const nested = nestedProps[nestedKey];\n basicProps.push(nestedKey);\n basicProps.push('{');\n nested.forEach(prop => basicProps.push(prop));\n basicProps.push('}');\n });\n\n return basicProps.join(' ');\n};\n\nexport default buildUserQueryProps;\n"],"mappings":"AAAA,MAAMA,mBAAmB,GAAGC,SAAS,IAAI;EACvC,IAAI,CAACA,SAAS,IAAI,CAACA,SAAS,CAACC,MAAM,EAAE,OAAO,EAAE;EAC9C,MAAMC,UAAU,GAAG,EAAE;EACrB,MAAMC,WAAW,GAAG,CAAC,CAAC;EACtBH,SAAS,CAACI,OAAO,CAAC,CAAC;IAAEC;EAAoB,CAAC,KAAK;IAC7C,MAAM,CAACC,OAAO,CAAC,GAAGD,mBAAmB;IACrC,IAAI,CAACC,OAAO,IAAIA,OAAO,KAAK,IAAI,EAAE;IAClC,IAAIA,OAAO,CAACC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;MAC/B,MAAM,CAACC,QAAQ,EAAEC,UAAU,CAAC,GAAGH,OAAO,CAACI,KAAK,CAAC,GAAG,CAAC;MACjD,IAAIP,WAAW,CAACK,QAAQ,CAAC,EAAEL,WAAW,CAACK,QAAQ,CAAC,CAACG,IAAI,CAACF,UAAU,CAAC,CAAC,KAC7DN,WAAW,CAACK,QAAQ,CAAC,GAAG,CAACC,UAAU,CAAC;IAC3C,CAAC,MAAMP,UAAU,CAACS,IAAI,CAACL,OAAO,CAAC;EACjC,CAAC,CAAC;EAEFM,MAAM,CAACC,IAAI,CAACV,WAAW,CAAC,CAACC,OAAO,CAACU,SAAS,IAAI;IAC5C,MAAMC,MAAM,GAAGZ,WAAW,CAACW,SAAS,CAAC;IACrCZ,UAAU,CAACS,IAAI,CAACG,SAAS,CAAC;IAC1BZ,UAAU,CAACS,IAAI,CAAC,GAAG,CAAC;IACpBI,MAAM,CAACX,OAAO,CAACY,IAAI,IAAId,UAAU,CAACS,IAAI,CAACK,IAAI,CAAC,CAAC;IAC7Cd,UAAU,CAACS,IAAI,CAAC,GAAG,CAAC;EACtB,CAAC,CAAC;EAEF,OAAOT,UAAU,CAACe,IAAI,CAAC,GAAG,CAAC;AAC7B,CAAC;AAED,eAAelB,mBAAmB"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { ON_CLICK } from '../constants';
|
|
2
|
-
|
|
3
2
|
const filterGtmEvents = gtmEvents => {
|
|
4
3
|
const clickEvents = [];
|
|
5
4
|
const regularEvents = [];
|
|
@@ -11,6 +10,5 @@ const filterGtmEvents = gtmEvents => {
|
|
|
11
10
|
regularEvents
|
|
12
11
|
};
|
|
13
12
|
};
|
|
14
|
-
|
|
15
13
|
export default filterGtmEvents;
|
|
16
14
|
//# sourceMappingURL=filter-gtm-events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-gtm-events.js","names":["ON_CLICK","filterGtmEvents","gtmEvents","clickEvents","regularEvents","forEach","event","eventTrigger","push"],"sources":["../../src/helpers/filter-gtm-events.js"],"sourcesContent":["import { ON_CLICK } from '../constants';\n\nconst filterGtmEvents = gtmEvents => {\n const clickEvents = [];\n const regularEvents = [];\n gtmEvents.forEach(event => {\n event.eventTrigger && event.eventTrigger === ON_CLICK\n ? clickEvents.push(event)\n : regularEvents.push(event);\n });\n\n return { clickEvents, regularEvents };\n};\n\nexport default filterGtmEvents;\n"],"mappings":"AAAA,SAASA,
|
|
1
|
+
{"version":3,"file":"filter-gtm-events.js","names":["ON_CLICK","filterGtmEvents","gtmEvents","clickEvents","regularEvents","forEach","event","eventTrigger","push"],"sources":["../../src/helpers/filter-gtm-events.js"],"sourcesContent":["import { ON_CLICK } from '../constants';\n\nconst filterGtmEvents = gtmEvents => {\n const clickEvents = [];\n const regularEvents = [];\n gtmEvents.forEach(event => {\n event.eventTrigger && event.eventTrigger === ON_CLICK\n ? clickEvents.push(event)\n : regularEvents.push(event);\n });\n\n return { clickEvents, regularEvents };\n};\n\nexport default filterGtmEvents;\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AAEvC,MAAMC,eAAe,GAAGC,SAAS,IAAI;EACnC,MAAMC,WAAW,GAAG,EAAE;EACtB,MAAMC,aAAa,GAAG,EAAE;EACxBF,SAAS,CAACG,OAAO,CAACC,KAAK,IAAI;IACzBA,KAAK,CAACC,YAAY,IAAID,KAAK,CAACC,YAAY,KAAKP,QAAQ,GACjDG,WAAW,CAACK,IAAI,CAACF,KAAK,CAAC,GACvBF,aAAa,CAACI,IAAI,CAACF,KAAK,CAAC;EAC/B,CAAC,CAAC;EAEF,OAAO;IAAEH,WAAW;IAAEC;EAAc,CAAC;AACvC,CAAC;AAED,eAAeH,eAAe"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-ids-to-use.js","names":["getIdsToUse","parentData","length","map","id"],"sources":["../../src/helpers/get-ids-to-use.js"],"sourcesContent":["const getIdsToUse = parentData => {\n if (!parentData || !parentData.length) return [];\n\n return parentData.map(({ id }) => id);\n};\n\nexport default getIdsToUse;\n"],"mappings":"AAAA,MAAMA,WAAW,GAAGC,UAAU,IAAI;EAChC,IAAI,CAACA,
|
|
1
|
+
{"version":3,"file":"get-ids-to-use.js","names":["getIdsToUse","parentData","length","map","id"],"sources":["../../src/helpers/get-ids-to-use.js"],"sourcesContent":["const getIdsToUse = parentData => {\n if (!parentData || !parentData.length) return [];\n\n return parentData.map(({ id }) => id);\n};\n\nexport default getIdsToUse;\n"],"mappings":"AAAA,MAAMA,WAAW,GAAGC,UAAU,IAAI;EAChC,IAAI,CAACA,UAAU,IAAI,CAACA,UAAU,CAACC,MAAM,EAAE,OAAO,EAAE;EAEhD,OAAOD,UAAU,CAACE,GAAG,CAAC,CAAC;IAAEC;EAAG,CAAC,KAAKA,EAAE,CAAC;AACvC,CAAC;AAED,eAAeJ,WAAW"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { generateSingleItemQuery, generateMultiItemQuery } from '@blaze-cms/react-page-builder';
|
|
2
|
-
|
|
3
2
|
const getRenderProps = (extraProps, isPreview, data, useMultiQuery) => {
|
|
4
3
|
const {
|
|
5
4
|
getEntitySchema
|
|
@@ -22,6 +21,5 @@ const getRenderProps = (extraProps, isPreview, data, useMultiQuery) => {
|
|
|
22
21
|
actionKey
|
|
23
22
|
};
|
|
24
23
|
};
|
|
25
|
-
|
|
26
24
|
export default getRenderProps;
|
|
27
25
|
//# sourceMappingURL=get-render-props.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-render-props.js","names":["generateSingleItemQuery","generateMultiItemQuery","getRenderProps","extraProps","isPreview","data","useMultiQuery","getEntitySchema","actions","get","getPublished","getAll","getAllPublished","queryToUse","singleActionKey","multiActionKey","actionKey","action"],"sources":["../../src/helpers/get-render-props.js"],"sourcesContent":["import { generateSingleItemQuery, generateMultiItemQuery } from '@blaze-cms/react-page-builder';\n\nconst getRenderProps = (extraProps, isPreview, data, useMultiQuery) => {\n const { getEntitySchema } = data;\n const {\n actions: { get, getPublished, getAll, getAllPublished }\n } = getEntitySchema;\n const queryToUse = useMultiQuery ? generateMultiItemQuery : generateSingleItemQuery;\n const singleActionKey = isPreview ? get : getPublished || get;\n const multiActionKey = isPreview ? getAll : getAllPublished || getAll;\n const actionKey = useMultiQuery ? multiActionKey : singleActionKey;\n const action = queryToUse(actionKey, extraProps);\n\n return { action, actionKey };\n};\n\nexport default getRenderProps;\n"],"mappings":"AAAA,SAASA,
|
|
1
|
+
{"version":3,"file":"get-render-props.js","names":["generateSingleItemQuery","generateMultiItemQuery","getRenderProps","extraProps","isPreview","data","useMultiQuery","getEntitySchema","actions","get","getPublished","getAll","getAllPublished","queryToUse","singleActionKey","multiActionKey","actionKey","action"],"sources":["../../src/helpers/get-render-props.js"],"sourcesContent":["import { generateSingleItemQuery, generateMultiItemQuery } from '@blaze-cms/react-page-builder';\n\nconst getRenderProps = (extraProps, isPreview, data, useMultiQuery) => {\n const { getEntitySchema } = data;\n const {\n actions: { get, getPublished, getAll, getAllPublished }\n } = getEntitySchema;\n const queryToUse = useMultiQuery ? generateMultiItemQuery : generateSingleItemQuery;\n const singleActionKey = isPreview ? get : getPublished || get;\n const multiActionKey = isPreview ? getAll : getAllPublished || getAll;\n const actionKey = useMultiQuery ? multiActionKey : singleActionKey;\n const action = queryToUse(actionKey, extraProps);\n\n return { action, actionKey };\n};\n\nexport default getRenderProps;\n"],"mappings":"AAAA,SAASA,uBAAuB,EAAEC,sBAAsB,QAAQ,+BAA+B;AAE/F,MAAMC,cAAc,GAAG,CAACC,UAAU,EAAEC,SAAS,EAAEC,IAAI,EAAEC,aAAa,KAAK;EACrE,MAAM;IAAEC;EAAgB,CAAC,GAAGF,IAAI;EAChC,MAAM;IACJG,OAAO,EAAE;MAAEC,GAAG;MAAEC,YAAY;MAAEC,MAAM;MAAEC;IAAgB;EACxD,CAAC,GAAGL,eAAe;EACnB,MAAMM,UAAU,GAAGP,aAAa,GAAGL,sBAAsB,GAAGD,uBAAuB;EACnF,MAAMc,eAAe,GAAGV,SAAS,GAAGK,GAAG,GAAGC,YAAY,IAAID,GAAG;EAC7D,MAAMM,cAAc,GAAGX,SAAS,GAAGO,MAAM,GAAGC,eAAe,IAAID,MAAM;EACrE,MAAMK,SAAS,GAAGV,aAAa,GAAGS,cAAc,GAAGD,eAAe;EAClE,MAAMG,MAAM,GAAGJ,UAAU,CAACG,SAAS,EAAEb,UAAU,CAAC;EAEhD,OAAO;IAAEc,MAAM;IAAED;EAAU,CAAC;AAC9B,CAAC;AAED,eAAed,cAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["default","buildDataLayer","pushToDataLayer","buildNestedEvent","getRenderProps","getIdsToUse","buildPropsToDisplayArray","buildAndPushWebVitals","filterGtmEvents","buildUserQueryProps","buildUserLayer"],"sources":["../../src/helpers/index.js"],"sourcesContent":["export { default as buildDataLayer } from './build-data-layer';\nexport { default as pushToDataLayer } from './push-to-data-layer';\nexport { default as buildNestedEvent } from './build-nested-event';\nexport { default as getRenderProps } from './get-render-props';\nexport { default as getIdsToUse } from './get-ids-to-use';\nexport { default as buildPropsToDisplayArray } from './build-props-to-display-array';\nexport { default as buildAndPushWebVitals } from './build-and-push-web-vitals';\nexport { default as filterGtmEvents } from './filter-gtm-events';\nexport { default as buildUserQueryProps } from './build-user-query-props';\nexport { default as buildUserLayer } from './build-user-layer';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,
|
|
1
|
+
{"version":3,"file":"index.js","names":["default","buildDataLayer","pushToDataLayer","buildNestedEvent","getRenderProps","getIdsToUse","buildPropsToDisplayArray","buildAndPushWebVitals","filterGtmEvents","buildUserQueryProps","buildUserLayer"],"sources":["../../src/helpers/index.js"],"sourcesContent":["export { default as buildDataLayer } from './build-data-layer';\nexport { default as pushToDataLayer } from './push-to-data-layer';\nexport { default as buildNestedEvent } from './build-nested-event';\nexport { default as getRenderProps } from './get-render-props';\nexport { default as getIdsToUse } from './get-ids-to-use';\nexport { default as buildPropsToDisplayArray } from './build-props-to-display-array';\nexport { default as buildAndPushWebVitals } from './build-and-push-web-vitals';\nexport { default as filterGtmEvents } from './filter-gtm-events';\nexport { default as buildUserQueryProps } from './build-user-query-props';\nexport { default as buildUserLayer } from './build-user-layer';\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,cAAc,QAAQ,oBAAoB;AAC9D,SAASD,OAAO,IAAIE,eAAe,QAAQ,sBAAsB;AACjE,SAASF,OAAO,IAAIG,gBAAgB,QAAQ,sBAAsB;AAClE,SAASH,OAAO,IAAII,cAAc,QAAQ,oBAAoB;AAC9D,SAASJ,OAAO,IAAIK,WAAW,QAAQ,kBAAkB;AACzD,SAASL,OAAO,IAAIM,wBAAwB,QAAQ,gCAAgC;AACpF,SAASN,OAAO,IAAIO,qBAAqB,QAAQ,6BAA6B;AAC9E,SAASP,OAAO,IAAIQ,eAAe,QAAQ,qBAAqB;AAChE,SAASR,OAAO,IAAIS,mBAAmB,QAAQ,0BAA0B;AACzE,SAAST,OAAO,IAAIU,cAAc,QAAQ,oBAAoB"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import resetDataLayer from './reset-data-layer';
|
|
2
|
-
|
|
3
2
|
const pushToDataLayer = (dataLayer, isPageView) => {
|
|
4
3
|
if (dataLayer && window.dataLayer) {
|
|
5
4
|
if (isPageView) resetDataLayer();
|
|
6
5
|
window.dataLayer.push(dataLayer);
|
|
7
6
|
}
|
|
8
7
|
};
|
|
9
|
-
|
|
10
8
|
export default pushToDataLayer;
|
|
11
9
|
//# sourceMappingURL=push-to-data-layer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push-to-data-layer.js","names":["resetDataLayer","pushToDataLayer","dataLayer","isPageView","window","push"],"sources":["../../src/helpers/push-to-data-layer.js"],"sourcesContent":["import resetDataLayer from './reset-data-layer';\n\nconst pushToDataLayer = (dataLayer, isPageView) => {\n if (dataLayer && window.dataLayer) {\n if (isPageView) resetDataLayer();\n window.dataLayer.push(dataLayer);\n }\n};\n\nexport default pushToDataLayer;\n"],"mappings":"AAAA,OAAOA,
|
|
1
|
+
{"version":3,"file":"push-to-data-layer.js","names":["resetDataLayer","pushToDataLayer","dataLayer","isPageView","window","push"],"sources":["../../src/helpers/push-to-data-layer.js"],"sourcesContent":["import resetDataLayer from './reset-data-layer';\n\nconst pushToDataLayer = (dataLayer, isPageView) => {\n if (dataLayer && window.dataLayer) {\n if (isPageView) resetDataLayer();\n window.dataLayer.push(dataLayer);\n }\n};\n\nexport default pushToDataLayer;\n"],"mappings":"AAAA,OAAOA,cAAc,MAAM,oBAAoB;AAE/C,MAAMC,eAAe,GAAG,CAACC,SAAS,EAAEC,UAAU,KAAK;EACjD,IAAID,SAAS,IAAIE,MAAM,CAACF,SAAS,EAAE;IACjC,IAAIC,UAAU,EAAEH,cAAc,EAAE;IAChCI,MAAM,CAACF,SAAS,CAACG,IAAI,CAACH,SAAS,CAAC;EAClC;AACF,CAAC;AAED,eAAeD,eAAe"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { PAGE_VIEW } from '../constants';
|
|
2
|
-
|
|
3
2
|
const resetDataLayer = () => {
|
|
4
3
|
if (!shouldReset()) return false;
|
|
5
4
|
window.dataLayer.length = 0;
|
|
@@ -9,12 +8,10 @@ const resetDataLayer = () => {
|
|
|
9
8
|
GTMkeys.forEach(GTMkey => window.google_tag_manager[GTMkey].dataLayer.reset());
|
|
10
9
|
return true;
|
|
11
10
|
};
|
|
12
|
-
|
|
13
11
|
function shouldReset() {
|
|
14
12
|
return window.google_tag_manager && window.dataLayer && window.dataLayer.find(({
|
|
15
13
|
event
|
|
16
14
|
}) => event === PAGE_VIEW);
|
|
17
15
|
}
|
|
18
|
-
|
|
19
16
|
export default resetDataLayer;
|
|
20
17
|
//# sourceMappingURL=reset-data-layer.js.map
|