@cuemath/web-utils 0.0.2-beta.4 → 0.0.2-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4 @@
1
+ export declare const getCookie: (name: string, cookie?: string) => string;
2
+ export declare function removeCookie(name: string): void;
3
+ export declare function createCookie(name: string, value: string, days: number, subdomain: boolean): void;
4
+ export declare function createCookieWithMidnightExp(name: string, value: string): void;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createCookieWithMidnightExp = exports.createCookie = exports.removeCookie = exports.getCookie = void 0;
4
+ const getCookie = (name, cookie = document.cookie) => {
5
+ if (!cookie) {
6
+ return '';
7
+ }
8
+ const cookies = cookie.split('; ');
9
+ for (let i = 0; i < cookies.length; i += 1) {
10
+ if (cookies[i]) {
11
+ const [key, value] = cookies[i].split('=');
12
+ if (key === name) {
13
+ return value;
14
+ }
15
+ }
16
+ }
17
+ return '';
18
+ };
19
+ exports.getCookie = getCookie;
20
+ function removeCookie(name) {
21
+ const date = new Date();
22
+ // Set it expire in -1 days
23
+ date.setTime(date.getTime() + -1 * 24 * 60 * 60 * 1000);
24
+ // Set it
25
+ document.cookie = `${name}=; expires=${date.toUTCString()}; path=/`;
26
+ }
27
+ exports.removeCookie = removeCookie;
28
+ function createCookie(name, value, days, subdomain) {
29
+ let expires = '';
30
+ if (days) {
31
+ const date = new Date();
32
+ date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
33
+ expires = `; expires=${date.toUTCString()}`;
34
+ }
35
+ document.cookie = `${name}=${encodeURIComponent(value)}${expires}; path=/${subdomain ? '; .cuemath.com' : ''}`;
36
+ }
37
+ exports.createCookie = createCookie;
38
+ function createCookieWithMidnightExp(name, value) {
39
+ const date = new Date();
40
+ date.setHours(24, 0, 0, 0);
41
+ const expires = `; expires=${date}`;
42
+ document.cookie = `${name}=${value}${expires}; path=/`;
43
+ }
44
+ exports.createCookieWithMidnightExp = createCookieWithMidnightExp;
45
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cookie/index.ts"],"names":[],"mappings":";;;AAAO,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,SAAiB,QAAQ,CAAC,MAAM,EAAU,EAAE;IAClF,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,EAAE,CAAC;KACX;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;QAC1C,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;YACd,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAE3C,IAAI,GAAG,KAAK,IAAI,EAAE;gBAChB,OAAO,KAAK,CAAC;aACd;SACF;KACF;IAED,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAlBW,QAAA,SAAS,aAkBpB;AAEF,SAAgB,YAAY,CAAC,IAAY;IACvC,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAExB,2BAA2B;IAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAExD,SAAS;IACT,QAAQ,CAAC,MAAM,GAAG,GAAG,IAAI,cAAc,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;AACtE,CAAC;AARD,oCAQC;AAED,SAAgB,YAAY,CAC1B,IAAY,EACZ,KAAa,EACb,IAAY,EACZ,SAAkB;IAElB,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,IAAI,IAAI,EAAE;QACR,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAExB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1D,OAAO,GAAG,aAAa,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;KAC7C;IACD,QAAQ,CAAC,MAAM,GAAG,GAAG,IAAI,IAAI,kBAAkB,CAAC,KAAK,CAAC,GAAG,OAAO,WAC9D,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EACjC,EAAE,CAAC;AACL,CAAC;AAjBD,oCAiBC;AAED,SAAgB,2BAA2B,CAAC,IAAY,EAAE,KAAa;IACrE,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAExB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,MAAM,OAAO,GAAG,aAAa,IAAI,EAAE,CAAC;IAEpC,QAAQ,CAAC,MAAM,GAAG,GAAG,IAAI,IAAI,KAAK,GAAG,OAAO,UAAU,CAAC;AACzD,CAAC;AAPD,kEAOC"}
@@ -0,0 +1,6 @@
1
+ import type { SourceDetails } from './types';
2
+ export declare const readSourceCookie: () => SourceDetails;
3
+ export declare const isSourcePresent: () => boolean;
4
+ export declare const initSourceDetails: ({ platform, experiments, flow, affiliateChannel, offlineChannel, organicChannel, performanceChannel, revenueChannel, }: SourceDetails) => Promise<void>;
5
+ export declare const setLastPage: (pagePath: string) => Promise<void>;
6
+ export declare const setFlowEntryPoint: (flowEntry: string) => Promise<void>;
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setFlowEntryPoint = exports.setLastPage = exports.initSourceDetails = exports.isSourcePresent = exports.readSourceCookie = void 0;
4
+ const cookie_1 = require("../cookie");
5
+ const SOURCE_DETAILS_COOKIE = 'source_details';
6
+ const UTM_PARAMS = [
7
+ 'utm_source',
8
+ 'utm_medium',
9
+ 'utm_campaign',
10
+ 'utm_term',
11
+ ];
12
+ const readSourceCookie = () => {
13
+ const sourceDetails = (0, cookie_1.getCookie)(SOURCE_DETAILS_COOKIE);
14
+ return sourceDetails ? JSON.parse(decodeURIComponent(sourceDetails)) : undefined;
15
+ };
16
+ exports.readSourceCookie = readSourceCookie;
17
+ const writeSourceCookie = (sourceDetails) => {
18
+ (0, cookie_1.createCookie)(SOURCE_DETAILS_COOKIE, JSON.stringify(sourceDetails), 365, true);
19
+ };
20
+ const isSourcePresent = () => {
21
+ return !!(0, cookie_1.getCookie)(SOURCE_DETAILS_COOKIE);
22
+ };
23
+ exports.isSourcePresent = isSourcePresent;
24
+ const updateSourceCookie = (sourceDetail) => {
25
+ if (!exports.isSourcePresent)
26
+ return;
27
+ const sourceDetails = (0, exports.readSourceCookie)();
28
+ const updatedDetails = {
29
+ ...sourceDetails,
30
+ ...sourceDetail,
31
+ };
32
+ writeSourceCookie(updatedDetails);
33
+ };
34
+ const getRevenueChannel = (platform, utmParams) => {
35
+ let revenueChannel = 'unknown';
36
+ // set defaults for WEBSITE and ASTRO
37
+ if (platform === 'website') {
38
+ revenueChannel = 'organic';
39
+ }
40
+ else if (platform === 'astro') {
41
+ revenueChannel = 'performance';
42
+ }
43
+ if (utmParams) {
44
+ const { utm_source: utmSource = '' } = utmParams;
45
+ switch (true) {
46
+ case /^affiliate-/.test(utmSource):
47
+ revenueChannel = 'affiliate';
48
+ break;
49
+ case /^offline-/.test(utmSource):
50
+ revenueChannel = 'offline';
51
+ break;
52
+ case /^referral-/.test(utmSource):
53
+ revenueChannel = 'referral';
54
+ break;
55
+ case /^performance-/.test(utmSource):
56
+ revenueChannel = 'performance';
57
+ break;
58
+ }
59
+ }
60
+ return revenueChannel;
61
+ };
62
+ /*
63
+ if Platform = website, then decide based on experiment key
64
+ if Platform = Astro, decide logic once BAU is started
65
+ if Platform = APP, decide logic
66
+ if Platform = chatbot, decide based on chatbot experiment key
67
+ */
68
+ const getFlow = (platform, experiments) => {
69
+ let flow = 'regular';
70
+ if (platform === 'website') {
71
+ if (experiments) {
72
+ const ecnaExp = Object.keys(experiments).find(experiment => experiment.indexOf('ecna') !== -1);
73
+ flow = ecnaExp && experiments[ecnaExp] === 'b' ? 'e-cna' : 'regular';
74
+ }
75
+ }
76
+ return flow;
77
+ };
78
+ const getUTMParams = () => {
79
+ if (typeof window === undefined)
80
+ return;
81
+ const search = new URLSearchParams(window.location.search);
82
+ const utmParams = UTM_PARAMS.reduce((acc, param) => {
83
+ const utmParam = search.get(param);
84
+ if (utmParam) {
85
+ acc[param] = utmParam;
86
+ }
87
+ return acc;
88
+ }, {});
89
+ return utmParams;
90
+ };
91
+ const getFirstPage = () => {
92
+ if (typeof window === undefined)
93
+ return '';
94
+ return window.location.pathname;
95
+ };
96
+ /* TODO: Align Marketing Team on UTM source convention
97
+ affiliate-<channel>
98
+ performance-<channel>
99
+ organic-<channel>
100
+ offline-<channel>
101
+ */
102
+ const getChannel = (utmParams) => {
103
+ // TODO: UTM source patter for FB, GOOGLE...
104
+ if (!utmParams)
105
+ return '';
106
+ const { utm_source: utmSource = '' } = utmParams;
107
+ return utmSource.split('-')[1];
108
+ };
109
+ /*
110
+ Set Static Source Details of user on Visit of Platform
111
+ */
112
+ const initSourceDetails = async ({ platform, experiments, flow, affiliateChannel, offlineChannel, organicChannel, performanceChannel, revenueChannel, }) => {
113
+ if (!(0, exports.isSourcePresent)()) {
114
+ const utmParams = getUTMParams();
115
+ const leadChannel = getChannel(utmParams);
116
+ revenueChannel = revenueChannel || getRevenueChannel(platform, utmParams);
117
+ affiliateChannel =
118
+ revenueChannel === 'affiliate' ? affiliateChannel || leadChannel : undefined;
119
+ offlineChannel =
120
+ revenueChannel === 'offline' ? offlineChannel || leadChannel : undefined;
121
+ organicChannel =
122
+ revenueChannel === 'organic' ? organicChannel || leadChannel : undefined;
123
+ performanceChannel =
124
+ revenueChannel === 'performance' ? performanceChannel || leadChannel : undefined;
125
+ const sourceDetails = {
126
+ platform,
127
+ experiments,
128
+ utmParams: getUTMParams(),
129
+ flow: flow || getFlow(platform, experiments),
130
+ affiliateChannel,
131
+ offlineChannel,
132
+ organicChannel,
133
+ performanceChannel,
134
+ revenueChannel: revenueChannel,
135
+ firstPage: getFirstPage(),
136
+ };
137
+ writeSourceCookie(sourceDetails);
138
+ }
139
+ };
140
+ exports.initSourceDetails = initSourceDetails;
141
+ // Last Page which user visited signup before
142
+ const setLastPage = async (pagePath) => {
143
+ updateSourceCookie({ lastPage: pagePath });
144
+ };
145
+ exports.setLastPage = setLastPage;
146
+ // set Entry point where user clicked to Signup
147
+ const setFlowEntryPoint = async (flowEntry) => {
148
+ updateSourceCookie({ flowEntry });
149
+ };
150
+ exports.setFlowEntryPoint = setFlowEntryPoint;
151
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/growth-source/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ export type Platform = 'website' | 'app' | 'astro' | 'leap-teacher' | 'leap-admin';
2
+ export type RevenueChannel = 'organic' | 'performance' | 'affiliate' | 'offline' | 'referral' | 'unknown';
3
+ export type SignupFlow = 'regular' | 'e-cna' | 'e-sales';
4
+ export type Experiments = Record<string, unknown>;
5
+ export type UTMParams = {
6
+ utm_source?: string;
7
+ utm_medium?: string;
8
+ utm_campaign?: string;
9
+ utm_term?: string;
10
+ };
11
+ export type UTMParamsKeys = keyof UTMParams;
12
+ export type SourceDetails = {
13
+ platform: Platform;
14
+ experiments?: Experiments;
15
+ flow?: SignupFlow;
16
+ utmParams?: UTMParams;
17
+ affiliateChannel?: string;
18
+ offlineChannel?: string;
19
+ performanceChannel?: string;
20
+ revenueChannel: RevenueChannel;
21
+ organicChannel?: string;
22
+ flowEntry?: string;
23
+ firstPage?: string;
24
+ lastPage?: string;
25
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/growth-source/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export * from './cookie';
2
+ export * from './growth-source';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,kDAAgC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cuemath/web-utils",
3
- "version": "0.0.2-beta.4",
3
+ "version": "0.0.2-beta.5",
4
4
  "description": "Shared web utils package",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {