@blaze-cms/plugin-gtm-fe 0.124.0-alpha.28 → 0.124.0-alpha.30

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 CHANGED
@@ -3,6 +3,22 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.124.0-alpha.30](https://github.com/thebyte9/blaze/compare/v0.124.0-alpha.29...v0.124.0-alpha.30) (2022-06-09)
7
+
8
+ **Note:** Version bump only for package @blaze-cms/plugin-gtm-fe
9
+
10
+
11
+
12
+
13
+
14
+ # [0.124.0-alpha.29](https://github.com/thebyte9/blaze/compare/v0.124.0-alpha.28...v0.124.0-alpha.29) (2022-06-06)
15
+
16
+ **Note:** Version bump only for package @blaze-cms/plugin-gtm-fe
17
+
18
+
19
+
20
+
21
+
6
22
  # [0.124.0-alpha.28](https://byte9/thebyte9/blaze/compare/v0.124.0-alpha.27...v0.124.0-alpha.28) (2022-05-27)
7
23
 
8
24
  **Note:** Version bump only for package @blaze-cms/plugin-gtm-fe
@@ -1 +1 @@
1
- {"version":3,"file":"GTMFactory.js","names":["GTMFactory","propsToDisplay","userPropsToDisplay","parent","gtmWebVitals","MainContext","isPreview","getSingleEntitySchema","variables","id","itemEntity","data","error","loading","window","propsToDisplayArr","extraProps","action","actionKey","itemId","propTypes","PropTypes","array","object","isRequired","bool","defaultProps"],"sources":["../../src/GoogleTagManager/GTMFactory.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { getSingleEntitySchema, buildPropsQuery } from '@blaze-cms/react-page-builder';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport GTMRender from './GTMRender';\nimport { getRenderProps, buildPropsToDisplayArray } from '../helpers';\n\nconst GTMFactory = ({ propsToDisplay, userPropsToDisplay, parent, gtmWebVitals }) => {\n const { isPreview } = useContext(MainContext);\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: parent.itemEntity }\n });\n\n if (typeof window === 'undefined') return null;\n if (loading || error || !data) return null;\n\n const propsToDisplayArr = buildPropsToDisplayArray(propsToDisplay);\n const extraProps = buildPropsQuery(data, propsToDisplayArr) || '';\n const { action, actionKey } = getRenderProps(extraProps, isPreview, data);\n\n return (\n <GTMRender\n action={action}\n actionKey={actionKey}\n userPropsToDisplay={userPropsToDisplay}\n propsToDisplay={propsToDisplay}\n parentId={parent.itemId}\n webVitals={gtmWebVitals}\n />\n );\n};\n\nGTMFactory.propTypes = {\n propsToDisplay: PropTypes.array,\n userPropsToDisplay: PropTypes.array,\n parent: PropTypes.object.isRequired,\n gtmWebVitals: PropTypes.bool\n};\n\nGTMFactory.defaultProps = {\n propsToDisplay: [],\n userPropsToDisplay: [],\n gtmWebVitals: false\n};\n\nexport default GTMFactory;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,OAAkE;EAAA,IAA/DC,cAA+D,QAA/DA,cAA+D;EAAA,IAA/CC,kBAA+C,QAA/CA,kBAA+C;EAAA,IAA3BC,MAA2B,QAA3BA,MAA2B;EAAA,IAAnBC,YAAmB,QAAnBA,YAAmB;;EACnF,kBAAsB,uBAAWC,6BAAX,CAAtB;EAAA,IAAQC,SAAR,eAAQA,SAAR;;EACA,gBAAiC,sBAASC,uCAAT,EAAgC;IAC/DC,SAAS,EAAE;MAAEC,EAAE,EAAEN,MAAM,CAACO;IAAb;EADoD,CAAhC,CAAjC;EAAA,IAAQC,IAAR,aAAQA,IAAR;EAAA,IAAcC,KAAd,aAAcA,KAAd;EAAA,IAAqBC,OAArB,aAAqBA,OAArB;;EAIA,IAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC,OAAO,IAAP;EACnC,IAAID,OAAO,IAAID,KAAX,IAAoB,CAACD,IAAzB,EAA+B,OAAO,IAAP;EAE/B,IAAMI,iBAAiB,GAAG,uCAAyBd,cAAzB,CAA1B;EACA,IAAMe,UAAU,GAAG,uCAAgBL,IAAhB,EAAsBI,iBAAtB,KAA4C,EAA/D;;EACA,sBAA8B,6BAAeC,UAAf,EAA2BV,SAA3B,EAAsCK,IAAtC,CAA9B;EAAA,IAAQM,MAAR,mBAAQA,MAAR;EAAA,IAAgBC,SAAhB,mBAAgBA,SAAhB;;EAEA,oBACE,gCAAC,qBAAD;IACE,MAAM,EAAED,MADV;IAEE,SAAS,EAAEC,SAFb;IAGE,kBAAkB,EAAEhB,kBAHtB;IAIE,cAAc,EAAED,cAJlB;IAKE,QAAQ,EAAEE,MAAM,CAACgB,MALnB;IAME,SAAS,EAAEf;EANb,EADF;AAUD,CAvBD;;AAyBAJ,UAAU,CAACoB,SAAX,GAAuB;EACrBnB,cAAc,EAAEoB,sBAAUC,KADL;EAErBpB,kBAAkB,EAAEmB,sBAAUC,KAFT;EAGrBnB,MAAM,EAAEkB,sBAAUE,MAAV,CAAiBC,UAHJ;EAIrBpB,YAAY,EAAEiB,sBAAUI;AAJH,CAAvB;AAOAzB,UAAU,CAAC0B,YAAX,GAA0B;EACxBzB,cAAc,EAAE,EADQ;EAExBC,kBAAkB,EAAE,EAFI;EAGxBE,YAAY,EAAE;AAHU,CAA1B;eAMeJ,U"}
1
+ {"version":3,"file":"GTMFactory.js","names":["GTMFactory","propsToDisplay","userPropsToDisplay","parent","gtmWebVitals","useContext","MainContext","isPreview","useQuery","getSingleEntitySchema","variables","id","itemEntity","data","error","loading","window","propsToDisplayArr","buildPropsToDisplayArray","extraProps","buildPropsQuery","getRenderProps","action","actionKey","itemId","propTypes","PropTypes","array","object","isRequired","bool","defaultProps"],"sources":["../../src/GoogleTagManager/GTMFactory.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { getSingleEntitySchema, buildPropsQuery } from '@blaze-cms/react-page-builder';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport GTMRender from './GTMRender';\nimport { getRenderProps, buildPropsToDisplayArray } from '../helpers';\n\nconst GTMFactory = ({ propsToDisplay, userPropsToDisplay, parent, gtmWebVitals }) => {\n const { isPreview } = useContext(MainContext);\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: parent.itemEntity }\n });\n\n if (typeof window === 'undefined') return null;\n if (loading || error || !data) return null;\n\n const propsToDisplayArr = buildPropsToDisplayArray(propsToDisplay);\n const extraProps = buildPropsQuery(data, propsToDisplayArr) || '';\n const { action, actionKey } = getRenderProps(extraProps, isPreview, data);\n\n return (\n <GTMRender\n action={action}\n actionKey={actionKey}\n userPropsToDisplay={userPropsToDisplay}\n propsToDisplay={propsToDisplay}\n parentId={parent.itemId}\n webVitals={gtmWebVitals}\n />\n );\n};\n\nGTMFactory.propTypes = {\n propsToDisplay: PropTypes.array,\n userPropsToDisplay: PropTypes.array,\n parent: PropTypes.object.isRequired,\n gtmWebVitals: PropTypes.bool\n};\n\nGTMFactory.defaultProps = {\n propsToDisplay: [],\n userPropsToDisplay: [],\n gtmWebVitals: false\n};\n\nexport default GTMFactory;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAa,OAAkE;EAAA,IAA/DC,cAA+D,QAA/DA,cAA+D;EAAA,IAA/CC,kBAA+C,QAA/CA,kBAA+C;EAAA,IAA3BC,MAA2B,QAA3BA,MAA2B;EAAA,IAAnBC,YAAmB,QAAnBA,YAAmB;;EACnF,kBAAsB,IAAAC,iBAAA,EAAWC,6BAAX,CAAtB;EAAA,IAAQC,SAAR,eAAQA,SAAR;;EACA,gBAAiC,IAAAC,gBAAA,EAASC,uCAAT,EAAgC;IAC/DC,SAAS,EAAE;MAAEC,EAAE,EAAER,MAAM,CAACS;IAAb;EADoD,CAAhC,CAAjC;EAAA,IAAQC,IAAR,aAAQA,IAAR;EAAA,IAAcC,KAAd,aAAcA,KAAd;EAAA,IAAqBC,OAArB,aAAqBA,OAArB;;EAIA,IAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC,OAAO,IAAP;EACnC,IAAID,OAAO,IAAID,KAAX,IAAoB,CAACD,IAAzB,EAA+B,OAAO,IAAP;EAE/B,IAAMI,iBAAiB,GAAG,IAAAC,iCAAA,EAAyBjB,cAAzB,CAA1B;EACA,IAAMkB,UAAU,GAAG,IAAAC,iCAAA,EAAgBP,IAAhB,EAAsBI,iBAAtB,KAA4C,EAA/D;;EACA,sBAA8B,IAAAI,uBAAA,EAAeF,UAAf,EAA2BZ,SAA3B,EAAsCM,IAAtC,CAA9B;EAAA,IAAQS,MAAR,mBAAQA,MAAR;EAAA,IAAgBC,SAAhB,mBAAgBA,SAAhB;;EAEA,oBACE,gCAAC,qBAAD;IACE,MAAM,EAAED,MADV;IAEE,SAAS,EAAEC,SAFb;IAGE,kBAAkB,EAAErB,kBAHtB;IAIE,cAAc,EAAED,cAJlB;IAKE,QAAQ,EAAEE,MAAM,CAACqB,MALnB;IAME,SAAS,EAAEpB;EANb,EADF;AAUD,CAvBD;;AAyBAJ,UAAU,CAACyB,SAAX,GAAuB;EACrBxB,cAAc,EAAEyB,qBAAA,CAAUC,KADL;EAErBzB,kBAAkB,EAAEwB,qBAAA,CAAUC,KAFT;EAGrBxB,MAAM,EAAEuB,qBAAA,CAAUE,MAAV,CAAiBC,UAHJ;EAIrBzB,YAAY,EAAEsB,qBAAA,CAAUI;AAJH,CAAvB;AAOA9B,UAAU,CAAC+B,YAAX,GAA0B;EACxB9B,cAAc,EAAE,EADQ;EAExBC,kBAAkB,EAAE,EAFI;EAGxBE,YAAY,EAAE;AAHU,CAA1B;eAMeJ,U"}
@@ -1 +1 @@
1
- {"version":3,"file":"GTMRender.js","names":["GTMRender","router","action","propsToDisplay","parentId","webVitals","userPropsToDisplay","asPath","url","shouldPushLayer","currentLocation","setCurrentLocation","variables","id","data","error","loading","userId","hasUserProps","length","userProps","skip","userData","userLoading","entityData","message","dataLayerObject","userLayerObject","extendedDataLayer","propTypes","PropTypes","array","isRequired","object","string","bool"],"sources":["../../src/GoogleTagManager/GTMRender.js"],"sourcesContent":["import { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { withRouter } from 'next/router';\nimport { getUser } from '@blaze-cms/react-page-builder';\nimport { checkIfLoggedIn } from '@blaze-cms/core-auth-ui';\nimport {\n buildDataLayer,\n buildAndPushWebVitals,\n pushToDataLayer,\n buildUserQueryProps,\n buildUserLayer\n} from '../helpers';\n\nconst GTMRender = ({ router, action, propsToDisplay, parentId, webVitals, userPropsToDisplay }) => {\n const { asPath } = router;\n const [currentLocation, setCurrentLocation] = useState({ url: '', shouldPushLayer: false });\n\n const { data, error, loading } = useQuery(action, {\n variables: { id: parentId }\n });\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 || !data || !data.entityData) return null;\n if (data.entityData.id !== parentId) return null;\n if (error) return error.message;\n if (currentLocation.url !== asPath) setCurrentLocation({ url: asPath, shouldPushLayer: true });\n if (!currentLocation.shouldPushLayer) return null;\n\n const { entityData } = data;\n const dataLayerObject = buildDataLayer(entityData, propsToDisplay, currentLocation.url);\n const userLayerObject = buildUserLayer(userData, userPropsToDisplay);\n const extendedDataLayer = { ...dataLayerObject, ...userLayerObject };\n\n if (webVitals) buildAndPushWebVitals();\n pushToDataLayer(extendedDataLayer, true);\n setCurrentLocation({ ...currentLocation, shouldPushLayer: false });\n\n return null;\n};\n\nGTMRender.propTypes = {\n userPropsToDisplay: PropTypes.array.isRequired,\n action: PropTypes.object.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n parentId: PropTypes.string.isRequired,\n webVitals: PropTypes.bool.isRequired\n};\n\nexport default withRouter(GTMRender);\n"],"mappings":"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"}
1
+ {"version":3,"file":"GTMRender.js","names":["GTMRender","router","action","propsToDisplay","parentId","webVitals","userPropsToDisplay","asPath","useState","url","shouldPushLayer","currentLocation","setCurrentLocation","useQuery","variables","id","data","error","loading","checkIfLoggedIn","userId","hasUserProps","length","userProps","buildUserQueryProps","getUser","skip","userData","userLoading","entityData","message","dataLayerObject","buildDataLayer","userLayerObject","buildUserLayer","extendedDataLayer","buildAndPushWebVitals","pushToDataLayer","propTypes","PropTypes","array","isRequired","object","string","bool","withRouter"],"sources":["../../src/GoogleTagManager/GTMRender.js"],"sourcesContent":["import { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { withRouter } from 'next/router';\nimport { getUser } from '@blaze-cms/react-page-builder';\nimport { checkIfLoggedIn } from '@blaze-cms/core-auth-ui';\nimport {\n buildDataLayer,\n buildAndPushWebVitals,\n pushToDataLayer,\n buildUserQueryProps,\n buildUserLayer\n} from '../helpers';\n\nconst GTMRender = ({ router, action, propsToDisplay, parentId, webVitals, userPropsToDisplay }) => {\n const { asPath } = router;\n const [currentLocation, setCurrentLocation] = useState({ url: '', shouldPushLayer: false });\n\n const { data, error, loading } = useQuery(action, {\n variables: { id: parentId }\n });\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 || !data || !data.entityData) return null;\n if (data.entityData.id !== parentId) return null;\n if (error) return error.message;\n if (currentLocation.url !== asPath) setCurrentLocation({ url: asPath, shouldPushLayer: true });\n if (!currentLocation.shouldPushLayer) return null;\n\n const { entityData } = data;\n const dataLayerObject = buildDataLayer(entityData, propsToDisplay, currentLocation.url);\n const userLayerObject = buildUserLayer(userData, userPropsToDisplay);\n const extendedDataLayer = { ...dataLayerObject, ...userLayerObject };\n\n if (webVitals) buildAndPushWebVitals();\n pushToDataLayer(extendedDataLayer, true);\n setCurrentLocation({ ...currentLocation, shouldPushLayer: false });\n\n return null;\n};\n\nGTMRender.propTypes = {\n userPropsToDisplay: PropTypes.array.isRequired,\n action: PropTypes.object.isRequired,\n propsToDisplay: PropTypes.array.isRequired,\n parentId: PropTypes.string.isRequired,\n webVitals: PropTypes.bool.isRequired\n};\n\nexport default withRouter(GTMRender);\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"GTMClickEvent.js","names":["GTMClickEvent","event","componentProps","parentComponent","eventTrigger","propsToDisplay","userPropsToDisplay","eventEcommerce","userId","id","userProps","variables","skip","userData","data","loading","dataLayerProps","dataLayerObject","userLayerObject","extendedDataLayer","propTypes","PropTypes","object","isRequired","oneOfType","array","defaultProps"],"sources":["../../src/GoogleTagManagerEvent/GTMClickEvent.js"],"sourcesContent":["import React 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 GTMEvent from './GTMEvent';\nimport { buildDataLayer, buildNestedEvent, buildUserQueryProps, buildUserLayer } from '../helpers';\n\nconst GTMClickEvent = ({ event, componentProps, parentComponent }) => {\n const { eventTrigger, propsToDisplay, userPropsToDisplay, eventEcommerce } = event;\n const { id: userId } = checkIfLoggedIn();\n const userProps = userId ? buildUserQueryProps(userPropsToDisplay) : '';\n const { data: userData, loading } = useQuery(getUser(userProps), {\n variables: { id: userId },\n skip: !userId\n });\n if (loading) return null;\n const dataLayerProps = buildDataLayer(componentProps, propsToDisplay);\n const dataLayerObject = buildNestedEvent(eventEcommerce, event, dataLayerProps, parentComponent);\n const userLayerObject = buildUserLayer(userData, userPropsToDisplay);\n\n const extendedDataLayer = { ...dataLayerObject, ...userLayerObject };\n\n return <GTMEvent dataLayerObject={extendedDataLayer} eventTrigger={eventTrigger} />;\n};\n\nGTMClickEvent.propTypes = {\n event: PropTypes.object.isRequired,\n componentProps: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),\n parentComponent: PropTypes.object\n};\n\nGTMClickEvent.defaultProps = {\n componentProps: {},\n parentComponent: {}\n};\n\nexport default GTMClickEvent;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,OAAgD;EAAA,IAA7CC,KAA6C,QAA7CA,KAA6C;EAAA,IAAtCC,cAAsC,QAAtCA,cAAsC;EAAA,IAAtBC,eAAsB,QAAtBA,eAAsB;EACpE,IAAQC,YAAR,GAA6EH,KAA7E,CAAQG,YAAR;EAAA,IAAsBC,cAAtB,GAA6EJ,KAA7E,CAAsBI,cAAtB;EAAA,IAAsCC,kBAAtC,GAA6EL,KAA7E,CAAsCK,kBAAtC;EAAA,IAA0DC,cAA1D,GAA6EN,KAA7E,CAA0DM,cAA1D;;EACA,uBAAuB,kCAAvB;EAAA,IAAYC,MAAZ,oBAAQC,EAAR;;EACA,IAAMC,SAAS,GAAGF,MAAM,GAAG,kCAAoBF,kBAApB,CAAH,GAA6C,EAArE;;EACA,gBAAoC,sBAAS,+BAAQI,SAAR,CAAT,EAA6B;IAC/DC,SAAS,EAAE;MAAEF,EAAE,EAAED;IAAN,CADoD;IAE/DI,IAAI,EAAE,CAACJ;EAFwD,CAA7B,CAApC;EAAA,IAAcK,QAAd,aAAQC,IAAR;EAAA,IAAwBC,OAAxB,aAAwBA,OAAxB;;EAIA,IAAIA,OAAJ,EAAa,OAAO,IAAP;EACb,IAAMC,cAAc,GAAG,6BAAed,cAAf,EAA+BG,cAA/B,CAAvB;EACA,IAAMY,eAAe,GAAG,+BAAiBV,cAAjB,EAAiCN,KAAjC,EAAwCe,cAAxC,EAAwDb,eAAxD,CAAxB;EACA,IAAMe,eAAe,GAAG,6BAAeL,QAAf,EAAyBP,kBAAzB,CAAxB;;EAEA,IAAMa,iBAAiB,mCAAQF,eAAR,GAA4BC,eAA5B,CAAvB;;EAEA,oBAAO,gCAAC,oBAAD;IAAU,eAAe,EAAEC,iBAA3B;IAA8C,YAAY,EAAEf;EAA5D,EAAP;AACD,CAhBD;;AAkBAJ,aAAa,CAACoB,SAAd,GAA0B;EACxBnB,KAAK,EAAEoB,sBAAUC,MAAV,CAAiBC,UADA;EAExBrB,cAAc,EAAEmB,sBAAUG,SAAV,CAAoB,CAACH,sBAAUC,MAAX,EAAmBD,sBAAUI,KAA7B,CAApB,CAFQ;EAGxBtB,eAAe,EAAEkB,sBAAUC;AAHH,CAA1B;AAMAtB,aAAa,CAAC0B,YAAd,GAA6B;EAC3BxB,cAAc,EAAE,EADW;EAE3BC,eAAe,EAAE;AAFU,CAA7B;eAKeH,a"}
1
+ {"version":3,"file":"GTMClickEvent.js","names":["GTMClickEvent","event","componentProps","parentComponent","eventTrigger","propsToDisplay","userPropsToDisplay","eventEcommerce","checkIfLoggedIn","userId","id","userProps","buildUserQueryProps","useQuery","getUser","variables","skip","userData","data","loading","dataLayerProps","buildDataLayer","dataLayerObject","buildNestedEvent","userLayerObject","buildUserLayer","extendedDataLayer","propTypes","PropTypes","object","isRequired","oneOfType","array","defaultProps"],"sources":["../../src/GoogleTagManagerEvent/GTMClickEvent.js"],"sourcesContent":["import React 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 GTMEvent from './GTMEvent';\nimport { buildDataLayer, buildNestedEvent, buildUserQueryProps, buildUserLayer } from '../helpers';\n\nconst GTMClickEvent = ({ event, componentProps, parentComponent }) => {\n const { eventTrigger, propsToDisplay, userPropsToDisplay, eventEcommerce } = event;\n const { id: userId } = checkIfLoggedIn();\n const userProps = userId ? buildUserQueryProps(userPropsToDisplay) : '';\n const { data: userData, loading } = useQuery(getUser(userProps), {\n variables: { id: userId },\n skip: !userId\n });\n if (loading) return null;\n const dataLayerProps = buildDataLayer(componentProps, propsToDisplay);\n const dataLayerObject = buildNestedEvent(eventEcommerce, event, dataLayerProps, parentComponent);\n const userLayerObject = buildUserLayer(userData, userPropsToDisplay);\n\n const extendedDataLayer = { ...dataLayerObject, ...userLayerObject };\n\n return <GTMEvent dataLayerObject={extendedDataLayer} eventTrigger={eventTrigger} />;\n};\n\nGTMClickEvent.propTypes = {\n event: PropTypes.object.isRequired,\n componentProps: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),\n parentComponent: PropTypes.object\n};\n\nGTMClickEvent.defaultProps = {\n componentProps: {},\n parentComponent: {}\n};\n\nexport default GTMClickEvent;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,OAAgD;EAAA,IAA7CC,KAA6C,QAA7CA,KAA6C;EAAA,IAAtCC,cAAsC,QAAtCA,cAAsC;EAAA,IAAtBC,eAAsB,QAAtBA,eAAsB;EACpE,IAAQC,YAAR,GAA6EH,KAA7E,CAAQG,YAAR;EAAA,IAAsBC,cAAtB,GAA6EJ,KAA7E,CAAsBI,cAAtB;EAAA,IAAsCC,kBAAtC,GAA6EL,KAA7E,CAAsCK,kBAAtC;EAAA,IAA0DC,cAA1D,GAA6EN,KAA7E,CAA0DM,cAA1D;;EACA,uBAAuB,IAAAC,2BAAA,GAAvB;EAAA,IAAYC,MAAZ,oBAAQC,EAAR;;EACA,IAAMC,SAAS,GAAGF,MAAM,GAAG,IAAAG,4BAAA,EAAoBN,kBAApB,CAAH,GAA6C,EAArE;;EACA,gBAAoC,IAAAO,gBAAA,EAAS,IAAAC,yBAAA,EAAQH,SAAR,CAAT,EAA6B;IAC/DI,SAAS,EAAE;MAAEL,EAAE,EAAED;IAAN,CADoD;IAE/DO,IAAI,EAAE,CAACP;EAFwD,CAA7B,CAApC;EAAA,IAAcQ,QAAd,aAAQC,IAAR;EAAA,IAAwBC,OAAxB,aAAwBA,OAAxB;;EAIA,IAAIA,OAAJ,EAAa,OAAO,IAAP;EACb,IAAMC,cAAc,GAAG,IAAAC,uBAAA,EAAenB,cAAf,EAA+BG,cAA/B,CAAvB;EACA,IAAMiB,eAAe,GAAG,IAAAC,yBAAA,EAAiBhB,cAAjB,EAAiCN,KAAjC,EAAwCmB,cAAxC,EAAwDjB,eAAxD,CAAxB;EACA,IAAMqB,eAAe,GAAG,IAAAC,uBAAA,EAAeR,QAAf,EAAyBX,kBAAzB,CAAxB;;EAEA,IAAMoB,iBAAiB,mCAAQJ,eAAR,GAA4BE,eAA5B,CAAvB;;EAEA,oBAAO,gCAAC,oBAAD;IAAU,eAAe,EAAEE,iBAA3B;IAA8C,YAAY,EAAEtB;EAA5D,EAAP;AACD,CAhBD;;AAkBAJ,aAAa,CAAC2B,SAAd,GAA0B;EACxB1B,KAAK,EAAE2B,qBAAA,CAAUC,MAAV,CAAiBC,UADA;EAExB5B,cAAc,EAAE0B,qBAAA,CAAUG,SAAV,CAAoB,CAACH,qBAAA,CAAUC,MAAX,EAAmBD,qBAAA,CAAUI,KAA7B,CAApB,CAFQ;EAGxB7B,eAAe,EAAEyB,qBAAA,CAAUC;AAHH,CAA1B;AAMA7B,aAAa,CAACiC,YAAd,GAA6B;EAC3B/B,cAAc,EAAE,EADW;EAE3BC,eAAe,EAAE;AAFU,CAA7B;eAKeH,a"}
@@ -1 +1 @@
1
- {"version":3,"file":"GTMClickEvents.js","names":["GTMClickEvents","gtmEvents","componentProps","parentComponent","map","event","index","eventName","dynamicKey","join","propTypes","PropTypes","array","oneOfType","object","defaultProps"],"sources":["../../src/GoogleTagManagerEvent/GTMClickEvents.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport GTMClickEvent from './GTMClickEvent';\n\nconst GTMClickEvents = ({ gtmEvents, componentProps, parentComponent }) =>\n gtmEvents.map((event, index) => {\n const { eventName } = event;\n const dynamicKey = [eventName, index].join('-');\n\n return (\n <GTMClickEvent\n key={dynamicKey}\n event={event}\n componentProps={componentProps}\n parentComponent={parentComponent}\n {...event}\n />\n );\n });\n\nGTMClickEvents.propTypes = {\n gtmEvents: PropTypes.array,\n componentProps: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),\n parentComponent: PropTypes.object\n};\n\nGTMClickEvents.defaultProps = {\n gtmEvents: [],\n componentProps: {},\n parentComponent: {}\n};\n\nexport default GTMClickEvents;\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB;EAAA,IAAGC,SAAH,QAAGA,SAAH;EAAA,IAAcC,cAAd,QAAcA,cAAd;EAAA,IAA8BC,eAA9B,QAA8BA,eAA9B;EAAA,OACrBF,SAAS,CAACG,GAAV,CAAc,UAACC,KAAD,EAAQC,KAAR,EAAkB;IAC9B,IAAQC,SAAR,GAAsBF,KAAtB,CAAQE,SAAR;IACA,IAAMC,UAAU,GAAG,CAACD,SAAD,EAAYD,KAAZ,EAAmBG,IAAnB,CAAwB,GAAxB,CAAnB;IAEA,oBACE,gCAAC,yBAAD;MACE,GAAG,EAAED,UADP;MAEE,KAAK,EAAEH,KAFT;MAGE,cAAc,EAAEH,cAHlB;MAIE,eAAe,EAAEC;IAJnB,GAKME,KALN,EADF;EASD,CAbD,CADqB;AAAA,CAAvB;;AAgBAL,cAAc,CAACU,SAAf,GAA2B;EACzBT,SAAS,EAAEU,sBAAUC,KADI;EAEzBV,cAAc,EAAES,sBAAUE,SAAV,CAAoB,CAACF,sBAAUG,MAAX,EAAmBH,sBAAUC,KAA7B,CAApB,CAFS;EAGzBT,eAAe,EAAEQ,sBAAUG;AAHF,CAA3B;AAMAd,cAAc,CAACe,YAAf,GAA8B;EAC5Bd,SAAS,EAAE,EADiB;EAE5BC,cAAc,EAAE,EAFY;EAG5BC,eAAe,EAAE;AAHW,CAA9B;eAMeH,c"}
1
+ {"version":3,"file":"GTMClickEvents.js","names":["GTMClickEvents","gtmEvents","componentProps","parentComponent","map","event","index","eventName","dynamicKey","join","propTypes","PropTypes","array","oneOfType","object","defaultProps"],"sources":["../../src/GoogleTagManagerEvent/GTMClickEvents.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport GTMClickEvent from './GTMClickEvent';\n\nconst GTMClickEvents = ({ gtmEvents, componentProps, parentComponent }) =>\n gtmEvents.map((event, index) => {\n const { eventName } = event;\n const dynamicKey = [eventName, index].join('-');\n\n return (\n <GTMClickEvent\n key={dynamicKey}\n event={event}\n componentProps={componentProps}\n parentComponent={parentComponent}\n {...event}\n />\n );\n });\n\nGTMClickEvents.propTypes = {\n gtmEvents: PropTypes.array,\n componentProps: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),\n parentComponent: PropTypes.object\n};\n\nGTMClickEvents.defaultProps = {\n gtmEvents: [],\n componentProps: {},\n parentComponent: {}\n};\n\nexport default GTMClickEvents;\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB;EAAA,IAAGC,SAAH,QAAGA,SAAH;EAAA,IAAcC,cAAd,QAAcA,cAAd;EAAA,IAA8BC,eAA9B,QAA8BA,eAA9B;EAAA,OACrBF,SAAS,CAACG,GAAV,CAAc,UAACC,KAAD,EAAQC,KAAR,EAAkB;IAC9B,IAAQC,SAAR,GAAsBF,KAAtB,CAAQE,SAAR;IACA,IAAMC,UAAU,GAAG,CAACD,SAAD,EAAYD,KAAZ,EAAmBG,IAAnB,CAAwB,GAAxB,CAAnB;IAEA,oBACE,gCAAC,yBAAD;MACE,GAAG,EAAED,UADP;MAEE,KAAK,EAAEH,KAFT;MAGE,cAAc,EAAEH,cAHlB;MAIE,eAAe,EAAEC;IAJnB,GAKME,KALN,EADF;EASD,CAbD,CADqB;AAAA,CAAvB;;AAgBAL,cAAc,CAACU,SAAf,GAA2B;EACzBT,SAAS,EAAEU,qBAAA,CAAUC,KADI;EAEzBV,cAAc,EAAES,qBAAA,CAAUE,SAAV,CAAoB,CAACF,qBAAA,CAAUG,MAAX,EAAmBH,qBAAA,CAAUC,KAA7B,CAApB,CAFS;EAGzBT,eAAe,EAAEQ,qBAAA,CAAUG;AAHF,CAA3B;AAMAd,cAAc,CAACe,YAAf,GAA8B;EAC5Bd,SAAS,EAAE,EADiB;EAE5BC,cAAc,EAAE,EAFY;EAG5BC,eAAe,EAAE;AAHW,CAA9B;eAMeH,c"}
@@ -1 +1 @@
1
- {"version":3,"file":"GTMEvent.js","names":["GTMEvent","dataLayerObject","eventTrigger","currentLocation","handleOnSuccess","shouldPushLayer","setShouldPushLayer","isViewEvent","IN_VIEW","isOnSuccess","ON_SUCCESS","pushDataLayer","propTypes","PropTypes","func","isRequired","object","string"],"sources":["../../src/GoogleTagManagerEvent/GTMEvent.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport { pushToDataLayer } from '../helpers';\nimport { IN_VIEW, ON_SUCCESS } from '../constants';\n\nconst GTMEvent = ({ dataLayerObject, eventTrigger, currentLocation, handleOnSuccess }) => {\n const [shouldPushLayer, setShouldPushLayer] = useState(false);\n const isViewEvent = eventTrigger === IN_VIEW;\n const isOnSuccess = eventTrigger === ON_SUCCESS && !!handleOnSuccess;\n\n useEffect(\n () => {\n setShouldPushLayer(true);\n },\n [currentLocation]\n );\n const pushDataLayer = () => {\n pushToDataLayer(dataLayerObject);\n setShouldPushLayer(false);\n if (isOnSuccess) handleOnSuccess();\n };\n\n if (!isViewEvent && shouldPushLayer) pushDataLayer();\n\n return <>{isViewEvent && shouldPushLayer && <Waypoint onEnter={pushDataLayer} />}</>;\n};\n\nGTMEvent.propTypes = {\n handleOnSuccess: PropTypes.func.isRequired,\n dataLayerObject: PropTypes.object.isRequired,\n eventTrigger: PropTypes.string.isRequired,\n currentLocation: PropTypes.string.isRequired\n};\n\nexport default GTMEvent;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,OAAyE;EAAA,IAAtEC,eAAsE,QAAtEA,eAAsE;EAAA,IAArDC,YAAqD,QAArDA,YAAqD;EAAA,IAAvCC,eAAuC,QAAvCA,eAAuC;EAAA,IAAtBC,eAAsB,QAAtBA,eAAsB;;EACxF,gBAA8C,qBAAS,KAAT,CAA9C;EAAA;EAAA,IAAOC,eAAP;EAAA,IAAwBC,kBAAxB;;EACA,IAAMC,WAAW,GAAGL,YAAY,KAAKM,kBAArC;EACA,IAAMC,WAAW,GAAGP,YAAY,KAAKQ,qBAAjB,IAA+B,CAAC,CAACN,eAArD;EAEA,sBACE,YAAM;IACJE,kBAAkB,CAAC,IAAD,CAAlB;EACD,CAHH,EAIE,CAACH,eAAD,CAJF;;EAMA,IAAMQ,aAAa,GAAG,SAAhBA,aAAgB,GAAM;IAC1B,8BAAgBV,eAAhB;IACAK,kBAAkB,CAAC,KAAD,CAAlB;IACA,IAAIG,WAAJ,EAAiBL,eAAe;EACjC,CAJD;;EAMA,IAAI,CAACG,WAAD,IAAgBF,eAApB,EAAqCM,aAAa;EAElD,oBAAO,kEAAGJ,WAAW,IAAIF,eAAf,iBAAkC,gCAAC,uBAAD;IAAU,OAAO,EAAEM;EAAnB,EAArC,CAAP;AACD,CApBD;;AAsBAX,QAAQ,CAACY,SAAT,GAAqB;EACnBR,eAAe,EAAES,sBAAUC,IAAV,CAAeC,UADb;EAEnBd,eAAe,EAAEY,sBAAUG,MAAV,CAAiBD,UAFf;EAGnBb,YAAY,EAAEW,sBAAUI,MAAV,CAAiBF,UAHZ;EAInBZ,eAAe,EAAEU,sBAAUI,MAAV,CAAiBF;AAJf,CAArB;eAOef,Q"}
1
+ {"version":3,"file":"GTMEvent.js","names":["GTMEvent","dataLayerObject","eventTrigger","currentLocation","handleOnSuccess","useState","shouldPushLayer","setShouldPushLayer","isViewEvent","IN_VIEW","isOnSuccess","ON_SUCCESS","useEffect","pushDataLayer","pushToDataLayer","propTypes","PropTypes","func","isRequired","object","string"],"sources":["../../src/GoogleTagManagerEvent/GTMEvent.js"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { Waypoint } from 'react-waypoint';\nimport { pushToDataLayer } from '../helpers';\nimport { IN_VIEW, ON_SUCCESS } from '../constants';\n\nconst GTMEvent = ({ dataLayerObject, eventTrigger, currentLocation, handleOnSuccess }) => {\n const [shouldPushLayer, setShouldPushLayer] = useState(false);\n const isViewEvent = eventTrigger === IN_VIEW;\n const isOnSuccess = eventTrigger === ON_SUCCESS && !!handleOnSuccess;\n\n useEffect(\n () => {\n setShouldPushLayer(true);\n },\n [currentLocation]\n );\n const pushDataLayer = () => {\n pushToDataLayer(dataLayerObject);\n setShouldPushLayer(false);\n if (isOnSuccess) handleOnSuccess();\n };\n\n if (!isViewEvent && shouldPushLayer) pushDataLayer();\n\n return <>{isViewEvent && shouldPushLayer && <Waypoint onEnter={pushDataLayer} />}</>;\n};\n\nGTMEvent.propTypes = {\n handleOnSuccess: PropTypes.func.isRequired,\n dataLayerObject: PropTypes.object.isRequired,\n eventTrigger: PropTypes.string.isRequired,\n currentLocation: PropTypes.string.isRequired\n};\n\nexport default GTMEvent;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA,IAAMA,QAAQ,GAAG,SAAXA,QAAW,OAAyE;EAAA,IAAtEC,eAAsE,QAAtEA,eAAsE;EAAA,IAArDC,YAAqD,QAArDA,YAAqD;EAAA,IAAvCC,eAAuC,QAAvCA,eAAuC;EAAA,IAAtBC,eAAsB,QAAtBA,eAAsB;;EACxF,gBAA8C,IAAAC,eAAA,EAAS,KAAT,CAA9C;EAAA;EAAA,IAAOC,eAAP;EAAA,IAAwBC,kBAAxB;;EACA,IAAMC,WAAW,GAAGN,YAAY,KAAKO,kBAArC;EACA,IAAMC,WAAW,GAAGR,YAAY,KAAKS,qBAAjB,IAA+B,CAAC,CAACP,eAArD;EAEA,IAAAQ,gBAAA,EACE,YAAM;IACJL,kBAAkB,CAAC,IAAD,CAAlB;EACD,CAHH,EAIE,CAACJ,eAAD,CAJF;;EAMA,IAAMU,aAAa,GAAG,SAAhBA,aAAgB,GAAM;IAC1B,IAAAC,wBAAA,EAAgBb,eAAhB;IACAM,kBAAkB,CAAC,KAAD,CAAlB;IACA,IAAIG,WAAJ,EAAiBN,eAAe;EACjC,CAJD;;EAMA,IAAI,CAACI,WAAD,IAAgBF,eAApB,EAAqCO,aAAa;EAElD,oBAAO,kEAAGL,WAAW,IAAIF,eAAf,iBAAkC,gCAAC,uBAAD;IAAU,OAAO,EAAEO;EAAnB,EAArC,CAAP;AACD,CApBD;;AAsBAb,QAAQ,CAACe,SAAT,GAAqB;EACnBX,eAAe,EAAEY,qBAAA,CAAUC,IAAV,CAAeC,UADb;EAEnBjB,eAAe,EAAEe,qBAAA,CAAUG,MAAV,CAAiBD,UAFf;EAGnBhB,YAAY,EAAEc,qBAAA,CAAUI,MAAV,CAAiBF,UAHZ;EAInBf,eAAe,EAAEa,qBAAA,CAAUI,MAAV,CAAiBF;AAJf,CAArB;eAOelB,Q"}
@@ -1 +1 @@
1
- {"version":3,"file":"GTMEventFactory.js","names":["GTMEventFactory","parent","gtmEvents","parentData","clickId","parentComponent","MainContext","isPreview","itemEntity","getSingleEntitySchema","variables","id","data","error","loading","map","i","propsToDisplay","eventProps","hasNoPropsToDisplay","length","propsToDisplayArr","extraProps","shouldUseParentData","itemIdToUse","itemId","shouldUseMultiQuery","Array","isArray","action","actionKey","dynamicKey","GTM_EVENT_FACTORY","queryVariables","where","_in","skip","propTypes","PropTypes","object","isRequired","string","array","oneOfType","defaultProps"],"sources":["../../src/GoogleTagManagerEvent/GTMEventFactory.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { getSingleEntitySchema, buildPropsQuery } from '@blaze-cms/react-page-builder';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport GTMEventRender from './GTMEventRender';\nimport { getRenderProps, getIdsToUse, buildPropsToDisplayArray } from '../helpers';\nimport { GTM_EVENT_FACTORY } from '../constants';\n\nconst GTMEventFactory = ({ parent, gtmEvents, parentData, clickId, parentComponent }) => {\n const { isPreview } = useContext(MainContext);\n const [{ itemEntity = parent.itemEntity } = {}] = parentData || [];\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: itemEntity }\n });\n\n if (loading || error || !data) return null;\n\n return gtmEvents.map(({ propsToDisplay, ...eventProps }, i) => {\n const hasNoPropsToDisplay = !propsToDisplay || !propsToDisplay.length;\n const propsToDisplayArr = buildPropsToDisplayArray(propsToDisplay);\n const extraProps = hasNoPropsToDisplay ? '' : buildPropsQuery(data, propsToDisplayArr);\n const shouldUseParentData = !clickId && parentData && parentData.length;\n const itemIdToUse = clickId || parent.itemId;\n const itemId = shouldUseParentData ? getIdsToUse(parentData) : itemIdToUse;\n const shouldUseMultiQuery = Array.isArray(itemId);\n const { action, actionKey } = getRenderProps(extraProps, isPreview, data, shouldUseMultiQuery);\n const dynamicKey = `${GTM_EVENT_FACTORY}${i}`;\n const queryVariables = shouldUseMultiQuery\n ? {\n variables: { where: { id: { _in: itemId } } },\n skip: hasNoPropsToDisplay\n }\n : {\n variables: { id: itemId },\n skip: hasNoPropsToDisplay\n };\n\n return (\n <GTMEventRender\n key={dynamicKey}\n action={action}\n actionKey={actionKey}\n propsToDisplay={propsToDisplay}\n id={itemId}\n queryVariables={queryVariables}\n parentComponent={parentComponent}\n {...eventProps}\n />\n );\n });\n};\n\nGTMEventFactory.propTypes = {\n parent: PropTypes.object.isRequired,\n clickId: PropTypes.string,\n gtmEvents: PropTypes.array,\n parentData: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),\n parentComponent: PropTypes.object\n};\n\nGTMEventFactory.defaultProps = {\n clickId: null,\n gtmEvents: [],\n parentData: null,\n parentComponent: {}\n};\n\nexport default GTMEventFactory;\n"],"mappings":"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"}
1
+ {"version":3,"file":"GTMEventFactory.js","names":["GTMEventFactory","parent","gtmEvents","parentData","clickId","parentComponent","useContext","MainContext","isPreview","itemEntity","useQuery","getSingleEntitySchema","variables","id","data","error","loading","map","i","propsToDisplay","eventProps","hasNoPropsToDisplay","length","propsToDisplayArr","buildPropsToDisplayArray","extraProps","buildPropsQuery","shouldUseParentData","itemIdToUse","itemId","getIdsToUse","shouldUseMultiQuery","Array","isArray","getRenderProps","action","actionKey","dynamicKey","GTM_EVENT_FACTORY","queryVariables","where","_in","skip","propTypes","PropTypes","object","isRequired","string","array","oneOfType","defaultProps"],"sources":["../../src/GoogleTagManagerEvent/GTMEventFactory.js"],"sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport { useQuery } from '@apollo/client';\nimport { getSingleEntitySchema, buildPropsQuery } from '@blaze-cms/react-page-builder';\nimport { MainContext } from '@blaze-cms/nextjs-components';\nimport GTMEventRender from './GTMEventRender';\nimport { getRenderProps, getIdsToUse, buildPropsToDisplayArray } from '../helpers';\nimport { GTM_EVENT_FACTORY } from '../constants';\n\nconst GTMEventFactory = ({ parent, gtmEvents, parentData, clickId, parentComponent }) => {\n const { isPreview } = useContext(MainContext);\n const [{ itemEntity = parent.itemEntity } = {}] = parentData || [];\n const { data, error, loading } = useQuery(getSingleEntitySchema, {\n variables: { id: itemEntity }\n });\n\n if (loading || error || !data) return null;\n\n return gtmEvents.map(({ propsToDisplay, ...eventProps }, i) => {\n const hasNoPropsToDisplay = !propsToDisplay || !propsToDisplay.length;\n const propsToDisplayArr = buildPropsToDisplayArray(propsToDisplay);\n const extraProps = hasNoPropsToDisplay ? '' : buildPropsQuery(data, propsToDisplayArr);\n const shouldUseParentData = !clickId && parentData && parentData.length;\n const itemIdToUse = clickId || parent.itemId;\n const itemId = shouldUseParentData ? getIdsToUse(parentData) : itemIdToUse;\n const shouldUseMultiQuery = Array.isArray(itemId);\n const { action, actionKey } = getRenderProps(extraProps, isPreview, data, shouldUseMultiQuery);\n const dynamicKey = `${GTM_EVENT_FACTORY}${i}`;\n const queryVariables = shouldUseMultiQuery\n ? {\n variables: { where: { id: { _in: itemId } } },\n skip: hasNoPropsToDisplay\n }\n : {\n variables: { id: itemId },\n skip: hasNoPropsToDisplay\n };\n\n return (\n <GTMEventRender\n key={dynamicKey}\n action={action}\n actionKey={actionKey}\n propsToDisplay={propsToDisplay}\n id={itemId}\n queryVariables={queryVariables}\n parentComponent={parentComponent}\n {...eventProps}\n />\n );\n });\n};\n\nGTMEventFactory.propTypes = {\n parent: PropTypes.object.isRequired,\n clickId: PropTypes.string,\n gtmEvents: PropTypes.array,\n parentData: PropTypes.oneOfType([PropTypes.object, PropTypes.array]),\n parentComponent: PropTypes.object\n};\n\nGTMEventFactory.defaultProps = {\n clickId: null,\n gtmEvents: [],\n parentData: null,\n parentComponent: {}\n};\n\nexport default GTMEventFactory;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,OAAiE;EAAA,IAA9DC,MAA8D,QAA9DA,MAA8D;EAAA,IAAtDC,SAAsD,QAAtDA,SAAsD;EAAA,IAA3CC,UAA2C,QAA3CA,UAA2C;EAAA,IAA/BC,OAA+B,QAA/BA,OAA+B;EAAA,IAAtBC,eAAsB,QAAtBA,eAAsB;;EACvF,kBAAsB,IAAAC,iBAAA,EAAWC,6BAAX,CAAtB;EAAA,IAAQC,SAAR,eAAQA,SAAR;;EACA,YAAkDL,UAAU,IAAI,EAAhE;EAAA;EAAA;;EAAA,6BAA4C,EAA5C;EAAA,+BAASM,UAAT;EAAA,IAASA,UAAT,kCAAsBR,MAAM,CAACQ,UAA7B;;EACA,gBAAiC,IAAAC,gBAAA,EAASC,uCAAT,EAAgC;IAC/DC,SAAS,EAAE;MAAEC,EAAE,EAAEJ;IAAN;EADoD,CAAhC,CAAjC;EAAA,IAAQK,IAAR,aAAQA,IAAR;EAAA,IAAcC,KAAd,aAAcA,KAAd;EAAA,IAAqBC,OAArB,aAAqBA,OAArB;;EAIA,IAAIA,OAAO,IAAID,KAAX,IAAoB,CAACD,IAAzB,EAA+B,OAAO,IAAP;EAE/B,OAAOZ,SAAS,CAACe,GAAV,CAAc,iBAAoCC,CAApC,EAA0C;IAAA,IAAvCC,cAAuC,SAAvCA,cAAuC;IAAA,IAApBC,UAAoB;IAC7D,IAAMC,mBAAmB,GAAG,CAACF,cAAD,IAAmB,CAACA,cAAc,CAACG,MAA/D;IACA,IAAMC,iBAAiB,GAAG,IAAAC,iCAAA,EAAyBL,cAAzB,CAA1B;IACA,IAAMM,UAAU,GAAGJ,mBAAmB,GAAG,EAAH,GAAQ,IAAAK,iCAAA,EAAgBZ,IAAhB,EAAsBS,iBAAtB,CAA9C;IACA,IAAMI,mBAAmB,GAAG,CAACvB,OAAD,IAAYD,UAAZ,IAA0BA,UAAU,CAACmB,MAAjE;IACA,IAAMM,WAAW,GAAGxB,OAAO,IAAIH,MAAM,CAAC4B,MAAtC;IACA,IAAMA,MAAM,GAAGF,mBAAmB,GAAG,IAAAG,oBAAA,EAAY3B,UAAZ,CAAH,GAA6ByB,WAA/D;IACA,IAAMG,mBAAmB,GAAGC,KAAK,CAACC,OAAN,CAAcJ,MAAd,CAA5B;;IACA,sBAA8B,IAAAK,uBAAA,EAAeT,UAAf,EAA2BjB,SAA3B,EAAsCM,IAAtC,EAA4CiB,mBAA5C,CAA9B;IAAA,IAAQI,MAAR,mBAAQA,MAAR;IAAA,IAAgBC,SAAhB,mBAAgBA,SAAhB;;IACA,IAAMC,UAAU,aAAMC,4BAAN,SAA0BpB,CAA1B,CAAhB;IACA,IAAMqB,cAAc,GAAGR,mBAAmB,GACtC;MACEnB,SAAS,EAAE;QAAE4B,KAAK,EAAE;UAAE3B,EAAE,EAAE;YAAE4B,GAAG,EAAEZ;UAAP;QAAN;MAAT,CADb;MAEEa,IAAI,EAAErB;IAFR,CADsC,GAKtC;MACET,SAAS,EAAE;QAAEC,EAAE,EAAEgB;MAAN,CADb;MAEEa,IAAI,EAAErB;IAFR,CALJ;IAUA,oBACE,gCAAC,0BAAD;MACE,GAAG,EAAEgB,UADP;MAEE,MAAM,EAAEF,MAFV;MAGE,SAAS,EAAEC,SAHb;MAIE,cAAc,EAAEjB,cAJlB;MAKE,EAAE,EAAEU,MALN;MAME,cAAc,EAAEU,cANlB;MAOE,eAAe,EAAElC;IAPnB,GAQMe,UARN,EADF;EAYD,CAhCM,CAAP;AAiCD,CA1CD;;AA4CApB,eAAe,CAAC2C,SAAhB,GAA4B;EAC1B1C,MAAM,EAAE2C,qBAAA,CAAUC,MAAV,CAAiBC,UADC;EAE1B1C,OAAO,EAAEwC,qBAAA,CAAUG,MAFO;EAG1B7C,SAAS,EAAE0C,qBAAA,CAAUI,KAHK;EAI1B7C,UAAU,EAAEyC,qBAAA,CAAUK,SAAV,CAAoB,CAACL,qBAAA,CAAUC,MAAX,EAAmBD,qBAAA,CAAUI,KAA7B,CAApB,CAJc;EAK1B3C,eAAe,EAAEuC,qBAAA,CAAUC;AALD,CAA5B;AAQA7C,eAAe,CAACkD,YAAhB,GAA+B;EAC7B9C,OAAO,EAAE,IADoB;EAE7BF,SAAS,EAAE,EAFkB;EAG7BC,UAAU,EAAE,IAHiB;EAI7BE,eAAe,EAAE;AAJY,CAA/B;eAOeL,e"}
@@ -1 +1 @@
1
- {"version":3,"file":"GTMEventRender.js","names":["GTMEventRender","router","action","actionKey","queryVariables","parentComponent","userPropsToDisplay","handleOnSuccess","eventProps","asPath","currentLocation","setCurrentLocation","data","error","loading","userId","id","hasUserProps","length","userProps","variables","skip","userData","userLoading","gtmData","entityData","eventTrigger","propsToDisplay","eventEcommerce","dataLayerProps","dataLayerObject","userLayerObject","extendedDataLayer","propTypes","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;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;AAEA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,OASjB;EAAA,IARJC,MAQI,QARJA,MAQI;EAAA,IAPJC,MAOI,QAPJA,MAOI;EAAA,IANJC,SAMI,QANJA,SAMI;EAAA,IALJC,cAKI,QALJA,cAKI;EAAA,IAJJC,eAII,QAJJA,eAII;EAAA,IAHJC,kBAGI,QAHJA,kBAGI;EAAA,IAFJC,eAEI,QAFJA,eAEI;EAAA,IADDC,UACC;EACJ,IAAQC,MAAR,GAAmBR,MAAnB,CAAQQ,MAAR;;EACA,gBAA8C,qBAAS,EAAT,CAA9C;EAAA;EAAA,IAAOC,eAAP;EAAA,IAAwBC,kBAAxB;;EACA,gBAAsC,sBAAST,MAAT,EAAiBE,cAAjB,CAAtC;EAAA,+BAAQQ,IAAR;EAAA,IAAQA,IAAR,+BAAe,EAAf;EAAA,IAAmBC,KAAnB,aAAmBA,KAAnB;EAAA,IAA0BC,OAA1B,aAA0BA,OAA1B;;EACA,uBAAuB,kCAAvB;EAAA,IAAYC,MAAZ,oBAAQC,EAAR;;EACA,IAAMC,YAAY,GAAGF,MAAM,IAAIT,kBAAV,IAAgCA,kBAAkB,CAACY,MAAxE;EACA,IAAMC,SAAS,GAAGF,YAAY,GAAG,kCAAoBX,kBAApB,CAAH,GAA6C,EAA3E;;EACA,iBAAiD,sBAAS,+BAAQa,SAAR,CAAT,EAA6B;IAC5EC,SAAS,EAAE;MAAEJ,EAAE,EAAED;IAAN,CADiE;IAE5EM,IAAI,EAAE,CAACJ;EAFqE,CAA7B,CAAjD;EAAA,IAAcK,QAAd,cAAQV,IAAR;EAAA,IAAiCW,WAAjC,cAAwBT,OAAxB;;EAKA,IAAIA,OAAO,IAAIS,WAAX,IAA0BV,KAA9B,EAAqC,OAAO,IAAP;EACrC,IAAMW,OAAO,GAAGZ,IAAI,CAACa,UAAL,IAAmBb,IAAI,CAACT,SAAD,CAAvC;;EAEA,IAAIO,eAAe,KAAKD,MAAxB,EAAgC;IAC9BE,kBAAkB,CAACF,MAAD,CAAlB;IACA,OAAO,IAAP;EACD;;EAED,IAAQiB,YAAR,GAAyDlB,UAAzD,CAAQkB,YAAR;EAAA,IAAsBC,cAAtB,GAAyDnB,UAAzD,CAAsBmB,cAAtB;EAAA,IAAsCC,cAAtC,GAAyDpB,UAAzD,CAAsCoB,cAAtC;EACA,IAAMC,cAAc,GAAG,6BAAeL,OAAf,EAAwBG,cAAxB,CAAvB;EAEA,IAAMG,eAAe,GAAG,+BACtBF,cADsB,EAEtBpB,UAFsB,EAGtBqB,cAHsB,EAItBxB,eAJsB,CAAxB;EAMA,IAAM0B,eAAe,GAAG,6BAAeT,QAAf,EAAyBhB,kBAAzB,CAAxB;;EACA,IAAM0B,iBAAiB,mCAAQF,eAAR,GAA4BC,eAA5B,CAAvB;;EAEA,oBACE,gCAAC,oBAAD;IACE,eAAe,EAAEC,iBADnB;IAEE,YAAY,EAAEN,YAFhB;IAGE,eAAe,EAAEhB,eAHnB;IAIE,eAAe,EAAEH;EAJnB,EADF;AAQD,CAjDD;;AAmDAP,cAAc,CAACiC,SAAf,GAA2B;EACzB3B,kBAAkB,EAAE4B,sBAAUC,KADL;EAEzBlC,MAAM,EAAEiC,sBAAUE,MAAV,CAAiBC,UAFA;EAGzBnC,MAAM,EAAEgC,sBAAUE,MAAV,CAAiBC,UAHA;EAIzBlC,SAAS,EAAE+B,sBAAUI,MAAV,CAAiBD,UAJH;EAKzBjC,cAAc,EAAE8B,sBAAUE,MAAV,CAAiBC,UALR;EAMzBhC,eAAe,EAAE6B,sBAAUE,MAAV,CAAiBC,UANT;EAOzB9B,eAAe,EAAE2B,sBAAUK;AAPF,CAA3B;AAUAvC,cAAc,CAACwC,YAAf,GAA8B;EAC5BlC,kBAAkB,EAAE,EADQ;EAE5BC,eAAe,EAAE,2BAAM,CAAE;AAFG,CAA9B;AAKAP,cAAc,CAACwC,YAAf,GAA8B;EAC5BlC,kBAAkB,EAAE;AADQ,CAA9B;;eAIe,wBAAWN,cAAX,C"}
1
+ {"version":3,"file":"GTMEventRender.js","names":["GTMEventRender","router","action","actionKey","queryVariables","parentComponent","userPropsToDisplay","handleOnSuccess","eventProps","asPath","useState","currentLocation","setCurrentLocation","useQuery","data","error","loading","checkIfLoggedIn","userId","id","hasUserProps","length","userProps","buildUserQueryProps","getUser","variables","skip","userData","userLoading","gtmData","entityData","eventTrigger","propsToDisplay","eventEcommerce","dataLayerProps","buildDataLayer","dataLayerObject","buildNestedEvent","userLayerObject","buildUserLayer","extendedDataLayer","propTypes","PropTypes","array","object","isRequired","string","func","defaultProps","withRouter"],"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":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"GTMEventSwitch.js","names":["GTMEventSwitch","gtmEvents","clickState","clickId","props","window","length","clickEvents","regularEvents","GTMClickFactory","GTMEventFactory","GTMClickEvents","propTypes","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;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,OAAkD;EAAA,IAA/CC,SAA+C,QAA/CA,SAA+C;EAAA,IAApCC,UAAoC,QAApCA,UAAoC;EAAA,IAAxBC,OAAwB,QAAxBA,OAAwB;EAAA,IAAZC,KAAY;EACvE,IAAI,OAAOC,MAAP,KAAkB,WAAlB,IAAiC,CAACJ,SAAS,CAACK,MAAhD,EAAwD,OAAO,IAAP;;EACxD,uBAAuC,8BAAgBL,SAAhB,CAAvC;EAAA,IAAQM,WAAR,oBAAQA,WAAR;EAAA,IAAqBC,aAArB,oBAAqBA,aAArB;;EACA,IAAMC,eAAe,GAAGN,OAAO,GAAGO,2BAAH,GAAqBC,0BAApD;EAEA,OAAOT,UAAU,gBACf,gCAAC,eAAD;IAAiB,SAAS,EAAEK,WAA5B;IAAyC,OAAO,EAAEJ;EAAlD,GAA+DC,KAA/D,EADe,gBAGf,gCAAC,2BAAD;IAAiB,SAAS,EAAEI;EAA5B,GAA+CJ,KAA/C,EAHF;AAKD,CAVD;;AAYAJ,cAAc,CAACY,SAAf,GAA2B;EACzBT,OAAO,EAAEU,sBAAUC,MADM;EAEzBb,SAAS,EAAEY,sBAAUE,KAFI;EAGzBb,UAAU,EAAEW,sBAAUG;AAHG,CAA3B;AAMAhB,cAAc,CAACiB,YAAf,GAA8B;EAC5Bd,OAAO,EAAE,IADmB;EAE5BF,SAAS,EAAE,EAFiB;EAG5BC,UAAU,EAAE;AAHgB,CAA9B;eAMeF,c"}
1
+ {"version":3,"file":"GTMEventSwitch.js","names":["GTMEventSwitch","gtmEvents","clickState","clickId","props","window","length","filterGtmEvents","clickEvents","regularEvents","GTMClickFactory","GTMEventFactory","GTMClickEvents","propTypes","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;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,OAAkD;EAAA,IAA/CC,SAA+C,QAA/CA,SAA+C;EAAA,IAApCC,UAAoC,QAApCA,UAAoC;EAAA,IAAxBC,OAAwB,QAAxBA,OAAwB;EAAA,IAAZC,KAAY;EACvE,IAAI,OAAOC,MAAP,KAAkB,WAAlB,IAAiC,CAACJ,SAAS,CAACK,MAAhD,EAAwD,OAAO,IAAP;;EACxD,uBAAuC,IAAAC,wBAAA,EAAgBN,SAAhB,CAAvC;EAAA,IAAQO,WAAR,oBAAQA,WAAR;EAAA,IAAqBC,aAArB,oBAAqBA,aAArB;;EACA,IAAMC,eAAe,GAAGP,OAAO,GAAGQ,2BAAH,GAAqBC,0BAApD;EAEA,OAAOV,UAAU,gBACf,gCAAC,eAAD;IAAiB,SAAS,EAAEM,WAA5B;IAAyC,OAAO,EAAEL;EAAlD,GAA+DC,KAA/D,EADe,gBAGf,gCAAC,2BAAD;IAAiB,SAAS,EAAEK;EAA5B,GAA+CL,KAA/C,EAHF;AAKD,CAVD;;AAYAJ,cAAc,CAACa,SAAf,GAA2B;EACzBV,OAAO,EAAEW,qBAAA,CAAUC,MADM;EAEzBd,SAAS,EAAEa,qBAAA,CAAUE,KAFI;EAGzBd,UAAU,EAAEY,qBAAA,CAAUG;AAHG,CAA3B;AAMAjB,cAAc,CAACkB,YAAf,GAA8B;EAC5Bf,OAAO,EAAE,IADmB;EAE5BF,SAAS,EAAE,EAFiB;EAG5BC,UAAU,EAAE;AAHgB,CAA9B;eAMeF,c"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-and-push-web-vitals.js","names":["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;;AACA;;AAEA,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAwB,GAAM;EAClC,uBAAOC,aAAP;EACA,uBAAOA,aAAP;EACA,uBAAOA,aAAP;AACD,CAJD;;AAMA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,OAAyB;EAAA,IAAtBC,IAAsB,QAAtBA,IAAsB;EAAA,IAAhBC,KAAgB,QAAhBA,KAAgB;EAAA,IAATC,EAAS,QAATA,EAAS;EAC7C,IAAMC,OAAO,GAAG;IACdC,KAAK,EAAE,YADO;IAEdC,cAAc,EAAE,YAFF;IAGdC,YAAY,EAAEN,IAHA;IAIdO,WAAW,EAAEC,IAAI,CAACC,KAAL,CAAWT,IAAI,KAAK,KAAT,GAAiBC,KAAK,GAAG,IAAzB,GAAgCA,KAA3C,CAJC;IAKdS,WAAW,EAAER,EALC;IAMdS,cAAc,EAAE;EANF,CAAhB;EASA,iCAAgBR,OAAhB;AACD,CAXD;;eAaeL,qB"}
1
+ {"version":3,"file":"build-and-push-web-vitals.js","names":["buildAndPushWebVitals","getCLS","reportHandler","getFID","getLCP","name","delta","id","metrics","event","event_category","event_action","event_value","Math","round","event_label","nonInteraction","pushToDataLayer"],"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;;AACA;;AAEA,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAwB,GAAM;EAClC,IAAAC,iBAAA,EAAOC,aAAP;EACA,IAAAC,iBAAA,EAAOD,aAAP;EACA,IAAAE,iBAAA,EAAOF,aAAP;AACD,CAJD;;AAMA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,OAAyB;EAAA,IAAtBG,IAAsB,QAAtBA,IAAsB;EAAA,IAAhBC,KAAgB,QAAhBA,KAAgB;EAAA,IAATC,EAAS,QAATA,EAAS;EAC7C,IAAMC,OAAO,GAAG;IACdC,KAAK,EAAE,YADO;IAEdC,cAAc,EAAE,YAFF;IAGdC,YAAY,EAAEN,IAHA;IAIdO,WAAW,EAAEC,IAAI,CAACC,KAAL,CAAWT,IAAI,KAAK,KAAT,GAAiBC,KAAK,GAAG,IAAzB,GAAgCA,KAA3C,CAJC;IAKdS,WAAW,EAAER,EALC;IAMdS,cAAc,EAAE;EANF,CAAhB;EASA,IAAAC,2BAAA,EAAgBT,OAAhB;AACD,CAXD;;eAaeR,qB"}
@@ -1 +1 @@
1
- {"version":3,"file":"build-nested-event.js","names":["buildNestedEvent","ecommerce","propsObject","props","parentComponent","productDetailImpression","GTM_EVENT_NAMES","productClick","eventAction","eventTrigger","name","gtmActionLabel","isClickEvent","ON_CLICK","actionField","list","hasMultipleItems","Array","isArray","basicEventObject","GTM_PROPS","forEach","key","label","gtmValue","gtmKey","parsedProps","items","EVENT","ECOMMERCE","parsedProducts","eventObject","PRODUCTS","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;;;;;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,SAAD,EAAYC,WAAZ,EAAyBC,KAAzB,EAAgCC,eAAhC,EAAoD;EAAA;;EAC3E,IAAQC,uBAAR,GAAkDC,0BAAlD,CAAQD,uBAAR;EAAA,IAAiCE,YAAjC,GAAkDD,0BAAlD,CAAiCC,YAAjC;EACA,IAAQC,WAAR,GAAsCN,WAAtC,CAAQM,WAAR;EAAA,IAAqBC,YAArB,GAAsCP,WAAtC,CAAqBO,YAArB;EACA,IAAQC,IAAR,GAAiBN,eAAjB,CAAQM,IAAR;EACA,IAAMC,cAAc,GAAGL,2BAAgBE,WAAhB,CAAvB;EACA,IAAMI,YAAY,GAAGH,YAAY,KAAKI,mBAAjB,IAA6BF,cAAc,KAAKJ,YAArE;EACA,IAAMO,WAAW,GAAG;IAAEC,IAAI,EAAEL;EAAR,CAApB;EACA,IAAMM,gBAAgB,GAAGC,KAAK,CAACC,OAAN,CAAcf,KAAd,CAAzB;;EAEA,IAAI,CAACF,SAAL,EAAgB;IACd,IAAMkB,gBAAgB,GAAG,EAAzB;;IACAC,qBAAUC,OAAV,CAAkB,gBAAoB;MAAA,IAAjBC,GAAiB,QAAjBA,GAAiB;MAAA,IAAZC,KAAY,QAAZA,KAAY;MACpC,IAAMC,QAAQ,GAAGtB,WAAW,CAACoB,GAAD,CAA5B;MACA,IAAMG,MAAM,GAAGF,KAAK,IAAID,GAAxB;MACA,IAAIE,QAAJ,EAAcL,gBAAgB,CAACM,MAAD,CAAhB,GAA2BD,QAA3B;IACf,CAJD;;IAKA,IAAME,WAAW,GAAGV,gBAAgB,GAAG;MAAEW,KAAK,EAAExB;IAAT,CAAH,GAAsBA,KAA1D;IAEA,uCAAYgB,gBAAZ,GAAiCO,WAAjC;EACD;;EAED,IAAI,CAACf,cAAL,EAAqB,2DAAUiB,gBAAV,EAAkBpB,WAAlB,2CAAgCqB,oBAAhC,EAA4C1B,KAA5C;;EACrB,IAAIQ,cAAc,KAAKN,uBAAnB,IAA8CM,cAAc,KAAKJ,YAArE,EAAmF;IAAA;;IACjF,IAAMuB,cAAc,GAAGd,gBAAgB,GAAGb,KAAH,GAAW,CAACA,KAAD,CAAlD;IACA,IAAM4B,WAAW,GAAGnB,YAAY,wDACzBoB,mBADyB,EACdF,cADc,0DACEhB,WADF,iDAEzBkB,mBAFyB,EAEdF,cAFc,CAAhC;IAGA,2DACGF,gBADH,EACWpB,WADX,2CAEGqB,oBAFH,uCAEkBlB,cAFlB,EAEmCoB,WAFnC;EAID;;EAED,IAAME,eAAe,GAAGrB,YAAY,wDAC7BD,cAD6B,EACZR,KADY,0DACLW,WADK,iDAE7BH,cAF6B,EAEZR,KAFY,CAApC;EAGA,2DAAUyB,gBAAV,EAAkBpB,WAAlB,2CAAgCqB,oBAAhC,EAA4CI,eAA5C;AACD,CArCD;;eAuCejC,gB"}
1
+ {"version":3,"file":"build-nested-event.js","names":["buildNestedEvent","ecommerce","propsObject","props","parentComponent","productDetailImpression","GTM_EVENT_NAMES","productClick","eventAction","eventTrigger","name","gtmActionLabel","isClickEvent","ON_CLICK","actionField","list","hasMultipleItems","Array","isArray","basicEventObject","GTM_PROPS","forEach","key","label","gtmValue","gtmKey","parsedProps","items","EVENT","ECOMMERCE","parsedProducts","eventObject","PRODUCTS","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;;;;;;AAEA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,SAAD,EAAYC,WAAZ,EAAyBC,KAAzB,EAAgCC,eAAhC,EAAoD;EAAA;;EAC3E,IAAQC,uBAAR,GAAkDC,0BAAlD,CAAQD,uBAAR;EAAA,IAAiCE,YAAjC,GAAkDD,0BAAlD,CAAiCC,YAAjC;EACA,IAAQC,WAAR,GAAsCN,WAAtC,CAAQM,WAAR;EAAA,IAAqBC,YAArB,GAAsCP,WAAtC,CAAqBO,YAArB;EACA,IAAQC,IAAR,GAAiBN,eAAjB,CAAQM,IAAR;EACA,IAAMC,cAAc,GAAGL,0BAAA,CAAgBE,WAAhB,CAAvB;EACA,IAAMI,YAAY,GAAGH,YAAY,KAAKI,mBAAjB,IAA6BF,cAAc,KAAKJ,YAArE;EACA,IAAMO,WAAW,GAAG;IAAEC,IAAI,EAAEL;EAAR,CAApB;EACA,IAAMM,gBAAgB,GAAGC,KAAK,CAACC,OAAN,CAAcf,KAAd,CAAzB;;EAEA,IAAI,CAACF,SAAL,EAAgB;IACd,IAAMkB,gBAAgB,GAAG,EAAzB;;IACAC,oBAAA,CAAUC,OAAV,CAAkB,gBAAoB;MAAA,IAAjBC,GAAiB,QAAjBA,GAAiB;MAAA,IAAZC,KAAY,QAAZA,KAAY;MACpC,IAAMC,QAAQ,GAAGtB,WAAW,CAACoB,GAAD,CAA5B;MACA,IAAMG,MAAM,GAAGF,KAAK,IAAID,GAAxB;MACA,IAAIE,QAAJ,EAAcL,gBAAgB,CAACM,MAAD,CAAhB,GAA2BD,QAA3B;IACf,CAJD;;IAKA,IAAME,WAAW,GAAGV,gBAAgB,GAAG;MAAEW,KAAK,EAAExB;IAAT,CAAH,GAAsBA,KAA1D;IAEA,uCAAYgB,gBAAZ,GAAiCO,WAAjC;EACD;;EAED,IAAI,CAACf,cAAL,EAAqB,2DAAUiB,gBAAV,EAAkBpB,WAAlB,2CAAgCqB,oBAAhC,EAA4C1B,KAA5C;;EACrB,IAAIQ,cAAc,KAAKN,uBAAnB,IAA8CM,cAAc,KAAKJ,YAArE,EAAmF;IAAA;;IACjF,IAAMuB,cAAc,GAAGd,gBAAgB,GAAGb,KAAH,GAAW,CAACA,KAAD,CAAlD;IACA,IAAM4B,WAAW,GAAGnB,YAAY,wDACzBoB,mBADyB,EACdF,cADc,0DACEhB,WADF,iDAEzBkB,mBAFyB,EAEdF,cAFc,CAAhC;IAGA,2DACGF,gBADH,EACWpB,WADX,2CAEGqB,oBAFH,uCAEkBlB,cAFlB,EAEmCoB,WAFnC;EAID;;EAED,IAAME,eAAe,GAAGrB,YAAY,wDAC7BD,cAD6B,EACZR,KADY,0DACLW,WADK,iDAE7BH,cAF6B,EAEZR,KAFY,CAApC;EAGA,2DAAUyB,gBAAV,EAAkBpB,WAAlB,2CAAgCqB,oBAAhC,EAA4CI,eAA5C;AACD,CArCD;;eAuCejC,gB"}
@@ -1 +1 @@
1
- {"version":3,"file":"push-to-data-layer.js","names":["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;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,SAAD,EAAYC,UAAZ,EAA2B;EACjD,IAAID,SAAS,IAAIE,MAAM,CAACF,SAAxB,EAAmC;IACjC,IAAIC,UAAJ,EAAgB;IAChBC,MAAM,CAACF,SAAP,CAAiBG,IAAjB,CAAsBH,SAAtB;EACD;AACF,CALD;;eAOeD,e"}
1
+ {"version":3,"file":"push-to-data-layer.js","names":["pushToDataLayer","dataLayer","isPageView","window","resetDataLayer","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;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,SAAD,EAAYC,UAAZ,EAA2B;EACjD,IAAID,SAAS,IAAIE,MAAM,CAACF,SAAxB,EAAmC;IACjC,IAAIC,UAAJ,EAAgB,IAAAE,0BAAA;IAChBD,MAAM,CAACF,SAAP,CAAiBI,IAAjB,CAAsBJ,SAAtB;EACD;AACF,CALD;;eAOeD,e"}
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["load","app","events","once","addComponent","key","component","name","PLUGIN_NAME","version","pkg","pluginName"],"sources":["../src/index.js"],"sourcesContent":["import dynamic from 'next/dynamic';\n\nimport pkg from '../package.json';\nimport { PLUGIN_NAME } from './constants';\n\nexport default async function load(app) {\n app.events.once('load:custom:page-builder:component', addComponent => {\n addComponent({\n key: 'gtm',\n component: dynamic(() =>\n import(/* webpackChunkName: \"blazePbGoogleTagManager\" */ './GoogleTagManager')\n )\n });\n addComponent({\n key: 'gtm-events',\n component: dynamic(() =>\n import(/* webpackChunkName: \"blazePbGoogleTagManagerEvent\" */ './GoogleTagManagerEvent')\n )\n });\n });\n\n return {\n name: PLUGIN_NAME,\n version: pkg.version\n };\n}\n\nload.pluginName = PLUGIN_NAME;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;;;;;SAE8BA,I;;;;;wFAAf,iBAAoBC,GAApB;IAAA;MAAA;QAAA;UAAA;YACbA,GAAG,CAACC,MAAJ,CAAWC,IAAX,CAAgB,oCAAhB,EAAsD,UAAAC,YAAY,EAAI;cACpEA,YAAY,CAAC;gBACXC,GAAG,EAAE,KADM;gBAEXC,SAAS,EAAE,yBAAQ;kBAAA;oBAAA,uCACwC,oBADxC;kBAAA;gBAAA,CAAR;cAFA,CAAD,CAAZ;cAMAF,YAAY,CAAC;gBACXC,GAAG,EAAE,YADM;gBAEXC,SAAS,EAAE,yBAAQ;kBAAA;oBAAA,uCAC6C,yBAD7C;kBAAA;gBAAA,CAAR;cAFA,CAAD,CAAZ;YAMD,CAbD;YADa,iCAgBN;cACLC,IAAI,EAAEC,sBADD;cAELC,OAAO,EAAEC,oBAAID;YAFR,CAhBM;;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,C;;;;AAsBfT,IAAI,CAACW,UAAL,GAAkBH,sBAAlB"}
1
+ {"version":3,"file":"index.js","names":["load","app","events","once","addComponent","key","component","dynamic","name","PLUGIN_NAME","version","pkg","pluginName"],"sources":["../src/index.js"],"sourcesContent":["import dynamic from 'next/dynamic';\n\nimport pkg from '../package.json';\nimport { PLUGIN_NAME } from './constants';\n\nexport default async function load(app) {\n app.events.once('load:custom:page-builder:component', addComponent => {\n addComponent({\n key: 'gtm',\n component: dynamic(() =>\n import(/* webpackChunkName: \"blazePbGoogleTagManager\" */ './GoogleTagManager')\n )\n });\n addComponent({\n key: 'gtm-events',\n component: dynamic(() =>\n import(/* webpackChunkName: \"blazePbGoogleTagManagerEvent\" */ './GoogleTagManagerEvent')\n )\n });\n });\n\n return {\n name: PLUGIN_NAME,\n version: pkg.version\n };\n}\n\nload.pluginName = PLUGIN_NAME;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;;;;;SAE8BA,I;;;;;wFAAf,iBAAoBC,GAApB;IAAA;MAAA;QAAA;UAAA;YACbA,GAAG,CAACC,MAAJ,CAAWC,IAAX,CAAgB,oCAAhB,EAAsD,UAAAC,YAAY,EAAI;cACpEA,YAAY,CAAC;gBACXC,GAAG,EAAE,KADM;gBAEXC,SAAS,EAAE,IAAAC,mBAAA,EAAQ;kBAAA;oBAAA,uCACwC,oBADxC;kBAAA;gBAAA,CAAR;cAFA,CAAD,CAAZ;cAMAH,YAAY,CAAC;gBACXC,GAAG,EAAE,YADM;gBAEXC,SAAS,EAAE,IAAAC,mBAAA,EAAQ;kBAAA;oBAAA,uCAC6C,yBAD7C;kBAAA;gBAAA,CAAR;cAFA,CAAD,CAAZ;YAMD,CAbD;YADa,iCAgBN;cACLC,IAAI,EAAEC,sBADD;cAELC,OAAO,EAAEC,mBAAA,CAAID;YAFR,CAhBM;;UAAA;UAAA;YAAA;QAAA;MAAA;IAAA;EAAA,C;;;;AAsBfV,IAAI,CAACY,UAAL,GAAkBH,sBAAlB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blaze-cms/plugin-gtm-fe",
3
- "version": "0.124.0-alpha.28",
3
+ "version": "0.124.0-alpha.30",
4
4
  "description": "Blaze GTM plugin fe",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib-es/index.js",
@@ -28,8 +28,8 @@
28
28
  "license": "GPL-3.0",
29
29
  "dependencies": {
30
30
  "@blaze-cms/core-auth-ui": "^0.119.0",
31
- "@blaze-cms/nextjs-components": "^0.124.0-alpha.2",
32
- "@blaze-cms/react-page-builder": "^0.124.0-alpha.28",
31
+ "@blaze-cms/nextjs-components": "^0.124.0-alpha.30",
32
+ "@blaze-cms/react-page-builder": "^0.124.0-alpha.30",
33
33
  "@blaze-cms/setup-ui": "^0.92.0",
34
34
  "core-js": "^3.2.1",
35
35
  "regenerator-runtime": "^0.13.3",
@@ -45,5 +45,5 @@
45
45
  "lib/*",
46
46
  "lib-es/*"
47
47
  ],
48
- "gitHead": "8f4ee8b51a1bad68eb9af4a3bf8e4e8a4f92c015"
48
+ "gitHead": "90e01c782864a7ffe728478eaddcdee3791c8d07"
49
49
  }