@cuemath/web-utils 1.0.53-ajeet-beta.2 → 1.0.53-beta.1

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.
@@ -1,2 +1,2 @@
1
- export { getABVariant, getABExperimentCacheKey, setABExperiment, resetABExperiment, resetAllABExperiments, } from './utils/ab-variant';
1
+ export { getABVariant, getABExperimentCacheKey } from './utils/ab-variant';
2
2
  export { EXPERIMENT_KEYS, VARIANTS, AB_IDENTIFIER_KEY, LAST_LANDING_PAGE_COOKIE, } from './constants';
@@ -1,12 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LAST_LANDING_PAGE_COOKIE = exports.AB_IDENTIFIER_KEY = exports.VARIANTS = exports.EXPERIMENT_KEYS = exports.resetAllABExperiments = exports.resetABExperiment = exports.setABExperiment = exports.getABExperimentCacheKey = exports.getABVariant = void 0;
3
+ exports.LAST_LANDING_PAGE_COOKIE = exports.AB_IDENTIFIER_KEY = exports.VARIANTS = exports.EXPERIMENT_KEYS = exports.getABExperimentCacheKey = exports.getABVariant = void 0;
4
4
  var ab_variant_1 = require("./utils/ab-variant");
5
5
  Object.defineProperty(exports, "getABVariant", { enumerable: true, get: function () { return ab_variant_1.getABVariant; } });
6
6
  Object.defineProperty(exports, "getABExperimentCacheKey", { enumerable: true, get: function () { return ab_variant_1.getABExperimentCacheKey; } });
7
- Object.defineProperty(exports, "setABExperiment", { enumerable: true, get: function () { return ab_variant_1.setABExperiment; } });
8
- Object.defineProperty(exports, "resetABExperiment", { enumerable: true, get: function () { return ab_variant_1.resetABExperiment; } });
9
- Object.defineProperty(exports, "resetAllABExperiments", { enumerable: true, get: function () { return ab_variant_1.resetAllABExperiments; } });
10
7
  var constants_1 = require("./constants");
11
8
  Object.defineProperty(exports, "EXPERIMENT_KEYS", { enumerable: true, get: function () { return constants_1.EXPERIMENT_KEYS; } });
12
9
  Object.defineProperty(exports, "VARIANTS", { enumerable: true, get: function () { return constants_1.VARIANTS; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ab-experiment/index.ts"],"names":[],"mappings":";;;AAAA,iDAM4B;AAL1B,0GAAA,YAAY,OAAA;AACZ,qHAAA,uBAAuB,OAAA;AACvB,6GAAA,eAAe,OAAA;AACf,+GAAA,iBAAiB,OAAA;AACjB,mHAAA,qBAAqB,OAAA;AAEvB,yCAKqB;AAJnB,4GAAA,eAAe,OAAA;AACf,qGAAA,QAAQ,OAAA;AACR,8GAAA,iBAAiB,OAAA;AACjB,qHAAA,wBAAwB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ab-experiment/index.ts"],"names":[],"mappings":";;;AAAA,iDAA2E;AAAlE,0GAAA,YAAY,OAAA;AAAE,qHAAA,uBAAuB,OAAA;AAC9C,yCAKqB;AAJnB,4GAAA,eAAe,OAAA;AACf,qGAAA,QAAQ,OAAA;AACR,8GAAA,iBAAiB,OAAA;AACjB,qHAAA,wBAAwB,OAAA"}
@@ -2,12 +2,9 @@ type LastLandingPageProps = {
2
2
  value: string;
3
3
  createdAt: string;
4
4
  };
5
- export declare const getABVariant: (url: string, countryCode: string, currentABVariant: Record<string, string>, lastLandingPageCookies: LastLandingPageProps, debugABCookieName: string, sourceCookies?: string) => {
5
+ export declare const getABVariant: (url: string, countryCode: string, currentABVariant: Record<string, string>, lastLandingPageCookies: LastLandingPageProps) => {
6
6
  isABExperimentsUpdated: boolean;
7
7
  abExperiment: Record<string, string>;
8
8
  };
9
- export declare const setABExperiment: (debugABCookieName: string, experimentName: string, variant: string, timeInDays?: number) => void;
10
- export declare const resetABExperiment: (debugABCookieName: string, experimentName: string) => void;
11
- export declare const resetAllABExperiments: (debugABCookieName: string) => void;
12
9
  export declare const getABExperimentCacheKey: (abExperimentObj: Record<string, string>) => string;
13
10
  export {};
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getABExperimentCacheKey = exports.resetAllABExperiments = exports.resetABExperiment = exports.setABExperiment = exports.getABVariant = void 0;
4
- const cookie_1 = require("../../cookie");
3
+ exports.getABExperimentCacheKey = exports.getABVariant = void 0;
5
4
  const url_parser_1 = require("../../url-parser");
6
5
  const constants_1 = require("../constants");
7
6
  const experiments_1 = require("./experiments");
8
7
  const EXPERIMENT_VERSION = '2.0.1';
9
- const getABVariant = (url, countryCode, currentABVariant, lastLandingPageCookies, debugABCookieName, sourceCookies) => {
8
+ const getABVariant = (url, countryCode, currentABVariant, lastLandingPageCookies) => {
10
9
  const path = (0, url_parser_1.removeHrefLangFromPath)((0, url_parser_1.removeQueryStringFromPath)(url));
11
10
  const newAbVariants = {
12
11
  version: EXPERIMENT_VERSION,
@@ -19,25 +18,13 @@ const getABVariant = (url, countryCode, currentABVariant, lastLandingPageCookies
19
18
  isExpModified = true;
20
19
  }
21
20
  });
22
- const enabledABCookies = debugABCookieName
23
- ? (0, cookie_1.getCookie)(debugABCookieName, sourceCookies)
24
- : '';
25
- const enabledABKeys = enabledABCookies ? JSON.parse(enabledABCookies) : {};
26
21
  experiments_1.EXPERIMENTS.forEach((experiment) => {
27
22
  // eslint-disable-next-line prefer-const
28
23
  let { name: experimentName, variants: getVariants } = experiment;
29
24
  const variants = getVariants(path, countryCode, lastLandingPageCookies);
30
- const variantIDs = variants.map((element) => element.id);
31
- // Check and use if an AB experiment is manually enabled
32
- if (enabledABKeys[experimentName]) {
33
- const isEnabledVariantPresent = variantIDs.includes(enabledABKeys[experimentName]);
34
- if (isEnabledVariantPresent) {
35
- newAbVariants[experimentName] = enabledABKeys[experimentName];
36
- isExpModified = true;
37
- return;
38
- }
39
- }
40
- const isVariantPresent = variantIDs.includes(currentABVariant[experimentName]);
25
+ const isVariantPresent = variants
26
+ .map((element) => element.id)
27
+ .includes(currentABVariant[experimentName]);
41
28
  // remove experimentName from currentABVariant if it is not present in variants.id
42
29
  if (!isVariantPresent) {
43
30
  delete currentABVariant[experimentName];
@@ -68,32 +55,6 @@ const getABVariant = (url, countryCode, currentABVariant, lastLandingPageCookies
68
55
  return { isABExperimentsUpdated: isExpModified, abExperiment: newAbVariants };
69
56
  };
70
57
  exports.getABVariant = getABVariant;
71
- const setABExperiment = (debugABCookieName, experimentName, variant, timeInDays) => {
72
- let results = {};
73
- const enabledABCookie = (0, cookie_1.getCookie)(debugABCookieName);
74
- if (enabledABCookie) {
75
- const enabledABKeys = JSON.parse(enabledABCookie) || {};
76
- results = { ...enabledABKeys };
77
- }
78
- results[experimentName] = variant;
79
- (0, cookie_1.createCookie)(debugABCookieName, JSON.stringify(results), timeInDays || 1);
80
- };
81
- exports.setABExperiment = setABExperiment;
82
- const resetABExperiment = (debugABCookieName, experimentName) => {
83
- let results = {};
84
- const enabledABCookie = (0, cookie_1.getCookie)(debugABCookieName);
85
- if (enabledABCookie) {
86
- const enabledABKeys = JSON.parse(enabledABCookie) || {};
87
- results = { ...enabledABKeys };
88
- delete results[experimentName];
89
- }
90
- (0, cookie_1.createCookie)(debugABCookieName, JSON.stringify(results), 1);
91
- };
92
- exports.resetABExperiment = resetABExperiment;
93
- const resetAllABExperiments = (debugABCookieName) => {
94
- (0, cookie_1.removeCookie)(debugABCookieName);
95
- };
96
- exports.resetAllABExperiments = resetAllABExperiments;
97
58
  const getABExperimentCacheKey = (abExperimentObj) => {
98
59
  // return key=value&key=value sorted by key
99
60
  const keys = Object.keys(abExperimentObj).sort();
@@ -1 +1 @@
1
- {"version":3,"file":"ab-variant.js","sourceRoot":"","sources":["../../../../src/ab-experiment/utils/ab-variant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ab-variant.js","sourceRoot":"","sources":["../../../../src/ab-experiment/utils/ab-variant.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { getABVariant, getABExperimentCacheKey, setABExperiment, resetABExperiment, resetAllABExperiments, } from './utils/ab-variant';
1
+ export { getABVariant, getABExperimentCacheKey } from './utils/ab-variant';
2
2
  export { EXPERIMENT_KEYS, VARIANTS, AB_IDENTIFIER_KEY, LAST_LANDING_PAGE_COOKIE, } from './constants';
@@ -1,3 +1,3 @@
1
- export { getABVariant, getABExperimentCacheKey, setABExperiment, resetABExperiment, resetAllABExperiments, } from './utils/ab-variant';
1
+ export { getABVariant, getABExperimentCacheKey } from './utils/ab-variant';
2
2
  export { EXPERIMENT_KEYS, VARIANTS, AB_IDENTIFIER_KEY, LAST_LANDING_PAGE_COOKIE, } from './constants';
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ab-experiment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,uBAAuB,EACvB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,eAAe,EACf,QAAQ,EACR,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ab-experiment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EACL,eAAe,EACf,QAAQ,EACR,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,aAAa,CAAC"}
@@ -2,12 +2,9 @@ type LastLandingPageProps = {
2
2
  value: string;
3
3
  createdAt: string;
4
4
  };
5
- export declare const getABVariant: (url: string, countryCode: string, currentABVariant: Record<string, string>, lastLandingPageCookies: LastLandingPageProps, debugABCookieName: string, sourceCookies?: string) => {
5
+ export declare const getABVariant: (url: string, countryCode: string, currentABVariant: Record<string, string>, lastLandingPageCookies: LastLandingPageProps) => {
6
6
  isABExperimentsUpdated: boolean;
7
7
  abExperiment: Record<string, string>;
8
8
  };
9
- export declare const setABExperiment: (debugABCookieName: string, experimentName: string, variant: string, timeInDays?: number) => void;
10
- export declare const resetABExperiment: (debugABCookieName: string, experimentName: string) => void;
11
- export declare const resetAllABExperiments: (debugABCookieName: string) => void;
12
9
  export declare const getABExperimentCacheKey: (abExperimentObj: Record<string, string>) => string;
13
10
  export {};
@@ -1,9 +1,8 @@
1
- import { createCookie, getCookie, removeCookie } from '../../cookie';
2
1
  import { removeQueryStringFromPath, removeHrefLangFromPath } from '../../url-parser';
3
2
  import { REMOVED_EXPERIMENTS } from '../constants';
4
3
  import { EXPERIMENTS } from './experiments';
5
4
  const EXPERIMENT_VERSION = '2.0.1';
6
- export const getABVariant = (url, countryCode, currentABVariant, lastLandingPageCookies, debugABCookieName, sourceCookies) => {
5
+ export const getABVariant = (url, countryCode, currentABVariant, lastLandingPageCookies) => {
7
6
  const path = removeHrefLangFromPath(removeQueryStringFromPath(url));
8
7
  const newAbVariants = {
9
8
  version: EXPERIMENT_VERSION,
@@ -16,25 +15,13 @@ export const getABVariant = (url, countryCode, currentABVariant, lastLandingPage
16
15
  isExpModified = true;
17
16
  }
18
17
  });
19
- const enabledABCookies = debugABCookieName
20
- ? getCookie(debugABCookieName, sourceCookies)
21
- : '';
22
- const enabledABKeys = enabledABCookies ? JSON.parse(enabledABCookies) : {};
23
18
  EXPERIMENTS.forEach((experiment) => {
24
19
  // eslint-disable-next-line prefer-const
25
20
  let { name: experimentName, variants: getVariants } = experiment;
26
21
  const variants = getVariants(path, countryCode, lastLandingPageCookies);
27
- const variantIDs = variants.map((element) => element.id);
28
- // Check and use if an AB experiment is manually enabled
29
- if (enabledABKeys[experimentName]) {
30
- const isEnabledVariantPresent = variantIDs.includes(enabledABKeys[experimentName]);
31
- if (isEnabledVariantPresent) {
32
- newAbVariants[experimentName] = enabledABKeys[experimentName];
33
- isExpModified = true;
34
- return;
35
- }
36
- }
37
- const isVariantPresent = variantIDs.includes(currentABVariant[experimentName]);
22
+ const isVariantPresent = variants
23
+ .map((element) => element.id)
24
+ .includes(currentABVariant[experimentName]);
38
25
  // remove experimentName from currentABVariant if it is not present in variants.id
39
26
  if (!isVariantPresent) {
40
27
  delete currentABVariant[experimentName];
@@ -64,29 +51,6 @@ export const getABVariant = (url, countryCode, currentABVariant, lastLandingPage
64
51
  });
65
52
  return { isABExperimentsUpdated: isExpModified, abExperiment: newAbVariants };
66
53
  };
67
- export const setABExperiment = (debugABCookieName, experimentName, variant, timeInDays) => {
68
- let results = {};
69
- const enabledABCookie = getCookie(debugABCookieName);
70
- if (enabledABCookie) {
71
- const enabledABKeys = JSON.parse(enabledABCookie) || {};
72
- results = Object.assign({}, enabledABKeys);
73
- }
74
- results[experimentName] = variant;
75
- createCookie(debugABCookieName, JSON.stringify(results), timeInDays || 1);
76
- };
77
- export const resetABExperiment = (debugABCookieName, experimentName) => {
78
- let results = {};
79
- const enabledABCookie = getCookie(debugABCookieName);
80
- if (enabledABCookie) {
81
- const enabledABKeys = JSON.parse(enabledABCookie) || {};
82
- results = Object.assign({}, enabledABKeys);
83
- delete results[experimentName];
84
- }
85
- createCookie(debugABCookieName, JSON.stringify(results), 1);
86
- };
87
- export const resetAllABExperiments = (debugABCookieName) => {
88
- removeCookie(debugABCookieName);
89
- };
90
54
  export const getABExperimentCacheKey = (abExperimentObj) => {
91
55
  // return key=value&key=value sorted by key
92
56
  const keys = Object.keys(abExperimentObj).sort();
@@ -1 +1 @@
1
- {"version":3,"file":"ab-variant.js","sourceRoot":"","sources":["../../../../src/ab-experiment/utils/ab-variant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ab-variant.js","sourceRoot":"","sources":["../../../../src/ab-experiment/utils/ab-variant.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cuemath/web-utils",
3
- "version": "1.0.53-ajeet-beta.2",
3
+ "version": "1.0.53-beta.1",
4
4
  "description": "Shared web utils package",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",