diff options
Diffstat (limited to 'firebase-io')
| -rwxr-xr-x | firebase-io/firebase-io.js | 9 | ||||
| -rw-r--r-- | firebase-io/package-lock.json | 3013 | ||||
| -rw-r--r-- | firebase-io/package.json | 4 | 
3 files changed, 2259 insertions, 767 deletions
diff --git a/firebase-io/firebase-io.js b/firebase-io/firebase-io.js index 8ace07c..78f2dd3 100755 --- a/firebase-io/firebase-io.js +++ b/firebase-io/firebase-io.js @@ -1,5 +1,6 @@  #!/usr/bin/env node -const firebase=require("firebase-admin"); +const firebase_app=require("firebase-admin/app") +const firebase_messaging=require("firebase-admin/messaging")  const util=require("util");  // Potential TODO's: @@ -8,8 +9,8 @@ const util=require("util");  //     correctly managing this requires synchronisation between app and server  //     of exactly what keys have disappeared in the meantime -firebase.initializeApp({ -	credential:firebase.credential.cert(require("./firebaseServiceAccountKey.json")), +firebase_app.initializeApp({ +	credential:firebase_app.cert(require("./firebaseServiceAccountKey.json")),  	databaseURL:"https://tomsg-83196.firebaseio.com",  }); @@ -96,7 +97,7 @@ function processMessage(type,fields){  			const options={  				collapseKey: "tomsg-collapseKey",  			}; -			firebase.messaging().sendToDevice(token,payload,options) +			firebase_messaging.getMessaging().sendToDevice(token,payload,options)  				.then((response)=>{  					const result=response.results[0];  					const realToken=result.canonicalRegistrationToken; diff --git a/firebase-io/package-lock.json b/firebase-io/package-lock.json index 0cea39d..b8913b5 100644 --- a/firebase-io/package-lock.json +++ b/firebase-io/package-lock.json @@ -1,97 +1,1793 @@  {    "name": "tomsg-firebase",    "version": "0.1.0", -  "lockfileVersion": 1, +  "lockfileVersion": 2,    "requires": true, +  "packages": { +    "": { +      "name": "tomsg-firebase", +      "version": "0.1.0", +      "license": "MIT", +      "dependencies": { +        "firebase-admin": "^10.0.2" +      } +    }, +    "node_modules/@firebase/app": { +      "version": "0.7.20", +      "resolved": "https://registry.npmjs.org/@firebase/app/-/app-0.7.20.tgz", +      "integrity": "sha512-tTVrEYCbEKBcMp/bj5rUa35iM32W5z9l3jbLAqDh0ZM2yO4JvF08a3hHacZ32XDh9Av/yCgla0QmVPp/Z2klNg==", +      "peer": true, +      "dependencies": { +        "@firebase/component": "0.5.12", +        "@firebase/logger": "0.3.2", +        "@firebase/util": "1.5.1", +        "tslib": "^2.1.0" +      } +    }, +    "node_modules/@firebase/app-compat": { +      "version": "0.1.21", +      "resolved": "https://registry.npmjs.org/@firebase/app-compat/-/app-compat-0.1.21.tgz", +      "integrity": "sha512-zKRjOt6JXZ6gBdl3ELdjvEQ7cdrsrCjLEaLttBxioqW9VxXZfBOgP38uUb0baJk2XNEUA6YWM+H/bg1y+FGFYA==", +      "peer": true, +      "dependencies": { +        "@firebase/app": "0.7.20", +        "@firebase/component": "0.5.12", +        "@firebase/logger": "0.3.2", +        "@firebase/util": "1.5.1", +        "tslib": "^2.1.0" +      } +    }, +    "node_modules/@firebase/app-types": { +      "version": "0.7.0", +      "resolved": "https://registry.npmjs.org/@firebase/app-types/-/app-types-0.7.0.tgz", +      "integrity": "sha512-6fbHQwDv2jp/v6bXhBw2eSRbNBpxHcd1NBF864UksSMVIqIyri9qpJB1Mn6sGZE+bnDsSQBC5j2TbMxYsJQkQg==" +    }, +    "node_modules/@firebase/auth-interop-types": { +      "version": "0.1.6", +      "resolved": "https://registry.npmjs.org/@firebase/auth-interop-types/-/auth-interop-types-0.1.6.tgz", +      "integrity": "sha512-etIi92fW3CctsmR9e3sYM3Uqnoq861M0Id9mdOPF6PWIg38BXL5k4upCNBggGUpLIS0H1grMOvy/wn1xymwe2g==", +      "peerDependencies": { +        "@firebase/app-types": "0.x", +        "@firebase/util": "1.x" +      } +    }, +    "node_modules/@firebase/component": { +      "version": "0.5.12", +      "resolved": "https://registry.npmjs.org/@firebase/component/-/component-0.5.12.tgz", +      "integrity": "sha512-gAKwxo0Ev+rp7Px+Yr71WbcC0CM9Tevhv0g38ORp2p57HqGjY65D3MD+jTKGZl58N/0nmX6MRRKym3bq/3k1gw==", +      "dependencies": { +        "@firebase/util": "1.5.1", +        "tslib": "^2.1.0" +      } +    }, +    "node_modules/@firebase/database": { +      "version": "0.12.7", +      "resolved": "https://registry.npmjs.org/@firebase/database/-/database-0.12.7.tgz", +      "integrity": "sha512-HL2NMQ3Ce5YNM2MdEuACHmU9NQEwq2F64R0XK+CReph40skxp+A7TvlJDO5bTAC0s3l3ebgCA9VmxfJu5R6UAA==", +      "dependencies": { +        "@firebase/auth-interop-types": "0.1.6", +        "@firebase/component": "0.5.12", +        "@firebase/logger": "0.3.2", +        "@firebase/util": "1.5.1", +        "faye-websocket": "0.11.4", +        "tslib": "^2.1.0" +      } +    }, +    "node_modules/@firebase/database-compat": { +      "version": "0.1.7", +      "resolved": "https://registry.npmjs.org/@firebase/database-compat/-/database-compat-0.1.7.tgz", +      "integrity": "sha512-T1mleRv2A8wyTV/jUuOdkN9Tl2lz0RGauqGc9nxP3AUzS9m3gIDN7u4CahZSdJlkR6tSU/MEWlfs5Q/oZStqxg==", +      "dependencies": { +        "@firebase/component": "0.5.12", +        "@firebase/database": "0.12.7", +        "@firebase/database-types": "0.9.6", +        "@firebase/logger": "0.3.2", +        "@firebase/util": "1.5.1", +        "tslib": "^2.1.0" +      }, +      "peerDependencies": { +        "@firebase/app-compat": "0.x" +      } +    }, +    "node_modules/@firebase/database-types": { +      "version": "0.9.6", +      "resolved": "https://registry.npmjs.org/@firebase/database-types/-/database-types-0.9.6.tgz", +      "integrity": "sha512-E7U28X+FtVtug7EkIkaOXbdP8ghCPno21WWgEiDKsneY28N5WOwccfXqSzHgAAezkR40ht/ZqXlCsUhEpv6JXw==", +      "dependencies": { +        "@firebase/app-types": "0.7.0", +        "@firebase/util": "1.5.1" +      } +    }, +    "node_modules/@firebase/logger": { +      "version": "0.3.2", +      "resolved": "https://registry.npmjs.org/@firebase/logger/-/logger-0.3.2.tgz", +      "integrity": "sha512-lzLrcJp9QBWpo40OcOM9B8QEtBw2Fk1zOZQdvv+rWS6gKmhQBCEMc4SMABQfWdjsylBcDfniD1Q+fUX1dcBTXA==", +      "dependencies": { +        "tslib": "^2.1.0" +      } +    }, +    "node_modules/@firebase/util": { +      "version": "1.5.1", +      "resolved": "https://registry.npmjs.org/@firebase/util/-/util-1.5.1.tgz", +      "integrity": "sha512-ojwPg8sKVcoU/kC1QdTrD+eUDyjQkZyiH9tlouXeZdAeDddCYNvHgIeBQhZt62WIcjlNhy1zro/xdV5nUUU38A==", +      "dependencies": { +        "tslib": "^2.1.0" +      } +    }, +    "node_modules/@google-cloud/firestore": { +      "version": "4.15.1", +      "resolved": "https://registry.npmjs.org/@google-cloud/firestore/-/firestore-4.15.1.tgz", +      "integrity": "sha512-2PWsCkEF1W02QbghSeRsNdYKN1qavrHBP3m72gPDMHQSYrGULOaTi7fSJquQmAtc4iPVB2/x6h80rdLHTATQtA==", +      "optional": true, +      "dependencies": { +        "fast-deep-equal": "^3.1.1", +        "functional-red-black-tree": "^1.0.1", +        "google-gax": "^2.24.1", +        "protobufjs": "^6.8.6" +      }, +      "engines": { +        "node": ">=10.10.0" +      } +    }, +    "node_modules/@google-cloud/paginator": { +      "version": "3.0.7", +      "resolved": "https://registry.npmjs.org/@google-cloud/paginator/-/paginator-3.0.7.tgz", +      "integrity": "sha512-jJNutk0arIQhmpUUQJPJErsojqo834KcyB6X7a1mxuic8i1tKXxde8E69IZxNZawRIlZdIK2QY4WALvlK5MzYQ==", +      "optional": true, +      "dependencies": { +        "arrify": "^2.0.0", +        "extend": "^3.0.2" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/@google-cloud/projectify": { +      "version": "2.1.1", +      "resolved": "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.1.1.tgz", +      "integrity": "sha512-+rssMZHnlh0twl122gXY4/aCrk0G1acBqkHFfYddtsqpYXGxA29nj9V5V9SfC+GyOG00l650f6lG9KL+EpFEWQ==", +      "optional": true, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/@google-cloud/promisify": { +      "version": "2.0.4", +      "resolved": "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.4.tgz", +      "integrity": "sha512-j8yRSSqswWi1QqUGKVEKOG03Q7qOoZP6/h2zN2YO+F5h2+DHU0bSrHCK9Y7lo2DI9fBd8qGAw795sf+3Jva4yA==", +      "optional": true, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/@google-cloud/storage": { +      "version": "5.19.1", +      "resolved": "https://registry.npmjs.org/@google-cloud/storage/-/storage-5.19.1.tgz", +      "integrity": "sha512-bRTf/AD00+lPTamJdpihXC3AFtAnJFWNh/zQAor972VpuATF7u4V1anwWp0V6rKuKE3BwNM+xWxuuW/nAwEgTA==", +      "optional": true, +      "dependencies": { +        "@google-cloud/paginator": "^3.0.7", +        "@google-cloud/projectify": "^2.0.0", +        "@google-cloud/promisify": "^2.0.0", +        "abort-controller": "^3.0.0", +        "arrify": "^2.0.0", +        "async-retry": "^1.3.3", +        "compressible": "^2.0.12", +        "configstore": "^5.0.0", +        "date-and-time": "^2.0.0", +        "duplexify": "^4.0.0", +        "ent": "^2.2.0", +        "extend": "^3.0.2", +        "gaxios": "^4.0.0", +        "get-stream": "^6.0.0", +        "google-auth-library": "^7.14.1", +        "hash-stream-validation": "^0.2.2", +        "mime": "^3.0.0", +        "mime-types": "^2.0.8", +        "p-limit": "^3.0.1", +        "pumpify": "^2.0.0", +        "retry-request": "^4.2.2", +        "snakeize": "^0.1.0", +        "stream-events": "^1.0.4", +        "teeny-request": "^7.1.3", +        "xdg-basedir": "^4.0.0" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/@grpc/grpc-js": { +      "version": "1.5.10", +      "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.10.tgz", +      "integrity": "sha512-++oAubX/7rJzlqH0ShyzDENNNDHYrlttdc3NM40KlaVQDcgGqQknuPoavmyTC+oNUDyxPCX5dHceKhfcgN3tiw==", +      "optional": true, +      "dependencies": { +        "@grpc/proto-loader": "^0.6.4", +        "@types/node": ">=12.12.47" +      }, +      "engines": { +        "node": "^8.13.0 || >=10.10.0" +      } +    }, +    "node_modules/@grpc/proto-loader": { +      "version": "0.6.9", +      "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.9.tgz", +      "integrity": "sha512-UlcCS8VbsU9d3XTXGiEVFonN7hXk+oMXZtoHHG2oSA1/GcDP1q6OUgs20PzHDGizzyi8ufGSUDlk3O2NyY7leg==", +      "optional": true, +      "dependencies": { +        "@types/long": "^4.0.1", +        "lodash.camelcase": "^4.3.0", +        "long": "^4.0.0", +        "protobufjs": "^6.10.0", +        "yargs": "^16.2.0" +      }, +      "bin": { +        "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js" +      }, +      "engines": { +        "node": ">=6" +      } +    }, +    "node_modules/@panva/asn1.js": { +      "version": "1.0.0", +      "resolved": "https://registry.npmjs.org/@panva/asn1.js/-/asn1.js-1.0.0.tgz", +      "integrity": "sha512-UdkG3mLEqXgnlKsWanWcgb6dOjUzJ+XC5f+aWw30qrtjxeNUSfKX1cd5FBzOaXQumoe9nIqeZUvrRJS03HCCtw==", +      "engines": { +        "node": ">=10.13.0" +      } +    }, +    "node_modules/@protobufjs/aspromise": { +      "version": "1.1.2", +      "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", +      "integrity": "sha1-m4sMxmPWaafY9vXQiToU00jzD78=", +      "optional": true +    }, +    "node_modules/@protobufjs/base64": { +      "version": "1.1.2", +      "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", +      "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==", +      "optional": true +    }, +    "node_modules/@protobufjs/codegen": { +      "version": "2.0.4", +      "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", +      "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==", +      "optional": true +    }, +    "node_modules/@protobufjs/eventemitter": { +      "version": "1.1.0", +      "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", +      "integrity": "sha1-NVy8mLr61ZePntCV85diHx0Ga3A=", +      "optional": true +    }, +    "node_modules/@protobufjs/fetch": { +      "version": "1.1.0", +      "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", +      "integrity": "sha1-upn7WYYUr2VwDBYZ/wbUVLDYTEU=", +      "optional": true, +      "dependencies": { +        "@protobufjs/aspromise": "^1.1.1", +        "@protobufjs/inquire": "^1.1.0" +      } +    }, +    "node_modules/@protobufjs/float": { +      "version": "1.0.2", +      "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", +      "integrity": "sha1-Xp4avctz/Ap8uLKR33jIy9l7h9E=", +      "optional": true +    }, +    "node_modules/@protobufjs/inquire": { +      "version": "1.1.0", +      "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", +      "integrity": "sha1-/yAOPnzyQp4tyvwRQIKOjMY48Ik=", +      "optional": true +    }, +    "node_modules/@protobufjs/path": { +      "version": "1.1.2", +      "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", +      "integrity": "sha1-bMKyDFya1q0NzP0hynZz2Nf79o0=", +      "optional": true +    }, +    "node_modules/@protobufjs/pool": { +      "version": "1.1.0", +      "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", +      "integrity": "sha1-Cf0V8tbTq/qbZbw2ZQbWrXhG/1Q=", +      "optional": true +    }, +    "node_modules/@protobufjs/utf8": { +      "version": "1.1.0", +      "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", +      "integrity": "sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=", +      "optional": true +    }, +    "node_modules/@tootallnate/once": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", +      "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", +      "optional": true, +      "engines": { +        "node": ">= 10" +      } +    }, +    "node_modules/@types/body-parser": { +      "version": "1.19.2", +      "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", +      "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", +      "dependencies": { +        "@types/connect": "*", +        "@types/node": "*" +      } +    }, +    "node_modules/@types/connect": { +      "version": "3.4.35", +      "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", +      "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", +      "dependencies": { +        "@types/node": "*" +      } +    }, +    "node_modules/@types/express": { +      "version": "4.17.13", +      "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", +      "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", +      "dependencies": { +        "@types/body-parser": "*", +        "@types/express-serve-static-core": "^4.17.18", +        "@types/qs": "*", +        "@types/serve-static": "*" +      } +    }, +    "node_modules/@types/express-jwt": { +      "version": "0.0.42", +      "resolved": "https://registry.npmjs.org/@types/express-jwt/-/express-jwt-0.0.42.tgz", +      "integrity": "sha512-WszgUddvM1t5dPpJ3LhWNH8kfNN8GPIBrAGxgIYXVCEGx6Bx4A036aAuf/r5WH9DIEdlmp7gHOYvSM6U87B0ag==", +      "dependencies": { +        "@types/express": "*", +        "@types/express-unless": "*" +      } +    }, +    "node_modules/@types/express-serve-static-core": { +      "version": "4.17.28", +      "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz", +      "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==", +      "dependencies": { +        "@types/node": "*", +        "@types/qs": "*", +        "@types/range-parser": "*" +      } +    }, +    "node_modules/@types/express-unless": { +      "version": "0.5.3", +      "resolved": "https://registry.npmjs.org/@types/express-unless/-/express-unless-0.5.3.tgz", +      "integrity": "sha512-TyPLQaF6w8UlWdv4gj8i46B+INBVzURBNRahCozCSXfsK2VTlL1wNyTlMKw817VHygBtlcl5jfnPadlydr06Yw==", +      "dependencies": { +        "@types/express": "*" +      } +    }, +    "node_modules/@types/long": { +      "version": "4.0.1", +      "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz", +      "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==", +      "optional": true +    }, +    "node_modules/@types/mime": { +      "version": "1.3.2", +      "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", +      "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" +    }, +    "node_modules/@types/node": { +      "version": "17.0.23", +      "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", +      "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==" +    }, +    "node_modules/@types/qs": { +      "version": "6.9.7", +      "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", +      "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" +    }, +    "node_modules/@types/range-parser": { +      "version": "1.2.4", +      "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", +      "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" +    }, +    "node_modules/@types/serve-static": { +      "version": "1.13.10", +      "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", +      "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", +      "dependencies": { +        "@types/mime": "^1", +        "@types/node": "*" +      } +    }, +    "node_modules/abort-controller": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", +      "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", +      "optional": true, +      "dependencies": { +        "event-target-shim": "^5.0.0" +      }, +      "engines": { +        "node": ">=6.5" +      } +    }, +    "node_modules/agent-base": { +      "version": "6.0.2", +      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", +      "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", +      "optional": true, +      "dependencies": { +        "debug": "4" +      }, +      "engines": { +        "node": ">= 6.0.0" +      } +    }, +    "node_modules/ansi-regex": { +      "version": "5.0.1", +      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", +      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", +      "optional": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/ansi-styles": { +      "version": "4.3.0", +      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", +      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", +      "optional": true, +      "dependencies": { +        "color-convert": "^2.0.1" +      }, +      "engines": { +        "node": ">=8" +      }, +      "funding": { +        "url": "https://github.com/chalk/ansi-styles?sponsor=1" +      } +    }, +    "node_modules/arrify": { +      "version": "2.0.1", +      "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", +      "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", +      "optional": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/async-retry": { +      "version": "1.3.3", +      "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz", +      "integrity": "sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==", +      "optional": true, +      "dependencies": { +        "retry": "0.13.1" +      } +    }, +    "node_modules/base64-js": { +      "version": "1.5.1", +      "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", +      "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", +      "funding": [ +        { +          "type": "github", +          "url": "https://github.com/sponsors/feross" +        }, +        { +          "type": "patreon", +          "url": "https://www.patreon.com/feross" +        }, +        { +          "type": "consulting", +          "url": "https://feross.org/support" +        } +      ], +      "optional": true +    }, +    "node_modules/bignumber.js": { +      "version": "9.0.2", +      "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", +      "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==", +      "optional": true, +      "engines": { +        "node": "*" +      } +    }, +    "node_modules/buffer-equal-constant-time": { +      "version": "1.0.1", +      "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", +      "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=" +    }, +    "node_modules/cliui": { +      "version": "7.0.4", +      "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", +      "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", +      "optional": true, +      "dependencies": { +        "string-width": "^4.2.0", +        "strip-ansi": "^6.0.0", +        "wrap-ansi": "^7.0.0" +      } +    }, +    "node_modules/color-convert": { +      "version": "2.0.1", +      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", +      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", +      "optional": true, +      "dependencies": { +        "color-name": "~1.1.4" +      }, +      "engines": { +        "node": ">=7.0.0" +      } +    }, +    "node_modules/color-name": { +      "version": "1.1.4", +      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", +      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", +      "optional": true +    }, +    "node_modules/compressible": { +      "version": "2.0.18", +      "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", +      "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", +      "optional": true, +      "dependencies": { +        "mime-db": ">= 1.43.0 < 2" +      }, +      "engines": { +        "node": ">= 0.6" +      } +    }, +    "node_modules/configstore": { +      "version": "5.0.1", +      "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", +      "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", +      "optional": true, +      "dependencies": { +        "dot-prop": "^5.2.0", +        "graceful-fs": "^4.1.2", +        "make-dir": "^3.0.0", +        "unique-string": "^2.0.0", +        "write-file-atomic": "^3.0.0", +        "xdg-basedir": "^4.0.0" +      }, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/crypto-random-string": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", +      "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", +      "optional": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/date-and-time": { +      "version": "2.3.1", +      "resolved": "https://registry.npmjs.org/date-and-time/-/date-and-time-2.3.1.tgz", +      "integrity": "sha512-OaIRmSJXifwEN21rMVVDs0Kz8uhJ3wWPYd86atkRiqN54liaMQYEbbrgjZQea75YXOBWL4ZFb3rG/waenw1TEg==", +      "optional": true +    }, +    "node_modules/debug": { +      "version": "4.3.4", +      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", +      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", +      "dependencies": { +        "ms": "2.1.2" +      }, +      "engines": { +        "node": ">=6.0" +      }, +      "peerDependenciesMeta": { +        "supports-color": { +          "optional": true +        } +      } +    }, +    "node_modules/dicer": { +      "version": "0.3.0", +      "resolved": "https://registry.npmjs.org/dicer/-/dicer-0.3.0.tgz", +      "integrity": "sha512-MdceRRWqltEG2dZqO769g27N/3PXfcKl04VhYnBlo2YhH7zPi88VebsjTKclaOyiuMaGU72hTfw3VkUitGcVCA==", +      "dependencies": { +        "streamsearch": "0.1.2" +      }, +      "engines": { +        "node": ">=4.5.0" +      } +    }, +    "node_modules/dot-prop": { +      "version": "5.3.0", +      "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", +      "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", +      "optional": true, +      "dependencies": { +        "is-obj": "^2.0.0" +      }, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/duplexify": { +      "version": "4.1.2", +      "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", +      "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==", +      "optional": true, +      "dependencies": { +        "end-of-stream": "^1.4.1", +        "inherits": "^2.0.3", +        "readable-stream": "^3.1.1", +        "stream-shift": "^1.0.0" +      } +    }, +    "node_modules/ecdsa-sig-formatter": { +      "version": "1.0.11", +      "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", +      "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", +      "dependencies": { +        "safe-buffer": "^5.0.1" +      } +    }, +    "node_modules/emoji-regex": { +      "version": "8.0.0", +      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", +      "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", +      "optional": true +    }, +    "node_modules/end-of-stream": { +      "version": "1.4.4", +      "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", +      "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", +      "optional": true, +      "dependencies": { +        "once": "^1.4.0" +      } +    }, +    "node_modules/ent": { +      "version": "2.2.0", +      "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", +      "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", +      "optional": true +    }, +    "node_modules/escalade": { +      "version": "3.1.1", +      "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", +      "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", +      "optional": true, +      "engines": { +        "node": ">=6" +      } +    }, +    "node_modules/event-target-shim": { +      "version": "5.0.1", +      "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", +      "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", +      "optional": true, +      "engines": { +        "node": ">=6" +      } +    }, +    "node_modules/extend": { +      "version": "3.0.2", +      "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", +      "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", +      "optional": true +    }, +    "node_modules/fast-deep-equal": { +      "version": "3.1.3", +      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", +      "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", +      "optional": true +    }, +    "node_modules/fast-text-encoding": { +      "version": "1.0.3", +      "resolved": "https://registry.npmjs.org/fast-text-encoding/-/fast-text-encoding-1.0.3.tgz", +      "integrity": "sha512-dtm4QZH9nZtcDt8qJiOH9fcQd1NAgi+K1O2DbE6GG1PPCK/BWfOH3idCTRQ4ImXRUOyopDEgDEnVEE7Y/2Wrig==", +      "optional": true +    }, +    "node_modules/faye-websocket": { +      "version": "0.11.4", +      "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", +      "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", +      "dependencies": { +        "websocket-driver": ">=0.5.1" +      }, +      "engines": { +        "node": ">=0.8.0" +      } +    }, +    "node_modules/firebase-admin": { +      "version": "10.0.2", +      "resolved": "https://registry.npmjs.org/firebase-admin/-/firebase-admin-10.0.2.tgz", +      "integrity": "sha512-MLH0SPmC4L0aCHvPjs1KThraru/T84T3hxiPY3uCH7NZEgE/T5n4GwecwU3RcM3X+br75BIBY7qhaR5uCxhdXA==", +      "dependencies": { +        "@firebase/database-compat": "^0.1.1", +        "@firebase/database-types": "^0.9.3", +        "@types/node": ">=12.12.47", +        "dicer": "^0.3.0", +        "jsonwebtoken": "^8.5.1", +        "jwks-rsa": "^2.0.2", +        "node-forge": "^1.0.0" +      }, +      "engines": { +        "node": ">=12.7.0" +      }, +      "optionalDependencies": { +        "@google-cloud/firestore": "^4.5.0", +        "@google-cloud/storage": "^5.3.0" +      } +    }, +    "node_modules/functional-red-black-tree": { +      "version": "1.0.1", +      "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", +      "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", +      "optional": true +    }, +    "node_modules/gaxios": { +      "version": "4.3.3", +      "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.3.tgz", +      "integrity": "sha512-gSaYYIO1Y3wUtdfHmjDUZ8LWaxJQpiavzbF5Kq53akSzvmVg0RfyOcFDbO1KJ/KCGRFz2qG+lS81F0nkr7cRJA==", +      "optional": true, +      "dependencies": { +        "abort-controller": "^3.0.0", +        "extend": "^3.0.2", +        "https-proxy-agent": "^5.0.0", +        "is-stream": "^2.0.0", +        "node-fetch": "^2.6.7" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/gcp-metadata": { +      "version": "4.3.1", +      "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz", +      "integrity": "sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==", +      "optional": true, +      "dependencies": { +        "gaxios": "^4.0.0", +        "json-bigint": "^1.0.0" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/get-caller-file": { +      "version": "2.0.5", +      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", +      "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", +      "optional": true, +      "engines": { +        "node": "6.* || 8.* || >= 10.*" +      } +    }, +    "node_modules/get-stream": { +      "version": "6.0.1", +      "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", +      "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", +      "optional": true, +      "engines": { +        "node": ">=10" +      }, +      "funding": { +        "url": "https://github.com/sponsors/sindresorhus" +      } +    }, +    "node_modules/google-auth-library": { +      "version": "7.14.1", +      "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz", +      "integrity": "sha512-5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA==", +      "optional": true, +      "dependencies": { +        "arrify": "^2.0.0", +        "base64-js": "^1.3.0", +        "ecdsa-sig-formatter": "^1.0.11", +        "fast-text-encoding": "^1.0.0", +        "gaxios": "^4.0.0", +        "gcp-metadata": "^4.2.0", +        "gtoken": "^5.0.4", +        "jws": "^4.0.0", +        "lru-cache": "^6.0.0" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/google-gax": { +      "version": "2.30.1", +      "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-2.30.1.tgz", +      "integrity": "sha512-AR00wrunctUqwKQFl15Yq5bo9NuFLnT0zguZYCf8eAqoOUMbxn9V1L0ONCtV4+P9z7sLu+cjtgl+5b4eRZvktg==", +      "optional": true, +      "dependencies": { +        "@grpc/grpc-js": "~1.5.0", +        "@grpc/proto-loader": "^0.6.1", +        "@types/long": "^4.0.0", +        "abort-controller": "^3.0.0", +        "duplexify": "^4.0.0", +        "fast-text-encoding": "^1.0.3", +        "google-auth-library": "^7.14.0", +        "is-stream-ended": "^0.1.4", +        "node-fetch": "^2.6.1", +        "object-hash": "^3.0.0", +        "proto3-json-serializer": "^0.1.8", +        "protobufjs": "6.11.2", +        "retry-request": "^4.0.0" +      }, +      "bin": { +        "compileProtos": "build/tools/compileProtos.js" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/google-p12-pem": { +      "version": "3.1.4", +      "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.4.tgz", +      "integrity": "sha512-HHuHmkLgwjdmVRngf5+gSmpkyaRI6QmOg77J8tkNBHhNEI62sGHyw4/+UkgyZEI7h84NbWprXDJ+sa3xOYFvTg==", +      "optional": true, +      "dependencies": { +        "node-forge": "^1.3.1" +      }, +      "bin": { +        "gp12-pem": "build/src/bin/gp12-pem.js" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/graceful-fs": { +      "version": "4.2.10", +      "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", +      "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", +      "optional": true +    }, +    "node_modules/gtoken": { +      "version": "5.3.2", +      "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz", +      "integrity": "sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ==", +      "optional": true, +      "dependencies": { +        "gaxios": "^4.0.0", +        "google-p12-pem": "^3.1.3", +        "jws": "^4.0.0" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/hash-stream-validation": { +      "version": "0.2.4", +      "resolved": "https://registry.npmjs.org/hash-stream-validation/-/hash-stream-validation-0.2.4.tgz", +      "integrity": "sha512-Gjzu0Xn7IagXVkSu9cSFuK1fqzwtLwFhNhVL8IFJijRNMgUttFbBSIAzKuSIrsFMO1+g1RlsoN49zPIbwPDMGQ==", +      "optional": true +    }, +    "node_modules/http-parser-js": { +      "version": "0.5.6", +      "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.6.tgz", +      "integrity": "sha512-vDlkRPDJn93swjcjqMSaGSPABbIarsr1TLAui/gLDXzV5VsJNdXNzMYDyNBLQkjWQCJ1uizu8T2oDMhmGt0PRA==" +    }, +    "node_modules/http-proxy-agent": { +      "version": "5.0.0", +      "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", +      "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", +      "optional": true, +      "dependencies": { +        "@tootallnate/once": "2", +        "agent-base": "6", +        "debug": "4" +      }, +      "engines": { +        "node": ">= 6" +      } +    }, +    "node_modules/https-proxy-agent": { +      "version": "5.0.0", +      "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", +      "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", +      "optional": true, +      "dependencies": { +        "agent-base": "6", +        "debug": "4" +      }, +      "engines": { +        "node": ">= 6" +      } +    }, +    "node_modules/imurmurhash": { +      "version": "0.1.4", +      "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", +      "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", +      "optional": true, +      "engines": { +        "node": ">=0.8.19" +      } +    }, +    "node_modules/inherits": { +      "version": "2.0.4", +      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", +      "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", +      "optional": true +    }, +    "node_modules/is-fullwidth-code-point": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", +      "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", +      "optional": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/is-obj": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", +      "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", +      "optional": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/is-stream": { +      "version": "2.0.1", +      "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", +      "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", +      "optional": true, +      "engines": { +        "node": ">=8" +      }, +      "funding": { +        "url": "https://github.com/sponsors/sindresorhus" +      } +    }, +    "node_modules/is-stream-ended": { +      "version": "0.1.4", +      "resolved": "https://registry.npmjs.org/is-stream-ended/-/is-stream-ended-0.1.4.tgz", +      "integrity": "sha512-xj0XPvmr7bQFTvirqnFr50o0hQIh6ZItDqloxt5aJrR4NQsYeSsyFQERYGCAzfindAcnKjINnwEEgLx4IqVzQw==", +      "optional": true +    }, +    "node_modules/is-typedarray": { +      "version": "1.0.0", +      "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", +      "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", +      "optional": true +    }, +    "node_modules/jose": { +      "version": "2.0.5", +      "resolved": "https://registry.npmjs.org/jose/-/jose-2.0.5.tgz", +      "integrity": "sha512-BAiDNeDKTMgk4tvD0BbxJ8xHEHBZgpeRZ1zGPPsitSyMgjoMWiLGYAE7H7NpP5h0lPppQajQs871E8NHUrzVPA==", +      "dependencies": { +        "@panva/asn1.js": "^1.0.0" +      }, +      "engines": { +        "node": ">=10.13.0 < 13 || >=13.7.0" +      }, +      "funding": { +        "url": "https://github.com/sponsors/panva" +      } +    }, +    "node_modules/json-bigint": { +      "version": "1.0.0", +      "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz", +      "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==", +      "optional": true, +      "dependencies": { +        "bignumber.js": "^9.0.0" +      } +    }, +    "node_modules/jsonwebtoken": { +      "version": "8.5.1", +      "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", +      "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", +      "dependencies": { +        "jws": "^3.2.2", +        "lodash.includes": "^4.3.0", +        "lodash.isboolean": "^3.0.3", +        "lodash.isinteger": "^4.0.4", +        "lodash.isnumber": "^3.0.3", +        "lodash.isplainobject": "^4.0.6", +        "lodash.isstring": "^4.0.1", +        "lodash.once": "^4.0.0", +        "ms": "^2.1.1", +        "semver": "^5.6.0" +      }, +      "engines": { +        "node": ">=4", +        "npm": ">=1.4.28" +      } +    }, +    "node_modules/jsonwebtoken/node_modules/jwa": { +      "version": "1.4.1", +      "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", +      "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", +      "dependencies": { +        "buffer-equal-constant-time": "1.0.1", +        "ecdsa-sig-formatter": "1.0.11", +        "safe-buffer": "^5.0.1" +      } +    }, +    "node_modules/jsonwebtoken/node_modules/jws": { +      "version": "3.2.2", +      "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", +      "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", +      "dependencies": { +        "jwa": "^1.4.1", +        "safe-buffer": "^5.0.1" +      } +    }, +    "node_modules/jsonwebtoken/node_modules/semver": { +      "version": "5.7.1", +      "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", +      "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", +      "bin": { +        "semver": "bin/semver" +      } +    }, +    "node_modules/jwa": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz", +      "integrity": "sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==", +      "optional": true, +      "dependencies": { +        "buffer-equal-constant-time": "1.0.1", +        "ecdsa-sig-formatter": "1.0.11", +        "safe-buffer": "^5.0.1" +      } +    }, +    "node_modules/jwks-rsa": { +      "version": "2.0.5", +      "resolved": "https://registry.npmjs.org/jwks-rsa/-/jwks-rsa-2.0.5.tgz", +      "integrity": "sha512-fliHfsiBRzEU0nXzSvwnh0hynzGB0WihF+CinKbSRlaqRxbqqKf2xbBPgwc8mzf18/WgwlG8e5eTpfSTBcU4DQ==", +      "dependencies": { +        "@types/express-jwt": "0.0.42", +        "debug": "^4.3.2", +        "jose": "^2.0.5", +        "limiter": "^1.1.5", +        "lru-memoizer": "^2.1.4" +      }, +      "engines": { +        "node": ">=10 < 13 || >=14" +      } +    }, +    "node_modules/jws": { +      "version": "4.0.0", +      "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz", +      "integrity": "sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==", +      "optional": true, +      "dependencies": { +        "jwa": "^2.0.0", +        "safe-buffer": "^5.0.1" +      } +    }, +    "node_modules/limiter": { +      "version": "1.1.5", +      "resolved": "https://registry.npmjs.org/limiter/-/limiter-1.1.5.tgz", +      "integrity": "sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==" +    }, +    "node_modules/lodash.camelcase": { +      "version": "4.3.0", +      "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", +      "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", +      "optional": true +    }, +    "node_modules/lodash.clonedeep": { +      "version": "4.5.0", +      "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", +      "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" +    }, +    "node_modules/lodash.includes": { +      "version": "4.3.0", +      "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", +      "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=" +    }, +    "node_modules/lodash.isboolean": { +      "version": "3.0.3", +      "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", +      "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=" +    }, +    "node_modules/lodash.isinteger": { +      "version": "4.0.4", +      "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", +      "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=" +    }, +    "node_modules/lodash.isnumber": { +      "version": "3.0.3", +      "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", +      "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=" +    }, +    "node_modules/lodash.isplainobject": { +      "version": "4.0.6", +      "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", +      "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" +    }, +    "node_modules/lodash.isstring": { +      "version": "4.0.1", +      "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", +      "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" +    }, +    "node_modules/lodash.once": { +      "version": "4.1.1", +      "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", +      "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=" +    }, +    "node_modules/long": { +      "version": "4.0.0", +      "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", +      "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", +      "optional": true +    }, +    "node_modules/lru-cache": { +      "version": "6.0.0", +      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", +      "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", +      "optional": true, +      "dependencies": { +        "yallist": "^4.0.0" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/lru-memoizer": { +      "version": "2.1.4", +      "resolved": "https://registry.npmjs.org/lru-memoizer/-/lru-memoizer-2.1.4.tgz", +      "integrity": "sha512-IXAq50s4qwrOBrXJklY+KhgZF+5y98PDaNo0gi/v2KQBFLyWr+JyFvijZXkGKjQj/h9c0OwoE+JZbwUXce76hQ==", +      "dependencies": { +        "lodash.clonedeep": "^4.5.0", +        "lru-cache": "~4.0.0" +      } +    }, +    "node_modules/lru-memoizer/node_modules/lru-cache": { +      "version": "4.0.2", +      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.0.2.tgz", +      "integrity": "sha1-HRdnnAac2l0ECZGgnbwsDbN35V4=", +      "dependencies": { +        "pseudomap": "^1.0.1", +        "yallist": "^2.0.0" +      } +    }, +    "node_modules/lru-memoizer/node_modules/yallist": { +      "version": "2.1.2", +      "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", +      "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" +    }, +    "node_modules/make-dir": { +      "version": "3.1.0", +      "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", +      "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", +      "optional": true, +      "dependencies": { +        "semver": "^6.0.0" +      }, +      "engines": { +        "node": ">=8" +      }, +      "funding": { +        "url": "https://github.com/sponsors/sindresorhus" +      } +    }, +    "node_modules/mime": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", +      "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", +      "optional": true, +      "bin": { +        "mime": "cli.js" +      }, +      "engines": { +        "node": ">=10.0.0" +      } +    }, +    "node_modules/mime-db": { +      "version": "1.52.0", +      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", +      "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", +      "optional": true, +      "engines": { +        "node": ">= 0.6" +      } +    }, +    "node_modules/mime-types": { +      "version": "2.1.35", +      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", +      "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", +      "optional": true, +      "dependencies": { +        "mime-db": "1.52.0" +      }, +      "engines": { +        "node": ">= 0.6" +      } +    }, +    "node_modules/ms": { +      "version": "2.1.2", +      "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", +      "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" +    }, +    "node_modules/node-fetch": { +      "version": "2.6.7", +      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", +      "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", +      "optional": true, +      "dependencies": { +        "whatwg-url": "^5.0.0" +      }, +      "engines": { +        "node": "4.x || >=6.0.0" +      }, +      "peerDependencies": { +        "encoding": "^0.1.0" +      }, +      "peerDependenciesMeta": { +        "encoding": { +          "optional": true +        } +      } +    }, +    "node_modules/node-forge": { +      "version": "1.3.1", +      "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", +      "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", +      "engines": { +        "node": ">= 6.13.0" +      } +    }, +    "node_modules/object-hash": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", +      "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", +      "optional": true, +      "engines": { +        "node": ">= 6" +      } +    }, +    "node_modules/once": { +      "version": "1.4.0", +      "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", +      "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", +      "optional": true, +      "dependencies": { +        "wrappy": "1" +      } +    }, +    "node_modules/p-limit": { +      "version": "3.1.0", +      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", +      "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", +      "optional": true, +      "dependencies": { +        "yocto-queue": "^0.1.0" +      }, +      "engines": { +        "node": ">=10" +      }, +      "funding": { +        "url": "https://github.com/sponsors/sindresorhus" +      } +    }, +    "node_modules/proto3-json-serializer": { +      "version": "0.1.8", +      "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.8.tgz", +      "integrity": "sha512-ACilkB6s1U1gWnl5jtICpnDai4VCxmI9GFxuEaYdxtDG2oVI3sVFIUsvUZcQbJgtPM6p+zqKbjTKQZp6Y4FpQw==", +      "optional": true, +      "dependencies": { +        "protobufjs": "^6.11.2" +      } +    }, +    "node_modules/protobufjs": { +      "version": "6.11.2", +      "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", +      "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==", +      "hasInstallScript": true, +      "optional": true, +      "dependencies": { +        "@protobufjs/aspromise": "^1.1.2", +        "@protobufjs/base64": "^1.1.2", +        "@protobufjs/codegen": "^2.0.4", +        "@protobufjs/eventemitter": "^1.1.0", +        "@protobufjs/fetch": "^1.1.0", +        "@protobufjs/float": "^1.0.2", +        "@protobufjs/inquire": "^1.1.0", +        "@protobufjs/path": "^1.1.2", +        "@protobufjs/pool": "^1.1.0", +        "@protobufjs/utf8": "^1.1.0", +        "@types/long": "^4.0.1", +        "@types/node": ">=13.7.0", +        "long": "^4.0.0" +      }, +      "bin": { +        "pbjs": "bin/pbjs", +        "pbts": "bin/pbts" +      } +    }, +    "node_modules/pseudomap": { +      "version": "1.0.2", +      "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", +      "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" +    }, +    "node_modules/pump": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", +      "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", +      "optional": true, +      "dependencies": { +        "end-of-stream": "^1.1.0", +        "once": "^1.3.1" +      } +    }, +    "node_modules/pumpify": { +      "version": "2.0.1", +      "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-2.0.1.tgz", +      "integrity": "sha512-m7KOje7jZxrmutanlkS1daj1dS6z6BgslzOXmcSEpIlCxM3VJH7lG5QLeck/6hgF6F4crFf01UtQmNsJfweTAw==", +      "optional": true, +      "dependencies": { +        "duplexify": "^4.1.1", +        "inherits": "^2.0.3", +        "pump": "^3.0.0" +      } +    }, +    "node_modules/readable-stream": { +      "version": "3.6.0", +      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", +      "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", +      "optional": true, +      "dependencies": { +        "inherits": "^2.0.3", +        "string_decoder": "^1.1.1", +        "util-deprecate": "^1.0.1" +      }, +      "engines": { +        "node": ">= 6" +      } +    }, +    "node_modules/require-directory": { +      "version": "2.1.1", +      "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", +      "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", +      "optional": true, +      "engines": { +        "node": ">=0.10.0" +      } +    }, +    "node_modules/retry": { +      "version": "0.13.1", +      "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", +      "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", +      "optional": true, +      "engines": { +        "node": ">= 4" +      } +    }, +    "node_modules/retry-request": { +      "version": "4.2.2", +      "resolved": "https://registry.npmjs.org/retry-request/-/retry-request-4.2.2.tgz", +      "integrity": "sha512-xA93uxUD/rogV7BV59agW/JHPGXeREMWiZc9jhcwY4YdZ7QOtC7qbomYg0n4wyk2lJhggjvKvhNX8wln/Aldhg==", +      "optional": true, +      "dependencies": { +        "debug": "^4.1.1", +        "extend": "^3.0.2" +      }, +      "engines": { +        "node": ">=8.10.0" +      } +    }, +    "node_modules/safe-buffer": { +      "version": "5.2.1", +      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", +      "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", +      "funding": [ +        { +          "type": "github", +          "url": "https://github.com/sponsors/feross" +        }, +        { +          "type": "patreon", +          "url": "https://www.patreon.com/feross" +        }, +        { +          "type": "consulting", +          "url": "https://feross.org/support" +        } +      ] +    }, +    "node_modules/semver": { +      "version": "6.3.0", +      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", +      "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", +      "optional": true, +      "bin": { +        "semver": "bin/semver.js" +      } +    }, +    "node_modules/signal-exit": { +      "version": "3.0.7", +      "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", +      "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", +      "optional": true +    }, +    "node_modules/snakeize": { +      "version": "0.1.0", +      "resolved": "https://registry.npmjs.org/snakeize/-/snakeize-0.1.0.tgz", +      "integrity": "sha1-EMCI2LWOsHazIpu1oE4jLOEmQi0=", +      "optional": true +    }, +    "node_modules/stream-events": { +      "version": "1.0.5", +      "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz", +      "integrity": "sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==", +      "optional": true, +      "dependencies": { +        "stubs": "^3.0.0" +      } +    }, +    "node_modules/stream-shift": { +      "version": "1.0.1", +      "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", +      "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", +      "optional": true +    }, +    "node_modules/streamsearch": { +      "version": "0.1.2", +      "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-0.1.2.tgz", +      "integrity": "sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo=", +      "engines": { +        "node": ">=0.8.0" +      } +    }, +    "node_modules/string_decoder": { +      "version": "1.3.0", +      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", +      "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", +      "optional": true, +      "dependencies": { +        "safe-buffer": "~5.2.0" +      } +    }, +    "node_modules/string-width": { +      "version": "4.2.3", +      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", +      "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", +      "optional": true, +      "dependencies": { +        "emoji-regex": "^8.0.0", +        "is-fullwidth-code-point": "^3.0.0", +        "strip-ansi": "^6.0.1" +      }, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/strip-ansi": { +      "version": "6.0.1", +      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", +      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", +      "optional": true, +      "dependencies": { +        "ansi-regex": "^5.0.1" +      }, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/stubs": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz", +      "integrity": "sha1-6NK6H6nJBXAwPAMLaQD31fiavls=", +      "optional": true +    }, +    "node_modules/teeny-request": { +      "version": "7.2.0", +      "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-7.2.0.tgz", +      "integrity": "sha512-SyY0pek1zWsi0LRVAALem+avzMLc33MKW/JLLakdP4s9+D7+jHcy5x6P+h94g2QNZsAqQNfX5lsbd3WSeJXrrw==", +      "optional": true, +      "dependencies": { +        "http-proxy-agent": "^5.0.0", +        "https-proxy-agent": "^5.0.0", +        "node-fetch": "^2.6.1", +        "stream-events": "^1.0.5", +        "uuid": "^8.0.0" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/tr46": { +      "version": "0.0.3", +      "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", +      "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", +      "optional": true +    }, +    "node_modules/tslib": { +      "version": "2.3.1", +      "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", +      "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" +    }, +    "node_modules/typedarray-to-buffer": { +      "version": "3.1.5", +      "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", +      "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", +      "optional": true, +      "dependencies": { +        "is-typedarray": "^1.0.0" +      } +    }, +    "node_modules/unique-string": { +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", +      "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", +      "optional": true, +      "dependencies": { +        "crypto-random-string": "^2.0.0" +      }, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/util-deprecate": { +      "version": "1.0.2", +      "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", +      "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", +      "optional": true +    }, +    "node_modules/uuid": { +      "version": "8.3.2", +      "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", +      "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", +      "optional": true, +      "bin": { +        "uuid": "dist/bin/uuid" +      } +    }, +    "node_modules/webidl-conversions": { +      "version": "3.0.1", +      "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", +      "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", +      "optional": true +    }, +    "node_modules/websocket-driver": { +      "version": "0.7.4", +      "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", +      "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", +      "dependencies": { +        "http-parser-js": ">=0.5.1", +        "safe-buffer": ">=5.1.0", +        "websocket-extensions": ">=0.1.1" +      }, +      "engines": { +        "node": ">=0.8.0" +      } +    }, +    "node_modules/websocket-extensions": { +      "version": "0.1.4", +      "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", +      "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", +      "engines": { +        "node": ">=0.8.0" +      } +    }, +    "node_modules/whatwg-url": { +      "version": "5.0.0", +      "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", +      "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", +      "optional": true, +      "dependencies": { +        "tr46": "~0.0.3", +        "webidl-conversions": "^3.0.0" +      } +    }, +    "node_modules/wrap-ansi": { +      "version": "7.0.0", +      "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", +      "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", +      "optional": true, +      "dependencies": { +        "ansi-styles": "^4.0.0", +        "string-width": "^4.1.0", +        "strip-ansi": "^6.0.0" +      }, +      "engines": { +        "node": ">=10" +      }, +      "funding": { +        "url": "https://github.com/chalk/wrap-ansi?sponsor=1" +      } +    }, +    "node_modules/wrappy": { +      "version": "1.0.2", +      "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", +      "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", +      "optional": true +    }, +    "node_modules/write-file-atomic": { +      "version": "3.0.3", +      "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", +      "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", +      "optional": true, +      "dependencies": { +        "imurmurhash": "^0.1.4", +        "is-typedarray": "^1.0.0", +        "signal-exit": "^3.0.2", +        "typedarray-to-buffer": "^3.1.5" +      } +    }, +    "node_modules/xdg-basedir": { +      "version": "4.0.0", +      "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", +      "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", +      "optional": true, +      "engines": { +        "node": ">=8" +      } +    }, +    "node_modules/y18n": { +      "version": "5.0.8", +      "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", +      "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", +      "optional": true, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/yallist": { +      "version": "4.0.0", +      "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", +      "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", +      "optional": true +    }, +    "node_modules/yargs": { +      "version": "16.2.0", +      "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", +      "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", +      "optional": true, +      "dependencies": { +        "cliui": "^7.0.2", +        "escalade": "^3.1.1", +        "get-caller-file": "^2.0.5", +        "require-directory": "^2.1.1", +        "string-width": "^4.2.0", +        "y18n": "^5.0.5", +        "yargs-parser": "^20.2.2" +      }, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/yargs-parser": { +      "version": "20.2.9", +      "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", +      "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", +      "optional": true, +      "engines": { +        "node": ">=10" +      } +    }, +    "node_modules/yocto-queue": { +      "version": "0.1.0", +      "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", +      "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", +      "optional": true, +      "engines": { +        "node": ">=10" +      }, +      "funding": { +        "url": "https://github.com/sponsors/sindresorhus" +      } +    } +  },    "dependencies": { +    "@firebase/app": { +      "version": "0.7.20", +      "resolved": "https://registry.npmjs.org/@firebase/app/-/app-0.7.20.tgz", +      "integrity": "sha512-tTVrEYCbEKBcMp/bj5rUa35iM32W5z9l3jbLAqDh0ZM2yO4JvF08a3hHacZ32XDh9Av/yCgla0QmVPp/Z2klNg==", +      "peer": true, +      "requires": { +        "@firebase/component": "0.5.12", +        "@firebase/logger": "0.3.2", +        "@firebase/util": "1.5.1", +        "tslib": "^2.1.0" +      } +    }, +    "@firebase/app-compat": { +      "version": "0.1.21", +      "resolved": "https://registry.npmjs.org/@firebase/app-compat/-/app-compat-0.1.21.tgz", +      "integrity": "sha512-zKRjOt6JXZ6gBdl3ELdjvEQ7cdrsrCjLEaLttBxioqW9VxXZfBOgP38uUb0baJk2XNEUA6YWM+H/bg1y+FGFYA==", +      "peer": true, +      "requires": { +        "@firebase/app": "0.7.20", +        "@firebase/component": "0.5.12", +        "@firebase/logger": "0.3.2", +        "@firebase/util": "1.5.1", +        "tslib": "^2.1.0" +      } +    },      "@firebase/app-types": { -      "version": "0.6.1", -      "resolved": "https://registry.npmjs.org/@firebase/app-types/-/app-types-0.6.1.tgz", -      "integrity": "sha512-L/ZnJRAq7F++utfuoTKX4CLBG5YR7tFO3PLzG1/oXXKEezJ0kRL3CMRoueBEmTCzVb/6SIs2Qlaw++uDgi5Xyg==" +      "version": "0.7.0", +      "resolved": "https://registry.npmjs.org/@firebase/app-types/-/app-types-0.7.0.tgz", +      "integrity": "sha512-6fbHQwDv2jp/v6bXhBw2eSRbNBpxHcd1NBF864UksSMVIqIyri9qpJB1Mn6sGZE+bnDsSQBC5j2TbMxYsJQkQg=="      },      "@firebase/auth-interop-types": { -      "version": "0.1.5", -      "resolved": "https://registry.npmjs.org/@firebase/auth-interop-types/-/auth-interop-types-0.1.5.tgz", -      "integrity": "sha512-88h74TMQ6wXChPA6h9Q3E1Jg6TkTHep2+k63OWg3s0ozyGVMeY+TTOti7PFPzq5RhszQPQOoCi59es4MaRvgCw==" +      "version": "0.1.6", +      "resolved": "https://registry.npmjs.org/@firebase/auth-interop-types/-/auth-interop-types-0.1.6.tgz", +      "integrity": "sha512-etIi92fW3CctsmR9e3sYM3Uqnoq861M0Id9mdOPF6PWIg38BXL5k4upCNBggGUpLIS0H1grMOvy/wn1xymwe2g==", +      "requires": {}      },      "@firebase/component": { -      "version": "0.1.16", -      "resolved": "https://registry.npmjs.org/@firebase/component/-/component-0.1.16.tgz", -      "integrity": "sha512-FvffvFN0LWgv1H/FIyruTECOL69Dhy+JfwoTq+mV39V8Mz9lNpo41etonL5AOr7KmXxYJVbNwkx0L9Ei88i7JA==", +      "version": "0.5.12", +      "resolved": "https://registry.npmjs.org/@firebase/component/-/component-0.5.12.tgz", +      "integrity": "sha512-gAKwxo0Ev+rp7Px+Yr71WbcC0CM9Tevhv0g38ORp2p57HqGjY65D3MD+jTKGZl58N/0nmX6MRRKym3bq/3k1gw==",        "requires": { -        "@firebase/util": "0.2.50", -        "tslib": "^1.11.1" +        "@firebase/util": "1.5.1", +        "tslib": "^2.1.0"        }      },      "@firebase/database": { -      "version": "0.6.7", -      "resolved": "https://registry.npmjs.org/@firebase/database/-/database-0.6.7.tgz", -      "integrity": "sha512-vm0ch2zNSoHfXWnDG6WVjf0p/BdXOMBL1lAfkGu3DYH/Rkl4p97x57w0WNOURNfL4GY2LIqScSYKCidV7jqTog==", +      "version": "0.12.7", +      "resolved": "https://registry.npmjs.org/@firebase/database/-/database-0.12.7.tgz", +      "integrity": "sha512-HL2NMQ3Ce5YNM2MdEuACHmU9NQEwq2F64R0XK+CReph40skxp+A7TvlJDO5bTAC0s3l3ebgCA9VmxfJu5R6UAA==",        "requires": { -        "@firebase/auth-interop-types": "0.1.5", -        "@firebase/component": "0.1.16", -        "@firebase/database-types": "0.5.1", -        "@firebase/logger": "0.2.6", -        "@firebase/util": "0.2.50", -        "faye-websocket": "0.11.3", -        "tslib": "^1.11.1" +        "@firebase/auth-interop-types": "0.1.6", +        "@firebase/component": "0.5.12", +        "@firebase/logger": "0.3.2", +        "@firebase/util": "1.5.1", +        "faye-websocket": "0.11.4", +        "tslib": "^2.1.0" +      } +    }, +    "@firebase/database-compat": { +      "version": "0.1.7", +      "resolved": "https://registry.npmjs.org/@firebase/database-compat/-/database-compat-0.1.7.tgz", +      "integrity": "sha512-T1mleRv2A8wyTV/jUuOdkN9Tl2lz0RGauqGc9nxP3AUzS9m3gIDN7u4CahZSdJlkR6tSU/MEWlfs5Q/oZStqxg==", +      "requires": { +        "@firebase/component": "0.5.12", +        "@firebase/database": "0.12.7", +        "@firebase/database-types": "0.9.6", +        "@firebase/logger": "0.3.2", +        "@firebase/util": "1.5.1", +        "tslib": "^2.1.0"        }      },      "@firebase/database-types": { -      "version": "0.5.1", -      "resolved": "https://registry.npmjs.org/@firebase/database-types/-/database-types-0.5.1.tgz", -      "integrity": "sha512-onQxom1ZBYBJ648w/VNRzUewovEDAH7lvnrrpCd69ukkyrMk6rGEO/PQ9BcNEbhlNtukpsqRS0oNOFlHs0FaSA==", +      "version": "0.9.6", +      "resolved": "https://registry.npmjs.org/@firebase/database-types/-/database-types-0.9.6.tgz", +      "integrity": "sha512-E7U28X+FtVtug7EkIkaOXbdP8ghCPno21WWgEiDKsneY28N5WOwccfXqSzHgAAezkR40ht/ZqXlCsUhEpv6JXw==",        "requires": { -        "@firebase/app-types": "0.6.1" +        "@firebase/app-types": "0.7.0", +        "@firebase/util": "1.5.1"        }      },      "@firebase/logger": { -      "version": "0.2.6", -      "resolved": "https://registry.npmjs.org/@firebase/logger/-/logger-0.2.6.tgz", -      "integrity": "sha512-KIxcUvW/cRGWlzK9Vd2KB864HlUnCfdTH0taHE0sXW5Xl7+W68suaeau1oKNEqmc3l45azkd4NzXTCWZRZdXrw==" -    }, -    "@firebase/util": { -      "version": "0.2.50", -      "resolved": "https://registry.npmjs.org/@firebase/util/-/util-0.2.50.tgz", -      "integrity": "sha512-vFE6+Jfc25u0ViSpFxxq0q5s+XmuJ/y7CL3ud79RQe+WLFFg+j0eH1t23k0yNSG9vZNM7h3uHRIXbV97sYLAyw==", +      "version": "0.3.2", +      "resolved": "https://registry.npmjs.org/@firebase/logger/-/logger-0.3.2.tgz", +      "integrity": "sha512-lzLrcJp9QBWpo40OcOM9B8QEtBw2Fk1zOZQdvv+rWS6gKmhQBCEMc4SMABQfWdjsylBcDfniD1Q+fUX1dcBTXA==",        "requires": { -        "tslib": "^1.11.1" +        "tslib": "^2.1.0"        }      }, -    "@google-cloud/common": { -      "version": "2.4.0", -      "resolved": "https://registry.npmjs.org/@google-cloud/common/-/common-2.4.0.tgz", -      "integrity": "sha512-zWFjBS35eI9leAHhjfeOYlK5Plcuj/77EzstnrJIZbKgF/nkqjcQuGiMCpzCwOfPyUbz8ZaEOYgbHa759AKbjg==", -      "optional": true, +    "@firebase/util": { +      "version": "1.5.1", +      "resolved": "https://registry.npmjs.org/@firebase/util/-/util-1.5.1.tgz", +      "integrity": "sha512-ojwPg8sKVcoU/kC1QdTrD+eUDyjQkZyiH9tlouXeZdAeDddCYNvHgIeBQhZt62WIcjlNhy1zro/xdV5nUUU38A==",        "requires": { -        "@google-cloud/projectify": "^1.0.0", -        "@google-cloud/promisify": "^1.0.0", -        "arrify": "^2.0.0", -        "duplexify": "^3.6.0", -        "ent": "^2.2.0", -        "extend": "^3.0.2", -        "google-auth-library": "^5.5.0", -        "retry-request": "^4.0.0", -        "teeny-request": "^6.0.0" +        "tslib": "^2.1.0"        }      },      "@google-cloud/firestore": { -      "version": "3.8.6", -      "resolved": "https://registry.npmjs.org/@google-cloud/firestore/-/firestore-3.8.6.tgz", -      "integrity": "sha512-ox80NbrM1MLJgvAAUd1quFLx/ie/nSjrk1PtscSicpoYDlKb9e6j7pHrVpbopBMyliyfNl3tLJWaDh+x+uCXqw==", +      "version": "4.15.1", +      "resolved": "https://registry.npmjs.org/@google-cloud/firestore/-/firestore-4.15.1.tgz", +      "integrity": "sha512-2PWsCkEF1W02QbghSeRsNdYKN1qavrHBP3m72gPDMHQSYrGULOaTi7fSJquQmAtc4iPVB2/x6h80rdLHTATQtA==",        "optional": true,        "requires": { -        "deep-equal": "^2.0.0", +        "fast-deep-equal": "^3.1.1",          "functional-red-black-tree": "^1.0.1", -        "google-gax": "^1.15.3", -        "readable-stream": "^3.4.0", -        "through2": "^3.0.0" +        "google-gax": "^2.24.1", +        "protobufjs": "^6.8.6"        }      },      "@google-cloud/paginator": { -      "version": "2.0.3", -      "resolved": "https://registry.npmjs.org/@google-cloud/paginator/-/paginator-2.0.3.tgz", -      "integrity": "sha512-kp/pkb2p/p0d8/SKUu4mOq8+HGwF8NPzHWkj+VKrIPQPyMRw8deZtrO/OcSiy9C/7bpfU5Txah5ltUNfPkgEXg==", +      "version": "3.0.7", +      "resolved": "https://registry.npmjs.org/@google-cloud/paginator/-/paginator-3.0.7.tgz", +      "integrity": "sha512-jJNutk0arIQhmpUUQJPJErsojqo834KcyB6X7a1mxuic8i1tKXxde8E69IZxNZawRIlZdIK2QY4WALvlK5MzYQ==",        "optional": true,        "requires": {          "arrify": "^2.0.0", @@ -99,81 +1795,78 @@        }      },      "@google-cloud/projectify": { -      "version": "1.0.4", -      "resolved": "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-1.0.4.tgz", -      "integrity": "sha512-ZdzQUN02eRsmTKfBj9FDL0KNDIFNjBn/d6tHQmA/+FImH5DO6ZV8E7FzxMgAUiVAUq41RFAkb25p1oHOZ8psfg==", +      "version": "2.1.1", +      "resolved": "https://registry.npmjs.org/@google-cloud/projectify/-/projectify-2.1.1.tgz", +      "integrity": "sha512-+rssMZHnlh0twl122gXY4/aCrk0G1acBqkHFfYddtsqpYXGxA29nj9V5V9SfC+GyOG00l650f6lG9KL+EpFEWQ==",        "optional": true      },      "@google-cloud/promisify": { -      "version": "1.0.4", -      "resolved": "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-1.0.4.tgz", -      "integrity": "sha512-VccZDcOql77obTnFh0TbNED/6ZbbmHDf8UMNnzO1d5g9V0Htfm4k5cllY8P1tJsRKC3zWYGRLaViiupcgVjBoQ==", +      "version": "2.0.4", +      "resolved": "https://registry.npmjs.org/@google-cloud/promisify/-/promisify-2.0.4.tgz", +      "integrity": "sha512-j8yRSSqswWi1QqUGKVEKOG03Q7qOoZP6/h2zN2YO+F5h2+DHU0bSrHCK9Y7lo2DI9fBd8qGAw795sf+3Jva4yA==",        "optional": true      },      "@google-cloud/storage": { -      "version": "4.7.0", -      "resolved": "https://registry.npmjs.org/@google-cloud/storage/-/storage-4.7.0.tgz", -      "integrity": "sha512-f0guAlbeg7Z0m3gKjCfBCu7FG9qS3M3oL5OQQxlvGoPtK7/qg3+W+KQV73O2/sbuS54n0Kh2mvT5K2FWzF5vVQ==", +      "version": "5.19.1", +      "resolved": "https://registry.npmjs.org/@google-cloud/storage/-/storage-5.19.1.tgz", +      "integrity": "sha512-bRTf/AD00+lPTamJdpihXC3AFtAnJFWNh/zQAor972VpuATF7u4V1anwWp0V6rKuKE3BwNM+xWxuuW/nAwEgTA==",        "optional": true,        "requires": { -        "@google-cloud/common": "^2.1.1", -        "@google-cloud/paginator": "^2.0.0", -        "@google-cloud/promisify": "^1.0.0", +        "@google-cloud/paginator": "^3.0.7", +        "@google-cloud/projectify": "^2.0.0", +        "@google-cloud/promisify": "^2.0.0", +        "abort-controller": "^3.0.0",          "arrify": "^2.0.0", +        "async-retry": "^1.3.3",          "compressible": "^2.0.12", -        "concat-stream": "^2.0.0", -        "date-and-time": "^0.13.0", -        "duplexify": "^3.5.0", +        "configstore": "^5.0.0", +        "date-and-time": "^2.0.0", +        "duplexify": "^4.0.0", +        "ent": "^2.2.0",          "extend": "^3.0.2", -        "gaxios": "^3.0.0", -        "gcs-resumable-upload": "^2.2.4", +        "gaxios": "^4.0.0", +        "get-stream": "^6.0.0", +        "google-auth-library": "^7.14.1",          "hash-stream-validation": "^0.2.2", -        "mime": "^2.2.0", +        "mime": "^3.0.0",          "mime-types": "^2.0.8", -        "onetime": "^5.1.0", -        "p-limit": "^2.2.0", +        "p-limit": "^3.0.1",          "pumpify": "^2.0.0", -        "readable-stream": "^3.4.0", +        "retry-request": "^4.2.2",          "snakeize": "^0.1.0", -        "stream-events": "^1.0.1", -        "through2": "^3.0.0", +        "stream-events": "^1.0.4", +        "teeny-request": "^7.1.3",          "xdg-basedir": "^4.0.0" -      }, -      "dependencies": { -        "gaxios": { -          "version": "3.0.4", -          "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-3.0.4.tgz", -          "integrity": "sha512-97NmFuMETFQh6gqPUxkqjxRMjmY8aRKRMphIkgO/b90AbCt5wAVuXsp8oWjIXlLN2pIK/fsXD8edcM7ULkFMLg==", -          "optional": true, -          "requires": { -            "abort-controller": "^3.0.0", -            "extend": "^3.0.2", -            "https-proxy-agent": "^5.0.0", -            "is-stream": "^2.0.0", -            "node-fetch": "^2.3.0" -          } -        }        }      },      "@grpc/grpc-js": { -      "version": "1.0.5", -      "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.0.5.tgz", -      "integrity": "sha512-Hm+xOiqAhcpT9RYM8lc15dbQD7aQurM7ZU8ulmulepiPlN7iwBXXwP3vSBUimoFoApRqz7pSIisXU8pZaCB4og==", +      "version": "1.5.10", +      "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.5.10.tgz", +      "integrity": "sha512-++oAubX/7rJzlqH0ShyzDENNNDHYrlttdc3NM40KlaVQDcgGqQknuPoavmyTC+oNUDyxPCX5dHceKhfcgN3tiw==",        "optional": true,        "requires": { -        "semver": "^6.2.0" +        "@grpc/proto-loader": "^0.6.4", +        "@types/node": ">=12.12.47"        }      },      "@grpc/proto-loader": { -      "version": "0.5.5", -      "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.5.5.tgz", -      "integrity": "sha512-WwN9jVNdHRQoOBo9FDH7qU+mgfjPc8GygPYms3M+y3fbQLfnCe/Kv/E01t7JRgnrsOHH8euvSbed3mIalXhwqQ==", +      "version": "0.6.9", +      "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.6.9.tgz", +      "integrity": "sha512-UlcCS8VbsU9d3XTXGiEVFonN7hXk+oMXZtoHHG2oSA1/GcDP1q6OUgs20PzHDGizzyi8ufGSUDlk3O2NyY7leg==",        "optional": true,        "requires": { +        "@types/long": "^4.0.1",          "lodash.camelcase": "^4.3.0", -        "protobufjs": "^6.8.6" +        "long": "^4.0.0", +        "protobufjs": "^6.10.0", +        "yargs": "^16.2.0"        }      }, +    "@panva/asn1.js": { +      "version": "1.0.0", +      "resolved": "https://registry.npmjs.org/@panva/asn1.js/-/asn1.js-1.0.0.tgz", +      "integrity": "sha512-UdkG3mLEqXgnlKsWanWcgb6dOjUzJ+XC5f+aWw30qrtjxeNUSfKX1cd5FBzOaXQumoe9nIqeZUvrRJS03HCCtw==" +    },      "@protobufjs/aspromise": {        "version": "1.1.2",        "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", @@ -239,30 +1932,100 @@        "optional": true      },      "@tootallnate/once": { -      "version": "1.1.2", -      "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", -      "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", +      "version": "2.0.0", +      "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", +      "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",        "optional": true      }, -    "@types/fs-extra": { -      "version": "8.1.1", -      "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.1.tgz", -      "integrity": "sha512-TcUlBem321DFQzBNuz8p0CLLKp0VvF/XH9E4KHNmgwyp4E3AfgI5cjiIVZWlbfThBop2qxFIh4+LeY6hVWWZ2w==", -      "optional": true, +    "@types/body-parser": { +      "version": "1.19.2", +      "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", +      "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==",        "requires": { +        "@types/connect": "*",          "@types/node": "*"        }      }, +    "@types/connect": { +      "version": "3.4.35", +      "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", +      "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", +      "requires": { +        "@types/node": "*" +      } +    }, +    "@types/express": { +      "version": "4.17.13", +      "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", +      "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", +      "requires": { +        "@types/body-parser": "*", +        "@types/express-serve-static-core": "^4.17.18", +        "@types/qs": "*", +        "@types/serve-static": "*" +      } +    }, +    "@types/express-jwt": { +      "version": "0.0.42", +      "resolved": "https://registry.npmjs.org/@types/express-jwt/-/express-jwt-0.0.42.tgz", +      "integrity": "sha512-WszgUddvM1t5dPpJ3LhWNH8kfNN8GPIBrAGxgIYXVCEGx6Bx4A036aAuf/r5WH9DIEdlmp7gHOYvSM6U87B0ag==", +      "requires": { +        "@types/express": "*", +        "@types/express-unless": "*" +      } +    }, +    "@types/express-serve-static-core": { +      "version": "4.17.28", +      "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz", +      "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==", +      "requires": { +        "@types/node": "*", +        "@types/qs": "*", +        "@types/range-parser": "*" +      } +    }, +    "@types/express-unless": { +      "version": "0.5.3", +      "resolved": "https://registry.npmjs.org/@types/express-unless/-/express-unless-0.5.3.tgz", +      "integrity": "sha512-TyPLQaF6w8UlWdv4gj8i46B+INBVzURBNRahCozCSXfsK2VTlL1wNyTlMKw817VHygBtlcl5jfnPadlydr06Yw==", +      "requires": { +        "@types/express": "*" +      } +    },      "@types/long": {        "version": "4.0.1",        "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.1.tgz",        "integrity": "sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==",        "optional": true      }, +    "@types/mime": { +      "version": "1.3.2", +      "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", +      "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" +    },      "@types/node": { -      "version": "8.10.61", -      "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.61.tgz", -      "integrity": "sha512-l+zSbvT8TPRaCxL1l9cwHCb0tSqGAGcjPJFItGGYat5oCTiq1uQQKYg5m7AF1mgnEBzFXGLJ2LRmNjtreRX76Q==" +      "version": "17.0.23", +      "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", +      "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==" +    }, +    "@types/qs": { +      "version": "6.9.7", +      "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", +      "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" +    }, +    "@types/range-parser": { +      "version": "1.2.4", +      "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", +      "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" +    }, +    "@types/serve-static": { +      "version": "1.13.10", +      "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", +      "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", +      "requires": { +        "@types/mime": "^1", +        "@types/node": "*" +      }      },      "abort-controller": {        "version": "3.0.0", @@ -274,45 +2037,54 @@        }      },      "agent-base": { -      "version": "6.0.1", -      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.1.tgz", -      "integrity": "sha512-01q25QQDwLSsyfhrKbn8yuur+JNw0H+0Y4JiGIKd3z9aYk/w/2kxD/Upc+t2ZBBSUNff50VjPsSW2YxM8QYKVg==", +      "version": "6.0.2", +      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", +      "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",        "optional": true,        "requires": {          "debug": "4"        }      }, -    "array-filter": { -      "version": "1.0.0", -      "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz", -      "integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=", +    "ansi-regex": { +      "version": "5.0.1", +      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", +      "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",        "optional": true      }, +    "ansi-styles": { +      "version": "4.3.0", +      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", +      "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", +      "optional": true, +      "requires": { +        "color-convert": "^2.0.1" +      } +    },      "arrify": {        "version": "2.0.1",        "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",        "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==",        "optional": true      }, -    "available-typed-arrays": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz", -      "integrity": "sha512-XWX3OX8Onv97LMk/ftVyBibpGwY5a8SmuxZPzeOxqmuEqUCOM9ZE+uIaD1VNJ5QnvU2UQusvmKbuM1FR8QWGfQ==", +    "async-retry": { +      "version": "1.3.3", +      "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.3.tgz", +      "integrity": "sha512-wfr/jstw9xNi/0teMHrRW7dsz3Lt5ARhYNZ2ewpadnhaIp5mbALhOAP+EAdsC7t4Z6wqsDVv9+W6gm1Dk9mEyw==",        "optional": true,        "requires": { -        "array-filter": "^1.0.0" +        "retry": "0.13.1"        }      },      "base64-js": { -      "version": "1.3.1", -      "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", -      "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", +      "version": "1.5.1", +      "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", +      "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",        "optional": true      },      "bignumber.js": { -      "version": "9.0.0", -      "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.0.tgz", -      "integrity": "sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A==", +      "version": "9.0.2", +      "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.2.tgz", +      "integrity": "sha512-GAcQvbpsM0pUb0zw1EI0KhQEZ+lRwR5fYaAp3vPOYuP7aDvGy6cVN6XHLauvF8SOga2y0dcLcjt3iQDTSEliyw==",        "optional": true      },      "buffer-equal-constant-time": { @@ -320,10 +2092,30 @@        "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",        "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk="      }, -    "buffer-from": { -      "version": "1.1.1", -      "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", -      "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", +    "cliui": { +      "version": "7.0.4", +      "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", +      "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", +      "optional": true, +      "requires": { +        "string-width": "^4.2.0", +        "strip-ansi": "^6.0.0", +        "wrap-ansi": "^7.0.0" +      } +    }, +    "color-convert": { +      "version": "2.0.1", +      "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", +      "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", +      "optional": true, +      "requires": { +        "color-name": "~1.1.4" +      } +    }, +    "color-name": { +      "version": "1.1.4", +      "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", +      "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",        "optional": true      },      "compressible": { @@ -335,18 +2127,6 @@          "mime-db": ">= 1.43.0 < 2"        }      }, -    "concat-stream": { -      "version": "2.0.0", -      "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", -      "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", -      "optional": true, -      "requires": { -        "buffer-from": "^1.0.0", -        "inherits": "^2.0.3", -        "readable-stream": "^3.0.2", -        "typedarray": "^0.0.6" -      } -    },      "configstore": {        "version": "5.0.1",        "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", @@ -361,12 +2141,6 @@          "xdg-basedir": "^4.0.0"        }      }, -    "core-util-is": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", -      "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", -      "optional": true -    },      "crypto-random-string": {        "version": "2.0.0",        "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", @@ -374,48 +2148,17 @@        "optional": true      },      "date-and-time": { -      "version": "0.13.1", -      "resolved": "https://registry.npmjs.org/date-and-time/-/date-and-time-0.13.1.tgz", -      "integrity": "sha512-/Uge9DJAT+s+oAcDxtBhyR8+sKjUnZbYmyhbmWjTHNtX7B7oWD8YyYdeXcBRbwSj6hVvj+IQegJam7m7czhbFw==", +      "version": "2.3.1", +      "resolved": "https://registry.npmjs.org/date-and-time/-/date-and-time-2.3.1.tgz", +      "integrity": "sha512-OaIRmSJXifwEN21rMVVDs0Kz8uhJ3wWPYd86atkRiqN54liaMQYEbbrgjZQea75YXOBWL4ZFb3rG/waenw1TEg==",        "optional": true      },      "debug": { -      "version": "4.1.1", -      "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", -      "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", -      "optional": true, -      "requires": { -        "ms": "^2.1.1" -      } -    }, -    "deep-equal": { -      "version": "2.0.3", -      "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.3.tgz", -      "integrity": "sha512-Spqdl4H+ky45I9ByyJtXteOm9CaIrPmnIPmOhrkKGNYWeDgCvJ8jNYVCTjChxW4FqGuZnLHADc8EKRMX6+CgvA==", -      "optional": true, -      "requires": { -        "es-abstract": "^1.17.5", -        "es-get-iterator": "^1.1.0", -        "is-arguments": "^1.0.4", -        "is-date-object": "^1.0.2", -        "is-regex": "^1.0.5", -        "isarray": "^2.0.5", -        "object-is": "^1.1.2", -        "object-keys": "^1.1.1", -        "object.assign": "^4.1.0", -        "regexp.prototype.flags": "^1.3.0", -        "side-channel": "^1.0.2", -        "which-boxed-primitive": "^1.0.1", -        "which-collection": "^1.0.1", -        "which-typed-array": "^1.1.2" -      } -    }, -    "define-properties": { -      "version": "1.1.3", -      "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", -      "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", +      "version": "4.3.4", +      "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", +      "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",        "requires": { -        "object-keys": "^1.0.12" +        "ms": "2.1.2"        }      },      "dicer": { @@ -427,53 +2170,24 @@        }      },      "dot-prop": { -      "version": "5.2.0", -      "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.2.0.tgz", -      "integrity": "sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A==", +      "version": "5.3.0", +      "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", +      "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",        "optional": true,        "requires": {          "is-obj": "^2.0.0"        }      },      "duplexify": { -      "version": "3.7.1", -      "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", -      "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", +      "version": "4.1.2", +      "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.2.tgz", +      "integrity": "sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==",        "optional": true,        "requires": { -        "end-of-stream": "^1.0.0", -        "inherits": "^2.0.1", -        "readable-stream": "^2.0.0", +        "end-of-stream": "^1.4.1", +        "inherits": "^2.0.3", +        "readable-stream": "^3.1.1",          "stream-shift": "^1.0.0" -      }, -      "dependencies": { -        "isarray": { -          "version": "1.0.0", -          "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", -          "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", -          "optional": true -        }, -        "readable-stream": { -          "version": "2.3.7", -          "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", -          "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", -          "optional": true, -          "requires": { -            "core-util-is": "~1.0.0", -            "inherits": "~2.0.3", -            "isarray": "~1.0.0", -            "process-nextick-args": "~2.0.0", -            "safe-buffer": "~5.1.1", -            "string_decoder": "~1.1.1", -            "util-deprecate": "~1.0.1" -          } -        }, -        "safe-buffer": { -          "version": "5.1.2", -          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", -          "optional": true -        }        }      },      "ecdsa-sig-formatter": { @@ -484,6 +2198,12 @@          "safe-buffer": "^5.0.1"        }      }, +    "emoji-regex": { +      "version": "8.0.0", +      "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", +      "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", +      "optional": true +    },      "end-of-stream": {        "version": "1.4.4",        "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -499,48 +2219,11 @@        "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=",        "optional": true      }, -    "es-abstract": { -      "version": "1.17.6", -      "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", -      "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", -      "requires": { -        "es-to-primitive": "^1.2.1", -        "function-bind": "^1.1.1", -        "has": "^1.0.3", -        "has-symbols": "^1.0.1", -        "is-callable": "^1.2.0", -        "is-regex": "^1.1.0", -        "object-inspect": "^1.7.0", -        "object-keys": "^1.1.1", -        "object.assign": "^4.1.0", -        "string.prototype.trimend": "^1.0.1", -        "string.prototype.trimstart": "^1.0.1" -      } -    }, -    "es-get-iterator": { -      "version": "1.1.0", -      "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.0.tgz", -      "integrity": "sha512-UfrmHuWQlNMTs35e1ypnvikg6jCz3SK8v8ImvmDsh36fCVUR1MqoFDiyn0/k52C8NqO3YsO8Oe0azeesNuqSsQ==", -      "optional": true, -      "requires": { -        "es-abstract": "^1.17.4", -        "has-symbols": "^1.0.1", -        "is-arguments": "^1.0.4", -        "is-map": "^2.0.1", -        "is-set": "^2.0.1", -        "is-string": "^1.0.5", -        "isarray": "^2.0.5" -      } -    }, -    "es-to-primitive": { -      "version": "1.2.1", -      "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", -      "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", -      "requires": { -        "is-callable": "^1.1.4", -        "is-date-object": "^1.0.1", -        "is-symbol": "^1.0.2" -      } +    "escalade": { +      "version": "3.1.1", +      "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", +      "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", +      "optional": true      },      "event-target-shim": {        "version": "5.0.1", @@ -554,6 +2237,12 @@        "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",        "optional": true      }, +    "fast-deep-equal": { +      "version": "3.1.3", +      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", +      "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", +      "optional": true +    },      "fast-text-encoding": {        "version": "1.0.3",        "resolved": "https://registry.npmjs.org/fast-text-encoding/-/fast-text-encoding-1.0.3.tgz", @@ -561,38 +2250,29 @@        "optional": true      },      "faye-websocket": { -      "version": "0.11.3", -      "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz", -      "integrity": "sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==", +      "version": "0.11.4", +      "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", +      "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==",        "requires": {          "websocket-driver": ">=0.5.1"        }      },      "firebase-admin": { -      "version": "8.13.0", -      "resolved": "https://registry.npmjs.org/firebase-admin/-/firebase-admin-8.13.0.tgz", -      "integrity": "sha512-krXj5ncWMJBhCpXSn9UFY6zmDWjFjqgx+1e9ATXKFYndEjmKtNBuJzqdrAdDh7aTUR7X6+0TPx4Hbc08kd0lwQ==", +      "version": "10.0.2", +      "resolved": "https://registry.npmjs.org/firebase-admin/-/firebase-admin-10.0.2.tgz", +      "integrity": "sha512-MLH0SPmC4L0aCHvPjs1KThraru/T84T3hxiPY3uCH7NZEgE/T5n4GwecwU3RcM3X+br75BIBY7qhaR5uCxhdXA==",        "requires": { -        "@firebase/database": "^0.6.0", -        "@google-cloud/firestore": "^3.0.0", -        "@google-cloud/storage": "^4.1.2", -        "@types/node": "^8.10.59", +        "@firebase/database-compat": "^0.1.1", +        "@firebase/database-types": "^0.9.3", +        "@google-cloud/firestore": "^4.5.0", +        "@google-cloud/storage": "^5.3.0", +        "@types/node": ">=12.12.47",          "dicer": "^0.3.0",          "jsonwebtoken": "^8.5.1", -        "node-forge": "^0.7.6" +        "jwks-rsa": "^2.0.2", +        "node-forge": "^1.0.0"        }      }, -    "foreach": { -      "version": "2.0.5", -      "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", -      "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", -      "optional": true -    }, -    "function-bind": { -      "version": "1.1.1", -      "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", -      "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" -    },      "functional-red-black-tree": {        "version": "1.0.1",        "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", @@ -600,190 +2280,122 @@        "optional": true      },      "gaxios": { -      "version": "2.3.4", -      "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-2.3.4.tgz", -      "integrity": "sha512-US8UMj8C5pRnao3Zykc4AAVr+cffoNKRTg9Rsf2GiuZCW69vgJj38VK2PzlPuQU73FZ/nTk9/Av6/JGcE1N9vA==", +      "version": "4.3.3", +      "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-4.3.3.tgz", +      "integrity": "sha512-gSaYYIO1Y3wUtdfHmjDUZ8LWaxJQpiavzbF5Kq53akSzvmVg0RfyOcFDbO1KJ/KCGRFz2qG+lS81F0nkr7cRJA==",        "optional": true,        "requires": {          "abort-controller": "^3.0.0",          "extend": "^3.0.2",          "https-proxy-agent": "^5.0.0",          "is-stream": "^2.0.0", -        "node-fetch": "^2.3.0" +        "node-fetch": "^2.6.7"        }      },      "gcp-metadata": { -      "version": "3.5.0", -      "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-3.5.0.tgz", -      "integrity": "sha512-ZQf+DLZ5aKcRpLzYUyBS3yo3N0JSa82lNDO8rj3nMSlovLcz2riKFBsYgDzeXcv75oo5eqB2lx+B14UvPoCRnA==", +      "version": "4.3.1", +      "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-4.3.1.tgz", +      "integrity": "sha512-x850LS5N7V1F3UcV7PoupzGsyD6iVwTVvsh3tbXfkctZnBnjW5yu5z1/3k3SehF7TyoTIe78rJs02GMMy+LF+A==",        "optional": true,        "requires": { -        "gaxios": "^2.1.0", -        "json-bigint": "^0.3.0" +        "gaxios": "^4.0.0", +        "json-bigint": "^1.0.0"        }      }, -    "gcs-resumable-upload": { -      "version": "2.3.3", -      "resolved": "https://registry.npmjs.org/gcs-resumable-upload/-/gcs-resumable-upload-2.3.3.tgz", -      "integrity": "sha512-sf896I5CC/1AxeaGfSFg3vKMjUq/r+A3bscmVzZm10CElyRanN0XwPu/MxeIO4LSP+9uF6yKzXvNsaTsMXUG6Q==", -      "optional": true, -      "requires": { -        "abort-controller": "^3.0.0", -        "configstore": "^5.0.0", -        "gaxios": "^2.0.0", -        "google-auth-library": "^5.0.0", -        "pumpify": "^2.0.0", -        "stream-events": "^1.0.4" -      } +    "get-caller-file": { +      "version": "2.0.5", +      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", +      "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", +      "optional": true +    }, +    "get-stream": { +      "version": "6.0.1", +      "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", +      "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", +      "optional": true      },      "google-auth-library": { -      "version": "5.10.1", -      "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-5.10.1.tgz", -      "integrity": "sha512-rOlaok5vlpV9rSiUu5EpR0vVpc+PhN62oF4RyX/6++DG1VsaulAFEMlDYBLjJDDPI6OcNOCGAKy9UVB/3NIDXg==", +      "version": "7.14.1", +      "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.1.tgz", +      "integrity": "sha512-5Rk7iLNDFhFeBYc3s8l1CqzbEBcdhwR193RlD4vSNFajIcINKI8W8P0JLmBpwymHqqWbX34pJDQu39cSy/6RsA==",        "optional": true,        "requires": {          "arrify": "^2.0.0",          "base64-js": "^1.3.0",          "ecdsa-sig-formatter": "^1.0.11",          "fast-text-encoding": "^1.0.0", -        "gaxios": "^2.1.0", -        "gcp-metadata": "^3.4.0", -        "gtoken": "^4.1.0", +        "gaxios": "^4.0.0", +        "gcp-metadata": "^4.2.0", +        "gtoken": "^5.0.4",          "jws": "^4.0.0", -        "lru-cache": "^5.0.0" +        "lru-cache": "^6.0.0"        }      },      "google-gax": { -      "version": "1.15.3", -      "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-1.15.3.tgz", -      "integrity": "sha512-3JKJCRumNm3x2EksUTw4P1Rad43FTpqrtW9jzpf3xSMYXx+ogaqTM1vGo7VixHB4xkAyATXVIa3OcNSh8H9zsQ==", +      "version": "2.30.1", +      "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-2.30.1.tgz", +      "integrity": "sha512-AR00wrunctUqwKQFl15Yq5bo9NuFLnT0zguZYCf8eAqoOUMbxn9V1L0ONCtV4+P9z7sLu+cjtgl+5b4eRZvktg==",        "optional": true,        "requires": { -        "@grpc/grpc-js": "~1.0.3", -        "@grpc/proto-loader": "^0.5.1", -        "@types/fs-extra": "^8.0.1", +        "@grpc/grpc-js": "~1.5.0", +        "@grpc/proto-loader": "^0.6.1",          "@types/long": "^4.0.0",          "abort-controller": "^3.0.0", -        "duplexify": "^3.6.0", -        "google-auth-library": "^5.0.0", +        "duplexify": "^4.0.0", +        "fast-text-encoding": "^1.0.3", +        "google-auth-library": "^7.14.0",          "is-stream-ended": "^0.1.4", -        "lodash.at": "^4.6.0", -        "lodash.has": "^4.5.2", -        "node-fetch": "^2.6.0", -        "protobufjs": "^6.8.9", -        "retry-request": "^4.0.0", -        "semver": "^6.0.0", -        "walkdir": "^0.4.0" +        "node-fetch": "^2.6.1", +        "object-hash": "^3.0.0", +        "proto3-json-serializer": "^0.1.8", +        "protobufjs": "6.11.2", +        "retry-request": "^4.0.0"        }      },      "google-p12-pem": { -      "version": "2.0.4", -      "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-2.0.4.tgz", -      "integrity": "sha512-S4blHBQWZRnEW44OcR7TL9WR+QCqByRvhNDZ/uuQfpxywfupikf/miba8js1jZi6ZOGv5slgSuoshCWh6EMDzg==", +      "version": "3.1.4", +      "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-3.1.4.tgz", +      "integrity": "sha512-HHuHmkLgwjdmVRngf5+gSmpkyaRI6QmOg77J8tkNBHhNEI62sGHyw4/+UkgyZEI7h84NbWprXDJ+sa3xOYFvTg==",        "optional": true,        "requires": { -        "node-forge": "^0.9.0" -      }, -      "dependencies": { -        "node-forge": { -          "version": "0.9.1", -          "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.9.1.tgz", -          "integrity": "sha512-G6RlQt5Sb4GMBzXvhfkeFmbqR6MzhtnT7VTHuLadjkii3rdYHNdw0m8zA4BTxVIh68FicCQ2NSUANpsqkr9jvQ==", -          "optional": true -        } +        "node-forge": "^1.3.1"        }      },      "graceful-fs": { -      "version": "4.2.4", -      "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", -      "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", +      "version": "4.2.10", +      "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", +      "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==",        "optional": true      },      "gtoken": { -      "version": "4.1.4", -      "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-4.1.4.tgz", -      "integrity": "sha512-VxirzD0SWoFUo5p8RDP8Jt2AGyOmyYcT/pOUgDKJCK+iSw0TMqwrVfY37RXTNmoKwrzmDHSk0GMT9FsgVmnVSA==", +      "version": "5.3.2", +      "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-5.3.2.tgz", +      "integrity": "sha512-gkvEKREW7dXWF8NV8pVrKfW7WqReAmjjkMBh6lNCCGOM4ucS0r0YyXXl0r/9Yj8wcW/32ISkfc8h5mPTDbtifQ==",        "optional": true,        "requires": { -        "gaxios": "^2.1.0", -        "google-p12-pem": "^2.0.0", -        "jws": "^4.0.0", -        "mime": "^2.2.0" -      } -    }, -    "has": { -      "version": "1.0.3", -      "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", -      "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", -      "requires": { -        "function-bind": "^1.1.1" +        "gaxios": "^4.0.0", +        "google-p12-pem": "^3.1.3", +        "jws": "^4.0.0"        }      }, -    "has-symbols": { -      "version": "1.0.1", -      "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", -      "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" -    },      "hash-stream-validation": { -      "version": "0.2.3", -      "resolved": "https://registry.npmjs.org/hash-stream-validation/-/hash-stream-validation-0.2.3.tgz", -      "integrity": "sha512-OEohGLoUOh+bwsIpHpdvhIXFyRGjeLqJbT8Yc5QTZPbRM7LKywagTQxnX/6mghLDOrD9YGz88hy5mLN2eKflYQ==", -      "optional": true, -      "requires": { -        "through2": "^2.0.0" -      }, -      "dependencies": { -        "isarray": { -          "version": "1.0.0", -          "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", -          "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", -          "optional": true -        }, -        "readable-stream": { -          "version": "2.3.7", -          "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", -          "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", -          "optional": true, -          "requires": { -            "core-util-is": "~1.0.0", -            "inherits": "~2.0.3", -            "isarray": "~1.0.0", -            "process-nextick-args": "~2.0.0", -            "safe-buffer": "~5.1.1", -            "string_decoder": "~1.1.1", -            "util-deprecate": "~1.0.1" -          } -        }, -        "safe-buffer": { -          "version": "5.1.2", -          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", -          "optional": true -        }, -        "through2": { -          "version": "2.0.5", -          "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", -          "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", -          "optional": true, -          "requires": { -            "readable-stream": "~2.3.6", -            "xtend": "~4.0.1" -          } -        } -      } +      "version": "0.2.4", +      "resolved": "https://registry.npmjs.org/hash-stream-validation/-/hash-stream-validation-0.2.4.tgz", +      "integrity": "sha512-Gjzu0Xn7IagXVkSu9cSFuK1fqzwtLwFhNhVL8IFJijRNMgUttFbBSIAzKuSIrsFMO1+g1RlsoN49zPIbwPDMGQ==", +      "optional": true      },      "http-parser-js": { -      "version": "0.5.2", -      "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.2.tgz", -      "integrity": "sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ==" +      "version": "0.5.6", +      "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.6.tgz", +      "integrity": "sha512-vDlkRPDJn93swjcjqMSaGSPABbIarsr1TLAui/gLDXzV5VsJNdXNzMYDyNBLQkjWQCJ1uizu8T2oDMhmGt0PRA=="      },      "http-proxy-agent": { -      "version": "4.0.1", -      "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", -      "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", +      "version": "5.0.0", +      "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", +      "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",        "optional": true,        "requires": { -        "@tootallnate/once": "1", +        "@tootallnate/once": "2",          "agent-base": "6",          "debug": "4"        } @@ -810,44 +2422,10 @@        "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",        "optional": true      }, -    "is-arguments": { -      "version": "1.0.4", -      "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", -      "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", -      "optional": true -    }, -    "is-bigint": { -      "version": "1.0.0", -      "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.0.tgz", -      "integrity": "sha512-t5mGUXC/xRheCK431ylNiSkGGpBp8bHENBcENTkDT6ppwPzEVxNGZRvgvmOEfbWkFhA7D2GEuE2mmQTr78sl2g==", -      "optional": true -    }, -    "is-boolean-object": { -      "version": "1.0.1", -      "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.0.1.tgz", -      "integrity": "sha512-TqZuVwa/sppcrhUCAYkGBk7w0yxfQQnxq28fjkO53tnK9FQXmdwz2JS5+GjsWQ6RByES1K40nI+yDic5c9/aAQ==", -      "optional": true -    }, -    "is-callable": { -      "version": "1.2.0", -      "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", -      "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==" -    }, -    "is-date-object": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", -      "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" -    }, -    "is-map": { -      "version": "2.0.1", -      "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.1.tgz", -      "integrity": "sha512-T/S49scO8plUiAOA2DBTBG3JHpn1yiw0kRp6dgiZ0v2/6twi5eiB0rHtHFH9ZIrvlWc6+4O+m4zg5+Z833aXgw==", -      "optional": true -    }, -    "is-number-object": { -      "version": "1.0.4", -      "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", -      "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==", +    "is-fullwidth-code-point": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", +      "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",        "optional": true      },      "is-obj": { @@ -856,24 +2434,10 @@        "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",        "optional": true      }, -    "is-regex": { -      "version": "1.1.0", -      "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.0.tgz", -      "integrity": "sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw==", -      "requires": { -        "has-symbols": "^1.0.1" -      } -    }, -    "is-set": { -      "version": "2.0.1", -      "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.1.tgz", -      "integrity": "sha512-eJEzOtVyenDs1TMzSQ3kU3K+E0GUS9sno+F0OBT97xsgcJsF9nXMBtkT9/kut5JEpM7oL7X/0qxR17K3mcwIAA==", -      "optional": true -    },      "is-stream": { -      "version": "2.0.0", -      "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", -      "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", +      "version": "2.0.1", +      "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", +      "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",        "optional": true      },      "is-stream-ended": { @@ -882,60 +2446,24 @@        "integrity": "sha512-xj0XPvmr7bQFTvirqnFr50o0hQIh6ZItDqloxt5aJrR4NQsYeSsyFQERYGCAzfindAcnKjINnwEEgLx4IqVzQw==",        "optional": true      }, -    "is-string": { -      "version": "1.0.5", -      "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", -      "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", -      "optional": true -    }, -    "is-symbol": { -      "version": "1.0.3", -      "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", -      "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", -      "requires": { -        "has-symbols": "^1.0.1" -      } -    }, -    "is-typed-array": { -      "version": "1.1.3", -      "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.3.tgz", -      "integrity": "sha512-BSYUBOK/HJibQ30wWkWold5txYwMUXQct9YHAQJr8fSwvZoiglcqB0pd7vEN23+Tsi9IUEjztdOSzl4qLVYGTQ==", -      "optional": true, -      "requires": { -        "available-typed-arrays": "^1.0.0", -        "es-abstract": "^1.17.4", -        "foreach": "^2.0.5", -        "has-symbols": "^1.0.1" -      } -    },      "is-typedarray": {        "version": "1.0.0",        "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",        "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",        "optional": true      }, -    "is-weakmap": { -      "version": "2.0.1", -      "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", -      "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", -      "optional": true -    }, -    "is-weakset": { -      "version": "2.0.1", -      "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.1.tgz", -      "integrity": "sha512-pi4vhbhVHGLxohUw7PhGsueT4vRGFoXhP7+RGN0jKIv9+8PWYCQTqtADngrxOm2g46hoH0+g8uZZBzMrvVGDmw==", -      "optional": true -    }, -    "isarray": { +    "jose": {        "version": "2.0.5", -      "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", -      "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", -      "optional": true +      "resolved": "https://registry.npmjs.org/jose/-/jose-2.0.5.tgz", +      "integrity": "sha512-BAiDNeDKTMgk4tvD0BbxJ8xHEHBZgpeRZ1zGPPsitSyMgjoMWiLGYAE7H7NpP5h0lPppQajQs871E8NHUrzVPA==", +      "requires": { +        "@panva/asn1.js": "^1.0.0" +      }      },      "json-bigint": { -      "version": "0.3.1", -      "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-0.3.1.tgz", -      "integrity": "sha512-DGWnSzmusIreWlEupsUelHrhwmPPE+FiQvg+drKfk2p+bdEYa5mp4PJ8JsCWqae0M2jQNb0HPvnwvf1qOTThzQ==", +      "version": "1.0.0", +      "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz", +      "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==",        "optional": true,        "requires": {          "bignumber.js": "^9.0.0" @@ -995,6 +2523,18 @@          "safe-buffer": "^5.0.1"        }      }, +    "jwks-rsa": { +      "version": "2.0.5", +      "resolved": "https://registry.npmjs.org/jwks-rsa/-/jwks-rsa-2.0.5.tgz", +      "integrity": "sha512-fliHfsiBRzEU0nXzSvwnh0hynzGB0WihF+CinKbSRlaqRxbqqKf2xbBPgwc8mzf18/WgwlG8e5eTpfSTBcU4DQ==", +      "requires": { +        "@types/express-jwt": "0.0.42", +        "debug": "^4.3.2", +        "jose": "^2.0.5", +        "limiter": "^1.1.5", +        "lru-memoizer": "^2.1.4" +      } +    },      "jws": {        "version": "4.0.0",        "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz", @@ -1005,11 +2545,10 @@          "safe-buffer": "^5.0.1"        }      }, -    "lodash.at": { -      "version": "4.6.0", -      "resolved": "https://registry.npmjs.org/lodash.at/-/lodash.at-4.6.0.tgz", -      "integrity": "sha1-k83OZk8KGZTqM9181A4jr9EbD/g=", -      "optional": true +    "limiter": { +      "version": "1.1.5", +      "resolved": "https://registry.npmjs.org/limiter/-/limiter-1.1.5.tgz", +      "integrity": "sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA=="      },      "lodash.camelcase": {        "version": "4.3.0", @@ -1017,11 +2556,10 @@        "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=",        "optional": true      }, -    "lodash.has": { -      "version": "4.5.2", -      "resolved": "https://registry.npmjs.org/lodash.has/-/lodash.has-4.5.2.tgz", -      "integrity": "sha1-0Z9NwQlQWMzL4rDN9O4P5Ko3yGI=", -      "optional": true +    "lodash.clonedeep": { +      "version": "4.5.0", +      "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", +      "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8="      },      "lodash.includes": {        "version": "4.3.0", @@ -1065,12 +2603,37 @@        "optional": true      },      "lru-cache": { -      "version": "5.1.1", -      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", -      "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", +      "version": "6.0.0", +      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", +      "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",        "optional": true,        "requires": { -        "yallist": "^3.0.2" +        "yallist": "^4.0.0" +      } +    }, +    "lru-memoizer": { +      "version": "2.1.4", +      "resolved": "https://registry.npmjs.org/lru-memoizer/-/lru-memoizer-2.1.4.tgz", +      "integrity": "sha512-IXAq50s4qwrOBrXJklY+KhgZF+5y98PDaNo0gi/v2KQBFLyWr+JyFvijZXkGKjQj/h9c0OwoE+JZbwUXce76hQ==", +      "requires": { +        "lodash.clonedeep": "^4.5.0", +        "lru-cache": "~4.0.0" +      }, +      "dependencies": { +        "lru-cache": { +          "version": "4.0.2", +          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.0.2.tgz", +          "integrity": "sha1-HRdnnAac2l0ECZGgnbwsDbN35V4=", +          "requires": { +            "pseudomap": "^1.0.1", +            "yallist": "^2.0.0" +          } +        }, +        "yallist": { +          "version": "2.1.2", +          "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", +          "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" +        }        }      },      "make-dir": { @@ -1083,78 +2646,50 @@        }      },      "mime": { -      "version": "2.4.6", -      "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", -      "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", +      "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==",        "optional": true      },      "mime-db": { -      "version": "1.44.0", -      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", -      "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", +      "version": "1.52.0", +      "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", +      "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",        "optional": true      },      "mime-types": { -      "version": "2.1.27", -      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", -      "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", +      "version": "2.1.35", +      "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", +      "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",        "optional": true,        "requires": { -        "mime-db": "1.44.0" +        "mime-db": "1.52.0"        }      }, -    "mimic-fn": { -      "version": "2.1.0", -      "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", -      "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", -      "optional": true -    },      "ms": {        "version": "2.1.2",        "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",        "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="      },      "node-fetch": { -      "version": "2.6.0", -      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz", -      "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==", -      "optional": true -    }, -    "node-forge": { -      "version": "0.7.6", -      "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz", -      "integrity": "sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==" -    }, -    "object-inspect": { -      "version": "1.8.0", -      "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz", -      "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==" -    }, -    "object-is": { -      "version": "1.1.2", -      "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", -      "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", +      "version": "2.6.7", +      "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", +      "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",        "optional": true,        "requires": { -        "define-properties": "^1.1.3", -        "es-abstract": "^1.17.5" +        "whatwg-url": "^5.0.0"        }      }, -    "object-keys": { -      "version": "1.1.1", -      "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", -      "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" +    "node-forge": { +      "version": "1.3.1", +      "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", +      "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA=="      }, -    "object.assign": { -      "version": "4.1.0", -      "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", -      "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", -      "requires": { -        "define-properties": "^1.1.2", -        "function-bind": "^1.1.1", -        "has-symbols": "^1.0.0", -        "object-keys": "^1.0.11" -      } +    "object-hash": { +      "version": "3.0.0", +      "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", +      "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", +      "optional": true      },      "once": {        "version": "1.4.0", @@ -1165,40 +2700,28 @@          "wrappy": "1"        }      }, -    "onetime": { -      "version": "5.1.0", -      "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", -      "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", +    "p-limit": { +      "version": "3.1.0", +      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", +      "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",        "optional": true,        "requires": { -        "mimic-fn": "^2.1.0" +        "yocto-queue": "^0.1.0"        }      }, -    "p-limit": { -      "version": "2.3.0", -      "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", -      "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", +    "proto3-json-serializer": { +      "version": "0.1.8", +      "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-0.1.8.tgz", +      "integrity": "sha512-ACilkB6s1U1gWnl5jtICpnDai4VCxmI9GFxuEaYdxtDG2oVI3sVFIUsvUZcQbJgtPM6p+zqKbjTKQZp6Y4FpQw==",        "optional": true,        "requires": { -        "p-try": "^2.0.0" +        "protobufjs": "^6.11.2"        }      }, -    "p-try": { -      "version": "2.2.0", -      "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", -      "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", -      "optional": true -    }, -    "process-nextick-args": { -      "version": "2.0.1", -      "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", -      "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", -      "optional": true -    },      "protobufjs": { -      "version": "6.10.0", -      "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.10.0.tgz", -      "integrity": "sha512-Hdz1+CXkrlmGDKkP6DczxysdnUyUuhM1mjeaydnBxOcjxQPbJldLZ8eGE1gX0UTsgv+0QkFfn6dioo5yt9XORw==", +      "version": "6.11.2", +      "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.2.tgz", +      "integrity": "sha512-4BQJoPooKJl2G9j3XftkIXjoC9C0Av2NOrWmbLWT1vH32GcSUHjM0Arra6UfTsVyfMAuFzaLucXn1sadxJydAw==",        "optional": true,        "requires": {          "@protobufjs/aspromise": "^1.1.2", @@ -1212,18 +2735,15 @@          "@protobufjs/pool": "^1.1.0",          "@protobufjs/utf8": "^1.1.0",          "@types/long": "^4.0.1", -        "@types/node": "^13.7.0", +        "@types/node": ">=13.7.0",          "long": "^4.0.0" -      }, -      "dependencies": { -        "@types/node": { -          "version": "13.13.14", -          "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.14.tgz", -          "integrity": "sha512-Az3QsOt1U/K1pbCQ0TXGELTuTkPLOiFIQf3ILzbOyo0FqgV9SxRnxbxM5QlAveERZMHpZY+7u3Jz2tKyl+yg6g==", -          "optional": true -        }        }      }, +    "pseudomap": { +      "version": "1.0.2", +      "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", +      "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" +    },      "pump": {        "version": "3.0.0",        "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -1243,20 +2763,6 @@          "duplexify": "^4.1.1",          "inherits": "^2.0.3",          "pump": "^3.0.0" -      }, -      "dependencies": { -        "duplexify": { -          "version": "4.1.1", -          "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.1.tgz", -          "integrity": "sha512-DY3xVEmVHTv1wSzKNbwoU6nVjzI369Y6sPoqfYr0/xlx3IdX2n94xIszTcjPO8W8ZIv0Wb0PXNcjuZyT4wiICA==", -          "optional": true, -          "requires": { -            "end-of-stream": "^1.4.1", -            "inherits": "^2.0.3", -            "readable-stream": "^3.1.1", -            "stream-shift": "^1.0.0" -          } -        }        }      },      "readable-stream": { @@ -1270,24 +2776,26 @@          "util-deprecate": "^1.0.1"        }      }, -    "regexp.prototype.flags": { -      "version": "1.3.0", -      "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", -      "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", -      "optional": true, -      "requires": { -        "define-properties": "^1.1.3", -        "es-abstract": "^1.17.0-next.1" -      } +    "require-directory": { +      "version": "2.1.1", +      "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", +      "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", +      "optional": true +    }, +    "retry": { +      "version": "0.13.1", +      "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", +      "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", +      "optional": true      },      "retry-request": { -      "version": "4.1.1", -      "resolved": "https://registry.npmjs.org/retry-request/-/retry-request-4.1.1.tgz", -      "integrity": "sha512-BINDzVtLI2BDukjWmjAIRZ0oglnCAkpP2vQjM3jdLhmT62h0xnQgciPwBRDAvHqpkPT2Wo1XuUyLyn6nbGrZQQ==", +      "version": "4.2.2", +      "resolved": "https://registry.npmjs.org/retry-request/-/retry-request-4.2.2.tgz", +      "integrity": "sha512-xA93uxUD/rogV7BV59agW/JHPGXeREMWiZc9jhcwY4YdZ7QOtC7qbomYg0n4wyk2lJhggjvKvhNX8wln/Aldhg==",        "optional": true,        "requires": {          "debug": "^4.1.1", -        "through2": "^3.0.1" +        "extend": "^3.0.2"        }      },      "safe-buffer": { @@ -1301,20 +2809,10 @@        "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",        "optional": true      }, -    "side-channel": { -      "version": "1.0.2", -      "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.2.tgz", -      "integrity": "sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA==", -      "optional": true, -      "requires": { -        "es-abstract": "^1.17.0-next.1", -        "object-inspect": "^1.7.0" -      } -    },      "signal-exit": { -      "version": "3.0.3", -      "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", -      "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", +      "version": "3.0.7", +      "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", +      "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",        "optional": true      },      "snakeize": { @@ -1343,39 +2841,33 @@        "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-0.1.2.tgz",        "integrity": "sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo="      }, -    "string.prototype.trimend": { -      "version": "1.0.1", -      "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", -      "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", +    "string_decoder": { +      "version": "1.3.0", +      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", +      "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", +      "optional": true,        "requires": { -        "define-properties": "^1.1.3", -        "es-abstract": "^1.17.5" +        "safe-buffer": "~5.2.0"        }      }, -    "string.prototype.trimstart": { -      "version": "1.0.1", -      "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", -      "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", +    "string-width": { +      "version": "4.2.3", +      "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", +      "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", +      "optional": true,        "requires": { -        "define-properties": "^1.1.3", -        "es-abstract": "^1.17.5" +        "emoji-regex": "^8.0.0", +        "is-fullwidth-code-point": "^3.0.0", +        "strip-ansi": "^6.0.1"        }      }, -    "string_decoder": { -      "version": "1.1.1", -      "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", -      "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", +    "strip-ansi": { +      "version": "6.0.1", +      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", +      "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",        "optional": true,        "requires": { -        "safe-buffer": "~5.1.0" -      }, -      "dependencies": { -        "safe-buffer": { -          "version": "5.1.2", -          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", -          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", -          "optional": true -        } +        "ansi-regex": "^5.0.1"        }      },      "stubs": { @@ -1385,38 +2877,28 @@        "optional": true      },      "teeny-request": { -      "version": "6.0.3", -      "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-6.0.3.tgz", -      "integrity": "sha512-TZG/dfd2r6yeji19es1cUIwAlVD8y+/svB1kAC2Y0bjEyysrfbO8EZvJBRwIE6WkwmUoB7uvWLwTIhJbMXZ1Dw==", +      "version": "7.2.0", +      "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-7.2.0.tgz", +      "integrity": "sha512-SyY0pek1zWsi0LRVAALem+avzMLc33MKW/JLLakdP4s9+D7+jHcy5x6P+h94g2QNZsAqQNfX5lsbd3WSeJXrrw==",        "optional": true,        "requires": { -        "http-proxy-agent": "^4.0.0", +        "http-proxy-agent": "^5.0.0",          "https-proxy-agent": "^5.0.0", -        "node-fetch": "^2.2.0", +        "node-fetch": "^2.6.1",          "stream-events": "^1.0.5", -        "uuid": "^7.0.0" +        "uuid": "^8.0.0"        }      }, -    "through2": { -      "version": "3.0.2", -      "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", -      "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", -      "optional": true, -      "requires": { -        "inherits": "^2.0.4", -        "readable-stream": "2 || 3" -      } +    "tr46": { +      "version": "0.0.3", +      "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", +      "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", +      "optional": true      },      "tslib": { -      "version": "1.13.0", -      "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", -      "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==" -    }, -    "typedarray": { -      "version": "0.0.6", -      "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", -      "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", -      "optional": true +      "version": "2.3.1", +      "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", +      "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw=="      },      "typedarray-to-buffer": {        "version": "3.1.5", @@ -1443,15 +2925,15 @@        "optional": true      },      "uuid": { -      "version": "7.0.3", -      "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", -      "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==", +      "version": "8.3.2", +      "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", +      "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",        "optional": true      }, -    "walkdir": { -      "version": "0.4.1", -      "resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.4.1.tgz", -      "integrity": "sha512-3eBwRyEln6E1MSzcxcVpQIhRG8Q1jLvEqRmCZqS3dsfXEDR/AhOF4d+jHg1qvDCpYaVRZjENPQyrVxAkQqxPgQ==", +    "webidl-conversions": { +      "version": "3.0.1", +      "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", +      "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=",        "optional": true      },      "websocket-driver": { @@ -1469,43 +2951,25 @@        "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz",        "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg=="      }, -    "which-boxed-primitive": { -      "version": "1.0.1", -      "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.1.tgz", -      "integrity": "sha512-7BT4TwISdDGBgaemWU0N0OU7FeAEJ9Oo2P1PHRm/FCWoEi2VLWC9b6xvxAA3C/NMpxg3HXVgi0sMmGbNUbNepQ==", -      "optional": true, -      "requires": { -        "is-bigint": "^1.0.0", -        "is-boolean-object": "^1.0.0", -        "is-number-object": "^1.0.3", -        "is-string": "^1.0.4", -        "is-symbol": "^1.0.2" -      } -    }, -    "which-collection": { -      "version": "1.0.1", -      "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", -      "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", +    "whatwg-url": { +      "version": "5.0.0", +      "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", +      "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=",        "optional": true,        "requires": { -        "is-map": "^2.0.1", -        "is-set": "^2.0.1", -        "is-weakmap": "^2.0.1", -        "is-weakset": "^2.0.1" +        "tr46": "~0.0.3", +        "webidl-conversions": "^3.0.0"        }      }, -    "which-typed-array": { -      "version": "1.1.2", -      "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.2.tgz", -      "integrity": "sha512-KT6okrd1tE6JdZAy3o2VhMoYPh3+J6EMZLyrxBQsZflI1QCZIxMrIYLkosd8Twf+YfknVIHmYQPgJt238p8dnQ==", +    "wrap-ansi": { +      "version": "7.0.0", +      "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", +      "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",        "optional": true,        "requires": { -        "available-typed-arrays": "^1.0.2", -        "es-abstract": "^1.17.5", -        "foreach": "^2.0.5", -        "function-bind": "^1.1.1", -        "has-symbols": "^1.0.1", -        "is-typed-array": "^1.1.3" +        "ansi-styles": "^4.0.0", +        "string-width": "^4.1.0", +        "strip-ansi": "^6.0.0"        }      },      "wrappy": { @@ -1532,16 +2996,43 @@        "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==",        "optional": true      }, -    "xtend": { -      "version": "4.0.2", -      "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", -      "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", +    "y18n": { +      "version": "5.0.8", +      "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", +      "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",        "optional": true      },      "yallist": { -      "version": "3.1.1", -      "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", -      "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", +      "version": "4.0.0", +      "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", +      "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", +      "optional": true +    }, +    "yargs": { +      "version": "16.2.0", +      "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", +      "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", +      "optional": true, +      "requires": { +        "cliui": "^7.0.2", +        "escalade": "^3.1.1", +        "get-caller-file": "^2.0.5", +        "require-directory": "^2.1.1", +        "string-width": "^4.2.0", +        "y18n": "^5.0.5", +        "yargs-parser": "^20.2.2" +      } +    }, +    "yargs-parser": { +      "version": "20.2.9", +      "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", +      "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", +      "optional": true +    }, +    "yocto-queue": { +      "version": "0.1.0", +      "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", +      "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==",        "optional": true      }    } diff --git a/firebase-io/package.json b/firebase-io/package.json index cbd6399..9dd00c5 100644 --- a/firebase-io/package.json +++ b/firebase-io/package.json @@ -15,9 +15,9 @@      "chat",      "firebase"    ], -  "author": "Tom Smeding <tom.smeding@gmail.com> (https://tomsmeding.com)", +  "author": "Tom Smeding <x+node@tomsmeding.com> (https://tomsmeding.com)",    "license": "MIT",    "dependencies": { -    "firebase-admin": "^8.13.0" +    "firebase-admin": "^10.0.2"    }  }  | 
