@kameleoon/javascript-sdk-core 4.4.1 → 4.4.3

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/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Change Log
2
2
 
3
+ ## 4.4.3 (2024-07-19)
4
+
5
+ ### Patch Changes
6
+
7
+ - Improved random generation for `nonce` values
8
+
9
+ ## 4.4.2 (2024-07-16)
10
+
11
+ ### Patch Changes
12
+
13
+ - [`getVisitorCode`](https://developers.kameleoon.com/feature-management-and-experimentation/web-sdks/js-sdk#getvisitorcode) now sets the visitor code to cookie correctly, when the visitor code was initially retrieved from it
14
+
3
15
  ## 4.4.1 (2024-07-12)
4
16
 
5
17
  ### Patch Changes
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VisitorCodeManager=void 0;var _constants=require("../constants"),_storage=require("../storage"),_utilities=require("../utilities"),_constants2=require("./constants");function _defineProperty(a,b,c){return b=_toPropertyKey(b),b in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function _toPropertyKey(a){var b=_toPrimitive(a,"string");return"symbol"==typeof b?b:b+""}function _toPrimitive(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}class VisitorCodeManager{constructor(){_defineProperty(this,"isConsentRequired",!1),_defineProperty(this,"setDataCallback",void 0),_defineProperty(this,"getDataCallback",void 0)}set consentRequired(a){this.isConsentRequired=a}get consentRequired(){return this.isConsentRequired}set getData(a){this.getDataCallback=a}set setData(a){this.setDataCallback=a}get setData(){if(this.setDataCallback)return this.setDataCallback;throw new Error("Missing setDataCallback!")}getVisitorCode(a){if(!this.getDataCallback||!this.setDataCallback)throw new Error("Missing getDataCallback or setDataCallback methods in getVisitorCode!");const b=this.getDataCallback(_storage.KameleoonStorageKey.VisitorCode);if(b)return b;let c=a;return c?_utilities.Utilities.validateVisitorCode(c).throw():c=_utilities.Utilities.generateRandomString(_constants.VISITOR_CODE_LENGTH),this.isConsentRequired||this.setDataCallback({visitorCode:c,key:_storage.KameleoonStorageKey.VisitorCode,maxAge:_constants2.DEFAULT_MAX_AGE,path:_constants2.PATH}),c}}exports.VisitorCodeManager=VisitorCodeManager;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VisitorCodeManager=void 0;var _constants=require("../constants"),_storage=require("../storage"),_utilities=require("../utilities"),_constants2=require("./constants");function _defineProperty(a,b,c){return b=_toPropertyKey(b),b in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function _toPropertyKey(a){var b=_toPrimitive(a,"string");return"symbol"==typeof b?b:b+""}function _toPrimitive(a,b){if("object"!=typeof a||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=typeof d)return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}class VisitorCodeManager{constructor(){_defineProperty(this,"isConsentRequired",!1),_defineProperty(this,"setDataCallback",void 0),_defineProperty(this,"getDataCallback",void 0)}set consentRequired(a){this.isConsentRequired=a}get consentRequired(){return this.isConsentRequired}set getData(a){this.getDataCallback=a}set setData(a){this.setDataCallback=a}get setData(){if(this.setDataCallback)return this.setDataCallback;throw new Error("Missing setDataCallback!")}getVisitorCode(a){if(!this.getDataCallback||!this.setDataCallback)throw new Error("Missing getDataCallback or setDataCallback methods in getVisitorCode!");let b;const c=this.getDataCallback(_storage.KameleoonStorageKey.VisitorCode);return c&&(b=c),b||(a?(_utilities.Utilities.validateVisitorCode(a).throw(),b=a):b=_utilities.Utilities.generateRandomString(_constants.VISITOR_CODE_LENGTH)),this.isConsentRequired||this.setDataCallback({visitorCode:b,key:_storage.KameleoonStorageKey.VisitorCode,maxAge:_constants2.DEFAULT_MAX_AGE,path:_constants2.PATH}),b}}exports.VisitorCodeManager=VisitorCodeManager;
2
2
  //# sourceMappingURL=visitorCodeManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visitorCodeManager.js","names":["VisitorCodeManager","constructor","_defineProperty","consentRequired","isRequired","isConsentRequired","getData","callback","getDataCallback","setData","setDataCallback","Error","getVisitorCode","defaultVisitorCode","existingVisitorCode","KameleoonStorageKey","VisitorCode","visitorCode","Utilities","validateVisitorCode","throw","generateRandomString","VISITOR_CODE_LENGTH","key","maxAge","DEFAULT_MAX_AGE","path","PATH","exports"],"sources":["../../src/visitorCodeManager/visitorCodeManager.ts"],"sourcesContent":["import { VISITOR_CODE_LENGTH } from 'src/constants';\nimport { KameleoonStorageKey } from 'src/storage';\nimport { Utilities } from 'src/utilities';\nimport { SetDataCallbackParametersType } from 'src/types';\nimport { IVisitorCodeManager } from './types';\nimport { DEFAULT_MAX_AGE, PATH } from './constants';\n\n/**\n * VisitorCodeManager - a class which manages visitor codes using cookies, offering functions to generate, retrieve,\n * and handle these codes while considering user consent.\n **/\nexport class VisitorCodeManager implements IVisitorCodeManager {\n private isConsentRequired: boolean = false;\n private setDataCallback?: (params: SetDataCallbackParametersType) => void;\n private getDataCallback?: (key: string) => string | null;\n\n set consentRequired(isRequired: boolean) {\n this.isConsentRequired = isRequired;\n }\n\n get consentRequired(): boolean {\n return this.isConsentRequired;\n }\n\n set getData(callback: () => string) {\n this.getDataCallback = callback;\n }\n\n set setData(callback: (params: SetDataCallbackParametersType) => void) {\n this.setDataCallback = callback;\n }\n\n get setData(): (params: SetDataCallbackParametersType) => void {\n if (this.setDataCallback) {\n return this.setDataCallback;\n }\n\n throw new Error('Missing setDataCallback!');\n }\n\n public getVisitorCode(defaultVisitorCode?: string): string {\n if (!this.getDataCallback || !this.setDataCallback) {\n throw new Error(\n 'Missing getDataCallback or setDataCallback methods in getVisitorCode!',\n );\n }\n\n const existingVisitorCode = this.getDataCallback(\n KameleoonStorageKey.VisitorCode,\n );\n\n if (existingVisitorCode) {\n return existingVisitorCode;\n }\n\n let visitorCode = defaultVisitorCode;\n\n if (visitorCode) {\n Utilities.validateVisitorCode(visitorCode).throw();\n } else {\n visitorCode = Utilities.generateRandomString(VISITOR_CODE_LENGTH);\n }\n\n if (!this.isConsentRequired) {\n this.setDataCallback({\n visitorCode,\n key: KameleoonStorageKey.VisitorCode,\n maxAge: DEFAULT_MAX_AGE,\n path: PATH,\n });\n }\n\n return visitorCode;\n }\n}\n"],"mappings":"qvBAWO,KAAM,CAAAA,kBAAkD,CAAAC,YAAA,EAAAC,eAAA,8BAAAA,eAAA,gCAAAA,eAAA,gCAK7D,GAAI,CAAAC,eAAeA,CAACC,CAAmB,CAAE,CACvC,IAAI,CAACC,iBAAiB,CAAGD,CAC3B,CAEA,GAAI,CAAAD,eAAeA,CAAA,CAAY,CAC7B,MAAO,KAAI,CAACE,iBACd,CAEA,GAAI,CAAAC,OAAOA,CAACC,CAAsB,CAAE,CAClC,IAAI,CAACC,eAAe,CAAGD,CACzB,CAEA,GAAI,CAAAE,OAAOA,CAACF,CAAyD,CAAE,CACrE,IAAI,CAACG,eAAe,CAAGH,CACzB,CAEA,GAAI,CAAAE,OAAOA,CAAA,CAAoD,CAC7D,GAAI,IAAI,CAACC,eAAe,CACtB,MAAO,KAAI,CAACA,eAAe,CAG7B,KAAM,IAAI,CAAAC,KAAK,CAAC,0BAA0B,CAC5C,CAEOC,cAAcA,CAACC,CAA2B,CAAU,CACzD,GAAI,CAAC,IAAI,CAACL,eAAe,EAAI,CAAC,IAAI,CAACE,eAAe,CAChD,KAAM,IAAI,CAAAC,KAAK,CACb,uEACF,CAAC,CAGH,KAAM,CAAAG,CAAmB,CAAG,IAAI,CAACN,eAAe,CAC9CO,4BAAmB,CAACC,WACtB,CAAC,CAED,GAAIF,CAAmB,CACrB,MAAO,CAAAA,CAAmB,CAG5B,GAAI,CAAAG,CAAW,CAAGJ,CAAkB,CAiBpC,MAfI,CAAAI,CAAW,CACbC,oBAAS,CAACC,mBAAmB,CAACF,CAAW,CAAC,CAACG,KAAK,CAAC,CAAC,CAElDH,CAAW,CAAGC,oBAAS,CAACG,oBAAoB,CAACC,8BAAmB,CAAC,CAG9D,IAAI,CAACjB,iBAAiB,EACzB,IAAI,CAACK,eAAe,CAAC,CACnBO,WAAW,CAAXA,CAAW,CACXM,GAAG,CAAER,4BAAmB,CAACC,WAAW,CACpCQ,MAAM,CAAEC,2BAAe,CACvBC,IAAI,CAAEC,gBACR,CAAC,CAAC,CAGGV,CACT,CACF,CAACW,OAAA,CAAA5B,kBAAA,CAAAA,kBAAA"}
1
+ {"version":3,"file":"visitorCodeManager.js","names":["VisitorCodeManager","constructor","_defineProperty","consentRequired","isRequired","isConsentRequired","getData","callback","getDataCallback","setData","setDataCallback","Error","getVisitorCode","defaultVisitorCode","visitorCode","existingVisitorCode","KameleoonStorageKey","VisitorCode","Utilities","validateVisitorCode","throw","generateRandomString","VISITOR_CODE_LENGTH","key","maxAge","DEFAULT_MAX_AGE","path","PATH","exports"],"sources":["../../src/visitorCodeManager/visitorCodeManager.ts"],"sourcesContent":["import { VISITOR_CODE_LENGTH } from 'src/constants';\nimport { KameleoonStorageKey } from 'src/storage';\nimport { Utilities } from 'src/utilities';\nimport { SetDataCallbackParametersType } from 'src/types';\nimport { IVisitorCodeManager } from './types';\nimport { DEFAULT_MAX_AGE, PATH } from './constants';\n\n/**\n * VisitorCodeManager - a class which manages visitor codes using cookies, offering functions to generate, retrieve,\n * and handle these codes while considering user consent.\n **/\nexport class VisitorCodeManager implements IVisitorCodeManager {\n private isConsentRequired: boolean = false;\n private setDataCallback?: (params: SetDataCallbackParametersType) => void;\n private getDataCallback?: (key: string) => string | null;\n\n set consentRequired(isRequired: boolean) {\n this.isConsentRequired = isRequired;\n }\n\n get consentRequired(): boolean {\n return this.isConsentRequired;\n }\n\n set getData(callback: () => string) {\n this.getDataCallback = callback;\n }\n\n set setData(callback: (params: SetDataCallbackParametersType) => void) {\n this.setDataCallback = callback;\n }\n\n get setData(): (params: SetDataCallbackParametersType) => void {\n if (this.setDataCallback) {\n return this.setDataCallback;\n }\n\n throw new Error('Missing setDataCallback!');\n }\n\n public getVisitorCode(defaultVisitorCode?: string): string {\n if (!this.getDataCallback || !this.setDataCallback) {\n throw new Error(\n 'Missing getDataCallback or setDataCallback methods in getVisitorCode!',\n );\n }\n\n let visitorCode;\n\n const existingVisitorCode = this.getDataCallback(\n KameleoonStorageKey.VisitorCode,\n );\n\n if (existingVisitorCode) {\n visitorCode = existingVisitorCode;\n }\n\n if (!visitorCode) {\n if (defaultVisitorCode) {\n Utilities.validateVisitorCode(defaultVisitorCode).throw();\n visitorCode = defaultVisitorCode;\n } else {\n visitorCode = Utilities.generateRandomString(VISITOR_CODE_LENGTH);\n }\n }\n\n if (!this.isConsentRequired) {\n this.setDataCallback({\n visitorCode,\n key: KameleoonStorageKey.VisitorCode,\n maxAge: DEFAULT_MAX_AGE,\n path: PATH,\n });\n }\n\n return visitorCode;\n }\n}\n"],"mappings":"qvBAWO,KAAM,CAAAA,kBAAkD,CAAAC,YAAA,EAAAC,eAAA,8BAAAA,eAAA,gCAAAA,eAAA,gCAK7D,GAAI,CAAAC,eAAeA,CAACC,CAAmB,CAAE,CACvC,IAAI,CAACC,iBAAiB,CAAGD,CAC3B,CAEA,GAAI,CAAAD,eAAeA,CAAA,CAAY,CAC7B,MAAO,KAAI,CAACE,iBACd,CAEA,GAAI,CAAAC,OAAOA,CAACC,CAAsB,CAAE,CAClC,IAAI,CAACC,eAAe,CAAGD,CACzB,CAEA,GAAI,CAAAE,OAAOA,CAACF,CAAyD,CAAE,CACrE,IAAI,CAACG,eAAe,CAAGH,CACzB,CAEA,GAAI,CAAAE,OAAOA,CAAA,CAAoD,CAC7D,GAAI,IAAI,CAACC,eAAe,CACtB,MAAO,KAAI,CAACA,eAAe,CAG7B,KAAM,IAAI,CAAAC,KAAK,CAAC,0BAA0B,CAC5C,CAEOC,cAAcA,CAACC,CAA2B,CAAU,CACzD,GAAI,CAAC,IAAI,CAACL,eAAe,EAAI,CAAC,IAAI,CAACE,eAAe,CAChD,KAAM,IAAI,CAAAC,KAAK,CACb,uEACF,CAAC,CAGH,GAAI,CAAAG,CAAW,CAEf,KAAM,CAAAC,CAAmB,CAAG,IAAI,CAACP,eAAe,CAC9CQ,4BAAmB,CAACC,WACtB,CAAC,CAwBD,MAtBI,CAAAF,CAAmB,GACrBD,CAAW,CAAGC,CAAmB,EAG9BD,CAAW,GACVD,CAAkB,EACpBK,oBAAS,CAACC,mBAAmB,CAACN,CAAkB,CAAC,CAACO,KAAK,CAAC,CAAC,CACzDN,CAAW,CAAGD,CAAkB,EAEhCC,CAAW,CAAGI,oBAAS,CAACG,oBAAoB,CAACC,8BAAmB,CAAC,EAIhE,IAAI,CAACjB,iBAAiB,EACzB,IAAI,CAACK,eAAe,CAAC,CACnBI,WAAW,CAAXA,CAAW,CACXS,GAAG,CAAEP,4BAAmB,CAACC,WAAW,CACpCO,MAAM,CAAEC,2BAAe,CACvBC,IAAI,CAAEC,gBACR,CAAC,CAAC,CAGGb,CACT,CACF,CAACc,OAAA,CAAA5B,kBAAA,CAAAA,kBAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kameleoon/javascript-sdk-core",
3
- "version": "4.4.1",
3
+ "version": "4.4.3",
4
4
  "description": "Kameleoon JS SDK Core",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",