@magicpixel/rn-mp-client-sdk 0.10.0 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/common/app-types.js.map +1 -1
- package/lib/commonjs/common/data-store.js +10 -0
- package/lib/commonjs/common/data-store.js.map +1 -1
- package/lib/commonjs/index.js +16 -5
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/common/app-types.js.map +1 -1
- package/lib/module/common/data-store.js +10 -0
- package/lib/module/common/data-store.js.map +1 -1
- package/lib/module/index.js +16 -5
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/common/app-types.d.ts +17 -0
- package/lib/typescript/common/data-store.d.ts +4 -1
- package/lib/typescript/index.d.ts +2 -1
- package/package.json +1 -1
- package/src/common/app-types.ts +18 -0
- package/src/common/data-store.ts +10 -0
- package/src/index.tsx +17 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["app-types.ts"],"sourcesContent":["import type { Logger } from './logger';\n\nexport interface MapLike<T = any> {\n [key: string]: T;\n}\n\nexport interface RunQueueModel {\n sseOnly: boolean;\n name: string;\n dcrName: string;\n eventId: string;\n dcrPayload?: Record<string, any>;\n}\n\nexport type TypedAny = Record<\n string,\n | string\n | number\n | boolean\n | string[]\n | boolean[]\n | number[]\n | Record<string, string | number | boolean | string[] | boolean[] | number[]>\n>;\n\nexport type EventProcessorFn = (payload: TypedAny) => void;\n\nexport interface AppCustomerInfo {\n first_name?: string;\n last_name?: string;\n email?: string;\n phone_number: number;\n country_code: number;\n city?: string;\n state?: string;\n country?: string;\n}\n\nexport interface AppPageLoad {\n page_name: string;\n is_entry?: number;\n deep_link_url?: string;\n app_version?: string;\n}\n\nexport interface DeJsvHelper {\n log: typeof Logger.logDbg;\n err: typeof Logger.logError;\n}\n\nexport interface QcInfoItem {\n nm: string;\n id: string;\n st: boolean;\n}\n\nexport interface TagInfoItem {\n id: string;\n nm: string;\n pr: string;\n prNm: string;\n status: boolean;\n qc: string | string[];\n}\n\nexport type ReplaceMode = 'kph' | 'rph';\n\nexport interface HydrateTagInfo {\n isInError: boolean;\n content: string | number | null;\n errCd: string; // error code\n errMsg: string; // any descriptive error message\n}\n\nexport interface ReportTagItem {\n st: 200 | 900 | 1000 | number; // what happened to this tag?\n t: string; // tag id\n p: string; // provider id\n tNm: string;\n req: any; // request payload\n}\n\nexport interface Report {\n envName: string; // environment name inside magic pixel\n envId: string; // environment id inside magic pixel\n pname?: string; // page name\n evt: string; // dcr event if that triggered this report\n evtId: string; // event id\n dt?: number; // device type (converted to int)\n ln?: number; // language (converted to int)\n bw?: number; // browser name (converted to int)\n dm?: string; // clean domain name\n items: ReportTagItem[]; // list of tag items fired on that page for that condition\n tagCt: number; // expected tag count on this page\n dws: 'j' | 'n'; // down stream configuration. java or node\n v: string; // client sdk version for this call\n}\n\nexport interface UrlInfo {\n tfUrl: string;\n errUrl: string;\n rptUrl: string;\n infoUrl: string;\n baseUrl: string;\n attrInfoUrl: string;\n idlUrl: string;\n}\n\nexport interface VisitInfo {\n visitId: string;\n visitTs: number;\n visitCt: number;\n visitDepth: number;\n visitVer: number;\n}\n\nexport interface VisitorInfo {\n dId: string;\n mId: string;\n st: number;\n}\n\nexport interface SdkInitOptions {\n orgId: string;\n env: string;\n projectId: string;\n baseUrl: string;\n\n device_type?: string;\n\n app_version?: string;\n os_version?: string;\n}\n\nexport type EventBusCallback = (event: string, payload: any) => void;\n"],"mappings":""}
|
|
1
|
+
{"version":3,"names":[],"sources":["app-types.ts"],"sourcesContent":["import type { Logger } from './logger';\n\nexport interface MapLike<T = any> {\n [key: string]: T;\n}\n\nexport interface RunQueueModel {\n sseOnly: boolean;\n name: string;\n dcrName: string;\n eventId: string;\n dcrPayload?: Record<string, any>;\n}\n\nexport type TypedAny = Record<\n string,\n | string\n | number\n | boolean\n | string[]\n | boolean[]\n | number[]\n | Record<string, string | number | boolean | string[] | boolean[] | number[]>\n>;\n\nexport type EventProcessorFn = (payload: TypedAny) => void;\n\nexport interface AppCustomerInfo {\n first_name?: string;\n last_name?: string;\n email?: string;\n phone_number: number;\n country_code: number;\n city?: string;\n state?: string;\n country?: string;\n}\n\nexport interface AppPageLoad {\n page_name: string;\n is_entry?: number;\n deep_link_url?: string;\n app_version?: string;\n}\n\nexport interface DeJsvHelper {\n log: typeof Logger.logDbg;\n err: typeof Logger.logError;\n}\n\nexport interface QcInfoItem {\n nm: string;\n id: string;\n st: boolean;\n}\n\nexport interface TagInfoItem {\n id: string;\n nm: string;\n pr: string;\n prNm: string;\n status: boolean;\n qc: string | string[];\n}\n\nexport type ReplaceMode = 'kph' | 'rph';\n\nexport interface HydrateTagInfo {\n isInError: boolean;\n content: string | number | null;\n errCd: string; // error code\n errMsg: string; // any descriptive error message\n}\n\nexport interface ReportTagItem {\n st: 200 | 900 | 1000 | number; // what happened to this tag?\n t: string; // tag id\n p: string; // provider id\n tNm: string;\n req: any; // request payload\n}\n\nexport interface Report {\n envName: string; // environment name inside magic pixel\n envId: string; // environment id inside magic pixel\n pname?: string; // page name\n evt: string; // dcr event if that triggered this report\n evtId: string; // event id\n dt?: number; // device type (converted to int)\n ln?: number; // language (converted to int)\n bw?: number; // browser name (converted to int)\n dm?: string; // clean domain name\n items: ReportTagItem[]; // list of tag items fired on that page for that condition\n tagCt: number; // expected tag count on this page\n dws: 'j' | 'n'; // down stream configuration. java or node\n v: string; // client sdk version for this call\n}\n\nexport interface UrlInfo {\n tfUrl: string;\n errUrl: string;\n rptUrl: string;\n infoUrl: string;\n baseUrl: string;\n attrInfoUrl: string;\n idlUrl: string;\n}\n\nexport interface VisitInfo {\n visitId: string;\n visitTs: number;\n visitCt: number;\n visitDepth: number;\n visitVer: number;\n}\n\nexport interface VisitorInfo {\n dId: string;\n mId: string;\n st: number;\n}\n\nexport interface SdkInitOptions {\n orgId: string;\n env: string;\n projectId: string;\n baseUrl: string;\n\n device_type?: string;\n\n app_version?: string;\n os_version?: string;\n}\n\nexport interface MpDeviceInfo {\n package_name?: string; // app package name like com.company.starter\n short_version?: string;\n long_version?: string;\n os_version: string;\n device_model_name: string;\n locale?: string;\n timezone_abbreviation?: string;\n carrier?: string;\n screen_width?: number;\n screen_height?: number;\n screen_density?: number;\n cpu_cores?: number;\n ext_storage?: number;\n free_storage?: number;\n device_timezone?: string;\n}\n\nexport type EventBusCallback = (event: string, payload: any) => void;\n"],"mappings":""}
|
|
@@ -91,6 +91,14 @@ class DataStore {
|
|
|
91
91
|
return this.sdkInitOptions;
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
+
static setDeviceInfo(info) {
|
|
95
|
+
this.deviceInfo = info;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
static getDeviceInfo() {
|
|
99
|
+
return this.deviceInfo;
|
|
100
|
+
}
|
|
101
|
+
|
|
94
102
|
static setSdkInitOptions(options) {
|
|
95
103
|
this.sdkInitOptions = options;
|
|
96
104
|
}
|
|
@@ -383,6 +391,8 @@ _defineProperty(DataStore, "isProcessing", false);
|
|
|
383
391
|
|
|
384
392
|
_defineProperty(DataStore, "sdkInitOptions", void 0);
|
|
385
393
|
|
|
394
|
+
_defineProperty(DataStore, "deviceInfo", void 0);
|
|
395
|
+
|
|
386
396
|
_defineProperty(DataStore, "interestedClientSideEvents", []);
|
|
387
397
|
|
|
388
398
|
_defineProperty(DataStore, "interestedServerSideEvents", []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CORE_VERSION","DataStore","init","clientSdk","setMpEnv","s","ev","Platform","OS","devicePlatform","toLowerCase","Utils","isTablet","deviceType","interestedClientSideEvents","_makeUniqueStringArray","dtmE","ctmE","mpDlE","interestedServerSideEvents","sseDtmE","sseCtmE","sseMpDlE","interestedAllEvents","resetCollectorUrl","c_url","v_id","p_id","isDataStoreInitialized","baseCollectorUrl","sdkEnv","vendorId","projectId","tagsBaseUrl","urls","tfUrl","errUrl","rptUrl","infoUrl","baseUrl","attrInfoUrl","idlUrl","enQueueTMFire","sseOnly","name","dcrName","eventId","dcrPayload","runQueue","push","isDataStoreReady","shouldExecuteTMForEvent","eventName","indexOf","shouldExecuteSST","shouldExecuteClientSideTm","getSdkPcKey","pcKey","getSdkInitOptions","sdkInitOptions","setSdkInitOptions","options","deQueueTMFire","length","pop","isTagManagerProcessing","isProcessing","setTagManagerProcessing","status","getSdkDataElements","d","getSdkQC","qc","hasOneSSTTag","sst","getSSTDownStream","dws_s_t","getClientDownStream","dws_c_t","getClientSdk","getSSTUrl","getAttrInfoUrl","setVisitInfo","visitInfo","visitInfoToString","visitVer","visitId","visitTs","visitCt","visitDepth","undefined","setVisitorInfo","visitorInfo","getDebugId","debugId","getErrorReportUrl","getIdlUrl","getSdkVersion","v","setDebugId","dbgId","shouldFireSstForEvent","addCommonCookie","key","value","commonCookies","getCommonCookies","getUrlInfo","getSdkTags","t","getSdkProviders","p","getPrivacyCompliance","prStatus","setPrivacyCompliance","storeData","AsyncStorage","setItem","JSON","stringify","getDataFromStorage","getItem","parse","getDataElements","dataElements","setDataElements","de","getPageLang","pageLang","getDeviceOs","getDataElementHelpers","log","Logger","logDbg","err","logError","getPageName","getDataElementValue","param","setPageLang","lang","getSdkPageLangKey","langKey","setDataElement","setValidQc","qcList","qcInfo","validQcList","validQcInfoList","getValidQcList","getValidQcInfo","setTransFunctions","elements","transFunctions","getTransFunctions","getOperatingSystem","getVisitId","overrideDeviceType","trim","getDeviceType","getDeviceId","dId","getMpId","mId","getVisitorInfoAsString","getOrgId","getCoreVersion","getMpEnv","mpEnvShort","shortEnv"],"sources":["data-store.ts"],"sourcesContent":["import AsyncStorage from '@react-native-async-storage/async-storage';\nimport type {\n DeJsvHelper,\n MapLike,\n QcInfoItem,\n RunQueueModel,\n SdkInitOptions,\n UrlInfo,\n VisitInfo,\n VisitorInfo,\n} from './app-types';\nimport { Logger } from './logger';\nimport type {\n ClientSdkDeItem,\n ClientSdkPrItem,\n ClientSdkQcItem,\n ClientSdkTagItem,\n MpClientSdk,\n} from '../models/mp-client-sdk';\nimport { Platform } from 'react-native';\nimport { Utils } from './utils';\n\nconst CORE_VERSION = '0.8.6';\n\nexport class DataStore {\n private static isDataStoreInitialized = false;\n private static dataElements: MapLike = {};\n private static validQcList: string[];\n private static validQcInfoList: Array<QcInfoItem> = [];\n private static transFunctions: MapLike = {};\n private static prStatus = true;\n private static clientSdk: MpClientSdk;\n private static urls: UrlInfo;\n private static debugId: string;\n private static visitorInfo: VisitorInfo;\n private static visitInfo: VisitInfo;\n private static pageLang = 'en';\n private static mpEnvShort: 'stg' | 'prd';\n private static devicePlatform = 'unknown';\n private static deviceType = 'mobile';\n private static runQueue: RunQueueModel[] = [];\n private static isProcessing = false;\n private static sdkInitOptions: SdkInitOptions;\n\n private static interestedClientSideEvents: string[] = [];\n private static interestedServerSideEvents: string[] = [];\n private static interestedAllEvents: string[] = [];\n\n private static commonCookies: Record<string, string> = {};\n\n static async init(clientSdk: MpClientSdk): Promise<void> {\n this.clientSdk = clientSdk;\n this.setMpEnv(clientSdk?.s?.ev === 'staging' ? 'stg' : 'prd');\n if (typeof Platform !== 'undefined' && typeof Platform.OS !== 'undefined') {\n this.devicePlatform = Platform.OS.toLowerCase();\n }\n\n if (Utils.isTablet()) {\n this.deviceType = 'tablet';\n } else {\n this.deviceType = 'mobile';\n }\n\n this.interestedClientSideEvents = Utils._makeUniqueStringArray([\n ...(clientSdk.dtmE ?? []),\n ...(clientSdk.ctmE ?? []),\n ...(clientSdk.mpDlE ?? []),\n ]);\n\n this.interestedServerSideEvents = Utils._makeUniqueStringArray([\n ...(clientSdk.sseDtmE ?? []),\n ...(clientSdk.sseCtmE ?? []),\n ...(clientSdk.sseMpDlE ?? []),\n ]);\n\n this.interestedAllEvents = Utils._makeUniqueStringArray([\n ...this.interestedClientSideEvents,\n ...this.interestedServerSideEvents,\n ]);\n\n this.resetCollectorUrl(\n clientSdk.s.c_url,\n clientSdk.s.ev,\n clientSdk.s.v_id,\n clientSdk.s.p_id\n );\n this.isDataStoreInitialized = true;\n }\n\n static resetCollectorUrl(\n baseCollectorUrl: string,\n sdkEnv: string,\n vendorId: string,\n projectId: string\n ): boolean {\n const tagsBaseUrl = `${baseCollectorUrl}/${\n sdkEnv === 'staging' ? 's' : 'p'\n }/${vendorId}/${projectId}`;\n this.urls = {\n tfUrl: tagsBaseUrl + '/sst',\n errUrl: tagsBaseUrl + '/err',\n rptUrl: tagsBaseUrl + '/report',\n infoUrl: tagsBaseUrl + '/info',\n baseUrl: baseCollectorUrl,\n attrInfoUrl: baseCollectorUrl + `/idl/${vendorId}/attrInfo`,\n idlUrl:\n baseCollectorUrl +\n `/idl/${vendorId}/idl${sdkEnv === 'staging' ? '-staging' : ''}`,\n };\n return true;\n }\n\n static enQueueTMFire(\n sseOnly: boolean,\n name: string,\n dcrName: string,\n eventId: string,\n dcrPayload?: Record<string, any>\n ): void {\n this.runQueue.push({ sseOnly, name, dcrName, eventId, dcrPayload });\n }\n\n static isDataStoreReady(): boolean {\n return this.isDataStoreInitialized;\n }\n\n static shouldExecuteTMForEvent(eventName: string): boolean {\n return this.interestedAllEvents.indexOf(eventName) > -1;\n }\n\n static shouldExecuteSST(eventName: string): boolean {\n return this.interestedServerSideEvents.indexOf(eventName) > -1;\n }\n\n static shouldExecuteClientSideTm(eventName: string): boolean {\n return this.interestedClientSideEvents.indexOf(eventName) > -1;\n }\n\n static getSdkPcKey(): string {\n return this.clientSdk.pcKey;\n }\n\n static getSdkInitOptions(): SdkInitOptions {\n return this.sdkInitOptions;\n }\n\n static setSdkInitOptions(options: SdkInitOptions): void {\n this.sdkInitOptions = options;\n }\n\n static deQueueTMFire(): RunQueueModel {\n return this.runQueue.length > 0 ? this.runQueue.pop() : null;\n }\n\n static isTagManagerProcessing(): boolean {\n return this.isProcessing;\n }\n\n static setTagManagerProcessing(status: boolean): void {\n this.isProcessing = status;\n }\n\n static getSdkDataElements(): MapLike<ClientSdkDeItem> {\n return this.clientSdk?.d || {};\n }\n\n static getSdkQC(): ClientSdkQcItem[] {\n return this.clientSdk?.qc || [];\n }\n\n static hasOneSSTTag(): boolean {\n return this.clientSdk.s.sst;\n }\n\n static getSSTDownStream(): 'j' | 'n' {\n return this.clientSdk.s.dws_s_t;\n }\n\n static getClientDownStream(): 'j' | 'n' {\n return this.clientSdk.s.dws_c_t;\n }\n\n static getClientSdk(): MpClientSdk {\n return this.clientSdk;\n }\n\n static getSSTUrl(): string {\n return this.urls.tfUrl;\n }\n\n static getAttrInfoUrl(): string {\n return this.urls.attrInfoUrl;\n }\n\n static setVisitInfo(visitInfo: VisitInfo): void {\n this.visitInfo = visitInfo;\n }\n\n static visitInfoToString(): string {\n return this.visitInfo\n ? `${this.visitInfo.visitVer}|${this.visitInfo.visitId}|${this.visitInfo.visitTs}|${this.visitInfo.visitCt}|${this.visitInfo.visitDepth}`\n : undefined;\n }\n\n static setVisitorInfo(visitorInfo: VisitorInfo): void {\n this.visitorInfo = visitorInfo;\n }\n\n static getDebugId(): string {\n return this.debugId;\n }\n\n static getErrorReportUrl(): string {\n return this.urls.errUrl;\n }\n\n static getIdlUrl(): string {\n return this.urls?.idlUrl;\n }\n\n static getSdkVersion(): string {\n return this.clientSdk.s.v;\n }\n\n static setDebugId(dbgId: string): void {\n this.debugId = dbgId;\n }\n\n static shouldFireSstForEvent(eventName: string): boolean {\n return this.clientSdk?.sseMpDlE?.indexOf(eventName) > -1;\n }\n\n static addCommonCookie(key: string, value: string): void {\n this.commonCookies[key] = value;\n }\n\n static getCommonCookies(): Record<string, string> {\n return this.commonCookies;\n }\n\n static getUrlInfo(): UrlInfo {\n return this.urls;\n }\n\n static getSdkTags(): MapLike<ClientSdkTagItem> {\n return this?.clientSdk?.t ?? {};\n }\n\n static getSdkProviders(): MapLike<ClientSdkPrItem> {\n return this?.clientSdk?.p ?? {};\n }\n\n static getPrivacyCompliance(): boolean {\n return this.prStatus;\n }\n\n static setPrivacyCompliance(status: boolean): void {\n this.prStatus = status;\n }\n\n static async storeData(key: string, value: any): Promise<void> {\n await AsyncStorage.setItem(key, JSON.stringify(value));\n }\n\n static async getDataFromStorage<T>(key: string): Promise<T> {\n const value = await AsyncStorage.getItem(key);\n return value ? JSON.parse(value) : value;\n }\n\n static getDataElements(): MapLike {\n return this.dataElements;\n }\n\n static setDataElements(de: MapLike): void {\n this.dataElements = de;\n }\n\n static getPageLang(): string {\n return this.pageLang;\n }\n\n static getDeviceOs(): string {\n return this.devicePlatform;\n }\n\n static getDataElementHelpers(): DeJsvHelper {\n return {\n log: Logger.logDbg,\n err: Logger.logError,\n };\n }\n\n static getPageName(): string {\n return (this.getDataElementValue('page_name') as string) || 'none';\n }\n\n static getDataElementValue(param: string): string | boolean | number {\n return this.dataElements[param];\n }\n\n static setPageLang(lang: string): void {\n this.pageLang = lang || 'en';\n }\n\n static getSdkPageLangKey(): string {\n return this.clientSdk.langKey;\n }\n\n static setDataElement(key: string, value: any): void {\n this.dataElements[key] = value;\n }\n\n static setValidQc(qcList: string[], qcInfo: QcInfoItem[]): void {\n this.validQcList = qcList;\n this.validQcInfoList = qcInfo;\n }\n\n static getValidQcList(): string[] {\n return this.validQcList || [];\n }\n\n static getValidQcInfo(): QcInfoItem[] {\n return this.validQcInfoList || [];\n }\n\n static setTransFunctions(elements: MapLike): MapLike {\n this.transFunctions = elements;\n return this.transFunctions;\n }\n\n static getTransFunctions(): MapLike {\n return this.transFunctions;\n }\n\n static getOperatingSystem(): string {\n return this.devicePlatform;\n }\n\n static getVisitId(): string {\n return this.visitInfo?.visitId;\n }\n\n static overrideDeviceType(deviceType: string): void {\n this.deviceType = deviceType?.trim()?.toLowerCase();\n }\n\n static getDeviceType(): string {\n return this.deviceType;\n }\n\n static getDeviceId(): string {\n return this.visitorInfo?.dId;\n }\n\n static getMpId(): string {\n return this.visitorInfo?.mId;\n }\n\n static getVisitorInfoAsString(): string | undefined {\n return this.visitorInfo ? JSON.stringify(this.visitorInfo) : undefined;\n }\n\n static getOrgId(): string {\n return this?.clientSdk?.s?.v_id;\n }\n\n static getCoreVersion(): string {\n return CORE_VERSION;\n }\n\n static getMpEnv(): 'stg' | 'prd' {\n return this.mpEnvShort;\n }\n\n static setMpEnv(shortEnv: 'stg' | 'prd'): void {\n this.mpEnvShort = shortEnv;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["CORE_VERSION","DataStore","init","clientSdk","setMpEnv","s","ev","Platform","OS","devicePlatform","toLowerCase","Utils","isTablet","deviceType","interestedClientSideEvents","_makeUniqueStringArray","dtmE","ctmE","mpDlE","interestedServerSideEvents","sseDtmE","sseCtmE","sseMpDlE","interestedAllEvents","resetCollectorUrl","c_url","v_id","p_id","isDataStoreInitialized","baseCollectorUrl","sdkEnv","vendorId","projectId","tagsBaseUrl","urls","tfUrl","errUrl","rptUrl","infoUrl","baseUrl","attrInfoUrl","idlUrl","enQueueTMFire","sseOnly","name","dcrName","eventId","dcrPayload","runQueue","push","isDataStoreReady","shouldExecuteTMForEvent","eventName","indexOf","shouldExecuteSST","shouldExecuteClientSideTm","getSdkPcKey","pcKey","getSdkInitOptions","sdkInitOptions","setDeviceInfo","info","deviceInfo","getDeviceInfo","setSdkInitOptions","options","deQueueTMFire","length","pop","isTagManagerProcessing","isProcessing","setTagManagerProcessing","status","getSdkDataElements","d","getSdkQC","qc","hasOneSSTTag","sst","getSSTDownStream","dws_s_t","getClientDownStream","dws_c_t","getClientSdk","getSSTUrl","getAttrInfoUrl","setVisitInfo","visitInfo","visitInfoToString","visitVer","visitId","visitTs","visitCt","visitDepth","undefined","setVisitorInfo","visitorInfo","getDebugId","debugId","getErrorReportUrl","getIdlUrl","getSdkVersion","v","setDebugId","dbgId","shouldFireSstForEvent","addCommonCookie","key","value","commonCookies","getCommonCookies","getUrlInfo","getSdkTags","t","getSdkProviders","p","getPrivacyCompliance","prStatus","setPrivacyCompliance","storeData","AsyncStorage","setItem","JSON","stringify","getDataFromStorage","getItem","parse","getDataElements","dataElements","setDataElements","de","getPageLang","pageLang","getDeviceOs","getDataElementHelpers","log","Logger","logDbg","err","logError","getPageName","getDataElementValue","param","setPageLang","lang","getSdkPageLangKey","langKey","setDataElement","setValidQc","qcList","qcInfo","validQcList","validQcInfoList","getValidQcList","getValidQcInfo","setTransFunctions","elements","transFunctions","getTransFunctions","getOperatingSystem","getVisitId","overrideDeviceType","trim","getDeviceType","getDeviceId","dId","getMpId","mId","getVisitorInfoAsString","getOrgId","getCoreVersion","getMpEnv","mpEnvShort","shortEnv"],"sources":["data-store.ts"],"sourcesContent":["import AsyncStorage from '@react-native-async-storage/async-storage';\nimport type {\n DeJsvHelper,\n MapLike,\n MpDeviceInfo,\n QcInfoItem,\n RunQueueModel,\n SdkInitOptions,\n UrlInfo,\n VisitInfo,\n VisitorInfo,\n} from './app-types';\nimport { Logger } from './logger';\nimport type {\n ClientSdkDeItem,\n ClientSdkPrItem,\n ClientSdkQcItem,\n ClientSdkTagItem,\n MpClientSdk,\n} from '../models/mp-client-sdk';\nimport { Platform } from 'react-native';\nimport { Utils } from './utils';\n\nconst CORE_VERSION = '0.8.6';\n\nexport class DataStore {\n private static isDataStoreInitialized = false;\n private static dataElements: MapLike = {};\n private static validQcList: string[];\n private static validQcInfoList: Array<QcInfoItem> = [];\n private static transFunctions: MapLike = {};\n private static prStatus = true;\n private static clientSdk: MpClientSdk;\n private static urls: UrlInfo;\n private static debugId: string;\n private static visitorInfo: VisitorInfo;\n private static visitInfo: VisitInfo;\n private static pageLang = 'en';\n private static mpEnvShort: 'stg' | 'prd';\n private static devicePlatform = 'unknown';\n private static deviceType = 'mobile';\n private static runQueue: RunQueueModel[] = [];\n private static isProcessing = false;\n private static sdkInitOptions: SdkInitOptions;\n private static deviceInfo: MpDeviceInfo;\n\n private static interestedClientSideEvents: string[] = [];\n private static interestedServerSideEvents: string[] = [];\n private static interestedAllEvents: string[] = [];\n\n private static commonCookies: Record<string, string> = {};\n\n static async init(clientSdk: MpClientSdk): Promise<void> {\n this.clientSdk = clientSdk;\n this.setMpEnv(clientSdk?.s?.ev === 'staging' ? 'stg' : 'prd');\n if (typeof Platform !== 'undefined' && typeof Platform.OS !== 'undefined') {\n this.devicePlatform = Platform.OS.toLowerCase();\n }\n\n if (Utils.isTablet()) {\n this.deviceType = 'tablet';\n } else {\n this.deviceType = 'mobile';\n }\n\n this.interestedClientSideEvents = Utils._makeUniqueStringArray([\n ...(clientSdk.dtmE ?? []),\n ...(clientSdk.ctmE ?? []),\n ...(clientSdk.mpDlE ?? []),\n ]);\n\n this.interestedServerSideEvents = Utils._makeUniqueStringArray([\n ...(clientSdk.sseDtmE ?? []),\n ...(clientSdk.sseCtmE ?? []),\n ...(clientSdk.sseMpDlE ?? []),\n ]);\n\n this.interestedAllEvents = Utils._makeUniqueStringArray([\n ...this.interestedClientSideEvents,\n ...this.interestedServerSideEvents,\n ]);\n\n this.resetCollectorUrl(\n clientSdk.s.c_url,\n clientSdk.s.ev,\n clientSdk.s.v_id,\n clientSdk.s.p_id\n );\n this.isDataStoreInitialized = true;\n }\n\n static resetCollectorUrl(\n baseCollectorUrl: string,\n sdkEnv: string,\n vendorId: string,\n projectId: string\n ): boolean {\n const tagsBaseUrl = `${baseCollectorUrl}/${\n sdkEnv === 'staging' ? 's' : 'p'\n }/${vendorId}/${projectId}`;\n this.urls = {\n tfUrl: tagsBaseUrl + '/sst',\n errUrl: tagsBaseUrl + '/err',\n rptUrl: tagsBaseUrl + '/report',\n infoUrl: tagsBaseUrl + '/info',\n baseUrl: baseCollectorUrl,\n attrInfoUrl: baseCollectorUrl + `/idl/${vendorId}/attrInfo`,\n idlUrl:\n baseCollectorUrl +\n `/idl/${vendorId}/idl${sdkEnv === 'staging' ? '-staging' : ''}`,\n };\n return true;\n }\n\n static enQueueTMFire(\n sseOnly: boolean,\n name: string,\n dcrName: string,\n eventId: string,\n dcrPayload?: Record<string, any>\n ): void {\n this.runQueue.push({ sseOnly, name, dcrName, eventId, dcrPayload });\n }\n\n static isDataStoreReady(): boolean {\n return this.isDataStoreInitialized;\n }\n\n static shouldExecuteTMForEvent(eventName: string): boolean {\n return this.interestedAllEvents.indexOf(eventName) > -1;\n }\n\n static shouldExecuteSST(eventName: string): boolean {\n return this.interestedServerSideEvents.indexOf(eventName) > -1;\n }\n\n static shouldExecuteClientSideTm(eventName: string): boolean {\n return this.interestedClientSideEvents.indexOf(eventName) > -1;\n }\n\n static getSdkPcKey(): string {\n return this.clientSdk.pcKey;\n }\n\n static getSdkInitOptions(): SdkInitOptions {\n return this.sdkInitOptions;\n }\n\n static setDeviceInfo(info: MpDeviceInfo): void {\n this.deviceInfo = info;\n }\n\n static getDeviceInfo(): MpDeviceInfo {\n return this.deviceInfo;\n }\n\n static setSdkInitOptions(options: SdkInitOptions): void {\n this.sdkInitOptions = options;\n }\n\n static deQueueTMFire(): RunQueueModel {\n return this.runQueue.length > 0 ? this.runQueue.pop() : null;\n }\n\n static isTagManagerProcessing(): boolean {\n return this.isProcessing;\n }\n\n static setTagManagerProcessing(status: boolean): void {\n this.isProcessing = status;\n }\n\n static getSdkDataElements(): MapLike<ClientSdkDeItem> {\n return this.clientSdk?.d || {};\n }\n\n static getSdkQC(): ClientSdkQcItem[] {\n return this.clientSdk?.qc || [];\n }\n\n static hasOneSSTTag(): boolean {\n return this.clientSdk.s.sst;\n }\n\n static getSSTDownStream(): 'j' | 'n' {\n return this.clientSdk.s.dws_s_t;\n }\n\n static getClientDownStream(): 'j' | 'n' {\n return this.clientSdk.s.dws_c_t;\n }\n\n static getClientSdk(): MpClientSdk {\n return this.clientSdk;\n }\n\n static getSSTUrl(): string {\n return this.urls.tfUrl;\n }\n\n static getAttrInfoUrl(): string {\n return this.urls.attrInfoUrl;\n }\n\n static setVisitInfo(visitInfo: VisitInfo): void {\n this.visitInfo = visitInfo;\n }\n\n static visitInfoToString(): string {\n return this.visitInfo\n ? `${this.visitInfo.visitVer}|${this.visitInfo.visitId}|${this.visitInfo.visitTs}|${this.visitInfo.visitCt}|${this.visitInfo.visitDepth}`\n : undefined;\n }\n\n static setVisitorInfo(visitorInfo: VisitorInfo): void {\n this.visitorInfo = visitorInfo;\n }\n\n static getDebugId(): string {\n return this.debugId;\n }\n\n static getErrorReportUrl(): string {\n return this.urls.errUrl;\n }\n\n static getIdlUrl(): string {\n return this.urls?.idlUrl;\n }\n\n static getSdkVersion(): string {\n return this.clientSdk.s.v;\n }\n\n static setDebugId(dbgId: string): void {\n this.debugId = dbgId;\n }\n\n static shouldFireSstForEvent(eventName: string): boolean {\n return this.clientSdk?.sseMpDlE?.indexOf(eventName) > -1;\n }\n\n static addCommonCookie(key: string, value: string): void {\n this.commonCookies[key] = value;\n }\n\n static getCommonCookies(): Record<string, string> {\n return this.commonCookies;\n }\n\n static getUrlInfo(): UrlInfo {\n return this.urls;\n }\n\n static getSdkTags(): MapLike<ClientSdkTagItem> {\n return this?.clientSdk?.t ?? {};\n }\n\n static getSdkProviders(): MapLike<ClientSdkPrItem> {\n return this?.clientSdk?.p ?? {};\n }\n\n static getPrivacyCompliance(): boolean {\n return this.prStatus;\n }\n\n static setPrivacyCompliance(status: boolean): void {\n this.prStatus = status;\n }\n\n static async storeData(key: string, value: any): Promise<void> {\n await AsyncStorage.setItem(key, JSON.stringify(value));\n }\n\n static async getDataFromStorage<T>(key: string): Promise<T> {\n const value = await AsyncStorage.getItem(key);\n return value ? JSON.parse(value) : value;\n }\n\n static getDataElements(): MapLike {\n return this.dataElements;\n }\n\n static setDataElements(de: MapLike): void {\n this.dataElements = de;\n }\n\n static getPageLang(): string {\n return this.pageLang;\n }\n\n static getDeviceOs(): string {\n return this.devicePlatform;\n }\n\n static getDataElementHelpers(): DeJsvHelper {\n return {\n log: Logger.logDbg,\n err: Logger.logError,\n };\n }\n\n static getPageName(): string {\n return (this.getDataElementValue('page_name') as string) || 'none';\n }\n\n static getDataElementValue(param: string): string | boolean | number {\n return this.dataElements[param];\n }\n\n static setPageLang(lang: string): void {\n this.pageLang = lang || 'en';\n }\n\n static getSdkPageLangKey(): string {\n return this.clientSdk.langKey;\n }\n\n static setDataElement(key: string, value: any): void {\n this.dataElements[key] = value;\n }\n\n static setValidQc(qcList: string[], qcInfo: QcInfoItem[]): void {\n this.validQcList = qcList;\n this.validQcInfoList = qcInfo;\n }\n\n static getValidQcList(): string[] {\n return this.validQcList || [];\n }\n\n static getValidQcInfo(): QcInfoItem[] {\n return this.validQcInfoList || [];\n }\n\n static setTransFunctions(elements: MapLike): MapLike {\n this.transFunctions = elements;\n return this.transFunctions;\n }\n\n static getTransFunctions(): MapLike {\n return this.transFunctions;\n }\n\n static getOperatingSystem(): string {\n return this.devicePlatform;\n }\n\n static getVisitId(): string {\n return this.visitInfo?.visitId;\n }\n\n static overrideDeviceType(deviceType: string): void {\n this.deviceType = deviceType?.trim()?.toLowerCase();\n }\n\n static getDeviceType(): string {\n return this.deviceType;\n }\n\n static getDeviceId(): string {\n return this.visitorInfo?.dId;\n }\n\n static getMpId(): string {\n return this.visitorInfo?.mId;\n }\n\n static getVisitorInfoAsString(): string | undefined {\n return this.visitorInfo ? JSON.stringify(this.visitorInfo) : undefined;\n }\n\n static getOrgId(): string {\n return this?.clientSdk?.s?.v_id;\n }\n\n static getCoreVersion(): string {\n return CORE_VERSION;\n }\n\n static getMpEnv(): 'stg' | 'prd' {\n return this.mpEnvShort;\n }\n\n static setMpEnv(shortEnv: 'stg' | 'prd'): void {\n this.mpEnvShort = shortEnv;\n }\n}\n"],"mappings":"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"}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -46,11 +46,6 @@ class MagicPixelImpl {
|
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
this.setAppVersion(options.app_version);
|
|
49
|
-
|
|
50
|
-
if (options.os_version) {
|
|
51
|
-
this.customerIdentifiers.os_version = options.os_version;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
49
|
await _visitId.VisitIdProcessor.init(options === null || options === void 0 ? void 0 : options.orgId);
|
|
55
50
|
const fbp = await _visitId.VisitIdProcessor.getFacebookFBP();
|
|
56
51
|
|
|
@@ -243,6 +238,10 @@ class MagicPixelImpl {
|
|
|
243
238
|
this.deepLinkUrl = deepLinkUrl;
|
|
244
239
|
}
|
|
245
240
|
|
|
241
|
+
static setDeviceInfo(deviceInfo) {
|
|
242
|
+
_dataStore.DataStore.setDeviceInfo(deviceInfo);
|
|
243
|
+
}
|
|
244
|
+
|
|
246
245
|
static setFacebookClientId(fbp) {
|
|
247
246
|
this.customerIdentifiers.fbp = fbp;
|
|
248
247
|
}
|
|
@@ -262,18 +261,30 @@ class MagicPixelImpl {
|
|
|
262
261
|
pageLoadInfo.deep_link_url = this.deepLinkUrl;
|
|
263
262
|
}
|
|
264
263
|
|
|
264
|
+
const deviceInfo = _dataStore.DataStore.getDeviceInfo();
|
|
265
|
+
|
|
265
266
|
if (this.customerInfo) {
|
|
266
267
|
const newPayload = { ...pageLoadInfo,
|
|
267
268
|
...this.customerInfo,
|
|
268
269
|
...(this.customerIdentifiers ?? {}),
|
|
269
270
|
..._utils.Utils.parseQueryParamsToObject(pageLoadInfo === null || pageLoadInfo === void 0 ? void 0 : pageLoadInfo.deep_link_url)
|
|
270
271
|
};
|
|
272
|
+
|
|
273
|
+
if (deviceInfo) {
|
|
274
|
+
newPayload.device_info = deviceInfo;
|
|
275
|
+
}
|
|
276
|
+
|
|
271
277
|
this.dl.pushEvent('page_load', newPayload);
|
|
272
278
|
} else {
|
|
273
279
|
const newPayload = { ...pageLoadInfo,
|
|
274
280
|
...(this.customerIdentifiers ?? {}),
|
|
275
281
|
..._utils.Utils.parseQueryParamsToObject(pageLoadInfo === null || pageLoadInfo === void 0 ? void 0 : pageLoadInfo.deep_link_url)
|
|
276
282
|
};
|
|
283
|
+
|
|
284
|
+
if (deviceInfo) {
|
|
285
|
+
newPayload.device_info = deviceInfo;
|
|
286
|
+
}
|
|
287
|
+
|
|
277
288
|
this.dl.pushEvent('page_load', newPayload);
|
|
278
289
|
} // only set for first page load event and remove after that
|
|
279
290
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DL_INIT_EVENT","MagicPixelImpl","init","options","NetworkService","refreshClientSdkJson","DataStore","isDataStoreReady","Error","device_type","trim","length","overrideDeviceType","setAppVersion","app_version","os_version","customerIdentifiers","VisitIdProcessor","orgId","fbp","getFacebookFBP","Logger","logDbg","setFacebookClientId","MagicPixelEventBus","on","evtName","payload","JSON","stringify","eventName","eventDataModel","model","eventId","shouldExecuteTMForEvent","enQueueTMFire","checkAndFireTM","isFirstOpen","isFirstOpenAfterInstall","recordEvent","ready","customerInfo","newPayload","dl","pushEvent","getDebugId","isTagManagerProcessing","item","deQueueTMFire","name","dcrName","dcrPayload","runTM","sseOnly","err","logError","Reporter","reportError","triggerName","evtId","eventData","setTagManagerProcessing","DataElementProcessor","processDataElements","getSdkDataElements","sdk","getClientSdk","pcKey","getSdkPcKey","pcVal","getDataElementValue","setPrivacyCompliance","getSdkPageLangKey","setDataElement","setPageLang","getOperatingSystem","toLowerCase","initReporter","s","ev","ev_id","getDeviceType","getPageLang","getDeviceOs","getPageName","getClientDownStream","getCoreVersion","validQCList","QcProcessor","processQc","getSdkQC","getValidQcInfo","TagProcessor","processTags","then","_fireTM","catch","runTMErr","envName","envId","incrementVisitDepth","finally","_fireTMPrivate","hasOneSSTTag","shouldFireSstForEvent","postSST","getDataElements","getSSTDownStream","Utils","sleep","setCustomerInfo","setFirebaseAppInstanceId","instanceId","firebase_instance_id","setDeepLinkUrl","deepLinkUrl","appVersion","recordPageLoad","pageLoadInfo","is_entry","firstAppLaunch","deep_link_url","parseQueryParamsToObject","undefined","MpDataLayerHelper","EventBus","MagicPixel"],"sources":["index.tsx"],"sourcesContent":["import { MpDataLayerHelper } from './eedl/eedl';\nimport type {\n AppCustomerInfo,\n AppPageLoad,\n MapLike,\n SdkInitOptions,\n} from './common/app-types';\nimport { DataStore } from './common/data-store';\nimport { Logger } from './common/logger';\nimport { Reporter } from './common/reporter';\nimport { DataElementProcessor } from './processors/data-element.processor';\nimport { TagProcessor } from './processors/tag.processor';\nimport { Utils } from './common/utils';\nimport { QcProcessor } from './processors/qc.processor';\nimport { NetworkService } from './common/network-service';\nimport { EventBus } from './common/event-bus';\nimport { VisitIdProcessor } from './processors/visit-id.processor';\n\nconst DL_INIT_EVENT = 'page_load';\n\nclass MagicPixelImpl {\n private static dl: MpDataLayerHelper = new MpDataLayerHelper(\n 'mpDlEvent',\n 'manual',\n DL_INIT_EVENT\n );\n private static customerInfo: AppCustomerInfo;\n private static customerIdentifiers: MapLike = {};\n\n private static deepLinkUrl: string | undefined = undefined;\n\n private static firstAppLaunch = true;\n\n static async init(options: SdkInitOptions): Promise<void> {\n await NetworkService.refreshClientSdkJson(options);\n\n if (!DataStore.isDataStoreReady()) {\n throw new Error('MagicPixel SDK is not ready. No tags will be processed');\n }\n\n if (\n options &&\n options.device_type &&\n options.device_type?.trim().length > 0\n ) {\n DataStore.overrideDeviceType(options.device_type);\n }\n\n this.setAppVersion(options.app_version);\n\n if (options.os_version) {\n this.customerIdentifiers.os_version = options.os_version;\n }\n\n await VisitIdProcessor.init(options?.orgId);\n\n const fbp = await VisitIdProcessor.getFacebookFBP();\n if (fbp) {\n Logger.logDbg('Setting facebook client id', fbp);\n this.setFacebookClientId(fbp);\n } else {\n Logger.logDbg('No facebook client id found. not setting');\n }\n\n MagicPixelEventBus.on('mpDlEvent', async (evtName, payload) => {\n Logger.logDbg('mpDlEvent:: ', evtName, JSON.stringify(payload));\n const eventName: string = payload.eventName;\n const eventDataModel: MapLike = payload.model ?? {};\n const eventId = eventDataModel['ev._id'];\n\n Logger.logDbg('Tracking Event:: ', eventName, 'with id:: ', eventId);\n\n if (DataStore.shouldExecuteTMForEvent(eventName)) {\n // if this is something the tag manager is interested in - fire tag manager\n DataStore.enQueueTMFire(\n false,\n `custom_event_${eventName}`,\n eventName,\n eventId,\n eventDataModel\n );\n await this.checkAndFireTM();\n }\n });\n\n const isFirstOpen = await VisitIdProcessor.isFirstOpenAfterInstall();\n if (isFirstOpen) {\n Logger.logDbg('First open event fired');\n this.recordEvent('app_first_open', {});\n }\n\n this.ready();\n }\n\n static recordEvent(eventName: string, payload: MapLike): void {\n if (this.customerInfo) {\n const newPayload: MapLike = {\n ...payload,\n ...this.customerInfo,\n ...(this.customerIdentifiers ?? {}),\n };\n this.dl.pushEvent(eventName, newPayload);\n } else {\n const newPayload: MapLike = {\n ...payload,\n ...(this.customerIdentifiers ?? {}),\n };\n this.dl.pushEvent(eventName, newPayload);\n }\n }\n\n static ready(): void {\n this.dl.ready();\n }\n\n static getDebugId(): string {\n return DataStore.getDebugId();\n }\n\n private static async checkAndFireTM(): Promise<void> {\n try {\n if (!DataStore.isTagManagerProcessing()) {\n const item = DataStore.deQueueTMFire();\n if (item) {\n Logger.logDbg(\n 'Executing TM For: ',\n item.name,\n ', Event:: ',\n item.dcrName,\n ', Event id:: ',\n item.eventId,\n 'Payload:: ',\n item.dcrPayload\n );\n await this.runTM(\n item.sseOnly,\n item.name,\n item.dcrName,\n item.eventId,\n item.dcrPayload\n );\n }\n } else {\n Logger.logDbg(\n 'Tag Manager is processing or is not ready. This event will start after that'\n );\n }\n } catch (err) {\n Logger.logError('Error check and process tm', err);\n Reporter.reportError('m:checkAndFireTM', err);\n }\n }\n\n private static async runTM(\n sseOnly: boolean,\n triggerName: string,\n evtName: string,\n evtId: string,\n eventData?: Record<string, any>\n ): Promise<void> {\n try {\n Logger.logDbg(\n 'Running:: ',\n sseOnly,\n triggerName,\n evtName,\n evtId,\n eventData\n );\n\n // set tag manager in process status\n DataStore.setTagManagerProcessing(true);\n\n // process all the data elements and cache them for this run\n await DataElementProcessor.processDataElements(\n DataStore.getSdkDataElements(),\n eventData\n );\n\n const sdk = DataStore.getClientSdk();\n\n const pcKey = DataStore.getSdkPcKey();\n if (pcKey) {\n const pcVal = DataStore.getDataElementValue(pcKey);\n if (typeof pcVal !== 'undefined' && pcVal === true) {\n Logger.logDbg('Set: PR Comp: ', true);\n DataStore.setPrivacyCompliance(true);\n } else {\n Logger.logDbg('Set: PR Comp: ', false);\n DataStore.setPrivacyCompliance(false);\n }\n } else {\n Logger.logDbg('Set: PR Comp: ', false);\n DataStore.setPrivacyCompliance(true);\n }\n\n if (DataStore.getSdkPageLangKey()) {\n DataStore.setDataElement(\n 'page_lang_key',\n DataStore.getSdkPageLangKey()\n );\n DataStore.setPageLang(\n DataStore.getDataElementValue('page_lang_key') as string\n );\n } else {\n DataStore.setDataElement('page_lang_key', null);\n }\n\n //set page_browser default data element with page_os because backend expects this\n DataStore.setDataElement(\n 'page_browser',\n DataStore.getOperatingSystem().toLowerCase()\n );\n\n Reporter.initReporter(\n sdk.s.ev,\n sdk.s.ev_id,\n DataStore.getDeviceType(),\n DataStore.getPageLang(),\n DataStore.getDeviceOs(),\n DataStore.getPageName(),\n evtName,\n evtId,\n DataStore.getClientDownStream(),\n DataStore.getCoreVersion(),\n []\n );\n\n const validQCList = QcProcessor.processQc(\n DataStore.getSdkQC(),\n evtName,\n evtId\n );\n\n if (validQCList?.length > 0) {\n Logger.logDbg('Found Valid QCs to process', DataStore.getValidQcInfo());\n\n TagProcessor.processTags(evtName, evtId)\n .then(() => {\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n })\n .catch((err) => {\n Logger.logError('Error processing tag lists.', err);\n Reporter.reportError('i::processTags', err);\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n });\n } else {\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n }\n } catch (runTMErr) {\n Logger.logError('Error in runTM', runTMErr);\n Reporter.reportError('m::runTM', runTMErr);\n }\n }\n\n private static _fireTM(\n envName: string,\n envId: string,\n evtName: string,\n evtId: string\n ): void {\n // increment visit_depth if event name is page_load because that's the only way we can track page views in an app for now\n if (evtName === DL_INIT_EVENT) {\n VisitIdProcessor.incrementVisitDepth().finally(() => {\n this._fireTMPrivate(envName, envId, evtName, evtId);\n });\n } else {\n this._fireTMPrivate(envName, envId, evtName, evtId);\n }\n }\n\n private static _fireTMPrivate(\n envName: string,\n envId: string,\n evtName: string,\n evtId: string\n ): void {\n if (DataStore.hasOneSSTTag() && DataStore.shouldFireSstForEvent(evtName)) {\n Reporter.postSST(\n DataStore.getDataElements(),\n envName,\n envId,\n DataStore.getSSTDownStream(),\n evtName,\n evtId\n ).catch((err: any) => {\n Reporter.reportError('l::postSST', err);\n });\n }\n\n DataStore.setTagManagerProcessing(false);\n Utils.sleep(250).then(async () => {\n try {\n await this.checkAndFireTM();\n } catch (err) {\n Reporter.reportError('i::runTM', err);\n }\n });\n }\n\n static setCustomerInfo(customerInfo: AppCustomerInfo): void {\n this.customerInfo = customerInfo;\n this.recordEvent('idl_attribution_link', customerInfo);\n }\n\n static setFirebaseAppInstanceId(instanceId: string): void {\n this.customerIdentifiers.firebase_instance_id = instanceId;\n }\n\n static setDeepLinkUrl(deepLinkUrl: string): void {\n this.deepLinkUrl = deepLinkUrl;\n }\n\n static setFacebookClientId(fbp: string): void {\n this.customerIdentifiers.fbp = fbp;\n }\n\n private static setAppVersion(appVersion?: string): void {\n if (appVersion && appVersion?.trim()?.length > 0) {\n this.customerIdentifiers.app_version = appVersion;\n }\n }\n\n static recordPageLoad(pageLoadInfo: AppPageLoad): void {\n pageLoadInfo.is_entry = this.firstAppLaunch ? 1 : 0;\n\n if (this.deepLinkUrl) {\n pageLoadInfo.deep_link_url = this.deepLinkUrl;\n }\n\n if (this.customerInfo) {\n const newPayload: MapLike = {\n ...pageLoadInfo,\n ...this.customerInfo,\n ...(this.customerIdentifiers ?? {}),\n ...Utils.parseQueryParamsToObject(pageLoadInfo?.deep_link_url),\n };\n this.dl.pushEvent('page_load', newPayload);\n } else {\n const newPayload: MapLike = {\n ...pageLoadInfo,\n ...(this.customerIdentifiers ?? {}),\n ...Utils.parseQueryParamsToObject(pageLoadInfo?.deep_link_url),\n };\n this.dl.pushEvent('page_load', newPayload);\n }\n // only set for first page load event and remove after that\n this.deepLinkUrl = undefined;\n this.firstAppLaunch = false;\n }\n}\n\nexport const MagicPixelEventBus = EventBus;\nexport const MagicPixel = MagicPixelImpl;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["DL_INIT_EVENT","MagicPixelImpl","init","options","NetworkService","refreshClientSdkJson","DataStore","isDataStoreReady","Error","device_type","trim","length","overrideDeviceType","setAppVersion","app_version","VisitIdProcessor","orgId","fbp","getFacebookFBP","Logger","logDbg","setFacebookClientId","MagicPixelEventBus","on","evtName","payload","JSON","stringify","eventName","eventDataModel","model","eventId","shouldExecuteTMForEvent","enQueueTMFire","checkAndFireTM","isFirstOpen","isFirstOpenAfterInstall","recordEvent","ready","customerInfo","newPayload","customerIdentifiers","dl","pushEvent","getDebugId","isTagManagerProcessing","item","deQueueTMFire","name","dcrName","dcrPayload","runTM","sseOnly","err","logError","Reporter","reportError","triggerName","evtId","eventData","setTagManagerProcessing","DataElementProcessor","processDataElements","getSdkDataElements","sdk","getClientSdk","pcKey","getSdkPcKey","pcVal","getDataElementValue","setPrivacyCompliance","getSdkPageLangKey","setDataElement","setPageLang","getOperatingSystem","toLowerCase","initReporter","s","ev","ev_id","getDeviceType","getPageLang","getDeviceOs","getPageName","getClientDownStream","getCoreVersion","validQCList","QcProcessor","processQc","getSdkQC","getValidQcInfo","TagProcessor","processTags","then","_fireTM","catch","runTMErr","envName","envId","incrementVisitDepth","finally","_fireTMPrivate","hasOneSSTTag","shouldFireSstForEvent","postSST","getDataElements","getSSTDownStream","Utils","sleep","setCustomerInfo","setFirebaseAppInstanceId","instanceId","firebase_instance_id","setDeepLinkUrl","deepLinkUrl","setDeviceInfo","deviceInfo","appVersion","recordPageLoad","pageLoadInfo","is_entry","firstAppLaunch","deep_link_url","getDeviceInfo","parseQueryParamsToObject","device_info","undefined","MpDataLayerHelper","EventBus","MagicPixel"],"sources":["index.tsx"],"sourcesContent":["import { MpDataLayerHelper } from './eedl/eedl';\nimport type {\n AppCustomerInfo,\n AppPageLoad,\n MapLike,\n MpDeviceInfo,\n SdkInitOptions,\n} from './common/app-types';\nimport { DataStore } from './common/data-store';\nimport { Logger } from './common/logger';\nimport { Reporter } from './common/reporter';\nimport { DataElementProcessor } from './processors/data-element.processor';\nimport { TagProcessor } from './processors/tag.processor';\nimport { Utils } from './common/utils';\nimport { QcProcessor } from './processors/qc.processor';\nimport { NetworkService } from './common/network-service';\nimport { EventBus } from './common/event-bus';\nimport { VisitIdProcessor } from './processors/visit-id.processor';\n\nconst DL_INIT_EVENT = 'page_load';\n\nclass MagicPixelImpl {\n private static dl: MpDataLayerHelper = new MpDataLayerHelper(\n 'mpDlEvent',\n 'manual',\n DL_INIT_EVENT\n );\n private static customerInfo: AppCustomerInfo;\n private static customerIdentifiers: MapLike = {};\n\n private static deepLinkUrl: string | undefined = undefined;\n\n private static firstAppLaunch = true;\n\n static async init(options: SdkInitOptions): Promise<void> {\n await NetworkService.refreshClientSdkJson(options);\n\n if (!DataStore.isDataStoreReady()) {\n throw new Error('MagicPixel SDK is not ready. No tags will be processed');\n }\n\n if (\n options &&\n options.device_type &&\n options.device_type?.trim().length > 0\n ) {\n DataStore.overrideDeviceType(options.device_type);\n }\n\n this.setAppVersion(options.app_version);\n\n await VisitIdProcessor.init(options?.orgId);\n\n const fbp = await VisitIdProcessor.getFacebookFBP();\n if (fbp) {\n Logger.logDbg('Setting facebook client id', fbp);\n this.setFacebookClientId(fbp);\n } else {\n Logger.logDbg('No facebook client id found. not setting');\n }\n\n MagicPixelEventBus.on('mpDlEvent', async (evtName, payload) => {\n Logger.logDbg('mpDlEvent:: ', evtName, JSON.stringify(payload));\n const eventName: string = payload.eventName;\n const eventDataModel: MapLike = payload.model ?? {};\n const eventId = eventDataModel['ev._id'];\n\n Logger.logDbg('Tracking Event:: ', eventName, 'with id:: ', eventId);\n\n if (DataStore.shouldExecuteTMForEvent(eventName)) {\n // if this is something the tag manager is interested in - fire tag manager\n DataStore.enQueueTMFire(\n false,\n `custom_event_${eventName}`,\n eventName,\n eventId,\n eventDataModel\n );\n await this.checkAndFireTM();\n }\n });\n\n const isFirstOpen = await VisitIdProcessor.isFirstOpenAfterInstall();\n if (isFirstOpen) {\n Logger.logDbg('First open event fired');\n this.recordEvent('app_first_open', {});\n }\n\n this.ready();\n }\n\n static recordEvent(eventName: string, payload: MapLike): void {\n if (this.customerInfo) {\n const newPayload: MapLike = {\n ...payload,\n ...this.customerInfo,\n ...(this.customerIdentifiers ?? {}),\n };\n this.dl.pushEvent(eventName, newPayload);\n } else {\n const newPayload: MapLike = {\n ...payload,\n ...(this.customerIdentifiers ?? {}),\n };\n this.dl.pushEvent(eventName, newPayload);\n }\n }\n\n static ready(): void {\n this.dl.ready();\n }\n\n static getDebugId(): string {\n return DataStore.getDebugId();\n }\n\n private static async checkAndFireTM(): Promise<void> {\n try {\n if (!DataStore.isTagManagerProcessing()) {\n const item = DataStore.deQueueTMFire();\n if (item) {\n Logger.logDbg(\n 'Executing TM For: ',\n item.name,\n ', Event:: ',\n item.dcrName,\n ', Event id:: ',\n item.eventId,\n 'Payload:: ',\n item.dcrPayload\n );\n await this.runTM(\n item.sseOnly,\n item.name,\n item.dcrName,\n item.eventId,\n item.dcrPayload\n );\n }\n } else {\n Logger.logDbg(\n 'Tag Manager is processing or is not ready. This event will start after that'\n );\n }\n } catch (err) {\n Logger.logError('Error check and process tm', err);\n Reporter.reportError('m:checkAndFireTM', err);\n }\n }\n\n private static async runTM(\n sseOnly: boolean,\n triggerName: string,\n evtName: string,\n evtId: string,\n eventData?: Record<string, any>\n ): Promise<void> {\n try {\n Logger.logDbg(\n 'Running:: ',\n sseOnly,\n triggerName,\n evtName,\n evtId,\n eventData\n );\n\n // set tag manager in process status\n DataStore.setTagManagerProcessing(true);\n\n // process all the data elements and cache them for this run\n await DataElementProcessor.processDataElements(\n DataStore.getSdkDataElements(),\n eventData\n );\n\n const sdk = DataStore.getClientSdk();\n\n const pcKey = DataStore.getSdkPcKey();\n if (pcKey) {\n const pcVal = DataStore.getDataElementValue(pcKey);\n if (typeof pcVal !== 'undefined' && pcVal === true) {\n Logger.logDbg('Set: PR Comp: ', true);\n DataStore.setPrivacyCompliance(true);\n } else {\n Logger.logDbg('Set: PR Comp: ', false);\n DataStore.setPrivacyCompliance(false);\n }\n } else {\n Logger.logDbg('Set: PR Comp: ', false);\n DataStore.setPrivacyCompliance(true);\n }\n\n if (DataStore.getSdkPageLangKey()) {\n DataStore.setDataElement(\n 'page_lang_key',\n DataStore.getSdkPageLangKey()\n );\n DataStore.setPageLang(\n DataStore.getDataElementValue('page_lang_key') as string\n );\n } else {\n DataStore.setDataElement('page_lang_key', null);\n }\n\n //set page_browser default data element with page_os because backend expects this\n DataStore.setDataElement(\n 'page_browser',\n DataStore.getOperatingSystem().toLowerCase()\n );\n\n Reporter.initReporter(\n sdk.s.ev,\n sdk.s.ev_id,\n DataStore.getDeviceType(),\n DataStore.getPageLang(),\n DataStore.getDeviceOs(),\n DataStore.getPageName(),\n evtName,\n evtId,\n DataStore.getClientDownStream(),\n DataStore.getCoreVersion(),\n []\n );\n\n const validQCList = QcProcessor.processQc(\n DataStore.getSdkQC(),\n evtName,\n evtId\n );\n\n if (validQCList?.length > 0) {\n Logger.logDbg('Found Valid QCs to process', DataStore.getValidQcInfo());\n\n TagProcessor.processTags(evtName, evtId)\n .then(() => {\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n })\n .catch((err) => {\n Logger.logError('Error processing tag lists.', err);\n Reporter.reportError('i::processTags', err);\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n });\n } else {\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n }\n } catch (runTMErr) {\n Logger.logError('Error in runTM', runTMErr);\n Reporter.reportError('m::runTM', runTMErr);\n }\n }\n\n private static _fireTM(\n envName: string,\n envId: string,\n evtName: string,\n evtId: string\n ): void {\n // increment visit_depth if event name is page_load because that's the only way we can track page views in an app for now\n if (evtName === DL_INIT_EVENT) {\n VisitIdProcessor.incrementVisitDepth().finally(() => {\n this._fireTMPrivate(envName, envId, evtName, evtId);\n });\n } else {\n this._fireTMPrivate(envName, envId, evtName, evtId);\n }\n }\n\n private static _fireTMPrivate(\n envName: string,\n envId: string,\n evtName: string,\n evtId: string\n ): void {\n if (DataStore.hasOneSSTTag() && DataStore.shouldFireSstForEvent(evtName)) {\n Reporter.postSST(\n DataStore.getDataElements(),\n envName,\n envId,\n DataStore.getSSTDownStream(),\n evtName,\n evtId\n ).catch((err: any) => {\n Reporter.reportError('l::postSST', err);\n });\n }\n\n DataStore.setTagManagerProcessing(false);\n Utils.sleep(250).then(async () => {\n try {\n await this.checkAndFireTM();\n } catch (err) {\n Reporter.reportError('i::runTM', err);\n }\n });\n }\n\n static setCustomerInfo(customerInfo: AppCustomerInfo): void {\n this.customerInfo = customerInfo;\n this.recordEvent('idl_attribution_link', customerInfo);\n }\n\n static setFirebaseAppInstanceId(instanceId: string): void {\n this.customerIdentifiers.firebase_instance_id = instanceId;\n }\n\n static setDeepLinkUrl(deepLinkUrl: string): void {\n this.deepLinkUrl = deepLinkUrl;\n }\n\n static setDeviceInfo(deviceInfo: MpDeviceInfo): void {\n DataStore.setDeviceInfo(deviceInfo);\n }\n\n static setFacebookClientId(fbp: string): void {\n this.customerIdentifiers.fbp = fbp;\n }\n\n private static setAppVersion(appVersion?: string): void {\n if (appVersion && appVersion?.trim()?.length > 0) {\n this.customerIdentifiers.app_version = appVersion;\n }\n }\n\n static recordPageLoad(pageLoadInfo: AppPageLoad): void {\n pageLoadInfo.is_entry = this.firstAppLaunch ? 1 : 0;\n\n if (this.deepLinkUrl) {\n pageLoadInfo.deep_link_url = this.deepLinkUrl;\n }\n\n const deviceInfo = DataStore.getDeviceInfo();\n\n if (this.customerInfo) {\n const newPayload: MapLike = {\n ...pageLoadInfo,\n ...this.customerInfo,\n ...(this.customerIdentifiers ?? {}),\n ...Utils.parseQueryParamsToObject(pageLoadInfo?.deep_link_url),\n };\n\n if (deviceInfo) {\n newPayload.device_info = deviceInfo;\n }\n\n this.dl.pushEvent('page_load', newPayload);\n } else {\n const newPayload: MapLike = {\n ...pageLoadInfo,\n ...(this.customerIdentifiers ?? {}),\n ...Utils.parseQueryParamsToObject(pageLoadInfo?.deep_link_url),\n };\n\n if (deviceInfo) {\n newPayload.device_info = deviceInfo;\n }\n\n this.dl.pushEvent('page_load', newPayload);\n }\n // only set for first page load event and remove after that\n this.deepLinkUrl = undefined;\n this.firstAppLaunch = false;\n }\n}\n\nexport const MagicPixelEventBus = EventBus;\nexport const MagicPixel = MagicPixelImpl;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["app-types.ts"],"sourcesContent":["import type { Logger } from './logger';\n\nexport interface MapLike<T = any> {\n [key: string]: T;\n}\n\nexport interface RunQueueModel {\n sseOnly: boolean;\n name: string;\n dcrName: string;\n eventId: string;\n dcrPayload?: Record<string, any>;\n}\n\nexport type TypedAny = Record<\n string,\n | string\n | number\n | boolean\n | string[]\n | boolean[]\n | number[]\n | Record<string, string | number | boolean | string[] | boolean[] | number[]>\n>;\n\nexport type EventProcessorFn = (payload: TypedAny) => void;\n\nexport interface AppCustomerInfo {\n first_name?: string;\n last_name?: string;\n email?: string;\n phone_number: number;\n country_code: number;\n city?: string;\n state?: string;\n country?: string;\n}\n\nexport interface AppPageLoad {\n page_name: string;\n is_entry?: number;\n deep_link_url?: string;\n app_version?: string;\n}\n\nexport interface DeJsvHelper {\n log: typeof Logger.logDbg;\n err: typeof Logger.logError;\n}\n\nexport interface QcInfoItem {\n nm: string;\n id: string;\n st: boolean;\n}\n\nexport interface TagInfoItem {\n id: string;\n nm: string;\n pr: string;\n prNm: string;\n status: boolean;\n qc: string | string[];\n}\n\nexport type ReplaceMode = 'kph' | 'rph';\n\nexport interface HydrateTagInfo {\n isInError: boolean;\n content: string | number | null;\n errCd: string; // error code\n errMsg: string; // any descriptive error message\n}\n\nexport interface ReportTagItem {\n st: 200 | 900 | 1000 | number; // what happened to this tag?\n t: string; // tag id\n p: string; // provider id\n tNm: string;\n req: any; // request payload\n}\n\nexport interface Report {\n envName: string; // environment name inside magic pixel\n envId: string; // environment id inside magic pixel\n pname?: string; // page name\n evt: string; // dcr event if that triggered this report\n evtId: string; // event id\n dt?: number; // device type (converted to int)\n ln?: number; // language (converted to int)\n bw?: number; // browser name (converted to int)\n dm?: string; // clean domain name\n items: ReportTagItem[]; // list of tag items fired on that page for that condition\n tagCt: number; // expected tag count on this page\n dws: 'j' | 'n'; // down stream configuration. java or node\n v: string; // client sdk version for this call\n}\n\nexport interface UrlInfo {\n tfUrl: string;\n errUrl: string;\n rptUrl: string;\n infoUrl: string;\n baseUrl: string;\n attrInfoUrl: string;\n idlUrl: string;\n}\n\nexport interface VisitInfo {\n visitId: string;\n visitTs: number;\n visitCt: number;\n visitDepth: number;\n visitVer: number;\n}\n\nexport interface VisitorInfo {\n dId: string;\n mId: string;\n st: number;\n}\n\nexport interface SdkInitOptions {\n orgId: string;\n env: string;\n projectId: string;\n baseUrl: string;\n\n device_type?: string;\n\n app_version?: string;\n os_version?: string;\n}\n\nexport type EventBusCallback = (event: string, payload: any) => void;\n"],"mappings":""}
|
|
1
|
+
{"version":3,"names":[],"sources":["app-types.ts"],"sourcesContent":["import type { Logger } from './logger';\n\nexport interface MapLike<T = any> {\n [key: string]: T;\n}\n\nexport interface RunQueueModel {\n sseOnly: boolean;\n name: string;\n dcrName: string;\n eventId: string;\n dcrPayload?: Record<string, any>;\n}\n\nexport type TypedAny = Record<\n string,\n | string\n | number\n | boolean\n | string[]\n | boolean[]\n | number[]\n | Record<string, string | number | boolean | string[] | boolean[] | number[]>\n>;\n\nexport type EventProcessorFn = (payload: TypedAny) => void;\n\nexport interface AppCustomerInfo {\n first_name?: string;\n last_name?: string;\n email?: string;\n phone_number: number;\n country_code: number;\n city?: string;\n state?: string;\n country?: string;\n}\n\nexport interface AppPageLoad {\n page_name: string;\n is_entry?: number;\n deep_link_url?: string;\n app_version?: string;\n}\n\nexport interface DeJsvHelper {\n log: typeof Logger.logDbg;\n err: typeof Logger.logError;\n}\n\nexport interface QcInfoItem {\n nm: string;\n id: string;\n st: boolean;\n}\n\nexport interface TagInfoItem {\n id: string;\n nm: string;\n pr: string;\n prNm: string;\n status: boolean;\n qc: string | string[];\n}\n\nexport type ReplaceMode = 'kph' | 'rph';\n\nexport interface HydrateTagInfo {\n isInError: boolean;\n content: string | number | null;\n errCd: string; // error code\n errMsg: string; // any descriptive error message\n}\n\nexport interface ReportTagItem {\n st: 200 | 900 | 1000 | number; // what happened to this tag?\n t: string; // tag id\n p: string; // provider id\n tNm: string;\n req: any; // request payload\n}\n\nexport interface Report {\n envName: string; // environment name inside magic pixel\n envId: string; // environment id inside magic pixel\n pname?: string; // page name\n evt: string; // dcr event if that triggered this report\n evtId: string; // event id\n dt?: number; // device type (converted to int)\n ln?: number; // language (converted to int)\n bw?: number; // browser name (converted to int)\n dm?: string; // clean domain name\n items: ReportTagItem[]; // list of tag items fired on that page for that condition\n tagCt: number; // expected tag count on this page\n dws: 'j' | 'n'; // down stream configuration. java or node\n v: string; // client sdk version for this call\n}\n\nexport interface UrlInfo {\n tfUrl: string;\n errUrl: string;\n rptUrl: string;\n infoUrl: string;\n baseUrl: string;\n attrInfoUrl: string;\n idlUrl: string;\n}\n\nexport interface VisitInfo {\n visitId: string;\n visitTs: number;\n visitCt: number;\n visitDepth: number;\n visitVer: number;\n}\n\nexport interface VisitorInfo {\n dId: string;\n mId: string;\n st: number;\n}\n\nexport interface SdkInitOptions {\n orgId: string;\n env: string;\n projectId: string;\n baseUrl: string;\n\n device_type?: string;\n\n app_version?: string;\n os_version?: string;\n}\n\nexport interface MpDeviceInfo {\n package_name?: string; // app package name like com.company.starter\n short_version?: string;\n long_version?: string;\n os_version: string;\n device_model_name: string;\n locale?: string;\n timezone_abbreviation?: string;\n carrier?: string;\n screen_width?: number;\n screen_height?: number;\n screen_density?: number;\n cpu_cores?: number;\n ext_storage?: number;\n free_storage?: number;\n device_timezone?: string;\n}\n\nexport type EventBusCallback = (event: string, payload: any) => void;\n"],"mappings":""}
|
|
@@ -77,6 +77,14 @@ export class DataStore {
|
|
|
77
77
|
return this.sdkInitOptions;
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
+
static setDeviceInfo(info) {
|
|
81
|
+
this.deviceInfo = info;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
static getDeviceInfo() {
|
|
85
|
+
return this.deviceInfo;
|
|
86
|
+
}
|
|
87
|
+
|
|
80
88
|
static setSdkInitOptions(options) {
|
|
81
89
|
this.sdkInitOptions = options;
|
|
82
90
|
}
|
|
@@ -367,6 +375,8 @@ _defineProperty(DataStore, "isProcessing", false);
|
|
|
367
375
|
|
|
368
376
|
_defineProperty(DataStore, "sdkInitOptions", void 0);
|
|
369
377
|
|
|
378
|
+
_defineProperty(DataStore, "deviceInfo", void 0);
|
|
379
|
+
|
|
370
380
|
_defineProperty(DataStore, "interestedClientSideEvents", []);
|
|
371
381
|
|
|
372
382
|
_defineProperty(DataStore, "interestedServerSideEvents", []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["AsyncStorage","Logger","Platform","Utils","CORE_VERSION","DataStore","init","clientSdk","setMpEnv","s","ev","OS","devicePlatform","toLowerCase","isTablet","deviceType","interestedClientSideEvents","_makeUniqueStringArray","dtmE","ctmE","mpDlE","interestedServerSideEvents","sseDtmE","sseCtmE","sseMpDlE","interestedAllEvents","resetCollectorUrl","c_url","v_id","p_id","isDataStoreInitialized","baseCollectorUrl","sdkEnv","vendorId","projectId","tagsBaseUrl","urls","tfUrl","errUrl","rptUrl","infoUrl","baseUrl","attrInfoUrl","idlUrl","enQueueTMFire","sseOnly","name","dcrName","eventId","dcrPayload","runQueue","push","isDataStoreReady","shouldExecuteTMForEvent","eventName","indexOf","shouldExecuteSST","shouldExecuteClientSideTm","getSdkPcKey","pcKey","getSdkInitOptions","sdkInitOptions","setSdkInitOptions","options","deQueueTMFire","length","pop","isTagManagerProcessing","isProcessing","setTagManagerProcessing","status","getSdkDataElements","d","getSdkQC","qc","hasOneSSTTag","sst","getSSTDownStream","dws_s_t","getClientDownStream","dws_c_t","getClientSdk","getSSTUrl","getAttrInfoUrl","setVisitInfo","visitInfo","visitInfoToString","visitVer","visitId","visitTs","visitCt","visitDepth","undefined","setVisitorInfo","visitorInfo","getDebugId","debugId","getErrorReportUrl","getIdlUrl","getSdkVersion","v","setDebugId","dbgId","shouldFireSstForEvent","addCommonCookie","key","value","commonCookies","getCommonCookies","getUrlInfo","getSdkTags","t","getSdkProviders","p","getPrivacyCompliance","prStatus","setPrivacyCompliance","storeData","setItem","JSON","stringify","getDataFromStorage","getItem","parse","getDataElements","dataElements","setDataElements","de","getPageLang","pageLang","getDeviceOs","getDataElementHelpers","log","logDbg","err","logError","getPageName","getDataElementValue","param","setPageLang","lang","getSdkPageLangKey","langKey","setDataElement","setValidQc","qcList","qcInfo","validQcList","validQcInfoList","getValidQcList","getValidQcInfo","setTransFunctions","elements","transFunctions","getTransFunctions","getOperatingSystem","getVisitId","overrideDeviceType","trim","getDeviceType","getDeviceId","dId","getMpId","mId","getVisitorInfoAsString","getOrgId","getCoreVersion","getMpEnv","mpEnvShort","shortEnv"],"sources":["data-store.ts"],"sourcesContent":["import AsyncStorage from '@react-native-async-storage/async-storage';\nimport type {\n DeJsvHelper,\n MapLike,\n QcInfoItem,\n RunQueueModel,\n SdkInitOptions,\n UrlInfo,\n VisitInfo,\n VisitorInfo,\n} from './app-types';\nimport { Logger } from './logger';\nimport type {\n ClientSdkDeItem,\n ClientSdkPrItem,\n ClientSdkQcItem,\n ClientSdkTagItem,\n MpClientSdk,\n} from '../models/mp-client-sdk';\nimport { Platform } from 'react-native';\nimport { Utils } from './utils';\n\nconst CORE_VERSION = '0.8.6';\n\nexport class DataStore {\n private static isDataStoreInitialized = false;\n private static dataElements: MapLike = {};\n private static validQcList: string[];\n private static validQcInfoList: Array<QcInfoItem> = [];\n private static transFunctions: MapLike = {};\n private static prStatus = true;\n private static clientSdk: MpClientSdk;\n private static urls: UrlInfo;\n private static debugId: string;\n private static visitorInfo: VisitorInfo;\n private static visitInfo: VisitInfo;\n private static pageLang = 'en';\n private static mpEnvShort: 'stg' | 'prd';\n private static devicePlatform = 'unknown';\n private static deviceType = 'mobile';\n private static runQueue: RunQueueModel[] = [];\n private static isProcessing = false;\n private static sdkInitOptions: SdkInitOptions;\n\n private static interestedClientSideEvents: string[] = [];\n private static interestedServerSideEvents: string[] = [];\n private static interestedAllEvents: string[] = [];\n\n private static commonCookies: Record<string, string> = {};\n\n static async init(clientSdk: MpClientSdk): Promise<void> {\n this.clientSdk = clientSdk;\n this.setMpEnv(clientSdk?.s?.ev === 'staging' ? 'stg' : 'prd');\n if (typeof Platform !== 'undefined' && typeof Platform.OS !== 'undefined') {\n this.devicePlatform = Platform.OS.toLowerCase();\n }\n\n if (Utils.isTablet()) {\n this.deviceType = 'tablet';\n } else {\n this.deviceType = 'mobile';\n }\n\n this.interestedClientSideEvents = Utils._makeUniqueStringArray([\n ...(clientSdk.dtmE ?? []),\n ...(clientSdk.ctmE ?? []),\n ...(clientSdk.mpDlE ?? []),\n ]);\n\n this.interestedServerSideEvents = Utils._makeUniqueStringArray([\n ...(clientSdk.sseDtmE ?? []),\n ...(clientSdk.sseCtmE ?? []),\n ...(clientSdk.sseMpDlE ?? []),\n ]);\n\n this.interestedAllEvents = Utils._makeUniqueStringArray([\n ...this.interestedClientSideEvents,\n ...this.interestedServerSideEvents,\n ]);\n\n this.resetCollectorUrl(\n clientSdk.s.c_url,\n clientSdk.s.ev,\n clientSdk.s.v_id,\n clientSdk.s.p_id\n );\n this.isDataStoreInitialized = true;\n }\n\n static resetCollectorUrl(\n baseCollectorUrl: string,\n sdkEnv: string,\n vendorId: string,\n projectId: string\n ): boolean {\n const tagsBaseUrl = `${baseCollectorUrl}/${\n sdkEnv === 'staging' ? 's' : 'p'\n }/${vendorId}/${projectId}`;\n this.urls = {\n tfUrl: tagsBaseUrl + '/sst',\n errUrl: tagsBaseUrl + '/err',\n rptUrl: tagsBaseUrl + '/report',\n infoUrl: tagsBaseUrl + '/info',\n baseUrl: baseCollectorUrl,\n attrInfoUrl: baseCollectorUrl + `/idl/${vendorId}/attrInfo`,\n idlUrl:\n baseCollectorUrl +\n `/idl/${vendorId}/idl${sdkEnv === 'staging' ? '-staging' : ''}`,\n };\n return true;\n }\n\n static enQueueTMFire(\n sseOnly: boolean,\n name: string,\n dcrName: string,\n eventId: string,\n dcrPayload?: Record<string, any>\n ): void {\n this.runQueue.push({ sseOnly, name, dcrName, eventId, dcrPayload });\n }\n\n static isDataStoreReady(): boolean {\n return this.isDataStoreInitialized;\n }\n\n static shouldExecuteTMForEvent(eventName: string): boolean {\n return this.interestedAllEvents.indexOf(eventName) > -1;\n }\n\n static shouldExecuteSST(eventName: string): boolean {\n return this.interestedServerSideEvents.indexOf(eventName) > -1;\n }\n\n static shouldExecuteClientSideTm(eventName: string): boolean {\n return this.interestedClientSideEvents.indexOf(eventName) > -1;\n }\n\n static getSdkPcKey(): string {\n return this.clientSdk.pcKey;\n }\n\n static getSdkInitOptions(): SdkInitOptions {\n return this.sdkInitOptions;\n }\n\n static setSdkInitOptions(options: SdkInitOptions): void {\n this.sdkInitOptions = options;\n }\n\n static deQueueTMFire(): RunQueueModel {\n return this.runQueue.length > 0 ? this.runQueue.pop() : null;\n }\n\n static isTagManagerProcessing(): boolean {\n return this.isProcessing;\n }\n\n static setTagManagerProcessing(status: boolean): void {\n this.isProcessing = status;\n }\n\n static getSdkDataElements(): MapLike<ClientSdkDeItem> {\n return this.clientSdk?.d || {};\n }\n\n static getSdkQC(): ClientSdkQcItem[] {\n return this.clientSdk?.qc || [];\n }\n\n static hasOneSSTTag(): boolean {\n return this.clientSdk.s.sst;\n }\n\n static getSSTDownStream(): 'j' | 'n' {\n return this.clientSdk.s.dws_s_t;\n }\n\n static getClientDownStream(): 'j' | 'n' {\n return this.clientSdk.s.dws_c_t;\n }\n\n static getClientSdk(): MpClientSdk {\n return this.clientSdk;\n }\n\n static getSSTUrl(): string {\n return this.urls.tfUrl;\n }\n\n static getAttrInfoUrl(): string {\n return this.urls.attrInfoUrl;\n }\n\n static setVisitInfo(visitInfo: VisitInfo): void {\n this.visitInfo = visitInfo;\n }\n\n static visitInfoToString(): string {\n return this.visitInfo\n ? `${this.visitInfo.visitVer}|${this.visitInfo.visitId}|${this.visitInfo.visitTs}|${this.visitInfo.visitCt}|${this.visitInfo.visitDepth}`\n : undefined;\n }\n\n static setVisitorInfo(visitorInfo: VisitorInfo): void {\n this.visitorInfo = visitorInfo;\n }\n\n static getDebugId(): string {\n return this.debugId;\n }\n\n static getErrorReportUrl(): string {\n return this.urls.errUrl;\n }\n\n static getIdlUrl(): string {\n return this.urls?.idlUrl;\n }\n\n static getSdkVersion(): string {\n return this.clientSdk.s.v;\n }\n\n static setDebugId(dbgId: string): void {\n this.debugId = dbgId;\n }\n\n static shouldFireSstForEvent(eventName: string): boolean {\n return this.clientSdk?.sseMpDlE?.indexOf(eventName) > -1;\n }\n\n static addCommonCookie(key: string, value: string): void {\n this.commonCookies[key] = value;\n }\n\n static getCommonCookies(): Record<string, string> {\n return this.commonCookies;\n }\n\n static getUrlInfo(): UrlInfo {\n return this.urls;\n }\n\n static getSdkTags(): MapLike<ClientSdkTagItem> {\n return this?.clientSdk?.t ?? {};\n }\n\n static getSdkProviders(): MapLike<ClientSdkPrItem> {\n return this?.clientSdk?.p ?? {};\n }\n\n static getPrivacyCompliance(): boolean {\n return this.prStatus;\n }\n\n static setPrivacyCompliance(status: boolean): void {\n this.prStatus = status;\n }\n\n static async storeData(key: string, value: any): Promise<void> {\n await AsyncStorage.setItem(key, JSON.stringify(value));\n }\n\n static async getDataFromStorage<T>(key: string): Promise<T> {\n const value = await AsyncStorage.getItem(key);\n return value ? JSON.parse(value) : value;\n }\n\n static getDataElements(): MapLike {\n return this.dataElements;\n }\n\n static setDataElements(de: MapLike): void {\n this.dataElements = de;\n }\n\n static getPageLang(): string {\n return this.pageLang;\n }\n\n static getDeviceOs(): string {\n return this.devicePlatform;\n }\n\n static getDataElementHelpers(): DeJsvHelper {\n return {\n log: Logger.logDbg,\n err: Logger.logError,\n };\n }\n\n static getPageName(): string {\n return (this.getDataElementValue('page_name') as string) || 'none';\n }\n\n static getDataElementValue(param: string): string | boolean | number {\n return this.dataElements[param];\n }\n\n static setPageLang(lang: string): void {\n this.pageLang = lang || 'en';\n }\n\n static getSdkPageLangKey(): string {\n return this.clientSdk.langKey;\n }\n\n static setDataElement(key: string, value: any): void {\n this.dataElements[key] = value;\n }\n\n static setValidQc(qcList: string[], qcInfo: QcInfoItem[]): void {\n this.validQcList = qcList;\n this.validQcInfoList = qcInfo;\n }\n\n static getValidQcList(): string[] {\n return this.validQcList || [];\n }\n\n static getValidQcInfo(): QcInfoItem[] {\n return this.validQcInfoList || [];\n }\n\n static setTransFunctions(elements: MapLike): MapLike {\n this.transFunctions = elements;\n return this.transFunctions;\n }\n\n static getTransFunctions(): MapLike {\n return this.transFunctions;\n }\n\n static getOperatingSystem(): string {\n return this.devicePlatform;\n }\n\n static getVisitId(): string {\n return this.visitInfo?.visitId;\n }\n\n static overrideDeviceType(deviceType: string): void {\n this.deviceType = deviceType?.trim()?.toLowerCase();\n }\n\n static getDeviceType(): string {\n return this.deviceType;\n }\n\n static getDeviceId(): string {\n return this.visitorInfo?.dId;\n }\n\n static getMpId(): string {\n return this.visitorInfo?.mId;\n }\n\n static getVisitorInfoAsString(): string | undefined {\n return this.visitorInfo ? JSON.stringify(this.visitorInfo) : undefined;\n }\n\n static getOrgId(): string {\n return this?.clientSdk?.s?.v_id;\n }\n\n static getCoreVersion(): string {\n return CORE_VERSION;\n }\n\n static getMpEnv(): 'stg' | 'prd' {\n return this.mpEnvShort;\n }\n\n static setMpEnv(shortEnv: 'stg' | 'prd'): void {\n this.mpEnvShort = shortEnv;\n }\n}\n"],"mappings":";;AAAA,OAAOA,YAAP,MAAyB,2CAAzB;AAWA,SAASC,MAAT,QAAuB,UAAvB;AAQA,SAASC,QAAT,QAAyB,cAAzB;AACA,SAASC,KAAT,QAAsB,SAAtB;AAEA,MAAMC,YAAY,GAAG,OAArB;AAEA,OAAO,MAAMC,SAAN,CAAgB;EA0BJ,aAAJC,IAAI,CAACC,SAAD,EAAwC;IAAA;;IACvD,KAAKA,SAAL,GAAiBA,SAAjB;IACA,KAAKC,QAAL,CAAc,CAAAD,SAAS,SAAT,IAAAA,SAAS,WAAT,4BAAAA,SAAS,CAAEE,CAAX,8DAAcC,EAAd,MAAqB,SAArB,GAAiC,KAAjC,GAAyC,KAAvD;;IACA,IAAI,OAAOR,QAAP,KAAoB,WAApB,IAAmC,OAAOA,QAAQ,CAACS,EAAhB,KAAuB,WAA9D,EAA2E;MACzE,KAAKC,cAAL,GAAsBV,QAAQ,CAACS,EAAT,CAAYE,WAAZ,EAAtB;IACD;;IAED,IAAIV,KAAK,CAACW,QAAN,EAAJ,EAAsB;MACpB,KAAKC,UAAL,GAAkB,QAAlB;IACD,CAFD,MAEO;MACL,KAAKA,UAAL,GAAkB,QAAlB;IACD;;IAED,KAAKC,0BAAL,GAAkCb,KAAK,CAACc,sBAAN,CAA6B,CAC7D,IAAIV,SAAS,CAACW,IAAV,IAAkB,EAAtB,CAD6D,EAE7D,IAAIX,SAAS,CAACY,IAAV,IAAkB,EAAtB,CAF6D,EAG7D,IAAIZ,SAAS,CAACa,KAAV,IAAmB,EAAvB,CAH6D,CAA7B,CAAlC;IAMA,KAAKC,0BAAL,GAAkClB,KAAK,CAACc,sBAAN,CAA6B,CAC7D,IAAIV,SAAS,CAACe,OAAV,IAAqB,EAAzB,CAD6D,EAE7D,IAAIf,SAAS,CAACgB,OAAV,IAAqB,EAAzB,CAF6D,EAG7D,IAAIhB,SAAS,CAACiB,QAAV,IAAsB,EAA1B,CAH6D,CAA7B,CAAlC;IAMA,KAAKC,mBAAL,GAA2BtB,KAAK,CAACc,sBAAN,CAA6B,CACtD,GAAG,KAAKD,0BAD8C,EAEtD,GAAG,KAAKK,0BAF8C,CAA7B,CAA3B;IAKA,KAAKK,iBAAL,CACEnB,SAAS,CAACE,CAAV,CAAYkB,KADd,EAEEpB,SAAS,CAACE,CAAV,CAAYC,EAFd,EAGEH,SAAS,CAACE,CAAV,CAAYmB,IAHd,EAIErB,SAAS,CAACE,CAAV,CAAYoB,IAJd;IAMA,KAAKC,sBAAL,GAA8B,IAA9B;EACD;;EAEuB,OAAjBJ,iBAAiB,CACtBK,gBADsB,EAEtBC,MAFsB,EAGtBC,QAHsB,EAItBC,SAJsB,EAKb;IACT,MAAMC,WAAW,GAAI,GAAEJ,gBAAiB,IACtCC,MAAM,KAAK,SAAX,GAAuB,GAAvB,GAA6B,GAC9B,IAAGC,QAAS,IAAGC,SAAU,EAF1B;IAGA,KAAKE,IAAL,GAAY;MACVC,KAAK,EAAEF,WAAW,GAAG,MADX;MAEVG,MAAM,EAAEH,WAAW,GAAG,MAFZ;MAGVI,MAAM,EAAEJ,WAAW,GAAG,SAHZ;MAIVK,OAAO,EAAEL,WAAW,GAAG,OAJb;MAKVM,OAAO,EAAEV,gBALC;MAMVW,WAAW,EAAEX,gBAAgB,GAAI,QAAOE,QAAS,WANvC;MAOVU,MAAM,EACJZ,gBAAgB,GACf,QAAOE,QAAS,OAAMD,MAAM,KAAK,SAAX,GAAuB,UAAvB,GAAoC,EAAG;IATtD,CAAZ;IAWA,OAAO,IAAP;EACD;;EAEmB,OAAbY,aAAa,CAClBC,OADkB,EAElBC,IAFkB,EAGlBC,OAHkB,EAIlBC,OAJkB,EAKlBC,UALkB,EAMZ;IACN,KAAKC,QAAL,CAAcC,IAAd,CAAmB;MAAEN,OAAF;MAAWC,IAAX;MAAiBC,OAAjB;MAA0BC,OAA1B;MAAmCC;IAAnC,CAAnB;EACD;;EAEsB,OAAhBG,gBAAgB,GAAY;IACjC,OAAO,KAAKtB,sBAAZ;EACD;;EAE6B,OAAvBuB,uBAAuB,CAACC,SAAD,EAA6B;IACzD,OAAO,KAAK7B,mBAAL,CAAyB8B,OAAzB,CAAiCD,SAAjC,IAA8C,CAAC,CAAtD;EACD;;EAEsB,OAAhBE,gBAAgB,CAACF,SAAD,EAA6B;IAClD,OAAO,KAAKjC,0BAAL,CAAgCkC,OAAhC,CAAwCD,SAAxC,IAAqD,CAAC,CAA7D;EACD;;EAE+B,OAAzBG,yBAAyB,CAACH,SAAD,EAA6B;IAC3D,OAAO,KAAKtC,0BAAL,CAAgCuC,OAAhC,CAAwCD,SAAxC,IAAqD,CAAC,CAA7D;EACD;;EAEiB,OAAXI,WAAW,GAAW;IAC3B,OAAO,KAAKnD,SAAL,CAAeoD,KAAtB;EACD;;EAEuB,OAAjBC,iBAAiB,GAAmB;IACzC,OAAO,KAAKC,cAAZ;EACD;;EAEuB,OAAjBC,iBAAiB,CAACC,OAAD,EAAgC;IACtD,KAAKF,cAAL,GAAsBE,OAAtB;EACD;;EAEmB,OAAbC,aAAa,GAAkB;IACpC,OAAO,KAAKd,QAAL,CAAce,MAAd,GAAuB,CAAvB,GAA2B,KAAKf,QAAL,CAAcgB,GAAd,EAA3B,GAAiD,IAAxD;EACD;;EAE4B,OAAtBC,sBAAsB,GAAY;IACvC,OAAO,KAAKC,YAAZ;EACD;;EAE6B,OAAvBC,uBAAuB,CAACC,MAAD,EAAwB;IACpD,KAAKF,YAAL,GAAoBE,MAApB;EACD;;EAEwB,OAAlBC,kBAAkB,GAA6B;IAAA;;IACpD,OAAO,yBAAKhE,SAAL,oEAAgBiE,CAAhB,KAAqB,EAA5B;EACD;;EAEc,OAARC,QAAQ,GAAsB;IAAA;;IACnC,OAAO,0BAAKlE,SAAL,sEAAgBmE,EAAhB,KAAsB,EAA7B;EACD;;EAEkB,OAAZC,YAAY,GAAY;IAC7B,OAAO,KAAKpE,SAAL,CAAeE,CAAf,CAAiBmE,GAAxB;EACD;;EAEsB,OAAhBC,gBAAgB,GAAc;IACnC,OAAO,KAAKtE,SAAL,CAAeE,CAAf,CAAiBqE,OAAxB;EACD;;EAEyB,OAAnBC,mBAAmB,GAAc;IACtC,OAAO,KAAKxE,SAAL,CAAeE,CAAf,CAAiBuE,OAAxB;EACD;;EAEkB,OAAZC,YAAY,GAAgB;IACjC,OAAO,KAAK1E,SAAZ;EACD;;EAEe,OAAT2E,SAAS,GAAW;IACzB,OAAO,KAAK9C,IAAL,CAAUC,KAAjB;EACD;;EAEoB,OAAd8C,cAAc,GAAW;IAC9B,OAAO,KAAK/C,IAAL,CAAUM,WAAjB;EACD;;EAEkB,OAAZ0C,YAAY,CAACC,SAAD,EAA6B;IAC9C,KAAKA,SAAL,GAAiBA,SAAjB;EACD;;EAEuB,OAAjBC,iBAAiB,GAAW;IACjC,OAAO,KAAKD,SAAL,GACF,GAAE,KAAKA,SAAL,CAAeE,QAAS,IAAG,KAAKF,SAAL,CAAeG,OAAQ,IAAG,KAAKH,SAAL,CAAeI,OAAQ,IAAG,KAAKJ,SAAL,CAAeK,OAAQ,IAAG,KAAKL,SAAL,CAAeM,UAAW,EADnI,GAEHC,SAFJ;EAGD;;EAEoB,OAAdC,cAAc,CAACC,WAAD,EAAiC;IACpD,KAAKA,WAAL,GAAmBA,WAAnB;EACD;;EAEgB,OAAVC,UAAU,GAAW;IAC1B,OAAO,KAAKC,OAAZ;EACD;;EAEuB,OAAjBC,iBAAiB,GAAW;IACjC,OAAO,KAAK7D,IAAL,CAAUE,MAAjB;EACD;;EAEe,OAAT4D,SAAS,GAAW;IAAA;;IACzB,qBAAO,KAAK9D,IAAZ,+CAAO,WAAWO,MAAlB;EACD;;EAEmB,OAAbwD,aAAa,GAAW;IAC7B,OAAO,KAAK5F,SAAL,CAAeE,CAAf,CAAiB2F,CAAxB;EACD;;EAEgB,OAAVC,UAAU,CAACC,KAAD,EAAsB;IACrC,KAAKN,OAAL,GAAeM,KAAf;EACD;;EAE2B,OAArBC,qBAAqB,CAACjD,SAAD,EAA6B;IAAA;;IACvD,OAAO,0BAAK/C,SAAL,+FAAgBiB,QAAhB,gFAA0B+B,OAA1B,CAAkCD,SAAlC,KAA+C,CAAC,CAAvD;EACD;;EAEqB,OAAfkD,eAAe,CAACC,GAAD,EAAcC,KAAd,EAAmC;IACvD,KAAKC,aAAL,CAAmBF,GAAnB,IAA0BC,KAA1B;EACD;;EAEsB,OAAhBE,gBAAgB,GAA2B;IAChD,OAAO,KAAKD,aAAZ;EACD;;EAEgB,OAAVE,UAAU,GAAY;IAC3B,OAAO,KAAKzE,IAAZ;EACD;;EAEgB,OAAV0E,UAAU,GAA8B;IAAA;;IAC7C,OAAO,sEAAMvG,SAAN,sEAAiBwG,CAAjB,KAAsB,EAA7B;EACD;;EAEqB,OAAfC,eAAe,GAA6B;IAAA;;IACjD,OAAO,sEAAMzG,SAAN,sEAAiB0G,CAAjB,KAAsB,EAA7B;EACD;;EAE0B,OAApBC,oBAAoB,GAAY;IACrC,OAAO,KAAKC,QAAZ;EACD;;EAE0B,OAApBC,oBAAoB,CAAC9C,MAAD,EAAwB;IACjD,KAAK6C,QAAL,GAAgB7C,MAAhB;EACD;;EAEqB,aAAT+C,SAAS,CAACZ,GAAD,EAAcC,KAAd,EAAyC;IAC7D,MAAM1G,YAAY,CAACsH,OAAb,CAAqBb,GAArB,EAA0Bc,IAAI,CAACC,SAAL,CAAed,KAAf,CAA1B,CAAN;EACD;;EAE8B,aAAlBe,kBAAkB,CAAIhB,GAAJ,EAA6B;IAC1D,MAAMC,KAAK,GAAG,MAAM1G,YAAY,CAAC0H,OAAb,CAAqBjB,GAArB,CAApB;IACA,OAAOC,KAAK,GAAGa,IAAI,CAACI,KAAL,CAAWjB,KAAX,CAAH,GAAuBA,KAAnC;EACD;;EAEqB,OAAfkB,eAAe,GAAY;IAChC,OAAO,KAAKC,YAAZ;EACD;;EAEqB,OAAfC,eAAe,CAACC,EAAD,EAAoB;IACxC,KAAKF,YAAL,GAAoBE,EAApB;EACD;;EAEiB,OAAXC,WAAW,GAAW;IAC3B,OAAO,KAAKC,QAAZ;EACD;;EAEiB,OAAXC,WAAW,GAAW;IAC3B,OAAO,KAAKtH,cAAZ;EACD;;EAE2B,OAArBuH,qBAAqB,GAAgB;IAC1C,OAAO;MACLC,GAAG,EAAEnI,MAAM,CAACoI,MADP;MAELC,GAAG,EAAErI,MAAM,CAACsI;IAFP,CAAP;EAID;;EAEiB,OAAXC,WAAW,GAAW;IAC3B,OAAQ,KAAKC,mBAAL,CAAyB,WAAzB,CAAD,IAAqD,MAA5D;EACD;;EAEyB,OAAnBA,mBAAmB,CAACC,KAAD,EAA2C;IACnE,OAAO,KAAKb,YAAL,CAAkBa,KAAlB,CAAP;EACD;;EAEiB,OAAXC,WAAW,CAACC,IAAD,EAAqB;IACrC,KAAKX,QAAL,GAAgBW,IAAI,IAAI,IAAxB;EACD;;EAEuB,OAAjBC,iBAAiB,GAAW;IACjC,OAAO,KAAKtI,SAAL,CAAeuI,OAAtB;EACD;;EAEoB,OAAdC,cAAc,CAACtC,GAAD,EAAcC,KAAd,EAAgC;IACnD,KAAKmB,YAAL,CAAkBpB,GAAlB,IAAyBC,KAAzB;EACD;;EAEgB,OAAVsC,UAAU,CAACC,MAAD,EAAmBC,MAAnB,EAA+C;IAC9D,KAAKC,WAAL,GAAmBF,MAAnB;IACA,KAAKG,eAAL,GAAuBF,MAAvB;EACD;;EAEoB,OAAdG,cAAc,GAAa;IAChC,OAAO,KAAKF,WAAL,IAAoB,EAA3B;EACD;;EAEoB,OAAdG,cAAc,GAAiB;IACpC,OAAO,KAAKF,eAAL,IAAwB,EAA/B;EACD;;EAEuB,OAAjBG,iBAAiB,CAACC,QAAD,EAA6B;IACnD,KAAKC,cAAL,GAAsBD,QAAtB;IACA,OAAO,KAAKC,cAAZ;EACD;;EAEuB,OAAjBC,iBAAiB,GAAY;IAClC,OAAO,KAAKD,cAAZ;EACD;;EAEwB,OAAlBE,kBAAkB,GAAW;IAClC,OAAO,KAAK/I,cAAZ;EACD;;EAEgB,OAAVgJ,UAAU,GAAW;IAAA;;IAC1B,0BAAO,KAAKvE,SAAZ,oDAAO,gBAAgBG,OAAvB;EACD;;EAEwB,OAAlBqE,kBAAkB,CAAC9I,UAAD,EAA2B;IAAA;;IAClD,KAAKA,UAAL,GAAkBA,UAAlB,aAAkBA,UAAlB,2CAAkBA,UAAU,CAAE+I,IAAZ,EAAlB,qDAAkB,iBAAoBjJ,WAApB,EAAlB;EACD;;EAEmB,OAAbkJ,aAAa,GAAW;IAC7B,OAAO,KAAKhJ,UAAZ;EACD;;EAEiB,OAAXiJ,WAAW,GAAW;IAAA;;IAC3B,4BAAO,KAAKlE,WAAZ,sDAAO,kBAAkBmE,GAAzB;EACD;;EAEa,OAAPC,OAAO,GAAW;IAAA;;IACvB,6BAAO,KAAKpE,WAAZ,uDAAO,mBAAkBqE,GAAzB;EACD;;EAE4B,OAAtBC,sBAAsB,GAAuB;IAClD,OAAO,KAAKtE,WAAL,GAAmByB,IAAI,CAACC,SAAL,CAAe,KAAK1B,WAApB,CAAnB,GAAsDF,SAA7D;EACD;;EAEc,OAARyE,QAAQ,GAAW;IAAA;;IACxB,OAAO,IAAP,aAAO,IAAP,2CAAO,KAAM9J,SAAb,2EAAO,iBAAiBE,CAAxB,uDAAO,mBAAoBmB,IAA3B;EACD;;EAEoB,OAAd0I,cAAc,GAAW;IAC9B,OAAOlK,YAAP;EACD;;EAEc,OAARmK,QAAQ,GAAkB;IAC/B,OAAO,KAAKC,UAAZ;EACD;;EAEc,OAARhK,QAAQ,CAACiK,QAAD,EAAgC;IAC7C,KAAKD,UAAL,GAAkBC,QAAlB;EACD;;AAhWoB;;gBAAVpK,S,4BAC6B,K;;gBAD7BA,S,kBAE4B,E;;gBAF5BA,S;;gBAAAA,S,qBAIyC,E;;gBAJzCA,S,oBAK8B,E;;gBAL9BA,S,cAMe,I;;gBANfA,S;;gBAAAA,S;;gBAAAA,S;;gBAAAA,S;;gBAAAA,S;;gBAAAA,S,cAYe,I;;gBAZfA,S;;gBAAAA,S,oBAcqB,S;;gBAdrBA,S,gBAeiB,Q;;gBAfjBA,S,cAgBgC,E;;gBAhBhCA,S,kBAiBmB,K;;gBAjBnBA,S;;gBAAAA,S,gCAoB2C,E;;gBApB3CA,S,gCAqB2C,E;;gBArB3CA,S,yBAsBoC,E;;gBAtBpCA,S,mBAwB4C,E"}
|
|
1
|
+
{"version":3,"names":["AsyncStorage","Logger","Platform","Utils","CORE_VERSION","DataStore","init","clientSdk","setMpEnv","s","ev","OS","devicePlatform","toLowerCase","isTablet","deviceType","interestedClientSideEvents","_makeUniqueStringArray","dtmE","ctmE","mpDlE","interestedServerSideEvents","sseDtmE","sseCtmE","sseMpDlE","interestedAllEvents","resetCollectorUrl","c_url","v_id","p_id","isDataStoreInitialized","baseCollectorUrl","sdkEnv","vendorId","projectId","tagsBaseUrl","urls","tfUrl","errUrl","rptUrl","infoUrl","baseUrl","attrInfoUrl","idlUrl","enQueueTMFire","sseOnly","name","dcrName","eventId","dcrPayload","runQueue","push","isDataStoreReady","shouldExecuteTMForEvent","eventName","indexOf","shouldExecuteSST","shouldExecuteClientSideTm","getSdkPcKey","pcKey","getSdkInitOptions","sdkInitOptions","setDeviceInfo","info","deviceInfo","getDeviceInfo","setSdkInitOptions","options","deQueueTMFire","length","pop","isTagManagerProcessing","isProcessing","setTagManagerProcessing","status","getSdkDataElements","d","getSdkQC","qc","hasOneSSTTag","sst","getSSTDownStream","dws_s_t","getClientDownStream","dws_c_t","getClientSdk","getSSTUrl","getAttrInfoUrl","setVisitInfo","visitInfo","visitInfoToString","visitVer","visitId","visitTs","visitCt","visitDepth","undefined","setVisitorInfo","visitorInfo","getDebugId","debugId","getErrorReportUrl","getIdlUrl","getSdkVersion","v","setDebugId","dbgId","shouldFireSstForEvent","addCommonCookie","key","value","commonCookies","getCommonCookies","getUrlInfo","getSdkTags","t","getSdkProviders","p","getPrivacyCompliance","prStatus","setPrivacyCompliance","storeData","setItem","JSON","stringify","getDataFromStorage","getItem","parse","getDataElements","dataElements","setDataElements","de","getPageLang","pageLang","getDeviceOs","getDataElementHelpers","log","logDbg","err","logError","getPageName","getDataElementValue","param","setPageLang","lang","getSdkPageLangKey","langKey","setDataElement","setValidQc","qcList","qcInfo","validQcList","validQcInfoList","getValidQcList","getValidQcInfo","setTransFunctions","elements","transFunctions","getTransFunctions","getOperatingSystem","getVisitId","overrideDeviceType","trim","getDeviceType","getDeviceId","dId","getMpId","mId","getVisitorInfoAsString","getOrgId","getCoreVersion","getMpEnv","mpEnvShort","shortEnv"],"sources":["data-store.ts"],"sourcesContent":["import AsyncStorage from '@react-native-async-storage/async-storage';\nimport type {\n DeJsvHelper,\n MapLike,\n MpDeviceInfo,\n QcInfoItem,\n RunQueueModel,\n SdkInitOptions,\n UrlInfo,\n VisitInfo,\n VisitorInfo,\n} from './app-types';\nimport { Logger } from './logger';\nimport type {\n ClientSdkDeItem,\n ClientSdkPrItem,\n ClientSdkQcItem,\n ClientSdkTagItem,\n MpClientSdk,\n} from '../models/mp-client-sdk';\nimport { Platform } from 'react-native';\nimport { Utils } from './utils';\n\nconst CORE_VERSION = '0.8.6';\n\nexport class DataStore {\n private static isDataStoreInitialized = false;\n private static dataElements: MapLike = {};\n private static validQcList: string[];\n private static validQcInfoList: Array<QcInfoItem> = [];\n private static transFunctions: MapLike = {};\n private static prStatus = true;\n private static clientSdk: MpClientSdk;\n private static urls: UrlInfo;\n private static debugId: string;\n private static visitorInfo: VisitorInfo;\n private static visitInfo: VisitInfo;\n private static pageLang = 'en';\n private static mpEnvShort: 'stg' | 'prd';\n private static devicePlatform = 'unknown';\n private static deviceType = 'mobile';\n private static runQueue: RunQueueModel[] = [];\n private static isProcessing = false;\n private static sdkInitOptions: SdkInitOptions;\n private static deviceInfo: MpDeviceInfo;\n\n private static interestedClientSideEvents: string[] = [];\n private static interestedServerSideEvents: string[] = [];\n private static interestedAllEvents: string[] = [];\n\n private static commonCookies: Record<string, string> = {};\n\n static async init(clientSdk: MpClientSdk): Promise<void> {\n this.clientSdk = clientSdk;\n this.setMpEnv(clientSdk?.s?.ev === 'staging' ? 'stg' : 'prd');\n if (typeof Platform !== 'undefined' && typeof Platform.OS !== 'undefined') {\n this.devicePlatform = Platform.OS.toLowerCase();\n }\n\n if (Utils.isTablet()) {\n this.deviceType = 'tablet';\n } else {\n this.deviceType = 'mobile';\n }\n\n this.interestedClientSideEvents = Utils._makeUniqueStringArray([\n ...(clientSdk.dtmE ?? []),\n ...(clientSdk.ctmE ?? []),\n ...(clientSdk.mpDlE ?? []),\n ]);\n\n this.interestedServerSideEvents = Utils._makeUniqueStringArray([\n ...(clientSdk.sseDtmE ?? []),\n ...(clientSdk.sseCtmE ?? []),\n ...(clientSdk.sseMpDlE ?? []),\n ]);\n\n this.interestedAllEvents = Utils._makeUniqueStringArray([\n ...this.interestedClientSideEvents,\n ...this.interestedServerSideEvents,\n ]);\n\n this.resetCollectorUrl(\n clientSdk.s.c_url,\n clientSdk.s.ev,\n clientSdk.s.v_id,\n clientSdk.s.p_id\n );\n this.isDataStoreInitialized = true;\n }\n\n static resetCollectorUrl(\n baseCollectorUrl: string,\n sdkEnv: string,\n vendorId: string,\n projectId: string\n ): boolean {\n const tagsBaseUrl = `${baseCollectorUrl}/${\n sdkEnv === 'staging' ? 's' : 'p'\n }/${vendorId}/${projectId}`;\n this.urls = {\n tfUrl: tagsBaseUrl + '/sst',\n errUrl: tagsBaseUrl + '/err',\n rptUrl: tagsBaseUrl + '/report',\n infoUrl: tagsBaseUrl + '/info',\n baseUrl: baseCollectorUrl,\n attrInfoUrl: baseCollectorUrl + `/idl/${vendorId}/attrInfo`,\n idlUrl:\n baseCollectorUrl +\n `/idl/${vendorId}/idl${sdkEnv === 'staging' ? '-staging' : ''}`,\n };\n return true;\n }\n\n static enQueueTMFire(\n sseOnly: boolean,\n name: string,\n dcrName: string,\n eventId: string,\n dcrPayload?: Record<string, any>\n ): void {\n this.runQueue.push({ sseOnly, name, dcrName, eventId, dcrPayload });\n }\n\n static isDataStoreReady(): boolean {\n return this.isDataStoreInitialized;\n }\n\n static shouldExecuteTMForEvent(eventName: string): boolean {\n return this.interestedAllEvents.indexOf(eventName) > -1;\n }\n\n static shouldExecuteSST(eventName: string): boolean {\n return this.interestedServerSideEvents.indexOf(eventName) > -1;\n }\n\n static shouldExecuteClientSideTm(eventName: string): boolean {\n return this.interestedClientSideEvents.indexOf(eventName) > -1;\n }\n\n static getSdkPcKey(): string {\n return this.clientSdk.pcKey;\n }\n\n static getSdkInitOptions(): SdkInitOptions {\n return this.sdkInitOptions;\n }\n\n static setDeviceInfo(info: MpDeviceInfo): void {\n this.deviceInfo = info;\n }\n\n static getDeviceInfo(): MpDeviceInfo {\n return this.deviceInfo;\n }\n\n static setSdkInitOptions(options: SdkInitOptions): void {\n this.sdkInitOptions = options;\n }\n\n static deQueueTMFire(): RunQueueModel {\n return this.runQueue.length > 0 ? this.runQueue.pop() : null;\n }\n\n static isTagManagerProcessing(): boolean {\n return this.isProcessing;\n }\n\n static setTagManagerProcessing(status: boolean): void {\n this.isProcessing = status;\n }\n\n static getSdkDataElements(): MapLike<ClientSdkDeItem> {\n return this.clientSdk?.d || {};\n }\n\n static getSdkQC(): ClientSdkQcItem[] {\n return this.clientSdk?.qc || [];\n }\n\n static hasOneSSTTag(): boolean {\n return this.clientSdk.s.sst;\n }\n\n static getSSTDownStream(): 'j' | 'n' {\n return this.clientSdk.s.dws_s_t;\n }\n\n static getClientDownStream(): 'j' | 'n' {\n return this.clientSdk.s.dws_c_t;\n }\n\n static getClientSdk(): MpClientSdk {\n return this.clientSdk;\n }\n\n static getSSTUrl(): string {\n return this.urls.tfUrl;\n }\n\n static getAttrInfoUrl(): string {\n return this.urls.attrInfoUrl;\n }\n\n static setVisitInfo(visitInfo: VisitInfo): void {\n this.visitInfo = visitInfo;\n }\n\n static visitInfoToString(): string {\n return this.visitInfo\n ? `${this.visitInfo.visitVer}|${this.visitInfo.visitId}|${this.visitInfo.visitTs}|${this.visitInfo.visitCt}|${this.visitInfo.visitDepth}`\n : undefined;\n }\n\n static setVisitorInfo(visitorInfo: VisitorInfo): void {\n this.visitorInfo = visitorInfo;\n }\n\n static getDebugId(): string {\n return this.debugId;\n }\n\n static getErrorReportUrl(): string {\n return this.urls.errUrl;\n }\n\n static getIdlUrl(): string {\n return this.urls?.idlUrl;\n }\n\n static getSdkVersion(): string {\n return this.clientSdk.s.v;\n }\n\n static setDebugId(dbgId: string): void {\n this.debugId = dbgId;\n }\n\n static shouldFireSstForEvent(eventName: string): boolean {\n return this.clientSdk?.sseMpDlE?.indexOf(eventName) > -1;\n }\n\n static addCommonCookie(key: string, value: string): void {\n this.commonCookies[key] = value;\n }\n\n static getCommonCookies(): Record<string, string> {\n return this.commonCookies;\n }\n\n static getUrlInfo(): UrlInfo {\n return this.urls;\n }\n\n static getSdkTags(): MapLike<ClientSdkTagItem> {\n return this?.clientSdk?.t ?? {};\n }\n\n static getSdkProviders(): MapLike<ClientSdkPrItem> {\n return this?.clientSdk?.p ?? {};\n }\n\n static getPrivacyCompliance(): boolean {\n return this.prStatus;\n }\n\n static setPrivacyCompliance(status: boolean): void {\n this.prStatus = status;\n }\n\n static async storeData(key: string, value: any): Promise<void> {\n await AsyncStorage.setItem(key, JSON.stringify(value));\n }\n\n static async getDataFromStorage<T>(key: string): Promise<T> {\n const value = await AsyncStorage.getItem(key);\n return value ? JSON.parse(value) : value;\n }\n\n static getDataElements(): MapLike {\n return this.dataElements;\n }\n\n static setDataElements(de: MapLike): void {\n this.dataElements = de;\n }\n\n static getPageLang(): string {\n return this.pageLang;\n }\n\n static getDeviceOs(): string {\n return this.devicePlatform;\n }\n\n static getDataElementHelpers(): DeJsvHelper {\n return {\n log: Logger.logDbg,\n err: Logger.logError,\n };\n }\n\n static getPageName(): string {\n return (this.getDataElementValue('page_name') as string) || 'none';\n }\n\n static getDataElementValue(param: string): string | boolean | number {\n return this.dataElements[param];\n }\n\n static setPageLang(lang: string): void {\n this.pageLang = lang || 'en';\n }\n\n static getSdkPageLangKey(): string {\n return this.clientSdk.langKey;\n }\n\n static setDataElement(key: string, value: any): void {\n this.dataElements[key] = value;\n }\n\n static setValidQc(qcList: string[], qcInfo: QcInfoItem[]): void {\n this.validQcList = qcList;\n this.validQcInfoList = qcInfo;\n }\n\n static getValidQcList(): string[] {\n return this.validQcList || [];\n }\n\n static getValidQcInfo(): QcInfoItem[] {\n return this.validQcInfoList || [];\n }\n\n static setTransFunctions(elements: MapLike): MapLike {\n this.transFunctions = elements;\n return this.transFunctions;\n }\n\n static getTransFunctions(): MapLike {\n return this.transFunctions;\n }\n\n static getOperatingSystem(): string {\n return this.devicePlatform;\n }\n\n static getVisitId(): string {\n return this.visitInfo?.visitId;\n }\n\n static overrideDeviceType(deviceType: string): void {\n this.deviceType = deviceType?.trim()?.toLowerCase();\n }\n\n static getDeviceType(): string {\n return this.deviceType;\n }\n\n static getDeviceId(): string {\n return this.visitorInfo?.dId;\n }\n\n static getMpId(): string {\n return this.visitorInfo?.mId;\n }\n\n static getVisitorInfoAsString(): string | undefined {\n return this.visitorInfo ? JSON.stringify(this.visitorInfo) : undefined;\n }\n\n static getOrgId(): string {\n return this?.clientSdk?.s?.v_id;\n }\n\n static getCoreVersion(): string {\n return CORE_VERSION;\n }\n\n static getMpEnv(): 'stg' | 'prd' {\n return this.mpEnvShort;\n }\n\n static setMpEnv(shortEnv: 'stg' | 'prd'): void {\n this.mpEnvShort = shortEnv;\n }\n}\n"],"mappings":"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"}
|
package/lib/module/index.js
CHANGED
|
@@ -28,11 +28,6 @@ class MagicPixelImpl {
|
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
this.setAppVersion(options.app_version);
|
|
31
|
-
|
|
32
|
-
if (options.os_version) {
|
|
33
|
-
this.customerIdentifiers.os_version = options.os_version;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
31
|
await VisitIdProcessor.init(options === null || options === void 0 ? void 0 : options.orgId);
|
|
37
32
|
const fbp = await VisitIdProcessor.getFacebookFBP();
|
|
38
33
|
|
|
@@ -204,6 +199,10 @@ class MagicPixelImpl {
|
|
|
204
199
|
this.deepLinkUrl = deepLinkUrl;
|
|
205
200
|
}
|
|
206
201
|
|
|
202
|
+
static setDeviceInfo(deviceInfo) {
|
|
203
|
+
DataStore.setDeviceInfo(deviceInfo);
|
|
204
|
+
}
|
|
205
|
+
|
|
207
206
|
static setFacebookClientId(fbp) {
|
|
208
207
|
this.customerIdentifiers.fbp = fbp;
|
|
209
208
|
}
|
|
@@ -223,18 +222,30 @@ class MagicPixelImpl {
|
|
|
223
222
|
pageLoadInfo.deep_link_url = this.deepLinkUrl;
|
|
224
223
|
}
|
|
225
224
|
|
|
225
|
+
const deviceInfo = DataStore.getDeviceInfo();
|
|
226
|
+
|
|
226
227
|
if (this.customerInfo) {
|
|
227
228
|
const newPayload = { ...pageLoadInfo,
|
|
228
229
|
...this.customerInfo,
|
|
229
230
|
...(this.customerIdentifiers ?? {}),
|
|
230
231
|
...Utils.parseQueryParamsToObject(pageLoadInfo === null || pageLoadInfo === void 0 ? void 0 : pageLoadInfo.deep_link_url)
|
|
231
232
|
};
|
|
233
|
+
|
|
234
|
+
if (deviceInfo) {
|
|
235
|
+
newPayload.device_info = deviceInfo;
|
|
236
|
+
}
|
|
237
|
+
|
|
232
238
|
this.dl.pushEvent('page_load', newPayload);
|
|
233
239
|
} else {
|
|
234
240
|
const newPayload = { ...pageLoadInfo,
|
|
235
241
|
...(this.customerIdentifiers ?? {}),
|
|
236
242
|
...Utils.parseQueryParamsToObject(pageLoadInfo === null || pageLoadInfo === void 0 ? void 0 : pageLoadInfo.deep_link_url)
|
|
237
243
|
};
|
|
244
|
+
|
|
245
|
+
if (deviceInfo) {
|
|
246
|
+
newPayload.device_info = deviceInfo;
|
|
247
|
+
}
|
|
248
|
+
|
|
238
249
|
this.dl.pushEvent('page_load', newPayload);
|
|
239
250
|
} // only set for first page load event and remove after that
|
|
240
251
|
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MpDataLayerHelper","DataStore","Logger","Reporter","DataElementProcessor","TagProcessor","Utils","QcProcessor","NetworkService","EventBus","VisitIdProcessor","DL_INIT_EVENT","MagicPixelImpl","init","options","refreshClientSdkJson","isDataStoreReady","Error","device_type","trim","length","overrideDeviceType","setAppVersion","app_version","os_version","customerIdentifiers","orgId","fbp","getFacebookFBP","logDbg","setFacebookClientId","MagicPixelEventBus","on","evtName","payload","JSON","stringify","eventName","eventDataModel","model","eventId","shouldExecuteTMForEvent","enQueueTMFire","checkAndFireTM","isFirstOpen","isFirstOpenAfterInstall","recordEvent","ready","customerInfo","newPayload","dl","pushEvent","getDebugId","isTagManagerProcessing","item","deQueueTMFire","name","dcrName","dcrPayload","runTM","sseOnly","err","logError","reportError","triggerName","evtId","eventData","setTagManagerProcessing","processDataElements","getSdkDataElements","sdk","getClientSdk","pcKey","getSdkPcKey","pcVal","getDataElementValue","setPrivacyCompliance","getSdkPageLangKey","setDataElement","setPageLang","getOperatingSystem","toLowerCase","initReporter","s","ev","ev_id","getDeviceType","getPageLang","getDeviceOs","getPageName","getClientDownStream","getCoreVersion","validQCList","processQc","getSdkQC","getValidQcInfo","processTags","then","_fireTM","catch","runTMErr","envName","envId","incrementVisitDepth","finally","_fireTMPrivate","hasOneSSTTag","shouldFireSstForEvent","postSST","getDataElements","getSSTDownStream","sleep","setCustomerInfo","setFirebaseAppInstanceId","instanceId","firebase_instance_id","setDeepLinkUrl","deepLinkUrl","appVersion","recordPageLoad","pageLoadInfo","is_entry","firstAppLaunch","deep_link_url","parseQueryParamsToObject","undefined","MagicPixel"],"sources":["index.tsx"],"sourcesContent":["import { MpDataLayerHelper } from './eedl/eedl';\nimport type {\n AppCustomerInfo,\n AppPageLoad,\n MapLike,\n SdkInitOptions,\n} from './common/app-types';\nimport { DataStore } from './common/data-store';\nimport { Logger } from './common/logger';\nimport { Reporter } from './common/reporter';\nimport { DataElementProcessor } from './processors/data-element.processor';\nimport { TagProcessor } from './processors/tag.processor';\nimport { Utils } from './common/utils';\nimport { QcProcessor } from './processors/qc.processor';\nimport { NetworkService } from './common/network-service';\nimport { EventBus } from './common/event-bus';\nimport { VisitIdProcessor } from './processors/visit-id.processor';\n\nconst DL_INIT_EVENT = 'page_load';\n\nclass MagicPixelImpl {\n private static dl: MpDataLayerHelper = new MpDataLayerHelper(\n 'mpDlEvent',\n 'manual',\n DL_INIT_EVENT\n );\n private static customerInfo: AppCustomerInfo;\n private static customerIdentifiers: MapLike = {};\n\n private static deepLinkUrl: string | undefined = undefined;\n\n private static firstAppLaunch = true;\n\n static async init(options: SdkInitOptions): Promise<void> {\n await NetworkService.refreshClientSdkJson(options);\n\n if (!DataStore.isDataStoreReady()) {\n throw new Error('MagicPixel SDK is not ready. No tags will be processed');\n }\n\n if (\n options &&\n options.device_type &&\n options.device_type?.trim().length > 0\n ) {\n DataStore.overrideDeviceType(options.device_type);\n }\n\n this.setAppVersion(options.app_version);\n\n if (options.os_version) {\n this.customerIdentifiers.os_version = options.os_version;\n }\n\n await VisitIdProcessor.init(options?.orgId);\n\n const fbp = await VisitIdProcessor.getFacebookFBP();\n if (fbp) {\n Logger.logDbg('Setting facebook client id', fbp);\n this.setFacebookClientId(fbp);\n } else {\n Logger.logDbg('No facebook client id found. not setting');\n }\n\n MagicPixelEventBus.on('mpDlEvent', async (evtName, payload) => {\n Logger.logDbg('mpDlEvent:: ', evtName, JSON.stringify(payload));\n const eventName: string = payload.eventName;\n const eventDataModel: MapLike = payload.model ?? {};\n const eventId = eventDataModel['ev._id'];\n\n Logger.logDbg('Tracking Event:: ', eventName, 'with id:: ', eventId);\n\n if (DataStore.shouldExecuteTMForEvent(eventName)) {\n // if this is something the tag manager is interested in - fire tag manager\n DataStore.enQueueTMFire(\n false,\n `custom_event_${eventName}`,\n eventName,\n eventId,\n eventDataModel\n );\n await this.checkAndFireTM();\n }\n });\n\n const isFirstOpen = await VisitIdProcessor.isFirstOpenAfterInstall();\n if (isFirstOpen) {\n Logger.logDbg('First open event fired');\n this.recordEvent('app_first_open', {});\n }\n\n this.ready();\n }\n\n static recordEvent(eventName: string, payload: MapLike): void {\n if (this.customerInfo) {\n const newPayload: MapLike = {\n ...payload,\n ...this.customerInfo,\n ...(this.customerIdentifiers ?? {}),\n };\n this.dl.pushEvent(eventName, newPayload);\n } else {\n const newPayload: MapLike = {\n ...payload,\n ...(this.customerIdentifiers ?? {}),\n };\n this.dl.pushEvent(eventName, newPayload);\n }\n }\n\n static ready(): void {\n this.dl.ready();\n }\n\n static getDebugId(): string {\n return DataStore.getDebugId();\n }\n\n private static async checkAndFireTM(): Promise<void> {\n try {\n if (!DataStore.isTagManagerProcessing()) {\n const item = DataStore.deQueueTMFire();\n if (item) {\n Logger.logDbg(\n 'Executing TM For: ',\n item.name,\n ', Event:: ',\n item.dcrName,\n ', Event id:: ',\n item.eventId,\n 'Payload:: ',\n item.dcrPayload\n );\n await this.runTM(\n item.sseOnly,\n item.name,\n item.dcrName,\n item.eventId,\n item.dcrPayload\n );\n }\n } else {\n Logger.logDbg(\n 'Tag Manager is processing or is not ready. This event will start after that'\n );\n }\n } catch (err) {\n Logger.logError('Error check and process tm', err);\n Reporter.reportError('m:checkAndFireTM', err);\n }\n }\n\n private static async runTM(\n sseOnly: boolean,\n triggerName: string,\n evtName: string,\n evtId: string,\n eventData?: Record<string, any>\n ): Promise<void> {\n try {\n Logger.logDbg(\n 'Running:: ',\n sseOnly,\n triggerName,\n evtName,\n evtId,\n eventData\n );\n\n // set tag manager in process status\n DataStore.setTagManagerProcessing(true);\n\n // process all the data elements and cache them for this run\n await DataElementProcessor.processDataElements(\n DataStore.getSdkDataElements(),\n eventData\n );\n\n const sdk = DataStore.getClientSdk();\n\n const pcKey = DataStore.getSdkPcKey();\n if (pcKey) {\n const pcVal = DataStore.getDataElementValue(pcKey);\n if (typeof pcVal !== 'undefined' && pcVal === true) {\n Logger.logDbg('Set: PR Comp: ', true);\n DataStore.setPrivacyCompliance(true);\n } else {\n Logger.logDbg('Set: PR Comp: ', false);\n DataStore.setPrivacyCompliance(false);\n }\n } else {\n Logger.logDbg('Set: PR Comp: ', false);\n DataStore.setPrivacyCompliance(true);\n }\n\n if (DataStore.getSdkPageLangKey()) {\n DataStore.setDataElement(\n 'page_lang_key',\n DataStore.getSdkPageLangKey()\n );\n DataStore.setPageLang(\n DataStore.getDataElementValue('page_lang_key') as string\n );\n } else {\n DataStore.setDataElement('page_lang_key', null);\n }\n\n //set page_browser default data element with page_os because backend expects this\n DataStore.setDataElement(\n 'page_browser',\n DataStore.getOperatingSystem().toLowerCase()\n );\n\n Reporter.initReporter(\n sdk.s.ev,\n sdk.s.ev_id,\n DataStore.getDeviceType(),\n DataStore.getPageLang(),\n DataStore.getDeviceOs(),\n DataStore.getPageName(),\n evtName,\n evtId,\n DataStore.getClientDownStream(),\n DataStore.getCoreVersion(),\n []\n );\n\n const validQCList = QcProcessor.processQc(\n DataStore.getSdkQC(),\n evtName,\n evtId\n );\n\n if (validQCList?.length > 0) {\n Logger.logDbg('Found Valid QCs to process', DataStore.getValidQcInfo());\n\n TagProcessor.processTags(evtName, evtId)\n .then(() => {\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n })\n .catch((err) => {\n Logger.logError('Error processing tag lists.', err);\n Reporter.reportError('i::processTags', err);\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n });\n } else {\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n }\n } catch (runTMErr) {\n Logger.logError('Error in runTM', runTMErr);\n Reporter.reportError('m::runTM', runTMErr);\n }\n }\n\n private static _fireTM(\n envName: string,\n envId: string,\n evtName: string,\n evtId: string\n ): void {\n // increment visit_depth if event name is page_load because that's the only way we can track page views in an app for now\n if (evtName === DL_INIT_EVENT) {\n VisitIdProcessor.incrementVisitDepth().finally(() => {\n this._fireTMPrivate(envName, envId, evtName, evtId);\n });\n } else {\n this._fireTMPrivate(envName, envId, evtName, evtId);\n }\n }\n\n private static _fireTMPrivate(\n envName: string,\n envId: string,\n evtName: string,\n evtId: string\n ): void {\n if (DataStore.hasOneSSTTag() && DataStore.shouldFireSstForEvent(evtName)) {\n Reporter.postSST(\n DataStore.getDataElements(),\n envName,\n envId,\n DataStore.getSSTDownStream(),\n evtName,\n evtId\n ).catch((err: any) => {\n Reporter.reportError('l::postSST', err);\n });\n }\n\n DataStore.setTagManagerProcessing(false);\n Utils.sleep(250).then(async () => {\n try {\n await this.checkAndFireTM();\n } catch (err) {\n Reporter.reportError('i::runTM', err);\n }\n });\n }\n\n static setCustomerInfo(customerInfo: AppCustomerInfo): void {\n this.customerInfo = customerInfo;\n this.recordEvent('idl_attribution_link', customerInfo);\n }\n\n static setFirebaseAppInstanceId(instanceId: string): void {\n this.customerIdentifiers.firebase_instance_id = instanceId;\n }\n\n static setDeepLinkUrl(deepLinkUrl: string): void {\n this.deepLinkUrl = deepLinkUrl;\n }\n\n static setFacebookClientId(fbp: string): void {\n this.customerIdentifiers.fbp = fbp;\n }\n\n private static setAppVersion(appVersion?: string): void {\n if (appVersion && appVersion?.trim()?.length > 0) {\n this.customerIdentifiers.app_version = appVersion;\n }\n }\n\n static recordPageLoad(pageLoadInfo: AppPageLoad): void {\n pageLoadInfo.is_entry = this.firstAppLaunch ? 1 : 0;\n\n if (this.deepLinkUrl) {\n pageLoadInfo.deep_link_url = this.deepLinkUrl;\n }\n\n if (this.customerInfo) {\n const newPayload: MapLike = {\n ...pageLoadInfo,\n ...this.customerInfo,\n ...(this.customerIdentifiers ?? {}),\n ...Utils.parseQueryParamsToObject(pageLoadInfo?.deep_link_url),\n };\n this.dl.pushEvent('page_load', newPayload);\n } else {\n const newPayload: MapLike = {\n ...pageLoadInfo,\n ...(this.customerIdentifiers ?? {}),\n ...Utils.parseQueryParamsToObject(pageLoadInfo?.deep_link_url),\n };\n this.dl.pushEvent('page_load', newPayload);\n }\n // only set for first page load event and remove after that\n this.deepLinkUrl = undefined;\n this.firstAppLaunch = false;\n }\n}\n\nexport const MagicPixelEventBus = EventBus;\nexport const MagicPixel = MagicPixelImpl;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["MpDataLayerHelper","DataStore","Logger","Reporter","DataElementProcessor","TagProcessor","Utils","QcProcessor","NetworkService","EventBus","VisitIdProcessor","DL_INIT_EVENT","MagicPixelImpl","init","options","refreshClientSdkJson","isDataStoreReady","Error","device_type","trim","length","overrideDeviceType","setAppVersion","app_version","orgId","fbp","getFacebookFBP","logDbg","setFacebookClientId","MagicPixelEventBus","on","evtName","payload","JSON","stringify","eventName","eventDataModel","model","eventId","shouldExecuteTMForEvent","enQueueTMFire","checkAndFireTM","isFirstOpen","isFirstOpenAfterInstall","recordEvent","ready","customerInfo","newPayload","customerIdentifiers","dl","pushEvent","getDebugId","isTagManagerProcessing","item","deQueueTMFire","name","dcrName","dcrPayload","runTM","sseOnly","err","logError","reportError","triggerName","evtId","eventData","setTagManagerProcessing","processDataElements","getSdkDataElements","sdk","getClientSdk","pcKey","getSdkPcKey","pcVal","getDataElementValue","setPrivacyCompliance","getSdkPageLangKey","setDataElement","setPageLang","getOperatingSystem","toLowerCase","initReporter","s","ev","ev_id","getDeviceType","getPageLang","getDeviceOs","getPageName","getClientDownStream","getCoreVersion","validQCList","processQc","getSdkQC","getValidQcInfo","processTags","then","_fireTM","catch","runTMErr","envName","envId","incrementVisitDepth","finally","_fireTMPrivate","hasOneSSTTag","shouldFireSstForEvent","postSST","getDataElements","getSSTDownStream","sleep","setCustomerInfo","setFirebaseAppInstanceId","instanceId","firebase_instance_id","setDeepLinkUrl","deepLinkUrl","setDeviceInfo","deviceInfo","appVersion","recordPageLoad","pageLoadInfo","is_entry","firstAppLaunch","deep_link_url","getDeviceInfo","parseQueryParamsToObject","device_info","undefined","MagicPixel"],"sources":["index.tsx"],"sourcesContent":["import { MpDataLayerHelper } from './eedl/eedl';\nimport type {\n AppCustomerInfo,\n AppPageLoad,\n MapLike,\n MpDeviceInfo,\n SdkInitOptions,\n} from './common/app-types';\nimport { DataStore } from './common/data-store';\nimport { Logger } from './common/logger';\nimport { Reporter } from './common/reporter';\nimport { DataElementProcessor } from './processors/data-element.processor';\nimport { TagProcessor } from './processors/tag.processor';\nimport { Utils } from './common/utils';\nimport { QcProcessor } from './processors/qc.processor';\nimport { NetworkService } from './common/network-service';\nimport { EventBus } from './common/event-bus';\nimport { VisitIdProcessor } from './processors/visit-id.processor';\n\nconst DL_INIT_EVENT = 'page_load';\n\nclass MagicPixelImpl {\n private static dl: MpDataLayerHelper = new MpDataLayerHelper(\n 'mpDlEvent',\n 'manual',\n DL_INIT_EVENT\n );\n private static customerInfo: AppCustomerInfo;\n private static customerIdentifiers: MapLike = {};\n\n private static deepLinkUrl: string | undefined = undefined;\n\n private static firstAppLaunch = true;\n\n static async init(options: SdkInitOptions): Promise<void> {\n await NetworkService.refreshClientSdkJson(options);\n\n if (!DataStore.isDataStoreReady()) {\n throw new Error('MagicPixel SDK is not ready. No tags will be processed');\n }\n\n if (\n options &&\n options.device_type &&\n options.device_type?.trim().length > 0\n ) {\n DataStore.overrideDeviceType(options.device_type);\n }\n\n this.setAppVersion(options.app_version);\n\n await VisitIdProcessor.init(options?.orgId);\n\n const fbp = await VisitIdProcessor.getFacebookFBP();\n if (fbp) {\n Logger.logDbg('Setting facebook client id', fbp);\n this.setFacebookClientId(fbp);\n } else {\n Logger.logDbg('No facebook client id found. not setting');\n }\n\n MagicPixelEventBus.on('mpDlEvent', async (evtName, payload) => {\n Logger.logDbg('mpDlEvent:: ', evtName, JSON.stringify(payload));\n const eventName: string = payload.eventName;\n const eventDataModel: MapLike = payload.model ?? {};\n const eventId = eventDataModel['ev._id'];\n\n Logger.logDbg('Tracking Event:: ', eventName, 'with id:: ', eventId);\n\n if (DataStore.shouldExecuteTMForEvent(eventName)) {\n // if this is something the tag manager is interested in - fire tag manager\n DataStore.enQueueTMFire(\n false,\n `custom_event_${eventName}`,\n eventName,\n eventId,\n eventDataModel\n );\n await this.checkAndFireTM();\n }\n });\n\n const isFirstOpen = await VisitIdProcessor.isFirstOpenAfterInstall();\n if (isFirstOpen) {\n Logger.logDbg('First open event fired');\n this.recordEvent('app_first_open', {});\n }\n\n this.ready();\n }\n\n static recordEvent(eventName: string, payload: MapLike): void {\n if (this.customerInfo) {\n const newPayload: MapLike = {\n ...payload,\n ...this.customerInfo,\n ...(this.customerIdentifiers ?? {}),\n };\n this.dl.pushEvent(eventName, newPayload);\n } else {\n const newPayload: MapLike = {\n ...payload,\n ...(this.customerIdentifiers ?? {}),\n };\n this.dl.pushEvent(eventName, newPayload);\n }\n }\n\n static ready(): void {\n this.dl.ready();\n }\n\n static getDebugId(): string {\n return DataStore.getDebugId();\n }\n\n private static async checkAndFireTM(): Promise<void> {\n try {\n if (!DataStore.isTagManagerProcessing()) {\n const item = DataStore.deQueueTMFire();\n if (item) {\n Logger.logDbg(\n 'Executing TM For: ',\n item.name,\n ', Event:: ',\n item.dcrName,\n ', Event id:: ',\n item.eventId,\n 'Payload:: ',\n item.dcrPayload\n );\n await this.runTM(\n item.sseOnly,\n item.name,\n item.dcrName,\n item.eventId,\n item.dcrPayload\n );\n }\n } else {\n Logger.logDbg(\n 'Tag Manager is processing or is not ready. This event will start after that'\n );\n }\n } catch (err) {\n Logger.logError('Error check and process tm', err);\n Reporter.reportError('m:checkAndFireTM', err);\n }\n }\n\n private static async runTM(\n sseOnly: boolean,\n triggerName: string,\n evtName: string,\n evtId: string,\n eventData?: Record<string, any>\n ): Promise<void> {\n try {\n Logger.logDbg(\n 'Running:: ',\n sseOnly,\n triggerName,\n evtName,\n evtId,\n eventData\n );\n\n // set tag manager in process status\n DataStore.setTagManagerProcessing(true);\n\n // process all the data elements and cache them for this run\n await DataElementProcessor.processDataElements(\n DataStore.getSdkDataElements(),\n eventData\n );\n\n const sdk = DataStore.getClientSdk();\n\n const pcKey = DataStore.getSdkPcKey();\n if (pcKey) {\n const pcVal = DataStore.getDataElementValue(pcKey);\n if (typeof pcVal !== 'undefined' && pcVal === true) {\n Logger.logDbg('Set: PR Comp: ', true);\n DataStore.setPrivacyCompliance(true);\n } else {\n Logger.logDbg('Set: PR Comp: ', false);\n DataStore.setPrivacyCompliance(false);\n }\n } else {\n Logger.logDbg('Set: PR Comp: ', false);\n DataStore.setPrivacyCompliance(true);\n }\n\n if (DataStore.getSdkPageLangKey()) {\n DataStore.setDataElement(\n 'page_lang_key',\n DataStore.getSdkPageLangKey()\n );\n DataStore.setPageLang(\n DataStore.getDataElementValue('page_lang_key') as string\n );\n } else {\n DataStore.setDataElement('page_lang_key', null);\n }\n\n //set page_browser default data element with page_os because backend expects this\n DataStore.setDataElement(\n 'page_browser',\n DataStore.getOperatingSystem().toLowerCase()\n );\n\n Reporter.initReporter(\n sdk.s.ev,\n sdk.s.ev_id,\n DataStore.getDeviceType(),\n DataStore.getPageLang(),\n DataStore.getDeviceOs(),\n DataStore.getPageName(),\n evtName,\n evtId,\n DataStore.getClientDownStream(),\n DataStore.getCoreVersion(),\n []\n );\n\n const validQCList = QcProcessor.processQc(\n DataStore.getSdkQC(),\n evtName,\n evtId\n );\n\n if (validQCList?.length > 0) {\n Logger.logDbg('Found Valid QCs to process', DataStore.getValidQcInfo());\n\n TagProcessor.processTags(evtName, evtId)\n .then(() => {\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n })\n .catch((err) => {\n Logger.logError('Error processing tag lists.', err);\n Reporter.reportError('i::processTags', err);\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n });\n } else {\n this._fireTM(sdk.s.ev, sdk.s.ev_id, evtName, evtId);\n }\n } catch (runTMErr) {\n Logger.logError('Error in runTM', runTMErr);\n Reporter.reportError('m::runTM', runTMErr);\n }\n }\n\n private static _fireTM(\n envName: string,\n envId: string,\n evtName: string,\n evtId: string\n ): void {\n // increment visit_depth if event name is page_load because that's the only way we can track page views in an app for now\n if (evtName === DL_INIT_EVENT) {\n VisitIdProcessor.incrementVisitDepth().finally(() => {\n this._fireTMPrivate(envName, envId, evtName, evtId);\n });\n } else {\n this._fireTMPrivate(envName, envId, evtName, evtId);\n }\n }\n\n private static _fireTMPrivate(\n envName: string,\n envId: string,\n evtName: string,\n evtId: string\n ): void {\n if (DataStore.hasOneSSTTag() && DataStore.shouldFireSstForEvent(evtName)) {\n Reporter.postSST(\n DataStore.getDataElements(),\n envName,\n envId,\n DataStore.getSSTDownStream(),\n evtName,\n evtId\n ).catch((err: any) => {\n Reporter.reportError('l::postSST', err);\n });\n }\n\n DataStore.setTagManagerProcessing(false);\n Utils.sleep(250).then(async () => {\n try {\n await this.checkAndFireTM();\n } catch (err) {\n Reporter.reportError('i::runTM', err);\n }\n });\n }\n\n static setCustomerInfo(customerInfo: AppCustomerInfo): void {\n this.customerInfo = customerInfo;\n this.recordEvent('idl_attribution_link', customerInfo);\n }\n\n static setFirebaseAppInstanceId(instanceId: string): void {\n this.customerIdentifiers.firebase_instance_id = instanceId;\n }\n\n static setDeepLinkUrl(deepLinkUrl: string): void {\n this.deepLinkUrl = deepLinkUrl;\n }\n\n static setDeviceInfo(deviceInfo: MpDeviceInfo): void {\n DataStore.setDeviceInfo(deviceInfo);\n }\n\n static setFacebookClientId(fbp: string): void {\n this.customerIdentifiers.fbp = fbp;\n }\n\n private static setAppVersion(appVersion?: string): void {\n if (appVersion && appVersion?.trim()?.length > 0) {\n this.customerIdentifiers.app_version = appVersion;\n }\n }\n\n static recordPageLoad(pageLoadInfo: AppPageLoad): void {\n pageLoadInfo.is_entry = this.firstAppLaunch ? 1 : 0;\n\n if (this.deepLinkUrl) {\n pageLoadInfo.deep_link_url = this.deepLinkUrl;\n }\n\n const deviceInfo = DataStore.getDeviceInfo();\n\n if (this.customerInfo) {\n const newPayload: MapLike = {\n ...pageLoadInfo,\n ...this.customerInfo,\n ...(this.customerIdentifiers ?? {}),\n ...Utils.parseQueryParamsToObject(pageLoadInfo?.deep_link_url),\n };\n\n if (deviceInfo) {\n newPayload.device_info = deviceInfo;\n }\n\n this.dl.pushEvent('page_load', newPayload);\n } else {\n const newPayload: MapLike = {\n ...pageLoadInfo,\n ...(this.customerIdentifiers ?? {}),\n ...Utils.parseQueryParamsToObject(pageLoadInfo?.deep_link_url),\n };\n\n if (deviceInfo) {\n newPayload.device_info = deviceInfo;\n }\n\n this.dl.pushEvent('page_load', newPayload);\n }\n // only set for first page load event and remove after that\n this.deepLinkUrl = undefined;\n this.firstAppLaunch = false;\n }\n}\n\nexport const MagicPixelEventBus = EventBus;\nexport const MagicPixel = MagicPixelImpl;\n"],"mappings":"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"}
|
|
@@ -103,4 +103,21 @@ export interface SdkInitOptions {
|
|
|
103
103
|
app_version?: string;
|
|
104
104
|
os_version?: string;
|
|
105
105
|
}
|
|
106
|
+
export interface MpDeviceInfo {
|
|
107
|
+
package_name?: string;
|
|
108
|
+
short_version?: string;
|
|
109
|
+
long_version?: string;
|
|
110
|
+
os_version: string;
|
|
111
|
+
device_model_name: string;
|
|
112
|
+
locale?: string;
|
|
113
|
+
timezone_abbreviation?: string;
|
|
114
|
+
carrier?: string;
|
|
115
|
+
screen_width?: number;
|
|
116
|
+
screen_height?: number;
|
|
117
|
+
screen_density?: number;
|
|
118
|
+
cpu_cores?: number;
|
|
119
|
+
ext_storage?: number;
|
|
120
|
+
free_storage?: number;
|
|
121
|
+
device_timezone?: string;
|
|
122
|
+
}
|
|
106
123
|
export declare type EventBusCallback = (event: string, payload: any) => void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { DeJsvHelper, MapLike, QcInfoItem, RunQueueModel, SdkInitOptions, UrlInfo, VisitInfo, VisitorInfo } from './app-types';
|
|
1
|
+
import type { DeJsvHelper, MapLike, MpDeviceInfo, QcInfoItem, RunQueueModel, SdkInitOptions, UrlInfo, VisitInfo, VisitorInfo } from './app-types';
|
|
2
2
|
import type { ClientSdkDeItem, ClientSdkPrItem, ClientSdkQcItem, ClientSdkTagItem, MpClientSdk } from '../models/mp-client-sdk';
|
|
3
3
|
export declare class DataStore {
|
|
4
4
|
private static isDataStoreInitialized;
|
|
@@ -19,6 +19,7 @@ export declare class DataStore {
|
|
|
19
19
|
private static runQueue;
|
|
20
20
|
private static isProcessing;
|
|
21
21
|
private static sdkInitOptions;
|
|
22
|
+
private static deviceInfo;
|
|
22
23
|
private static interestedClientSideEvents;
|
|
23
24
|
private static interestedServerSideEvents;
|
|
24
25
|
private static interestedAllEvents;
|
|
@@ -32,6 +33,8 @@ export declare class DataStore {
|
|
|
32
33
|
static shouldExecuteClientSideTm(eventName: string): boolean;
|
|
33
34
|
static getSdkPcKey(): string;
|
|
34
35
|
static getSdkInitOptions(): SdkInitOptions;
|
|
36
|
+
static setDeviceInfo(info: MpDeviceInfo): void;
|
|
37
|
+
static getDeviceInfo(): MpDeviceInfo;
|
|
35
38
|
static setSdkInitOptions(options: SdkInitOptions): void;
|
|
36
39
|
static deQueueTMFire(): RunQueueModel;
|
|
37
40
|
static isTagManagerProcessing(): boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AppCustomerInfo, AppPageLoad, MapLike, SdkInitOptions } from './common/app-types';
|
|
1
|
+
import type { AppCustomerInfo, AppPageLoad, MapLike, MpDeviceInfo, SdkInitOptions } from './common/app-types';
|
|
2
2
|
import { EventBus } from './common/event-bus';
|
|
3
3
|
declare class MagicPixelImpl {
|
|
4
4
|
private static dl;
|
|
@@ -17,6 +17,7 @@ declare class MagicPixelImpl {
|
|
|
17
17
|
static setCustomerInfo(customerInfo: AppCustomerInfo): void;
|
|
18
18
|
static setFirebaseAppInstanceId(instanceId: string): void;
|
|
19
19
|
static setDeepLinkUrl(deepLinkUrl: string): void;
|
|
20
|
+
static setDeviceInfo(deviceInfo: MpDeviceInfo): void;
|
|
20
21
|
static setFacebookClientId(fbp: string): void;
|
|
21
22
|
private static setAppVersion;
|
|
22
23
|
static recordPageLoad(pageLoadInfo: AppPageLoad): void;
|
package/package.json
CHANGED
package/src/common/app-types.ts
CHANGED
|
@@ -132,4 +132,22 @@ export interface SdkInitOptions {
|
|
|
132
132
|
os_version?: string;
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
+
export interface MpDeviceInfo {
|
|
136
|
+
package_name?: string; // app package name like com.company.starter
|
|
137
|
+
short_version?: string;
|
|
138
|
+
long_version?: string;
|
|
139
|
+
os_version: string;
|
|
140
|
+
device_model_name: string;
|
|
141
|
+
locale?: string;
|
|
142
|
+
timezone_abbreviation?: string;
|
|
143
|
+
carrier?: string;
|
|
144
|
+
screen_width?: number;
|
|
145
|
+
screen_height?: number;
|
|
146
|
+
screen_density?: number;
|
|
147
|
+
cpu_cores?: number;
|
|
148
|
+
ext_storage?: number;
|
|
149
|
+
free_storage?: number;
|
|
150
|
+
device_timezone?: string;
|
|
151
|
+
}
|
|
152
|
+
|
|
135
153
|
export type EventBusCallback = (event: string, payload: any) => void;
|
package/src/common/data-store.ts
CHANGED
|
@@ -2,6 +2,7 @@ import AsyncStorage from '@react-native-async-storage/async-storage';
|
|
|
2
2
|
import type {
|
|
3
3
|
DeJsvHelper,
|
|
4
4
|
MapLike,
|
|
5
|
+
MpDeviceInfo,
|
|
5
6
|
QcInfoItem,
|
|
6
7
|
RunQueueModel,
|
|
7
8
|
SdkInitOptions,
|
|
@@ -41,6 +42,7 @@ export class DataStore {
|
|
|
41
42
|
private static runQueue: RunQueueModel[] = [];
|
|
42
43
|
private static isProcessing = false;
|
|
43
44
|
private static sdkInitOptions: SdkInitOptions;
|
|
45
|
+
private static deviceInfo: MpDeviceInfo;
|
|
44
46
|
|
|
45
47
|
private static interestedClientSideEvents: string[] = [];
|
|
46
48
|
private static interestedServerSideEvents: string[] = [];
|
|
@@ -144,6 +146,14 @@ export class DataStore {
|
|
|
144
146
|
return this.sdkInitOptions;
|
|
145
147
|
}
|
|
146
148
|
|
|
149
|
+
static setDeviceInfo(info: MpDeviceInfo): void {
|
|
150
|
+
this.deviceInfo = info;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
static getDeviceInfo(): MpDeviceInfo {
|
|
154
|
+
return this.deviceInfo;
|
|
155
|
+
}
|
|
156
|
+
|
|
147
157
|
static setSdkInitOptions(options: SdkInitOptions): void {
|
|
148
158
|
this.sdkInitOptions = options;
|
|
149
159
|
}
|
package/src/index.tsx
CHANGED
|
@@ -3,6 +3,7 @@ import type {
|
|
|
3
3
|
AppCustomerInfo,
|
|
4
4
|
AppPageLoad,
|
|
5
5
|
MapLike,
|
|
6
|
+
MpDeviceInfo,
|
|
6
7
|
SdkInitOptions,
|
|
7
8
|
} from './common/app-types';
|
|
8
9
|
import { DataStore } from './common/data-store';
|
|
@@ -48,10 +49,6 @@ class MagicPixelImpl {
|
|
|
48
49
|
|
|
49
50
|
this.setAppVersion(options.app_version);
|
|
50
51
|
|
|
51
|
-
if (options.os_version) {
|
|
52
|
-
this.customerIdentifiers.os_version = options.os_version;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
52
|
await VisitIdProcessor.init(options?.orgId);
|
|
56
53
|
|
|
57
54
|
const fbp = await VisitIdProcessor.getFacebookFBP();
|
|
@@ -311,6 +308,10 @@ class MagicPixelImpl {
|
|
|
311
308
|
this.deepLinkUrl = deepLinkUrl;
|
|
312
309
|
}
|
|
313
310
|
|
|
311
|
+
static setDeviceInfo(deviceInfo: MpDeviceInfo): void {
|
|
312
|
+
DataStore.setDeviceInfo(deviceInfo);
|
|
313
|
+
}
|
|
314
|
+
|
|
314
315
|
static setFacebookClientId(fbp: string): void {
|
|
315
316
|
this.customerIdentifiers.fbp = fbp;
|
|
316
317
|
}
|
|
@@ -328,6 +329,8 @@ class MagicPixelImpl {
|
|
|
328
329
|
pageLoadInfo.deep_link_url = this.deepLinkUrl;
|
|
329
330
|
}
|
|
330
331
|
|
|
332
|
+
const deviceInfo = DataStore.getDeviceInfo();
|
|
333
|
+
|
|
331
334
|
if (this.customerInfo) {
|
|
332
335
|
const newPayload: MapLike = {
|
|
333
336
|
...pageLoadInfo,
|
|
@@ -335,6 +338,11 @@ class MagicPixelImpl {
|
|
|
335
338
|
...(this.customerIdentifiers ?? {}),
|
|
336
339
|
...Utils.parseQueryParamsToObject(pageLoadInfo?.deep_link_url),
|
|
337
340
|
};
|
|
341
|
+
|
|
342
|
+
if (deviceInfo) {
|
|
343
|
+
newPayload.device_info = deviceInfo;
|
|
344
|
+
}
|
|
345
|
+
|
|
338
346
|
this.dl.pushEvent('page_load', newPayload);
|
|
339
347
|
} else {
|
|
340
348
|
const newPayload: MapLike = {
|
|
@@ -342,6 +350,11 @@ class MagicPixelImpl {
|
|
|
342
350
|
...(this.customerIdentifiers ?? {}),
|
|
343
351
|
...Utils.parseQueryParamsToObject(pageLoadInfo?.deep_link_url),
|
|
344
352
|
};
|
|
353
|
+
|
|
354
|
+
if (deviceInfo) {
|
|
355
|
+
newPayload.device_info = deviceInfo;
|
|
356
|
+
}
|
|
357
|
+
|
|
345
358
|
this.dl.pushEvent('page_load', newPayload);
|
|
346
359
|
}
|
|
347
360
|
// only set for first page load event and remove after that
|