@kameleoon/react-sdk 8.5.0 → 8.5.2

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
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.createClient=createClient;var _javascriptSdkCore=require("@kameleoon/javascript-sdk-core"),_eventSource=require("./eventSource"),_visitorCodeManager=require("./visitorCodeManager"),_storage=require("./storage"),_requester=require("./requester");function createClient(a){var b=a.siteCode,c=a.configuration,d="undefined"!=typeof window&&!!window.document,e=d?new _storage.LocalStorageConstructor:new _storage.NativeStorageConstructor,f=d?new _eventSource.BrowserEventSourceConstructor:new _eventSource.NativeEventSourceConstructor,g=new _requester.RequestDispatcher((null===c||void 0===c?void 0:c.requestTimeout)||_javascriptSdkCore.DEFAULT_REQUEST_TIMEOUT),h=d?new _visitorCodeManager.ReactVisitorCodeManagerConstructor(null===c||void 0===c?void 0:c.domain):new _visitorCodeManager.ReactNativeVisitorCodeManagerConstructor,i=new _javascriptSdkCore.KameleoonCore({siteCode:b,configuration:c,internalConfiguration:{externalStorage:e,externalEventSource:f,externalVisitorCodeManager:h,externalRequestDispatcher:g,externalPackageInfo:{type:_javascriptSdkCore.SdkLanguageType.REACT,version:"8.5.0"}}});return{client:i,visitorCodeManager:h}}
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.createClient=createClient;var _javascriptSdkCore=require("@kameleoon/javascript-sdk-core"),_eventSource=require("./eventSource"),_visitorCodeManager=require("./visitorCodeManager"),_storage=require("./storage"),_requester=require("./requester");function createClient(a){var b=a.siteCode,c=a.configuration,d="undefined"!=typeof window&&!!window.document,e=d?new _storage.LocalStorageConstructor:new _storage.NativeStorageConstructor,f=d?new _eventSource.BrowserEventSourceConstructor:new _eventSource.NativeEventSourceConstructor,g=new _requester.RequestDispatcher((null===c||void 0===c?void 0:c.requestTimeout)||_javascriptSdkCore.DEFAULT_REQUEST_TIMEOUT),h=d?new _visitorCodeManager.ReactVisitorCodeManagerConstructor(null===c||void 0===c?void 0:c.domain):new _visitorCodeManager.ReactNativeVisitorCodeManagerConstructor,i=new _javascriptSdkCore.KameleoonCore({siteCode:b,configuration:c,internalConfiguration:{externalStorage:e,externalEventSource:f,externalVisitorCodeManager:h,externalRequestDispatcher:g,externalPackageInfo:{type:_javascriptSdkCore.SdkLanguageType.REACT,version:"8.5.2"}}});return{client:i,visitorCodeManager:h}}
2
2
  //# sourceMappingURL=kameleoonClient.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _javascriptSdkCore=require("@kameleoon/javascript-sdk-core");Object.defineProperty(exports,"__esModule",{value:!0}),exports.LocalStorageConstructor=void 0;function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_typeof(a)}function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}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 _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}function _defineProperties(a,b){for(var c,d=0;d<b.length;d++)c=b[d],c.enumerable=c.enumerable||!1,c.configurable=!0,"value"in c&&(c.writable=!0),Object.defineProperty(a,_toPropertyKey(c.key),c)}function _createClass(a,b,c){return b&&_defineProperties(a.prototype,b),c&&_defineProperties(a,c),Object.defineProperty(a,"prototype",{writable:!1}),a}function _toPropertyKey(a){var b=_toPrimitive(a,"string");return"symbol"===_typeof(b)?b:b+""}function _toPrimitive(a,b){if("object"!==_typeof(a)||null===a)return a;var c=a[Symbol.toPrimitive];if(c!==void 0){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)}var LocalStorageConstructor=function(){function a(){_classCallCheck(this,a)}return _createClass(a,[{key:"initialize",value:function initialize(a){var b=new LocalStorage(a);return b}}]),a}();exports.LocalStorageConstructor=LocalStorageConstructor;var LocalStorage=function(){function a(b){_classCallCheck(this,a),_defineProperty(this,"storageKey",void 0),this.storageKey=b}return _createClass(a,[{key:"key",get:function get(){return this.storageKey}},{key:"read",value:function read(){try{var a=localStorage.getItem(this.storageKey);return a?this.parse(a):(0,_javascriptSdkCore.Err)(new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageRead,this.storageKey))}catch(a){return(0,_javascriptSdkCore.Err)(new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageRead,this.storageKey))}}},{key:"write",value:function write(a){try{return localStorage.setItem(this.storageKey,JSON.stringify(a)),(0,_javascriptSdkCore.Ok)()}catch(a){return(0,_javascriptSdkCore.Err)(new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageWrite,a))}}},{key:"update",value:function update(a){var b=this.read();if(!b.ok)return b;var c=_objectSpread(_objectSpread({},b.data),a);return this.write(c)}},{key:"parse",value:function parse(a){var b;try{b=JSON.parse(a)}catch(a){throw new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageParse,a,this.key)}return(0,_javascriptSdkCore.Ok)(b)}}]),a}();
1
+ "use strict";var _javascriptSdkCore=require("@kameleoon/javascript-sdk-core");Object.defineProperty(exports,"__esModule",{value:!0}),exports.LocalStorageConstructor=void 0;function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_typeof(a)}function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}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 _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}function _defineProperties(a,b){for(var c,d=0;d<b.length;d++)c=b[d],c.enumerable=c.enumerable||!1,c.configurable=!0,"value"in c&&(c.writable=!0),Object.defineProperty(a,_toPropertyKey(c.key),c)}function _createClass(a,b,c){return b&&_defineProperties(a.prototype,b),c&&_defineProperties(a,c),Object.defineProperty(a,"prototype",{writable:!1}),a}function _toPropertyKey(a){var b=_toPrimitive(a,"string");return"symbol"===_typeof(b)?b:b+""}function _toPrimitive(a,b){if("object"!==_typeof(a)||null===a)return a;var c=a[Symbol.toPrimitive];if(c!==void 0){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)}var LocalStorageConstructor=function(){function a(){_classCallCheck(this,a)}return _createClass(a,[{key:"initialize",value:function initialize(a){var b=new LocalStorage(a);return b}}]),a}();exports.LocalStorageConstructor=LocalStorageConstructor;var LocalStorage=function(){function a(b){_classCallCheck(this,a),_defineProperty(this,"storageKey",void 0),this.storageKey=b}return _createClass(a,[{key:"key",get:function get(){return this.storageKey}},{key:"read",value:function read(){var a=localStorage.getItem(this.storageKey);if(!a)return(0,_javascriptSdkCore.Err)(new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageEmpty));try{var b=this.parse(a);return b}catch(a){return(0,_javascriptSdkCore.Err)(new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageRead,this.storageKey))}}},{key:"write",value:function write(a){try{return localStorage.setItem(this.storageKey,JSON.stringify(a)),(0,_javascriptSdkCore.Ok)()}catch(a){return(0,_javascriptSdkCore.Err)(new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageWrite,a))}}},{key:"update",value:function update(a){var b=this.read();if(!b.ok)return b.error.type===_javascriptSdkCore.KameleoonException.StorageEmpty?this.write(a):b;var c=_objectSpread(_objectSpread({},b.data),a);return this.write(c)}},{key:"parse",value:function parse(a){var b;try{b=JSON.parse(a)}catch(a){throw new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageParse,a,this.key)}return(0,_javascriptSdkCore.Ok)(b)}}]),a}();
2
2
  //# sourceMappingURL=localStorage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"localStorage.js","names":["_javascriptSdkCore","require","Object","defineProperty","exports","value","LocalStorageConstructor","_typeof","a","Symbol","iterator","constructor","prototype","ownKeys","b","c","keys","getOwnPropertySymbols","d","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","configurable","writable","_classCallCheck","TypeError","_defineProperties","key","_createClass","_toPrimitive","toPrimitive","call","String","Number","initialize","storage","LocalStorage","storageKey","get","read","data","localStorage","getItem","parse","Err","KameleoonError","KameleoonException","StorageRead","err","write","setItem","JSON","stringify","Ok","StorageWrite","update","result","ok","newData","StorageParse"],"sources":["../../src/storage/localStorage.ts"],"sourcesContent":["import {\n Ok,\n Err,\n Result,\n KameleoonError,\n IExternalStorage,\n KameleoonException,\n KameleoonStorageKey,\n IExternalStorageConstructor,\n StorageDataType,\n} from '@kameleoon/javascript-sdk-core';\n\nexport class LocalStorageConstructor implements IExternalStorageConstructor {\n public initialize<T extends StorageDataType>(\n key: KameleoonStorageKey,\n ): IExternalStorage<T> {\n const storage = new LocalStorage<T>(key);\n\n return storage;\n }\n}\n\nclass LocalStorage<T> implements IExternalStorage<T> {\n private storageKey: KameleoonStorageKey;\n\n constructor(key: KameleoonStorageKey) {\n this.storageKey = key;\n }\n\n get key(): KameleoonStorageKey {\n return this.storageKey;\n }\n\n public read(): Result<T, KameleoonError> {\n try {\n const data = localStorage.getItem(this.storageKey);\n\n if (!data) {\n return Err(\n new KameleoonError(KameleoonException.StorageRead, this.storageKey),\n );\n }\n\n return this.parse(data);\n } catch (err) {\n return Err(\n new KameleoonError(KameleoonException.StorageRead, this.storageKey),\n );\n }\n }\n\n public write(data: T): Result<void, KameleoonError> {\n try {\n localStorage.setItem(this.storageKey, JSON.stringify(data));\n\n return Ok();\n } catch (err) {\n return Err(new KameleoonError(KameleoonException.StorageWrite, err));\n }\n }\n\n public update(data: Partial<T>): Result<void, KameleoonError> {\n const result = this.read();\n\n if (!result.ok) {\n return result;\n }\n\n const newData = {\n ...result.data,\n ...data,\n };\n\n return this.write(newData);\n }\n\n private parse(data: string): Result<T, KameleoonError> {\n let result: T;\n\n try {\n result = JSON.parse(data);\n } catch (err) {\n throw new KameleoonError(KameleoonException.StorageParse, err, this.key);\n }\n\n return Ok(result);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"localStorage.js","names":["_javascriptSdkCore","require","Object","defineProperty","exports","value","LocalStorageConstructor","_typeof","a","Symbol","iterator","constructor","prototype","ownKeys","b","c","keys","getOwnPropertySymbols","d","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","configurable","writable","_classCallCheck","TypeError","_defineProperties","key","_createClass","_toPrimitive","toPrimitive","call","String","Number","initialize","storage","LocalStorage","storageKey","get","read","data","localStorage","getItem","Err","KameleoonError","KameleoonException","StorageEmpty","parsedData","parse","err","StorageRead","write","setItem","JSON","stringify","Ok","StorageWrite","update","result","ok","error","type","newData","StorageParse"],"sources":["../../src/storage/localStorage.ts"],"sourcesContent":["import {\n Ok,\n Err,\n Result,\n KameleoonError,\n IExternalStorage,\n KameleoonException,\n KameleoonStorageKey,\n IExternalStorageConstructor,\n StorageDataType,\n} from '@kameleoon/javascript-sdk-core';\n\nexport class LocalStorageConstructor implements IExternalStorageConstructor {\n public initialize<T extends StorageDataType>(\n key: KameleoonStorageKey,\n ): IExternalStorage<T> {\n const storage = new LocalStorage<T>(key);\n\n return storage;\n }\n}\n\nclass LocalStorage<T> implements IExternalStorage<T> {\n private storageKey: KameleoonStorageKey;\n\n constructor(key: KameleoonStorageKey) {\n this.storageKey = key;\n }\n\n get key(): KameleoonStorageKey {\n return this.storageKey;\n }\n\n public read(): Result<T, KameleoonError> {\n const data = localStorage.getItem(this.storageKey);\n\n if (!data) {\n return Err(new KameleoonError(KameleoonException.StorageEmpty));\n }\n\n try {\n const parsedData = this.parse(data);\n\n return parsedData;\n } catch (err) {\n return Err(\n new KameleoonError(KameleoonException.StorageRead, this.storageKey),\n );\n }\n }\n\n public write(data: T): Result<void, KameleoonError> {\n try {\n localStorage.setItem(this.storageKey, JSON.stringify(data));\n\n return Ok();\n } catch (err) {\n return Err(new KameleoonError(KameleoonException.StorageWrite, err));\n }\n }\n\n public update(data: Partial<T>): Result<void, KameleoonError> {\n const result = this.read();\n\n if (!result.ok) {\n if (result.error.type === KameleoonException.StorageEmpty) {\n return this.write(data as T);\n } else {\n return result;\n }\n }\n\n const newData = {\n ...result.data,\n ...data,\n };\n\n return this.write(newData);\n }\n\n private parse(data: string): Result<T, KameleoonError> {\n let result: T;\n\n try {\n result = JSON.parse(data);\n } catch (err) {\n throw new KameleoonError(KameleoonException.StorageParse, err, this.key);\n }\n\n return Ok(result);\n }\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.NativeStorageConstructor=exports.NativeStorage=void 0;var _javascriptSdkCore=require("@kameleoon/javascript-sdk-core"),_reactNativeMmkv=require("react-native-mmkv");function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_typeof(a)}function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}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 _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}function _defineProperties(a,b){for(var c,d=0;d<b.length;d++)c=b[d],c.enumerable=c.enumerable||!1,c.configurable=!0,"value"in c&&(c.writable=!0),Object.defineProperty(a,_toPropertyKey(c.key),c)}function _createClass(a,b,c){return b&&_defineProperties(a.prototype,b),c&&_defineProperties(a,c),Object.defineProperty(a,"prototype",{writable:!1}),a}function _toPropertyKey(a){var b=_toPrimitive(a,"string");return"symbol"===_typeof(b)?b:b+""}function _toPrimitive(a,b){if("object"!==_typeof(a)||null===a)return a;var c=a[Symbol.toPrimitive];if(c!==void 0){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)}var NativeStorageConstructor=function(){function a(){_classCallCheck(this,a)}return _createClass(a,[{key:"initialize",value:function initialize(a){var b=new NativeStorage(a);return b}}]),a}();exports.NativeStorageConstructor=NativeStorageConstructor;var NativeStorage=function(){function a(b){_classCallCheck(this,a),_defineProperty(this,"storageKey",void 0),_defineProperty(this,"storage",void 0),this.storage=new _reactNativeMmkv.MMKV,this.storageKey=b}return _createClass(a,[{key:"key",get:function get(){return this.storageKey}},{key:"read",value:function read(){try{var a=this.storage.getString(this.storageKey);return a?this.storageKey===_javascriptSdkCore.KameleoonStorageKey.VisitorCode?(0,_javascriptSdkCore.Ok)(a):this.parse(a):(0,_javascriptSdkCore.Err)(new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageRead,this.storageKey))}catch(a){return(0,_javascriptSdkCore.Err)(new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageRead,this.storageKey))}}},{key:"write",value:function write(a){return this.storage.set(this.storageKey,JSON.stringify(a)),(0,_javascriptSdkCore.Ok)()}},{key:"update",value:function update(a){var b=this.read();if(!b.ok)return b;var c=_objectSpread(_objectSpread({},b.data),a);return this.write(c)}},{key:"parse",value:function parse(a){var b;try{b=JSON.parse(a)}catch(a){throw new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageParse,a,this.key)}return(0,_javascriptSdkCore.Ok)(b)}}]),a}();exports.NativeStorage=NativeStorage;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.NativeStorageConstructor=exports.NativeStorage=void 0;var _javascriptSdkCore=require("@kameleoon/javascript-sdk-core"),_reactNativeMmkv=require("react-native-mmkv");function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_typeof(a)}function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}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 _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}function _defineProperties(a,b){for(var c,d=0;d<b.length;d++)c=b[d],c.enumerable=c.enumerable||!1,c.configurable=!0,"value"in c&&(c.writable=!0),Object.defineProperty(a,_toPropertyKey(c.key),c)}function _createClass(a,b,c){return b&&_defineProperties(a.prototype,b),c&&_defineProperties(a,c),Object.defineProperty(a,"prototype",{writable:!1}),a}function _toPropertyKey(a){var b=_toPrimitive(a,"string");return"symbol"===_typeof(b)?b:b+""}function _toPrimitive(a,b){if("object"!==_typeof(a)||null===a)return a;var c=a[Symbol.toPrimitive];if(c!==void 0){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)}var NativeStorageConstructor=function(){function a(){_classCallCheck(this,a)}return _createClass(a,[{key:"initialize",value:function initialize(a){var b=new NativeStorage(a);return b}}]),a}();exports.NativeStorageConstructor=NativeStorageConstructor;var NativeStorage=function(){function a(b){_classCallCheck(this,a),_defineProperty(this,"storageKey",void 0),_defineProperty(this,"storage",void 0),this.storage=new _reactNativeMmkv.MMKV,this.storageKey=b}return _createClass(a,[{key:"key",get:function get(){return this.storageKey}},{key:"read",value:function read(){var a=this.storage.getString(this.storageKey);if(!a)return(0,_javascriptSdkCore.Err)(new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageEmpty));if(this.storageKey===_javascriptSdkCore.KameleoonStorageKey.VisitorCode)return(0,_javascriptSdkCore.Ok)(a);try{var b=this.parse(a);return b}catch(a){return(0,_javascriptSdkCore.Err)(new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageRead,this.storageKey))}}},{key:"write",value:function write(a){return this.storage.set(this.storageKey,JSON.stringify(a)),(0,_javascriptSdkCore.Ok)()}},{key:"update",value:function update(a){var b=this.read();if(!b.ok)return b.error.type===_javascriptSdkCore.KameleoonException.StorageEmpty?this.write(a):b;var c=_objectSpread(_objectSpread({},b.data),a);return this.write(c)}},{key:"parse",value:function parse(a){var b;try{b=JSON.parse(a)}catch(a){throw new _javascriptSdkCore.KameleoonError(_javascriptSdkCore.KameleoonException.StorageParse,a,this.key)}return(0,_javascriptSdkCore.Ok)(b)}}]),a}();exports.NativeStorage=NativeStorage;
2
2
  //# sourceMappingURL=nativeStorage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nativeStorage.js","names":["NativeStorageConstructor","a","_classCallCheck","_createClass","key","value","initialize","storage","NativeStorage","exports","_defineProperty","MMKV","storageKey","get","read","data","getString","KameleoonStorageKey","VisitorCode","Ok","parse","Err","KameleoonError","KameleoonException","StorageRead","err","write","set","JSON","stringify","update","result","ok","newData","_objectSpread","StorageParse"],"sources":["../../src/storage/nativeStorage.ts"],"sourcesContent":["import {\n Ok,\n Err,\n Result,\n KameleoonError,\n IExternalStorage,\n KameleoonException,\n KameleoonStorageKey,\n IExternalStorageConstructor,\n StorageDataType,\n} from '@kameleoon/javascript-sdk-core';\nimport { MMKV } from 'react-native-mmkv';\n\nexport class NativeStorageConstructor implements IExternalStorageConstructor {\n public initialize<T extends StorageDataType>(\n key: KameleoonStorageKey,\n ): IExternalStorage<T> {\n const storage = new NativeStorage<T>(key);\n\n return storage;\n }\n}\n\nexport class NativeStorage<T> implements IExternalStorage<T> {\n private storageKey: KameleoonStorageKey;\n private storage: MMKV;\n\n constructor(key: KameleoonStorageKey) {\n this.storage = new MMKV();\n this.storageKey = key;\n }\n\n get key(): KameleoonStorageKey {\n return this.storageKey;\n }\n\n public read(): Result<T, KameleoonError> {\n try {\n const data = this.storage.getString(this.storageKey);\n\n if (!data) {\n return Err(\n new KameleoonError(KameleoonException.StorageRead, this.storageKey),\n );\n }\n\n if (this.storageKey === KameleoonStorageKey.VisitorCode) {\n return Ok(data as T);\n }\n\n return this.parse(data);\n } catch (err) {\n return Err(\n new KameleoonError(KameleoonException.StorageRead, this.storageKey),\n );\n }\n }\n\n public write(data: T): Result<void, KameleoonError> {\n this.storage.set(this.storageKey, JSON.stringify(data));\n\n return Ok();\n }\n\n public update(data: Partial<T>): Result<void, KameleoonError> {\n const result = this.read();\n\n if (!result.ok) {\n return result;\n }\n\n const newData = {\n ...result.data,\n ...data,\n };\n\n return this.write(newData);\n }\n\n private parse(data: string): Result<T, KameleoonError> {\n let result: T;\n\n try {\n result = JSON.parse(data);\n } catch (err) {\n throw new KameleoonError(KameleoonException.StorageParse, err, this.key);\n }\n\n return Ok(result);\n }\n}\n"],"mappings":"+jEAaa,CAAAA,wBAAwB,qBAAAC,EAAA,EAAAC,eAAA,MAAAD,CAAA,SAAAE,YAAA,CAAAF,CAAA,GAAAG,GAAA,cAAAC,KAAA,CACnC,SAAAC,WACEF,CAAwB,CACH,CACrB,GAAM,CAAAG,CAAO,CAAG,GAAI,CAAAC,aAAa,CAAIJ,CAAG,CAAC,CAEzC,MAAO,CAAAG,CACT,CAAC,IAAAN,CAAA,IAAAQ,OAAA,CAAAT,wBAAA,CAAAA,wBAAA,IAGU,CAAAQ,aAAa,YAIxB,SAAAP,EAAYG,CAAwB,CAAE,CAAAF,eAAA,MAAAD,CAAA,EAAAS,eAAA,2BAAAA,eAAA,wBACpC,IAAI,CAACH,OAAO,CAAG,GAAI,CAAAI,qBAAM,CACzB,IAAI,CAACC,UAAU,CAAGR,CACpB,CAAC,OAAAD,YAAA,CAAAF,CAAA,GAAAG,GAAA,OAAAS,GAAA,CAED,SAAAA,IAAA,CAA+B,CAC7B,MAAO,KAAI,CAACD,UACd,CAAC,GAAAR,GAAA,QAAAC,KAAA,CAED,SAAAS,KAAA,CAAyC,CACvC,GAAI,CACF,GAAM,CAAAC,CAAI,CAAG,IAAI,CAACR,OAAO,CAACS,SAAS,CAAC,IAAI,CAACJ,UAAU,CAAC,CAAC,MAEhD,CAAAG,CAAI,CAML,IAAI,CAACH,UAAU,GAAKK,sCAAmB,CAACC,WAAW,CAC9C,GAAAC,qBAAE,EAACJ,CAAI,CAAM,CAGf,IAAI,CAACK,KAAK,CAACL,CAAI,CAAC,CATd,GAAAM,sBAAG,EACR,GAAI,CAAAC,iCAAc,CAACC,qCAAkB,CAACC,WAAW,CAAE,IAAI,CAACZ,UAAU,CAAC,CASzE,CAAE,MAAOa,CAAG,CAAE,CACZ,MAAO,GAAAJ,sBAAG,EACR,GAAI,CAAAC,iCAAc,CAACC,qCAAkB,CAACC,WAAW,CAAE,IAAI,CAACZ,UAAU,CAAC,CAEvE,CACF,CAAC,GAAAR,GAAA,SAAAC,KAAA,CAED,SAAAqB,MAAaX,CAAO,CAAgC,CAGlD,MAFA,KAAI,CAACR,OAAO,CAACoB,GAAG,CAAC,IAAI,CAACf,UAAU,CAAEgB,IAAI,CAACC,SAAS,CAACd,CAAI,CAAC,CAAC,CAEhD,GAAAI,qBAAE,GACX,CAAC,GAAAf,GAAA,UAAAC,KAAA,CAED,SAAAyB,OAAcf,CAAgB,CAAgC,CAC5D,GAAM,CAAAgB,CAAM,CAAG,IAAI,CAACjB,IAAI,EAAE,CAE1B,GAAI,CAACiB,CAAM,CAACC,EAAE,CACZ,MAAO,CAAAD,CAAM,CAGf,GAAM,CAAAE,CAAO,CAAAC,aAAA,CAAAA,aAAA,IACRH,CAAM,CAAChB,IAAI,EACXA,CAAI,CACR,CAED,MAAO,KAAI,CAACW,KAAK,CAACO,CAAO,CAC3B,CAAC,GAAA7B,GAAA,SAAAC,KAAA,CAED,SAAAe,MAAcL,CAAY,CAA6B,CACrD,GAAI,CAAAgB,CAAS,CAEb,GAAI,CACFA,CAAM,CAAGH,IAAI,CAACR,KAAK,CAACL,CAAI,CAC1B,CAAE,MAAOU,CAAG,CAAE,CACZ,KAAM,IAAI,CAAAH,iCAAc,CAACC,qCAAkB,CAACY,YAAY,CAAEV,CAAG,CAAE,IAAI,CAACrB,GAAG,CACzE,CAEA,MAAO,GAAAe,qBAAE,EAACY,CAAM,CAClB,CAAC,IAAA9B,CAAA,IAAAQ,OAAA,CAAAD,aAAA,CAAAA,aAAA"}
1
+ {"version":3,"file":"nativeStorage.js","names":["NativeStorageConstructor","a","_classCallCheck","_createClass","key","value","initialize","storage","NativeStorage","exports","_defineProperty","MMKV","storageKey","get","read","data","getString","Err","KameleoonError","KameleoonException","StorageEmpty","KameleoonStorageKey","VisitorCode","Ok","parsedData","parse","err","StorageRead","write","set","JSON","stringify","update","result","ok","error","type","newData","_objectSpread","StorageParse"],"sources":["../../src/storage/nativeStorage.ts"],"sourcesContent":["import {\n Ok,\n Err,\n Result,\n KameleoonError,\n IExternalStorage,\n KameleoonException,\n KameleoonStorageKey,\n IExternalStorageConstructor,\n StorageDataType,\n} from '@kameleoon/javascript-sdk-core';\nimport { MMKV } from 'react-native-mmkv';\n\nexport class NativeStorageConstructor implements IExternalStorageConstructor {\n public initialize<T extends StorageDataType>(\n key: KameleoonStorageKey,\n ): IExternalStorage<T> {\n const storage = new NativeStorage<T>(key);\n\n return storage;\n }\n}\n\nexport class NativeStorage<T> implements IExternalStorage<T> {\n private storageKey: KameleoonStorageKey;\n private storage: MMKV;\n\n constructor(key: KameleoonStorageKey) {\n this.storage = new MMKV();\n this.storageKey = key;\n }\n\n get key(): KameleoonStorageKey {\n return this.storageKey;\n }\n\n public read(): Result<T, KameleoonError> {\n const data = this.storage.getString(this.storageKey);\n\n if (!data) {\n return Err(new KameleoonError(KameleoonException.StorageEmpty));\n }\n\n if (this.storageKey === KameleoonStorageKey.VisitorCode) {\n return Ok(data as T);\n }\n\n try {\n const parsedData = this.parse(data);\n\n return parsedData;\n } catch (err) {\n return Err(\n new KameleoonError(KameleoonException.StorageRead, this.storageKey),\n );\n }\n }\n\n public write(data: T): Result<void, KameleoonError> {\n this.storage.set(this.storageKey, JSON.stringify(data));\n\n return Ok();\n }\n\n public update(data: Partial<T>): Result<void, KameleoonError> {\n const result = this.read();\n\n if (!result.ok) {\n if (result.error.type === KameleoonException.StorageEmpty) {\n return this.write(data as T);\n } else {\n return result;\n }\n }\n\n const newData = {\n ...result.data,\n ...data,\n };\n\n return this.write(newData);\n }\n\n private parse(data: string): Result<T, KameleoonError> {\n let result: T;\n\n try {\n result = JSON.parse(data);\n } catch (err) {\n throw new KameleoonError(KameleoonException.StorageParse, err, this.key);\n }\n\n return Ok(result);\n }\n}\n"],"mappings":"+jEAaa,CAAAA,wBAAwB,qBAAAC,EAAA,EAAAC,eAAA,MAAAD,CAAA,SAAAE,YAAA,CAAAF,CAAA,GAAAG,GAAA,cAAAC,KAAA,CACnC,SAAAC,WACEF,CAAwB,CACH,CACrB,GAAM,CAAAG,CAAO,CAAG,GAAI,CAAAC,aAAa,CAAIJ,CAAG,CAAC,CAEzC,MAAO,CAAAG,CACT,CAAC,IAAAN,CAAA,IAAAQ,OAAA,CAAAT,wBAAA,CAAAA,wBAAA,IAGU,CAAAQ,aAAa,YAIxB,SAAAP,EAAYG,CAAwB,CAAE,CAAAF,eAAA,MAAAD,CAAA,EAAAS,eAAA,2BAAAA,eAAA,wBACpC,IAAI,CAACH,OAAO,CAAG,GAAI,CAAAI,qBAAM,CACzB,IAAI,CAACC,UAAU,CAAGR,CACpB,CAAC,OAAAD,YAAA,CAAAF,CAAA,GAAAG,GAAA,OAAAS,GAAA,CAED,SAAAA,IAAA,CAA+B,CAC7B,MAAO,KAAI,CAACD,UACd,CAAC,GAAAR,GAAA,QAAAC,KAAA,CAED,SAAAS,KAAA,CAAyC,CACvC,GAAM,CAAAC,CAAI,CAAG,IAAI,CAACR,OAAO,CAACS,SAAS,CAAC,IAAI,CAACJ,UAAU,CAAC,CAEpD,GAAI,CAACG,CAAI,CACP,MAAO,GAAAE,sBAAG,EAAC,GAAI,CAAAC,iCAAc,CAACC,qCAAkB,CAACC,YAAY,CAAC,CAAC,CAGjE,GAAI,IAAI,CAACR,UAAU,GAAKS,sCAAmB,CAACC,WAAW,CACrD,MAAO,GAAAC,qBAAE,EAACR,CAAI,CAAM,CAGtB,GAAI,CACF,GAAM,CAAAS,CAAU,CAAG,IAAI,CAACC,KAAK,CAACV,CAAI,CAAC,CAEnC,MAAO,CAAAS,CACT,CAAE,MAAOE,CAAG,CAAE,CACZ,MAAO,GAAAT,sBAAG,EACR,GAAI,CAAAC,iCAAc,CAACC,qCAAkB,CAACQ,WAAW,CAAE,IAAI,CAACf,UAAU,CAAC,CAEvE,CACF,CAAC,GAAAR,GAAA,SAAAC,KAAA,CAED,SAAAuB,MAAab,CAAO,CAAgC,CAGlD,MAFA,KAAI,CAACR,OAAO,CAACsB,GAAG,CAAC,IAAI,CAACjB,UAAU,CAAEkB,IAAI,CAACC,SAAS,CAAChB,CAAI,CAAC,CAAC,CAEhD,GAAAQ,qBAAE,GACX,CAAC,GAAAnB,GAAA,UAAAC,KAAA,CAED,SAAA2B,OAAcjB,CAAgB,CAAgC,CAC5D,GAAM,CAAAkB,CAAM,CAAG,IAAI,CAACnB,IAAI,EAAE,CAE1B,GAAI,CAACmB,CAAM,CAACC,EAAE,OACR,CAAAD,CAAM,CAACE,KAAK,CAACC,IAAI,GAAKjB,qCAAkB,CAACC,YAAY,CAChD,IAAI,CAACQ,KAAK,CAACb,CAAI,CAAM,CAErBkB,CAAM,CAIjB,GAAM,CAAAI,CAAO,CAAAC,aAAA,CAAAA,aAAA,IACRL,CAAM,CAAClB,IAAI,EACXA,CAAI,CACR,CAED,MAAO,KAAI,CAACa,KAAK,CAACS,CAAO,CAC3B,CAAC,GAAAjC,GAAA,SAAAC,KAAA,CAED,SAAAoB,MAAcV,CAAY,CAA6B,CACrD,GAAI,CAAAkB,CAAS,CAEb,GAAI,CACFA,CAAM,CAAGH,IAAI,CAACL,KAAK,CAACV,CAAI,CAC1B,CAAE,MAAOW,CAAG,CAAE,CACZ,KAAM,IAAI,CAAAR,iCAAc,CAACC,qCAAkB,CAACoB,YAAY,CAAEb,CAAG,CAAE,IAAI,CAACtB,GAAG,CACzE,CAEA,MAAO,GAAAmB,qBAAE,EAACU,CAAM,CAClB,CAAC,IAAAhC,CAAA,IAAAQ,OAAA,CAAAD,aAAA,CAAAA,aAAA"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useSetLegalConsent=useSetLegalConsent;var _react=require("react"),_useKameleoon2=require("./useKameleoon");function useSetLegalConsent(){var a=(0,_useKameleoon2.useKameleoon)(),b=a.client,c=a.visitorCodeManager,d=(0,_react.useCallback)(function(a,d){b.setUserConsent({visitorCode:a,consent:d,setData:c.setData})},[b]);return{setLegalConsent:d}}
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useSetLegalConsent=useSetLegalConsent;var _react=require("react"),_useKameleoon2=require("./useKameleoon");function useSetLegalConsent(){var a=(0,_useKameleoon2.useKameleoon)(),b=a.client,c=a.visitorCodeManager,d=(0,_react.useCallback)(function(a,d){b.setUserConsent({visitorCode:a,consent:d,setData:c.setData.bind(c)})},[b]);return{setLegalConsent:d}}
2
2
  //# sourceMappingURL=useSetLegalConsent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSetLegalConsent.js","names":["useSetLegalConsent","a","useKameleoon","client","visitorCodeManager","setLegalConsent","useCallback","visitorCode","consent","setUserConsent","setData"],"sources":["../src/useSetLegalConsent.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport { useKameleoon } from './useKameleoon';\n\nexport interface ISetLegalConsentHookResult {\n /**\n * Sets or updates the legal consent status for a visitor identified by their unique visitor code, affecting values in the response cookies based on the consent status.\n *\n * @param {string} visitorCode - unique visitor identifier, shouldn't exceed 255 characters.\n * @param {boolean} consent - a value representing the legal consent status. - 'true' indicates the\n * visitor has given legal consent. - 'false' indicates the visitor has withdrawn or not\n * provided legal consent.\n * @returns {void}\n * @throws `KameleoonError` with one of the following `type` s:\n *\n * - `KameleoonException.VisitorCodeMaxLength` - The visitor code length was exceeded.\n * - `KameleoonException.VisitorCodeEmpty` The visitor code is empty.\n */\n setLegalConsent: (visitorCode: string, consent: boolean) => void;\n}\n\n/**\n * A React Hook that returns setLegalConsent function which sets or updates the legal consent status for a visitor identified by their unique visitor code, affecting values in the response cookies based on the consent status.\n *\n * @returns {ISetLegalConsentHookResult} an object containing the `setLegalConsent` function.\n */\nexport function useSetLegalConsent(): ISetLegalConsentHookResult {\n const { client, visitorCodeManager } = useKameleoon();\n\n const setLegalConsent = useCallback(\n (visitorCode: string, consent: boolean): void => {\n client.setUserConsent({\n visitorCode,\n consent,\n setData: visitorCodeManager.setData,\n });\n },\n [client],\n );\n\n return {\n setLegalConsent,\n };\n}\n"],"mappings":"uLAyBO,QAAS,CAAAA,kBAAkBA,CAAA,CAA+B,KAAAC,CAAA,CACxB,GAAAC,2BAAY,GAAE,CAA7CC,CAAM,CAAAF,CAAA,CAANE,MAAM,CAAEC,CAAkB,CAAAH,CAAA,CAAlBG,kBAAkB,CAE5BC,CAAe,CAAG,GAAAC,kBAAW,EACjC,SAACC,CAAmB,CAAEC,CAAgB,CAAW,CAC/CL,CAAM,CAACM,cAAc,CAAC,CACpBF,WAAW,CAAXA,CAAW,CACXC,OAAO,CAAPA,CAAO,CACPE,OAAO,CAAEN,CAAkB,CAACM,OAC9B,CAAC,CACH,CAAC,CACD,CAACP,CAAM,CAAC,CACT,CAED,MAAO,CACLE,eAAe,CAAfA,CACF,CACF"}
1
+ {"version":3,"file":"useSetLegalConsent.js","names":["useSetLegalConsent","a","useKameleoon","client","visitorCodeManager","setLegalConsent","useCallback","visitorCode","consent","setUserConsent","setData","bind"],"sources":["../src/useSetLegalConsent.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport { useKameleoon } from './useKameleoon';\n\nexport interface ISetLegalConsentHookResult {\n /**\n * Sets or updates the legal consent status for a visitor identified by their unique visitor code, affecting values in the response cookies based on the consent status.\n *\n * @param {string} visitorCode - unique visitor identifier, shouldn't exceed 255 characters.\n * @param {boolean} consent - a value representing the legal consent status. - 'true' indicates the\n * visitor has given legal consent. - 'false' indicates the visitor has withdrawn or not\n * provided legal consent.\n * @returns {void}\n * @throws `KameleoonError` with one of the following `type` s:\n *\n * - `KameleoonException.VisitorCodeMaxLength` - The visitor code length was exceeded.\n * - `KameleoonException.VisitorCodeEmpty` The visitor code is empty.\n */\n setLegalConsent: (visitorCode: string, consent: boolean) => void;\n}\n\n/**\n * A React Hook that returns setLegalConsent function which sets or updates the legal consent status for a visitor identified by their unique visitor code, affecting values in the response cookies based on the consent status.\n *\n * @returns {ISetLegalConsentHookResult} an object containing the `setLegalConsent` function.\n */\nexport function useSetLegalConsent(): ISetLegalConsentHookResult {\n const { client, visitorCodeManager } = useKameleoon();\n\n const setLegalConsent = useCallback(\n (visitorCode: string, consent: boolean): void => {\n client.setUserConsent({\n visitorCode,\n consent,\n setData: visitorCodeManager.setData.bind(visitorCodeManager),\n });\n },\n [client],\n );\n\n return {\n setLegalConsent,\n };\n}\n"],"mappings":"uLAyBO,QAAS,CAAAA,kBAAkBA,CAAA,CAA+B,KAAAC,CAAA,CACxB,GAAAC,2BAAY,GAAE,CAA7CC,CAAM,CAAAF,CAAA,CAANE,MAAM,CAAEC,CAAkB,CAAAH,CAAA,CAAlBG,kBAAkB,CAE5BC,CAAe,CAAG,GAAAC,kBAAW,EACjC,SAACC,CAAmB,CAAEC,CAAgB,CAAW,CAC/CL,CAAM,CAACM,cAAc,CAAC,CACpBF,WAAW,CAAXA,CAAW,CACXC,OAAO,CAAPA,CAAO,CACPE,OAAO,CAAEN,CAAkB,CAACM,OAAO,CAACC,IAAI,CAACP,CAAkB,CAC7D,CAAC,CACH,CAAC,CACD,CAACD,CAAM,CAAC,CACT,CAED,MAAO,CACLE,eAAe,CAAfA,CACF,CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kameleoon/react-sdk",
3
- "version": "8.5.0",
3
+ "version": "8.5.2",
4
4
  "description": "Kameleoon React SDK",
5
5
  "files": [
6
6
  "dist"