magic-sdk 13.3.0 โ†’ 13.3.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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ # v13.3.1 (Fri Feb 17 2023)
2
+
3
+ #### ๐Ÿ› Bug Fix
4
+
5
+ - updated readme with new description and quickstart code sample [#460](https://github.com/magiclabs/magic-js/pull/460) ([@srinjoyc](https://github.com/srinjoyc))
6
+ - keeping links to github from npm the same ([@srinjoyc](https://github.com/srinjoyc))
7
+ - updated npm readme to be same as github ([@srinjoyc](https://github.com/srinjoyc))
8
+
9
+ #### Authors: 1
10
+
11
+ - [@srinjoyc](https://github.com/srinjoyc)
12
+
13
+ ---
14
+
1
15
  # v8.1.0 (Mon Mar 07 2022)
2
16
 
3
17
  #### ๐Ÿ› Bug Fix
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![<MagicLabs>](https://circleci.com/gh/magiclabs/magic-js.svg?style=shield)](https://circleci.com/gh/magiclabs/magic-js)
4
4
 
5
- > Magic empowers developers to protect their users via an innovative, passwordless authentication flow without the UX compromises that burden traditional OAuth implementations.
5
+ > The Magic JavaScript SDK empowers developers to provide frictionless web3 onboarding to their end-users while preserving their security and privacy using non-custodial wallets.
6
6
 
7
7
  <p align="center">
8
8
  <a href="https://github.com/magiclabs/magic-js/blob/master/packages/magic-sdk/LICENSE">License</a> ยท
@@ -12,36 +12,95 @@
12
12
 
13
13
  ## ๐Ÿ“– Documentation
14
14
 
15
- See the [developer documentation](https://magic.link/docs) to learn how you can master the Magic SDK in a matter of minutes.
15
+ - See the [developer documentation](https://docs.magic.link) to learn how you can master the Magic SDK in a matter of minutes.
16
+ - See the `@magic-sdk/react-native-bare` [README](https://github.com/magiclabs/magic-js/tree/master/packages/%40magic-sdk/react-native-bare#readme) for Bare React Native package specific information.
17
+ - See the `@magic-sdk/react-native-expo` [README](https://github.com/magiclabs/magic-js/tree/master/packages/%40magic-sdk/react-native-expo#readme) for Expo React Native package specific information.
16
18
 
17
- ## ๐Ÿ”— Installation
19
+ ## โšก๏ธ Quick Start
20
+
21
+ ### Installation
18
22
 
19
23
  Integrating your app with Magic will require our client-side NPM package:
20
24
 
21
25
  ```bash
22
26
  # Via NPM:
23
- npm install --save magic-sdk
27
+ npm install --save magic-sdk # If you're targeting web browsers
28
+ npm install --save @magic-sdk/react-native-bare # If you're targeting Bare React Native
29
+ npm install --save @magic-sdk/react-native-expo # If you're targeting Expo React Native
24
30
 
25
31
  # Via Yarn:
26
- yarn add magic-sdk
32
+ yarn add magic-sdk # If you're targeting web browsers
33
+ yarn add @magic-sdk/react-native-bare # If you're targeting Bare React Native
34
+ yarn add @magic-sdk/react-native-expo # If you're targeting Expo React Native
27
35
  ```
28
36
 
29
- Alternatively, you can load via CDN with by adding a script tag to your appโ€™s `<head>`:
37
+ Alternatively, you can load via CDN by adding a script tag to your appโ€™s `<head>`:
30
38
 
31
39
  ```html
32
40
  <script src="https://cdn.jsdelivr.net/npm/magic-sdk/dist/magic.js"></script>
33
41
  ```
34
42
 
35
- ## โšก๏ธ Quick Start
43
+ ### Usage
36
44
 
37
45
  Sign up or log in to the [developer dashboard](https://dashboard.magic.link) to receive API keys that will allow your application to interact with Magic's authentication APIs.
38
46
 
39
47
  Then, you can start authenticating users with _just one method!_ Magic works across all modern desktop, mobile Chrome, Safari and Firefox browsers.
40
48
 
41
49
  ```ts
42
- import { Magic } from 'magic-sdk';
50
+ import { Magic } from "magic-sdk"
51
+ import Web3 from 'web3';
52
+
53
+ const magic = new Magic('YOUR_API_KEY', {
54
+ network: "goerli",
55
+ });
56
+
57
+ const web3 = new Web3(magic.rpcProvider);
58
+ const accounts = await magic.wallet.connectWithUI();
59
+ ```
60
+
61
+ ## ๐Ÿ“ฆ Package Ecosystem
62
+
63
+ ### Entry points
64
+
65
+ These are packages _you_ can install to enable Magic JS SDK functionality for your client-side application.
66
+
67
+ | Package Name | Changelog | Description |
68
+ | ------------ | --------- | ----------- |
69
+ | [`magic-sdk`](https://www.npmjs.com/package/magic-sdk) | [CHANGELOG](./packages/magic-sdk/CHANGELOG.md) | Web/browser entry-point for Magic SDK. |
70
+ | [`@magic-sdk/react-native-bare`](https://www.npmjs.com/package/@magic-sdk/react-native-bare) | [CHANGELOG](./packages/@magic-sdk/react-native-bare/CHANGELOG.md) | Bare React Native entry-point for Magic SDK. |
71
+ | [`@magic-sdk/react-native-expo`](https://www.npmjs.com/package/@magic-sdk/react-native-expo) | [CHANGELOG](./packages/@magic-sdk/react-native-expo/CHANGELOG.md) | Expo React Native entry-point for Magic SDK. |
72
+
73
+ ## Extensions
43
74
 
44
- const magic = new Magic('YOUR_API_KEY');
75
+ Extend Magic JS SDK functionality for your use-case through [`@magic-ext/*` packages](./packages/@magic-ext).
45
76
 
46
- await magic.auth.loginWithMagicLink({ email: 'your.email@example.com' });
77
+ ### Internals
78
+
79
+ These are packages Magic JS SDK uses internally to work seamlessly across platforms.
80
+
81
+ | Package Name | Changelog | Description |
82
+ | ------------ | --------- | ----------- |
83
+ | [`@magic-sdk/types`](https://www.npmjs.com/package/@magic-sdk/types) | [CHANGELOG](./packages/@magic-sdk/types/CHANGELOG.md) | Core typings shared between JavaScript entry-points of Magic SDK. |
84
+ | [`@magic-sdk/pnp`](https://www.npmjs.com/package/@magic-sdk/pnp) | [CHANGELOG](./packages/@magic-sdk/pnp/CHANGELOG.md) | A lightweight connector that wraps Magic JS authentication with a beautiful, functional out-of-the-box login form. |
85
+ | [`@magic-sdk/provider`](https://www.npmjs.com/package/@magic-sdk/provider) | [CHANGELOG](./packages/@magic-sdk/provider/CHANGELOG.md) | Core business logic shared between JavaScript entry-points of Magic SDK. |
86
+ | [`@magic-sdk/commons`](https://www.npmjs.com/package/@magic-sdk/commons) | [CHANGELOG](./packages/@magic-sdk/commons/CHANGELOG.md) | Exposes a listing of common public APIs from `@magic-sdk/provider` and `@magic-sdk/types` to the platform-specific entry points. |
87
+ | [`@magic-sdk/types`](https://www.npmjs.com/package/@magic-sdk/types) | [CHANGELOG](./packages/@magic-sdk/types/CHANGELOG.md) | Core typings for Magic SDK packages. |
88
+
89
+ ## ๐Ÿšฆ Testing
90
+
91
+ Run tests for all packages
92
+ ```bash
93
+ yarn test
94
+ ```
95
+
96
+ Test an individual package
97
+ ```bash
98
+ PKG=magic-sdk yarn test
99
+ PKG=@magic-sdk/react-native-bare yarn test
100
+ PKG=@magic-sdk/react-native-expo yarn test
101
+ ```
102
+
103
+ Test specific files
104
+ ```bash
105
+ yarn test /test/**/constructor.spec.ts
47
106
  ```
package/dist/cjs/index.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var et=Object.create;var be=Object.defineProperty;var rt=Object.getOwnPropertyDescriptor;var tt=Object.getOwnPropertyNames;var nt=Object.getPrototypeOf,ot=Object.prototype.hasOwnProperty;var er=(p,E)=>()=>(E||p((E={exports:{}}).exports,E),E.exports),it=(p,E)=>{for(var I in E)be(p,I,{get:E[I],enumerable:!0})},ge=(p,E,I,L)=>{if(E&&typeof E=="object"||typeof E=="function")for(let D of tt(E))!ot.call(p,D)&&D!==I&&be(p,D,{get:()=>E[D],enumerable:!(L=rt(E,D))||L.enumerable});return p},ne=(p,E,I)=>(ge(p,E,"default"),I&&ge(I,E,"default")),rr=(p,E,I)=>(I=p!=null?et(nt(p)):{},ge(E||!p||!p.__esModule?be(I,"default",{value:p,enumerable:!0}):I,p)),at=p=>ge(be({},"__esModule",{value:!0}),p);var de=(p,E,I)=>new Promise((L,D)=>{var X=A=>{try{Y(I.next(A))}catch(M){D(M)}},P=A=>{try{Y(I.throw(A))}catch(M){D(M)}},Y=A=>A.done?L(A.value):Promise.resolve(A.value).then(X,P);Y((I=I.apply(p,E)).next())});var nr=er((tr,Ce)=>{(function(p){if(typeof tr=="object"&&typeof Ce<"u")Ce.exports=p();else if(typeof define=="function"&&define.amd)define([],p);else{var E;typeof window<"u"?E=window:typeof global<"u"?E=global:typeof self<"u"?E=self:E=this,E.localforage=p()}})(function(){var p,E,I;return function L(D,X,P){function Y(H,$){if(!X[H]){if(!D[H]){var m=typeof require=="function"&&require;if(!$&&m)return m(H,!0);if(A)return A(H,!0);var _=new Error("Cannot find module '"+H+"'");throw _.code="MODULE_NOT_FOUND",_}var B=X[H]={exports:{}};D[H][0].call(B.exports,function(z){var Z=D[H][1][z];return Y(Z||z)},B,B.exports,L,D,X,P)}return X[H].exports}for(var A=typeof require=="function"&&require,M=0;M<P.length;M++)Y(P[M]);return Y}({1:[function(L,D,X){(function(P){"use strict";var Y=P.MutationObserver||P.WebKitMutationObserver,A;if(Y){var M=0,H=new Y(z),$=P.document.createTextNode("");H.observe($,{characterData:!0}),A=function(){$.data=M=++M%2}}else if(!P.setImmediate&&typeof P.MessageChannel<"u"){var m=new P.MessageChannel;m.port1.onmessage=z,A=function(){m.port2.postMessage(0)}}else"document"in P&&"onreadystatechange"in P.document.createElement("script")?A=function(){var F=P.document.createElement("script");F.onreadystatechange=function(){z(),F.onreadystatechange=null,F.parentNode.removeChild(F),F=null},P.document.documentElement.appendChild(F)}:A=function(){setTimeout(z,0)};var _,B=[];function z(){_=!0;for(var F,k,U=B.length;U;){for(k=B,B=[],F=-1;++F<U;)k[F]();U=B.length}_=!1}D.exports=Z;function Z(F){B.push(F)===1&&!_&&A()}}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{}],2:[function(L,D,X){"use strict";var P=L(1);function Y(){}var A={},M=["REJECTED"],H=["FULFILLED"],$=["PENDING"];D.exports=m;function m(h){if(typeof h!="function")throw new TypeError("resolver must be a function");this.state=$,this.queue=[],this.outcome=void 0,h!==Y&&Z(this,h)}m.prototype.catch=function(h){return this.then(null,h)},m.prototype.then=function(h,N){if(typeof h!="function"&&this.state===H||typeof N!="function"&&this.state===M)return this;var S=new this.constructor(Y);if(this.state!==$){var O=this.state===H?h:N;B(S,O,this.outcome)}else this.queue.push(new _(S,h,N));return S};function _(h,N,S){this.promise=h,typeof N=="function"&&(this.onFulfilled=N,this.callFulfilled=this.otherCallFulfilled),typeof S=="function"&&(this.onRejected=S,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(h){A.resolve(this.promise,h)},_.prototype.otherCallFulfilled=function(h){B(this.promise,this.onFulfilled,h)},_.prototype.callRejected=function(h){A.reject(this.promise,h)},_.prototype.otherCallRejected=function(h){B(this.promise,this.onRejected,h)};function B(h,N,S){P(function(){var O;try{O=N(S)}catch(V){return A.reject(h,V)}O===h?A.reject(h,new TypeError("Cannot resolve promise with itself")):A.resolve(h,O)})}A.resolve=function(h,N){var S=F(z,N);if(S.status==="error")return A.reject(h,S.value);var O=S.value;if(O)Z(h,O);else{h.state=H,h.outcome=N;for(var V=-1,j=h.queue.length;++V<j;)h.queue[V].callFulfilled(N)}return h},A.reject=function(h,N){h.state=M,h.outcome=N;for(var S=-1,O=h.queue.length;++S<O;)h.queue[S].callRejected(N);return h};function z(h){var N=h&&h.then;if(h&&(typeof h=="object"||typeof h=="function")&&typeof N=="function")return function(){N.apply(h,arguments)}}function Z(h,N){var S=!1;function O(J){S||(S=!0,A.reject(h,J))}function V(J){S||(S=!0,A.resolve(h,J))}function j(){N(V,O)}var Q=F(j);Q.status==="error"&&O(Q.value)}function F(h,N){var S={};try{S.value=h(N),S.status="success"}catch(O){S.status="error",S.value=O}return S}m.resolve=k;function k(h){return h instanceof this?h:A.resolve(new this(Y),h)}m.reject=U;function U(h){var N=new this(Y);return A.reject(N,h)}m.all=se;function se(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var S=h.length,O=!1;if(!S)return this.resolve([]);for(var V=new Array(S),j=0,Q=-1,J=new this(Y);++Q<S;)ee(h[Q],Q);return J;function ee(fe,a){N.resolve(fe).then(s,function(v){O||(O=!0,A.reject(J,v))});function s(v){V[a]=v,++j===S&&!O&&(O=!0,A.resolve(J,V))}}}m.race=te;function te(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var S=h.length,O=!1;if(!S)return this.resolve([]);for(var V=-1,j=new this(Y);++V<S;)Q(h[V]);return j;function Q(J){N.resolve(J).then(function(ee){O||(O=!0,A.resolve(j,ee))},function(ee){O||(O=!0,A.reject(j,ee))})}}},{1:1}],3:[function(L,D,X){(function(P){"use strict";typeof P.Promise!="function"&&(P.Promise=L(2))}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{2:2}],4:[function(L,D,X){"use strict";var P=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function Y(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function A(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var M=A();function H(){try{if(!M||!M.open)return!1;var e=typeof openDatabase<"u"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t=typeof fetch=="function"&&fetch.toString().indexOf("[native code")!==-1;return(!e||t)&&typeof indexedDB<"u"&&typeof IDBKeyRange<"u"}catch{return!1}}function $(e,t){e=e||[],t=t||{};try{return new Blob(e,t)}catch(n){if(n.name!=="TypeError")throw n;for(var r=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,o=new r,i=0;i<e.length;i+=1)o.append(e[i]);return o.getBlob(t.type)}}typeof Promise>"u"&&L(3);var m=Promise;function _(e,t){t&&e.then(function(r){t(null,r)},function(r){t(r)})}function B(e,t,r){typeof t=="function"&&e.then(t),typeof r=="function"&&e.catch(r)}function z(e){return typeof e!="string"&&(console.warn(e+" used as a key, but it is not a string."),e=String(e)),e}function Z(){if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}var F="local-forage-detect-blob-support",k=void 0,U={},se=Object.prototype.toString,te="readonly",h="readwrite";function N(e){for(var t=e.length,r=new ArrayBuffer(t),o=new Uint8Array(r),i=0;i<t;i++)o[i]=e.charCodeAt(i);return r}function S(e){return new m(function(t){var r=e.transaction(F,h),o=$([""]);r.objectStore(F).put(o,"key"),r.onabort=function(i){i.preventDefault(),i.stopPropagation(),t(!1)},r.oncomplete=function(){var i=navigator.userAgent.match(/Chrome\/(\d+)/),n=navigator.userAgent.match(/Edge\//);t(n||!i||parseInt(i[1],10)>=43)}}).catch(function(){return!1})}function O(e){return typeof k=="boolean"?m.resolve(k):S(e).then(function(t){return k=t,k})}function V(e){var t=U[e.name],r={};r.promise=new m(function(o,i){r.resolve=o,r.reject=i}),t.deferredOperations.push(r),t.dbReady?t.dbReady=t.dbReady.then(function(){return r.promise}):t.dbReady=r.promise}function j(e){var t=U[e.name],r=t.deferredOperations.pop();if(r)return r.resolve(),r.promise}function Q(e,t){var r=U[e.name],o=r.deferredOperations.pop();if(o)return o.reject(t),o.promise}function J(e,t){return new m(function(r,o){if(U[e.name]=U[e.name]||G(),e.db)if(t)V(e),e.db.close();else return r(e.db);var i=[e.name];t&&i.push(e.version);var n=M.open.apply(M,i);t&&(n.onupgradeneeded=function(f){var u=n.result;try{u.createObjectStore(e.storeName),f.oldVersion<=1&&u.createObjectStore(F)}catch(c){if(c.name==="ConstraintError")console.warn('The database "'+e.name+'" has been upgraded from version '+f.oldVersion+" to version "+f.newVersion+', but the storage "'+e.storeName+'" already exists.');else throw c}}),n.onerror=function(f){f.preventDefault(),o(n.error)},n.onsuccess=function(){var f=n.result;f.onversionchange=function(u){u.target.close()},r(f),j(e)}})}function ee(e){return J(e,!1)}function fe(e){return J(e,!0)}function a(e,t){if(!e.db)return!0;var r=!e.db.objectStoreNames.contains(e.storeName),o=e.version<e.db.version,i=e.version>e.db.version;if(o&&(e.version!==t&&console.warn('The database "'+e.name+`" can't be downgraded from version `+e.db.version+" to version "+e.version+"."),e.version=e.db.version),i||r){if(r){var n=e.db.version+1;n>e.version&&(e.version=n)}return!0}return!1}function s(e){return new m(function(t,r){var o=new FileReader;o.onerror=r,o.onloadend=function(i){var n=btoa(i.target.result||"");t({__local_forage_encoded_blob:!0,data:n,type:e.type})},o.readAsBinaryString(e)})}function v(e){var t=N(atob(e.data));return $([t],{type:e.type})}function g(e){return e&&e.__local_forage_encoded_blob}function b(e){var t=this,r=t._initReady().then(function(){var o=U[t._dbInfo.name];if(o&&o.dbReady)return o.dbReady});return B(r,e,e),r}function w(e){V(e);for(var t=U[e.name],r=t.forages,o=0;o<r.length;o++){var i=r[o];i._dbInfo.db&&(i._dbInfo.db.close(),i._dbInfo.db=null)}return e.db=null,ee(e).then(function(n){return e.db=n,a(e)?fe(e):n}).then(function(n){e.db=t.db=n;for(var f=0;f<r.length;f++)r[f]._dbInfo.db=n}).catch(function(n){throw Q(e,n),n})}function T(e,t,r,o){o===void 0&&(o=1);try{var i=e.db.transaction(e.storeName,t);r(null,i)}catch(n){if(o>0&&(!e.db||n.name==="InvalidStateError"||n.name==="NotFoundError"))return m.resolve().then(function(){if(!e.db||n.name==="NotFoundError"&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),fe(e)}).then(function(){return w(e).then(function(){T(e,t,r,o-1)})}).catch(r);r(n)}}function G(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function ce(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=e[o];var i=U[r.name];i||(i=G(),U[r.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=b);var n=[];function f(){return m.resolve()}for(var u=0;u<i.forages.length;u++){var c=i.forages[u];c!==t&&n.push(c._initReady().catch(f))}var l=i.forages.slice(0);return m.all(n).then(function(){return r.db=i.db,ee(r)}).then(function(d){return r.db=d,a(r,t._defaultConfig.version)?fe(r):d}).then(function(d){r.db=i.db=d,t._dbInfo=r;for(var y=0;y<l.length;y++){var R=l[y];R!==t&&(R._dbInfo.db=r.db,R._dbInfo.version=r.version)}})}function ue(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,te,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.get(e);l.onsuccess=function(){var d=l.result;d===void 0&&(d=null),g(d)&&(d=v(d)),i(d)},l.onerror=function(){n(l.error)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ve(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,te,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.openCursor(),d=1;l.onsuccess=function(){var y=l.result;if(y){var R=y.value;g(R)&&(R=v(R));var x=e(R,y.key,d++);x!==void 0?i(x):y.continue()}else i()},l.onerror=function(){n(l.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function ar(e,t,r){var o=this;e=z(e);var i=new m(function(n,f){var u;o.ready().then(function(){return u=o._dbInfo,se.call(t)==="[object Blob]"?O(u.db).then(function(c){return c?t:s(t)}):t}).then(function(c){T(o._dbInfo,h,function(l,d){if(l)return f(l);try{var y=d.objectStore(o._dbInfo.storeName);c===null&&(c=void 0);var R=y.put(c,e);d.oncomplete=function(){c===void 0&&(c=null),n(c)},d.onabort=d.onerror=function(){var x=R.error?R.error:R.transaction.error;f(x)}}catch(x){f(x)}})}).catch(f)});return _(i,r),i}function fr(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,h,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.delete(e);u.oncomplete=function(){i()},u.onerror=function(){n(l.error)},u.onabort=function(){var d=l.error?l.error:l.transaction.error;n(d)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ur(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,h,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.clear();f.oncomplete=function(){o()},f.onabort=f.onerror=function(){var l=c.error?c.error:c.transaction.error;i(l)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function sr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,te,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.count();c.onsuccess=function(){o(c.result)},c.onerror=function(){i(c.error)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function cr(e,t){var r=this,o=new m(function(i,n){if(e<0){i(null);return}r.ready().then(function(){T(r._dbInfo,te,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=!1,d=c.openKeyCursor();d.onsuccess=function(){var y=d.result;if(!y){i(null);return}e===0||l?i(y.key):(l=!0,y.advance(e))},d.onerror=function(){n(d.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function lr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,te,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.openKeyCursor(),l=[];c.onsuccess=function(){var d=c.result;if(!d){o(l);return}l.push(d.key),d.continue()},c.onerror=function(){i(c.error)}}catch(d){i(d)}})}).catch(i)});return _(r,e),r}function dr(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;if(!e.name)i=m.reject("Invalid arguments");else{var n=e.name===r.name&&o._dbInfo.db,f=n?m.resolve(o._dbInfo.db):ee(e).then(function(u){var c=U[e.name],l=c.forages;c.db=u;for(var d=0;d<l.length;d++)l[d]._dbInfo.db=u;return u});e.storeName?i=f.then(function(u){if(!!u.objectStoreNames.contains(e.storeName)){var c=u.version+1;V(e);var l=U[e.name],d=l.forages;u.close();for(var y=0;y<d.length;y++){var R=d[y];R._dbInfo.db=null,R._dbInfo.version=c}var x=new m(function(C,K){var W=M.open(e.name,c);W.onerror=function(q){var me=W.result;me.close(),K(q)},W.onupgradeneeded=function(){var q=W.result;q.deleteObjectStore(e.storeName)},W.onsuccess=function(){var q=W.result;q.close(),C(q)}});return x.then(function(C){l.db=C;for(var K=0;K<d.length;K++){var W=d[K];W._dbInfo.db=C,j(W._dbInfo)}}).catch(function(C){throw(Q(e,C)||m.resolve()).catch(function(){}),C})}}):i=f.then(function(u){V(e);var c=U[e.name],l=c.forages;u.close();for(var d=0;d<l.length;d++){var y=l[d];y._dbInfo.db=null}var R=new m(function(x,C){var K=M.deleteDatabase(e.name);K.onerror=function(){var W=K.result;W&&W.close(),C(K.error)},K.onblocked=function(){console.warn('dropInstance blocked for database "'+e.name+'" until all open connections are closed')},K.onsuccess=function(){var W=K.result;W&&W.close(),x(W)}});return R.then(function(x){c.db=x;for(var C=0;C<l.length;C++){var K=l[C];j(K._dbInfo)}}).catch(function(x){throw(Q(e,x)||m.resolve()).catch(function(){}),x})})}return _(i,t),i}var vr={_driver:"asyncStorage",_initStorage:ce,_support:H(),iterate:ve,getItem:ue,setItem:ar,removeItem:fr,clear:ur,length:sr,key:cr,keys:lr,dropInstance:dr};function hr(){return typeof openDatabase=="function"}var ie="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",mr="~~local_forage_type~",Pe=/^~~local_forage_type~([^~]+)~/,ye="__lfsc__:",Se=ye.length,Ae="arbf",Re="blob",Me="si08",Fe="ui08",Ue="uic8",Ye="si16",ze="si32",We="ur16",Ke="ui32",He="fl32",Ve="fl64",Ge=Se+Ae.length,je=Object.prototype.toString;function Xe(e){var t=e.length*.75,r=e.length,o,i=0,n,f,u,c;e[e.length-1]==="="&&(t--,e[e.length-2]==="="&&t--);var l=new ArrayBuffer(t),d=new Uint8Array(l);for(o=0;o<r;o+=4)n=ie.indexOf(e[o]),f=ie.indexOf(e[o+1]),u=ie.indexOf(e[o+2]),c=ie.indexOf(e[o+3]),d[i++]=n<<2|f>>4,d[i++]=(f&15)<<4|u>>2,d[i++]=(u&3)<<6|c&63;return l}function De(e){var t=new Uint8Array(e),r="",o;for(o=0;o<t.length;o+=3)r+=ie[t[o]>>2],r+=ie[(t[o]&3)<<4|t[o+1]>>4],r+=ie[(t[o+1]&15)<<2|t[o+2]>>6],r+=ie[t[o+2]&63];return t.length%3===2?r=r.substring(0,r.length-1)+"=":t.length%3===1&&(r=r.substring(0,r.length-2)+"=="),r}function yr(e,t){var r="";if(e&&(r=je.call(e)),e&&(r==="[object ArrayBuffer]"||e.buffer&&je.call(e.buffer)==="[object ArrayBuffer]")){var o,i=ye;e instanceof ArrayBuffer?(o=e,i+=Ae):(o=e.buffer,r==="[object Int8Array]"?i+=Me:r==="[object Uint8Array]"?i+=Fe:r==="[object Uint8ClampedArray]"?i+=Ue:r==="[object Int16Array]"?i+=Ye:r==="[object Uint16Array]"?i+=We:r==="[object Int32Array]"?i+=ze:r==="[object Uint32Array]"?i+=Ke:r==="[object Float32Array]"?i+=He:r==="[object Float64Array]"?i+=Ve:t(new Error("Failed to get type for BinaryArray"))),t(i+De(o))}else if(r==="[object Blob]"){var n=new FileReader;n.onload=function(){var f=mr+e.type+"~"+De(this.result);t(ye+Re+f)},n.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(f){console.error("Couldn't convert value into a JSON string: ",e),t(null,f)}}function pr(e){if(e.substring(0,Se)!==ye)return JSON.parse(e);var t=e.substring(Ge),r=e.substring(Se,Ge),o;if(r===Re&&Pe.test(t)){var i=t.match(Pe);o=i[1],t=t.substring(i[0].length)}var n=Xe(t);switch(r){case Ae:return n;case Re:return $([n],{type:o});case Me:return new Int8Array(n);case Fe:return new Uint8Array(n);case Ue:return new Uint8ClampedArray(n);case Ye:return new Int16Array(n);case We:return new Uint16Array(n);case ze:return new Int32Array(n);case Ke:return new Uint32Array(n);case He:return new Float32Array(n);case Ve:return new Float64Array(n);default:throw new Error("Unkown type: "+r)}}var Ne={serialize:yr,deserialize:pr,stringToBuffer:Xe,bufferToString:De};function Qe(e,t,r,o){e.executeSql("CREATE TABLE IF NOT EXISTS "+t.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],r,o)}function gr(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=typeof e[o]!="string"?e[o].toString():e[o];var i=new m(function(n,f){try{r.db=openDatabase(r.name,String(r.version),r.description,r.size)}catch(u){return f(u)}r.db.transaction(function(u){Qe(u,r,function(){t._dbInfo=r,n()},function(c,l){f(l)})},f)});return r.serializer=Ne,i}function ae(e,t,r,o,i,n){e.executeSql(r,o,i,function(f,u){u.code===u.SYNTAX_ERR?f.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[t.storeName],function(c,l){l.rows.length?n(c,u):Qe(c,t,function(){c.executeSql(r,o,i,n)},n)},n):n(f,u)},n)}function br(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ae(u,f,"SELECT * FROM "+f.storeName+" WHERE key = ? LIMIT 1",[e],function(c,l){var d=l.rows.length?l.rows.item(0).value:null;d&&(d=f.serializer.deserialize(d)),i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function _r(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ae(u,f,"SELECT * FROM "+f.storeName,[],function(c,l){for(var d=l.rows,y=d.length,R=0;R<y;R++){var x=d.item(R),C=x.value;if(C&&(C=f.serializer.deserialize(C)),C=e(C,x.key,R+1),C!==void 0){i(C);return}}i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Je(e,t,r,o){var i=this;e=z(e);var n=new m(function(f,u){i.ready().then(function(){t===void 0&&(t=null);var c=t,l=i._dbInfo;l.serializer.serialize(t,function(d,y){y?u(y):l.db.transaction(function(R){ae(R,l,"INSERT OR REPLACE INTO "+l.storeName+" (key, value) VALUES (?, ?)",[e,d],function(){f(c)},function(x,C){u(C)})},function(R){if(R.code===R.QUOTA_ERR){if(o>0){f(Je.apply(i,[e,c,r,o-1]));return}u(R)}})})}).catch(u)});return _(n,r),n}function wr(e,t,r){return Je.apply(this,[e,t,r,1])}function Er(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ae(u,f,"DELETE FROM "+f.storeName+" WHERE key = ?",[e],function(){i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ae(f,n,"DELETE FROM "+n.storeName,[],function(){o()},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Sr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ae(f,n,"SELECT COUNT(key) as c FROM "+n.storeName,[],function(u,c){var l=c.rows.item(0).c;o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Ar(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ae(u,f,"SELECT key FROM "+f.storeName+" WHERE id = ? LIMIT 1",[e+1],function(c,l){var d=l.rows.length?l.rows.item(0).key:null;i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Rr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ae(f,n,"SELECT key FROM "+n.storeName,[],function(u,c){for(var l=[],d=0;d<c.rows.length;d++)l.push(c.rows.item(d).key);o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Dr(e){return new m(function(t,r){e.transaction(function(o){o.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(i,n){for(var f=[],u=0;u<n.rows.length;u++)f.push(n.rows.item(u).name);t({db:e,storeNames:f})},function(i,n){r(n)})},function(o){r(o)})})}function Nr(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;return e.name?i=new m(function(n){var f;e.name===r.name?f=o._dbInfo.db:f=openDatabase(e.name,"","",0),e.storeName?n({db:f,storeNames:[e.storeName]}):n(Dr(f))}).then(function(n){return new m(function(f,u){n.db.transaction(function(c){function l(x){return new m(function(C,K){c.executeSql("DROP TABLE IF EXISTS "+x,[],function(){C()},function(W,q){K(q)})})}for(var d=[],y=0,R=n.storeNames.length;y<R;y++)d.push(l(n.storeNames[y]));m.all(d).then(function(){f()}).catch(function(x){u(x)})},function(c){u(c)})})}):i=m.reject("Invalid arguments"),_(i,t),i}var Tr={_driver:"webSQLStorage",_initStorage:gr,_support:hr(),iterate:_r,getItem:br,setItem:wr,removeItem:Er,clear:Ir,length:Sr,key:Ar,keys:Rr,dropInstance:Nr};function Br(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function $e(e,t){var r=e.name+"/";return e.storeName!==t.storeName&&(r+=e.storeName+"/"),r}function xr(){var e="_localforage_support_test";try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch{return!0}}function Or(){return!xr()||localStorage.length>0}function Cr(e){var t=this,r={};if(e)for(var o in e)r[o]=e[o];return r.keyPrefix=$e(e,t._defaultConfig),Or()?(t._dbInfo=r,r.serializer=Ne,m.resolve()):m.reject()}function Lr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo.keyPrefix,i=localStorage.length-1;i>=0;i--){var n=localStorage.key(i);n.indexOf(o)===0&&localStorage.removeItem(n)}});return _(r,e),r}function Pr(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo,n=localStorage.getItem(i.keyPrefix+e);return n&&(n=i.serializer.deserialize(n)),n});return _(o,t),o}function Mr(e,t){var r=this,o=r.ready().then(function(){for(var i=r._dbInfo,n=i.keyPrefix,f=n.length,u=localStorage.length,c=1,l=0;l<u;l++){var d=localStorage.key(l);if(d.indexOf(n)===0){var y=localStorage.getItem(d);if(y&&(y=i.serializer.deserialize(y)),y=e(y,d.substring(f),c++),y!==void 0)return y}}});return _(o,t),o}function Fr(e,t){var r=this,o=r.ready().then(function(){var i=r._dbInfo,n;try{n=localStorage.key(e)}catch{n=null}return n&&(n=n.substring(i.keyPrefix.length)),n});return _(o,t),o}function Ur(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo,i=localStorage.length,n=[],f=0;f<i;f++){var u=localStorage.key(f);u.indexOf(o.keyPrefix)===0&&n.push(u.substring(o.keyPrefix.length))}return n});return _(r,e),r}function Yr(e){var t=this,r=t.keys().then(function(o){return o.length});return _(r,e),r}function zr(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo;localStorage.removeItem(i.keyPrefix+e)});return _(o,t),o}function Wr(e,t,r){var o=this;e=z(e);var i=o.ready().then(function(){t===void 0&&(t=null);var n=t;return new m(function(f,u){var c=o._dbInfo;c.serializer.serialize(t,function(l,d){if(d)u(d);else try{localStorage.setItem(c.keyPrefix+e,l),f(n)}catch(y){(y.name==="QuotaExceededError"||y.name==="NS_ERROR_DOM_QUOTA_REACHED")&&u(y),u(y)}})})});return _(i,r),i}function Kr(e,t){if(t=Z.apply(this,arguments),e=typeof e!="function"&&e||{},!e.name){var r=this.config();e.name=e.name||r.name,e.storeName=e.storeName||r.storeName}var o=this,i;return e.name?i=new m(function(n){e.storeName?n($e(e,o._defaultConfig)):n(e.name+"/")}).then(function(n){for(var f=localStorage.length-1;f>=0;f--){var u=localStorage.key(f);u.indexOf(n)===0&&localStorage.removeItem(u)}}):i=m.reject("Invalid arguments"),_(i,t),i}var Hr={_driver:"localStorageWrapper",_initStorage:Cr,_support:Br(),iterate:Mr,getItem:Pr,setItem:Wr,removeItem:zr,clear:Lr,length:Yr,key:Fr,keys:Ur,dropInstance:Kr},Vr=function(t,r){return t===r||typeof t=="number"&&typeof r=="number"&&isNaN(t)&&isNaN(r)},Gr=function(t,r){for(var o=t.length,i=0;i<o;){if(Vr(t[i],r))return!0;i++}return!1},Ze=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"},he={},qe={},le={INDEXEDDB:vr,WEBSQL:Tr,LOCALSTORAGE:Hr},jr=[le.INDEXEDDB._driver,le.WEBSQL._driver,le.LOCALSTORAGE._driver],pe=["dropInstance"],Te=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(pe),Xr={description:"",driver:jr.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Qr(e,t){e[t]=function(){var r=arguments;return e.ready().then(function(){return e[t].apply(e,r)})}}function Be(){for(var e=1;e<arguments.length;e++){var t=arguments[e];if(t)for(var r in t)t.hasOwnProperty(r)&&(Ze(t[r])?arguments[0][r]=t[r].slice():arguments[0][r]=t[r])}return arguments[0]}var Jr=function(){function e(t){Y(this,e);for(var r in le)if(le.hasOwnProperty(r)){var o=le[r],i=o._driver;this[r]=i,he[i]||this.defineDriver(o)}this._defaultConfig=Be({},Xr),this._config=Be({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return e.prototype.config=function(r){if((typeof r>"u"?"undefined":P(r))==="object"){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var o in r){if(o==="storeName"&&(r[o]=r[o].replace(/\W/g,"_")),o==="version"&&typeof r[o]!="number")return new Error("Database version must be a number.");this._config[o]=r[o]}return"driver"in r&&r.driver?this.setDriver(this._config.driver):!0}else return typeof r=="string"?this._config[r]:this._config},e.prototype.defineDriver=function(r,o,i){var n=new m(function(f,u){try{var c=r._driver,l=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!r._driver){u(l);return}for(var d=Te.concat("_initStorage"),y=0,R=d.length;y<R;y++){var x=d[y],C=!Gr(pe,x);if((C||r[x])&&typeof r[x]!="function"){u(l);return}}var K=function(){for(var me=function(qr){return function(){var kr=new Error("Method "+qr+" is not implemented by the current driver"),ke=m.reject(kr);return _(ke,arguments[arguments.length-1]),ke}},xe=0,Zr=pe.length;xe<Zr;xe++){var Oe=pe[xe];r[Oe]||(r[Oe]=me(Oe))}};K();var W=function(me){he[c]&&console.info("Redefining LocalForage driver: "+c),he[c]=r,qe[c]=me,f()};"_support"in r?r._support&&typeof r._support=="function"?r._support().then(W,u):W(!!r._support):W(!0)}catch(q){u(q)}});return B(n,o,i),n},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(r,o,i){var n=he[r]?m.resolve(he[r]):m.reject(new Error("Driver not found."));return B(n,o,i),n},e.prototype.getSerializer=function(r){var o=m.resolve(Ne);return B(o,r),o},e.prototype.ready=function(r){var o=this,i=o._driverSet.then(function(){return o._ready===null&&(o._ready=o._initDriver()),o._ready});return B(i,r,r),i},e.prototype.setDriver=function(r,o,i){var n=this;Ze(r)||(r=[r]);var f=this._getSupportedDrivers(r);function u(){n._config.driver=n.driver()}function c(y){return n._extend(y),u(),n._ready=n._initStorage(n._config),n._ready}function l(y){return function(){var R=0;function x(){for(;R<y.length;){var C=y[R];return R++,n._dbInfo=null,n._ready=null,n.getDriver(C).then(c).catch(x)}u();var K=new Error("No available storage method found.");return n._driverSet=m.reject(K),n._driverSet}return x()}}var d=this._driverSet!==null?this._driverSet.catch(function(){return m.resolve()}):m.resolve();return this._driverSet=d.then(function(){var y=f[0];return n._dbInfo=null,n._ready=null,n.getDriver(y).then(function(R){n._driver=R._driver,u(),n._wrapLibraryMethodsWithReady(),n._initDriver=l(f)})}).catch(function(){u();var y=new Error("No available storage method found.");return n._driverSet=m.reject(y),n._driverSet}),B(this._driverSet,o,i),this._driverSet},e.prototype.supports=function(r){return!!qe[r]},e.prototype._extend=function(r){Be(this,r)},e.prototype._getSupportedDrivers=function(r){for(var o=[],i=0,n=r.length;i<n;i++){var f=r[i];this.supports(f)&&o.push(f)}return o},e.prototype._wrapLibraryMethodsWithReady=function(){for(var r=0,o=Te.length;r<o;r++)Qr(this,Te[r])},e.prototype.createInstance=function(r){return new e(r)},e}(),$r=new Jr;D.exports=$r},{3:3}]},{},[4])(4)})});var ir=er((_e,or)=>{(function(p,E){typeof _e=="object"&&typeof or<"u"?E(_e):typeof define=="function"&&define.amd?define("localforage-driver-memory",["exports"],E):E(p.LocalforageDriverMemory={})})(typeof self<"u"?self:_e,function(p){"use strict";var E="localforage-driver-memory";function I(a){var s=typeof Symbol=="function"&&a[Symbol.iterator],v=0;return s?s.call(a):{next:function(){return a&&v>=a.length&&(a=void 0),{value:a&&a[v++],done:!a}}}}function L(a,s){a=a||[],s=s||{};try{return new Blob(a,s)}catch(w){if(w.name!=="TypeError")throw w;for(var v=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,g=new v,b=0;b<a.length;b+=1)g.append(a[b]);return g.getBlob(s.type)}}var D=/^~~local_forage_type~([^~]+)~/,X=9,P=X+4,Y=Object.prototype.toString;function A(a){var s=a.length*.75,v=a.length;a[a.length-1]==="="&&(s--,a[a.length-2]==="="&&s--);for(var g=new ArrayBuffer(s),b=new Uint8Array(g),w=0,T=0;w<v;w+=4){var G="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w]),ce="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+1]),ue="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+2]),ve="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+3]);b[T++]=G<<2|ce>>4,b[T++]=(ce&15)<<4|ue>>2,b[T++]=(ue&3)<<6|ve&63}return g}function M(a){for(var s=new Uint8Array(a),v="",g=0;g<s.length;g+=3)v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[g]>>2],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[g]&3)<<4|s[g+1]>>4],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[g+1]&15)<<2|s[g+2]>>6],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[g+2]&63];return s.length%3===2?v=v.substring(0,v.length-1)+"=":s.length%3===1&&(v=v.substring(0,v.length-2)+"=="),v}function H(a,s){var v="";if(a&&(v=Y.call(a)),a&&(v==="[object ArrayBuffer]"||a.buffer&&Y.call(a.buffer)==="[object ArrayBuffer]")){var g=void 0,b="__lfsc__:";a instanceof ArrayBuffer?(g=a,b+="arbf"):(g=a.buffer,v==="[object Int8Array]"?b+="si08":v==="[object Uint8Array]"?b+="ui08":v==="[object Uint8ClampedArray]"?b+="uic8":v==="[object Int16Array]"?b+="si16":v==="[object Uint16Array]"?b+="ur16":v==="[object Int32Array]"?b+="si32":v==="[object Uint32Array]"?b+="ui32":v==="[object Float32Array]"?b+="fl32":v==="[object Float64Array]"?b+="fl64":s(new Error("Failed to get type for BinaryArray"))),s(b+M(g))}else if(v==="[object Blob]"){var w=new FileReader;w.onload=function(){var T="~~local_forage_type~"+a.type+"~"+M(this.result);s("__lfsc__:blob"+T)},w.readAsArrayBuffer(a)}else try{s(JSON.stringify(a))}catch(T){console.error("Couldn't convert value into a JSON string: ",a),s(null,T)}}function $(a){if(a.substring(0,X)!=="__lfsc__:")return JSON.parse(a);var s=a.substring(P),v=a.substring(X,P),g;if(v==="blob"&&D.test(s)){var b=s.match(D);g=b[1],s=s.substring(b[0].length)}var w=A(s);switch(v){case"arbf":return w;case"blob":return L([w],{type:g});case"si08":return new Int8Array(w);case"ui08":return new Uint8Array(w);case"uic8":return new Uint8ClampedArray(w);case"si16":return new Int16Array(w);case"ur16":return new Uint16Array(w);case"si32":return new Int32Array(w);case"ui32":return new Uint32Array(w);case"fl32":return new Float32Array(w);case"fl64":return new Float64Array(w);default:throw new Error("Unkown type: "+v)}}function m(a){var s,v;if(a===null||typeof a!="object"||"isActiveClone"in a)return a;var g=a instanceof Date?new Date(a):a.constructor();try{for(var b=I(Object.keys(a)),w=b.next();!w.done;w=b.next()){var T=w.value;Object.prototype.hasOwnProperty.call(a,T)&&(a.isActiveClone=null,g[T]=m(a[T]),delete a.isActiveClone)}}catch(G){s={error:G}}finally{try{w&&!w.done&&(v=b.return)&&v.call(b)}finally{if(s)throw s.error}}return g}function _(a,s){return(a.name||s.name)+"/"+(a.storeName||s.storeName)+"/"}function B(a,s){s&&a.then(function(v){s(null,v)},function(v){s(v)})}function z(){for(var a=[],s=0;s<arguments.length;s++)a[s]=arguments[s];if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}function Z(a,s){var v=this;if(s=z.apply(this,arguments),a=typeof a!="function"&&a||{},!a.name){var g=this.config();a.name=a.name||g.name,a.storeName=a.storeName||g.storeName}var b;return a.name?b=new Promise(function(w){a.storeName?w(_(a,v._defaultConfig)):w(a.name+"/")}):b=Promise.reject("Invalid arguments"),{promise:b,callback:s}}function F(a){return typeof a!="string"&&(console.warn(a+" used as a key, but it is not a string."),a=String(a)),a}var k={bufferToString:M,deserialize:$,serialize:H,stringToBuffer:A},U={},se=function(){function a(s){this.kp=s,this.data={}}return a.resolve=function(s){return U[s]||(U[s]=new a(s)),U[s]},a.prototype.clear=function(){this.data={}},a.prototype.drop=function(){this.clear(),delete U[this.kp]},a.prototype.get=function(s){return this.data[s]},a.prototype.key=function(s){return this.keys()[s]},a.prototype.keys=function(){return Object.keys(this.data)},a.prototype.rm=function(s){delete this.data[s]},a.prototype.set=function(s,v){this.data[s]=v},a}();function te(a){var s=a?m(a):{},v=_(s,this._defaultConfig),g=se.resolve(v);return this._dbInfo=s,this._dbInfo.serializer=k,this._dbInfo.keyPrefix=v,this._dbInfo.mStore=g,Promise.resolve()}function h(a){var s=this,v=this.ready().then(function(){s._dbInfo.mStore.clear()});return B(v,a),v}function N(a,s){var v=Z.apply(this,arguments),g=v.promise,b=v.callback,w=g.then(function(T){se.resolve(T).drop()});return B(w,b),g}function S(a,s){var v=this;a=F(a);var g=this.ready().then(function(){var b=v._dbInfo.mStore.get(a);return b==null?null:v._dbInfo.serializer.deserialize(b)});return B(g,s),g}function O(a,s){var v=this,g=this.ready().then(function(){for(var b=v._dbInfo.mStore,w=b.keys(),T=0;T<w.length;T++){var G=b.get(w[T]);if(G&&(G=v._dbInfo.serializer.deserialize(G)),G=a(G,w[T],T+1),G!==void 0)return G}});return B(g,s),g}function V(a,s){var v=this,g=this.ready().then(function(){var b;try{b=v._dbInfo.mStore.key(a),b===void 0&&(b=null)}catch{b=null}return b});return B(g,s),g}function j(a){var s=this,v=this.ready().then(function(){return s._dbInfo.mStore.keys()});return B(v,a),v}function Q(a){var s=this.keys().then(function(v){return v.length});return B(s,a),s}function J(a,s){var v=this;a=F(a);var g=this.ready().then(function(){v._dbInfo.mStore.rm(a)});return B(g,s),g}function ee(a,s,v){var g=this;a=F(a);var b=this.ready().then(function(){s===void 0&&(s=null);var w=s;return new Promise(function(T,G){g._dbInfo.serializer.serialize(s,function(ce,ue){if(ue)G(ue);else try{g._dbInfo.mStore.set(a,ce),T(w)}catch(ve){G(ve)}})})});return B(b,v),b}var fe=!0;p._support=fe,p._driver=E,p._initStorage=te,p.clear=h,p.dropInstance=N,p.getItem=S,p.iterate=O,p.key=V,p.keys=j,p.length=Q,p.removeItem=J,p.setItem=ee,Object.defineProperty(p,"__esModule",{value:!0})})});var re={};it(re,{Magic:()=>ct});module.exports=at(re);var Ie=require("@magic-sdk/provider"),Ee=rr(nr()),Le=rr(ir());var oe=require("@magic-sdk/provider");var ft={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"};function ut(p){for(let[E,I]of Object.entries(ft))p.style[E]=I}function st(p){let E=[].slice.call(document.querySelectorAll(".magic-iframe"));return Boolean(E.find(I=>I.src.includes(p)))}var we=class extends oe.ViewController{constructor(){super(...arguments);this.activeElement=null}init(){this.test="hello",this.iframe=new Promise(I=>{let L=()=>{if(st(encodeURIComponent(this.parameters)))(0,oe.createDuplicateIframeWarning)().log();else{let D=document.createElement("iframe");D.classList.add("magic-iframe"),D.dataset.magicIframeLabel=(0,oe.createURL)(this.endpoint).host,D.title="Secure Modal",D.src=(0,oe.createURL)(`/send?params=${encodeURIComponent(this.parameters)}`,this.endpoint).href,ut(D),document.body.appendChild(D),I(D)}};["loaded","interactive","complete"].includes(document.readyState)?L():window.addEventListener("load",L,!1)}),window.addEventListener("message",I=>{var L;if(I.origin===this.endpoint&&I.data&&I.data.msgType&&this.messageHandlers.size){I.data.response=(L=I.data.response)!=null?L:{};for(let D of this.messageHandlers.values())D(I)}})}showOverlay(){return de(this,null,function*(){let I=yield this.iframe;I.style.display="block",this.activeElement=document.activeElement,I.focus()})}hideOverlay(){return de(this,null,function*(){var L;let I=yield this.iframe;I.style.display="none",(L=this.activeElement)!=null&&L.focus&&this.activeElement.focus(),this.activeElement=null})}_post(I){return de(this,null,function*(){let L=yield this.iframe;if(L&&L.contentWindow)L.contentWindow.postMessage(I,this.endpoint);else throw(0,oe.createModalNotReadyError)()})}};ne(re,require("@magic-sdk/commons"),module.exports);var ct=(0,Ie.createSDK)(Ie.SDKBase,{platform:"web",sdkName:"magic-sdk",version:"13.3.0",defaultEndpoint:"https://auth.magic.link/",ViewController:we,configureStorage:()=>de(void 0,null,function*(){let p=Ee.default.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return yield p.defineDriver(Le),yield p.setDriver([Ee.default.INDEXEDDB,Ee.default.LOCALSTORAGE,Le._driver]),p})});
1
+ "use strict";var et=Object.create;var be=Object.defineProperty;var rt=Object.getOwnPropertyDescriptor;var tt=Object.getOwnPropertyNames;var nt=Object.getPrototypeOf,ot=Object.prototype.hasOwnProperty;var er=(p,E)=>()=>(E||p((E={exports:{}}).exports,E),E.exports),it=(p,E)=>{for(var I in E)be(p,I,{get:E[I],enumerable:!0})},ge=(p,E,I,L)=>{if(E&&typeof E=="object"||typeof E=="function")for(let D of tt(E))!ot.call(p,D)&&D!==I&&be(p,D,{get:()=>E[D],enumerable:!(L=rt(E,D))||L.enumerable});return p},ne=(p,E,I)=>(ge(p,E,"default"),I&&ge(I,E,"default")),rr=(p,E,I)=>(I=p!=null?et(nt(p)):{},ge(E||!p||!p.__esModule?be(I,"default",{value:p,enumerable:!0}):I,p)),at=p=>ge(be({},"__esModule",{value:!0}),p);var de=(p,E,I)=>new Promise((L,D)=>{var X=A=>{try{Y(I.next(A))}catch(M){D(M)}},P=A=>{try{Y(I.throw(A))}catch(M){D(M)}},Y=A=>A.done?L(A.value):Promise.resolve(A.value).then(X,P);Y((I=I.apply(p,E)).next())});var nr=er((tr,Ce)=>{(function(p){if(typeof tr=="object"&&typeof Ce<"u")Ce.exports=p();else if(typeof define=="function"&&define.amd)define([],p);else{var E;typeof window<"u"?E=window:typeof global<"u"?E=global:typeof self<"u"?E=self:E=this,E.localforage=p()}})(function(){var p,E,I;return function L(D,X,P){function Y(H,$){if(!X[H]){if(!D[H]){var m=typeof require=="function"&&require;if(!$&&m)return m(H,!0);if(A)return A(H,!0);var _=new Error("Cannot find module '"+H+"'");throw _.code="MODULE_NOT_FOUND",_}var B=X[H]={exports:{}};D[H][0].call(B.exports,function(z){var Z=D[H][1][z];return Y(Z||z)},B,B.exports,L,D,X,P)}return X[H].exports}for(var A=typeof require=="function"&&require,M=0;M<P.length;M++)Y(P[M]);return Y}({1:[function(L,D,X){(function(P){"use strict";var Y=P.MutationObserver||P.WebKitMutationObserver,A;if(Y){var M=0,H=new Y(z),$=P.document.createTextNode("");H.observe($,{characterData:!0}),A=function(){$.data=M=++M%2}}else if(!P.setImmediate&&typeof P.MessageChannel<"u"){var m=new P.MessageChannel;m.port1.onmessage=z,A=function(){m.port2.postMessage(0)}}else"document"in P&&"onreadystatechange"in P.document.createElement("script")?A=function(){var F=P.document.createElement("script");F.onreadystatechange=function(){z(),F.onreadystatechange=null,F.parentNode.removeChild(F),F=null},P.document.documentElement.appendChild(F)}:A=function(){setTimeout(z,0)};var _,B=[];function z(){_=!0;for(var F,k,U=B.length;U;){for(k=B,B=[],F=-1;++F<U;)k[F]();U=B.length}_=!1}D.exports=Z;function Z(F){B.push(F)===1&&!_&&A()}}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{}],2:[function(L,D,X){"use strict";var P=L(1);function Y(){}var A={},M=["REJECTED"],H=["FULFILLED"],$=["PENDING"];D.exports=m;function m(h){if(typeof h!="function")throw new TypeError("resolver must be a function");this.state=$,this.queue=[],this.outcome=void 0,h!==Y&&Z(this,h)}m.prototype.catch=function(h){return this.then(null,h)},m.prototype.then=function(h,N){if(typeof h!="function"&&this.state===H||typeof N!="function"&&this.state===M)return this;var S=new this.constructor(Y);if(this.state!==$){var O=this.state===H?h:N;B(S,O,this.outcome)}else this.queue.push(new _(S,h,N));return S};function _(h,N,S){this.promise=h,typeof N=="function"&&(this.onFulfilled=N,this.callFulfilled=this.otherCallFulfilled),typeof S=="function"&&(this.onRejected=S,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(h){A.resolve(this.promise,h)},_.prototype.otherCallFulfilled=function(h){B(this.promise,this.onFulfilled,h)},_.prototype.callRejected=function(h){A.reject(this.promise,h)},_.prototype.otherCallRejected=function(h){B(this.promise,this.onRejected,h)};function B(h,N,S){P(function(){var O;try{O=N(S)}catch(V){return A.reject(h,V)}O===h?A.reject(h,new TypeError("Cannot resolve promise with itself")):A.resolve(h,O)})}A.resolve=function(h,N){var S=F(z,N);if(S.status==="error")return A.reject(h,S.value);var O=S.value;if(O)Z(h,O);else{h.state=H,h.outcome=N;for(var V=-1,j=h.queue.length;++V<j;)h.queue[V].callFulfilled(N)}return h},A.reject=function(h,N){h.state=M,h.outcome=N;for(var S=-1,O=h.queue.length;++S<O;)h.queue[S].callRejected(N);return h};function z(h){var N=h&&h.then;if(h&&(typeof h=="object"||typeof h=="function")&&typeof N=="function")return function(){N.apply(h,arguments)}}function Z(h,N){var S=!1;function O(J){S||(S=!0,A.reject(h,J))}function V(J){S||(S=!0,A.resolve(h,J))}function j(){N(V,O)}var Q=F(j);Q.status==="error"&&O(Q.value)}function F(h,N){var S={};try{S.value=h(N),S.status="success"}catch(O){S.status="error",S.value=O}return S}m.resolve=k;function k(h){return h instanceof this?h:A.resolve(new this(Y),h)}m.reject=U;function U(h){var N=new this(Y);return A.reject(N,h)}m.all=se;function se(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var S=h.length,O=!1;if(!S)return this.resolve([]);for(var V=new Array(S),j=0,Q=-1,J=new this(Y);++Q<S;)ee(h[Q],Q);return J;function ee(fe,a){N.resolve(fe).then(s,function(v){O||(O=!0,A.reject(J,v))});function s(v){V[a]=v,++j===S&&!O&&(O=!0,A.resolve(J,V))}}}m.race=te;function te(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var S=h.length,O=!1;if(!S)return this.resolve([]);for(var V=-1,j=new this(Y);++V<S;)Q(h[V]);return j;function Q(J){N.resolve(J).then(function(ee){O||(O=!0,A.resolve(j,ee))},function(ee){O||(O=!0,A.reject(j,ee))})}}},{1:1}],3:[function(L,D,X){(function(P){"use strict";typeof P.Promise!="function"&&(P.Promise=L(2))}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{2:2}],4:[function(L,D,X){"use strict";var P=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function Y(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function A(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var M=A();function H(){try{if(!M||!M.open)return!1;var e=typeof openDatabase<"u"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t=typeof fetch=="function"&&fetch.toString().indexOf("[native code")!==-1;return(!e||t)&&typeof indexedDB<"u"&&typeof IDBKeyRange<"u"}catch{return!1}}function $(e,t){e=e||[],t=t||{};try{return new Blob(e,t)}catch(n){if(n.name!=="TypeError")throw n;for(var r=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,o=new r,i=0;i<e.length;i+=1)o.append(e[i]);return o.getBlob(t.type)}}typeof Promise>"u"&&L(3);var m=Promise;function _(e,t){t&&e.then(function(r){t(null,r)},function(r){t(r)})}function B(e,t,r){typeof t=="function"&&e.then(t),typeof r=="function"&&e.catch(r)}function z(e){return typeof e!="string"&&(console.warn(e+" used as a key, but it is not a string."),e=String(e)),e}function Z(){if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}var F="local-forage-detect-blob-support",k=void 0,U={},se=Object.prototype.toString,te="readonly",h="readwrite";function N(e){for(var t=e.length,r=new ArrayBuffer(t),o=new Uint8Array(r),i=0;i<t;i++)o[i]=e.charCodeAt(i);return r}function S(e){return new m(function(t){var r=e.transaction(F,h),o=$([""]);r.objectStore(F).put(o,"key"),r.onabort=function(i){i.preventDefault(),i.stopPropagation(),t(!1)},r.oncomplete=function(){var i=navigator.userAgent.match(/Chrome\/(\d+)/),n=navigator.userAgent.match(/Edge\//);t(n||!i||parseInt(i[1],10)>=43)}}).catch(function(){return!1})}function O(e){return typeof k=="boolean"?m.resolve(k):S(e).then(function(t){return k=t,k})}function V(e){var t=U[e.name],r={};r.promise=new m(function(o,i){r.resolve=o,r.reject=i}),t.deferredOperations.push(r),t.dbReady?t.dbReady=t.dbReady.then(function(){return r.promise}):t.dbReady=r.promise}function j(e){var t=U[e.name],r=t.deferredOperations.pop();if(r)return r.resolve(),r.promise}function Q(e,t){var r=U[e.name],o=r.deferredOperations.pop();if(o)return o.reject(t),o.promise}function J(e,t){return new m(function(r,o){if(U[e.name]=U[e.name]||G(),e.db)if(t)V(e),e.db.close();else return r(e.db);var i=[e.name];t&&i.push(e.version);var n=M.open.apply(M,i);t&&(n.onupgradeneeded=function(f){var u=n.result;try{u.createObjectStore(e.storeName),f.oldVersion<=1&&u.createObjectStore(F)}catch(c){if(c.name==="ConstraintError")console.warn('The database "'+e.name+'" has been upgraded from version '+f.oldVersion+" to version "+f.newVersion+', but the storage "'+e.storeName+'" already exists.');else throw c}}),n.onerror=function(f){f.preventDefault(),o(n.error)},n.onsuccess=function(){var f=n.result;f.onversionchange=function(u){u.target.close()},r(f),j(e)}})}function ee(e){return J(e,!1)}function fe(e){return J(e,!0)}function a(e,t){if(!e.db)return!0;var r=!e.db.objectStoreNames.contains(e.storeName),o=e.version<e.db.version,i=e.version>e.db.version;if(o&&(e.version!==t&&console.warn('The database "'+e.name+`" can't be downgraded from version `+e.db.version+" to version "+e.version+"."),e.version=e.db.version),i||r){if(r){var n=e.db.version+1;n>e.version&&(e.version=n)}return!0}return!1}function s(e){return new m(function(t,r){var o=new FileReader;o.onerror=r,o.onloadend=function(i){var n=btoa(i.target.result||"");t({__local_forage_encoded_blob:!0,data:n,type:e.type})},o.readAsBinaryString(e)})}function v(e){var t=N(atob(e.data));return $([t],{type:e.type})}function g(e){return e&&e.__local_forage_encoded_blob}function b(e){var t=this,r=t._initReady().then(function(){var o=U[t._dbInfo.name];if(o&&o.dbReady)return o.dbReady});return B(r,e,e),r}function w(e){V(e);for(var t=U[e.name],r=t.forages,o=0;o<r.length;o++){var i=r[o];i._dbInfo.db&&(i._dbInfo.db.close(),i._dbInfo.db=null)}return e.db=null,ee(e).then(function(n){return e.db=n,a(e)?fe(e):n}).then(function(n){e.db=t.db=n;for(var f=0;f<r.length;f++)r[f]._dbInfo.db=n}).catch(function(n){throw Q(e,n),n})}function T(e,t,r,o){o===void 0&&(o=1);try{var i=e.db.transaction(e.storeName,t);r(null,i)}catch(n){if(o>0&&(!e.db||n.name==="InvalidStateError"||n.name==="NotFoundError"))return m.resolve().then(function(){if(!e.db||n.name==="NotFoundError"&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),fe(e)}).then(function(){return w(e).then(function(){T(e,t,r,o-1)})}).catch(r);r(n)}}function G(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function ce(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=e[o];var i=U[r.name];i||(i=G(),U[r.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=b);var n=[];function f(){return m.resolve()}for(var u=0;u<i.forages.length;u++){var c=i.forages[u];c!==t&&n.push(c._initReady().catch(f))}var l=i.forages.slice(0);return m.all(n).then(function(){return r.db=i.db,ee(r)}).then(function(d){return r.db=d,a(r,t._defaultConfig.version)?fe(r):d}).then(function(d){r.db=i.db=d,t._dbInfo=r;for(var y=0;y<l.length;y++){var R=l[y];R!==t&&(R._dbInfo.db=r.db,R._dbInfo.version=r.version)}})}function ue(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,te,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.get(e);l.onsuccess=function(){var d=l.result;d===void 0&&(d=null),g(d)&&(d=v(d)),i(d)},l.onerror=function(){n(l.error)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ve(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,te,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.openCursor(),d=1;l.onsuccess=function(){var y=l.result;if(y){var R=y.value;g(R)&&(R=v(R));var x=e(R,y.key,d++);x!==void 0?i(x):y.continue()}else i()},l.onerror=function(){n(l.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function ar(e,t,r){var o=this;e=z(e);var i=new m(function(n,f){var u;o.ready().then(function(){return u=o._dbInfo,se.call(t)==="[object Blob]"?O(u.db).then(function(c){return c?t:s(t)}):t}).then(function(c){T(o._dbInfo,h,function(l,d){if(l)return f(l);try{var y=d.objectStore(o._dbInfo.storeName);c===null&&(c=void 0);var R=y.put(c,e);d.oncomplete=function(){c===void 0&&(c=null),n(c)},d.onabort=d.onerror=function(){var x=R.error?R.error:R.transaction.error;f(x)}}catch(x){f(x)}})}).catch(f)});return _(i,r),i}function fr(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,h,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.delete(e);u.oncomplete=function(){i()},u.onerror=function(){n(l.error)},u.onabort=function(){var d=l.error?l.error:l.transaction.error;n(d)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ur(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,h,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.clear();f.oncomplete=function(){o()},f.onabort=f.onerror=function(){var l=c.error?c.error:c.transaction.error;i(l)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function sr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,te,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.count();c.onsuccess=function(){o(c.result)},c.onerror=function(){i(c.error)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function cr(e,t){var r=this,o=new m(function(i,n){if(e<0){i(null);return}r.ready().then(function(){T(r._dbInfo,te,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=!1,d=c.openKeyCursor();d.onsuccess=function(){var y=d.result;if(!y){i(null);return}e===0||l?i(y.key):(l=!0,y.advance(e))},d.onerror=function(){n(d.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function lr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,te,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.openKeyCursor(),l=[];c.onsuccess=function(){var d=c.result;if(!d){o(l);return}l.push(d.key),d.continue()},c.onerror=function(){i(c.error)}}catch(d){i(d)}})}).catch(i)});return _(r,e),r}function dr(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;if(!e.name)i=m.reject("Invalid arguments");else{var n=e.name===r.name&&o._dbInfo.db,f=n?m.resolve(o._dbInfo.db):ee(e).then(function(u){var c=U[e.name],l=c.forages;c.db=u;for(var d=0;d<l.length;d++)l[d]._dbInfo.db=u;return u});e.storeName?i=f.then(function(u){if(!!u.objectStoreNames.contains(e.storeName)){var c=u.version+1;V(e);var l=U[e.name],d=l.forages;u.close();for(var y=0;y<d.length;y++){var R=d[y];R._dbInfo.db=null,R._dbInfo.version=c}var x=new m(function(C,K){var W=M.open(e.name,c);W.onerror=function(q){var me=W.result;me.close(),K(q)},W.onupgradeneeded=function(){var q=W.result;q.deleteObjectStore(e.storeName)},W.onsuccess=function(){var q=W.result;q.close(),C(q)}});return x.then(function(C){l.db=C;for(var K=0;K<d.length;K++){var W=d[K];W._dbInfo.db=C,j(W._dbInfo)}}).catch(function(C){throw(Q(e,C)||m.resolve()).catch(function(){}),C})}}):i=f.then(function(u){V(e);var c=U[e.name],l=c.forages;u.close();for(var d=0;d<l.length;d++){var y=l[d];y._dbInfo.db=null}var R=new m(function(x,C){var K=M.deleteDatabase(e.name);K.onerror=function(){var W=K.result;W&&W.close(),C(K.error)},K.onblocked=function(){console.warn('dropInstance blocked for database "'+e.name+'" until all open connections are closed')},K.onsuccess=function(){var W=K.result;W&&W.close(),x(W)}});return R.then(function(x){c.db=x;for(var C=0;C<l.length;C++){var K=l[C];j(K._dbInfo)}}).catch(function(x){throw(Q(e,x)||m.resolve()).catch(function(){}),x})})}return _(i,t),i}var vr={_driver:"asyncStorage",_initStorage:ce,_support:H(),iterate:ve,getItem:ue,setItem:ar,removeItem:fr,clear:ur,length:sr,key:cr,keys:lr,dropInstance:dr};function hr(){return typeof openDatabase=="function"}var ie="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",mr="~~local_forage_type~",Pe=/^~~local_forage_type~([^~]+)~/,ye="__lfsc__:",Se=ye.length,Ae="arbf",Re="blob",Me="si08",Fe="ui08",Ue="uic8",Ye="si16",ze="si32",We="ur16",Ke="ui32",He="fl32",Ve="fl64",Ge=Se+Ae.length,je=Object.prototype.toString;function Xe(e){var t=e.length*.75,r=e.length,o,i=0,n,f,u,c;e[e.length-1]==="="&&(t--,e[e.length-2]==="="&&t--);var l=new ArrayBuffer(t),d=new Uint8Array(l);for(o=0;o<r;o+=4)n=ie.indexOf(e[o]),f=ie.indexOf(e[o+1]),u=ie.indexOf(e[o+2]),c=ie.indexOf(e[o+3]),d[i++]=n<<2|f>>4,d[i++]=(f&15)<<4|u>>2,d[i++]=(u&3)<<6|c&63;return l}function De(e){var t=new Uint8Array(e),r="",o;for(o=0;o<t.length;o+=3)r+=ie[t[o]>>2],r+=ie[(t[o]&3)<<4|t[o+1]>>4],r+=ie[(t[o+1]&15)<<2|t[o+2]>>6],r+=ie[t[o+2]&63];return t.length%3===2?r=r.substring(0,r.length-1)+"=":t.length%3===1&&(r=r.substring(0,r.length-2)+"=="),r}function yr(e,t){var r="";if(e&&(r=je.call(e)),e&&(r==="[object ArrayBuffer]"||e.buffer&&je.call(e.buffer)==="[object ArrayBuffer]")){var o,i=ye;e instanceof ArrayBuffer?(o=e,i+=Ae):(o=e.buffer,r==="[object Int8Array]"?i+=Me:r==="[object Uint8Array]"?i+=Fe:r==="[object Uint8ClampedArray]"?i+=Ue:r==="[object Int16Array]"?i+=Ye:r==="[object Uint16Array]"?i+=We:r==="[object Int32Array]"?i+=ze:r==="[object Uint32Array]"?i+=Ke:r==="[object Float32Array]"?i+=He:r==="[object Float64Array]"?i+=Ve:t(new Error("Failed to get type for BinaryArray"))),t(i+De(o))}else if(r==="[object Blob]"){var n=new FileReader;n.onload=function(){var f=mr+e.type+"~"+De(this.result);t(ye+Re+f)},n.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(f){console.error("Couldn't convert value into a JSON string: ",e),t(null,f)}}function pr(e){if(e.substring(0,Se)!==ye)return JSON.parse(e);var t=e.substring(Ge),r=e.substring(Se,Ge),o;if(r===Re&&Pe.test(t)){var i=t.match(Pe);o=i[1],t=t.substring(i[0].length)}var n=Xe(t);switch(r){case Ae:return n;case Re:return $([n],{type:o});case Me:return new Int8Array(n);case Fe:return new Uint8Array(n);case Ue:return new Uint8ClampedArray(n);case Ye:return new Int16Array(n);case We:return new Uint16Array(n);case ze:return new Int32Array(n);case Ke:return new Uint32Array(n);case He:return new Float32Array(n);case Ve:return new Float64Array(n);default:throw new Error("Unkown type: "+r)}}var Ne={serialize:yr,deserialize:pr,stringToBuffer:Xe,bufferToString:De};function Qe(e,t,r,o){e.executeSql("CREATE TABLE IF NOT EXISTS "+t.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],r,o)}function gr(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=typeof e[o]!="string"?e[o].toString():e[o];var i=new m(function(n,f){try{r.db=openDatabase(r.name,String(r.version),r.description,r.size)}catch(u){return f(u)}r.db.transaction(function(u){Qe(u,r,function(){t._dbInfo=r,n()},function(c,l){f(l)})},f)});return r.serializer=Ne,i}function ae(e,t,r,o,i,n){e.executeSql(r,o,i,function(f,u){u.code===u.SYNTAX_ERR?f.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[t.storeName],function(c,l){l.rows.length?n(c,u):Qe(c,t,function(){c.executeSql(r,o,i,n)},n)},n):n(f,u)},n)}function br(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ae(u,f,"SELECT * FROM "+f.storeName+" WHERE key = ? LIMIT 1",[e],function(c,l){var d=l.rows.length?l.rows.item(0).value:null;d&&(d=f.serializer.deserialize(d)),i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function _r(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ae(u,f,"SELECT * FROM "+f.storeName,[],function(c,l){for(var d=l.rows,y=d.length,R=0;R<y;R++){var x=d.item(R),C=x.value;if(C&&(C=f.serializer.deserialize(C)),C=e(C,x.key,R+1),C!==void 0){i(C);return}}i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Je(e,t,r,o){var i=this;e=z(e);var n=new m(function(f,u){i.ready().then(function(){t===void 0&&(t=null);var c=t,l=i._dbInfo;l.serializer.serialize(t,function(d,y){y?u(y):l.db.transaction(function(R){ae(R,l,"INSERT OR REPLACE INTO "+l.storeName+" (key, value) VALUES (?, ?)",[e,d],function(){f(c)},function(x,C){u(C)})},function(R){if(R.code===R.QUOTA_ERR){if(o>0){f(Je.apply(i,[e,c,r,o-1]));return}u(R)}})})}).catch(u)});return _(n,r),n}function wr(e,t,r){return Je.apply(this,[e,t,r,1])}function Er(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ae(u,f,"DELETE FROM "+f.storeName+" WHERE key = ?",[e],function(){i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ae(f,n,"DELETE FROM "+n.storeName,[],function(){o()},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Sr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ae(f,n,"SELECT COUNT(key) as c FROM "+n.storeName,[],function(u,c){var l=c.rows.item(0).c;o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Ar(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ae(u,f,"SELECT key FROM "+f.storeName+" WHERE id = ? LIMIT 1",[e+1],function(c,l){var d=l.rows.length?l.rows.item(0).key:null;i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Rr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ae(f,n,"SELECT key FROM "+n.storeName,[],function(u,c){for(var l=[],d=0;d<c.rows.length;d++)l.push(c.rows.item(d).key);o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Dr(e){return new m(function(t,r){e.transaction(function(o){o.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(i,n){for(var f=[],u=0;u<n.rows.length;u++)f.push(n.rows.item(u).name);t({db:e,storeNames:f})},function(i,n){r(n)})},function(o){r(o)})})}function Nr(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;return e.name?i=new m(function(n){var f;e.name===r.name?f=o._dbInfo.db:f=openDatabase(e.name,"","",0),e.storeName?n({db:f,storeNames:[e.storeName]}):n(Dr(f))}).then(function(n){return new m(function(f,u){n.db.transaction(function(c){function l(x){return new m(function(C,K){c.executeSql("DROP TABLE IF EXISTS "+x,[],function(){C()},function(W,q){K(q)})})}for(var d=[],y=0,R=n.storeNames.length;y<R;y++)d.push(l(n.storeNames[y]));m.all(d).then(function(){f()}).catch(function(x){u(x)})},function(c){u(c)})})}):i=m.reject("Invalid arguments"),_(i,t),i}var Tr={_driver:"webSQLStorage",_initStorage:gr,_support:hr(),iterate:_r,getItem:br,setItem:wr,removeItem:Er,clear:Ir,length:Sr,key:Ar,keys:Rr,dropInstance:Nr};function Br(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function $e(e,t){var r=e.name+"/";return e.storeName!==t.storeName&&(r+=e.storeName+"/"),r}function xr(){var e="_localforage_support_test";try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch{return!0}}function Or(){return!xr()||localStorage.length>0}function Cr(e){var t=this,r={};if(e)for(var o in e)r[o]=e[o];return r.keyPrefix=$e(e,t._defaultConfig),Or()?(t._dbInfo=r,r.serializer=Ne,m.resolve()):m.reject()}function Lr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo.keyPrefix,i=localStorage.length-1;i>=0;i--){var n=localStorage.key(i);n.indexOf(o)===0&&localStorage.removeItem(n)}});return _(r,e),r}function Pr(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo,n=localStorage.getItem(i.keyPrefix+e);return n&&(n=i.serializer.deserialize(n)),n});return _(o,t),o}function Mr(e,t){var r=this,o=r.ready().then(function(){for(var i=r._dbInfo,n=i.keyPrefix,f=n.length,u=localStorage.length,c=1,l=0;l<u;l++){var d=localStorage.key(l);if(d.indexOf(n)===0){var y=localStorage.getItem(d);if(y&&(y=i.serializer.deserialize(y)),y=e(y,d.substring(f),c++),y!==void 0)return y}}});return _(o,t),o}function Fr(e,t){var r=this,o=r.ready().then(function(){var i=r._dbInfo,n;try{n=localStorage.key(e)}catch{n=null}return n&&(n=n.substring(i.keyPrefix.length)),n});return _(o,t),o}function Ur(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo,i=localStorage.length,n=[],f=0;f<i;f++){var u=localStorage.key(f);u.indexOf(o.keyPrefix)===0&&n.push(u.substring(o.keyPrefix.length))}return n});return _(r,e),r}function Yr(e){var t=this,r=t.keys().then(function(o){return o.length});return _(r,e),r}function zr(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo;localStorage.removeItem(i.keyPrefix+e)});return _(o,t),o}function Wr(e,t,r){var o=this;e=z(e);var i=o.ready().then(function(){t===void 0&&(t=null);var n=t;return new m(function(f,u){var c=o._dbInfo;c.serializer.serialize(t,function(l,d){if(d)u(d);else try{localStorage.setItem(c.keyPrefix+e,l),f(n)}catch(y){(y.name==="QuotaExceededError"||y.name==="NS_ERROR_DOM_QUOTA_REACHED")&&u(y),u(y)}})})});return _(i,r),i}function Kr(e,t){if(t=Z.apply(this,arguments),e=typeof e!="function"&&e||{},!e.name){var r=this.config();e.name=e.name||r.name,e.storeName=e.storeName||r.storeName}var o=this,i;return e.name?i=new m(function(n){e.storeName?n($e(e,o._defaultConfig)):n(e.name+"/")}).then(function(n){for(var f=localStorage.length-1;f>=0;f--){var u=localStorage.key(f);u.indexOf(n)===0&&localStorage.removeItem(u)}}):i=m.reject("Invalid arguments"),_(i,t),i}var Hr={_driver:"localStorageWrapper",_initStorage:Cr,_support:Br(),iterate:Mr,getItem:Pr,setItem:Wr,removeItem:zr,clear:Lr,length:Yr,key:Fr,keys:Ur,dropInstance:Kr},Vr=function(t,r){return t===r||typeof t=="number"&&typeof r=="number"&&isNaN(t)&&isNaN(r)},Gr=function(t,r){for(var o=t.length,i=0;i<o;){if(Vr(t[i],r))return!0;i++}return!1},Ze=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"},he={},qe={},le={INDEXEDDB:vr,WEBSQL:Tr,LOCALSTORAGE:Hr},jr=[le.INDEXEDDB._driver,le.WEBSQL._driver,le.LOCALSTORAGE._driver],pe=["dropInstance"],Te=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(pe),Xr={description:"",driver:jr.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Qr(e,t){e[t]=function(){var r=arguments;return e.ready().then(function(){return e[t].apply(e,r)})}}function Be(){for(var e=1;e<arguments.length;e++){var t=arguments[e];if(t)for(var r in t)t.hasOwnProperty(r)&&(Ze(t[r])?arguments[0][r]=t[r].slice():arguments[0][r]=t[r])}return arguments[0]}var Jr=function(){function e(t){Y(this,e);for(var r in le)if(le.hasOwnProperty(r)){var o=le[r],i=o._driver;this[r]=i,he[i]||this.defineDriver(o)}this._defaultConfig=Be({},Xr),this._config=Be({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return e.prototype.config=function(r){if((typeof r>"u"?"undefined":P(r))==="object"){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var o in r){if(o==="storeName"&&(r[o]=r[o].replace(/\W/g,"_")),o==="version"&&typeof r[o]!="number")return new Error("Database version must be a number.");this._config[o]=r[o]}return"driver"in r&&r.driver?this.setDriver(this._config.driver):!0}else return typeof r=="string"?this._config[r]:this._config},e.prototype.defineDriver=function(r,o,i){var n=new m(function(f,u){try{var c=r._driver,l=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!r._driver){u(l);return}for(var d=Te.concat("_initStorage"),y=0,R=d.length;y<R;y++){var x=d[y],C=!Gr(pe,x);if((C||r[x])&&typeof r[x]!="function"){u(l);return}}var K=function(){for(var me=function(qr){return function(){var kr=new Error("Method "+qr+" is not implemented by the current driver"),ke=m.reject(kr);return _(ke,arguments[arguments.length-1]),ke}},xe=0,Zr=pe.length;xe<Zr;xe++){var Oe=pe[xe];r[Oe]||(r[Oe]=me(Oe))}};K();var W=function(me){he[c]&&console.info("Redefining LocalForage driver: "+c),he[c]=r,qe[c]=me,f()};"_support"in r?r._support&&typeof r._support=="function"?r._support().then(W,u):W(!!r._support):W(!0)}catch(q){u(q)}});return B(n,o,i),n},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(r,o,i){var n=he[r]?m.resolve(he[r]):m.reject(new Error("Driver not found."));return B(n,o,i),n},e.prototype.getSerializer=function(r){var o=m.resolve(Ne);return B(o,r),o},e.prototype.ready=function(r){var o=this,i=o._driverSet.then(function(){return o._ready===null&&(o._ready=o._initDriver()),o._ready});return B(i,r,r),i},e.prototype.setDriver=function(r,o,i){var n=this;Ze(r)||(r=[r]);var f=this._getSupportedDrivers(r);function u(){n._config.driver=n.driver()}function c(y){return n._extend(y),u(),n._ready=n._initStorage(n._config),n._ready}function l(y){return function(){var R=0;function x(){for(;R<y.length;){var C=y[R];return R++,n._dbInfo=null,n._ready=null,n.getDriver(C).then(c).catch(x)}u();var K=new Error("No available storage method found.");return n._driverSet=m.reject(K),n._driverSet}return x()}}var d=this._driverSet!==null?this._driverSet.catch(function(){return m.resolve()}):m.resolve();return this._driverSet=d.then(function(){var y=f[0];return n._dbInfo=null,n._ready=null,n.getDriver(y).then(function(R){n._driver=R._driver,u(),n._wrapLibraryMethodsWithReady(),n._initDriver=l(f)})}).catch(function(){u();var y=new Error("No available storage method found.");return n._driverSet=m.reject(y),n._driverSet}),B(this._driverSet,o,i),this._driverSet},e.prototype.supports=function(r){return!!qe[r]},e.prototype._extend=function(r){Be(this,r)},e.prototype._getSupportedDrivers=function(r){for(var o=[],i=0,n=r.length;i<n;i++){var f=r[i];this.supports(f)&&o.push(f)}return o},e.prototype._wrapLibraryMethodsWithReady=function(){for(var r=0,o=Te.length;r<o;r++)Qr(this,Te[r])},e.prototype.createInstance=function(r){return new e(r)},e}(),$r=new Jr;D.exports=$r},{3:3}]},{},[4])(4)})});var ir=er((_e,or)=>{(function(p,E){typeof _e=="object"&&typeof or<"u"?E(_e):typeof define=="function"&&define.amd?define("localforage-driver-memory",["exports"],E):E(p.LocalforageDriverMemory={})})(typeof self<"u"?self:_e,function(p){"use strict";var E="localforage-driver-memory";function I(a){var s=typeof Symbol=="function"&&a[Symbol.iterator],v=0;return s?s.call(a):{next:function(){return a&&v>=a.length&&(a=void 0),{value:a&&a[v++],done:!a}}}}function L(a,s){a=a||[],s=s||{};try{return new Blob(a,s)}catch(w){if(w.name!=="TypeError")throw w;for(var v=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,g=new v,b=0;b<a.length;b+=1)g.append(a[b]);return g.getBlob(s.type)}}var D=/^~~local_forage_type~([^~]+)~/,X=9,P=X+4,Y=Object.prototype.toString;function A(a){var s=a.length*.75,v=a.length;a[a.length-1]==="="&&(s--,a[a.length-2]==="="&&s--);for(var g=new ArrayBuffer(s),b=new Uint8Array(g),w=0,T=0;w<v;w+=4){var G="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w]),ce="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+1]),ue="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+2]),ve="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+3]);b[T++]=G<<2|ce>>4,b[T++]=(ce&15)<<4|ue>>2,b[T++]=(ue&3)<<6|ve&63}return g}function M(a){for(var s=new Uint8Array(a),v="",g=0;g<s.length;g+=3)v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[g]>>2],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[g]&3)<<4|s[g+1]>>4],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[g+1]&15)<<2|s[g+2]>>6],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[g+2]&63];return s.length%3===2?v=v.substring(0,v.length-1)+"=":s.length%3===1&&(v=v.substring(0,v.length-2)+"=="),v}function H(a,s){var v="";if(a&&(v=Y.call(a)),a&&(v==="[object ArrayBuffer]"||a.buffer&&Y.call(a.buffer)==="[object ArrayBuffer]")){var g=void 0,b="__lfsc__:";a instanceof ArrayBuffer?(g=a,b+="arbf"):(g=a.buffer,v==="[object Int8Array]"?b+="si08":v==="[object Uint8Array]"?b+="ui08":v==="[object Uint8ClampedArray]"?b+="uic8":v==="[object Int16Array]"?b+="si16":v==="[object Uint16Array]"?b+="ur16":v==="[object Int32Array]"?b+="si32":v==="[object Uint32Array]"?b+="ui32":v==="[object Float32Array]"?b+="fl32":v==="[object Float64Array]"?b+="fl64":s(new Error("Failed to get type for BinaryArray"))),s(b+M(g))}else if(v==="[object Blob]"){var w=new FileReader;w.onload=function(){var T="~~local_forage_type~"+a.type+"~"+M(this.result);s("__lfsc__:blob"+T)},w.readAsArrayBuffer(a)}else try{s(JSON.stringify(a))}catch(T){console.error("Couldn't convert value into a JSON string: ",a),s(null,T)}}function $(a){if(a.substring(0,X)!=="__lfsc__:")return JSON.parse(a);var s=a.substring(P),v=a.substring(X,P),g;if(v==="blob"&&D.test(s)){var b=s.match(D);g=b[1],s=s.substring(b[0].length)}var w=A(s);switch(v){case"arbf":return w;case"blob":return L([w],{type:g});case"si08":return new Int8Array(w);case"ui08":return new Uint8Array(w);case"uic8":return new Uint8ClampedArray(w);case"si16":return new Int16Array(w);case"ur16":return new Uint16Array(w);case"si32":return new Int32Array(w);case"ui32":return new Uint32Array(w);case"fl32":return new Float32Array(w);case"fl64":return new Float64Array(w);default:throw new Error("Unkown type: "+v)}}function m(a){var s,v;if(a===null||typeof a!="object"||"isActiveClone"in a)return a;var g=a instanceof Date?new Date(a):a.constructor();try{for(var b=I(Object.keys(a)),w=b.next();!w.done;w=b.next()){var T=w.value;Object.prototype.hasOwnProperty.call(a,T)&&(a.isActiveClone=null,g[T]=m(a[T]),delete a.isActiveClone)}}catch(G){s={error:G}}finally{try{w&&!w.done&&(v=b.return)&&v.call(b)}finally{if(s)throw s.error}}return g}function _(a,s){return(a.name||s.name)+"/"+(a.storeName||s.storeName)+"/"}function B(a,s){s&&a.then(function(v){s(null,v)},function(v){s(v)})}function z(){for(var a=[],s=0;s<arguments.length;s++)a[s]=arguments[s];if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}function Z(a,s){var v=this;if(s=z.apply(this,arguments),a=typeof a!="function"&&a||{},!a.name){var g=this.config();a.name=a.name||g.name,a.storeName=a.storeName||g.storeName}var b;return a.name?b=new Promise(function(w){a.storeName?w(_(a,v._defaultConfig)):w(a.name+"/")}):b=Promise.reject("Invalid arguments"),{promise:b,callback:s}}function F(a){return typeof a!="string"&&(console.warn(a+" used as a key, but it is not a string."),a=String(a)),a}var k={bufferToString:M,deserialize:$,serialize:H,stringToBuffer:A},U={},se=function(){function a(s){this.kp=s,this.data={}}return a.resolve=function(s){return U[s]||(U[s]=new a(s)),U[s]},a.prototype.clear=function(){this.data={}},a.prototype.drop=function(){this.clear(),delete U[this.kp]},a.prototype.get=function(s){return this.data[s]},a.prototype.key=function(s){return this.keys()[s]},a.prototype.keys=function(){return Object.keys(this.data)},a.prototype.rm=function(s){delete this.data[s]},a.prototype.set=function(s,v){this.data[s]=v},a}();function te(a){var s=a?m(a):{},v=_(s,this._defaultConfig),g=se.resolve(v);return this._dbInfo=s,this._dbInfo.serializer=k,this._dbInfo.keyPrefix=v,this._dbInfo.mStore=g,Promise.resolve()}function h(a){var s=this,v=this.ready().then(function(){s._dbInfo.mStore.clear()});return B(v,a),v}function N(a,s){var v=Z.apply(this,arguments),g=v.promise,b=v.callback,w=g.then(function(T){se.resolve(T).drop()});return B(w,b),g}function S(a,s){var v=this;a=F(a);var g=this.ready().then(function(){var b=v._dbInfo.mStore.get(a);return b==null?null:v._dbInfo.serializer.deserialize(b)});return B(g,s),g}function O(a,s){var v=this,g=this.ready().then(function(){for(var b=v._dbInfo.mStore,w=b.keys(),T=0;T<w.length;T++){var G=b.get(w[T]);if(G&&(G=v._dbInfo.serializer.deserialize(G)),G=a(G,w[T],T+1),G!==void 0)return G}});return B(g,s),g}function V(a,s){var v=this,g=this.ready().then(function(){var b;try{b=v._dbInfo.mStore.key(a),b===void 0&&(b=null)}catch{b=null}return b});return B(g,s),g}function j(a){var s=this,v=this.ready().then(function(){return s._dbInfo.mStore.keys()});return B(v,a),v}function Q(a){var s=this.keys().then(function(v){return v.length});return B(s,a),s}function J(a,s){var v=this;a=F(a);var g=this.ready().then(function(){v._dbInfo.mStore.rm(a)});return B(g,s),g}function ee(a,s,v){var g=this;a=F(a);var b=this.ready().then(function(){s===void 0&&(s=null);var w=s;return new Promise(function(T,G){g._dbInfo.serializer.serialize(s,function(ce,ue){if(ue)G(ue);else try{g._dbInfo.mStore.set(a,ce),T(w)}catch(ve){G(ve)}})})});return B(b,v),b}var fe=!0;p._support=fe,p._driver=E,p._initStorage=te,p.clear=h,p.dropInstance=N,p.getItem=S,p.iterate=O,p.key=V,p.keys=j,p.length=Q,p.removeItem=J,p.setItem=ee,Object.defineProperty(p,"__esModule",{value:!0})})});var re={};it(re,{Magic:()=>ct});module.exports=at(re);var Ie=require("@magic-sdk/provider"),Ee=rr(nr()),Le=rr(ir());var oe=require("@magic-sdk/provider");var ft={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"};function ut(p){for(let[E,I]of Object.entries(ft))p.style[E]=I}function st(p){let E=[].slice.call(document.querySelectorAll(".magic-iframe"));return Boolean(E.find(I=>I.src.includes(p)))}var we=class extends oe.ViewController{constructor(){super(...arguments);this.activeElement=null}init(){this.test="hello",this.iframe=new Promise(I=>{let L=()=>{if(st(encodeURIComponent(this.parameters)))(0,oe.createDuplicateIframeWarning)().log();else{let D=document.createElement("iframe");D.classList.add("magic-iframe"),D.dataset.magicIframeLabel=(0,oe.createURL)(this.endpoint).host,D.title="Secure Modal",D.src=(0,oe.createURL)(`/send?params=${encodeURIComponent(this.parameters)}`,this.endpoint).href,ut(D),document.body.appendChild(D),I(D)}};["loaded","interactive","complete"].includes(document.readyState)?L():window.addEventListener("load",L,!1)}),window.addEventListener("message",I=>{var L;if(I.origin===this.endpoint&&I.data&&I.data.msgType&&this.messageHandlers.size){I.data.response=(L=I.data.response)!=null?L:{};for(let D of this.messageHandlers.values())D(I)}})}showOverlay(){return de(this,null,function*(){let I=yield this.iframe;I.style.display="block",this.activeElement=document.activeElement,I.focus()})}hideOverlay(){return de(this,null,function*(){var L;let I=yield this.iframe;I.style.display="none",(L=this.activeElement)!=null&&L.focus&&this.activeElement.focus(),this.activeElement=null})}_post(I){return de(this,null,function*(){let L=yield this.iframe;if(L&&L.contentWindow)L.contentWindow.postMessage(I,this.endpoint);else throw(0,oe.createModalNotReadyError)()})}};ne(re,require("@magic-sdk/commons"),module.exports);var ct=(0,Ie.createSDK)(Ie.SDKBase,{platform:"web",sdkName:"magic-sdk",version:"13.3.1",defaultEndpoint:"https://auth.magic.link/",ViewController:we,configureStorage:()=>de(void 0,null,function*(){let p=Ee.default.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return yield p.defineDriver(Le),yield p.setDriver([Ee.default.INDEXEDDB,Ee.default.LOCALSTORAGE,Le._driver]),p})});
2
2
  //# sourceMappingURL=index.js.map
package/dist/es/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var Zr=Object.create;var Je=Object.defineProperty;var qr=Object.getOwnPropertyDescriptor;var kr=Object.getOwnPropertyNames;var et=Object.getPrototypeOf,rt=Object.prototype.hasOwnProperty;var ve=(b=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(b,{get:(A,R)=>(typeof require!="undefined"?require:A)[R]}):b)(function(b){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+b+'" is not supported')});var $e=(b,A)=>()=>(A||b((A={exports:{}}).exports,A),A.exports);var tt=(b,A,R,L)=>{if(A&&typeof A=="object"||typeof A=="function")for(let D of kr(A))!rt.call(b,D)&&D!==R&&Je(b,D,{get:()=>A[D],enumerable:!(L=qr(A,D))||L.enumerable});return b};var Ze=(b,A,R)=>(R=b!=null?Zr(et(b)):{},tt(A||!b||!b.__esModule?Je(R,"default",{value:b,enumerable:!0}):R,b));var se=(b,A,R)=>new Promise((L,D)=>{var X=I=>{try{Y(R.next(I))}catch(M){D(M)}},P=I=>{try{Y(R.throw(I))}catch(M){D(M)}},Y=I=>I.done?L(I.value):Promise.resolve(I.value).then(X,P);Y((R=R.apply(b,A)).next())});var ke=$e((qe,Ne)=>{(function(b){if(typeof qe=="object"&&typeof Ne<"u")Ne.exports=b();else if(typeof define=="function"&&define.amd)define([],b);else{var A;typeof window<"u"?A=window:typeof global<"u"?A=global:typeof self<"u"?A=self:A=this,A.localforage=b()}})(function(){var b,A,R;return function L(D,X,P){function Y(H,$){if(!X[H]){if(!D[H]){var m=typeof ve=="function"&&ve;if(!$&&m)return m(H,!0);if(I)return I(H,!0);var _=new Error("Cannot find module '"+H+"'");throw _.code="MODULE_NOT_FOUND",_}var B=X[H]={exports:{}};D[H][0].call(B.exports,function(z){var Z=D[H][1][z];return Y(Z||z)},B,B.exports,L,D,X,P)}return X[H].exports}for(var I=typeof ve=="function"&&ve,M=0;M<P.length;M++)Y(P[M]);return Y}({1:[function(L,D,X){(function(P){"use strict";var Y=P.MutationObserver||P.WebKitMutationObserver,I;if(Y){var M=0,H=new Y(z),$=P.document.createTextNode("");H.observe($,{characterData:!0}),I=function(){$.data=M=++M%2}}else if(!P.setImmediate&&typeof P.MessageChannel<"u"){var m=new P.MessageChannel;m.port1.onmessage=z,I=function(){m.port2.postMessage(0)}}else"document"in P&&"onreadystatechange"in P.document.createElement("script")?I=function(){var F=P.document.createElement("script");F.onreadystatechange=function(){z(),F.onreadystatechange=null,F.parentNode.removeChild(F),F=null},P.document.documentElement.appendChild(F)}:I=function(){setTimeout(z,0)};var _,B=[];function z(){_=!0;for(var F,k,U=B.length;U;){for(k=B,B=[],F=-1;++F<U;)k[F]();U=B.length}_=!1}D.exports=Z;function Z(F){B.push(F)===1&&!_&&I()}}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{}],2:[function(L,D,X){"use strict";var P=L(1);function Y(){}var I={},M=["REJECTED"],H=["FULFILLED"],$=["PENDING"];D.exports=m;function m(h){if(typeof h!="function")throw new TypeError("resolver must be a function");this.state=$,this.queue=[],this.outcome=void 0,h!==Y&&Z(this,h)}m.prototype.catch=function(h){return this.then(null,h)},m.prototype.then=function(h,N){if(typeof h!="function"&&this.state===H||typeof N!="function"&&this.state===M)return this;var E=new this.constructor(Y);if(this.state!==$){var O=this.state===H?h:N;B(E,O,this.outcome)}else this.queue.push(new _(E,h,N));return E};function _(h,N,E){this.promise=h,typeof N=="function"&&(this.onFulfilled=N,this.callFulfilled=this.otherCallFulfilled),typeof E=="function"&&(this.onRejected=E,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(h){I.resolve(this.promise,h)},_.prototype.otherCallFulfilled=function(h){B(this.promise,this.onFulfilled,h)},_.prototype.callRejected=function(h){I.reject(this.promise,h)},_.prototype.otherCallRejected=function(h){B(this.promise,this.onRejected,h)};function B(h,N,E){P(function(){var O;try{O=N(E)}catch(V){return I.reject(h,V)}O===h?I.reject(h,new TypeError("Cannot resolve promise with itself")):I.resolve(h,O)})}I.resolve=function(h,N){var E=F(z,N);if(E.status==="error")return I.reject(h,E.value);var O=E.value;if(O)Z(h,O);else{h.state=H,h.outcome=N;for(var V=-1,j=h.queue.length;++V<j;)h.queue[V].callFulfilled(N)}return h},I.reject=function(h,N){h.state=M,h.outcome=N;for(var E=-1,O=h.queue.length;++E<O;)h.queue[E].callRejected(N);return h};function z(h){var N=h&&h.then;if(h&&(typeof h=="object"||typeof h=="function")&&typeof N=="function")return function(){N.apply(h,arguments)}}function Z(h,N){var E=!1;function O(J){E||(E=!0,I.reject(h,J))}function V(J){E||(E=!0,I.resolve(h,J))}function j(){N(V,O)}var Q=F(j);Q.status==="error"&&O(Q.value)}function F(h,N){var E={};try{E.value=h(N),E.status="success"}catch(O){E.status="error",E.value=O}return E}m.resolve=k;function k(h){return h instanceof this?h:I.resolve(new this(Y),h)}m.reject=U;function U(h){var N=new this(Y);return I.reject(N,h)}m.all=ae;function ae(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var E=h.length,O=!1;if(!E)return this.resolve([]);for(var V=new Array(E),j=0,Q=-1,J=new this(Y);++Q<E;)ee(h[Q],Q);return J;function ee(oe,a){N.resolve(oe).then(s,function(v){O||(O=!0,I.reject(J,v))});function s(v){V[a]=v,++j===E&&!O&&(O=!0,I.resolve(J,V))}}}m.race=re;function re(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var E=h.length,O=!1;if(!E)return this.resolve([]);for(var V=-1,j=new this(Y);++V<E;)Q(h[V]);return j;function Q(J){N.resolve(J).then(function(ee){O||(O=!0,I.resolve(j,ee))},function(ee){O||(O=!0,I.reject(j,ee))})}}},{1:1}],3:[function(L,D,X){(function(P){"use strict";typeof P.Promise!="function"&&(P.Promise=L(2))}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{2:2}],4:[function(L,D,X){"use strict";var P=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function Y(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function I(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var M=I();function H(){try{if(!M||!M.open)return!1;var e=typeof openDatabase<"u"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t=typeof fetch=="function"&&fetch.toString().indexOf("[native code")!==-1;return(!e||t)&&typeof indexedDB<"u"&&typeof IDBKeyRange<"u"}catch{return!1}}function $(e,t){e=e||[],t=t||{};try{return new Blob(e,t)}catch(n){if(n.name!=="TypeError")throw n;for(var r=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,o=new r,i=0;i<e.length;i+=1)o.append(e[i]);return o.getBlob(t.type)}}typeof Promise>"u"&&L(3);var m=Promise;function _(e,t){t&&e.then(function(r){t(null,r)},function(r){t(r)})}function B(e,t,r){typeof t=="function"&&e.then(t),typeof r=="function"&&e.catch(r)}function z(e){return typeof e!="string"&&(console.warn(e+" used as a key, but it is not a string."),e=String(e)),e}function Z(){if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}var F="local-forage-detect-blob-support",k=void 0,U={},ae=Object.prototype.toString,re="readonly",h="readwrite";function N(e){for(var t=e.length,r=new ArrayBuffer(t),o=new Uint8Array(r),i=0;i<t;i++)o[i]=e.charCodeAt(i);return r}function E(e){return new m(function(t){var r=e.transaction(F,h),o=$([""]);r.objectStore(F).put(o,"key"),r.onabort=function(i){i.preventDefault(),i.stopPropagation(),t(!1)},r.oncomplete=function(){var i=navigator.userAgent.match(/Chrome\/(\d+)/),n=navigator.userAgent.match(/Edge\//);t(n||!i||parseInt(i[1],10)>=43)}}).catch(function(){return!1})}function O(e){return typeof k=="boolean"?m.resolve(k):E(e).then(function(t){return k=t,k})}function V(e){var t=U[e.name],r={};r.promise=new m(function(o,i){r.resolve=o,r.reject=i}),t.deferredOperations.push(r),t.dbReady?t.dbReady=t.dbReady.then(function(){return r.promise}):t.dbReady=r.promise}function j(e){var t=U[e.name],r=t.deferredOperations.pop();if(r)return r.resolve(),r.promise}function Q(e,t){var r=U[e.name],o=r.deferredOperations.pop();if(o)return o.reject(t),o.promise}function J(e,t){return new m(function(r,o){if(U[e.name]=U[e.name]||G(),e.db)if(t)V(e),e.db.close();else return r(e.db);var i=[e.name];t&&i.push(e.version);var n=M.open.apply(M,i);t&&(n.onupgradeneeded=function(f){var u=n.result;try{u.createObjectStore(e.storeName),f.oldVersion<=1&&u.createObjectStore(F)}catch(c){if(c.name==="ConstraintError")console.warn('The database "'+e.name+'" has been upgraded from version '+f.oldVersion+" to version "+f.newVersion+', but the storage "'+e.storeName+'" already exists.');else throw c}}),n.onerror=function(f){f.preventDefault(),o(n.error)},n.onsuccess=function(){var f=n.result;f.onversionchange=function(u){u.target.close()},r(f),j(e)}})}function ee(e){return J(e,!1)}function oe(e){return J(e,!0)}function a(e,t){if(!e.db)return!0;var r=!e.db.objectStoreNames.contains(e.storeName),o=e.version<e.db.version,i=e.version>e.db.version;if(o&&(e.version!==t&&console.warn('The database "'+e.name+`" can't be downgraded from version `+e.db.version+" to version "+e.version+"."),e.version=e.db.version),i||r){if(r){var n=e.db.version+1;n>e.version&&(e.version=n)}return!0}return!1}function s(e){return new m(function(t,r){var o=new FileReader;o.onerror=r,o.onloadend=function(i){var n=btoa(i.target.result||"");t({__local_forage_encoded_blob:!0,data:n,type:e.type})},o.readAsBinaryString(e)})}function v(e){var t=N(atob(e.data));return $([t],{type:e.type})}function p(e){return e&&e.__local_forage_encoded_blob}function g(e){var t=this,r=t._initReady().then(function(){var o=U[t._dbInfo.name];if(o&&o.dbReady)return o.dbReady});return B(r,e,e),r}function w(e){V(e);for(var t=U[e.name],r=t.forages,o=0;o<r.length;o++){var i=r[o];i._dbInfo.db&&(i._dbInfo.db.close(),i._dbInfo.db=null)}return e.db=null,ee(e).then(function(n){return e.db=n,a(e)?oe(e):n}).then(function(n){e.db=t.db=n;for(var f=0;f<r.length;f++)r[f]._dbInfo.db=n}).catch(function(n){throw Q(e,n),n})}function T(e,t,r,o){o===void 0&&(o=1);try{var i=e.db.transaction(e.storeName,t);r(null,i)}catch(n){if(o>0&&(!e.db||n.name==="InvalidStateError"||n.name==="NotFoundError"))return m.resolve().then(function(){if(!e.db||n.name==="NotFoundError"&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),oe(e)}).then(function(){return w(e).then(function(){T(e,t,r,o-1)})}).catch(r);r(n)}}function G(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function fe(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=e[o];var i=U[r.name];i||(i=G(),U[r.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=g);var n=[];function f(){return m.resolve()}for(var u=0;u<i.forages.length;u++){var c=i.forages[u];c!==t&&n.push(c._initReady().catch(f))}var l=i.forages.slice(0);return m.all(n).then(function(){return r.db=i.db,ee(r)}).then(function(d){return r.db=d,a(r,t._defaultConfig.version)?oe(r):d}).then(function(d){r.db=i.db=d,t._dbInfo=r;for(var y=0;y<l.length;y++){var S=l[y];S!==t&&(S._dbInfo.db=r.db,S._dbInfo.version=r.version)}})}function ie(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.get(e);l.onsuccess=function(){var d=l.result;d===void 0&&(d=null),p(d)&&(d=v(d)),i(d)},l.onerror=function(){n(l.error)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ce(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.openCursor(),d=1;l.onsuccess=function(){var y=l.result;if(y){var S=y.value;p(S)&&(S=v(S));var x=e(S,y.key,d++);x!==void 0?i(x):y.continue()}else i()},l.onerror=function(){n(l.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function nr(e,t,r){var o=this;e=z(e);var i=new m(function(n,f){var u;o.ready().then(function(){return u=o._dbInfo,ae.call(t)==="[object Blob]"?O(u.db).then(function(c){return c?t:s(t)}):t}).then(function(c){T(o._dbInfo,h,function(l,d){if(l)return f(l);try{var y=d.objectStore(o._dbInfo.storeName);c===null&&(c=void 0);var S=y.put(c,e);d.oncomplete=function(){c===void 0&&(c=null),n(c)},d.onabort=d.onerror=function(){var x=S.error?S.error:S.transaction.error;f(x)}}catch(x){f(x)}})}).catch(f)});return _(i,r),i}function or(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,h,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.delete(e);u.oncomplete=function(){i()},u.onerror=function(){n(l.error)},u.onabort=function(){var d=l.error?l.error:l.transaction.error;n(d)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,h,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.clear();f.oncomplete=function(){o()},f.onabort=f.onerror=function(){var l=c.error?c.error:c.transaction.error;i(l)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function ar(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,re,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.count();c.onsuccess=function(){o(c.result)},c.onerror=function(){i(c.error)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function fr(e,t){var r=this,o=new m(function(i,n){if(e<0){i(null);return}r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=!1,d=c.openKeyCursor();d.onsuccess=function(){var y=d.result;if(!y){i(null);return}e===0||l?i(y.key):(l=!0,y.advance(e))},d.onerror=function(){n(d.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function ur(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,re,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.openKeyCursor(),l=[];c.onsuccess=function(){var d=c.result;if(!d){o(l);return}l.push(d.key),d.continue()},c.onerror=function(){i(c.error)}}catch(d){i(d)}})}).catch(i)});return _(r,e),r}function sr(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;if(!e.name)i=m.reject("Invalid arguments");else{var n=e.name===r.name&&o._dbInfo.db,f=n?m.resolve(o._dbInfo.db):ee(e).then(function(u){var c=U[e.name],l=c.forages;c.db=u;for(var d=0;d<l.length;d++)l[d]._dbInfo.db=u;return u});e.storeName?i=f.then(function(u){if(!!u.objectStoreNames.contains(e.storeName)){var c=u.version+1;V(e);var l=U[e.name],d=l.forages;u.close();for(var y=0;y<d.length;y++){var S=d[y];S._dbInfo.db=null,S._dbInfo.version=c}var x=new m(function(C,K){var W=M.open(e.name,c);W.onerror=function(q){var de=W.result;de.close(),K(q)},W.onupgradeneeded=function(){var q=W.result;q.deleteObjectStore(e.storeName)},W.onsuccess=function(){var q=W.result;q.close(),C(q)}});return x.then(function(C){l.db=C;for(var K=0;K<d.length;K++){var W=d[K];W._dbInfo.db=C,j(W._dbInfo)}}).catch(function(C){throw(Q(e,C)||m.resolve()).catch(function(){}),C})}}):i=f.then(function(u){V(e);var c=U[e.name],l=c.forages;u.close();for(var d=0;d<l.length;d++){var y=l[d];y._dbInfo.db=null}var S=new m(function(x,C){var K=M.deleteDatabase(e.name);K.onerror=function(){var W=K.result;W&&W.close(),C(K.error)},K.onblocked=function(){console.warn('dropInstance blocked for database "'+e.name+'" until all open connections are closed')},K.onsuccess=function(){var W=K.result;W&&W.close(),x(W)}});return S.then(function(x){c.db=x;for(var C=0;C<l.length;C++){var K=l[C];j(K._dbInfo)}}).catch(function(x){throw(Q(e,x)||m.resolve()).catch(function(){}),x})})}return _(i,t),i}var cr={_driver:"asyncStorage",_initStorage:fe,_support:H(),iterate:ce,getItem:ie,setItem:nr,removeItem:or,clear:ir,length:ar,key:fr,keys:ur,dropInstance:sr};function lr(){return typeof openDatabase=="function"}var te="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",dr="~~local_forage_type~",Be=/^~~local_forage_type~([^~]+)~/,he="__lfsc__:",be=he.length,_e="arbf",we="blob",xe="si08",Oe="ui08",Ce="uic8",Le="si16",Pe="si32",Me="ur16",Fe="ui32",Ue="fl32",Ye="fl64",ze=be+_e.length,We=Object.prototype.toString;function Ke(e){var t=e.length*.75,r=e.length,o,i=0,n,f,u,c;e[e.length-1]==="="&&(t--,e[e.length-2]==="="&&t--);var l=new ArrayBuffer(t),d=new Uint8Array(l);for(o=0;o<r;o+=4)n=te.indexOf(e[o]),f=te.indexOf(e[o+1]),u=te.indexOf(e[o+2]),c=te.indexOf(e[o+3]),d[i++]=n<<2|f>>4,d[i++]=(f&15)<<4|u>>2,d[i++]=(u&3)<<6|c&63;return l}function Ee(e){var t=new Uint8Array(e),r="",o;for(o=0;o<t.length;o+=3)r+=te[t[o]>>2],r+=te[(t[o]&3)<<4|t[o+1]>>4],r+=te[(t[o+1]&15)<<2|t[o+2]>>6],r+=te[t[o+2]&63];return t.length%3===2?r=r.substring(0,r.length-1)+"=":t.length%3===1&&(r=r.substring(0,r.length-2)+"=="),r}function vr(e,t){var r="";if(e&&(r=We.call(e)),e&&(r==="[object ArrayBuffer]"||e.buffer&&We.call(e.buffer)==="[object ArrayBuffer]")){var o,i=he;e instanceof ArrayBuffer?(o=e,i+=_e):(o=e.buffer,r==="[object Int8Array]"?i+=xe:r==="[object Uint8Array]"?i+=Oe:r==="[object Uint8ClampedArray]"?i+=Ce:r==="[object Int16Array]"?i+=Le:r==="[object Uint16Array]"?i+=Me:r==="[object Int32Array]"?i+=Pe:r==="[object Uint32Array]"?i+=Fe:r==="[object Float32Array]"?i+=Ue:r==="[object Float64Array]"?i+=Ye:t(new Error("Failed to get type for BinaryArray"))),t(i+Ee(o))}else if(r==="[object Blob]"){var n=new FileReader;n.onload=function(){var f=dr+e.type+"~"+Ee(this.result);t(he+we+f)},n.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(f){console.error("Couldn't convert value into a JSON string: ",e),t(null,f)}}function hr(e){if(e.substring(0,be)!==he)return JSON.parse(e);var t=e.substring(ze),r=e.substring(be,ze),o;if(r===we&&Be.test(t)){var i=t.match(Be);o=i[1],t=t.substring(i[0].length)}var n=Ke(t);switch(r){case _e:return n;case we:return $([n],{type:o});case xe:return new Int8Array(n);case Oe:return new Uint8Array(n);case Ce:return new Uint8ClampedArray(n);case Le:return new Int16Array(n);case Me:return new Uint16Array(n);case Pe:return new Int32Array(n);case Fe:return new Uint32Array(n);case Ue:return new Float32Array(n);case Ye:return new Float64Array(n);default:throw new Error("Unkown type: "+r)}}var Ie={serialize:vr,deserialize:hr,stringToBuffer:Ke,bufferToString:Ee};function He(e,t,r,o){e.executeSql("CREATE TABLE IF NOT EXISTS "+t.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],r,o)}function mr(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=typeof e[o]!="string"?e[o].toString():e[o];var i=new m(function(n,f){try{r.db=openDatabase(r.name,String(r.version),r.description,r.size)}catch(u){return f(u)}r.db.transaction(function(u){He(u,r,function(){t._dbInfo=r,n()},function(c,l){f(l)})},f)});return r.serializer=Ie,i}function ne(e,t,r,o,i,n){e.executeSql(r,o,i,function(f,u){u.code===u.SYNTAX_ERR?f.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[t.storeName],function(c,l){l.rows.length?n(c,u):He(c,t,function(){c.executeSql(r,o,i,n)},n)},n):n(f,u)},n)}function yr(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT * FROM "+f.storeName+" WHERE key = ? LIMIT 1",[e],function(c,l){var d=l.rows.length?l.rows.item(0).value:null;d&&(d=f.serializer.deserialize(d)),i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function pr(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT * FROM "+f.storeName,[],function(c,l){for(var d=l.rows,y=d.length,S=0;S<y;S++){var x=d.item(S),C=x.value;if(C&&(C=f.serializer.deserialize(C)),C=e(C,x.key,S+1),C!==void 0){i(C);return}}i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Ve(e,t,r,o){var i=this;e=z(e);var n=new m(function(f,u){i.ready().then(function(){t===void 0&&(t=null);var c=t,l=i._dbInfo;l.serializer.serialize(t,function(d,y){y?u(y):l.db.transaction(function(S){ne(S,l,"INSERT OR REPLACE INTO "+l.storeName+" (key, value) VALUES (?, ?)",[e,d],function(){f(c)},function(x,C){u(C)})},function(S){if(S.code===S.QUOTA_ERR){if(o>0){f(Ve.apply(i,[e,c,r,o-1]));return}u(S)}})})}).catch(u)});return _(n,r),n}function gr(e,t,r){return Ve.apply(this,[e,t,r,1])}function br(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"DELETE FROM "+f.storeName+" WHERE key = ?",[e],function(){i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function _r(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"DELETE FROM "+n.storeName,[],function(){o()},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function wr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"SELECT COUNT(key) as c FROM "+n.storeName,[],function(u,c){var l=c.rows.item(0).c;o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Er(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT key FROM "+f.storeName+" WHERE id = ? LIMIT 1",[e+1],function(c,l){var d=l.rows.length?l.rows.item(0).key:null;i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"SELECT key FROM "+n.storeName,[],function(u,c){for(var l=[],d=0;d<c.rows.length;d++)l.push(c.rows.item(d).key);o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Sr(e){return new m(function(t,r){e.transaction(function(o){o.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(i,n){for(var f=[],u=0;u<n.rows.length;u++)f.push(n.rows.item(u).name);t({db:e,storeNames:f})},function(i,n){r(n)})},function(o){r(o)})})}function Ar(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;return e.name?i=new m(function(n){var f;e.name===r.name?f=o._dbInfo.db:f=openDatabase(e.name,"","",0),e.storeName?n({db:f,storeNames:[e.storeName]}):n(Sr(f))}).then(function(n){return new m(function(f,u){n.db.transaction(function(c){function l(x){return new m(function(C,K){c.executeSql("DROP TABLE IF EXISTS "+x,[],function(){C()},function(W,q){K(q)})})}for(var d=[],y=0,S=n.storeNames.length;y<S;y++)d.push(l(n.storeNames[y]));m.all(d).then(function(){f()}).catch(function(x){u(x)})},function(c){u(c)})})}):i=m.reject("Invalid arguments"),_(i,t),i}var Rr={_driver:"webSQLStorage",_initStorage:mr,_support:lr(),iterate:pr,getItem:yr,setItem:gr,removeItem:br,clear:_r,length:wr,key:Er,keys:Ir,dropInstance:Ar};function Dr(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function Ge(e,t){var r=e.name+"/";return e.storeName!==t.storeName&&(r+=e.storeName+"/"),r}function Nr(){var e="_localforage_support_test";try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch{return!0}}function Tr(){return!Nr()||localStorage.length>0}function Br(e){var t=this,r={};if(e)for(var o in e)r[o]=e[o];return r.keyPrefix=Ge(e,t._defaultConfig),Tr()?(t._dbInfo=r,r.serializer=Ie,m.resolve()):m.reject()}function xr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo.keyPrefix,i=localStorage.length-1;i>=0;i--){var n=localStorage.key(i);n.indexOf(o)===0&&localStorage.removeItem(n)}});return _(r,e),r}function Or(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo,n=localStorage.getItem(i.keyPrefix+e);return n&&(n=i.serializer.deserialize(n)),n});return _(o,t),o}function Cr(e,t){var r=this,o=r.ready().then(function(){for(var i=r._dbInfo,n=i.keyPrefix,f=n.length,u=localStorage.length,c=1,l=0;l<u;l++){var d=localStorage.key(l);if(d.indexOf(n)===0){var y=localStorage.getItem(d);if(y&&(y=i.serializer.deserialize(y)),y=e(y,d.substring(f),c++),y!==void 0)return y}}});return _(o,t),o}function Lr(e,t){var r=this,o=r.ready().then(function(){var i=r._dbInfo,n;try{n=localStorage.key(e)}catch{n=null}return n&&(n=n.substring(i.keyPrefix.length)),n});return _(o,t),o}function Pr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo,i=localStorage.length,n=[],f=0;f<i;f++){var u=localStorage.key(f);u.indexOf(o.keyPrefix)===0&&n.push(u.substring(o.keyPrefix.length))}return n});return _(r,e),r}function Mr(e){var t=this,r=t.keys().then(function(o){return o.length});return _(r,e),r}function Fr(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo;localStorage.removeItem(i.keyPrefix+e)});return _(o,t),o}function Ur(e,t,r){var o=this;e=z(e);var i=o.ready().then(function(){t===void 0&&(t=null);var n=t;return new m(function(f,u){var c=o._dbInfo;c.serializer.serialize(t,function(l,d){if(d)u(d);else try{localStorage.setItem(c.keyPrefix+e,l),f(n)}catch(y){(y.name==="QuotaExceededError"||y.name==="NS_ERROR_DOM_QUOTA_REACHED")&&u(y),u(y)}})})});return _(i,r),i}function Yr(e,t){if(t=Z.apply(this,arguments),e=typeof e!="function"&&e||{},!e.name){var r=this.config();e.name=e.name||r.name,e.storeName=e.storeName||r.storeName}var o=this,i;return e.name?i=new m(function(n){e.storeName?n(Ge(e,o._defaultConfig)):n(e.name+"/")}).then(function(n){for(var f=localStorage.length-1;f>=0;f--){var u=localStorage.key(f);u.indexOf(n)===0&&localStorage.removeItem(u)}}):i=m.reject("Invalid arguments"),_(i,t),i}var zr={_driver:"localStorageWrapper",_initStorage:Br,_support:Dr(),iterate:Cr,getItem:Or,setItem:Ur,removeItem:Fr,clear:xr,length:Mr,key:Lr,keys:Pr,dropInstance:Yr},Wr=function(t,r){return t===r||typeof t=="number"&&typeof r=="number"&&isNaN(t)&&isNaN(r)},Kr=function(t,r){for(var o=t.length,i=0;i<o;){if(Wr(t[i],r))return!0;i++}return!1},je=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"},le={},Xe={},ue={INDEXEDDB:cr,WEBSQL:Rr,LOCALSTORAGE:zr},Hr=[ue.INDEXEDDB._driver,ue.WEBSQL._driver,ue.LOCALSTORAGE._driver],me=["dropInstance"],Se=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(me),Vr={description:"",driver:Hr.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Gr(e,t){e[t]=function(){var r=arguments;return e.ready().then(function(){return e[t].apply(e,r)})}}function Ae(){for(var e=1;e<arguments.length;e++){var t=arguments[e];if(t)for(var r in t)t.hasOwnProperty(r)&&(je(t[r])?arguments[0][r]=t[r].slice():arguments[0][r]=t[r])}return arguments[0]}var jr=function(){function e(t){Y(this,e);for(var r in ue)if(ue.hasOwnProperty(r)){var o=ue[r],i=o._driver;this[r]=i,le[i]||this.defineDriver(o)}this._defaultConfig=Ae({},Vr),this._config=Ae({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return e.prototype.config=function(r){if((typeof r>"u"?"undefined":P(r))==="object"){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var o in r){if(o==="storeName"&&(r[o]=r[o].replace(/\W/g,"_")),o==="version"&&typeof r[o]!="number")return new Error("Database version must be a number.");this._config[o]=r[o]}return"driver"in r&&r.driver?this.setDriver(this._config.driver):!0}else return typeof r=="string"?this._config[r]:this._config},e.prototype.defineDriver=function(r,o,i){var n=new m(function(f,u){try{var c=r._driver,l=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!r._driver){u(l);return}for(var d=Se.concat("_initStorage"),y=0,S=d.length;y<S;y++){var x=d[y],C=!Kr(me,x);if((C||r[x])&&typeof r[x]!="function"){u(l);return}}var K=function(){for(var de=function(Jr){return function(){var $r=new Error("Method "+Jr+" is not implemented by the current driver"),Qe=m.reject($r);return _(Qe,arguments[arguments.length-1]),Qe}},Re=0,Qr=me.length;Re<Qr;Re++){var De=me[Re];r[De]||(r[De]=de(De))}};K();var W=function(de){le[c]&&console.info("Redefining LocalForage driver: "+c),le[c]=r,Xe[c]=de,f()};"_support"in r?r._support&&typeof r._support=="function"?r._support().then(W,u):W(!!r._support):W(!0)}catch(q){u(q)}});return B(n,o,i),n},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(r,o,i){var n=le[r]?m.resolve(le[r]):m.reject(new Error("Driver not found."));return B(n,o,i),n},e.prototype.getSerializer=function(r){var o=m.resolve(Ie);return B(o,r),o},e.prototype.ready=function(r){var o=this,i=o._driverSet.then(function(){return o._ready===null&&(o._ready=o._initDriver()),o._ready});return B(i,r,r),i},e.prototype.setDriver=function(r,o,i){var n=this;je(r)||(r=[r]);var f=this._getSupportedDrivers(r);function u(){n._config.driver=n.driver()}function c(y){return n._extend(y),u(),n._ready=n._initStorage(n._config),n._ready}function l(y){return function(){var S=0;function x(){for(;S<y.length;){var C=y[S];return S++,n._dbInfo=null,n._ready=null,n.getDriver(C).then(c).catch(x)}u();var K=new Error("No available storage method found.");return n._driverSet=m.reject(K),n._driverSet}return x()}}var d=this._driverSet!==null?this._driverSet.catch(function(){return m.resolve()}):m.resolve();return this._driverSet=d.then(function(){var y=f[0];return n._dbInfo=null,n._ready=null,n.getDriver(y).then(function(S){n._driver=S._driver,u(),n._wrapLibraryMethodsWithReady(),n._initDriver=l(f)})}).catch(function(){u();var y=new Error("No available storage method found.");return n._driverSet=m.reject(y),n._driverSet}),B(this._driverSet,o,i),this._driverSet},e.prototype.supports=function(r){return!!Xe[r]},e.prototype._extend=function(r){Ae(this,r)},e.prototype._getSupportedDrivers=function(r){for(var o=[],i=0,n=r.length;i<n;i++){var f=r[i];this.supports(f)&&o.push(f)}return o},e.prototype._wrapLibraryMethodsWithReady=function(){for(var r=0,o=Se.length;r<o;r++)Gr(this,Se[r])},e.prototype.createInstance=function(r){return new e(r)},e}(),Xr=new jr;D.exports=Xr},{3:3}]},{},[4])(4)})});var rr=$e((ye,er)=>{(function(b,A){typeof ye=="object"&&typeof er<"u"?A(ye):typeof define=="function"&&define.amd?define("localforage-driver-memory",["exports"],A):A(b.LocalforageDriverMemory={})})(typeof self<"u"?self:ye,function(b){"use strict";var A="localforage-driver-memory";function R(a){var s=typeof Symbol=="function"&&a[Symbol.iterator],v=0;return s?s.call(a):{next:function(){return a&&v>=a.length&&(a=void 0),{value:a&&a[v++],done:!a}}}}function L(a,s){a=a||[],s=s||{};try{return new Blob(a,s)}catch(w){if(w.name!=="TypeError")throw w;for(var v=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,p=new v,g=0;g<a.length;g+=1)p.append(a[g]);return p.getBlob(s.type)}}var D=/^~~local_forage_type~([^~]+)~/,X=9,P=X+4,Y=Object.prototype.toString;function I(a){var s=a.length*.75,v=a.length;a[a.length-1]==="="&&(s--,a[a.length-2]==="="&&s--);for(var p=new ArrayBuffer(s),g=new Uint8Array(p),w=0,T=0;w<v;w+=4){var G="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w]),fe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+1]),ie="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+2]),ce="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+3]);g[T++]=G<<2|fe>>4,g[T++]=(fe&15)<<4|ie>>2,g[T++]=(ie&3)<<6|ce&63}return p}function M(a){for(var s=new Uint8Array(a),v="",p=0;p<s.length;p+=3)v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[p]>>2],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[p]&3)<<4|s[p+1]>>4],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[p+1]&15)<<2|s[p+2]>>6],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[p+2]&63];return s.length%3===2?v=v.substring(0,v.length-1)+"=":s.length%3===1&&(v=v.substring(0,v.length-2)+"=="),v}function H(a,s){var v="";if(a&&(v=Y.call(a)),a&&(v==="[object ArrayBuffer]"||a.buffer&&Y.call(a.buffer)==="[object ArrayBuffer]")){var p=void 0,g="__lfsc__:";a instanceof ArrayBuffer?(p=a,g+="arbf"):(p=a.buffer,v==="[object Int8Array]"?g+="si08":v==="[object Uint8Array]"?g+="ui08":v==="[object Uint8ClampedArray]"?g+="uic8":v==="[object Int16Array]"?g+="si16":v==="[object Uint16Array]"?g+="ur16":v==="[object Int32Array]"?g+="si32":v==="[object Uint32Array]"?g+="ui32":v==="[object Float32Array]"?g+="fl32":v==="[object Float64Array]"?g+="fl64":s(new Error("Failed to get type for BinaryArray"))),s(g+M(p))}else if(v==="[object Blob]"){var w=new FileReader;w.onload=function(){var T="~~local_forage_type~"+a.type+"~"+M(this.result);s("__lfsc__:blob"+T)},w.readAsArrayBuffer(a)}else try{s(JSON.stringify(a))}catch(T){console.error("Couldn't convert value into a JSON string: ",a),s(null,T)}}function $(a){if(a.substring(0,X)!=="__lfsc__:")return JSON.parse(a);var s=a.substring(P),v=a.substring(X,P),p;if(v==="blob"&&D.test(s)){var g=s.match(D);p=g[1],s=s.substring(g[0].length)}var w=I(s);switch(v){case"arbf":return w;case"blob":return L([w],{type:p});case"si08":return new Int8Array(w);case"ui08":return new Uint8Array(w);case"uic8":return new Uint8ClampedArray(w);case"si16":return new Int16Array(w);case"ur16":return new Uint16Array(w);case"si32":return new Int32Array(w);case"ui32":return new Uint32Array(w);case"fl32":return new Float32Array(w);case"fl64":return new Float64Array(w);default:throw new Error("Unkown type: "+v)}}function m(a){var s,v;if(a===null||typeof a!="object"||"isActiveClone"in a)return a;var p=a instanceof Date?new Date(a):a.constructor();try{for(var g=R(Object.keys(a)),w=g.next();!w.done;w=g.next()){var T=w.value;Object.prototype.hasOwnProperty.call(a,T)&&(a.isActiveClone=null,p[T]=m(a[T]),delete a.isActiveClone)}}catch(G){s={error:G}}finally{try{w&&!w.done&&(v=g.return)&&v.call(g)}finally{if(s)throw s.error}}return p}function _(a,s){return(a.name||s.name)+"/"+(a.storeName||s.storeName)+"/"}function B(a,s){s&&a.then(function(v){s(null,v)},function(v){s(v)})}function z(){for(var a=[],s=0;s<arguments.length;s++)a[s]=arguments[s];if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}function Z(a,s){var v=this;if(s=z.apply(this,arguments),a=typeof a!="function"&&a||{},!a.name){var p=this.config();a.name=a.name||p.name,a.storeName=a.storeName||p.storeName}var g;return a.name?g=new Promise(function(w){a.storeName?w(_(a,v._defaultConfig)):w(a.name+"/")}):g=Promise.reject("Invalid arguments"),{promise:g,callback:s}}function F(a){return typeof a!="string"&&(console.warn(a+" used as a key, but it is not a string."),a=String(a)),a}var k={bufferToString:M,deserialize:$,serialize:H,stringToBuffer:I},U={},ae=function(){function a(s){this.kp=s,this.data={}}return a.resolve=function(s){return U[s]||(U[s]=new a(s)),U[s]},a.prototype.clear=function(){this.data={}},a.prototype.drop=function(){this.clear(),delete U[this.kp]},a.prototype.get=function(s){return this.data[s]},a.prototype.key=function(s){return this.keys()[s]},a.prototype.keys=function(){return Object.keys(this.data)},a.prototype.rm=function(s){delete this.data[s]},a.prototype.set=function(s,v){this.data[s]=v},a}();function re(a){var s=a?m(a):{},v=_(s,this._defaultConfig),p=ae.resolve(v);return this._dbInfo=s,this._dbInfo.serializer=k,this._dbInfo.keyPrefix=v,this._dbInfo.mStore=p,Promise.resolve()}function h(a){var s=this,v=this.ready().then(function(){s._dbInfo.mStore.clear()});return B(v,a),v}function N(a,s){var v=Z.apply(this,arguments),p=v.promise,g=v.callback,w=p.then(function(T){ae.resolve(T).drop()});return B(w,g),p}function E(a,s){var v=this;a=F(a);var p=this.ready().then(function(){var g=v._dbInfo.mStore.get(a);return g==null?null:v._dbInfo.serializer.deserialize(g)});return B(p,s),p}function O(a,s){var v=this,p=this.ready().then(function(){for(var g=v._dbInfo.mStore,w=g.keys(),T=0;T<w.length;T++){var G=g.get(w[T]);if(G&&(G=v._dbInfo.serializer.deserialize(G)),G=a(G,w[T],T+1),G!==void 0)return G}});return B(p,s),p}function V(a,s){var v=this,p=this.ready().then(function(){var g;try{g=v._dbInfo.mStore.key(a),g===void 0&&(g=null)}catch{g=null}return g});return B(p,s),p}function j(a){var s=this,v=this.ready().then(function(){return s._dbInfo.mStore.keys()});return B(v,a),v}function Q(a){var s=this.keys().then(function(v){return v.length});return B(s,a),s}function J(a,s){var v=this;a=F(a);var p=this.ready().then(function(){v._dbInfo.mStore.rm(a)});return B(p,s),p}function ee(a,s,v){var p=this;a=F(a);var g=this.ready().then(function(){s===void 0&&(s=null);var w=s;return new Promise(function(T,G){p._dbInfo.serializer.serialize(s,function(fe,ie){if(ie)G(ie);else try{p._dbInfo.mStore.set(a,fe),T(w)}catch(ce){G(ce)}})})});return B(g,v),g}var oe=!0;b._support=oe,b._driver=A,b._initStorage=re,b.clear=h,b.dropInstance=N,b.getItem=E,b.iterate=O,b.key=V,b.keys=j,b.length=Q,b.removeItem=J,b.setItem=ee,Object.defineProperty(b,"__esModule",{value:!0})})});var ge=Ze(ke()),Te=Ze(rr());import{SDKBase as st,createSDK as ct}from"@magic-sdk/provider";import{ViewController as nt,createDuplicateIframeWarning as ot,createURL as tr,createModalNotReadyError as it}from"@magic-sdk/provider";var at={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"};function ft(b){for(let[A,R]of Object.entries(at))b.style[A]=R}function ut(b){let A=[].slice.call(document.querySelectorAll(".magic-iframe"));return Boolean(A.find(R=>R.src.includes(b)))}var pe=class extends nt{constructor(){super(...arguments);this.activeElement=null}init(){this.test="hello",this.iframe=new Promise(R=>{let L=()=>{if(ut(encodeURIComponent(this.parameters)))ot().log();else{let D=document.createElement("iframe");D.classList.add("magic-iframe"),D.dataset.magicIframeLabel=tr(this.endpoint).host,D.title="Secure Modal",D.src=tr(`/send?params=${encodeURIComponent(this.parameters)}`,this.endpoint).href,ft(D),document.body.appendChild(D),R(D)}};["loaded","interactive","complete"].includes(document.readyState)?L():window.addEventListener("load",L,!1)}),window.addEventListener("message",R=>{var L;if(R.origin===this.endpoint&&R.data&&R.data.msgType&&this.messageHandlers.size){R.data.response=(L=R.data.response)!=null?L:{};for(let D of this.messageHandlers.values())D(R)}})}showOverlay(){return se(this,null,function*(){let R=yield this.iframe;R.style.display="block",this.activeElement=document.activeElement,R.focus()})}hideOverlay(){return se(this,null,function*(){var L;let R=yield this.iframe;R.style.display="none",(L=this.activeElement)!=null&&L.focus&&this.activeElement.focus(),this.activeElement=null})}_post(R){return se(this,null,function*(){let L=yield this.iframe;if(L&&L.contentWindow)L.contentWindow.postMessage(R,this.endpoint);else throw it()})}};export*from"@magic-sdk/commons";var bt=ct(st,{platform:"web",sdkName:"magic-sdk",version:"13.3.0",defaultEndpoint:"https://auth.magic.link/",ViewController:pe,configureStorage:()=>se(void 0,null,function*(){let b=ge.default.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return yield b.defineDriver(Te),yield b.setDriver([ge.default.INDEXEDDB,ge.default.LOCALSTORAGE,Te._driver]),b})});export{bt as Magic};
1
+ var Zr=Object.create;var Je=Object.defineProperty;var qr=Object.getOwnPropertyDescriptor;var kr=Object.getOwnPropertyNames;var et=Object.getPrototypeOf,rt=Object.prototype.hasOwnProperty;var ve=(b=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(b,{get:(A,R)=>(typeof require!="undefined"?require:A)[R]}):b)(function(b){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+b+'" is not supported')});var $e=(b,A)=>()=>(A||b((A={exports:{}}).exports,A),A.exports);var tt=(b,A,R,L)=>{if(A&&typeof A=="object"||typeof A=="function")for(let D of kr(A))!rt.call(b,D)&&D!==R&&Je(b,D,{get:()=>A[D],enumerable:!(L=qr(A,D))||L.enumerable});return b};var Ze=(b,A,R)=>(R=b!=null?Zr(et(b)):{},tt(A||!b||!b.__esModule?Je(R,"default",{value:b,enumerable:!0}):R,b));var se=(b,A,R)=>new Promise((L,D)=>{var X=I=>{try{Y(R.next(I))}catch(M){D(M)}},P=I=>{try{Y(R.throw(I))}catch(M){D(M)}},Y=I=>I.done?L(I.value):Promise.resolve(I.value).then(X,P);Y((R=R.apply(b,A)).next())});var ke=$e((qe,Ne)=>{(function(b){if(typeof qe=="object"&&typeof Ne<"u")Ne.exports=b();else if(typeof define=="function"&&define.amd)define([],b);else{var A;typeof window<"u"?A=window:typeof global<"u"?A=global:typeof self<"u"?A=self:A=this,A.localforage=b()}})(function(){var b,A,R;return function L(D,X,P){function Y(H,$){if(!X[H]){if(!D[H]){var m=typeof ve=="function"&&ve;if(!$&&m)return m(H,!0);if(I)return I(H,!0);var _=new Error("Cannot find module '"+H+"'");throw _.code="MODULE_NOT_FOUND",_}var B=X[H]={exports:{}};D[H][0].call(B.exports,function(z){var Z=D[H][1][z];return Y(Z||z)},B,B.exports,L,D,X,P)}return X[H].exports}for(var I=typeof ve=="function"&&ve,M=0;M<P.length;M++)Y(P[M]);return Y}({1:[function(L,D,X){(function(P){"use strict";var Y=P.MutationObserver||P.WebKitMutationObserver,I;if(Y){var M=0,H=new Y(z),$=P.document.createTextNode("");H.observe($,{characterData:!0}),I=function(){$.data=M=++M%2}}else if(!P.setImmediate&&typeof P.MessageChannel<"u"){var m=new P.MessageChannel;m.port1.onmessage=z,I=function(){m.port2.postMessage(0)}}else"document"in P&&"onreadystatechange"in P.document.createElement("script")?I=function(){var F=P.document.createElement("script");F.onreadystatechange=function(){z(),F.onreadystatechange=null,F.parentNode.removeChild(F),F=null},P.document.documentElement.appendChild(F)}:I=function(){setTimeout(z,0)};var _,B=[];function z(){_=!0;for(var F,k,U=B.length;U;){for(k=B,B=[],F=-1;++F<U;)k[F]();U=B.length}_=!1}D.exports=Z;function Z(F){B.push(F)===1&&!_&&I()}}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{}],2:[function(L,D,X){"use strict";var P=L(1);function Y(){}var I={},M=["REJECTED"],H=["FULFILLED"],$=["PENDING"];D.exports=m;function m(h){if(typeof h!="function")throw new TypeError("resolver must be a function");this.state=$,this.queue=[],this.outcome=void 0,h!==Y&&Z(this,h)}m.prototype.catch=function(h){return this.then(null,h)},m.prototype.then=function(h,N){if(typeof h!="function"&&this.state===H||typeof N!="function"&&this.state===M)return this;var E=new this.constructor(Y);if(this.state!==$){var O=this.state===H?h:N;B(E,O,this.outcome)}else this.queue.push(new _(E,h,N));return E};function _(h,N,E){this.promise=h,typeof N=="function"&&(this.onFulfilled=N,this.callFulfilled=this.otherCallFulfilled),typeof E=="function"&&(this.onRejected=E,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(h){I.resolve(this.promise,h)},_.prototype.otherCallFulfilled=function(h){B(this.promise,this.onFulfilled,h)},_.prototype.callRejected=function(h){I.reject(this.promise,h)},_.prototype.otherCallRejected=function(h){B(this.promise,this.onRejected,h)};function B(h,N,E){P(function(){var O;try{O=N(E)}catch(V){return I.reject(h,V)}O===h?I.reject(h,new TypeError("Cannot resolve promise with itself")):I.resolve(h,O)})}I.resolve=function(h,N){var E=F(z,N);if(E.status==="error")return I.reject(h,E.value);var O=E.value;if(O)Z(h,O);else{h.state=H,h.outcome=N;for(var V=-1,j=h.queue.length;++V<j;)h.queue[V].callFulfilled(N)}return h},I.reject=function(h,N){h.state=M,h.outcome=N;for(var E=-1,O=h.queue.length;++E<O;)h.queue[E].callRejected(N);return h};function z(h){var N=h&&h.then;if(h&&(typeof h=="object"||typeof h=="function")&&typeof N=="function")return function(){N.apply(h,arguments)}}function Z(h,N){var E=!1;function O(J){E||(E=!0,I.reject(h,J))}function V(J){E||(E=!0,I.resolve(h,J))}function j(){N(V,O)}var Q=F(j);Q.status==="error"&&O(Q.value)}function F(h,N){var E={};try{E.value=h(N),E.status="success"}catch(O){E.status="error",E.value=O}return E}m.resolve=k;function k(h){return h instanceof this?h:I.resolve(new this(Y),h)}m.reject=U;function U(h){var N=new this(Y);return I.reject(N,h)}m.all=ae;function ae(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var E=h.length,O=!1;if(!E)return this.resolve([]);for(var V=new Array(E),j=0,Q=-1,J=new this(Y);++Q<E;)ee(h[Q],Q);return J;function ee(oe,a){N.resolve(oe).then(s,function(v){O||(O=!0,I.reject(J,v))});function s(v){V[a]=v,++j===E&&!O&&(O=!0,I.resolve(J,V))}}}m.race=re;function re(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var E=h.length,O=!1;if(!E)return this.resolve([]);for(var V=-1,j=new this(Y);++V<E;)Q(h[V]);return j;function Q(J){N.resolve(J).then(function(ee){O||(O=!0,I.resolve(j,ee))},function(ee){O||(O=!0,I.reject(j,ee))})}}},{1:1}],3:[function(L,D,X){(function(P){"use strict";typeof P.Promise!="function"&&(P.Promise=L(2))}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{2:2}],4:[function(L,D,X){"use strict";var P=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function Y(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function I(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var M=I();function H(){try{if(!M||!M.open)return!1;var e=typeof openDatabase<"u"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t=typeof fetch=="function"&&fetch.toString().indexOf("[native code")!==-1;return(!e||t)&&typeof indexedDB<"u"&&typeof IDBKeyRange<"u"}catch{return!1}}function $(e,t){e=e||[],t=t||{};try{return new Blob(e,t)}catch(n){if(n.name!=="TypeError")throw n;for(var r=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,o=new r,i=0;i<e.length;i+=1)o.append(e[i]);return o.getBlob(t.type)}}typeof Promise>"u"&&L(3);var m=Promise;function _(e,t){t&&e.then(function(r){t(null,r)},function(r){t(r)})}function B(e,t,r){typeof t=="function"&&e.then(t),typeof r=="function"&&e.catch(r)}function z(e){return typeof e!="string"&&(console.warn(e+" used as a key, but it is not a string."),e=String(e)),e}function Z(){if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}var F="local-forage-detect-blob-support",k=void 0,U={},ae=Object.prototype.toString,re="readonly",h="readwrite";function N(e){for(var t=e.length,r=new ArrayBuffer(t),o=new Uint8Array(r),i=0;i<t;i++)o[i]=e.charCodeAt(i);return r}function E(e){return new m(function(t){var r=e.transaction(F,h),o=$([""]);r.objectStore(F).put(o,"key"),r.onabort=function(i){i.preventDefault(),i.stopPropagation(),t(!1)},r.oncomplete=function(){var i=navigator.userAgent.match(/Chrome\/(\d+)/),n=navigator.userAgent.match(/Edge\//);t(n||!i||parseInt(i[1],10)>=43)}}).catch(function(){return!1})}function O(e){return typeof k=="boolean"?m.resolve(k):E(e).then(function(t){return k=t,k})}function V(e){var t=U[e.name],r={};r.promise=new m(function(o,i){r.resolve=o,r.reject=i}),t.deferredOperations.push(r),t.dbReady?t.dbReady=t.dbReady.then(function(){return r.promise}):t.dbReady=r.promise}function j(e){var t=U[e.name],r=t.deferredOperations.pop();if(r)return r.resolve(),r.promise}function Q(e,t){var r=U[e.name],o=r.deferredOperations.pop();if(o)return o.reject(t),o.promise}function J(e,t){return new m(function(r,o){if(U[e.name]=U[e.name]||G(),e.db)if(t)V(e),e.db.close();else return r(e.db);var i=[e.name];t&&i.push(e.version);var n=M.open.apply(M,i);t&&(n.onupgradeneeded=function(f){var u=n.result;try{u.createObjectStore(e.storeName),f.oldVersion<=1&&u.createObjectStore(F)}catch(c){if(c.name==="ConstraintError")console.warn('The database "'+e.name+'" has been upgraded from version '+f.oldVersion+" to version "+f.newVersion+', but the storage "'+e.storeName+'" already exists.');else throw c}}),n.onerror=function(f){f.preventDefault(),o(n.error)},n.onsuccess=function(){var f=n.result;f.onversionchange=function(u){u.target.close()},r(f),j(e)}})}function ee(e){return J(e,!1)}function oe(e){return J(e,!0)}function a(e,t){if(!e.db)return!0;var r=!e.db.objectStoreNames.contains(e.storeName),o=e.version<e.db.version,i=e.version>e.db.version;if(o&&(e.version!==t&&console.warn('The database "'+e.name+`" can't be downgraded from version `+e.db.version+" to version "+e.version+"."),e.version=e.db.version),i||r){if(r){var n=e.db.version+1;n>e.version&&(e.version=n)}return!0}return!1}function s(e){return new m(function(t,r){var o=new FileReader;o.onerror=r,o.onloadend=function(i){var n=btoa(i.target.result||"");t({__local_forage_encoded_blob:!0,data:n,type:e.type})},o.readAsBinaryString(e)})}function v(e){var t=N(atob(e.data));return $([t],{type:e.type})}function p(e){return e&&e.__local_forage_encoded_blob}function g(e){var t=this,r=t._initReady().then(function(){var o=U[t._dbInfo.name];if(o&&o.dbReady)return o.dbReady});return B(r,e,e),r}function w(e){V(e);for(var t=U[e.name],r=t.forages,o=0;o<r.length;o++){var i=r[o];i._dbInfo.db&&(i._dbInfo.db.close(),i._dbInfo.db=null)}return e.db=null,ee(e).then(function(n){return e.db=n,a(e)?oe(e):n}).then(function(n){e.db=t.db=n;for(var f=0;f<r.length;f++)r[f]._dbInfo.db=n}).catch(function(n){throw Q(e,n),n})}function T(e,t,r,o){o===void 0&&(o=1);try{var i=e.db.transaction(e.storeName,t);r(null,i)}catch(n){if(o>0&&(!e.db||n.name==="InvalidStateError"||n.name==="NotFoundError"))return m.resolve().then(function(){if(!e.db||n.name==="NotFoundError"&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),oe(e)}).then(function(){return w(e).then(function(){T(e,t,r,o-1)})}).catch(r);r(n)}}function G(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function fe(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=e[o];var i=U[r.name];i||(i=G(),U[r.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=g);var n=[];function f(){return m.resolve()}for(var u=0;u<i.forages.length;u++){var c=i.forages[u];c!==t&&n.push(c._initReady().catch(f))}var l=i.forages.slice(0);return m.all(n).then(function(){return r.db=i.db,ee(r)}).then(function(d){return r.db=d,a(r,t._defaultConfig.version)?oe(r):d}).then(function(d){r.db=i.db=d,t._dbInfo=r;for(var y=0;y<l.length;y++){var S=l[y];S!==t&&(S._dbInfo.db=r.db,S._dbInfo.version=r.version)}})}function ie(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.get(e);l.onsuccess=function(){var d=l.result;d===void 0&&(d=null),p(d)&&(d=v(d)),i(d)},l.onerror=function(){n(l.error)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ce(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.openCursor(),d=1;l.onsuccess=function(){var y=l.result;if(y){var S=y.value;p(S)&&(S=v(S));var x=e(S,y.key,d++);x!==void 0?i(x):y.continue()}else i()},l.onerror=function(){n(l.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function nr(e,t,r){var o=this;e=z(e);var i=new m(function(n,f){var u;o.ready().then(function(){return u=o._dbInfo,ae.call(t)==="[object Blob]"?O(u.db).then(function(c){return c?t:s(t)}):t}).then(function(c){T(o._dbInfo,h,function(l,d){if(l)return f(l);try{var y=d.objectStore(o._dbInfo.storeName);c===null&&(c=void 0);var S=y.put(c,e);d.oncomplete=function(){c===void 0&&(c=null),n(c)},d.onabort=d.onerror=function(){var x=S.error?S.error:S.transaction.error;f(x)}}catch(x){f(x)}})}).catch(f)});return _(i,r),i}function or(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,h,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.delete(e);u.oncomplete=function(){i()},u.onerror=function(){n(l.error)},u.onabort=function(){var d=l.error?l.error:l.transaction.error;n(d)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,h,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.clear();f.oncomplete=function(){o()},f.onabort=f.onerror=function(){var l=c.error?c.error:c.transaction.error;i(l)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function ar(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,re,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.count();c.onsuccess=function(){o(c.result)},c.onerror=function(){i(c.error)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function fr(e,t){var r=this,o=new m(function(i,n){if(e<0){i(null);return}r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=!1,d=c.openKeyCursor();d.onsuccess=function(){var y=d.result;if(!y){i(null);return}e===0||l?i(y.key):(l=!0,y.advance(e))},d.onerror=function(){n(d.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function ur(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,re,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.openKeyCursor(),l=[];c.onsuccess=function(){var d=c.result;if(!d){o(l);return}l.push(d.key),d.continue()},c.onerror=function(){i(c.error)}}catch(d){i(d)}})}).catch(i)});return _(r,e),r}function sr(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;if(!e.name)i=m.reject("Invalid arguments");else{var n=e.name===r.name&&o._dbInfo.db,f=n?m.resolve(o._dbInfo.db):ee(e).then(function(u){var c=U[e.name],l=c.forages;c.db=u;for(var d=0;d<l.length;d++)l[d]._dbInfo.db=u;return u});e.storeName?i=f.then(function(u){if(!!u.objectStoreNames.contains(e.storeName)){var c=u.version+1;V(e);var l=U[e.name],d=l.forages;u.close();for(var y=0;y<d.length;y++){var S=d[y];S._dbInfo.db=null,S._dbInfo.version=c}var x=new m(function(C,K){var W=M.open(e.name,c);W.onerror=function(q){var de=W.result;de.close(),K(q)},W.onupgradeneeded=function(){var q=W.result;q.deleteObjectStore(e.storeName)},W.onsuccess=function(){var q=W.result;q.close(),C(q)}});return x.then(function(C){l.db=C;for(var K=0;K<d.length;K++){var W=d[K];W._dbInfo.db=C,j(W._dbInfo)}}).catch(function(C){throw(Q(e,C)||m.resolve()).catch(function(){}),C})}}):i=f.then(function(u){V(e);var c=U[e.name],l=c.forages;u.close();for(var d=0;d<l.length;d++){var y=l[d];y._dbInfo.db=null}var S=new m(function(x,C){var K=M.deleteDatabase(e.name);K.onerror=function(){var W=K.result;W&&W.close(),C(K.error)},K.onblocked=function(){console.warn('dropInstance blocked for database "'+e.name+'" until all open connections are closed')},K.onsuccess=function(){var W=K.result;W&&W.close(),x(W)}});return S.then(function(x){c.db=x;for(var C=0;C<l.length;C++){var K=l[C];j(K._dbInfo)}}).catch(function(x){throw(Q(e,x)||m.resolve()).catch(function(){}),x})})}return _(i,t),i}var cr={_driver:"asyncStorage",_initStorage:fe,_support:H(),iterate:ce,getItem:ie,setItem:nr,removeItem:or,clear:ir,length:ar,key:fr,keys:ur,dropInstance:sr};function lr(){return typeof openDatabase=="function"}var te="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",dr="~~local_forage_type~",Be=/^~~local_forage_type~([^~]+)~/,he="__lfsc__:",be=he.length,_e="arbf",we="blob",xe="si08",Oe="ui08",Ce="uic8",Le="si16",Pe="si32",Me="ur16",Fe="ui32",Ue="fl32",Ye="fl64",ze=be+_e.length,We=Object.prototype.toString;function Ke(e){var t=e.length*.75,r=e.length,o,i=0,n,f,u,c;e[e.length-1]==="="&&(t--,e[e.length-2]==="="&&t--);var l=new ArrayBuffer(t),d=new Uint8Array(l);for(o=0;o<r;o+=4)n=te.indexOf(e[o]),f=te.indexOf(e[o+1]),u=te.indexOf(e[o+2]),c=te.indexOf(e[o+3]),d[i++]=n<<2|f>>4,d[i++]=(f&15)<<4|u>>2,d[i++]=(u&3)<<6|c&63;return l}function Ee(e){var t=new Uint8Array(e),r="",o;for(o=0;o<t.length;o+=3)r+=te[t[o]>>2],r+=te[(t[o]&3)<<4|t[o+1]>>4],r+=te[(t[o+1]&15)<<2|t[o+2]>>6],r+=te[t[o+2]&63];return t.length%3===2?r=r.substring(0,r.length-1)+"=":t.length%3===1&&(r=r.substring(0,r.length-2)+"=="),r}function vr(e,t){var r="";if(e&&(r=We.call(e)),e&&(r==="[object ArrayBuffer]"||e.buffer&&We.call(e.buffer)==="[object ArrayBuffer]")){var o,i=he;e instanceof ArrayBuffer?(o=e,i+=_e):(o=e.buffer,r==="[object Int8Array]"?i+=xe:r==="[object Uint8Array]"?i+=Oe:r==="[object Uint8ClampedArray]"?i+=Ce:r==="[object Int16Array]"?i+=Le:r==="[object Uint16Array]"?i+=Me:r==="[object Int32Array]"?i+=Pe:r==="[object Uint32Array]"?i+=Fe:r==="[object Float32Array]"?i+=Ue:r==="[object Float64Array]"?i+=Ye:t(new Error("Failed to get type for BinaryArray"))),t(i+Ee(o))}else if(r==="[object Blob]"){var n=new FileReader;n.onload=function(){var f=dr+e.type+"~"+Ee(this.result);t(he+we+f)},n.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(f){console.error("Couldn't convert value into a JSON string: ",e),t(null,f)}}function hr(e){if(e.substring(0,be)!==he)return JSON.parse(e);var t=e.substring(ze),r=e.substring(be,ze),o;if(r===we&&Be.test(t)){var i=t.match(Be);o=i[1],t=t.substring(i[0].length)}var n=Ke(t);switch(r){case _e:return n;case we:return $([n],{type:o});case xe:return new Int8Array(n);case Oe:return new Uint8Array(n);case Ce:return new Uint8ClampedArray(n);case Le:return new Int16Array(n);case Me:return new Uint16Array(n);case Pe:return new Int32Array(n);case Fe:return new Uint32Array(n);case Ue:return new Float32Array(n);case Ye:return new Float64Array(n);default:throw new Error("Unkown type: "+r)}}var Ie={serialize:vr,deserialize:hr,stringToBuffer:Ke,bufferToString:Ee};function He(e,t,r,o){e.executeSql("CREATE TABLE IF NOT EXISTS "+t.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],r,o)}function mr(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=typeof e[o]!="string"?e[o].toString():e[o];var i=new m(function(n,f){try{r.db=openDatabase(r.name,String(r.version),r.description,r.size)}catch(u){return f(u)}r.db.transaction(function(u){He(u,r,function(){t._dbInfo=r,n()},function(c,l){f(l)})},f)});return r.serializer=Ie,i}function ne(e,t,r,o,i,n){e.executeSql(r,o,i,function(f,u){u.code===u.SYNTAX_ERR?f.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[t.storeName],function(c,l){l.rows.length?n(c,u):He(c,t,function(){c.executeSql(r,o,i,n)},n)},n):n(f,u)},n)}function yr(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT * FROM "+f.storeName+" WHERE key = ? LIMIT 1",[e],function(c,l){var d=l.rows.length?l.rows.item(0).value:null;d&&(d=f.serializer.deserialize(d)),i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function pr(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT * FROM "+f.storeName,[],function(c,l){for(var d=l.rows,y=d.length,S=0;S<y;S++){var x=d.item(S),C=x.value;if(C&&(C=f.serializer.deserialize(C)),C=e(C,x.key,S+1),C!==void 0){i(C);return}}i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Ve(e,t,r,o){var i=this;e=z(e);var n=new m(function(f,u){i.ready().then(function(){t===void 0&&(t=null);var c=t,l=i._dbInfo;l.serializer.serialize(t,function(d,y){y?u(y):l.db.transaction(function(S){ne(S,l,"INSERT OR REPLACE INTO "+l.storeName+" (key, value) VALUES (?, ?)",[e,d],function(){f(c)},function(x,C){u(C)})},function(S){if(S.code===S.QUOTA_ERR){if(o>0){f(Ve.apply(i,[e,c,r,o-1]));return}u(S)}})})}).catch(u)});return _(n,r),n}function gr(e,t,r){return Ve.apply(this,[e,t,r,1])}function br(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"DELETE FROM "+f.storeName+" WHERE key = ?",[e],function(){i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function _r(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"DELETE FROM "+n.storeName,[],function(){o()},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function wr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"SELECT COUNT(key) as c FROM "+n.storeName,[],function(u,c){var l=c.rows.item(0).c;o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Er(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT key FROM "+f.storeName+" WHERE id = ? LIMIT 1",[e+1],function(c,l){var d=l.rows.length?l.rows.item(0).key:null;i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"SELECT key FROM "+n.storeName,[],function(u,c){for(var l=[],d=0;d<c.rows.length;d++)l.push(c.rows.item(d).key);o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Sr(e){return new m(function(t,r){e.transaction(function(o){o.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(i,n){for(var f=[],u=0;u<n.rows.length;u++)f.push(n.rows.item(u).name);t({db:e,storeNames:f})},function(i,n){r(n)})},function(o){r(o)})})}function Ar(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;return e.name?i=new m(function(n){var f;e.name===r.name?f=o._dbInfo.db:f=openDatabase(e.name,"","",0),e.storeName?n({db:f,storeNames:[e.storeName]}):n(Sr(f))}).then(function(n){return new m(function(f,u){n.db.transaction(function(c){function l(x){return new m(function(C,K){c.executeSql("DROP TABLE IF EXISTS "+x,[],function(){C()},function(W,q){K(q)})})}for(var d=[],y=0,S=n.storeNames.length;y<S;y++)d.push(l(n.storeNames[y]));m.all(d).then(function(){f()}).catch(function(x){u(x)})},function(c){u(c)})})}):i=m.reject("Invalid arguments"),_(i,t),i}var Rr={_driver:"webSQLStorage",_initStorage:mr,_support:lr(),iterate:pr,getItem:yr,setItem:gr,removeItem:br,clear:_r,length:wr,key:Er,keys:Ir,dropInstance:Ar};function Dr(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function Ge(e,t){var r=e.name+"/";return e.storeName!==t.storeName&&(r+=e.storeName+"/"),r}function Nr(){var e="_localforage_support_test";try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch{return!0}}function Tr(){return!Nr()||localStorage.length>0}function Br(e){var t=this,r={};if(e)for(var o in e)r[o]=e[o];return r.keyPrefix=Ge(e,t._defaultConfig),Tr()?(t._dbInfo=r,r.serializer=Ie,m.resolve()):m.reject()}function xr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo.keyPrefix,i=localStorage.length-1;i>=0;i--){var n=localStorage.key(i);n.indexOf(o)===0&&localStorage.removeItem(n)}});return _(r,e),r}function Or(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo,n=localStorage.getItem(i.keyPrefix+e);return n&&(n=i.serializer.deserialize(n)),n});return _(o,t),o}function Cr(e,t){var r=this,o=r.ready().then(function(){for(var i=r._dbInfo,n=i.keyPrefix,f=n.length,u=localStorage.length,c=1,l=0;l<u;l++){var d=localStorage.key(l);if(d.indexOf(n)===0){var y=localStorage.getItem(d);if(y&&(y=i.serializer.deserialize(y)),y=e(y,d.substring(f),c++),y!==void 0)return y}}});return _(o,t),o}function Lr(e,t){var r=this,o=r.ready().then(function(){var i=r._dbInfo,n;try{n=localStorage.key(e)}catch{n=null}return n&&(n=n.substring(i.keyPrefix.length)),n});return _(o,t),o}function Pr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo,i=localStorage.length,n=[],f=0;f<i;f++){var u=localStorage.key(f);u.indexOf(o.keyPrefix)===0&&n.push(u.substring(o.keyPrefix.length))}return n});return _(r,e),r}function Mr(e){var t=this,r=t.keys().then(function(o){return o.length});return _(r,e),r}function Fr(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo;localStorage.removeItem(i.keyPrefix+e)});return _(o,t),o}function Ur(e,t,r){var o=this;e=z(e);var i=o.ready().then(function(){t===void 0&&(t=null);var n=t;return new m(function(f,u){var c=o._dbInfo;c.serializer.serialize(t,function(l,d){if(d)u(d);else try{localStorage.setItem(c.keyPrefix+e,l),f(n)}catch(y){(y.name==="QuotaExceededError"||y.name==="NS_ERROR_DOM_QUOTA_REACHED")&&u(y),u(y)}})})});return _(i,r),i}function Yr(e,t){if(t=Z.apply(this,arguments),e=typeof e!="function"&&e||{},!e.name){var r=this.config();e.name=e.name||r.name,e.storeName=e.storeName||r.storeName}var o=this,i;return e.name?i=new m(function(n){e.storeName?n(Ge(e,o._defaultConfig)):n(e.name+"/")}).then(function(n){for(var f=localStorage.length-1;f>=0;f--){var u=localStorage.key(f);u.indexOf(n)===0&&localStorage.removeItem(u)}}):i=m.reject("Invalid arguments"),_(i,t),i}var zr={_driver:"localStorageWrapper",_initStorage:Br,_support:Dr(),iterate:Cr,getItem:Or,setItem:Ur,removeItem:Fr,clear:xr,length:Mr,key:Lr,keys:Pr,dropInstance:Yr},Wr=function(t,r){return t===r||typeof t=="number"&&typeof r=="number"&&isNaN(t)&&isNaN(r)},Kr=function(t,r){for(var o=t.length,i=0;i<o;){if(Wr(t[i],r))return!0;i++}return!1},je=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"},le={},Xe={},ue={INDEXEDDB:cr,WEBSQL:Rr,LOCALSTORAGE:zr},Hr=[ue.INDEXEDDB._driver,ue.WEBSQL._driver,ue.LOCALSTORAGE._driver],me=["dropInstance"],Se=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(me),Vr={description:"",driver:Hr.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Gr(e,t){e[t]=function(){var r=arguments;return e.ready().then(function(){return e[t].apply(e,r)})}}function Ae(){for(var e=1;e<arguments.length;e++){var t=arguments[e];if(t)for(var r in t)t.hasOwnProperty(r)&&(je(t[r])?arguments[0][r]=t[r].slice():arguments[0][r]=t[r])}return arguments[0]}var jr=function(){function e(t){Y(this,e);for(var r in ue)if(ue.hasOwnProperty(r)){var o=ue[r],i=o._driver;this[r]=i,le[i]||this.defineDriver(o)}this._defaultConfig=Ae({},Vr),this._config=Ae({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return e.prototype.config=function(r){if((typeof r>"u"?"undefined":P(r))==="object"){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var o in r){if(o==="storeName"&&(r[o]=r[o].replace(/\W/g,"_")),o==="version"&&typeof r[o]!="number")return new Error("Database version must be a number.");this._config[o]=r[o]}return"driver"in r&&r.driver?this.setDriver(this._config.driver):!0}else return typeof r=="string"?this._config[r]:this._config},e.prototype.defineDriver=function(r,o,i){var n=new m(function(f,u){try{var c=r._driver,l=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!r._driver){u(l);return}for(var d=Se.concat("_initStorage"),y=0,S=d.length;y<S;y++){var x=d[y],C=!Kr(me,x);if((C||r[x])&&typeof r[x]!="function"){u(l);return}}var K=function(){for(var de=function(Jr){return function(){var $r=new Error("Method "+Jr+" is not implemented by the current driver"),Qe=m.reject($r);return _(Qe,arguments[arguments.length-1]),Qe}},Re=0,Qr=me.length;Re<Qr;Re++){var De=me[Re];r[De]||(r[De]=de(De))}};K();var W=function(de){le[c]&&console.info("Redefining LocalForage driver: "+c),le[c]=r,Xe[c]=de,f()};"_support"in r?r._support&&typeof r._support=="function"?r._support().then(W,u):W(!!r._support):W(!0)}catch(q){u(q)}});return B(n,o,i),n},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(r,o,i){var n=le[r]?m.resolve(le[r]):m.reject(new Error("Driver not found."));return B(n,o,i),n},e.prototype.getSerializer=function(r){var o=m.resolve(Ie);return B(o,r),o},e.prototype.ready=function(r){var o=this,i=o._driverSet.then(function(){return o._ready===null&&(o._ready=o._initDriver()),o._ready});return B(i,r,r),i},e.prototype.setDriver=function(r,o,i){var n=this;je(r)||(r=[r]);var f=this._getSupportedDrivers(r);function u(){n._config.driver=n.driver()}function c(y){return n._extend(y),u(),n._ready=n._initStorage(n._config),n._ready}function l(y){return function(){var S=0;function x(){for(;S<y.length;){var C=y[S];return S++,n._dbInfo=null,n._ready=null,n.getDriver(C).then(c).catch(x)}u();var K=new Error("No available storage method found.");return n._driverSet=m.reject(K),n._driverSet}return x()}}var d=this._driverSet!==null?this._driverSet.catch(function(){return m.resolve()}):m.resolve();return this._driverSet=d.then(function(){var y=f[0];return n._dbInfo=null,n._ready=null,n.getDriver(y).then(function(S){n._driver=S._driver,u(),n._wrapLibraryMethodsWithReady(),n._initDriver=l(f)})}).catch(function(){u();var y=new Error("No available storage method found.");return n._driverSet=m.reject(y),n._driverSet}),B(this._driverSet,o,i),this._driverSet},e.prototype.supports=function(r){return!!Xe[r]},e.prototype._extend=function(r){Ae(this,r)},e.prototype._getSupportedDrivers=function(r){for(var o=[],i=0,n=r.length;i<n;i++){var f=r[i];this.supports(f)&&o.push(f)}return o},e.prototype._wrapLibraryMethodsWithReady=function(){for(var r=0,o=Se.length;r<o;r++)Gr(this,Se[r])},e.prototype.createInstance=function(r){return new e(r)},e}(),Xr=new jr;D.exports=Xr},{3:3}]},{},[4])(4)})});var rr=$e((ye,er)=>{(function(b,A){typeof ye=="object"&&typeof er<"u"?A(ye):typeof define=="function"&&define.amd?define("localforage-driver-memory",["exports"],A):A(b.LocalforageDriverMemory={})})(typeof self<"u"?self:ye,function(b){"use strict";var A="localforage-driver-memory";function R(a){var s=typeof Symbol=="function"&&a[Symbol.iterator],v=0;return s?s.call(a):{next:function(){return a&&v>=a.length&&(a=void 0),{value:a&&a[v++],done:!a}}}}function L(a,s){a=a||[],s=s||{};try{return new Blob(a,s)}catch(w){if(w.name!=="TypeError")throw w;for(var v=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,p=new v,g=0;g<a.length;g+=1)p.append(a[g]);return p.getBlob(s.type)}}var D=/^~~local_forage_type~([^~]+)~/,X=9,P=X+4,Y=Object.prototype.toString;function I(a){var s=a.length*.75,v=a.length;a[a.length-1]==="="&&(s--,a[a.length-2]==="="&&s--);for(var p=new ArrayBuffer(s),g=new Uint8Array(p),w=0,T=0;w<v;w+=4){var G="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w]),fe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+1]),ie="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+2]),ce="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+3]);g[T++]=G<<2|fe>>4,g[T++]=(fe&15)<<4|ie>>2,g[T++]=(ie&3)<<6|ce&63}return p}function M(a){for(var s=new Uint8Array(a),v="",p=0;p<s.length;p+=3)v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[p]>>2],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[p]&3)<<4|s[p+1]>>4],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[p+1]&15)<<2|s[p+2]>>6],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[p+2]&63];return s.length%3===2?v=v.substring(0,v.length-1)+"=":s.length%3===1&&(v=v.substring(0,v.length-2)+"=="),v}function H(a,s){var v="";if(a&&(v=Y.call(a)),a&&(v==="[object ArrayBuffer]"||a.buffer&&Y.call(a.buffer)==="[object ArrayBuffer]")){var p=void 0,g="__lfsc__:";a instanceof ArrayBuffer?(p=a,g+="arbf"):(p=a.buffer,v==="[object Int8Array]"?g+="si08":v==="[object Uint8Array]"?g+="ui08":v==="[object Uint8ClampedArray]"?g+="uic8":v==="[object Int16Array]"?g+="si16":v==="[object Uint16Array]"?g+="ur16":v==="[object Int32Array]"?g+="si32":v==="[object Uint32Array]"?g+="ui32":v==="[object Float32Array]"?g+="fl32":v==="[object Float64Array]"?g+="fl64":s(new Error("Failed to get type for BinaryArray"))),s(g+M(p))}else if(v==="[object Blob]"){var w=new FileReader;w.onload=function(){var T="~~local_forage_type~"+a.type+"~"+M(this.result);s("__lfsc__:blob"+T)},w.readAsArrayBuffer(a)}else try{s(JSON.stringify(a))}catch(T){console.error("Couldn't convert value into a JSON string: ",a),s(null,T)}}function $(a){if(a.substring(0,X)!=="__lfsc__:")return JSON.parse(a);var s=a.substring(P),v=a.substring(X,P),p;if(v==="blob"&&D.test(s)){var g=s.match(D);p=g[1],s=s.substring(g[0].length)}var w=I(s);switch(v){case"arbf":return w;case"blob":return L([w],{type:p});case"si08":return new Int8Array(w);case"ui08":return new Uint8Array(w);case"uic8":return new Uint8ClampedArray(w);case"si16":return new Int16Array(w);case"ur16":return new Uint16Array(w);case"si32":return new Int32Array(w);case"ui32":return new Uint32Array(w);case"fl32":return new Float32Array(w);case"fl64":return new Float64Array(w);default:throw new Error("Unkown type: "+v)}}function m(a){var s,v;if(a===null||typeof a!="object"||"isActiveClone"in a)return a;var p=a instanceof Date?new Date(a):a.constructor();try{for(var g=R(Object.keys(a)),w=g.next();!w.done;w=g.next()){var T=w.value;Object.prototype.hasOwnProperty.call(a,T)&&(a.isActiveClone=null,p[T]=m(a[T]),delete a.isActiveClone)}}catch(G){s={error:G}}finally{try{w&&!w.done&&(v=g.return)&&v.call(g)}finally{if(s)throw s.error}}return p}function _(a,s){return(a.name||s.name)+"/"+(a.storeName||s.storeName)+"/"}function B(a,s){s&&a.then(function(v){s(null,v)},function(v){s(v)})}function z(){for(var a=[],s=0;s<arguments.length;s++)a[s]=arguments[s];if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}function Z(a,s){var v=this;if(s=z.apply(this,arguments),a=typeof a!="function"&&a||{},!a.name){var p=this.config();a.name=a.name||p.name,a.storeName=a.storeName||p.storeName}var g;return a.name?g=new Promise(function(w){a.storeName?w(_(a,v._defaultConfig)):w(a.name+"/")}):g=Promise.reject("Invalid arguments"),{promise:g,callback:s}}function F(a){return typeof a!="string"&&(console.warn(a+" used as a key, but it is not a string."),a=String(a)),a}var k={bufferToString:M,deserialize:$,serialize:H,stringToBuffer:I},U={},ae=function(){function a(s){this.kp=s,this.data={}}return a.resolve=function(s){return U[s]||(U[s]=new a(s)),U[s]},a.prototype.clear=function(){this.data={}},a.prototype.drop=function(){this.clear(),delete U[this.kp]},a.prototype.get=function(s){return this.data[s]},a.prototype.key=function(s){return this.keys()[s]},a.prototype.keys=function(){return Object.keys(this.data)},a.prototype.rm=function(s){delete this.data[s]},a.prototype.set=function(s,v){this.data[s]=v},a}();function re(a){var s=a?m(a):{},v=_(s,this._defaultConfig),p=ae.resolve(v);return this._dbInfo=s,this._dbInfo.serializer=k,this._dbInfo.keyPrefix=v,this._dbInfo.mStore=p,Promise.resolve()}function h(a){var s=this,v=this.ready().then(function(){s._dbInfo.mStore.clear()});return B(v,a),v}function N(a,s){var v=Z.apply(this,arguments),p=v.promise,g=v.callback,w=p.then(function(T){ae.resolve(T).drop()});return B(w,g),p}function E(a,s){var v=this;a=F(a);var p=this.ready().then(function(){var g=v._dbInfo.mStore.get(a);return g==null?null:v._dbInfo.serializer.deserialize(g)});return B(p,s),p}function O(a,s){var v=this,p=this.ready().then(function(){for(var g=v._dbInfo.mStore,w=g.keys(),T=0;T<w.length;T++){var G=g.get(w[T]);if(G&&(G=v._dbInfo.serializer.deserialize(G)),G=a(G,w[T],T+1),G!==void 0)return G}});return B(p,s),p}function V(a,s){var v=this,p=this.ready().then(function(){var g;try{g=v._dbInfo.mStore.key(a),g===void 0&&(g=null)}catch{g=null}return g});return B(p,s),p}function j(a){var s=this,v=this.ready().then(function(){return s._dbInfo.mStore.keys()});return B(v,a),v}function Q(a){var s=this.keys().then(function(v){return v.length});return B(s,a),s}function J(a,s){var v=this;a=F(a);var p=this.ready().then(function(){v._dbInfo.mStore.rm(a)});return B(p,s),p}function ee(a,s,v){var p=this;a=F(a);var g=this.ready().then(function(){s===void 0&&(s=null);var w=s;return new Promise(function(T,G){p._dbInfo.serializer.serialize(s,function(fe,ie){if(ie)G(ie);else try{p._dbInfo.mStore.set(a,fe),T(w)}catch(ce){G(ce)}})})});return B(g,v),g}var oe=!0;b._support=oe,b._driver=A,b._initStorage=re,b.clear=h,b.dropInstance=N,b.getItem=E,b.iterate=O,b.key=V,b.keys=j,b.length=Q,b.removeItem=J,b.setItem=ee,Object.defineProperty(b,"__esModule",{value:!0})})});var ge=Ze(ke()),Te=Ze(rr());import{SDKBase as st,createSDK as ct}from"@magic-sdk/provider";import{ViewController as nt,createDuplicateIframeWarning as ot,createURL as tr,createModalNotReadyError as it}from"@magic-sdk/provider";var at={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"};function ft(b){for(let[A,R]of Object.entries(at))b.style[A]=R}function ut(b){let A=[].slice.call(document.querySelectorAll(".magic-iframe"));return Boolean(A.find(R=>R.src.includes(b)))}var pe=class extends nt{constructor(){super(...arguments);this.activeElement=null}init(){this.test="hello",this.iframe=new Promise(R=>{let L=()=>{if(ut(encodeURIComponent(this.parameters)))ot().log();else{let D=document.createElement("iframe");D.classList.add("magic-iframe"),D.dataset.magicIframeLabel=tr(this.endpoint).host,D.title="Secure Modal",D.src=tr(`/send?params=${encodeURIComponent(this.parameters)}`,this.endpoint).href,ft(D),document.body.appendChild(D),R(D)}};["loaded","interactive","complete"].includes(document.readyState)?L():window.addEventListener("load",L,!1)}),window.addEventListener("message",R=>{var L;if(R.origin===this.endpoint&&R.data&&R.data.msgType&&this.messageHandlers.size){R.data.response=(L=R.data.response)!=null?L:{};for(let D of this.messageHandlers.values())D(R)}})}showOverlay(){return se(this,null,function*(){let R=yield this.iframe;R.style.display="block",this.activeElement=document.activeElement,R.focus()})}hideOverlay(){return se(this,null,function*(){var L;let R=yield this.iframe;R.style.display="none",(L=this.activeElement)!=null&&L.focus&&this.activeElement.focus(),this.activeElement=null})}_post(R){return se(this,null,function*(){let L=yield this.iframe;if(L&&L.contentWindow)L.contentWindow.postMessage(R,this.endpoint);else throw it()})}};export*from"@magic-sdk/commons";var bt=ct(st,{platform:"web",sdkName:"magic-sdk",version:"13.3.1",defaultEndpoint:"https://auth.magic.link/",ViewController:pe,configureStorage:()=>se(void 0,null,function*(){let b=ge.default.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return yield b.defineDriver(Te),yield b.setDriver([ge.default.INDEXEDDB,ge.default.LOCALSTORAGE,Te._driver]),b})});export{bt as Magic};
2
2
  //# sourceMappingURL=index.js.map
package/dist/es/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- var Zr=Object.create;var Je=Object.defineProperty;var qr=Object.getOwnPropertyDescriptor;var kr=Object.getOwnPropertyNames;var et=Object.getPrototypeOf,rt=Object.prototype.hasOwnProperty;var ve=(b=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(b,{get:(A,R)=>(typeof require!="undefined"?require:A)[R]}):b)(function(b){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+b+'" is not supported')});var $e=(b,A)=>()=>(A||b((A={exports:{}}).exports,A),A.exports);var tt=(b,A,R,L)=>{if(A&&typeof A=="object"||typeof A=="function")for(let D of kr(A))!rt.call(b,D)&&D!==R&&Je(b,D,{get:()=>A[D],enumerable:!(L=qr(A,D))||L.enumerable});return b};var Ze=(b,A,R)=>(R=b!=null?Zr(et(b)):{},tt(A||!b||!b.__esModule?Je(R,"default",{value:b,enumerable:!0}):R,b));var se=(b,A,R)=>new Promise((L,D)=>{var X=I=>{try{Y(R.next(I))}catch(M){D(M)}},P=I=>{try{Y(R.throw(I))}catch(M){D(M)}},Y=I=>I.done?L(I.value):Promise.resolve(I.value).then(X,P);Y((R=R.apply(b,A)).next())});var ke=$e((qe,Ne)=>{(function(b){if(typeof qe=="object"&&typeof Ne<"u")Ne.exports=b();else if(typeof define=="function"&&define.amd)define([],b);else{var A;typeof window<"u"?A=window:typeof global<"u"?A=global:typeof self<"u"?A=self:A=this,A.localforage=b()}})(function(){var b,A,R;return function L(D,X,P){function Y(H,$){if(!X[H]){if(!D[H]){var m=typeof ve=="function"&&ve;if(!$&&m)return m(H,!0);if(I)return I(H,!0);var _=new Error("Cannot find module '"+H+"'");throw _.code="MODULE_NOT_FOUND",_}var B=X[H]={exports:{}};D[H][0].call(B.exports,function(z){var Z=D[H][1][z];return Y(Z||z)},B,B.exports,L,D,X,P)}return X[H].exports}for(var I=typeof ve=="function"&&ve,M=0;M<P.length;M++)Y(P[M]);return Y}({1:[function(L,D,X){(function(P){"use strict";var Y=P.MutationObserver||P.WebKitMutationObserver,I;if(Y){var M=0,H=new Y(z),$=P.document.createTextNode("");H.observe($,{characterData:!0}),I=function(){$.data=M=++M%2}}else if(!P.setImmediate&&typeof P.MessageChannel<"u"){var m=new P.MessageChannel;m.port1.onmessage=z,I=function(){m.port2.postMessage(0)}}else"document"in P&&"onreadystatechange"in P.document.createElement("script")?I=function(){var F=P.document.createElement("script");F.onreadystatechange=function(){z(),F.onreadystatechange=null,F.parentNode.removeChild(F),F=null},P.document.documentElement.appendChild(F)}:I=function(){setTimeout(z,0)};var _,B=[];function z(){_=!0;for(var F,k,U=B.length;U;){for(k=B,B=[],F=-1;++F<U;)k[F]();U=B.length}_=!1}D.exports=Z;function Z(F){B.push(F)===1&&!_&&I()}}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{}],2:[function(L,D,X){"use strict";var P=L(1);function Y(){}var I={},M=["REJECTED"],H=["FULFILLED"],$=["PENDING"];D.exports=m;function m(h){if(typeof h!="function")throw new TypeError("resolver must be a function");this.state=$,this.queue=[],this.outcome=void 0,h!==Y&&Z(this,h)}m.prototype.catch=function(h){return this.then(null,h)},m.prototype.then=function(h,N){if(typeof h!="function"&&this.state===H||typeof N!="function"&&this.state===M)return this;var E=new this.constructor(Y);if(this.state!==$){var O=this.state===H?h:N;B(E,O,this.outcome)}else this.queue.push(new _(E,h,N));return E};function _(h,N,E){this.promise=h,typeof N=="function"&&(this.onFulfilled=N,this.callFulfilled=this.otherCallFulfilled),typeof E=="function"&&(this.onRejected=E,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(h){I.resolve(this.promise,h)},_.prototype.otherCallFulfilled=function(h){B(this.promise,this.onFulfilled,h)},_.prototype.callRejected=function(h){I.reject(this.promise,h)},_.prototype.otherCallRejected=function(h){B(this.promise,this.onRejected,h)};function B(h,N,E){P(function(){var O;try{O=N(E)}catch(V){return I.reject(h,V)}O===h?I.reject(h,new TypeError("Cannot resolve promise with itself")):I.resolve(h,O)})}I.resolve=function(h,N){var E=F(z,N);if(E.status==="error")return I.reject(h,E.value);var O=E.value;if(O)Z(h,O);else{h.state=H,h.outcome=N;for(var V=-1,j=h.queue.length;++V<j;)h.queue[V].callFulfilled(N)}return h},I.reject=function(h,N){h.state=M,h.outcome=N;for(var E=-1,O=h.queue.length;++E<O;)h.queue[E].callRejected(N);return h};function z(h){var N=h&&h.then;if(h&&(typeof h=="object"||typeof h=="function")&&typeof N=="function")return function(){N.apply(h,arguments)}}function Z(h,N){var E=!1;function O(J){E||(E=!0,I.reject(h,J))}function V(J){E||(E=!0,I.resolve(h,J))}function j(){N(V,O)}var Q=F(j);Q.status==="error"&&O(Q.value)}function F(h,N){var E={};try{E.value=h(N),E.status="success"}catch(O){E.status="error",E.value=O}return E}m.resolve=k;function k(h){return h instanceof this?h:I.resolve(new this(Y),h)}m.reject=U;function U(h){var N=new this(Y);return I.reject(N,h)}m.all=ae;function ae(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var E=h.length,O=!1;if(!E)return this.resolve([]);for(var V=new Array(E),j=0,Q=-1,J=new this(Y);++Q<E;)ee(h[Q],Q);return J;function ee(oe,a){N.resolve(oe).then(s,function(v){O||(O=!0,I.reject(J,v))});function s(v){V[a]=v,++j===E&&!O&&(O=!0,I.resolve(J,V))}}}m.race=re;function re(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var E=h.length,O=!1;if(!E)return this.resolve([]);for(var V=-1,j=new this(Y);++V<E;)Q(h[V]);return j;function Q(J){N.resolve(J).then(function(ee){O||(O=!0,I.resolve(j,ee))},function(ee){O||(O=!0,I.reject(j,ee))})}}},{1:1}],3:[function(L,D,X){(function(P){"use strict";typeof P.Promise!="function"&&(P.Promise=L(2))}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{2:2}],4:[function(L,D,X){"use strict";var P=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function Y(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function I(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var M=I();function H(){try{if(!M||!M.open)return!1;var e=typeof openDatabase<"u"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t=typeof fetch=="function"&&fetch.toString().indexOf("[native code")!==-1;return(!e||t)&&typeof indexedDB<"u"&&typeof IDBKeyRange<"u"}catch{return!1}}function $(e,t){e=e||[],t=t||{};try{return new Blob(e,t)}catch(n){if(n.name!=="TypeError")throw n;for(var r=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,o=new r,i=0;i<e.length;i+=1)o.append(e[i]);return o.getBlob(t.type)}}typeof Promise>"u"&&L(3);var m=Promise;function _(e,t){t&&e.then(function(r){t(null,r)},function(r){t(r)})}function B(e,t,r){typeof t=="function"&&e.then(t),typeof r=="function"&&e.catch(r)}function z(e){return typeof e!="string"&&(console.warn(e+" used as a key, but it is not a string."),e=String(e)),e}function Z(){if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}var F="local-forage-detect-blob-support",k=void 0,U={},ae=Object.prototype.toString,re="readonly",h="readwrite";function N(e){for(var t=e.length,r=new ArrayBuffer(t),o=new Uint8Array(r),i=0;i<t;i++)o[i]=e.charCodeAt(i);return r}function E(e){return new m(function(t){var r=e.transaction(F,h),o=$([""]);r.objectStore(F).put(o,"key"),r.onabort=function(i){i.preventDefault(),i.stopPropagation(),t(!1)},r.oncomplete=function(){var i=navigator.userAgent.match(/Chrome\/(\d+)/),n=navigator.userAgent.match(/Edge\//);t(n||!i||parseInt(i[1],10)>=43)}}).catch(function(){return!1})}function O(e){return typeof k=="boolean"?m.resolve(k):E(e).then(function(t){return k=t,k})}function V(e){var t=U[e.name],r={};r.promise=new m(function(o,i){r.resolve=o,r.reject=i}),t.deferredOperations.push(r),t.dbReady?t.dbReady=t.dbReady.then(function(){return r.promise}):t.dbReady=r.promise}function j(e){var t=U[e.name],r=t.deferredOperations.pop();if(r)return r.resolve(),r.promise}function Q(e,t){var r=U[e.name],o=r.deferredOperations.pop();if(o)return o.reject(t),o.promise}function J(e,t){return new m(function(r,o){if(U[e.name]=U[e.name]||G(),e.db)if(t)V(e),e.db.close();else return r(e.db);var i=[e.name];t&&i.push(e.version);var n=M.open.apply(M,i);t&&(n.onupgradeneeded=function(f){var u=n.result;try{u.createObjectStore(e.storeName),f.oldVersion<=1&&u.createObjectStore(F)}catch(c){if(c.name==="ConstraintError")console.warn('The database "'+e.name+'" has been upgraded from version '+f.oldVersion+" to version "+f.newVersion+', but the storage "'+e.storeName+'" already exists.');else throw c}}),n.onerror=function(f){f.preventDefault(),o(n.error)},n.onsuccess=function(){var f=n.result;f.onversionchange=function(u){u.target.close()},r(f),j(e)}})}function ee(e){return J(e,!1)}function oe(e){return J(e,!0)}function a(e,t){if(!e.db)return!0;var r=!e.db.objectStoreNames.contains(e.storeName),o=e.version<e.db.version,i=e.version>e.db.version;if(o&&(e.version!==t&&console.warn('The database "'+e.name+`" can't be downgraded from version `+e.db.version+" to version "+e.version+"."),e.version=e.db.version),i||r){if(r){var n=e.db.version+1;n>e.version&&(e.version=n)}return!0}return!1}function s(e){return new m(function(t,r){var o=new FileReader;o.onerror=r,o.onloadend=function(i){var n=btoa(i.target.result||"");t({__local_forage_encoded_blob:!0,data:n,type:e.type})},o.readAsBinaryString(e)})}function v(e){var t=N(atob(e.data));return $([t],{type:e.type})}function p(e){return e&&e.__local_forage_encoded_blob}function g(e){var t=this,r=t._initReady().then(function(){var o=U[t._dbInfo.name];if(o&&o.dbReady)return o.dbReady});return B(r,e,e),r}function w(e){V(e);for(var t=U[e.name],r=t.forages,o=0;o<r.length;o++){var i=r[o];i._dbInfo.db&&(i._dbInfo.db.close(),i._dbInfo.db=null)}return e.db=null,ee(e).then(function(n){return e.db=n,a(e)?oe(e):n}).then(function(n){e.db=t.db=n;for(var f=0;f<r.length;f++)r[f]._dbInfo.db=n}).catch(function(n){throw Q(e,n),n})}function T(e,t,r,o){o===void 0&&(o=1);try{var i=e.db.transaction(e.storeName,t);r(null,i)}catch(n){if(o>0&&(!e.db||n.name==="InvalidStateError"||n.name==="NotFoundError"))return m.resolve().then(function(){if(!e.db||n.name==="NotFoundError"&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),oe(e)}).then(function(){return w(e).then(function(){T(e,t,r,o-1)})}).catch(r);r(n)}}function G(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function fe(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=e[o];var i=U[r.name];i||(i=G(),U[r.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=g);var n=[];function f(){return m.resolve()}for(var u=0;u<i.forages.length;u++){var c=i.forages[u];c!==t&&n.push(c._initReady().catch(f))}var l=i.forages.slice(0);return m.all(n).then(function(){return r.db=i.db,ee(r)}).then(function(d){return r.db=d,a(r,t._defaultConfig.version)?oe(r):d}).then(function(d){r.db=i.db=d,t._dbInfo=r;for(var y=0;y<l.length;y++){var S=l[y];S!==t&&(S._dbInfo.db=r.db,S._dbInfo.version=r.version)}})}function ie(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.get(e);l.onsuccess=function(){var d=l.result;d===void 0&&(d=null),p(d)&&(d=v(d)),i(d)},l.onerror=function(){n(l.error)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ce(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.openCursor(),d=1;l.onsuccess=function(){var y=l.result;if(y){var S=y.value;p(S)&&(S=v(S));var x=e(S,y.key,d++);x!==void 0?i(x):y.continue()}else i()},l.onerror=function(){n(l.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function nr(e,t,r){var o=this;e=z(e);var i=new m(function(n,f){var u;o.ready().then(function(){return u=o._dbInfo,ae.call(t)==="[object Blob]"?O(u.db).then(function(c){return c?t:s(t)}):t}).then(function(c){T(o._dbInfo,h,function(l,d){if(l)return f(l);try{var y=d.objectStore(o._dbInfo.storeName);c===null&&(c=void 0);var S=y.put(c,e);d.oncomplete=function(){c===void 0&&(c=null),n(c)},d.onabort=d.onerror=function(){var x=S.error?S.error:S.transaction.error;f(x)}}catch(x){f(x)}})}).catch(f)});return _(i,r),i}function or(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,h,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.delete(e);u.oncomplete=function(){i()},u.onerror=function(){n(l.error)},u.onabort=function(){var d=l.error?l.error:l.transaction.error;n(d)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,h,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.clear();f.oncomplete=function(){o()},f.onabort=f.onerror=function(){var l=c.error?c.error:c.transaction.error;i(l)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function ar(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,re,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.count();c.onsuccess=function(){o(c.result)},c.onerror=function(){i(c.error)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function fr(e,t){var r=this,o=new m(function(i,n){if(e<0){i(null);return}r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=!1,d=c.openKeyCursor();d.onsuccess=function(){var y=d.result;if(!y){i(null);return}e===0||l?i(y.key):(l=!0,y.advance(e))},d.onerror=function(){n(d.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function ur(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,re,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.openKeyCursor(),l=[];c.onsuccess=function(){var d=c.result;if(!d){o(l);return}l.push(d.key),d.continue()},c.onerror=function(){i(c.error)}}catch(d){i(d)}})}).catch(i)});return _(r,e),r}function sr(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;if(!e.name)i=m.reject("Invalid arguments");else{var n=e.name===r.name&&o._dbInfo.db,f=n?m.resolve(o._dbInfo.db):ee(e).then(function(u){var c=U[e.name],l=c.forages;c.db=u;for(var d=0;d<l.length;d++)l[d]._dbInfo.db=u;return u});e.storeName?i=f.then(function(u){if(!!u.objectStoreNames.contains(e.storeName)){var c=u.version+1;V(e);var l=U[e.name],d=l.forages;u.close();for(var y=0;y<d.length;y++){var S=d[y];S._dbInfo.db=null,S._dbInfo.version=c}var x=new m(function(C,K){var W=M.open(e.name,c);W.onerror=function(q){var de=W.result;de.close(),K(q)},W.onupgradeneeded=function(){var q=W.result;q.deleteObjectStore(e.storeName)},W.onsuccess=function(){var q=W.result;q.close(),C(q)}});return x.then(function(C){l.db=C;for(var K=0;K<d.length;K++){var W=d[K];W._dbInfo.db=C,j(W._dbInfo)}}).catch(function(C){throw(Q(e,C)||m.resolve()).catch(function(){}),C})}}):i=f.then(function(u){V(e);var c=U[e.name],l=c.forages;u.close();for(var d=0;d<l.length;d++){var y=l[d];y._dbInfo.db=null}var S=new m(function(x,C){var K=M.deleteDatabase(e.name);K.onerror=function(){var W=K.result;W&&W.close(),C(K.error)},K.onblocked=function(){console.warn('dropInstance blocked for database "'+e.name+'" until all open connections are closed')},K.onsuccess=function(){var W=K.result;W&&W.close(),x(W)}});return S.then(function(x){c.db=x;for(var C=0;C<l.length;C++){var K=l[C];j(K._dbInfo)}}).catch(function(x){throw(Q(e,x)||m.resolve()).catch(function(){}),x})})}return _(i,t),i}var cr={_driver:"asyncStorage",_initStorage:fe,_support:H(),iterate:ce,getItem:ie,setItem:nr,removeItem:or,clear:ir,length:ar,key:fr,keys:ur,dropInstance:sr};function lr(){return typeof openDatabase=="function"}var te="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",dr="~~local_forage_type~",Be=/^~~local_forage_type~([^~]+)~/,he="__lfsc__:",be=he.length,_e="arbf",we="blob",xe="si08",Oe="ui08",Ce="uic8",Le="si16",Pe="si32",Me="ur16",Fe="ui32",Ue="fl32",Ye="fl64",ze=be+_e.length,We=Object.prototype.toString;function Ke(e){var t=e.length*.75,r=e.length,o,i=0,n,f,u,c;e[e.length-1]==="="&&(t--,e[e.length-2]==="="&&t--);var l=new ArrayBuffer(t),d=new Uint8Array(l);for(o=0;o<r;o+=4)n=te.indexOf(e[o]),f=te.indexOf(e[o+1]),u=te.indexOf(e[o+2]),c=te.indexOf(e[o+3]),d[i++]=n<<2|f>>4,d[i++]=(f&15)<<4|u>>2,d[i++]=(u&3)<<6|c&63;return l}function Ee(e){var t=new Uint8Array(e),r="",o;for(o=0;o<t.length;o+=3)r+=te[t[o]>>2],r+=te[(t[o]&3)<<4|t[o+1]>>4],r+=te[(t[o+1]&15)<<2|t[o+2]>>6],r+=te[t[o+2]&63];return t.length%3===2?r=r.substring(0,r.length-1)+"=":t.length%3===1&&(r=r.substring(0,r.length-2)+"=="),r}function vr(e,t){var r="";if(e&&(r=We.call(e)),e&&(r==="[object ArrayBuffer]"||e.buffer&&We.call(e.buffer)==="[object ArrayBuffer]")){var o,i=he;e instanceof ArrayBuffer?(o=e,i+=_e):(o=e.buffer,r==="[object Int8Array]"?i+=xe:r==="[object Uint8Array]"?i+=Oe:r==="[object Uint8ClampedArray]"?i+=Ce:r==="[object Int16Array]"?i+=Le:r==="[object Uint16Array]"?i+=Me:r==="[object Int32Array]"?i+=Pe:r==="[object Uint32Array]"?i+=Fe:r==="[object Float32Array]"?i+=Ue:r==="[object Float64Array]"?i+=Ye:t(new Error("Failed to get type for BinaryArray"))),t(i+Ee(o))}else if(r==="[object Blob]"){var n=new FileReader;n.onload=function(){var f=dr+e.type+"~"+Ee(this.result);t(he+we+f)},n.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(f){console.error("Couldn't convert value into a JSON string: ",e),t(null,f)}}function hr(e){if(e.substring(0,be)!==he)return JSON.parse(e);var t=e.substring(ze),r=e.substring(be,ze),o;if(r===we&&Be.test(t)){var i=t.match(Be);o=i[1],t=t.substring(i[0].length)}var n=Ke(t);switch(r){case _e:return n;case we:return $([n],{type:o});case xe:return new Int8Array(n);case Oe:return new Uint8Array(n);case Ce:return new Uint8ClampedArray(n);case Le:return new Int16Array(n);case Me:return new Uint16Array(n);case Pe:return new Int32Array(n);case Fe:return new Uint32Array(n);case Ue:return new Float32Array(n);case Ye:return new Float64Array(n);default:throw new Error("Unkown type: "+r)}}var Ie={serialize:vr,deserialize:hr,stringToBuffer:Ke,bufferToString:Ee};function He(e,t,r,o){e.executeSql("CREATE TABLE IF NOT EXISTS "+t.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],r,o)}function mr(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=typeof e[o]!="string"?e[o].toString():e[o];var i=new m(function(n,f){try{r.db=openDatabase(r.name,String(r.version),r.description,r.size)}catch(u){return f(u)}r.db.transaction(function(u){He(u,r,function(){t._dbInfo=r,n()},function(c,l){f(l)})},f)});return r.serializer=Ie,i}function ne(e,t,r,o,i,n){e.executeSql(r,o,i,function(f,u){u.code===u.SYNTAX_ERR?f.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[t.storeName],function(c,l){l.rows.length?n(c,u):He(c,t,function(){c.executeSql(r,o,i,n)},n)},n):n(f,u)},n)}function yr(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT * FROM "+f.storeName+" WHERE key = ? LIMIT 1",[e],function(c,l){var d=l.rows.length?l.rows.item(0).value:null;d&&(d=f.serializer.deserialize(d)),i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function pr(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT * FROM "+f.storeName,[],function(c,l){for(var d=l.rows,y=d.length,S=0;S<y;S++){var x=d.item(S),C=x.value;if(C&&(C=f.serializer.deserialize(C)),C=e(C,x.key,S+1),C!==void 0){i(C);return}}i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Ve(e,t,r,o){var i=this;e=z(e);var n=new m(function(f,u){i.ready().then(function(){t===void 0&&(t=null);var c=t,l=i._dbInfo;l.serializer.serialize(t,function(d,y){y?u(y):l.db.transaction(function(S){ne(S,l,"INSERT OR REPLACE INTO "+l.storeName+" (key, value) VALUES (?, ?)",[e,d],function(){f(c)},function(x,C){u(C)})},function(S){if(S.code===S.QUOTA_ERR){if(o>0){f(Ve.apply(i,[e,c,r,o-1]));return}u(S)}})})}).catch(u)});return _(n,r),n}function gr(e,t,r){return Ve.apply(this,[e,t,r,1])}function br(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"DELETE FROM "+f.storeName+" WHERE key = ?",[e],function(){i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function _r(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"DELETE FROM "+n.storeName,[],function(){o()},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function wr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"SELECT COUNT(key) as c FROM "+n.storeName,[],function(u,c){var l=c.rows.item(0).c;o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Er(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT key FROM "+f.storeName+" WHERE id = ? LIMIT 1",[e+1],function(c,l){var d=l.rows.length?l.rows.item(0).key:null;i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"SELECT key FROM "+n.storeName,[],function(u,c){for(var l=[],d=0;d<c.rows.length;d++)l.push(c.rows.item(d).key);o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Sr(e){return new m(function(t,r){e.transaction(function(o){o.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(i,n){for(var f=[],u=0;u<n.rows.length;u++)f.push(n.rows.item(u).name);t({db:e,storeNames:f})},function(i,n){r(n)})},function(o){r(o)})})}function Ar(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;return e.name?i=new m(function(n){var f;e.name===r.name?f=o._dbInfo.db:f=openDatabase(e.name,"","",0),e.storeName?n({db:f,storeNames:[e.storeName]}):n(Sr(f))}).then(function(n){return new m(function(f,u){n.db.transaction(function(c){function l(x){return new m(function(C,K){c.executeSql("DROP TABLE IF EXISTS "+x,[],function(){C()},function(W,q){K(q)})})}for(var d=[],y=0,S=n.storeNames.length;y<S;y++)d.push(l(n.storeNames[y]));m.all(d).then(function(){f()}).catch(function(x){u(x)})},function(c){u(c)})})}):i=m.reject("Invalid arguments"),_(i,t),i}var Rr={_driver:"webSQLStorage",_initStorage:mr,_support:lr(),iterate:pr,getItem:yr,setItem:gr,removeItem:br,clear:_r,length:wr,key:Er,keys:Ir,dropInstance:Ar};function Dr(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function Ge(e,t){var r=e.name+"/";return e.storeName!==t.storeName&&(r+=e.storeName+"/"),r}function Nr(){var e="_localforage_support_test";try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch{return!0}}function Tr(){return!Nr()||localStorage.length>0}function Br(e){var t=this,r={};if(e)for(var o in e)r[o]=e[o];return r.keyPrefix=Ge(e,t._defaultConfig),Tr()?(t._dbInfo=r,r.serializer=Ie,m.resolve()):m.reject()}function xr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo.keyPrefix,i=localStorage.length-1;i>=0;i--){var n=localStorage.key(i);n.indexOf(o)===0&&localStorage.removeItem(n)}});return _(r,e),r}function Or(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo,n=localStorage.getItem(i.keyPrefix+e);return n&&(n=i.serializer.deserialize(n)),n});return _(o,t),o}function Cr(e,t){var r=this,o=r.ready().then(function(){for(var i=r._dbInfo,n=i.keyPrefix,f=n.length,u=localStorage.length,c=1,l=0;l<u;l++){var d=localStorage.key(l);if(d.indexOf(n)===0){var y=localStorage.getItem(d);if(y&&(y=i.serializer.deserialize(y)),y=e(y,d.substring(f),c++),y!==void 0)return y}}});return _(o,t),o}function Lr(e,t){var r=this,o=r.ready().then(function(){var i=r._dbInfo,n;try{n=localStorage.key(e)}catch{n=null}return n&&(n=n.substring(i.keyPrefix.length)),n});return _(o,t),o}function Pr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo,i=localStorage.length,n=[],f=0;f<i;f++){var u=localStorage.key(f);u.indexOf(o.keyPrefix)===0&&n.push(u.substring(o.keyPrefix.length))}return n});return _(r,e),r}function Mr(e){var t=this,r=t.keys().then(function(o){return o.length});return _(r,e),r}function Fr(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo;localStorage.removeItem(i.keyPrefix+e)});return _(o,t),o}function Ur(e,t,r){var o=this;e=z(e);var i=o.ready().then(function(){t===void 0&&(t=null);var n=t;return new m(function(f,u){var c=o._dbInfo;c.serializer.serialize(t,function(l,d){if(d)u(d);else try{localStorage.setItem(c.keyPrefix+e,l),f(n)}catch(y){(y.name==="QuotaExceededError"||y.name==="NS_ERROR_DOM_QUOTA_REACHED")&&u(y),u(y)}})})});return _(i,r),i}function Yr(e,t){if(t=Z.apply(this,arguments),e=typeof e!="function"&&e||{},!e.name){var r=this.config();e.name=e.name||r.name,e.storeName=e.storeName||r.storeName}var o=this,i;return e.name?i=new m(function(n){e.storeName?n(Ge(e,o._defaultConfig)):n(e.name+"/")}).then(function(n){for(var f=localStorage.length-1;f>=0;f--){var u=localStorage.key(f);u.indexOf(n)===0&&localStorage.removeItem(u)}}):i=m.reject("Invalid arguments"),_(i,t),i}var zr={_driver:"localStorageWrapper",_initStorage:Br,_support:Dr(),iterate:Cr,getItem:Or,setItem:Ur,removeItem:Fr,clear:xr,length:Mr,key:Lr,keys:Pr,dropInstance:Yr},Wr=function(t,r){return t===r||typeof t=="number"&&typeof r=="number"&&isNaN(t)&&isNaN(r)},Kr=function(t,r){for(var o=t.length,i=0;i<o;){if(Wr(t[i],r))return!0;i++}return!1},je=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"},le={},Xe={},ue={INDEXEDDB:cr,WEBSQL:Rr,LOCALSTORAGE:zr},Hr=[ue.INDEXEDDB._driver,ue.WEBSQL._driver,ue.LOCALSTORAGE._driver],me=["dropInstance"],Se=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(me),Vr={description:"",driver:Hr.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Gr(e,t){e[t]=function(){var r=arguments;return e.ready().then(function(){return e[t].apply(e,r)})}}function Ae(){for(var e=1;e<arguments.length;e++){var t=arguments[e];if(t)for(var r in t)t.hasOwnProperty(r)&&(je(t[r])?arguments[0][r]=t[r].slice():arguments[0][r]=t[r])}return arguments[0]}var jr=function(){function e(t){Y(this,e);for(var r in ue)if(ue.hasOwnProperty(r)){var o=ue[r],i=o._driver;this[r]=i,le[i]||this.defineDriver(o)}this._defaultConfig=Ae({},Vr),this._config=Ae({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return e.prototype.config=function(r){if((typeof r>"u"?"undefined":P(r))==="object"){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var o in r){if(o==="storeName"&&(r[o]=r[o].replace(/\W/g,"_")),o==="version"&&typeof r[o]!="number")return new Error("Database version must be a number.");this._config[o]=r[o]}return"driver"in r&&r.driver?this.setDriver(this._config.driver):!0}else return typeof r=="string"?this._config[r]:this._config},e.prototype.defineDriver=function(r,o,i){var n=new m(function(f,u){try{var c=r._driver,l=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!r._driver){u(l);return}for(var d=Se.concat("_initStorage"),y=0,S=d.length;y<S;y++){var x=d[y],C=!Kr(me,x);if((C||r[x])&&typeof r[x]!="function"){u(l);return}}var K=function(){for(var de=function(Jr){return function(){var $r=new Error("Method "+Jr+" is not implemented by the current driver"),Qe=m.reject($r);return _(Qe,arguments[arguments.length-1]),Qe}},Re=0,Qr=me.length;Re<Qr;Re++){var De=me[Re];r[De]||(r[De]=de(De))}};K();var W=function(de){le[c]&&console.info("Redefining LocalForage driver: "+c),le[c]=r,Xe[c]=de,f()};"_support"in r?r._support&&typeof r._support=="function"?r._support().then(W,u):W(!!r._support):W(!0)}catch(q){u(q)}});return B(n,o,i),n},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(r,o,i){var n=le[r]?m.resolve(le[r]):m.reject(new Error("Driver not found."));return B(n,o,i),n},e.prototype.getSerializer=function(r){var o=m.resolve(Ie);return B(o,r),o},e.prototype.ready=function(r){var o=this,i=o._driverSet.then(function(){return o._ready===null&&(o._ready=o._initDriver()),o._ready});return B(i,r,r),i},e.prototype.setDriver=function(r,o,i){var n=this;je(r)||(r=[r]);var f=this._getSupportedDrivers(r);function u(){n._config.driver=n.driver()}function c(y){return n._extend(y),u(),n._ready=n._initStorage(n._config),n._ready}function l(y){return function(){var S=0;function x(){for(;S<y.length;){var C=y[S];return S++,n._dbInfo=null,n._ready=null,n.getDriver(C).then(c).catch(x)}u();var K=new Error("No available storage method found.");return n._driverSet=m.reject(K),n._driverSet}return x()}}var d=this._driverSet!==null?this._driverSet.catch(function(){return m.resolve()}):m.resolve();return this._driverSet=d.then(function(){var y=f[0];return n._dbInfo=null,n._ready=null,n.getDriver(y).then(function(S){n._driver=S._driver,u(),n._wrapLibraryMethodsWithReady(),n._initDriver=l(f)})}).catch(function(){u();var y=new Error("No available storage method found.");return n._driverSet=m.reject(y),n._driverSet}),B(this._driverSet,o,i),this._driverSet},e.prototype.supports=function(r){return!!Xe[r]},e.prototype._extend=function(r){Ae(this,r)},e.prototype._getSupportedDrivers=function(r){for(var o=[],i=0,n=r.length;i<n;i++){var f=r[i];this.supports(f)&&o.push(f)}return o},e.prototype._wrapLibraryMethodsWithReady=function(){for(var r=0,o=Se.length;r<o;r++)Gr(this,Se[r])},e.prototype.createInstance=function(r){return new e(r)},e}(),Xr=new jr;D.exports=Xr},{3:3}]},{},[4])(4)})});var rr=$e((ye,er)=>{(function(b,A){typeof ye=="object"&&typeof er<"u"?A(ye):typeof define=="function"&&define.amd?define("localforage-driver-memory",["exports"],A):A(b.LocalforageDriverMemory={})})(typeof self<"u"?self:ye,function(b){"use strict";var A="localforage-driver-memory";function R(a){var s=typeof Symbol=="function"&&a[Symbol.iterator],v=0;return s?s.call(a):{next:function(){return a&&v>=a.length&&(a=void 0),{value:a&&a[v++],done:!a}}}}function L(a,s){a=a||[],s=s||{};try{return new Blob(a,s)}catch(w){if(w.name!=="TypeError")throw w;for(var v=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,p=new v,g=0;g<a.length;g+=1)p.append(a[g]);return p.getBlob(s.type)}}var D=/^~~local_forage_type~([^~]+)~/,X=9,P=X+4,Y=Object.prototype.toString;function I(a){var s=a.length*.75,v=a.length;a[a.length-1]==="="&&(s--,a[a.length-2]==="="&&s--);for(var p=new ArrayBuffer(s),g=new Uint8Array(p),w=0,T=0;w<v;w+=4){var G="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w]),fe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+1]),ie="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+2]),ce="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+3]);g[T++]=G<<2|fe>>4,g[T++]=(fe&15)<<4|ie>>2,g[T++]=(ie&3)<<6|ce&63}return p}function M(a){for(var s=new Uint8Array(a),v="",p=0;p<s.length;p+=3)v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[p]>>2],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[p]&3)<<4|s[p+1]>>4],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[p+1]&15)<<2|s[p+2]>>6],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[p+2]&63];return s.length%3===2?v=v.substring(0,v.length-1)+"=":s.length%3===1&&(v=v.substring(0,v.length-2)+"=="),v}function H(a,s){var v="";if(a&&(v=Y.call(a)),a&&(v==="[object ArrayBuffer]"||a.buffer&&Y.call(a.buffer)==="[object ArrayBuffer]")){var p=void 0,g="__lfsc__:";a instanceof ArrayBuffer?(p=a,g+="arbf"):(p=a.buffer,v==="[object Int8Array]"?g+="si08":v==="[object Uint8Array]"?g+="ui08":v==="[object Uint8ClampedArray]"?g+="uic8":v==="[object Int16Array]"?g+="si16":v==="[object Uint16Array]"?g+="ur16":v==="[object Int32Array]"?g+="si32":v==="[object Uint32Array]"?g+="ui32":v==="[object Float32Array]"?g+="fl32":v==="[object Float64Array]"?g+="fl64":s(new Error("Failed to get type for BinaryArray"))),s(g+M(p))}else if(v==="[object Blob]"){var w=new FileReader;w.onload=function(){var T="~~local_forage_type~"+a.type+"~"+M(this.result);s("__lfsc__:blob"+T)},w.readAsArrayBuffer(a)}else try{s(JSON.stringify(a))}catch(T){console.error("Couldn't convert value into a JSON string: ",a),s(null,T)}}function $(a){if(a.substring(0,X)!=="__lfsc__:")return JSON.parse(a);var s=a.substring(P),v=a.substring(X,P),p;if(v==="blob"&&D.test(s)){var g=s.match(D);p=g[1],s=s.substring(g[0].length)}var w=I(s);switch(v){case"arbf":return w;case"blob":return L([w],{type:p});case"si08":return new Int8Array(w);case"ui08":return new Uint8Array(w);case"uic8":return new Uint8ClampedArray(w);case"si16":return new Int16Array(w);case"ur16":return new Uint16Array(w);case"si32":return new Int32Array(w);case"ui32":return new Uint32Array(w);case"fl32":return new Float32Array(w);case"fl64":return new Float64Array(w);default:throw new Error("Unkown type: "+v)}}function m(a){var s,v;if(a===null||typeof a!="object"||"isActiveClone"in a)return a;var p=a instanceof Date?new Date(a):a.constructor();try{for(var g=R(Object.keys(a)),w=g.next();!w.done;w=g.next()){var T=w.value;Object.prototype.hasOwnProperty.call(a,T)&&(a.isActiveClone=null,p[T]=m(a[T]),delete a.isActiveClone)}}catch(G){s={error:G}}finally{try{w&&!w.done&&(v=g.return)&&v.call(g)}finally{if(s)throw s.error}}return p}function _(a,s){return(a.name||s.name)+"/"+(a.storeName||s.storeName)+"/"}function B(a,s){s&&a.then(function(v){s(null,v)},function(v){s(v)})}function z(){for(var a=[],s=0;s<arguments.length;s++)a[s]=arguments[s];if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}function Z(a,s){var v=this;if(s=z.apply(this,arguments),a=typeof a!="function"&&a||{},!a.name){var p=this.config();a.name=a.name||p.name,a.storeName=a.storeName||p.storeName}var g;return a.name?g=new Promise(function(w){a.storeName?w(_(a,v._defaultConfig)):w(a.name+"/")}):g=Promise.reject("Invalid arguments"),{promise:g,callback:s}}function F(a){return typeof a!="string"&&(console.warn(a+" used as a key, but it is not a string."),a=String(a)),a}var k={bufferToString:M,deserialize:$,serialize:H,stringToBuffer:I},U={},ae=function(){function a(s){this.kp=s,this.data={}}return a.resolve=function(s){return U[s]||(U[s]=new a(s)),U[s]},a.prototype.clear=function(){this.data={}},a.prototype.drop=function(){this.clear(),delete U[this.kp]},a.prototype.get=function(s){return this.data[s]},a.prototype.key=function(s){return this.keys()[s]},a.prototype.keys=function(){return Object.keys(this.data)},a.prototype.rm=function(s){delete this.data[s]},a.prototype.set=function(s,v){this.data[s]=v},a}();function re(a){var s=a?m(a):{},v=_(s,this._defaultConfig),p=ae.resolve(v);return this._dbInfo=s,this._dbInfo.serializer=k,this._dbInfo.keyPrefix=v,this._dbInfo.mStore=p,Promise.resolve()}function h(a){var s=this,v=this.ready().then(function(){s._dbInfo.mStore.clear()});return B(v,a),v}function N(a,s){var v=Z.apply(this,arguments),p=v.promise,g=v.callback,w=p.then(function(T){ae.resolve(T).drop()});return B(w,g),p}function E(a,s){var v=this;a=F(a);var p=this.ready().then(function(){var g=v._dbInfo.mStore.get(a);return g==null?null:v._dbInfo.serializer.deserialize(g)});return B(p,s),p}function O(a,s){var v=this,p=this.ready().then(function(){for(var g=v._dbInfo.mStore,w=g.keys(),T=0;T<w.length;T++){var G=g.get(w[T]);if(G&&(G=v._dbInfo.serializer.deserialize(G)),G=a(G,w[T],T+1),G!==void 0)return G}});return B(p,s),p}function V(a,s){var v=this,p=this.ready().then(function(){var g;try{g=v._dbInfo.mStore.key(a),g===void 0&&(g=null)}catch{g=null}return g});return B(p,s),p}function j(a){var s=this,v=this.ready().then(function(){return s._dbInfo.mStore.keys()});return B(v,a),v}function Q(a){var s=this.keys().then(function(v){return v.length});return B(s,a),s}function J(a,s){var v=this;a=F(a);var p=this.ready().then(function(){v._dbInfo.mStore.rm(a)});return B(p,s),p}function ee(a,s,v){var p=this;a=F(a);var g=this.ready().then(function(){s===void 0&&(s=null);var w=s;return new Promise(function(T,G){p._dbInfo.serializer.serialize(s,function(fe,ie){if(ie)G(ie);else try{p._dbInfo.mStore.set(a,fe),T(w)}catch(ce){G(ce)}})})});return B(g,v),g}var oe=!0;b._support=oe,b._driver=A,b._initStorage=re,b.clear=h,b.dropInstance=N,b.getItem=E,b.iterate=O,b.key=V,b.keys=j,b.length=Q,b.removeItem=J,b.setItem=ee,Object.defineProperty(b,"__esModule",{value:!0})})});var ge=Ze(ke()),Te=Ze(rr());import{SDKBase as st,createSDK as ct}from"@magic-sdk/provider";import{ViewController as nt,createDuplicateIframeWarning as ot,createURL as tr,createModalNotReadyError as it}from"@magic-sdk/provider";var at={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"};function ft(b){for(let[A,R]of Object.entries(at))b.style[A]=R}function ut(b){let A=[].slice.call(document.querySelectorAll(".magic-iframe"));return Boolean(A.find(R=>R.src.includes(b)))}var pe=class extends nt{constructor(){super(...arguments);this.activeElement=null}init(){this.test="hello",this.iframe=new Promise(R=>{let L=()=>{if(ut(encodeURIComponent(this.parameters)))ot().log();else{let D=document.createElement("iframe");D.classList.add("magic-iframe"),D.dataset.magicIframeLabel=tr(this.endpoint).host,D.title="Secure Modal",D.src=tr(`/send?params=${encodeURIComponent(this.parameters)}`,this.endpoint).href,ft(D),document.body.appendChild(D),R(D)}};["loaded","interactive","complete"].includes(document.readyState)?L():window.addEventListener("load",L,!1)}),window.addEventListener("message",R=>{var L;if(R.origin===this.endpoint&&R.data&&R.data.msgType&&this.messageHandlers.size){R.data.response=(L=R.data.response)!=null?L:{};for(let D of this.messageHandlers.values())D(R)}})}showOverlay(){return se(this,null,function*(){let R=yield this.iframe;R.style.display="block",this.activeElement=document.activeElement,R.focus()})}hideOverlay(){return se(this,null,function*(){var L;let R=yield this.iframe;R.style.display="none",(L=this.activeElement)!=null&&L.focus&&this.activeElement.focus(),this.activeElement=null})}_post(R){return se(this,null,function*(){let L=yield this.iframe;if(L&&L.contentWindow)L.contentWindow.postMessage(R,this.endpoint);else throw it()})}};export*from"@magic-sdk/commons";var bt=ct(st,{platform:"web",sdkName:"magic-sdk",version:"13.3.0",defaultEndpoint:"https://auth.magic.link/",ViewController:pe,configureStorage:()=>se(void 0,null,function*(){let b=ge.default.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return yield b.defineDriver(Te),yield b.setDriver([ge.default.INDEXEDDB,ge.default.LOCALSTORAGE,Te._driver]),b})});export{bt as Magic};
1
+ var Zr=Object.create;var Je=Object.defineProperty;var qr=Object.getOwnPropertyDescriptor;var kr=Object.getOwnPropertyNames;var et=Object.getPrototypeOf,rt=Object.prototype.hasOwnProperty;var ve=(b=>typeof require!="undefined"?require:typeof Proxy!="undefined"?new Proxy(b,{get:(A,R)=>(typeof require!="undefined"?require:A)[R]}):b)(function(b){if(typeof require!="undefined")return require.apply(this,arguments);throw new Error('Dynamic require of "'+b+'" is not supported')});var $e=(b,A)=>()=>(A||b((A={exports:{}}).exports,A),A.exports);var tt=(b,A,R,L)=>{if(A&&typeof A=="object"||typeof A=="function")for(let D of kr(A))!rt.call(b,D)&&D!==R&&Je(b,D,{get:()=>A[D],enumerable:!(L=qr(A,D))||L.enumerable});return b};var Ze=(b,A,R)=>(R=b!=null?Zr(et(b)):{},tt(A||!b||!b.__esModule?Je(R,"default",{value:b,enumerable:!0}):R,b));var se=(b,A,R)=>new Promise((L,D)=>{var X=I=>{try{Y(R.next(I))}catch(M){D(M)}},P=I=>{try{Y(R.throw(I))}catch(M){D(M)}},Y=I=>I.done?L(I.value):Promise.resolve(I.value).then(X,P);Y((R=R.apply(b,A)).next())});var ke=$e((qe,Ne)=>{(function(b){if(typeof qe=="object"&&typeof Ne<"u")Ne.exports=b();else if(typeof define=="function"&&define.amd)define([],b);else{var A;typeof window<"u"?A=window:typeof global<"u"?A=global:typeof self<"u"?A=self:A=this,A.localforage=b()}})(function(){var b,A,R;return function L(D,X,P){function Y(H,$){if(!X[H]){if(!D[H]){var m=typeof ve=="function"&&ve;if(!$&&m)return m(H,!0);if(I)return I(H,!0);var _=new Error("Cannot find module '"+H+"'");throw _.code="MODULE_NOT_FOUND",_}var B=X[H]={exports:{}};D[H][0].call(B.exports,function(z){var Z=D[H][1][z];return Y(Z||z)},B,B.exports,L,D,X,P)}return X[H].exports}for(var I=typeof ve=="function"&&ve,M=0;M<P.length;M++)Y(P[M]);return Y}({1:[function(L,D,X){(function(P){"use strict";var Y=P.MutationObserver||P.WebKitMutationObserver,I;if(Y){var M=0,H=new Y(z),$=P.document.createTextNode("");H.observe($,{characterData:!0}),I=function(){$.data=M=++M%2}}else if(!P.setImmediate&&typeof P.MessageChannel<"u"){var m=new P.MessageChannel;m.port1.onmessage=z,I=function(){m.port2.postMessage(0)}}else"document"in P&&"onreadystatechange"in P.document.createElement("script")?I=function(){var F=P.document.createElement("script");F.onreadystatechange=function(){z(),F.onreadystatechange=null,F.parentNode.removeChild(F),F=null},P.document.documentElement.appendChild(F)}:I=function(){setTimeout(z,0)};var _,B=[];function z(){_=!0;for(var F,k,U=B.length;U;){for(k=B,B=[],F=-1;++F<U;)k[F]();U=B.length}_=!1}D.exports=Z;function Z(F){B.push(F)===1&&!_&&I()}}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{}],2:[function(L,D,X){"use strict";var P=L(1);function Y(){}var I={},M=["REJECTED"],H=["FULFILLED"],$=["PENDING"];D.exports=m;function m(h){if(typeof h!="function")throw new TypeError("resolver must be a function");this.state=$,this.queue=[],this.outcome=void 0,h!==Y&&Z(this,h)}m.prototype.catch=function(h){return this.then(null,h)},m.prototype.then=function(h,N){if(typeof h!="function"&&this.state===H||typeof N!="function"&&this.state===M)return this;var E=new this.constructor(Y);if(this.state!==$){var O=this.state===H?h:N;B(E,O,this.outcome)}else this.queue.push(new _(E,h,N));return E};function _(h,N,E){this.promise=h,typeof N=="function"&&(this.onFulfilled=N,this.callFulfilled=this.otherCallFulfilled),typeof E=="function"&&(this.onRejected=E,this.callRejected=this.otherCallRejected)}_.prototype.callFulfilled=function(h){I.resolve(this.promise,h)},_.prototype.otherCallFulfilled=function(h){B(this.promise,this.onFulfilled,h)},_.prototype.callRejected=function(h){I.reject(this.promise,h)},_.prototype.otherCallRejected=function(h){B(this.promise,this.onRejected,h)};function B(h,N,E){P(function(){var O;try{O=N(E)}catch(V){return I.reject(h,V)}O===h?I.reject(h,new TypeError("Cannot resolve promise with itself")):I.resolve(h,O)})}I.resolve=function(h,N){var E=F(z,N);if(E.status==="error")return I.reject(h,E.value);var O=E.value;if(O)Z(h,O);else{h.state=H,h.outcome=N;for(var V=-1,j=h.queue.length;++V<j;)h.queue[V].callFulfilled(N)}return h},I.reject=function(h,N){h.state=M,h.outcome=N;for(var E=-1,O=h.queue.length;++E<O;)h.queue[E].callRejected(N);return h};function z(h){var N=h&&h.then;if(h&&(typeof h=="object"||typeof h=="function")&&typeof N=="function")return function(){N.apply(h,arguments)}}function Z(h,N){var E=!1;function O(J){E||(E=!0,I.reject(h,J))}function V(J){E||(E=!0,I.resolve(h,J))}function j(){N(V,O)}var Q=F(j);Q.status==="error"&&O(Q.value)}function F(h,N){var E={};try{E.value=h(N),E.status="success"}catch(O){E.status="error",E.value=O}return E}m.resolve=k;function k(h){return h instanceof this?h:I.resolve(new this(Y),h)}m.reject=U;function U(h){var N=new this(Y);return I.reject(N,h)}m.all=ae;function ae(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var E=h.length,O=!1;if(!E)return this.resolve([]);for(var V=new Array(E),j=0,Q=-1,J=new this(Y);++Q<E;)ee(h[Q],Q);return J;function ee(oe,a){N.resolve(oe).then(s,function(v){O||(O=!0,I.reject(J,v))});function s(v){V[a]=v,++j===E&&!O&&(O=!0,I.resolve(J,V))}}}m.race=re;function re(h){var N=this;if(Object.prototype.toString.call(h)!=="[object Array]")return this.reject(new TypeError("must be an array"));var E=h.length,O=!1;if(!E)return this.resolve([]);for(var V=-1,j=new this(Y);++V<E;)Q(h[V]);return j;function Q(J){N.resolve(J).then(function(ee){O||(O=!0,I.resolve(j,ee))},function(ee){O||(O=!0,I.reject(j,ee))})}}},{1:1}],3:[function(L,D,X){(function(P){"use strict";typeof P.Promise!="function"&&(P.Promise=L(2))}).call(this,typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{})},{2:2}],4:[function(L,D,X){"use strict";var P=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function Y(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function I(){try{if(typeof indexedDB<"u")return indexedDB;if(typeof webkitIndexedDB<"u")return webkitIndexedDB;if(typeof mozIndexedDB<"u")return mozIndexedDB;if(typeof OIndexedDB<"u")return OIndexedDB;if(typeof msIndexedDB<"u")return msIndexedDB}catch{return}}var M=I();function H(){try{if(!M||!M.open)return!1;var e=typeof openDatabase<"u"&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t=typeof fetch=="function"&&fetch.toString().indexOf("[native code")!==-1;return(!e||t)&&typeof indexedDB<"u"&&typeof IDBKeyRange<"u"}catch{return!1}}function $(e,t){e=e||[],t=t||{};try{return new Blob(e,t)}catch(n){if(n.name!=="TypeError")throw n;for(var r=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,o=new r,i=0;i<e.length;i+=1)o.append(e[i]);return o.getBlob(t.type)}}typeof Promise>"u"&&L(3);var m=Promise;function _(e,t){t&&e.then(function(r){t(null,r)},function(r){t(r)})}function B(e,t,r){typeof t=="function"&&e.then(t),typeof r=="function"&&e.catch(r)}function z(e){return typeof e!="string"&&(console.warn(e+" used as a key, but it is not a string."),e=String(e)),e}function Z(){if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}var F="local-forage-detect-blob-support",k=void 0,U={},ae=Object.prototype.toString,re="readonly",h="readwrite";function N(e){for(var t=e.length,r=new ArrayBuffer(t),o=new Uint8Array(r),i=0;i<t;i++)o[i]=e.charCodeAt(i);return r}function E(e){return new m(function(t){var r=e.transaction(F,h),o=$([""]);r.objectStore(F).put(o,"key"),r.onabort=function(i){i.preventDefault(),i.stopPropagation(),t(!1)},r.oncomplete=function(){var i=navigator.userAgent.match(/Chrome\/(\d+)/),n=navigator.userAgent.match(/Edge\//);t(n||!i||parseInt(i[1],10)>=43)}}).catch(function(){return!1})}function O(e){return typeof k=="boolean"?m.resolve(k):E(e).then(function(t){return k=t,k})}function V(e){var t=U[e.name],r={};r.promise=new m(function(o,i){r.resolve=o,r.reject=i}),t.deferredOperations.push(r),t.dbReady?t.dbReady=t.dbReady.then(function(){return r.promise}):t.dbReady=r.promise}function j(e){var t=U[e.name],r=t.deferredOperations.pop();if(r)return r.resolve(),r.promise}function Q(e,t){var r=U[e.name],o=r.deferredOperations.pop();if(o)return o.reject(t),o.promise}function J(e,t){return new m(function(r,o){if(U[e.name]=U[e.name]||G(),e.db)if(t)V(e),e.db.close();else return r(e.db);var i=[e.name];t&&i.push(e.version);var n=M.open.apply(M,i);t&&(n.onupgradeneeded=function(f){var u=n.result;try{u.createObjectStore(e.storeName),f.oldVersion<=1&&u.createObjectStore(F)}catch(c){if(c.name==="ConstraintError")console.warn('The database "'+e.name+'" has been upgraded from version '+f.oldVersion+" to version "+f.newVersion+', but the storage "'+e.storeName+'" already exists.');else throw c}}),n.onerror=function(f){f.preventDefault(),o(n.error)},n.onsuccess=function(){var f=n.result;f.onversionchange=function(u){u.target.close()},r(f),j(e)}})}function ee(e){return J(e,!1)}function oe(e){return J(e,!0)}function a(e,t){if(!e.db)return!0;var r=!e.db.objectStoreNames.contains(e.storeName),o=e.version<e.db.version,i=e.version>e.db.version;if(o&&(e.version!==t&&console.warn('The database "'+e.name+`" can't be downgraded from version `+e.db.version+" to version "+e.version+"."),e.version=e.db.version),i||r){if(r){var n=e.db.version+1;n>e.version&&(e.version=n)}return!0}return!1}function s(e){return new m(function(t,r){var o=new FileReader;o.onerror=r,o.onloadend=function(i){var n=btoa(i.target.result||"");t({__local_forage_encoded_blob:!0,data:n,type:e.type})},o.readAsBinaryString(e)})}function v(e){var t=N(atob(e.data));return $([t],{type:e.type})}function p(e){return e&&e.__local_forage_encoded_blob}function g(e){var t=this,r=t._initReady().then(function(){var o=U[t._dbInfo.name];if(o&&o.dbReady)return o.dbReady});return B(r,e,e),r}function w(e){V(e);for(var t=U[e.name],r=t.forages,o=0;o<r.length;o++){var i=r[o];i._dbInfo.db&&(i._dbInfo.db.close(),i._dbInfo.db=null)}return e.db=null,ee(e).then(function(n){return e.db=n,a(e)?oe(e):n}).then(function(n){e.db=t.db=n;for(var f=0;f<r.length;f++)r[f]._dbInfo.db=n}).catch(function(n){throw Q(e,n),n})}function T(e,t,r,o){o===void 0&&(o=1);try{var i=e.db.transaction(e.storeName,t);r(null,i)}catch(n){if(o>0&&(!e.db||n.name==="InvalidStateError"||n.name==="NotFoundError"))return m.resolve().then(function(){if(!e.db||n.name==="NotFoundError"&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),oe(e)}).then(function(){return w(e).then(function(){T(e,t,r,o-1)})}).catch(r);r(n)}}function G(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function fe(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=e[o];var i=U[r.name];i||(i=G(),U[r.name]=i),i.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=g);var n=[];function f(){return m.resolve()}for(var u=0;u<i.forages.length;u++){var c=i.forages[u];c!==t&&n.push(c._initReady().catch(f))}var l=i.forages.slice(0);return m.all(n).then(function(){return r.db=i.db,ee(r)}).then(function(d){return r.db=d,a(r,t._defaultConfig.version)?oe(r):d}).then(function(d){r.db=i.db=d,t._dbInfo=r;for(var y=0;y<l.length;y++){var S=l[y];S!==t&&(S._dbInfo.db=r.db,S._dbInfo.version=r.version)}})}function ie(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.get(e);l.onsuccess=function(){var d=l.result;d===void 0&&(d=null),p(d)&&(d=v(d)),i(d)},l.onerror=function(){n(l.error)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ce(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.openCursor(),d=1;l.onsuccess=function(){var y=l.result;if(y){var S=y.value;p(S)&&(S=v(S));var x=e(S,y.key,d++);x!==void 0?i(x):y.continue()}else i()},l.onerror=function(){n(l.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function nr(e,t,r){var o=this;e=z(e);var i=new m(function(n,f){var u;o.ready().then(function(){return u=o._dbInfo,ae.call(t)==="[object Blob]"?O(u.db).then(function(c){return c?t:s(t)}):t}).then(function(c){T(o._dbInfo,h,function(l,d){if(l)return f(l);try{var y=d.objectStore(o._dbInfo.storeName);c===null&&(c=void 0);var S=y.put(c,e);d.oncomplete=function(){c===void 0&&(c=null),n(c)},d.onabort=d.onerror=function(){var x=S.error?S.error:S.transaction.error;f(x)}}catch(x){f(x)}})}).catch(f)});return _(i,r),i}function or(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){T(r._dbInfo,h,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=c.delete(e);u.oncomplete=function(){i()},u.onerror=function(){n(l.error)},u.onabort=function(){var d=l.error?l.error:l.transaction.error;n(d)}}catch(d){n(d)}})}).catch(n)});return _(o,t),o}function ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,h,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.clear();f.oncomplete=function(){o()},f.onabort=f.onerror=function(){var l=c.error?c.error:c.transaction.error;i(l)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function ar(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,re,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.count();c.onsuccess=function(){o(c.result)},c.onerror=function(){i(c.error)}}catch(l){i(l)}})}).catch(i)});return _(r,e),r}function fr(e,t){var r=this,o=new m(function(i,n){if(e<0){i(null);return}r.ready().then(function(){T(r._dbInfo,re,function(f,u){if(f)return n(f);try{var c=u.objectStore(r._dbInfo.storeName),l=!1,d=c.openKeyCursor();d.onsuccess=function(){var y=d.result;if(!y){i(null);return}e===0||l?i(y.key):(l=!0,y.advance(e))},d.onerror=function(){n(d.error)}}catch(y){n(y)}})}).catch(n)});return _(o,t),o}function ur(e){var t=this,r=new m(function(o,i){t.ready().then(function(){T(t._dbInfo,re,function(n,f){if(n)return i(n);try{var u=f.objectStore(t._dbInfo.storeName),c=u.openKeyCursor(),l=[];c.onsuccess=function(){var d=c.result;if(!d){o(l);return}l.push(d.key),d.continue()},c.onerror=function(){i(c.error)}}catch(d){i(d)}})}).catch(i)});return _(r,e),r}function sr(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;if(!e.name)i=m.reject("Invalid arguments");else{var n=e.name===r.name&&o._dbInfo.db,f=n?m.resolve(o._dbInfo.db):ee(e).then(function(u){var c=U[e.name],l=c.forages;c.db=u;for(var d=0;d<l.length;d++)l[d]._dbInfo.db=u;return u});e.storeName?i=f.then(function(u){if(!!u.objectStoreNames.contains(e.storeName)){var c=u.version+1;V(e);var l=U[e.name],d=l.forages;u.close();for(var y=0;y<d.length;y++){var S=d[y];S._dbInfo.db=null,S._dbInfo.version=c}var x=new m(function(C,K){var W=M.open(e.name,c);W.onerror=function(q){var de=W.result;de.close(),K(q)},W.onupgradeneeded=function(){var q=W.result;q.deleteObjectStore(e.storeName)},W.onsuccess=function(){var q=W.result;q.close(),C(q)}});return x.then(function(C){l.db=C;for(var K=0;K<d.length;K++){var W=d[K];W._dbInfo.db=C,j(W._dbInfo)}}).catch(function(C){throw(Q(e,C)||m.resolve()).catch(function(){}),C})}}):i=f.then(function(u){V(e);var c=U[e.name],l=c.forages;u.close();for(var d=0;d<l.length;d++){var y=l[d];y._dbInfo.db=null}var S=new m(function(x,C){var K=M.deleteDatabase(e.name);K.onerror=function(){var W=K.result;W&&W.close(),C(K.error)},K.onblocked=function(){console.warn('dropInstance blocked for database "'+e.name+'" until all open connections are closed')},K.onsuccess=function(){var W=K.result;W&&W.close(),x(W)}});return S.then(function(x){c.db=x;for(var C=0;C<l.length;C++){var K=l[C];j(K._dbInfo)}}).catch(function(x){throw(Q(e,x)||m.resolve()).catch(function(){}),x})})}return _(i,t),i}var cr={_driver:"asyncStorage",_initStorage:fe,_support:H(),iterate:ce,getItem:ie,setItem:nr,removeItem:or,clear:ir,length:ar,key:fr,keys:ur,dropInstance:sr};function lr(){return typeof openDatabase=="function"}var te="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",dr="~~local_forage_type~",Be=/^~~local_forage_type~([^~]+)~/,he="__lfsc__:",be=he.length,_e="arbf",we="blob",xe="si08",Oe="ui08",Ce="uic8",Le="si16",Pe="si32",Me="ur16",Fe="ui32",Ue="fl32",Ye="fl64",ze=be+_e.length,We=Object.prototype.toString;function Ke(e){var t=e.length*.75,r=e.length,o,i=0,n,f,u,c;e[e.length-1]==="="&&(t--,e[e.length-2]==="="&&t--);var l=new ArrayBuffer(t),d=new Uint8Array(l);for(o=0;o<r;o+=4)n=te.indexOf(e[o]),f=te.indexOf(e[o+1]),u=te.indexOf(e[o+2]),c=te.indexOf(e[o+3]),d[i++]=n<<2|f>>4,d[i++]=(f&15)<<4|u>>2,d[i++]=(u&3)<<6|c&63;return l}function Ee(e){var t=new Uint8Array(e),r="",o;for(o=0;o<t.length;o+=3)r+=te[t[o]>>2],r+=te[(t[o]&3)<<4|t[o+1]>>4],r+=te[(t[o+1]&15)<<2|t[o+2]>>6],r+=te[t[o+2]&63];return t.length%3===2?r=r.substring(0,r.length-1)+"=":t.length%3===1&&(r=r.substring(0,r.length-2)+"=="),r}function vr(e,t){var r="";if(e&&(r=We.call(e)),e&&(r==="[object ArrayBuffer]"||e.buffer&&We.call(e.buffer)==="[object ArrayBuffer]")){var o,i=he;e instanceof ArrayBuffer?(o=e,i+=_e):(o=e.buffer,r==="[object Int8Array]"?i+=xe:r==="[object Uint8Array]"?i+=Oe:r==="[object Uint8ClampedArray]"?i+=Ce:r==="[object Int16Array]"?i+=Le:r==="[object Uint16Array]"?i+=Me:r==="[object Int32Array]"?i+=Pe:r==="[object Uint32Array]"?i+=Fe:r==="[object Float32Array]"?i+=Ue:r==="[object Float64Array]"?i+=Ye:t(new Error("Failed to get type for BinaryArray"))),t(i+Ee(o))}else if(r==="[object Blob]"){var n=new FileReader;n.onload=function(){var f=dr+e.type+"~"+Ee(this.result);t(he+we+f)},n.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(f){console.error("Couldn't convert value into a JSON string: ",e),t(null,f)}}function hr(e){if(e.substring(0,be)!==he)return JSON.parse(e);var t=e.substring(ze),r=e.substring(be,ze),o;if(r===we&&Be.test(t)){var i=t.match(Be);o=i[1],t=t.substring(i[0].length)}var n=Ke(t);switch(r){case _e:return n;case we:return $([n],{type:o});case xe:return new Int8Array(n);case Oe:return new Uint8Array(n);case Ce:return new Uint8ClampedArray(n);case Le:return new Int16Array(n);case Me:return new Uint16Array(n);case Pe:return new Int32Array(n);case Fe:return new Uint32Array(n);case Ue:return new Float32Array(n);case Ye:return new Float64Array(n);default:throw new Error("Unkown type: "+r)}}var Ie={serialize:vr,deserialize:hr,stringToBuffer:Ke,bufferToString:Ee};function He(e,t,r,o){e.executeSql("CREATE TABLE IF NOT EXISTS "+t.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],r,o)}function mr(e){var t=this,r={db:null};if(e)for(var o in e)r[o]=typeof e[o]!="string"?e[o].toString():e[o];var i=new m(function(n,f){try{r.db=openDatabase(r.name,String(r.version),r.description,r.size)}catch(u){return f(u)}r.db.transaction(function(u){He(u,r,function(){t._dbInfo=r,n()},function(c,l){f(l)})},f)});return r.serializer=Ie,i}function ne(e,t,r,o,i,n){e.executeSql(r,o,i,function(f,u){u.code===u.SYNTAX_ERR?f.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[t.storeName],function(c,l){l.rows.length?n(c,u):He(c,t,function(){c.executeSql(r,o,i,n)},n)},n):n(f,u)},n)}function yr(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT * FROM "+f.storeName+" WHERE key = ? LIMIT 1",[e],function(c,l){var d=l.rows.length?l.rows.item(0).value:null;d&&(d=f.serializer.deserialize(d)),i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function pr(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT * FROM "+f.storeName,[],function(c,l){for(var d=l.rows,y=d.length,S=0;S<y;S++){var x=d.item(S),C=x.value;if(C&&(C=f.serializer.deserialize(C)),C=e(C,x.key,S+1),C!==void 0){i(C);return}}i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Ve(e,t,r,o){var i=this;e=z(e);var n=new m(function(f,u){i.ready().then(function(){t===void 0&&(t=null);var c=t,l=i._dbInfo;l.serializer.serialize(t,function(d,y){y?u(y):l.db.transaction(function(S){ne(S,l,"INSERT OR REPLACE INTO "+l.storeName+" (key, value) VALUES (?, ?)",[e,d],function(){f(c)},function(x,C){u(C)})},function(S){if(S.code===S.QUOTA_ERR){if(o>0){f(Ve.apply(i,[e,c,r,o-1]));return}u(S)}})})}).catch(u)});return _(n,r),n}function gr(e,t,r){return Ve.apply(this,[e,t,r,1])}function br(e,t){var r=this;e=z(e);var o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"DELETE FROM "+f.storeName+" WHERE key = ?",[e],function(){i()},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function _r(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"DELETE FROM "+n.storeName,[],function(){o()},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function wr(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"SELECT COUNT(key) as c FROM "+n.storeName,[],function(u,c){var l=c.rows.item(0).c;o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Er(e,t){var r=this,o=new m(function(i,n){r.ready().then(function(){var f=r._dbInfo;f.db.transaction(function(u){ne(u,f,"SELECT key FROM "+f.storeName+" WHERE id = ? LIMIT 1",[e+1],function(c,l){var d=l.rows.length?l.rows.item(0).key:null;i(d)},function(c,l){n(l)})})}).catch(n)});return _(o,t),o}function Ir(e){var t=this,r=new m(function(o,i){t.ready().then(function(){var n=t._dbInfo;n.db.transaction(function(f){ne(f,n,"SELECT key FROM "+n.storeName,[],function(u,c){for(var l=[],d=0;d<c.rows.length;d++)l.push(c.rows.item(d).key);o(l)},function(u,c){i(c)})})}).catch(i)});return _(r,e),r}function Sr(e){return new m(function(t,r){e.transaction(function(o){o.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],function(i,n){for(var f=[],u=0;u<n.rows.length;u++)f.push(n.rows.item(u).name);t({db:e,storeNames:f})},function(i,n){r(n)})},function(o){r(o)})})}function Ar(e,t){t=Z.apply(this,arguments);var r=this.config();e=typeof e!="function"&&e||{},e.name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName);var o=this,i;return e.name?i=new m(function(n){var f;e.name===r.name?f=o._dbInfo.db:f=openDatabase(e.name,"","",0),e.storeName?n({db:f,storeNames:[e.storeName]}):n(Sr(f))}).then(function(n){return new m(function(f,u){n.db.transaction(function(c){function l(x){return new m(function(C,K){c.executeSql("DROP TABLE IF EXISTS "+x,[],function(){C()},function(W,q){K(q)})})}for(var d=[],y=0,S=n.storeNames.length;y<S;y++)d.push(l(n.storeNames[y]));m.all(d).then(function(){f()}).catch(function(x){u(x)})},function(c){u(c)})})}):i=m.reject("Invalid arguments"),_(i,t),i}var Rr={_driver:"webSQLStorage",_initStorage:mr,_support:lr(),iterate:pr,getItem:yr,setItem:gr,removeItem:br,clear:_r,length:wr,key:Er,keys:Ir,dropInstance:Ar};function Dr(){try{return typeof localStorage<"u"&&"setItem"in localStorage&&!!localStorage.setItem}catch{return!1}}function Ge(e,t){var r=e.name+"/";return e.storeName!==t.storeName&&(r+=e.storeName+"/"),r}function Nr(){var e="_localforage_support_test";try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch{return!0}}function Tr(){return!Nr()||localStorage.length>0}function Br(e){var t=this,r={};if(e)for(var o in e)r[o]=e[o];return r.keyPrefix=Ge(e,t._defaultConfig),Tr()?(t._dbInfo=r,r.serializer=Ie,m.resolve()):m.reject()}function xr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo.keyPrefix,i=localStorage.length-1;i>=0;i--){var n=localStorage.key(i);n.indexOf(o)===0&&localStorage.removeItem(n)}});return _(r,e),r}function Or(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo,n=localStorage.getItem(i.keyPrefix+e);return n&&(n=i.serializer.deserialize(n)),n});return _(o,t),o}function Cr(e,t){var r=this,o=r.ready().then(function(){for(var i=r._dbInfo,n=i.keyPrefix,f=n.length,u=localStorage.length,c=1,l=0;l<u;l++){var d=localStorage.key(l);if(d.indexOf(n)===0){var y=localStorage.getItem(d);if(y&&(y=i.serializer.deserialize(y)),y=e(y,d.substring(f),c++),y!==void 0)return y}}});return _(o,t),o}function Lr(e,t){var r=this,o=r.ready().then(function(){var i=r._dbInfo,n;try{n=localStorage.key(e)}catch{n=null}return n&&(n=n.substring(i.keyPrefix.length)),n});return _(o,t),o}function Pr(e){var t=this,r=t.ready().then(function(){for(var o=t._dbInfo,i=localStorage.length,n=[],f=0;f<i;f++){var u=localStorage.key(f);u.indexOf(o.keyPrefix)===0&&n.push(u.substring(o.keyPrefix.length))}return n});return _(r,e),r}function Mr(e){var t=this,r=t.keys().then(function(o){return o.length});return _(r,e),r}function Fr(e,t){var r=this;e=z(e);var o=r.ready().then(function(){var i=r._dbInfo;localStorage.removeItem(i.keyPrefix+e)});return _(o,t),o}function Ur(e,t,r){var o=this;e=z(e);var i=o.ready().then(function(){t===void 0&&(t=null);var n=t;return new m(function(f,u){var c=o._dbInfo;c.serializer.serialize(t,function(l,d){if(d)u(d);else try{localStorage.setItem(c.keyPrefix+e,l),f(n)}catch(y){(y.name==="QuotaExceededError"||y.name==="NS_ERROR_DOM_QUOTA_REACHED")&&u(y),u(y)}})})});return _(i,r),i}function Yr(e,t){if(t=Z.apply(this,arguments),e=typeof e!="function"&&e||{},!e.name){var r=this.config();e.name=e.name||r.name,e.storeName=e.storeName||r.storeName}var o=this,i;return e.name?i=new m(function(n){e.storeName?n(Ge(e,o._defaultConfig)):n(e.name+"/")}).then(function(n){for(var f=localStorage.length-1;f>=0;f--){var u=localStorage.key(f);u.indexOf(n)===0&&localStorage.removeItem(u)}}):i=m.reject("Invalid arguments"),_(i,t),i}var zr={_driver:"localStorageWrapper",_initStorage:Br,_support:Dr(),iterate:Cr,getItem:Or,setItem:Ur,removeItem:Fr,clear:xr,length:Mr,key:Lr,keys:Pr,dropInstance:Yr},Wr=function(t,r){return t===r||typeof t=="number"&&typeof r=="number"&&isNaN(t)&&isNaN(r)},Kr=function(t,r){for(var o=t.length,i=0;i<o;){if(Wr(t[i],r))return!0;i++}return!1},je=Array.isArray||function(e){return Object.prototype.toString.call(e)==="[object Array]"},le={},Xe={},ue={INDEXEDDB:cr,WEBSQL:Rr,LOCALSTORAGE:zr},Hr=[ue.INDEXEDDB._driver,ue.WEBSQL._driver,ue.LOCALSTORAGE._driver],me=["dropInstance"],Se=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(me),Vr={description:"",driver:Hr.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function Gr(e,t){e[t]=function(){var r=arguments;return e.ready().then(function(){return e[t].apply(e,r)})}}function Ae(){for(var e=1;e<arguments.length;e++){var t=arguments[e];if(t)for(var r in t)t.hasOwnProperty(r)&&(je(t[r])?arguments[0][r]=t[r].slice():arguments[0][r]=t[r])}return arguments[0]}var jr=function(){function e(t){Y(this,e);for(var r in ue)if(ue.hasOwnProperty(r)){var o=ue[r],i=o._driver;this[r]=i,le[i]||this.defineDriver(o)}this._defaultConfig=Ae({},Vr),this._config=Ae({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch(function(){})}return e.prototype.config=function(r){if((typeof r>"u"?"undefined":P(r))==="object"){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var o in r){if(o==="storeName"&&(r[o]=r[o].replace(/\W/g,"_")),o==="version"&&typeof r[o]!="number")return new Error("Database version must be a number.");this._config[o]=r[o]}return"driver"in r&&r.driver?this.setDriver(this._config.driver):!0}else return typeof r=="string"?this._config[r]:this._config},e.prototype.defineDriver=function(r,o,i){var n=new m(function(f,u){try{var c=r._driver,l=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!r._driver){u(l);return}for(var d=Se.concat("_initStorage"),y=0,S=d.length;y<S;y++){var x=d[y],C=!Kr(me,x);if((C||r[x])&&typeof r[x]!="function"){u(l);return}}var K=function(){for(var de=function(Jr){return function(){var $r=new Error("Method "+Jr+" is not implemented by the current driver"),Qe=m.reject($r);return _(Qe,arguments[arguments.length-1]),Qe}},Re=0,Qr=me.length;Re<Qr;Re++){var De=me[Re];r[De]||(r[De]=de(De))}};K();var W=function(de){le[c]&&console.info("Redefining LocalForage driver: "+c),le[c]=r,Xe[c]=de,f()};"_support"in r?r._support&&typeof r._support=="function"?r._support().then(W,u):W(!!r._support):W(!0)}catch(q){u(q)}});return B(n,o,i),n},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(r,o,i){var n=le[r]?m.resolve(le[r]):m.reject(new Error("Driver not found."));return B(n,o,i),n},e.prototype.getSerializer=function(r){var o=m.resolve(Ie);return B(o,r),o},e.prototype.ready=function(r){var o=this,i=o._driverSet.then(function(){return o._ready===null&&(o._ready=o._initDriver()),o._ready});return B(i,r,r),i},e.prototype.setDriver=function(r,o,i){var n=this;je(r)||(r=[r]);var f=this._getSupportedDrivers(r);function u(){n._config.driver=n.driver()}function c(y){return n._extend(y),u(),n._ready=n._initStorage(n._config),n._ready}function l(y){return function(){var S=0;function x(){for(;S<y.length;){var C=y[S];return S++,n._dbInfo=null,n._ready=null,n.getDriver(C).then(c).catch(x)}u();var K=new Error("No available storage method found.");return n._driverSet=m.reject(K),n._driverSet}return x()}}var d=this._driverSet!==null?this._driverSet.catch(function(){return m.resolve()}):m.resolve();return this._driverSet=d.then(function(){var y=f[0];return n._dbInfo=null,n._ready=null,n.getDriver(y).then(function(S){n._driver=S._driver,u(),n._wrapLibraryMethodsWithReady(),n._initDriver=l(f)})}).catch(function(){u();var y=new Error("No available storage method found.");return n._driverSet=m.reject(y),n._driverSet}),B(this._driverSet,o,i),this._driverSet},e.prototype.supports=function(r){return!!Xe[r]},e.prototype._extend=function(r){Ae(this,r)},e.prototype._getSupportedDrivers=function(r){for(var o=[],i=0,n=r.length;i<n;i++){var f=r[i];this.supports(f)&&o.push(f)}return o},e.prototype._wrapLibraryMethodsWithReady=function(){for(var r=0,o=Se.length;r<o;r++)Gr(this,Se[r])},e.prototype.createInstance=function(r){return new e(r)},e}(),Xr=new jr;D.exports=Xr},{3:3}]},{},[4])(4)})});var rr=$e((ye,er)=>{(function(b,A){typeof ye=="object"&&typeof er<"u"?A(ye):typeof define=="function"&&define.amd?define("localforage-driver-memory",["exports"],A):A(b.LocalforageDriverMemory={})})(typeof self<"u"?self:ye,function(b){"use strict";var A="localforage-driver-memory";function R(a){var s=typeof Symbol=="function"&&a[Symbol.iterator],v=0;return s?s.call(a):{next:function(){return a&&v>=a.length&&(a=void 0),{value:a&&a[v++],done:!a}}}}function L(a,s){a=a||[],s=s||{};try{return new Blob(a,s)}catch(w){if(w.name!=="TypeError")throw w;for(var v=typeof BlobBuilder<"u"?BlobBuilder:typeof MSBlobBuilder<"u"?MSBlobBuilder:typeof MozBlobBuilder<"u"?MozBlobBuilder:WebKitBlobBuilder,p=new v,g=0;g<a.length;g+=1)p.append(a[g]);return p.getBlob(s.type)}}var D=/^~~local_forage_type~([^~]+)~/,X=9,P=X+4,Y=Object.prototype.toString;function I(a){var s=a.length*.75,v=a.length;a[a.length-1]==="="&&(s--,a[a.length-2]==="="&&s--);for(var p=new ArrayBuffer(s),g=new Uint8Array(p),w=0,T=0;w<v;w+=4){var G="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w]),fe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+1]),ie="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+2]),ce="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(a[w+3]);g[T++]=G<<2|fe>>4,g[T++]=(fe&15)<<4|ie>>2,g[T++]=(ie&3)<<6|ce&63}return p}function M(a){for(var s=new Uint8Array(a),v="",p=0;p<s.length;p+=3)v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[p]>>2],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[p]&3)<<4|s[p+1]>>4],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[(s[p+1]&15)<<2|s[p+2]>>6],v+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[s[p+2]&63];return s.length%3===2?v=v.substring(0,v.length-1)+"=":s.length%3===1&&(v=v.substring(0,v.length-2)+"=="),v}function H(a,s){var v="";if(a&&(v=Y.call(a)),a&&(v==="[object ArrayBuffer]"||a.buffer&&Y.call(a.buffer)==="[object ArrayBuffer]")){var p=void 0,g="__lfsc__:";a instanceof ArrayBuffer?(p=a,g+="arbf"):(p=a.buffer,v==="[object Int8Array]"?g+="si08":v==="[object Uint8Array]"?g+="ui08":v==="[object Uint8ClampedArray]"?g+="uic8":v==="[object Int16Array]"?g+="si16":v==="[object Uint16Array]"?g+="ur16":v==="[object Int32Array]"?g+="si32":v==="[object Uint32Array]"?g+="ui32":v==="[object Float32Array]"?g+="fl32":v==="[object Float64Array]"?g+="fl64":s(new Error("Failed to get type for BinaryArray"))),s(g+M(p))}else if(v==="[object Blob]"){var w=new FileReader;w.onload=function(){var T="~~local_forage_type~"+a.type+"~"+M(this.result);s("__lfsc__:blob"+T)},w.readAsArrayBuffer(a)}else try{s(JSON.stringify(a))}catch(T){console.error("Couldn't convert value into a JSON string: ",a),s(null,T)}}function $(a){if(a.substring(0,X)!=="__lfsc__:")return JSON.parse(a);var s=a.substring(P),v=a.substring(X,P),p;if(v==="blob"&&D.test(s)){var g=s.match(D);p=g[1],s=s.substring(g[0].length)}var w=I(s);switch(v){case"arbf":return w;case"blob":return L([w],{type:p});case"si08":return new Int8Array(w);case"ui08":return new Uint8Array(w);case"uic8":return new Uint8ClampedArray(w);case"si16":return new Int16Array(w);case"ur16":return new Uint16Array(w);case"si32":return new Int32Array(w);case"ui32":return new Uint32Array(w);case"fl32":return new Float32Array(w);case"fl64":return new Float64Array(w);default:throw new Error("Unkown type: "+v)}}function m(a){var s,v;if(a===null||typeof a!="object"||"isActiveClone"in a)return a;var p=a instanceof Date?new Date(a):a.constructor();try{for(var g=R(Object.keys(a)),w=g.next();!w.done;w=g.next()){var T=w.value;Object.prototype.hasOwnProperty.call(a,T)&&(a.isActiveClone=null,p[T]=m(a[T]),delete a.isActiveClone)}}catch(G){s={error:G}}finally{try{w&&!w.done&&(v=g.return)&&v.call(g)}finally{if(s)throw s.error}}return p}function _(a,s){return(a.name||s.name)+"/"+(a.storeName||s.storeName)+"/"}function B(a,s){s&&a.then(function(v){s(null,v)},function(v){s(v)})}function z(){for(var a=[],s=0;s<arguments.length;s++)a[s]=arguments[s];if(arguments.length&&typeof arguments[arguments.length-1]=="function")return arguments[arguments.length-1]}function Z(a,s){var v=this;if(s=z.apply(this,arguments),a=typeof a!="function"&&a||{},!a.name){var p=this.config();a.name=a.name||p.name,a.storeName=a.storeName||p.storeName}var g;return a.name?g=new Promise(function(w){a.storeName?w(_(a,v._defaultConfig)):w(a.name+"/")}):g=Promise.reject("Invalid arguments"),{promise:g,callback:s}}function F(a){return typeof a!="string"&&(console.warn(a+" used as a key, but it is not a string."),a=String(a)),a}var k={bufferToString:M,deserialize:$,serialize:H,stringToBuffer:I},U={},ae=function(){function a(s){this.kp=s,this.data={}}return a.resolve=function(s){return U[s]||(U[s]=new a(s)),U[s]},a.prototype.clear=function(){this.data={}},a.prototype.drop=function(){this.clear(),delete U[this.kp]},a.prototype.get=function(s){return this.data[s]},a.prototype.key=function(s){return this.keys()[s]},a.prototype.keys=function(){return Object.keys(this.data)},a.prototype.rm=function(s){delete this.data[s]},a.prototype.set=function(s,v){this.data[s]=v},a}();function re(a){var s=a?m(a):{},v=_(s,this._defaultConfig),p=ae.resolve(v);return this._dbInfo=s,this._dbInfo.serializer=k,this._dbInfo.keyPrefix=v,this._dbInfo.mStore=p,Promise.resolve()}function h(a){var s=this,v=this.ready().then(function(){s._dbInfo.mStore.clear()});return B(v,a),v}function N(a,s){var v=Z.apply(this,arguments),p=v.promise,g=v.callback,w=p.then(function(T){ae.resolve(T).drop()});return B(w,g),p}function E(a,s){var v=this;a=F(a);var p=this.ready().then(function(){var g=v._dbInfo.mStore.get(a);return g==null?null:v._dbInfo.serializer.deserialize(g)});return B(p,s),p}function O(a,s){var v=this,p=this.ready().then(function(){for(var g=v._dbInfo.mStore,w=g.keys(),T=0;T<w.length;T++){var G=g.get(w[T]);if(G&&(G=v._dbInfo.serializer.deserialize(G)),G=a(G,w[T],T+1),G!==void 0)return G}});return B(p,s),p}function V(a,s){var v=this,p=this.ready().then(function(){var g;try{g=v._dbInfo.mStore.key(a),g===void 0&&(g=null)}catch{g=null}return g});return B(p,s),p}function j(a){var s=this,v=this.ready().then(function(){return s._dbInfo.mStore.keys()});return B(v,a),v}function Q(a){var s=this.keys().then(function(v){return v.length});return B(s,a),s}function J(a,s){var v=this;a=F(a);var p=this.ready().then(function(){v._dbInfo.mStore.rm(a)});return B(p,s),p}function ee(a,s,v){var p=this;a=F(a);var g=this.ready().then(function(){s===void 0&&(s=null);var w=s;return new Promise(function(T,G){p._dbInfo.serializer.serialize(s,function(fe,ie){if(ie)G(ie);else try{p._dbInfo.mStore.set(a,fe),T(w)}catch(ce){G(ce)}})})});return B(g,v),g}var oe=!0;b._support=oe,b._driver=A,b._initStorage=re,b.clear=h,b.dropInstance=N,b.getItem=E,b.iterate=O,b.key=V,b.keys=j,b.length=Q,b.removeItem=J,b.setItem=ee,Object.defineProperty(b,"__esModule",{value:!0})})});var ge=Ze(ke()),Te=Ze(rr());import{SDKBase as st,createSDK as ct}from"@magic-sdk/provider";import{ViewController as nt,createDuplicateIframeWarning as ot,createURL as tr,createModalNotReadyError as it}from"@magic-sdk/provider";var at={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"};function ft(b){for(let[A,R]of Object.entries(at))b.style[A]=R}function ut(b){let A=[].slice.call(document.querySelectorAll(".magic-iframe"));return Boolean(A.find(R=>R.src.includes(b)))}var pe=class extends nt{constructor(){super(...arguments);this.activeElement=null}init(){this.test="hello",this.iframe=new Promise(R=>{let L=()=>{if(ut(encodeURIComponent(this.parameters)))ot().log();else{let D=document.createElement("iframe");D.classList.add("magic-iframe"),D.dataset.magicIframeLabel=tr(this.endpoint).host,D.title="Secure Modal",D.src=tr(`/send?params=${encodeURIComponent(this.parameters)}`,this.endpoint).href,ft(D),document.body.appendChild(D),R(D)}};["loaded","interactive","complete"].includes(document.readyState)?L():window.addEventListener("load",L,!1)}),window.addEventListener("message",R=>{var L;if(R.origin===this.endpoint&&R.data&&R.data.msgType&&this.messageHandlers.size){R.data.response=(L=R.data.response)!=null?L:{};for(let D of this.messageHandlers.values())D(R)}})}showOverlay(){return se(this,null,function*(){let R=yield this.iframe;R.style.display="block",this.activeElement=document.activeElement,R.focus()})}hideOverlay(){return se(this,null,function*(){var L;let R=yield this.iframe;R.style.display="none",(L=this.activeElement)!=null&&L.focus&&this.activeElement.focus(),this.activeElement=null})}_post(R){return se(this,null,function*(){let L=yield this.iframe;if(L&&L.contentWindow)L.contentWindow.postMessage(R,this.endpoint);else throw it()})}};export*from"@magic-sdk/commons";var bt=ct(st,{platform:"web",sdkName:"magic-sdk",version:"13.3.1",defaultEndpoint:"https://auth.magic.link/",ViewController:pe,configureStorage:()=>se(void 0,null,function*(){let b=ge.default.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return yield b.defineDriver(Te),yield b.setDriver([ge.default.INDEXEDDB,ge.default.LOCALSTORAGE,Te._driver]),b})});export{bt as Magic};
2
2
  //# sourceMappingURL=index.mjs.map
package/dist/magic.js CHANGED
@@ -2,5 +2,5 @@
2
2
  - Extension \`${n.name}\` supports version(s) \`${o}\``:o||(t+=`
3
3
  - Extension \`${n.name}\` does not support ${z.platform} environments.`)}),new he(le.IncompatibleExtensions,t)}function Zi(e){let t=n=>{let o=n+1,s=o%10,c=o%100;return s===1&&c!==11?`${o}st`:s===2&&c!==12?`${o}nd`:s===3&&c!==13?`${o}rd`:`${o}th`};return new he(le.InvalidArgument,`Invalid ${t(e.argument)} argument given to \`${e.procedure}\`.
4
4
  Expected: \`${e.expected}\`
5
- Received: \`${e.received}\``)}function Rr(){return new Ye(Ae.DuplicateIframe,"Duplicate iframes found.")}function eo(){return new Ye(Ae.SyncWeb3Method,"Non-async web3 methods are deprecated in web3 > 1.0 and are not supported by the Magic web3 provider. Please use an async method instead.")}function to(){return new Ye(Ae.ReactNativeEndpointConfiguration,`CUSTOM DOMAINS ARE NOT SUPPORTED WHEN USING MAGIC SDK WITH REACT NATIVE! The \`endpoint\` parameter SHOULD NOT be provided. The Magic \`<iframe>\` is automatically wrapped by a WebView pointed at \`${z.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function*ro(){let e=0;for(;;)e<Number.MAX_SAFE_INTEGER?yield++e:e=0}var no=ro();function Ar(){return no.next().value}var Sr=Symbol("Payload pre-processed by Magic SDK");function Nr(e){return Object.defineProperty(e,Sr,{value:!0,enumerable:!1}),e}function io(e){return!!e[Sr]}function et(e){var t,n,o;return io(e)||(e.jsonrpc=(t=e.jsonrpc)!=null?t:"2.0",e.id=Ar(),e.method=(n=e.method)!=null?n:"noop",e.params=(o=e.params)!=null?o:[],Nr(e)),e}function X(e,t=[]){return Nr({params:t,method:e,jsonrpc:"2.0",id:Ar()})}var It=class{constructor(e){e instanceof It?(this._jsonrpc=e.payload.jsonrpc,this._id=e.payload.id,this._result=e.payload.result,this._error=e.payload.error):Ki(e)?(this._jsonrpc=e.jsonrpc,this._id=e.id,this._result=e.result,this._error=e.error):(this._jsonrpc=e.jsonrpc,this._id=e.id,this._result=void 0,this._error=void 0)}applyError(e){return this._error=e,this}applyResult(e){return this._result=e,this}get hasError(){return typeof this._error!="undefined"&&this._error!==null}get hasResult(){return typeof this._result!="undefined"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}},oo=ei(ti()),ao=class extends oo.default{};function Tr(){let e=new ao;return{emitter:e,createChainingEmitterMethod:(t,n)=>(...o)=>(e[t].apply(e,o),n),createBoundEmitterMethod:t=>(...n)=>e[t].apply(e,n)}}var Or=Symbol("isPromiEvent");function bt(e){return!!e[Or]}function Lr(e){let t=Mr(e),{createBoundEmitterMethod:n,createChainingEmitterMethod:o}=Tr(),s=Symbol("Promise.then"),c=Symbol("Promise.catch"),g=Symbol("Promise.finally"),p=(y,N)=>(...I)=>{let T=N[y].apply(N,I);return m(T)},m=y=>Object.assign(y,{[Or]:!0,[s]:y[s]||y.then,[c]:y[c]||y.catch,[g]:y[g]||y.finally,then:p(s,y),catch:p(c,y),finally:p(g,y),on:o("on",y),once:o("once",y),addListener:o("addListener",y),off:o("off",y),removeListener:o("removeListener",y),removeAllListeners:o("removeAllListeners",y),emit:n("emit"),eventNames:n("eventNames"),listeners:n("listeners"),listenerCount:n("listenerCount")}),v=m(t.then(y=>(v.emit("done",y),v.emit("settled"),y),y=>{throw v.emit("error",y),v.emit("settled"),y}));return v}function Mr(e){return new Promise((t,n)=>{let o=e(t,n);Promise.resolve(o).catch(n)})}var Me=class{constructor(e){this.sdk=e}get overlay(){return this.sdk.overlay}request(e){let t=this.overlay.post(_e.MAGIC_HANDLE_REQUEST,et(e)),n=Lr((s,c)=>{t.then(g=>{if(o(),g.hasError)c(new Oe(g.payload.error));else if(g.hasResult)s(g.payload.result);else throw zi()}).catch(g=>{o(),c(g)})}),o=this.overlay.on(fe.MAGIC_HANDLE_EVENT,s=>{var c;let{response:g}=s.data;if(g.id===e.id&&((c=g.result)==null?void 0:c.event)){let{event:p,params:m=[]}=g.result;n.emit(p,...m)}});return n}createIntermediaryEvent(e,t){return n=>{let o=X(F.IntermediaryEvent,[{payloadId:t,eventType:e,args:n}]);this.request(o)}}},so=class extends Me{loginWithMagicLink(e){let{email:t,showUI:n=!0,redirectURI:o}=e,s=X(this.sdk.testMode?F.LoginWithMagicLinkTestMode:F.LoginWithMagicLink,[{email:t,showUI:n,redirectURI:o}]);return this.request(s)}loginWithSMS(e){let{phoneNumber:t}=e,n=X(this.sdk.testMode?F.LoginWithSmsTestMode:F.LoginWithSms,[{phoneNumber:t,showUI:!0}]);return this.request(n)}loginWithEmailOTP(e){let{email:t}=e,n=X(this.sdk.testMode?F.LoginWithEmailOTPTestMode:F.LoginWithEmailOTP,[{email:t,showUI:!0}]);return this.request(n)}loginWithCredential(e){let t=e!=null?e:"";if(!e&&z.platform==="web"){t=window.location.search;let o=window.location.origin+window.location.pathname;window.history.replaceState(null,"",o)}let n=X(this.sdk.testMode?F.LoginWithCredentialTestMode:F.LoginWithCredential,[t]);return this.request(n)}},$r={};Qn($r,{clear:()=>uo,getItem:()=>je,iterate:()=>ho,key:()=>lo,keys:()=>fo,length:()=>co,removeItem:()=>Et,setItem:()=>tt});var ze;function ge(e){return(...t)=>de(this,null,function*(){return ze||(ze=yield z.configureStorage()),yield ze.ready(),ze[e](...t)})}var je=ge("getItem"),tt=ge("setItem"),Et=ge("removeItem"),uo=ge("clear"),co=ge("length"),lo=ge("key"),fo=ge("keys"),ho=ge("iterate");function po(){let e=window.crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&191|128;let t="";return t+=e[0].toString(16),t+=e[1].toString(16),t+=e[2].toString(16),t+=e[3].toString(16),t+="-",t+=e[4].toString(16),t+=e[5].toString(16),t+="-",t+=e[6].toString(16),t+=e[7].toString(16),t+="-",t+=e[8].toString(16),t+=e[9].toString(16),t+="-",t+=e[10].toString(16),t+=e[11].toString(16),t+=e[12].toString(16),t+=e[13].toString(16),t+=e[14].toString(16),t+=e[15].toString(16),t}var wt="STORE_KEY_PRIVATE_KEY",rt="STORE_KEY_PUBLIC_JWK",Rt="ECDSA",Pr="P-256",mo={name:Rt,namedCurve:Pr},vo={name:Rt,namedCurve:Pr};function Dr(){Et(rt),Et(wt)}function go(){return de(this,null,function*(){let e=yield yo();if(!e){console.info("unable to create public key or webcrypto is unsupported");return}let{subtle:t}=window.crypto,n=yield je(wt);if(!n||!t){console.info("unable to find private key or webcrypto unsupported");return}let o={iat:Math.floor(new Date().getTime()/1e3),jti:po()},s={typ:"dpop+jwt",alg:"ES256",jwk:e},c={protected:pr(JSON.stringify(s)),claims:pr(JSON.stringify(o))},g=Io(`${c.protected}.${c.claims}`),p={name:Rt,hash:{name:"SHA-256"}},m=wo(new Uint8Array(yield t.sign(p,n,g)));return`${c.protected}.${c.claims}.${m}`})}function yo(){return de(this,null,function*(){if(!_o()){console.info("webcrypto is not supported");return}return(yield je(rt))||(yield Eo()),je(rt)})}function Eo(){return de(this,null,function*(){let e=null,{subtle:t}=window.crypto,n=yield t.generateKey(mo,!0,["sign"]),o=yield t.exportKey("jwk",n.privateKey);e=yield t.exportKey("jwk",n.publicKey);let s=yield t.importKey("jwk",o,vo,!1,["sign"]);yield tt(wt,s),yield tt(rt,e)})}function _o(){let e=typeof window!="undefined"&&!!window.crypto,t=e&&!!window.crypto.subtle;return e&&t}function pr(e){return Cr(bo(e))}function Io(e){return new TextEncoder().encode(e)}function Cr(e){return btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+/g,"")}function bo(e){return encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(t,n)=>String.fromCharCode(parseInt(n,16)))}function wo(e){let t="";return e.forEach(n=>{t+=String.fromCharCode(n)}),Cr(t)}var Ro=class extends Me{getIdToken(e){let t=X(this.sdk.testMode?F.GetIdTokenTestMode:F.GetIdToken,[e]);return this.request(t)}generateIdToken(e){let t=X(this.sdk.testMode?F.GenerateIdTokenTestMode:F.GenerateIdToken,[e]);return this.request(t)}getMetadata(){let e=X(this.sdk.testMode?F.GetMetadataTestMode:F.GetMetadata);return this.request(e)}updateEmail(e){let{email:t,showUI:n=!0}=e,o=X(this.sdk.testMode?F.UpdateEmailTestMode:F.UpdateEmail,[{email:t,showUI:n}]);return this.request(o)}isLoggedIn(){let e=X(this.sdk.testMode?F.IsLoggedInTestMode:F.IsLoggedIn);return this.request(e)}logout(){Dr();let e=X(this.sdk.testMode?F.LogoutTestMode:F.Logout);return this.request(e)}showSettings(){let e=X(this.sdk.testMode?F.UserSettingsTestMode:F.UserSettings);return this.request(e)}updatePhoneNumber(){let e=X(this.sdk.testMode?F.UpdatePhoneNumberTestMode:F.UpdatePhoneNumber);return this.request(e)}},Ao=class extends Me{connectWithUI(){let e=X(F.RequestAccounts);return this.request(e)}showUI(){let e=X(F.ShowUI);return this.request(e)}getInfo(){let e=X(F.GetInfo);return this.request(e)}requestUserInfoWithUI(e){let t=X(F.RequestUserInfoWithUI,e?[e]:[]);return this.request(t)}disconnect(){Dr();let e=X(F.Disconnect);return this.request(e)}},{createBoundEmitterMethod:Je,createChainingEmitterMethod:Ne}=Tr(),So=class extends Me{constructor(){super(...arguments),this.isMagic=!0,this.on=Ne("on",this),this.once=Ne("once",this),this.addListener=Ne("addListener",this),this.off=Ne("off",this),this.removeListener=Ne("removeListener",this),this.removeAllListeners=Ne("removeAllListeners",this),this.emit=Je("emit"),this.eventNames=Je("eventNames"),this.listeners=Je("listeners"),this.listenerCount=Je("listenerCount")}sendAsync(e,t){if(!t)throw Zi({procedure:"Magic.rpcProvider.sendAsync",argument:1,expected:"function",received:t===null?"null":typeof t});if(Array.isArray(e))this.overlay.post(_e.MAGIC_HANDLE_REQUEST,e.map(n=>{let o=et(n);return this.prefixPayloadMethodForTestMode(o),o})).then(n=>{t(null,n.map(o=>zn(yr({},o.payload),{error:o.hasError?new Oe(o.payload.error):null})))});else{let n=et(e);this.prefixPayloadMethodForTestMode(n),this.overlay.post(_e.MAGIC_HANDLE_REQUEST,n).then(o=>{t(o.hasError?new Oe(o.payload.error):null,o.payload)})}}send(e,t){if(typeof e=="string"){let o=X(e,Array.isArray(t)?t:[]);return this.request(o)}if(Array.isArray(e)||!!t){this.sendAsync(e,t);return}let n=eo();return n.log(),new It(e).applyError({code:-32603,message:n.rawMessage}).payload}enable(){let e=X("eth_accounts");return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let t="testMode/eth/";this.sdk.testMode&&(e.method=`${t}${e.method}`)}};function ke(e,t){return t?new URL(e,t):new URL(e)}var mr=["request","overlay","sdk"];function No(e){let t=Object.getPrototypeOf(e),n=[t];for(;t!==Me.prototype;)t=Object.getPrototypeOf(t),n.push(t);return n}var xr=class extends Me{constructor(){super(void 0),this.__sdk_access_field_descriptors__=new Map,this.__is_initialized__=!1,this.utils={createPromiEvent:Lr,isPromiEvent:bt,encodeJSON:_r,decodeJSON:Yi,createJsonRpcRequestPayload:X,standardizeJsonRpcRequestPayload:et,storage:$r};let e=[this,...No(this)];mr.forEach(t=>{let n=e.map(g=>Object.getOwnPropertyDescriptor(g,t)),o=n.findIndex(g=>!!g),s=o>0,c=n[o];c&&(this.__sdk_access_field_descriptors__.set(t,{descriptor:c,isPrototypeField:s}),Object.defineProperty(this,t,{configurable:!0,get:()=>{throw Ji(t)}}))})}init(e){this.__is_initialized__||(mr.forEach(t=>{if(this.__sdk_access_field_descriptors__.has(t)){let{descriptor:n,isPrototypeField:o}=this.__sdk_access_field_descriptors__.get(t);o?delete this[t]:Object.defineProperty(this,t,n)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:t,removalVersion:n,useInstead:o}=e,s=o?` Use \`${o}\` instead.`:"",c=`\`${t}\` will be removed from this Extension in version \`${n}\`.${s}`;return new Ze(this,"DEPRECATION_NOTICE",c)}createWarning(e,t){return new Ze(this,e,t)}createError(e,t,n){return new it(this,e,t,n)}},To=class extends xr{},Ie=class extends xr{};Ie.Internal=To,Ie.Anonymous="anonymous extension";function vr(e){return e.compat&&e.compat[z.sdkName]!=null?typeof e.compat[z.sdkName]=="string"?Ci(Fi(z.version),e.compat[z.sdkName]):!!e.compat[z.sdkName]:!0}function Oo(e){var t;let n=(t=e==null?void 0:e.extensions)!=null?t:[],o={},s=[];if(Array.isArray(n)?n.forEach(c=>{vr(c)?(c.init(this),(c.name||c.name!==Ie.Anonymous)&&(this[c.name]=c),c instanceof Ie.Internal&&(yt(c.config)||(o[c.name]=c.config))):s.push(c)}):Object.keys(n).forEach(c=>{if(vr(n[c])){n[c].init(this);let g=n[c];this[c]=g,g instanceof Ie.Internal&&(yt(g.config)||(o[n[c].name]=g.config))}else s.push(n[c])}),s.length)throw Qi(s);return o}var Qe=class{constructor(e,t){this.apiKey=e;var n;if(!e)throw qi();z.platform==="react-native"&&(t==null?void 0:t.endpoint)&&to().log();let{defaultEndpoint:o,version:s}=z;this.testMode=!!(t!=null&&t.testMode),this.endpoint=ke((n=t==null?void 0:t.endpoint)!=null?n:o).origin,this.auth=new so(this),this.user=new Ro(this),this.wallet=new Ao(this),this.rpcProvider=new So(this);let c=Oo.call(this,t);this.parameters=_r(yr({API_KEY:this.apiKey,DOMAIN_ORIGIN:window.location?window.location.origin:"",ETH_NETWORK:t==null?void 0:t.network,host:ke(this.endpoint).host,sdk:Xi[z.sdkName],version:s,ext:yt(c)?void 0:c,locale:(t==null?void 0:t.locale)||"en_US"},z.bundleId?{bundleId:z.bundleId}:{}))}get overlay(){if(!Qe.__overlays__.has(this.parameters)){let e=new z.ViewController(this.endpoint,this.parameters);e.init(),Qe.__overlays__.set(this.parameters,e)}return Qe.__overlays__.get(this.parameters)}preload(){return de(this,null,function*(){yield this.overlay.ready})}},At=Qe;At.__overlays__=new Map;function Lo(e,t){return t&&Array.isArray(e)?e.find(n=>n.id===t):e}function Mo(e,t){var n;let o=(n=t.data.response)==null?void 0:n.id,s=Lo(e,o);if(o&&s){let c=new It(s).applyResult(t.data.response.result).applyError(t.data.response.error);return{id:o,response:c}}return{}}function $o(e,t){return de(this,null,function*(){let n=yield je("rt"),o;if(z.platform==="web")try{o=yield go()}catch(s){console.error("webcrypto error",s)}return o?n?{msgType:e,payload:t,jwt:o,rt:n}:{msgType:e,payload:t,jwt:o}:{msgType:e,payload:t}})}function Po(e){return de(this,null,function*(){!e.data.rt||(yield tt("rt",e.data.rt))})}var Ur=class{constructor(e,t){this.endpoint=e,this.parameters=t,this.messageHandlers=new Set,this.ready=this.waitForReady(),this.listen()}post(e,t){return de(this,null,function*(){return Mr(n=>de(this,null,function*(){yield this.ready;let o=[],s=Array.isArray(t)?t.map(m=>m.id):[],c=yield $o(`${e}-${this.parameters}`,t);yield this._post(c);let g=m=>v=>{let{id:y,response:N}=Mo(t,v);Po(v),y&&N&&Array.isArray(t)&&s.includes(y)?(o.push(N),o.length===t.length&&(m(),n(o))):y&&N&&!Array.isArray(t)&&y===t.id&&(m(),n(N))},p=this.on(fe.MAGIC_HANDLE_RESPONSE,g(()=>p()))}))})}on(e,t){let n=t.bind(window),o=s=>{s.data.msgType===`${e}-${this.parameters}`&&n(s)};return this.messageHandlers.add(o),()=>this.messageHandlers.delete(o)}waitForReady(){return new Promise(e=>{this.on(fe.MAGIC_OVERLAY_READY,()=>e())})}listen(){this.on(fe.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(fe.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()})}};var St={};Zt(St,{EthChainType:()=>rr,Extension:()=>Ie,ExtensionError:()=>it,ExtensionWarning:()=>Ze,MagicIncomingWindowMessage:()=>fe,MagicOutgoingWindowMessage:()=>_e,MagicPayloadMethod:()=>F,RPCError:()=>Oe,RPCErrorCode:()=>Se,SDKError:()=>he,SDKErrorCode:()=>le,SDKWarning:()=>Ye,SDKWarningCode:()=>Ae,isPromiEvent:()=>bt});var st=tr(Fr()),Tt=tr(jr());var Do={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"};function Co(e){for(let[t,n]of Object.entries(Do))e.style[t]=n}function xo(e){let t=[].slice.call(document.querySelectorAll(".magic-iframe"));return Boolean(t.find(n=>n.src.includes(e)))}var at=class extends Ur{constructor(){super(...arguments);this.activeElement=null}init(){this.test="hello",this.iframe=new Promise(n=>{let o=()=>{if(xo(encodeURIComponent(this.parameters)))Rr().log();else{let s=document.createElement("iframe");s.classList.add("magic-iframe"),s.dataset.magicIframeLabel=ke(this.endpoint).host,s.title="Secure Modal",s.src=ke(`/send?params=${encodeURIComponent(this.parameters)}`,this.endpoint).href,Co(s),document.body.appendChild(s),n(s)}};["loaded","interactive","complete"].includes(document.readyState)?o():window.addEventListener("load",o,!1)}),window.addEventListener("message",n=>{var o;if(n.origin===this.endpoint&&n.data&&n.data.msgType&&this.messageHandlers.size){n.data.response=(o=n.data.response)!=null?o:{};for(let s of this.messageHandlers.values())s(n)}})}showOverlay(){return Re(this,null,function*(){let n=yield this.iframe;n.style.display="block",this.activeElement=document.activeElement,n.focus()})}hideOverlay(){return Re(this,null,function*(){var o;let n=yield this.iframe;n.style.display="none",(o=this.activeElement)!=null&&o.focus&&this.activeElement.focus(),this.activeElement=null})}_post(n){return Re(this,null,function*(){let o=yield this.iframe;if(o&&o.contentWindow)o.contentWindow.postMessage(n,this.endpoint);else throw wr()})}};var Uo=Object.assign(br(At,{platform:"web",sdkName:"magic-sdk",version:"13.3.0",defaultEndpoint:"https://auth.magic.link/",ViewController:at,configureStorage:()=>Re(void 0,null,function*(){let e=st.default.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return yield e.defineDriver(Tt),yield e.setDriver([st.default.INDEXEDDB,st.default.LOCALSTORAGE,Tt._driver]),e})}),Jt({},St)),Bo=Uo;return kn(Fo);})();
5
+ Received: \`${e.received}\``)}function Rr(){return new Ye(Ae.DuplicateIframe,"Duplicate iframes found.")}function eo(){return new Ye(Ae.SyncWeb3Method,"Non-async web3 methods are deprecated in web3 > 1.0 and are not supported by the Magic web3 provider. Please use an async method instead.")}function to(){return new Ye(Ae.ReactNativeEndpointConfiguration,`CUSTOM DOMAINS ARE NOT SUPPORTED WHEN USING MAGIC SDK WITH REACT NATIVE! The \`endpoint\` parameter SHOULD NOT be provided. The Magic \`<iframe>\` is automatically wrapped by a WebView pointed at \`${z.defaultEndpoint}\`. Changing this default behavior will lead to unexpected results and potentially security-threatening bugs.`)}function*ro(){let e=0;for(;;)e<Number.MAX_SAFE_INTEGER?yield++e:e=0}var no=ro();function Ar(){return no.next().value}var Sr=Symbol("Payload pre-processed by Magic SDK");function Nr(e){return Object.defineProperty(e,Sr,{value:!0,enumerable:!1}),e}function io(e){return!!e[Sr]}function et(e){var t,n,o;return io(e)||(e.jsonrpc=(t=e.jsonrpc)!=null?t:"2.0",e.id=Ar(),e.method=(n=e.method)!=null?n:"noop",e.params=(o=e.params)!=null?o:[],Nr(e)),e}function X(e,t=[]){return Nr({params:t,method:e,jsonrpc:"2.0",id:Ar()})}var It=class{constructor(e){e instanceof It?(this._jsonrpc=e.payload.jsonrpc,this._id=e.payload.id,this._result=e.payload.result,this._error=e.payload.error):Ki(e)?(this._jsonrpc=e.jsonrpc,this._id=e.id,this._result=e.result,this._error=e.error):(this._jsonrpc=e.jsonrpc,this._id=e.id,this._result=void 0,this._error=void 0)}applyError(e){return this._error=e,this}applyResult(e){return this._result=e,this}get hasError(){return typeof this._error!="undefined"&&this._error!==null}get hasResult(){return typeof this._result!="undefined"}get payload(){return{jsonrpc:this._jsonrpc,id:this._id,result:this._result,error:this._error}}},oo=ei(ti()),ao=class extends oo.default{};function Tr(){let e=new ao;return{emitter:e,createChainingEmitterMethod:(t,n)=>(...o)=>(e[t].apply(e,o),n),createBoundEmitterMethod:t=>(...n)=>e[t].apply(e,n)}}var Or=Symbol("isPromiEvent");function bt(e){return!!e[Or]}function Lr(e){let t=Mr(e),{createBoundEmitterMethod:n,createChainingEmitterMethod:o}=Tr(),s=Symbol("Promise.then"),c=Symbol("Promise.catch"),g=Symbol("Promise.finally"),p=(y,N)=>(...I)=>{let T=N[y].apply(N,I);return m(T)},m=y=>Object.assign(y,{[Or]:!0,[s]:y[s]||y.then,[c]:y[c]||y.catch,[g]:y[g]||y.finally,then:p(s,y),catch:p(c,y),finally:p(g,y),on:o("on",y),once:o("once",y),addListener:o("addListener",y),off:o("off",y),removeListener:o("removeListener",y),removeAllListeners:o("removeAllListeners",y),emit:n("emit"),eventNames:n("eventNames"),listeners:n("listeners"),listenerCount:n("listenerCount")}),v=m(t.then(y=>(v.emit("done",y),v.emit("settled"),y),y=>{throw v.emit("error",y),v.emit("settled"),y}));return v}function Mr(e){return new Promise((t,n)=>{let o=e(t,n);Promise.resolve(o).catch(n)})}var Me=class{constructor(e){this.sdk=e}get overlay(){return this.sdk.overlay}request(e){let t=this.overlay.post(_e.MAGIC_HANDLE_REQUEST,et(e)),n=Lr((s,c)=>{t.then(g=>{if(o(),g.hasError)c(new Oe(g.payload.error));else if(g.hasResult)s(g.payload.result);else throw zi()}).catch(g=>{o(),c(g)})}),o=this.overlay.on(fe.MAGIC_HANDLE_EVENT,s=>{var c;let{response:g}=s.data;if(g.id===e.id&&((c=g.result)==null?void 0:c.event)){let{event:p,params:m=[]}=g.result;n.emit(p,...m)}});return n}createIntermediaryEvent(e,t){return n=>{let o=X(F.IntermediaryEvent,[{payloadId:t,eventType:e,args:n}]);this.request(o)}}},so=class extends Me{loginWithMagicLink(e){let{email:t,showUI:n=!0,redirectURI:o}=e,s=X(this.sdk.testMode?F.LoginWithMagicLinkTestMode:F.LoginWithMagicLink,[{email:t,showUI:n,redirectURI:o}]);return this.request(s)}loginWithSMS(e){let{phoneNumber:t}=e,n=X(this.sdk.testMode?F.LoginWithSmsTestMode:F.LoginWithSms,[{phoneNumber:t,showUI:!0}]);return this.request(n)}loginWithEmailOTP(e){let{email:t}=e,n=X(this.sdk.testMode?F.LoginWithEmailOTPTestMode:F.LoginWithEmailOTP,[{email:t,showUI:!0}]);return this.request(n)}loginWithCredential(e){let t=e!=null?e:"";if(!e&&z.platform==="web"){t=window.location.search;let o=window.location.origin+window.location.pathname;window.history.replaceState(null,"",o)}let n=X(this.sdk.testMode?F.LoginWithCredentialTestMode:F.LoginWithCredential,[t]);return this.request(n)}},$r={};Qn($r,{clear:()=>uo,getItem:()=>je,iterate:()=>ho,key:()=>lo,keys:()=>fo,length:()=>co,removeItem:()=>Et,setItem:()=>tt});var ze;function ge(e){return(...t)=>de(this,null,function*(){return ze||(ze=yield z.configureStorage()),yield ze.ready(),ze[e](...t)})}var je=ge("getItem"),tt=ge("setItem"),Et=ge("removeItem"),uo=ge("clear"),co=ge("length"),lo=ge("key"),fo=ge("keys"),ho=ge("iterate");function po(){let e=window.crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&191|128;let t="";return t+=e[0].toString(16),t+=e[1].toString(16),t+=e[2].toString(16),t+=e[3].toString(16),t+="-",t+=e[4].toString(16),t+=e[5].toString(16),t+="-",t+=e[6].toString(16),t+=e[7].toString(16),t+="-",t+=e[8].toString(16),t+=e[9].toString(16),t+="-",t+=e[10].toString(16),t+=e[11].toString(16),t+=e[12].toString(16),t+=e[13].toString(16),t+=e[14].toString(16),t+=e[15].toString(16),t}var wt="STORE_KEY_PRIVATE_KEY",rt="STORE_KEY_PUBLIC_JWK",Rt="ECDSA",Pr="P-256",mo={name:Rt,namedCurve:Pr},vo={name:Rt,namedCurve:Pr};function Dr(){Et(rt),Et(wt)}function go(){return de(this,null,function*(){let e=yield yo();if(!e){console.info("unable to create public key or webcrypto is unsupported");return}let{subtle:t}=window.crypto,n=yield je(wt);if(!n||!t){console.info("unable to find private key or webcrypto unsupported");return}let o={iat:Math.floor(new Date().getTime()/1e3),jti:po()},s={typ:"dpop+jwt",alg:"ES256",jwk:e},c={protected:pr(JSON.stringify(s)),claims:pr(JSON.stringify(o))},g=Io(`${c.protected}.${c.claims}`),p={name:Rt,hash:{name:"SHA-256"}},m=wo(new Uint8Array(yield t.sign(p,n,g)));return`${c.protected}.${c.claims}.${m}`})}function yo(){return de(this,null,function*(){if(!_o()){console.info("webcrypto is not supported");return}return(yield je(rt))||(yield Eo()),je(rt)})}function Eo(){return de(this,null,function*(){let e=null,{subtle:t}=window.crypto,n=yield t.generateKey(mo,!0,["sign"]),o=yield t.exportKey("jwk",n.privateKey);e=yield t.exportKey("jwk",n.publicKey);let s=yield t.importKey("jwk",o,vo,!1,["sign"]);yield tt(wt,s),yield tt(rt,e)})}function _o(){let e=typeof window!="undefined"&&!!window.crypto,t=e&&!!window.crypto.subtle;return e&&t}function pr(e){return Cr(bo(e))}function Io(e){return new TextEncoder().encode(e)}function Cr(e){return btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+/g,"")}function bo(e){return encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(t,n)=>String.fromCharCode(parseInt(n,16)))}function wo(e){let t="";return e.forEach(n=>{t+=String.fromCharCode(n)}),Cr(t)}var Ro=class extends Me{getIdToken(e){let t=X(this.sdk.testMode?F.GetIdTokenTestMode:F.GetIdToken,[e]);return this.request(t)}generateIdToken(e){let t=X(this.sdk.testMode?F.GenerateIdTokenTestMode:F.GenerateIdToken,[e]);return this.request(t)}getMetadata(){let e=X(this.sdk.testMode?F.GetMetadataTestMode:F.GetMetadata);return this.request(e)}updateEmail(e){let{email:t,showUI:n=!0}=e,o=X(this.sdk.testMode?F.UpdateEmailTestMode:F.UpdateEmail,[{email:t,showUI:n}]);return this.request(o)}isLoggedIn(){let e=X(this.sdk.testMode?F.IsLoggedInTestMode:F.IsLoggedIn);return this.request(e)}logout(){Dr();let e=X(this.sdk.testMode?F.LogoutTestMode:F.Logout);return this.request(e)}showSettings(){let e=X(this.sdk.testMode?F.UserSettingsTestMode:F.UserSettings);return this.request(e)}updatePhoneNumber(){let e=X(this.sdk.testMode?F.UpdatePhoneNumberTestMode:F.UpdatePhoneNumber);return this.request(e)}},Ao=class extends Me{connectWithUI(){let e=X(F.RequestAccounts);return this.request(e)}showUI(){let e=X(F.ShowUI);return this.request(e)}getInfo(){let e=X(F.GetInfo);return this.request(e)}requestUserInfoWithUI(e){let t=X(F.RequestUserInfoWithUI,e?[e]:[]);return this.request(t)}disconnect(){Dr();let e=X(F.Disconnect);return this.request(e)}},{createBoundEmitterMethod:Je,createChainingEmitterMethod:Ne}=Tr(),So=class extends Me{constructor(){super(...arguments),this.isMagic=!0,this.on=Ne("on",this),this.once=Ne("once",this),this.addListener=Ne("addListener",this),this.off=Ne("off",this),this.removeListener=Ne("removeListener",this),this.removeAllListeners=Ne("removeAllListeners",this),this.emit=Je("emit"),this.eventNames=Je("eventNames"),this.listeners=Je("listeners"),this.listenerCount=Je("listenerCount")}sendAsync(e,t){if(!t)throw Zi({procedure:"Magic.rpcProvider.sendAsync",argument:1,expected:"function",received:t===null?"null":typeof t});if(Array.isArray(e))this.overlay.post(_e.MAGIC_HANDLE_REQUEST,e.map(n=>{let o=et(n);return this.prefixPayloadMethodForTestMode(o),o})).then(n=>{t(null,n.map(o=>zn(yr({},o.payload),{error:o.hasError?new Oe(o.payload.error):null})))});else{let n=et(e);this.prefixPayloadMethodForTestMode(n),this.overlay.post(_e.MAGIC_HANDLE_REQUEST,n).then(o=>{t(o.hasError?new Oe(o.payload.error):null,o.payload)})}}send(e,t){if(typeof e=="string"){let o=X(e,Array.isArray(t)?t:[]);return this.request(o)}if(Array.isArray(e)||!!t){this.sendAsync(e,t);return}let n=eo();return n.log(),new It(e).applyError({code:-32603,message:n.rawMessage}).payload}enable(){let e=X("eth_accounts");return this.request(e)}request(e){return this.prefixPayloadMethodForTestMode(e),super.request(e)}prefixPayloadMethodForTestMode(e){let t="testMode/eth/";this.sdk.testMode&&(e.method=`${t}${e.method}`)}};function ke(e,t){return t?new URL(e,t):new URL(e)}var mr=["request","overlay","sdk"];function No(e){let t=Object.getPrototypeOf(e),n=[t];for(;t!==Me.prototype;)t=Object.getPrototypeOf(t),n.push(t);return n}var xr=class extends Me{constructor(){super(void 0),this.__sdk_access_field_descriptors__=new Map,this.__is_initialized__=!1,this.utils={createPromiEvent:Lr,isPromiEvent:bt,encodeJSON:_r,decodeJSON:Yi,createJsonRpcRequestPayload:X,standardizeJsonRpcRequestPayload:et,storage:$r};let e=[this,...No(this)];mr.forEach(t=>{let n=e.map(g=>Object.getOwnPropertyDescriptor(g,t)),o=n.findIndex(g=>!!g),s=o>0,c=n[o];c&&(this.__sdk_access_field_descriptors__.set(t,{descriptor:c,isPrototypeField:s}),Object.defineProperty(this,t,{configurable:!0,get:()=>{throw Ji(t)}}))})}init(e){this.__is_initialized__||(mr.forEach(t=>{if(this.__sdk_access_field_descriptors__.has(t)){let{descriptor:n,isPrototypeField:o}=this.__sdk_access_field_descriptors__.get(t);o?delete this[t]:Object.defineProperty(this,t,n)}}),this.sdk=e,this.__is_initialized__=!0)}createDeprecationWarning(e){let{method:t,removalVersion:n,useInstead:o}=e,s=o?` Use \`${o}\` instead.`:"",c=`\`${t}\` will be removed from this Extension in version \`${n}\`.${s}`;return new Ze(this,"DEPRECATION_NOTICE",c)}createWarning(e,t){return new Ze(this,e,t)}createError(e,t,n){return new it(this,e,t,n)}},To=class extends xr{},Ie=class extends xr{};Ie.Internal=To,Ie.Anonymous="anonymous extension";function vr(e){return e.compat&&e.compat[z.sdkName]!=null?typeof e.compat[z.sdkName]=="string"?Ci(Fi(z.version),e.compat[z.sdkName]):!!e.compat[z.sdkName]:!0}function Oo(e){var t;let n=(t=e==null?void 0:e.extensions)!=null?t:[],o={},s=[];if(Array.isArray(n)?n.forEach(c=>{vr(c)?(c.init(this),(c.name||c.name!==Ie.Anonymous)&&(this[c.name]=c),c instanceof Ie.Internal&&(yt(c.config)||(o[c.name]=c.config))):s.push(c)}):Object.keys(n).forEach(c=>{if(vr(n[c])){n[c].init(this);let g=n[c];this[c]=g,g instanceof Ie.Internal&&(yt(g.config)||(o[n[c].name]=g.config))}else s.push(n[c])}),s.length)throw Qi(s);return o}var Qe=class{constructor(e,t){this.apiKey=e;var n;if(!e)throw qi();z.platform==="react-native"&&(t==null?void 0:t.endpoint)&&to().log();let{defaultEndpoint:o,version:s}=z;this.testMode=!!(t!=null&&t.testMode),this.endpoint=ke((n=t==null?void 0:t.endpoint)!=null?n:o).origin,this.auth=new so(this),this.user=new Ro(this),this.wallet=new Ao(this),this.rpcProvider=new So(this);let c=Oo.call(this,t);this.parameters=_r(yr({API_KEY:this.apiKey,DOMAIN_ORIGIN:window.location?window.location.origin:"",ETH_NETWORK:t==null?void 0:t.network,host:ke(this.endpoint).host,sdk:Xi[z.sdkName],version:s,ext:yt(c)?void 0:c,locale:(t==null?void 0:t.locale)||"en_US"},z.bundleId?{bundleId:z.bundleId}:{}))}get overlay(){if(!Qe.__overlays__.has(this.parameters)){let e=new z.ViewController(this.endpoint,this.parameters);e.init(),Qe.__overlays__.set(this.parameters,e)}return Qe.__overlays__.get(this.parameters)}preload(){return de(this,null,function*(){yield this.overlay.ready})}},At=Qe;At.__overlays__=new Map;function Lo(e,t){return t&&Array.isArray(e)?e.find(n=>n.id===t):e}function Mo(e,t){var n;let o=(n=t.data.response)==null?void 0:n.id,s=Lo(e,o);if(o&&s){let c=new It(s).applyResult(t.data.response.result).applyError(t.data.response.error);return{id:o,response:c}}return{}}function $o(e,t){return de(this,null,function*(){let n=yield je("rt"),o;if(z.platform==="web")try{o=yield go()}catch(s){console.error("webcrypto error",s)}return o?n?{msgType:e,payload:t,jwt:o,rt:n}:{msgType:e,payload:t,jwt:o}:{msgType:e,payload:t}})}function Po(e){return de(this,null,function*(){!e.data.rt||(yield tt("rt",e.data.rt))})}var Ur=class{constructor(e,t){this.endpoint=e,this.parameters=t,this.messageHandlers=new Set,this.ready=this.waitForReady(),this.listen()}post(e,t){return de(this,null,function*(){return Mr(n=>de(this,null,function*(){yield this.ready;let o=[],s=Array.isArray(t)?t.map(m=>m.id):[],c=yield $o(`${e}-${this.parameters}`,t);yield this._post(c);let g=m=>v=>{let{id:y,response:N}=Mo(t,v);Po(v),y&&N&&Array.isArray(t)&&s.includes(y)?(o.push(N),o.length===t.length&&(m(),n(o))):y&&N&&!Array.isArray(t)&&y===t.id&&(m(),n(N))},p=this.on(fe.MAGIC_HANDLE_RESPONSE,g(()=>p()))}))})}on(e,t){let n=t.bind(window),o=s=>{s.data.msgType===`${e}-${this.parameters}`&&n(s)};return this.messageHandlers.add(o),()=>this.messageHandlers.delete(o)}waitForReady(){return new Promise(e=>{this.on(fe.MAGIC_OVERLAY_READY,()=>e())})}listen(){this.on(fe.MAGIC_HIDE_OVERLAY,()=>{this.hideOverlay()}),this.on(fe.MAGIC_SHOW_OVERLAY,()=>{this.showOverlay()})}};var St={};Zt(St,{EthChainType:()=>rr,Extension:()=>Ie,ExtensionError:()=>it,ExtensionWarning:()=>Ze,MagicIncomingWindowMessage:()=>fe,MagicOutgoingWindowMessage:()=>_e,MagicPayloadMethod:()=>F,RPCError:()=>Oe,RPCErrorCode:()=>Se,SDKError:()=>he,SDKErrorCode:()=>le,SDKWarning:()=>Ye,SDKWarningCode:()=>Ae,isPromiEvent:()=>bt});var st=tr(Fr()),Tt=tr(jr());var Do={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"};function Co(e){for(let[t,n]of Object.entries(Do))e.style[t]=n}function xo(e){let t=[].slice.call(document.querySelectorAll(".magic-iframe"));return Boolean(t.find(n=>n.src.includes(e)))}var at=class extends Ur{constructor(){super(...arguments);this.activeElement=null}init(){this.test="hello",this.iframe=new Promise(n=>{let o=()=>{if(xo(encodeURIComponent(this.parameters)))Rr().log();else{let s=document.createElement("iframe");s.classList.add("magic-iframe"),s.dataset.magicIframeLabel=ke(this.endpoint).host,s.title="Secure Modal",s.src=ke(`/send?params=${encodeURIComponent(this.parameters)}`,this.endpoint).href,Co(s),document.body.appendChild(s),n(s)}};["loaded","interactive","complete"].includes(document.readyState)?o():window.addEventListener("load",o,!1)}),window.addEventListener("message",n=>{var o;if(n.origin===this.endpoint&&n.data&&n.data.msgType&&this.messageHandlers.size){n.data.response=(o=n.data.response)!=null?o:{};for(let s of this.messageHandlers.values())s(n)}})}showOverlay(){return Re(this,null,function*(){let n=yield this.iframe;n.style.display="block",this.activeElement=document.activeElement,n.focus()})}hideOverlay(){return Re(this,null,function*(){var o;let n=yield this.iframe;n.style.display="none",(o=this.activeElement)!=null&&o.focus&&this.activeElement.focus(),this.activeElement=null})}_post(n){return Re(this,null,function*(){let o=yield this.iframe;if(o&&o.contentWindow)o.contentWindow.postMessage(n,this.endpoint);else throw wr()})}};var Uo=Object.assign(br(At,{platform:"web",sdkName:"magic-sdk",version:"13.3.1",defaultEndpoint:"https://auth.magic.link/",ViewController:at,configureStorage:()=>Re(void 0,null,function*(){let e=st.default.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return yield e.defineDriver(Tt),yield e.setDriver([st.default.INDEXEDDB,st.default.LOCALSTORAGE,Tt._driver]),e})}),Jt({},St)),Bo=Uo;return kn(Fo);})();
6
6
  if (Magic && Magic.default != null) { Magic = Object.assign(Magic.default, Magic); delete Magic.default; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "magic-sdk",
3
- "version": "13.3.0",
3
+ "version": "13.3.1",
4
4
  "description": "Passwordless authentication for the web.",
5
5
  "author": "Magic Labs <team@magic.link> (https://magic.link/)",
6
6
  "license": "MIT",
@@ -39,5 +39,5 @@
39
39
  "@babel/runtime": "^7.9.6",
40
40
  "localforage-driver-memory": "^1.0.5"
41
41
  },
42
- "gitHead": "b47d6e0f3679e61fc9b87e5b9bd72c9fc0120249"
42
+ "gitHead": "6f097fd573c6f5013c66a3e5be19803b46fd3e6c"
43
43
  }