/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/@atroo/capacitor-secure-storage-plugin@8.0.0/dist/plugin.cjs.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";var core=require("@capacitor/core");const accessibilityOptions=["afterFirstUnlock","afterFirstUnlockThisDeviceOnly","whenUnlocked","whenUnlockedThisDeviceOnly","always","alwaysThisDeviceOnly","whenPasscodeSetThisDeviceOnly"];exports.WebStorageAdapter=void 0,function(e){e.LocalStorage="LocalStorage",e.SessionStorage="SessionStorage",e.SessionCookie="SessionCookie"}(exports.WebStorageAdapter||(exports.WebStorageAdapter={}));const SecureStoragePlugin=core.registerPlugin("SecureStoragePlugin",{web:()=>Promise.resolve().then((function(){return web})).then((e=>new e.SecureStoragePluginWeb))});function setSessionCookie(e,t,o={}){const r={path:"/",secure:"https:"===window.location.protocol,sameSite:"lax"},s=Object.assign(Object.assign({},r),o);let i=`${encodeURIComponent(e)}=${encodeURIComponent(t)}`;s.maxAge&&(i+=`; max-age=${s.maxAge}`),s.path&&(i+=`; path=${s.path}`),s.domain&&(i+=`; domain=${s.domain}`),s.secure&&(i+="; secure"),s.sameSite&&(i+=`; samesite=${s.sameSite}`),document.cookie=i}function getPrefixedSessionCookies(e){const t=document.cookie.split(";"),o={};for(const r of t){const t=r.trim();if(t.startsWith(e)){const r=t.split("=");o[r[0].substring(e.length)]=decodeURIComponent(r[1])}}return o}class CustomStorage{constructor(){this.PREFIX="SCS_"}static create(){const e=new CustomStorage;return new Proxy(e,{ownKeys:()=>Object.keys(getPrefixedSessionCookies(e.PREFIX)),getOwnPropertyDescriptor(t,o){const r=getPrefixedSessionCookies(e.PREFIX);return"string"==typeof o&&o in r?{value:r[o],writable:!0,enumerable:!0,configurable:!0}:Reflect.getOwnPropertyDescriptor(t,o)},get:(e,t,o)=>"length"===t?e.length:"getItem"===t||"setItem"===t||"removeItem"===t||"clear"===t||"key"===t?e[t].bind(e):"string"==typeof t?e.getItem(t):Reflect.get(e,t,o),set:(e,t,o,r)=>"string"==typeof t&&"length"!==t&&"getItem"!==t&&"setItem"!==t&&"removeItem"!==t&&"clear"!==t&&"key"!==t?(e.setItem(t,o),!0):Reflect.set(e,t,o,r),deleteProperty:(e,t)=>"string"==typeof t?(e.removeItem(t),!0):Reflect.deleteProperty(e,t),has(t,o){const r=getPrefixedSessionCookies(e.PREFIX);return"string"==typeof o?o in r||o in t:Reflect.has(t,o)}})}get length(){const e=getPrefixedSessionCookies(this.PREFIX);return Object.keys(e).length}key(e){const t=getPrefixedSessionCookies(this.PREFIX),o=Object.keys(t);return e>=0&&e<o.length?o[e]:null}getItem(e){const t=getPrefixedSessionCookies(this.PREFIX);return e in t?t[e]:null}setItem(e,t){setSessionCookie(this.PREFIX+e,t)}removeItem(e){setSessionCookie(this.PREFIX+e,"",{maxAge:-1})}clear(){const e=getPrefixedSessionCookies(this.PREFIX);Object.keys(e).forEach(((e,t)=>{setSessionCookie(this.PREFIX+t,"",{maxAge:-1})}))}}const sessionCookie=CustomStorage.create();class SecureStoragePluginWeb extends core.WebPlugin{constructor(){super(...arguments),this.PREFIX="cap_sec_",this.STORAGE_ADAPTER_KEY="cap_sec_adapter",this.addPrefix=e=>this.PREFIX+e}getCurrentStorageAdapter(){switch(localStorage.getItem(this.STORAGE_ADAPTER_KEY)){case exports.WebStorageAdapter.SessionStorage:return sessionStorage;case exports.WebStorageAdapter.SessionCookie:return sessionCookie;default:return localStorage}}async setStorageAdapter(e){return localStorage.setItem(this.STORAGE_ADAPTER_KEY,e.web.adapter),{value:!0}}async getStorageAdapter(){return{adapter:localStorage.getItem(this.STORAGE_ADAPTER_KEY)||exports.WebStorageAdapter.LocalStorage}}get(e){const t=this.getCurrentStorageAdapter().getItem(this.addPrefix(e.key));return null!==t?Promise.resolve({value:atob(t)}):Promise.reject("Item with given key does not exist")}getAccessibility(){return Promise.reject("not implemented on web")}set(e){return this.getCurrentStorageAdapter().setItem(this.addPrefix(e.key),btoa(e.value)),Promise.resolve({value:!0})}remove(e){return this.getCurrentStorageAdapter().removeItem(this.addPrefix(e.key)),Promise.resolve({value:!0})}clear(){const e=this.getCurrentStorageAdapter();for(const t in e)0===t.indexOf(this.PREFIX)&&e.removeItem(t);return localStorage.removeItem(this.STORAGE_ADAPTER_KEY),Promise.resolve({value:!0})}keys(){const e=this.getCurrentStorageAdapter(),t=Object.keys(e).filter((e=>0===e.indexOf(this.PREFIX)));return Promise.resolve({value:t})}getPlatform(){return Promise.resolve({value:"web"})}}new SecureStoragePluginWeb;var web=Object.freeze({__proto__:null,SecureStoragePluginWeb:SecureStoragePluginWeb});exports.SecureStoragePlugin=SecureStoragePlugin,exports.accessibilityOptions=accessibilityOptions;
//# sourceMappingURL=/sm/daf9b08988ae527943e1b953077297c1d92bebae9f39693786ff10fe1ddde042.map