UNPKG

@analytics/storage-utils

Version:
3 lines (2 loc) 3.77 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@analytics/global-storage-utils"),require("@analytics/cookie-utils"),require("@analytics/localstorage-utils"),require("@analytics/session-storage-utils"),require("@analytics/type-utils")):"function"==typeof define&&define.amd?define(["exports","@analytics/global-storage-utils","@analytics/cookie-utils","@analytics/localstorage-utils","@analytics/session-storage-utils","@analytics/type-utils"],t):t((e||self).utilStorage={},e.globalStorageUtils,e.cookieUtils,e.localstorageUtils,e.sessionStorageUtils,e.typeUtils)}(this,function(e,t,o,r,n,i){function a(e){var t=e;try{if("true"===(t=JSON.parse(e)))return!0;if("false"===t)return!1;if(i.isObject(t))return t;parseFloat(t)===t&&(t=parseFloat(t))}catch(e){}if(null!==t&&""!==t)return t}var s=r.hasLocalStorage(),u=n.hasSessionStorage(),l=o.hasCookies();function c(e,r){if(e){var n=O(r),s=!d(n),u=S(n)?a(localStorage.getItem(e)):void 0;if(s&&!i.isUndefined(u))return u;var l=L(n)?a(o.getCookie(e)):void 0;if(s&&l)return l;var c=b(n)?a(sessionStorage.getItem(e)):void 0;if(s&&c)return c;var f=t.get(e);return s?f:{localStorage:u,sessionStorage:c,cookie:l,global:f}}}function f(e,s,u){if(e&&!i.isUndefined(s)){var l={},c=O(u),f=JSON.stringify(s),g=!d(c);return S(c)&&(l[r.LOCAL_STORAGE]=A(r.LOCAL_STORAGE,s,a(localStorage.getItem(e))),localStorage.setItem(e,f),g)?l[r.LOCAL_STORAGE]:L(c)&&(l[o.COOKIE]=A(o.COOKIE,s,a(o.getCookie(e))),o.setCookie(e,f),g)?l[o.COOKIE]:b(c)&&(l[n.SESSION_STORAGE]=A(n.SESSION_STORAGE,s,a(sessionStorage.getItem(e))),sessionStorage.setItem(e,f),g)?l[n.SESSION_STORAGE]:(l[t.GLOBAL]=A(t.GLOBAL,s,t.get(e)),t.set(e,s),g?l[t.GLOBAL]:l)}}function g(e,a){if(e){var s=O(a),u=c(e,i.ALL),l={};return!i.isUndefined(u.localStorage)&&S(s)&&(localStorage.removeItem(e),l[r.LOCAL_STORAGE]=u.localStorage),!i.isUndefined(u.cookie)&&L(s)&&(o.removeCookie(e),l[o.COOKIE]=u.cookie),!i.isUndefined(u.sessionStorage)&&b(s)&&(sessionStorage.removeItem(e),l[n.SESSION_STORAGE]=u.sessionStorage),!i.isUndefined(u.global)&&m(s,t.GLOBAL)&&(t.remove(e),l[t.GLOBAL]=u.global),l}}function O(e){return e?i.isString(e)?e:e.storage:i.ANY}function S(e){return s&&m(e,r.LOCAL_STORAGE)}function L(e){return l&&m(e,o.COOKIE)}function b(e){return u&&m(e,n.SESSION_STORAGE)}function d(e){return e===i.ALL||"all"===e}function m(e,t){return e===i.ANY||e===t||d(e)}function A(e,t,o){return{location:e,current:t,previous:o}}var y={setItem:f,getItem:c,removeItem:g};Object.defineProperty(e,"GLOBAL",{enumerable:!0,get:function(){return t.GLOBAL}}),Object.defineProperty(e,"globalContext",{enumerable:!0,get:function(){return t.globalContext}}),Object.defineProperty(e,"COOKIE",{enumerable:!0,get:function(){return o.COOKIE}}),Object.defineProperty(e,"getCookie",{enumerable:!0,get:function(){return o.getCookie}}),Object.defineProperty(e,"hasCookies",{enumerable:!0,get:function(){return o.hasCookies}}),Object.defineProperty(e,"removeCookie",{enumerable:!0,get:function(){return o.removeCookie}}),Object.defineProperty(e,"setCookie",{enumerable:!0,get:function(){return o.setCookie}}),Object.defineProperty(e,"LOCAL_STORAGE",{enumerable:!0,get:function(){return r.LOCAL_STORAGE}}),Object.defineProperty(e,"hasLocalStorage",{enumerable:!0,get:function(){return r.hasLocalStorage}}),Object.defineProperty(e,"SESSION_STORAGE",{enumerable:!0,get:function(){return n.SESSION_STORAGE}}),Object.defineProperty(e,"hasSessionStorage",{enumerable:!0,get:function(){return n.hasSessionStorage}}),Object.defineProperty(e,"ALL",{enumerable:!0,get:function(){return i.ALL}}),Object.defineProperty(e,"ANY",{enumerable:!0,get:function(){return i.ANY}}),e.default=y,e.getItem=c,e.removeItem=g,e.setItem=f}); //# sourceMappingURL=analytics-util-storage.umd.js.map