@claspo/renderer 16.6.4 → 16.6.5
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/action/actions/CloseWidgetAction.d.ts +2 -2
- package/action/actions/CloseWidgetAction.js +1 -1
- package/action/actions/GoToViewAction.d.ts +1 -2
- package/action/actions/GoToViewAction.js +1 -1
- package/action/actions/OpenLinkAction.d.ts +2 -2
- package/action/actions/OpenLinkAction.js +1 -1
- package/package.json +1 -1
- package/action/actions/TrackClick.d.ts +0 -5
- package/action/actions/TrackClick.js +0 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export default class CloseWidgetAction
|
|
1
|
+
export default class CloseWidgetAction {
|
|
2
2
|
constructor(eventEmitter: any, actionConfig: any, configService: any, tracking: any);
|
|
3
3
|
type: string;
|
|
4
4
|
params: any;
|
|
5
5
|
eventEmitter: any;
|
|
6
|
+
configService: any;
|
|
6
7
|
tracking: any;
|
|
7
8
|
execute(): Promise<any>;
|
|
8
9
|
}
|
|
9
|
-
import TrackClick from "./TrackClick";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import SysActionTypes from"../SysActionTypes";export default class CloseWidgetAction{constructor(t,i,s,e){this.type=SysActionTypes.CLOSE_WIDGET,this.params=i.params,this.eventEmitter=t,this.configService=s,this.tracking=e}execute(){return new Promise(t=>{this.eventEmitter.emit(this.type,()=>{t(!0)}),this.tracking.trackClick({params:this.params.trackClickParams,countAsTargetAction:this.params.countAsTargetAction}),this.tracking.trackTargetAction(this.params.countAsTargetAction)})}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export default class GoToViewAction
|
|
1
|
+
export default class GoToViewAction {
|
|
2
2
|
constructor(eventEmitter: any, actionConfig: any, configService: any, form: any, viewRouter: any, documentModel: any, tracking: any);
|
|
3
3
|
type: string;
|
|
4
4
|
eventEmitter: any;
|
|
@@ -9,4 +9,3 @@ export default class GoToViewAction extends TrackClick {
|
|
|
9
9
|
tracking: any;
|
|
10
10
|
execute(): Promise<boolean>;
|
|
11
11
|
}
|
|
12
|
-
import TrackClick from "./TrackClick";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import SysActionTypes from"../SysActionTypes";
|
|
1
|
+
import SysActionTypes from"../SysActionTypes";export default class GoToViewAction{constructor(t,i,e,s,o,r,c){this.type=SysActionTypes.GO_TO_VIEW,this.eventEmitter=t,this.config=i,this.form=s,this.viewRouter=o,this.documentModel=r,this.tracking=c}execute(){this.form.markAsTouched();let t=!1;const i=this.viewRouter.getCurrentViewIndex();if(this.config.params.viewId){t=i<this.documentModel.getViews().findIndex(t=>t.id===this.config.params.viewId)}else t=i<this.config.params.viewIndex;return t&&!this.form.isValid()?(this.eventEmitter.emit("INVALID_CONTACT_DATA_SUBMIT_ATTEMPT"),Promise.resolve(!1)):(this.eventEmitter.emit(this.type,this.config.params.viewId||this.config.params.viewIndex),this.config.params.trackClick&&this.tracking.trackClick({params:this.config.params.trackClickParams,countAsTargetAction:this.config.params.countAsTargetAction}),Promise.resolve(!0))}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export default class OpenLinkAction
|
|
1
|
+
export default class OpenLinkAction {
|
|
2
2
|
static appendQueryParamsToLink(link: any, queryParams: any): string;
|
|
3
3
|
static getUtmTags(utmTagConfig: any, dynamicParamsMap: any): {};
|
|
4
4
|
static getDynamicUtmParamsMap(configService: any): Map<string, string>;
|
|
@@ -6,7 +6,7 @@ export default class OpenLinkAction extends TrackClick {
|
|
|
6
6
|
constructor(actionConfig: any, configService: any, tracking: any);
|
|
7
7
|
type: string;
|
|
8
8
|
params: any;
|
|
9
|
+
configService: any;
|
|
9
10
|
tracking: any;
|
|
10
11
|
execute(state: any, event: any): Promise<boolean>;
|
|
11
12
|
}
|
|
12
|
-
import TrackClick from "./TrackClick";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import SysActionTypes from"../SysActionTypes";import sanitizeUrl from"@claspo/common/url/sanitizeUrl";export default class OpenLinkAction{constructor(t,a,e){this.type=SysActionTypes.OPEN_LINK,this.params=t.params,this.configService=a,this.tracking=e}execute(t,a){a.stopPropagation(),this.tracking.send("FormClick_[Name]"),this.tracking.trackTargetAction(this.params.countAsTargetAction),this.tracking.trackClick({params:this.params.trackClickParams,countAsTargetAction:this.params.countAsTargetAction});let e=this.params.link;const n=this.configService.getConfig("utmTag");if(this.params.tagsEnabled&&(null==n?void 0:n.enabled)){const t=OpenLinkAction.getDynamicUtmParamsMap(this.configService),a=OpenLinkAction.getUtmTags(n,t);e=OpenLinkAction.appendQueryParamsToLink(this.params.link,a)}return window.open(sanitizeUrl(e),this.params.target),Promise.resolve(!0)}static appendQueryParamsToLink(t,a){const e=new URL(t);return Object.keys(a).forEach(t=>{e.searchParams.has(t)||e.searchParams.append(t,a[t])}),e.href}static getUtmTags(t,a){const e={},n=new Map([["utmSource","utm_source"],["utmMedium","utm_medium"],["utmCampaign","utm_campaign"],["utmContent","utm_content"],["utmTerm","utm_term"]]);return["utmSource","utmMedium","utmCampaign","utmContent","utmTerm"].filter(a=>void 0!==(null==t?void 0:t[a])).forEach(i=>{const o=n.get(i),s=a.has(t[i])?a.get(t[i]):encodeURIComponent(t[i]);e[o]=s}),(null==t?void 0:t.customTagsEnabled)&&Object.keys((null==t?void 0:t.utmCustomTags)||{}).filter(a=>{var e;return void 0!==(null===(e=null==t?void 0:t.utmCustomTags)||void 0===e?void 0:e[a])}).forEach(n=>{e[n]=a.has(t.utmCustomTags[n])?a.get(t.utmCustomTags[n]):encodeURIComponent(t.utmCustomTags[n])}),e}static getDynamicUtmParamsMap(t){const a=a=>OpenLinkAction.normalizeUtmParam(t.getConfig(a));return new Map([["$widgetId",a("widgetId")],["$widgetName",encodeURIComponent(a("widgetName"))],["$widgetType",a("layoutType")],["$widgetLang",a("browserLanguage")],["$contactId",encodeURIComponent(a("clContactId"))]])}static normalizeUtmParam(t){return null==t?"":String(t)}}
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import ErrorLogger from"../../error/ErrorLogger";export default class TrackClick{constructor(e){this.configService=e}track(e,i){if(this.configService.getConfig("widgetDebugMode"))return;const r=this.configService.getConfig("formVariantId");if(r){const e=+r.split("v")[1],o=+r.split("v")[0].replace("f",""),g=this.configService.getConfig("hostUrl")+"forms/v1/event",n=this.configService.getConfig("clCustomerId"),t=this.configService.getConfig("clContactId"),c=this.configService.getConfig("triggeredBy"),a=this.configService.getConfig("interactionId"),f=this.configService.getConfig("revision"),s=this.configService.getConfig("appearanceRevision"),v=this.configService.getConfig("browserLanguage"),d=this.configService.getConfig("browserLanguage"),l=this.configService.getConfig("appearanceLanguage"),C=btoa(JSON.stringify({formId:o,variantId:e,clCustomerId:n,contactId:t,iid:a,revision:f,appearanceRevision:s,type:"click",referrer:window.location.href,params:i,triggeredBy:c,lang:v,browserLanguage:d,appearanceLanguage:l}));try{navigator.sendBeacon(g,C)}catch(e){ErrorLogger.log(e)}}else console.warn(`${e} could not access rendererConfig.formVariantId to track click event`)}}
|