magic-sdk
Advanced tools
Comparing version 2.2.1-alpha.0 to 2.3.0
@@ -15,2 +15,9 @@ ## Upcoming Changes | ||
## `2.3.0` - 07/08/2020 | ||
#### Added | ||
- WebAuthn support. | ||
- `localforage` APIs for Magic SDK Extensions. | ||
## `2.1.0` - 06/25/2020 | ||
@@ -17,0 +24,0 @@ |
@@ -1,2 +0,2 @@ | ||
require("regenerator-runtime/runtime");var e=require("@magic-sdk/provider"),r=require("@magic-sdk/types");function t(e,r){e.prototype=Object.create(r.prototype),e.prototype.constructor=e,e.__proto__=r}function n(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}var o={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"},i=function(r){function n(){return r.apply(this,arguments)||this}t(n,r);var i=n.prototype;return i.init=function(){this.iframe=this.createIframe()},i.createIframe=function(){var r=this;return new Promise(function(t){var n=function(){if(i=encodeURIComponent(r.encodedQueryParams),a=[].slice.call(document.querySelectorAll(".magic-iframe")),Boolean(a.find(function(e){return e.src.includes(i)})))e.createDuplicateIframeWarning().log();else{var n=document.createElement("iframe");n.classList.add("magic-iframe"),n.dataset.magicIframeLabel=e.createURL(r.endpoint).host,n.src=e.createURL("/send?params="+encodeURIComponent(r.encodedQueryParams),r.endpoint).href,function(e){for(var r=0,t=Object.entries(o);r<t.length;r++){var n=t[r];e.style[n[0]]=n[1]}}(n),document.body.appendChild(n),t(n)}var i,a};["loaded","interactive","complete"].includes(document.readyState)?n():window.addEventListener("load",n,!1)})},i.showOverlay=function(){try{return Promise.resolve(this.iframe).then(function(e){e.style.display="block"})}catch(e){return Promise.reject(e)}},i.hideOverlay=function(){try{return Promise.resolve(this.iframe).then(function(e){e.style.display="none"})}catch(e){return Promise.reject(e)}},i.postMessage=function(r){try{return Promise.resolve(this.iframe).then(function(t){if(!t||!t.contentWindow)throw e.createModalNotReadyError();t.contentWindow.postMessage(r,"*")})}catch(e){return Promise.reject(e)}},n}(e.ViewController),a=e.createSDK(e.SDKBase,{target:"web",sdkName:"magic-sdk",version:"2.2.1-alpha.0",defaultEndpoint:"https://auth.magic.link/",ViewController:i,PayloadTransport:function(e){function r(){return e.apply(this,arguments)||this}return t(r,e),r.prototype.init=function(){var e=this;window.addEventListener("message",function(r){if(r.origin===e.endpoint&&r.data&&r.data.msgType&&e.messageHandlers.size){var t;r.data.response=null!=(t=r.data.response)?t:{};for(var o,i=function(e,r){var t;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(t=function(e,r){if(e){if("string"==typeof e)return n(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?n(e,void 0):void 0}}(e))){t&&(e=t);var o=0;return function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(t=e[Symbol.iterator]()).next.bind(t)}(e.messageHandlers.values());!(o=i()).done;)(0,o.value)(r)}})},r}(e.PayloadTransport)});Object.keys(r).forEach(function(e){"default"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return r[e]}})}),Object.defineProperty(exports,"Extension",{enumerable:!0,get:function(){return e.Extension}}),Object.defineProperty(exports,"ExtensionError",{enumerable:!0,get:function(){return e.MagicExtensionError}}),Object.defineProperty(exports,"ExtensionWarning",{enumerable:!0,get:function(){return e.MagicExtensionWarning}}),Object.defineProperty(exports,"RPCError",{enumerable:!0,get:function(){return e.MagicRPCError}}),Object.defineProperty(exports,"SDKError",{enumerable:!0,get:function(){return e.MagicSDKError}}),Object.defineProperty(exports,"SDKWarning",{enumerable:!0,get:function(){return e.MagicSDKWarning}}),exports.Magic=a; | ||
require("regenerator-runtime/runtime");var e,r=require("@magic-sdk/provider"),t=(e=require("localforage"))&&"object"==typeof e&&"default"in e?e.default:e,n=require("localforage-driver-memory"),o=require("@magic-sdk/types");function i(e,r){e.prototype=Object.create(r.prototype),e.prototype.constructor=e,e.__proto__=r}function a(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}var c={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"},s=function(e){function t(){return e.apply(this,arguments)||this}i(t,e);var n=t.prototype;return n.init=function(){this.iframe=this.createIframe()},n.createIframe=function(){var e=this;return new Promise(function(t){var n=function(){if(o=encodeURIComponent(e.encodedQueryParams),i=[].slice.call(document.querySelectorAll(".magic-iframe")),Boolean(i.find(function(e){return e.src.includes(o)})))r.createDuplicateIframeWarning().log();else{var n=document.createElement("iframe");n.classList.add("magic-iframe"),n.dataset.magicIframeLabel=r.createURL(e.endpoint).host,n.src=r.createURL("/send?params="+encodeURIComponent(e.encodedQueryParams),e.endpoint).href,function(e){for(var r=0,t=Object.entries(c);r<t.length;r++){var n=t[r];e.style[n[0]]=n[1]}}(n),document.body.appendChild(n),t(n)}var o,i};["loaded","interactive","complete"].includes(document.readyState)?n():window.addEventListener("load",n,!1)})},n.showOverlay=function(){try{return Promise.resolve(this.iframe).then(function(e){e.style.display="block"})}catch(e){return Promise.reject(e)}},n.hideOverlay=function(){try{return Promise.resolve(this.iframe).then(function(e){e.style.display="none"})}catch(e){return Promise.reject(e)}},n.postMessage=function(e){try{return Promise.resolve(this.iframe).then(function(t){if(!t||!t.contentWindow)throw r.createModalNotReadyError();t.contentWindow.postMessage(e,"*")})}catch(e){return Promise.reject(e)}},t}(r.ViewController),u=r.createSDK(r.SDKBase,{target:"web",sdkName:"magic-sdk",version:"2.3.0",defaultEndpoint:"https://auth.magic.link/",ViewController:s,PayloadTransport:function(e){function r(){return e.apply(this,arguments)||this}return i(r,e),r.prototype.init=function(){var e=this;window.addEventListener("message",function(r){if(r.origin===e.endpoint&&r.data&&r.data.msgType&&e.messageHandlers.size){var t;r.data.response=null!=(t=r.data.response)?t:{};for(var n,o=function(e,r){var t;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(t=function(e,r){if(e){if("string"==typeof e)return a(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?a(e,void 0):void 0}}(e))){t&&(e=t);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(t=e[Symbol.iterator]()).next.bind(t)}(e.messageHandlers.values());!(n=o()).done;)(0,n.value)(r)}})},r}(r.PayloadTransport),configureStorage:function(){try{var e=t.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return Promise.resolve(e.defineDriver(n)).then(function(){return Promise.resolve(e.setDriver([t.INDEXEDDB,t.LOCALSTORAGE,n._driver])).then(function(){return e})})}catch(e){return Promise.reject(e)}}});Object.keys(o).forEach(function(e){"default"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return o[e]}})}),Object.defineProperty(exports,"Extension",{enumerable:!0,get:function(){return r.Extension}}),Object.defineProperty(exports,"ExtensionError",{enumerable:!0,get:function(){return r.MagicExtensionError}}),Object.defineProperty(exports,"ExtensionWarning",{enumerable:!0,get:function(){return r.MagicExtensionWarning}}),Object.defineProperty(exports,"RPCError",{enumerable:!0,get:function(){return r.MagicRPCError}}),Object.defineProperty(exports,"SDKError",{enumerable:!0,get:function(){return r.MagicSDKError}}),Object.defineProperty(exports,"SDKWarning",{enumerable:!0,get:function(){return r.MagicSDKWarning}}),exports.Magic=u; | ||
//# sourceMappingURL=index.js.map |
@@ -1,2 +0,2 @@ | ||
import"regenerator-runtime/runtime";import{createModalNotReadyError as e,createURL as r,createDuplicateIframeWarning as t,ViewController as n,PayloadTransport as o,createSDK as i,SDKBase as a}from"@magic-sdk/provider";export{Extension,MagicExtensionError as ExtensionError,MagicExtensionWarning as ExtensionWarning,MagicRPCError as RPCError,MagicSDKError as SDKError,MagicSDKWarning as SDKWarning}from"@magic-sdk/provider";export*from"@magic-sdk/types";function s(e,r){e.prototype=Object.create(r.prototype),e.prototype.constructor=e,e.__proto__=r}function c(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}var d={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"},u=i(a,{target:"web",sdkName:"magic-sdk",version:"2.2.1-alpha.0",defaultEndpoint:"https://auth.magic.link/",ViewController:function(n){function o(){return n.apply(this,arguments)||this}s(o,n);var i=o.prototype;return i.init=function(){this.iframe=this.createIframe()},i.createIframe=function(){var e=this;return new Promise(function(n){var o=function(){if(i=encodeURIComponent(e.encodedQueryParams),a=[].slice.call(document.querySelectorAll(".magic-iframe")),Boolean(a.find(function(e){return e.src.includes(i)})))t().log();else{var o=document.createElement("iframe");o.classList.add("magic-iframe"),o.dataset.magicIframeLabel=r(e.endpoint).host,o.src=r("/send?params="+encodeURIComponent(e.encodedQueryParams),e.endpoint).href,function(e){for(var r=0,t=Object.entries(d);r<t.length;r++){var n=t[r];e.style[n[0]]=n[1]}}(o),document.body.appendChild(o),n(o)}var i,a};["loaded","interactive","complete"].includes(document.readyState)?o():window.addEventListener("load",o,!1)})},i.showOverlay=function(){try{return Promise.resolve(this.iframe).then(function(e){e.style.display="block"})}catch(e){return Promise.reject(e)}},i.hideOverlay=function(){try{return Promise.resolve(this.iframe).then(function(e){e.style.display="none"})}catch(e){return Promise.reject(e)}},i.postMessage=function(r){try{return Promise.resolve(this.iframe).then(function(t){if(!t||!t.contentWindow)throw e();t.contentWindow.postMessage(r,"*")})}catch(e){return Promise.reject(e)}},o}(n),PayloadTransport:function(e){function r(){return e.apply(this,arguments)||this}return s(r,e),r.prototype.init=function(){var e=this;window.addEventListener("message",function(r){if(r.origin===e.endpoint&&r.data&&r.data.msgType&&e.messageHandlers.size){var t;r.data.response=null!=(t=r.data.response)?t:{};for(var n,o=function(e,r){var t;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(t=function(e,r){if(e){if("string"==typeof e)return c(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?c(e,void 0):void 0}}(e))){t&&(e=t);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(t=e[Symbol.iterator]()).next.bind(t)}(e.messageHandlers.values());!(n=o()).done;)(0,n.value)(r)}})},r}(o)});export{u as Magic}; | ||
import"regenerator-runtime/runtime";import{createModalNotReadyError as e,createURL as r,createDuplicateIframeWarning as t,ViewController as n,PayloadTransport as o,createSDK as i,SDKBase as a}from"@magic-sdk/provider";export{Extension,MagicExtensionError as ExtensionError,MagicExtensionWarning as ExtensionWarning,MagicRPCError as RPCError,MagicSDKError as SDKError,MagicSDKWarning as SDKWarning}from"@magic-sdk/provider";import s from"localforage";import*as c from"localforage-driver-memory";import{_driver as d}from"localforage-driver-memory";export*from"@magic-sdk/types";function u(e,r){e.prototype=Object.create(r.prototype),e.prototype.constructor=e,e.__proto__=r}function m(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}var l={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"},f=i(a,{target:"web",sdkName:"magic-sdk",version:"2.3.0",defaultEndpoint:"https://auth.magic.link/",ViewController:function(n){function o(){return n.apply(this,arguments)||this}u(o,n);var i=o.prototype;return i.init=function(){this.iframe=this.createIframe()},i.createIframe=function(){var e=this;return new Promise(function(n){var o=function(){if(i=encodeURIComponent(e.encodedQueryParams),a=[].slice.call(document.querySelectorAll(".magic-iframe")),Boolean(a.find(function(e){return e.src.includes(i)})))t().log();else{var o=document.createElement("iframe");o.classList.add("magic-iframe"),o.dataset.magicIframeLabel=r(e.endpoint).host,o.src=r("/send?params="+encodeURIComponent(e.encodedQueryParams),e.endpoint).href,function(e){for(var r=0,t=Object.entries(l);r<t.length;r++){var n=t[r];e.style[n[0]]=n[1]}}(o),document.body.appendChild(o),n(o)}var i,a};["loaded","interactive","complete"].includes(document.readyState)?o():window.addEventListener("load",o,!1)})},i.showOverlay=function(){try{return Promise.resolve(this.iframe).then(function(e){e.style.display="block"})}catch(e){return Promise.reject(e)}},i.hideOverlay=function(){try{return Promise.resolve(this.iframe).then(function(e){e.style.display="none"})}catch(e){return Promise.reject(e)}},i.postMessage=function(r){try{return Promise.resolve(this.iframe).then(function(t){if(!t||!t.contentWindow)throw e();t.contentWindow.postMessage(r,"*")})}catch(e){return Promise.reject(e)}},o}(n),PayloadTransport:function(e){function r(){return e.apply(this,arguments)||this}return u(r,e),r.prototype.init=function(){var e=this;window.addEventListener("message",function(r){if(r.origin===e.endpoint&&r.data&&r.data.msgType&&e.messageHandlers.size){var t;r.data.response=null!=(t=r.data.response)?t:{};for(var n,o=function(e,r){var t;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(t=function(e,r){if(e){if("string"==typeof e)return m(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?m(e,void 0):void 0}}(e))){t&&(e=t);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(t=e[Symbol.iterator]()).next.bind(t)}(e.messageHandlers.values());!(n=o()).done;)(0,n.value)(r)}})},r}(o),configureStorage:function(){try{var e=s.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return Promise.resolve(e.defineDriver(c)).then(function(){return Promise.resolve(e.setDriver([s.INDEXEDDB,s.LOCALSTORAGE,d])).then(function(){return e})})}catch(e){return Promise.reject(e)}}});export{f as Magic}; | ||
//# sourceMappingURL=index.m.js.map |
@@ -1,2 +0,2 @@ | ||
import"regenerator-runtime/runtime";import{ViewController as e,createModalNotReadyError as t,createURL as n,createDuplicateIframeWarning as a,PayloadTransport as i,createSDK as s,SDKBase as r}from"@magic-sdk/provider";export{Extension,MagicExtensionError as ExtensionError,MagicExtensionWarning as ExtensionWarning,MagicRPCError as RPCError,MagicSDKError as SDKError,MagicSDKWarning as SDKWarning}from"@magic-sdk/provider";export*from"@magic-sdk/types";const o={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"},d=s(r,{target:"web",sdkName:"magic-sdk",version:"2.2.1-alpha.0",defaultEndpoint:"https://auth.magic.link/",ViewController:class extends e{init(){this.iframe=this.createIframe()}createIframe(){return new Promise(e=>{const t=()=>{if(function(e){const t=[].slice.call(document.querySelectorAll(".magic-iframe"));return Boolean(t.find(t=>t.src.includes(e)))}(encodeURIComponent(this.encodedQueryParams)))a().log();else{const t=document.createElement("iframe");t.classList.add("magic-iframe"),t.dataset.magicIframeLabel=n(this.endpoint).host,t.src=n("/send?params="+encodeURIComponent(this.encodedQueryParams),this.endpoint).href,function(e){for(const[t,n]of Object.entries(o))e.style[t]=n}(t),document.body.appendChild(t),e(t)}};["loaded","interactive","complete"].includes(document.readyState)?t():window.addEventListener("load",t,!1)})}async showOverlay(){(await this.iframe).style.display="block"}async hideOverlay(){(await this.iframe).style.display="none"}async postMessage(e){const n=await this.iframe;if(!n||!n.contentWindow)throw t();n.contentWindow.postMessage(e,"*")}},PayloadTransport:class extends i{init(){window.addEventListener("message",e=>{if(e.origin===this.endpoint&&e.data&&e.data.msgType&&this.messageHandlers.size){e.data.response=e.data.response??{};for(const t of this.messageHandlers.values())t(e)}})}}});export{d as Magic}; | ||
import"regenerator-runtime/runtime";import{ViewController as e,createModalNotReadyError as a,createURL as r,createDuplicateIframeWarning as t,PayloadTransport as o,createSDK as i,SDKBase as n}from"@magic-sdk/provider";export{Extension,MagicExtensionError as ExtensionError,MagicExtensionWarning as ExtensionWarning,MagicRPCError as RPCError,MagicSDKError as SDKError,MagicSDKWarning as SDKWarning}from"@magic-sdk/provider";import s from"localforage";import*as d from"localforage-driver-memory";import{_driver as c}from"localforage-driver-memory";export*from"@magic-sdk/types";const m={display:"none",position:"fixed",top:"0",right:"0",width:"100%",height:"100%",borderRadius:"0",border:"none",zIndex:"2147483647"},l=i(n,{target:"web",sdkName:"magic-sdk",version:"2.3.0",defaultEndpoint:"https://auth.magic.link/",ViewController:class extends e{init(){this.iframe=this.createIframe()}createIframe(){return new Promise(e=>{const a=()=>{if(function(e){const a=[].slice.call(document.querySelectorAll(".magic-iframe"));return Boolean(a.find(a=>a.src.includes(e)))}(encodeURIComponent(this.encodedQueryParams)))t().log();else{const a=document.createElement("iframe");a.classList.add("magic-iframe"),a.dataset.magicIframeLabel=r(this.endpoint).host,a.src=r("/send?params="+encodeURIComponent(this.encodedQueryParams),this.endpoint).href,function(e){for(const[a,r]of Object.entries(m))e.style[a]=r}(a),document.body.appendChild(a),e(a)}};["loaded","interactive","complete"].includes(document.readyState)?a():window.addEventListener("load",a,!1)})}async showOverlay(){(await this.iframe).style.display="block"}async hideOverlay(){(await this.iframe).style.display="none"}async postMessage(e){const r=await this.iframe;if(!r||!r.contentWindow)throw a();r.contentWindow.postMessage(e,"*")}},PayloadTransport:class extends o{init(){window.addEventListener("message",e=>{if(e.origin===this.endpoint&&e.data&&e.data.msgType&&this.messageHandlers.size){e.data.response=e.data.response??{};for(const a of this.messageHandlers.values())a(e)}})}},configureStorage:async()=>{const e=s.createInstance({name:"MagicAuthLocalStorageDB",storeName:"MagicAuthLocalStorage"});return await e.defineDriver(d),await e.setDriver([s.INDEXEDDB,s.LOCALSTORAGE,c]),e}});export{l as Magic}; | ||
//# sourceMappingURL=index.modern.js.map |
{ | ||
"name": "magic-sdk", | ||
"version": "2.2.1-alpha.0", | ||
"version": "2.3.0", | ||
"description": "Passwordless authentication for the web.", | ||
@@ -30,4 +30,6 @@ "author": "Fortmatic <team@fortmatic.com> (https://fortmatic.com/)", | ||
"@babel/runtime": "^7.9.6", | ||
"@magic-sdk/provider": "^2.3.1-alpha.0", | ||
"@magic-sdk/types": "^1.2.1-alpha.0", | ||
"@magic-sdk/provider": "^2.4.0", | ||
"@magic-sdk/types": "^1.3.0", | ||
"localforage": "^1.7.4", | ||
"localforage-driver-memory": "^1.0.5", | ||
"regenerator-runtime": "0.13.5" | ||
@@ -62,3 +64,3 @@ }, | ||
}, | ||
"gitHead": "d59abcf55f2b99627e55d302bb9c451c01403cf2" | ||
"gitHead": "c876c882f597f199550c414ef2712c387003cb8e" | ||
} |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
113432
342
1
7
+ Addedlocalforage@^1.7.4
+ Addedlocalforage-driver-commons@1.0.3(transitive)
+ Addedlocalforage-driver-memory@1.0.5(transitive)
+ Addedtslib@1.14.1(transitive)
Updated@magic-sdk/provider@^2.4.0
Updated@magic-sdk/types@^1.3.0