@magicpixel/rn-mp-client-sdk 0.12.0 → 1.13.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/constants.js +5 -26
- package/lib/commonjs/common/constants.js.map +1 -1
- package/lib/commonjs/common/data-store.js +36 -117
- package/lib/commonjs/common/data-store.js.map +1 -1
- package/lib/commonjs/common/event-bus.js +3 -10
- package/lib/commonjs/common/event-bus.js.map +1 -1
- package/lib/commonjs/common/logger.js +9 -18
- package/lib/commonjs/common/logger.js.map +1 -1
- package/lib/commonjs/common/network-service.js +4 -21
- package/lib/commonjs/common/network-service.js.map +1 -1
- package/lib/commonjs/common/reporter.js +8 -31
- package/lib/commonjs/common/reporter.js.map +1 -1
- package/lib/commonjs/common/utils.js +64 -65
- package/lib/commonjs/common/utils.js.map +1 -1
- package/lib/commonjs/coverage/lcov-report/block-navigation.js +6 -19
- package/lib/commonjs/coverage/lcov-report/block-navigation.js.map +1 -1
- package/lib/commonjs/coverage/lcov-report/prettify.js +2 -182
- package/lib/commonjs/coverage/lcov-report/prettify.js.map +1 -1
- package/lib/commonjs/coverage/lcov-report/sorter.js +64 -94
- package/lib/commonjs/coverage/lcov-report/sorter.js.map +1 -1
- package/lib/commonjs/eedl/eedl.js +207 -84
- package/lib/commonjs/eedl/eedl.js.map +1 -1
- package/lib/commonjs/index.js +104 -95
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/models/geo-api-response.js +2 -0
- package/lib/commonjs/models/geo-api-response.js.map +1 -0
- package/lib/commonjs/models/mp-client-sdk.js +3 -11
- package/lib/commonjs/models/mp-client-sdk.js.map +1 -1
- package/lib/commonjs/processors/data-element.processor.js +85 -80
- package/lib/commonjs/processors/data-element.processor.js.map +1 -1
- package/lib/commonjs/processors/geo-location.processor.js +70 -0
- package/lib/commonjs/processors/geo-location.processor.js.map +1 -0
- package/lib/commonjs/processors/qc.processor.js +2 -25
- package/lib/commonjs/processors/qc.processor.js.map +1 -1
- package/lib/commonjs/processors/tag.processor.js +17 -86
- package/lib/commonjs/processors/tag.processor.js.map +1 -1
- package/lib/commonjs/processors/trans-function.processor.js +5 -23
- package/lib/commonjs/processors/trans-function.processor.js.map +1 -1
- package/lib/commonjs/processors/visit-id.processor.js +4 -50
- package/lib/commonjs/processors/visit-id.processor.js.map +1 -1
- package/lib/module/common/app-types.js.map +1 -1
- package/lib/module/common/constants.js +4 -22
- package/lib/module/common/constants.js.map +1 -1
- package/lib/module/common/data-store.js +35 -108
- package/lib/module/common/data-store.js.map +1 -1
- package/lib/module/common/event-bus.js +3 -6
- package/lib/module/common/event-bus.js.map +1 -1
- package/lib/module/common/logger.js +9 -16
- package/lib/module/common/logger.js.map +1 -1
- package/lib/module/common/network-service.js +4 -11
- package/lib/module/common/network-service.js.map +1 -1
- package/lib/module/common/reporter.js +8 -19
- package/lib/module/common/reporter.js.map +1 -1
- package/lib/module/common/utils.js +63 -56
- package/lib/module/common/utils.js.map +1 -1
- package/lib/module/coverage/lcov-report/block-navigation.js +6 -19
- package/lib/module/coverage/lcov-report/block-navigation.js.map +1 -1
- package/lib/module/coverage/lcov-report/prettify.js +2 -182
- package/lib/module/coverage/lcov-report/prettify.js.map +1 -1
- package/lib/module/coverage/lcov-report/sorter.js +64 -94
- package/lib/module/coverage/lcov-report/sorter.js.map +1 -1
- package/lib/module/eedl/eedl.js +206 -76
- package/lib/module/eedl/eedl.js.map +1 -1
- package/lib/module/index.js +102 -57
- package/lib/module/index.js.map +1 -1
- package/lib/module/models/geo-api-response.js +2 -0
- package/lib/module/models/geo-api-response.js.map +1 -0
- package/lib/module/models/mp-client-sdk.js +0 -5
- package/lib/module/models/mp-client-sdk.js.map +1 -1
- package/lib/module/processors/data-element.processor.js +82 -71
- package/lib/module/processors/data-element.processor.js.map +1 -1
- package/lib/module/processors/geo-location.processor.js +63 -0
- package/lib/module/processors/geo-location.processor.js.map +1 -0
- package/lib/module/processors/qc.processor.js +2 -11
- package/lib/module/processors/qc.processor.js.map +1 -1
- package/lib/module/processors/tag.processor.js +17 -57
- package/lib/module/processors/tag.processor.js.map +1 -1
- package/lib/module/processors/trans-function.processor.js +5 -12
- package/lib/module/processors/trans-function.processor.js.map +1 -1
- package/lib/module/processors/visit-id.processor.js +4 -27
- package/lib/module/processors/visit-id.processor.js.map +1 -1
- package/lib/typescript/common/app-types.d.ts +3 -0
- package/lib/typescript/common/constants.d.ts +1 -0
- package/lib/typescript/common/data-store.d.ts +8 -0
- package/lib/typescript/common/utils.d.ts +19 -0
- package/lib/typescript/eedl/eedl.d.ts +16 -5
- package/lib/typescript/index.d.ts +53 -0
- package/lib/typescript/models/geo-api-response.d.ts +12 -0
- package/lib/typescript/processors/data-element.processor.d.ts +10 -1
- package/lib/typescript/processors/geo-location.processor.d.ts +10 -0
- package/package.json +25 -15
- package/src/common/app-types.ts +3 -0
- package/src/common/constants.ts +2 -0
- package/src/common/data-store.ts +38 -0
- package/src/common/utils.ts +58 -0
- package/src/eedl/eedl.ts +241 -18
- package/src/index.tsx +98 -3
- package/src/models/geo-api-response.ts +13 -0
- package/src/processors/data-element.processor.ts +140 -70
- package/src/processors/geo-location.processor.ts +91 -0
|
@@ -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 logLevel: 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":""}
|
|
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 geoUrl?: string;\n baseUrlV4?: string;\n baseUrlV6?: 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 logLevel: 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":"","ignoreList":[]}
|
|
@@ -3,53 +3,32 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.Constants = void 0;
|
|
7
|
-
|
|
6
|
+
exports.MP_VISIT_ID_COOKIE = exports.Constants = void 0;
|
|
8
7
|
var _nonSecure = require("nanoid/non-secure");
|
|
9
|
-
|
|
10
|
-
function
|
|
11
|
-
|
|
8
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
9
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
10
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
12
11
|
class Constants {}
|
|
13
|
-
|
|
14
12
|
exports.Constants = Constants;
|
|
15
|
-
|
|
16
13
|
_defineProperty(Constants, "PLACEHOLDER_REGEX", new RegExp(/({{)([A-Z_0-9 -]+)(}})/gi));
|
|
17
|
-
|
|
18
14
|
_defineProperty(Constants, "LARGE_RANDOM_POOL", (0, _nonSecure.customAlphabet)('1234567090abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', 21));
|
|
19
|
-
|
|
20
15
|
_defineProperty(Constants, "MP_DL_EVT", 'mp_dl_event');
|
|
21
|
-
|
|
22
16
|
_defineProperty(Constants, "CUST_EVT", 'custom_event');
|
|
23
|
-
|
|
24
17
|
_defineProperty(Constants, "ST_OK", 200);
|
|
25
|
-
|
|
26
18
|
_defineProperty(Constants, "ST_VAL_FAIL", 400);
|
|
27
|
-
|
|
28
19
|
_defineProperty(Constants, "ST_ERR", 500);
|
|
29
|
-
|
|
30
20
|
_defineProperty(Constants, "ST_DEP_FAIL", 1000);
|
|
31
|
-
|
|
32
21
|
_defineProperty(Constants, "ST_PR_BL", 1002);
|
|
33
|
-
|
|
34
22
|
_defineProperty(Constants, "ST_PR_EXC", 1001);
|
|
35
|
-
|
|
36
23
|
_defineProperty(Constants, "PR_TYP_JS", 'js');
|
|
37
|
-
|
|
38
24
|
_defineProperty(Constants, "PR_TYP_IMG", 'img');
|
|
39
|
-
|
|
40
25
|
_defineProperty(Constants, "PR_TYP_APP", 'app');
|
|
41
|
-
|
|
42
26
|
_defineProperty(Constants, "PR_S_TYP_R", 'r');
|
|
43
|
-
|
|
44
27
|
_defineProperty(Constants, "sortAscending", (a, b) => a.o > b.o ? 1 : -1);
|
|
45
|
-
|
|
46
28
|
_defineProperty(Constants, "KEY_MP_IDL_VISITOR_ID_INFO", 'mp_idl_visitor_info');
|
|
47
|
-
|
|
48
29
|
_defineProperty(Constants, "KEY_MP_IDL_VISIT_ID_INFO", 'mp_idl_visit_info');
|
|
49
|
-
|
|
50
30
|
_defineProperty(Constants, "KEY_MP_DEBUG_ID", 'mp_debug_id');
|
|
51
|
-
|
|
52
31
|
_defineProperty(Constants, "KEY_FBP", 'KEY_FBP');
|
|
53
|
-
|
|
54
32
|
_defineProperty(Constants, "KEY_FIRST_OPEN", 'KEY_FOPEN');
|
|
33
|
+
const MP_VISIT_ID_COOKIE = exports.MP_VISIT_ID_COOKIE = 'mp_visit_id';
|
|
55
34
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Constants","RegExp","customAlphabet","a","b","o"],"sources":["constants.ts"],"sourcesContent":["import { customAlphabet } from 'nanoid/non-secure';\nimport type { BaseResourceParamType } from '../models/mp-client-sdk';\n\nexport class Constants {\n static PLACEHOLDER_REGEX = new RegExp(/({{)([A-Z_0-9 -]+)(}})/gi);\n\n static LARGE_RANDOM_POOL = customAlphabet(\n '1234567090abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',\n 21\n );\n\n static MP_DL_EVT = 'mp_dl_event';\n static CUST_EVT = 'custom_event';\n\n // Tag Report - Status Constants\n static ST_OK = 200; // tag fired successfully\n static ST_VAL_FAIL = 400; // tag validation failed - meaning one of the items marked as mandatory was found empty\n static ST_ERR = 500; // tag was ok, but provider side failure. may be url is constructed wrong, or provider is down\n static ST_DEP_FAIL = 1000; // processing tag dependencies failed - may be missing parameters or attributes\n static ST_PR_BL = 1002; // provider is black listed in the data governance screen\n static ST_PR_EXC = 1001; // tag was found, but no provider was bundled. SDK build issue. Report with high importance\n\n static PR_TYP_JS = 'js';\n static PR_TYP_IMG = 'img';\n static PR_TYP_APP = 'app';\n\n static PR_S_TYP_R = 'r';\n\n static sortAscending = (\n a: BaseResourceParamType,\n b: BaseResourceParamType\n ): number => (a.o > b.o ? 1 : -1);\n\n // this data structure is returned by the api and stored in this key\n // {\"dId\":\"VNiBG7JNfoGAyvqxhxMqd\",\"mId\":\"JW0FRrCtAj9K7uyNmL1ht\",\"st\":0}\n static KEY_MP_IDL_VISITOR_ID_INFO = 'mp_idl_visitor_info';\n\n // visitor info data structure\n // {\"visitId\": \"123123sdfsf\", \"visitCt\": 1, \"visitDepth\": 1, visitVer: 1}\n static KEY_MP_IDL_VISIT_ID_INFO = 'mp_idl_visit_info';\n\n static KEY_MP_DEBUG_ID = 'mp_debug_id';\n static KEY_FBP = 'KEY_FBP';\n static KEY_FIRST_OPEN = 'KEY_FOPEN';\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_nonSecure","require","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","Constants","exports","RegExp","customAlphabet","a","b","o","MP_VISIT_ID_COOKIE"],"sources":["constants.ts"],"sourcesContent":["import { customAlphabet } from 'nanoid/non-secure';\nimport type { BaseResourceParamType } from '../models/mp-client-sdk';\n\nexport class Constants {\n static PLACEHOLDER_REGEX = new RegExp(/({{)([A-Z_0-9 -]+)(}})/gi);\n\n static LARGE_RANDOM_POOL = customAlphabet(\n '1234567090abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',\n 21\n );\n\n static MP_DL_EVT = 'mp_dl_event';\n static CUST_EVT = 'custom_event';\n\n // Tag Report - Status Constants\n static ST_OK = 200; // tag fired successfully\n static ST_VAL_FAIL = 400; // tag validation failed - meaning one of the items marked as mandatory was found empty\n static ST_ERR = 500; // tag was ok, but provider side failure. may be url is constructed wrong, or provider is down\n static ST_DEP_FAIL = 1000; // processing tag dependencies failed - may be missing parameters or attributes\n static ST_PR_BL = 1002; // provider is black listed in the data governance screen\n static ST_PR_EXC = 1001; // tag was found, but no provider was bundled. SDK build issue. Report with high importance\n\n static PR_TYP_JS = 'js';\n static PR_TYP_IMG = 'img';\n static PR_TYP_APP = 'app';\n\n static PR_S_TYP_R = 'r';\n\n static sortAscending = (\n a: BaseResourceParamType,\n b: BaseResourceParamType\n ): number => (a.o > b.o ? 1 : -1);\n\n // this data structure is returned by the api and stored in this key\n // {\"dId\":\"VNiBG7JNfoGAyvqxhxMqd\",\"mId\":\"JW0FRrCtAj9K7uyNmL1ht\",\"st\":0}\n static KEY_MP_IDL_VISITOR_ID_INFO = 'mp_idl_visitor_info';\n\n // visitor info data structure\n // {\"visitId\": \"123123sdfsf\", \"visitCt\": 1, \"visitDepth\": 1, visitVer: 1}\n static KEY_MP_IDL_VISIT_ID_INFO = 'mp_idl_visit_info';\n\n static KEY_MP_DEBUG_ID = 'mp_debug_id';\n static KEY_FBP = 'KEY_FBP';\n static KEY_FIRST_OPEN = 'KEY_FOPEN';\n}\n\nexport const MP_VISIT_ID_COOKIE = 'mp_visit_id';\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAAmD,SAAAC,gBAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAD,CAAA,GAAAI,MAAA,CAAAC,cAAA,CAAAL,CAAA,EAAAC,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAT,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAG,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAb,CAAA,QAAAU,CAAA,GAAAV,CAAA,CAAAc,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAG5C,MAAMgB,SAAS,CAAC;AAyCtBC,OAAA,CAAAD,SAAA,GAAAA,SAAA;AAAAnB,eAAA,CAzCYmB,SAAS,uBACO,IAAIE,MAAM,CAAC,0BAA0B,CAAC;AAAArB,eAAA,CADtDmB,SAAS,uBAGO,IAAAG,yBAAc,EACvC,gEAAgE,EAChE,EACF,CAAC;AAAAtB,eAAA,CANUmB,SAAS,eAQD,aAAa;AAAAnB,eAAA,CARrBmB,SAAS,cASF,cAAc;AAAAnB,eAAA,CATrBmB,SAAS,WAYL,GAAG;AAAAnB,eAAA,CAZPmB,SAAS,iBAaC,GAAG;AAAAnB,eAAA,CAbbmB,SAAS,YAcJ,GAAG;AAAAnB,eAAA,CAdRmB,SAAS,iBAeC,IAAI;AAAAnB,eAAA,CAfdmB,SAAS,cAgBF,IAAI;AAAAnB,eAAA,CAhBXmB,SAAS,eAiBD,IAAI;AAAAnB,eAAA,CAjBZmB,SAAS,eAmBD,IAAI;AAAAnB,eAAA,CAnBZmB,SAAS,gBAoBA,KAAK;AAAAnB,eAAA,CApBdmB,SAAS,gBAqBA,KAAK;AAAAnB,eAAA,CArBdmB,SAAS,gBAuBA,GAAG;AAAAnB,eAAA,CAvBZmB,SAAS,mBAyBG,CACrBI,CAAwB,EACxBC,CAAwB,KACZD,CAAC,CAACE,CAAC,GAAGD,CAAC,CAACC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAE;AAAAzB,eAAA,CA5BtBmB,SAAS,gCAgCgB,qBAAqB;AAAAnB,eAAA,CAhC9CmB,SAAS,8BAoCc,mBAAmB;AAAAnB,eAAA,CApC1CmB,SAAS,qBAsCK,aAAa;AAAAnB,eAAA,CAtC3BmB,SAAS,aAuCH,SAAS;AAAAnB,eAAA,CAvCfmB,SAAS,oBAwCI,WAAW;AAG9B,MAAMO,kBAAkB,GAAAN,OAAA,CAAAM,kBAAA,GAAG,aAAa","ignoreList":[]}
|
|
@@ -4,45 +4,34 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.DataStore = void 0;
|
|
7
|
-
|
|
8
7
|
var _asyncStorage = _interopRequireDefault(require("@react-native-async-storage/async-storage"));
|
|
9
|
-
|
|
10
8
|
var _logger = require("./logger");
|
|
11
|
-
|
|
12
9
|
var _reactNative = require("react-native");
|
|
13
|
-
|
|
14
10
|
var _utils = require("./utils");
|
|
15
|
-
|
|
16
|
-
function
|
|
17
|
-
|
|
18
|
-
function
|
|
19
|
-
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
13
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
14
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
20
15
|
const CORE_VERSION = '0.8.6';
|
|
21
|
-
|
|
22
16
|
class DataStore {
|
|
23
17
|
static async init(clientSdk) {
|
|
24
18
|
var _clientSdk$s;
|
|
25
|
-
|
|
26
19
|
this.clientSdk = clientSdk;
|
|
27
20
|
this.setMpEnv((clientSdk === null || clientSdk === void 0 ? void 0 : (_clientSdk$s = clientSdk.s) === null || _clientSdk$s === void 0 ? void 0 : _clientSdk$s.ev) === 'staging' ? 'stg' : 'prd');
|
|
28
|
-
|
|
29
21
|
if (typeof _reactNative.Platform !== 'undefined' && typeof _reactNative.Platform.OS !== 'undefined') {
|
|
30
22
|
this.devicePlatform = _reactNative.Platform.OS.toLowerCase();
|
|
31
23
|
}
|
|
32
|
-
|
|
33
24
|
if (_utils.Utils.isTablet()) {
|
|
34
25
|
this.deviceType = 'tablet';
|
|
35
26
|
} else {
|
|
36
27
|
this.deviceType = 'mobile';
|
|
37
28
|
}
|
|
38
|
-
|
|
39
29
|
this.interestedClientSideEvents = _utils.Utils._makeUniqueStringArray([...(clientSdk.dtmE ?? []), ...(clientSdk.ctmE ?? []), ...(clientSdk.mpDlE ?? [])]);
|
|
40
30
|
this.interestedServerSideEvents = _utils.Utils._makeUniqueStringArray([...(clientSdk.sseDtmE ?? []), ...(clientSdk.sseCtmE ?? []), ...(clientSdk.sseMpDlE ?? [])]);
|
|
41
31
|
this.interestedAllEvents = _utils.Utils._makeUniqueStringArray([...this.interestedClientSideEvents, ...this.interestedServerSideEvents]);
|
|
42
32
|
this.resetCollectorUrl(clientSdk.s.c_url, clientSdk.s.ev, clientSdk.s.v_id, clientSdk.s.p_id);
|
|
43
33
|
this.isDataStoreInitialized = true;
|
|
44
34
|
}
|
|
45
|
-
|
|
46
35
|
static resetCollectorUrl(baseCollectorUrl, sdkEnv, vendorId, projectId) {
|
|
47
36
|
const tagsBaseUrl = `${baseCollectorUrl}/${sdkEnv === 'staging' ? 's' : 'p'}/${vendorId}/${projectId}`;
|
|
48
37
|
this.urls = {
|
|
@@ -52,11 +41,13 @@ class DataStore {
|
|
|
52
41
|
infoUrl: tagsBaseUrl + '/info',
|
|
53
42
|
baseUrl: baseCollectorUrl,
|
|
54
43
|
attrInfoUrl: baseCollectorUrl + `/idl/${vendorId}/attrInfo`,
|
|
55
|
-
idlUrl: baseCollectorUrl + `/idl/${vendorId}/idl${sdkEnv === 'staging' ? '-staging' : ''}
|
|
44
|
+
idlUrl: baseCollectorUrl + `/idl/${vendorId}/idl${sdkEnv === 'staging' ? '-staging' : ''}`,
|
|
45
|
+
geoUrl: '/geo',
|
|
46
|
+
baseUrlV4: baseCollectorUrl,
|
|
47
|
+
baseUrlV6: baseCollectorUrl // For React Native, we'll use the same URL for both IPv4 and IPv6
|
|
56
48
|
};
|
|
57
49
|
return true;
|
|
58
50
|
}
|
|
59
|
-
|
|
60
51
|
static enQueueTMFire(sseOnly, name, dcrName, eventId, dcrPayload) {
|
|
61
52
|
this.runQueue.push({
|
|
62
53
|
sseOnly,
|
|
@@ -66,338 +57,266 @@ class DataStore {
|
|
|
66
57
|
dcrPayload
|
|
67
58
|
});
|
|
68
59
|
}
|
|
69
|
-
|
|
70
60
|
static isDataStoreReady() {
|
|
71
61
|
return this.isDataStoreInitialized;
|
|
72
62
|
}
|
|
73
|
-
|
|
74
63
|
static shouldExecuteTMForEvent(eventName) {
|
|
75
64
|
return this.interestedAllEvents.indexOf(eventName) > -1;
|
|
76
65
|
}
|
|
77
|
-
|
|
78
66
|
static shouldExecuteSST(eventName) {
|
|
79
67
|
return this.interestedServerSideEvents.indexOf(eventName) > -1;
|
|
80
68
|
}
|
|
81
|
-
|
|
82
69
|
static shouldExecuteClientSideTm(eventName) {
|
|
83
70
|
return this.interestedClientSideEvents.indexOf(eventName) > -1;
|
|
84
71
|
}
|
|
85
|
-
|
|
86
72
|
static getSdkPcKey() {
|
|
87
73
|
return this.clientSdk.pcKey;
|
|
88
74
|
}
|
|
89
|
-
|
|
90
75
|
static getSdkInitOptions() {
|
|
91
76
|
return this.sdkInitOptions;
|
|
92
77
|
}
|
|
93
|
-
|
|
94
78
|
static setDeviceInfo(info) {
|
|
95
79
|
this.deviceInfo = info;
|
|
96
80
|
}
|
|
97
|
-
|
|
98
81
|
static getDeviceInfo() {
|
|
99
82
|
return this.deviceInfo;
|
|
100
83
|
}
|
|
101
|
-
|
|
102
84
|
static setSdkInitOptions(options) {
|
|
103
85
|
this.sdkInitOptions = options;
|
|
104
86
|
}
|
|
105
|
-
|
|
106
87
|
static deQueueTMFire() {
|
|
107
88
|
return this.runQueue.length > 0 ? this.runQueue.pop() : null;
|
|
108
89
|
}
|
|
109
|
-
|
|
110
90
|
static isTagManagerProcessing() {
|
|
111
91
|
return this.isProcessing;
|
|
112
92
|
}
|
|
113
|
-
|
|
114
93
|
static setTagManagerProcessing(status) {
|
|
115
94
|
this.isProcessing = status;
|
|
116
95
|
}
|
|
117
|
-
|
|
118
96
|
static getSdkDataElements() {
|
|
119
97
|
var _this$clientSdk;
|
|
120
|
-
|
|
121
98
|
return ((_this$clientSdk = this.clientSdk) === null || _this$clientSdk === void 0 ? void 0 : _this$clientSdk.d) || {};
|
|
122
99
|
}
|
|
123
|
-
|
|
124
100
|
static getSdkQC() {
|
|
125
101
|
var _this$clientSdk2;
|
|
126
|
-
|
|
127
102
|
return ((_this$clientSdk2 = this.clientSdk) === null || _this$clientSdk2 === void 0 ? void 0 : _this$clientSdk2.qc) || [];
|
|
128
103
|
}
|
|
129
|
-
|
|
130
104
|
static hasOneSSTTag() {
|
|
131
105
|
return this.clientSdk.s.sst;
|
|
132
106
|
}
|
|
133
|
-
|
|
134
107
|
static getSSTDownStream() {
|
|
135
108
|
return this.clientSdk.s.dws_s_t;
|
|
136
109
|
}
|
|
137
|
-
|
|
138
110
|
static getClientDownStream() {
|
|
139
111
|
return this.clientSdk.s.dws_c_t;
|
|
140
112
|
}
|
|
141
|
-
|
|
142
113
|
static getClientSdk() {
|
|
143
114
|
return this.clientSdk;
|
|
144
115
|
}
|
|
145
|
-
|
|
146
116
|
static getSSTUrl() {
|
|
147
117
|
return this.urls.tfUrl;
|
|
148
118
|
}
|
|
149
|
-
|
|
150
119
|
static getAttrInfoUrl() {
|
|
151
120
|
return this.urls.attrInfoUrl;
|
|
152
121
|
}
|
|
153
|
-
|
|
154
122
|
static setVisitInfo(visitInfo) {
|
|
155
123
|
this.visitInfo = visitInfo;
|
|
156
124
|
}
|
|
157
|
-
|
|
158
125
|
static visitInfoToString() {
|
|
159
126
|
return this.visitInfo ? `${this.visitInfo.visitVer}|${this.visitInfo.visitId}|${this.visitInfo.visitTs}|${this.visitInfo.visitCt}|${this.visitInfo.visitDepth}` : undefined;
|
|
160
127
|
}
|
|
161
|
-
|
|
162
128
|
static setVisitorInfo(visitorInfo) {
|
|
163
129
|
this.visitorInfo = visitorInfo;
|
|
164
130
|
}
|
|
165
|
-
|
|
166
131
|
static getDebugId() {
|
|
167
132
|
return this.debugId;
|
|
168
133
|
}
|
|
169
|
-
|
|
170
134
|
static getErrorReportUrl() {
|
|
171
135
|
return this.urls.errUrl;
|
|
172
136
|
}
|
|
173
|
-
|
|
174
137
|
static getIdlUrl() {
|
|
175
138
|
var _this$urls;
|
|
176
|
-
|
|
177
139
|
return (_this$urls = this.urls) === null || _this$urls === void 0 ? void 0 : _this$urls.idlUrl;
|
|
178
140
|
}
|
|
179
|
-
|
|
180
141
|
static getSdkVersion() {
|
|
181
142
|
return this.clientSdk.s.v;
|
|
182
143
|
}
|
|
183
|
-
|
|
184
144
|
static setDebugId(dbgId) {
|
|
185
145
|
this.debugId = dbgId;
|
|
186
146
|
}
|
|
187
|
-
|
|
188
147
|
static shouldFireSstForEvent(eventName) {
|
|
189
148
|
var _this$clientSdk3, _this$clientSdk3$sseM;
|
|
190
|
-
|
|
191
149
|
return ((_this$clientSdk3 = this.clientSdk) === null || _this$clientSdk3 === void 0 ? void 0 : (_this$clientSdk3$sseM = _this$clientSdk3.sseMpDlE) === null || _this$clientSdk3$sseM === void 0 ? void 0 : _this$clientSdk3$sseM.indexOf(eventName)) > -1;
|
|
192
150
|
}
|
|
193
|
-
|
|
194
151
|
static addCommonCookie(key, value) {
|
|
195
152
|
this.commonCookies[key] = value;
|
|
196
153
|
}
|
|
197
|
-
|
|
198
154
|
static getCommonCookies() {
|
|
199
155
|
return this.commonCookies;
|
|
200
156
|
}
|
|
201
|
-
|
|
202
157
|
static getUrlInfo() {
|
|
203
158
|
return this.urls;
|
|
204
159
|
}
|
|
205
|
-
|
|
206
160
|
static getSdkTags() {
|
|
207
161
|
var _this$clientSdk4;
|
|
208
|
-
|
|
209
162
|
return (this === null || this === void 0 ? void 0 : (_this$clientSdk4 = this.clientSdk) === null || _this$clientSdk4 === void 0 ? void 0 : _this$clientSdk4.t) ?? {};
|
|
210
163
|
}
|
|
211
|
-
|
|
212
164
|
static getSdkProviders() {
|
|
213
165
|
var _this$clientSdk5;
|
|
214
|
-
|
|
215
166
|
return (this === null || this === void 0 ? void 0 : (_this$clientSdk5 = this.clientSdk) === null || _this$clientSdk5 === void 0 ? void 0 : _this$clientSdk5.p) ?? {};
|
|
216
167
|
}
|
|
217
|
-
|
|
218
168
|
static getPrivacyCompliance() {
|
|
219
169
|
return this.prStatus;
|
|
220
170
|
}
|
|
221
|
-
|
|
222
171
|
static setPrivacyCompliance(status) {
|
|
223
172
|
this.prStatus = status;
|
|
224
173
|
}
|
|
225
|
-
|
|
226
174
|
static async storeData(key, value) {
|
|
227
175
|
await _asyncStorage.default.setItem(key, JSON.stringify(value));
|
|
228
176
|
}
|
|
229
|
-
|
|
230
177
|
static async getDataFromStorage(key) {
|
|
231
178
|
const value = await _asyncStorage.default.getItem(key);
|
|
232
179
|
return value ? JSON.parse(value) : value;
|
|
233
180
|
}
|
|
234
|
-
|
|
235
181
|
static getDataElements() {
|
|
236
182
|
return this.dataElements;
|
|
237
183
|
}
|
|
238
|
-
|
|
239
184
|
static setDataElements(de) {
|
|
240
185
|
this.dataElements = de;
|
|
241
186
|
}
|
|
242
|
-
|
|
243
187
|
static getPageLang() {
|
|
244
188
|
return this.pageLang;
|
|
245
189
|
}
|
|
246
|
-
|
|
247
190
|
static getDeviceOs() {
|
|
248
191
|
return this.devicePlatform;
|
|
249
192
|
}
|
|
250
|
-
|
|
251
193
|
static getDataElementHelpers() {
|
|
252
194
|
return {
|
|
253
195
|
log: _logger.Logger.logDbg,
|
|
254
196
|
err: _logger.Logger.logError
|
|
255
197
|
};
|
|
256
198
|
}
|
|
257
|
-
|
|
258
199
|
static getPageName() {
|
|
259
200
|
return this.getDataElementValue('page_name') || 'none';
|
|
260
201
|
}
|
|
261
|
-
|
|
262
202
|
static getDataElementValue(param) {
|
|
263
203
|
return this.dataElements[param];
|
|
264
204
|
}
|
|
265
|
-
|
|
266
205
|
static setPageLang(lang) {
|
|
267
206
|
this.pageLang = lang || 'en';
|
|
268
207
|
}
|
|
269
|
-
|
|
270
208
|
static getSdkPageLangKey() {
|
|
271
209
|
return this.clientSdk.langKey;
|
|
272
210
|
}
|
|
273
|
-
|
|
274
211
|
static setDataElement(key, value) {
|
|
275
212
|
this.dataElements[key] = value;
|
|
276
213
|
}
|
|
277
|
-
|
|
278
214
|
static setValidQc(qcList, qcInfo) {
|
|
279
215
|
this.validQcList = qcList;
|
|
280
216
|
this.validQcInfoList = qcInfo;
|
|
281
217
|
}
|
|
282
|
-
|
|
283
218
|
static getValidQcList() {
|
|
284
219
|
return this.validQcList || [];
|
|
285
220
|
}
|
|
286
|
-
|
|
287
221
|
static getValidQcInfo() {
|
|
288
222
|
return this.validQcInfoList || [];
|
|
289
223
|
}
|
|
290
|
-
|
|
291
224
|
static setTransFunctions(elements) {
|
|
292
225
|
this.transFunctions = elements;
|
|
293
226
|
return this.transFunctions;
|
|
294
227
|
}
|
|
295
|
-
|
|
296
228
|
static getTransFunctions() {
|
|
297
229
|
return this.transFunctions;
|
|
298
230
|
}
|
|
299
|
-
|
|
300
231
|
static getOperatingSystem() {
|
|
301
232
|
return this.devicePlatform;
|
|
302
233
|
}
|
|
303
|
-
|
|
304
234
|
static getVisitId() {
|
|
305
235
|
var _this$visitInfo;
|
|
306
|
-
|
|
307
236
|
return (_this$visitInfo = this.visitInfo) === null || _this$visitInfo === void 0 ? void 0 : _this$visitInfo.visitId;
|
|
308
237
|
}
|
|
309
|
-
|
|
310
238
|
static overrideDeviceType(deviceType) {
|
|
311
239
|
var _deviceType$trim;
|
|
312
|
-
|
|
313
240
|
this.deviceType = deviceType === null || deviceType === void 0 ? void 0 : (_deviceType$trim = deviceType.trim()) === null || _deviceType$trim === void 0 ? void 0 : _deviceType$trim.toLowerCase();
|
|
314
241
|
}
|
|
315
|
-
|
|
316
242
|
static getDeviceType() {
|
|
317
243
|
return this.deviceType;
|
|
318
244
|
}
|
|
319
|
-
|
|
320
245
|
static getDeviceId() {
|
|
321
246
|
var _this$visitorInfo;
|
|
322
|
-
|
|
323
247
|
return (_this$visitorInfo = this.visitorInfo) === null || _this$visitorInfo === void 0 ? void 0 : _this$visitorInfo.dId;
|
|
324
248
|
}
|
|
325
|
-
|
|
326
249
|
static getMpId() {
|
|
327
250
|
var _this$visitorInfo2;
|
|
328
|
-
|
|
329
251
|
return (_this$visitorInfo2 = this.visitorInfo) === null || _this$visitorInfo2 === void 0 ? void 0 : _this$visitorInfo2.mId;
|
|
330
252
|
}
|
|
331
|
-
|
|
332
253
|
static getVisitorInfoAsString() {
|
|
333
254
|
return this.visitorInfo ? JSON.stringify(this.visitorInfo) : undefined;
|
|
334
255
|
}
|
|
335
|
-
|
|
336
256
|
static getOrgId() {
|
|
337
257
|
var _this$clientSdk6, _this$clientSdk6$s;
|
|
338
|
-
|
|
339
258
|
return this === null || this === void 0 ? void 0 : (_this$clientSdk6 = this.clientSdk) === null || _this$clientSdk6 === void 0 ? void 0 : (_this$clientSdk6$s = _this$clientSdk6.s) === null || _this$clientSdk6$s === void 0 ? void 0 : _this$clientSdk6$s.v_id;
|
|
340
259
|
}
|
|
341
|
-
|
|
342
260
|
static getCoreVersion() {
|
|
343
261
|
return CORE_VERSION;
|
|
344
262
|
}
|
|
345
|
-
|
|
346
263
|
static getMpEnv() {
|
|
347
264
|
return this.mpEnvShort;
|
|
348
265
|
}
|
|
349
|
-
|
|
350
266
|
static setMpEnv(shortEnv) {
|
|
351
267
|
this.mpEnvShort = shortEnv;
|
|
352
268
|
}
|
|
353
|
-
|
|
269
|
+
static setGeoInfo(geoInfo) {
|
|
270
|
+
this.geoInfo = geoInfo;
|
|
271
|
+
}
|
|
272
|
+
static getGeoInfo() {
|
|
273
|
+
return this.geoInfo;
|
|
274
|
+
}
|
|
275
|
+
static isGeoLocationEnabledInSdk() {
|
|
276
|
+
// TODO: Add geo location configuration to SDK settings
|
|
277
|
+
// For now, return true to enable geo location by default
|
|
278
|
+
return false;
|
|
279
|
+
}
|
|
280
|
+
static getVisitInfo() {
|
|
281
|
+
return this.visitInfo;
|
|
282
|
+
}
|
|
283
|
+
static getBrowser() {
|
|
284
|
+
// In React Native, we return the platform as browser equivalent
|
|
285
|
+
return this.devicePlatform;
|
|
286
|
+
}
|
|
287
|
+
static getMpUserStatus() {
|
|
288
|
+
// Return user status based on visit count
|
|
289
|
+
// 1 = new user (first visit), 0 = returning user
|
|
290
|
+
const visitInfo = this.getVisitInfo();
|
|
291
|
+
if (!visitInfo) {
|
|
292
|
+
return 1; // Default to new user if no visit info
|
|
293
|
+
}
|
|
294
|
+
return visitInfo.visitCt === 1 ? 1 : 0;
|
|
295
|
+
}
|
|
354
296
|
}
|
|
355
|
-
|
|
356
297
|
exports.DataStore = DataStore;
|
|
357
|
-
|
|
358
298
|
_defineProperty(DataStore, "isDataStoreInitialized", false);
|
|
359
|
-
|
|
360
299
|
_defineProperty(DataStore, "dataElements", {});
|
|
361
|
-
|
|
362
300
|
_defineProperty(DataStore, "validQcList", void 0);
|
|
363
|
-
|
|
364
301
|
_defineProperty(DataStore, "validQcInfoList", []);
|
|
365
|
-
|
|
366
302
|
_defineProperty(DataStore, "transFunctions", {});
|
|
367
|
-
|
|
368
303
|
_defineProperty(DataStore, "prStatus", true);
|
|
369
|
-
|
|
370
304
|
_defineProperty(DataStore, "clientSdk", void 0);
|
|
371
|
-
|
|
372
305
|
_defineProperty(DataStore, "urls", void 0);
|
|
373
|
-
|
|
374
306
|
_defineProperty(DataStore, "debugId", void 0);
|
|
375
|
-
|
|
376
307
|
_defineProperty(DataStore, "visitorInfo", void 0);
|
|
377
|
-
|
|
378
308
|
_defineProperty(DataStore, "visitInfo", void 0);
|
|
379
|
-
|
|
380
309
|
_defineProperty(DataStore, "pageLang", 'en');
|
|
381
|
-
|
|
382
310
|
_defineProperty(DataStore, "mpEnvShort", void 0);
|
|
383
|
-
|
|
384
311
|
_defineProperty(DataStore, "devicePlatform", 'unknown');
|
|
385
|
-
|
|
386
312
|
_defineProperty(DataStore, "deviceType", 'mobile');
|
|
387
|
-
|
|
388
313
|
_defineProperty(DataStore, "runQueue", []);
|
|
389
|
-
|
|
390
314
|
_defineProperty(DataStore, "isProcessing", false);
|
|
391
|
-
|
|
392
315
|
_defineProperty(DataStore, "sdkInitOptions", void 0);
|
|
393
|
-
|
|
394
316
|
_defineProperty(DataStore, "deviceInfo", void 0);
|
|
395
|
-
|
|
317
|
+
_defineProperty(DataStore, "geoInfo", void 0);
|
|
396
318
|
_defineProperty(DataStore, "interestedClientSideEvents", []);
|
|
397
|
-
|
|
398
319
|
_defineProperty(DataStore, "interestedServerSideEvents", []);
|
|
399
|
-
|
|
400
320
|
_defineProperty(DataStore, "interestedAllEvents", []);
|
|
401
|
-
|
|
402
321
|
_defineProperty(DataStore, "commonCookies", {});
|
|
403
322
|
//# sourceMappingURL=data-store.js.map
|
|
@@ -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","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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"}
|
|
1
|
+
{"version":3,"names":["_asyncStorage","_interopRequireDefault","require","_logger","_reactNative","_utils","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","CORE_VERSION","DataStore","init","clientSdk","_clientSdk$s","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","geoUrl","baseUrlV4","baseUrlV6","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","_this$clientSdk","d","getSdkQC","_this$clientSdk2","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","_this$urls","getSdkVersion","v","setDebugId","dbgId","shouldFireSstForEvent","_this$clientSdk3","_this$clientSdk3$sseM","addCommonCookie","key","commonCookies","getCommonCookies","getUrlInfo","getSdkTags","_this$clientSdk4","getSdkProviders","_this$clientSdk5","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","_this$visitInfo","overrideDeviceType","_deviceType$trim","trim","getDeviceType","getDeviceId","_this$visitorInfo","dId","getMpId","_this$visitorInfo2","mId","getVisitorInfoAsString","getOrgId","_this$clientSdk6","_this$clientSdk6$s","getCoreVersion","getMpEnv","mpEnvShort","shortEnv","setGeoInfo","geoInfo","getGeoInfo","isGeoLocationEnabledInSdk","getVisitInfo","getBrowser","getMpUserStatus","exports"],"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 type { GeoResponse } from '../models/geo-api-response';\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 private static geoInfo: GeoResponse;\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 geoUrl: '/geo',\n baseUrlV4: baseCollectorUrl,\n baseUrlV6: baseCollectorUrl, // For React Native, we'll use the same URL for both IPv4 and IPv6\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 static setGeoInfo(geoInfo: GeoResponse): void {\n this.geoInfo = geoInfo;\n }\n\n static getGeoInfo(): GeoResponse | undefined {\n return this.geoInfo;\n }\n\n static isGeoLocationEnabledInSdk(): boolean {\n // TODO: Add geo location configuration to SDK settings\n // For now, return true to enable geo location by default\n return false;\n }\n\n static getVisitInfo(): VisitInfo | undefined {\n return this.visitInfo;\n }\n\n static getBrowser(): string {\n // In React Native, we return the platform as browser equivalent\n return this.devicePlatform;\n }\n\n static getMpUserStatus(): number {\n // Return user status based on visit count\n // 1 = new user (first visit), 0 = returning user\n const visitInfo = this.getVisitInfo();\n if (!visitInfo) {\n return 1; // Default to new user if no visit info\n }\n return visitInfo.visitCt === 1 ? 1 : 0;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|