diff --git a/README.md b/README.md index 9a47a74e..b7f80cee 100644 --- a/README.md +++ b/README.md @@ -77,7 +77,7 @@ Be sure to have `protoc` installed. sh proto.sh ``` -2. Fill in missing firebase secrets in `client/.env` +3. Fill in missing firebase secrets in `client/.env` - STRIPE_API_KEY - PUBLIC_API_KEY - PUBLIC_AUTH_DOMAIN @@ -86,17 +86,17 @@ sh proto.sh Getting the `SERVICE_ACCOUNT` key is a bit [tricky](https://firebase.google.com/docs/admin/setup#initialize_the_sdk_in_non-google_environments). -3. Start databases: +4. Start databases: ``` sh start-db.sh up ``` -4. Start app: +5. Start app: ``` sh start-app.sh up ``` -5. Access: +6. Access: Application - http://localhost:3000 CMS - http://localhost:8055 | Login: `admin@example.com` | Password: `d1r3ctu5` diff --git a/client/.eslintrc.cjs b/client/.eslintrc.cjs index b36ee033..b1c4ce70 100644 --- a/client/.eslintrc.cjs +++ b/client/.eslintrc.cjs @@ -11,9 +11,8 @@ module.exports = { parser: "@typescript-eslint/parser", plugins: ["@typescript-eslint"], parserOptions: { - project: "./tsconfig.json", - sourceType: "module", - ecmaVersion: 2020, + project: true, + tsconfigRootDir: "./tsconfig.json", extraFileExtensions: [".svelte"], }, env: { @@ -26,6 +25,8 @@ module.exports = { files: ["*.svelte"], parser: "svelte-eslint-parser", parserOptions: { + project: true, + tsconfigRootDir: "./tsconfig.json", parser: "@typescript-eslint/parser", }, }, diff --git a/client/package.json b/client/package.json index 24d4af8c..25d241ec 100644 --- a/client/package.json +++ b/client/package.json @@ -7,19 +7,17 @@ "build": "vite build", "preview": "vite preview", "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", - "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", "test": "playwright test", "test:unit": "vitest", - "lint": "eslint src", - "lint-report": "eslint src --ignore-pattern 'src/lib/proto' --format=json . > ./eslint-report.json", + "lint": "eslint src --max-warnings=0 && tsc --noEmit", "proto": "proto-loader-gen-types --longs=String --enums=String --defaults --oneofs --grpcLib=@grpc/grpc-js --outDir=./src/lib/proto ../proto/*.proto && cp ../proto/*.proto ./src/lib/proto/" }, "devDependencies": { - "@playwright/test": "^1.34.3", + "@playwright/test": "^1.35.1", "@sveltejs/adapter-node": "^1.2.4", - "@sveltejs/kit": "^1.20.1", - "@typescript-eslint/eslint-plugin": "^5.59.8", - "@typescript-eslint/parser": "^5.59.8", + "@sveltejs/kit": "^1.20.2", + "@typescript-eslint/eslint-plugin": "^5.59.11", + "@typescript-eslint/parser": "^5.59.11", "autoprefixer": "^10.4.14", "eslint": "^8.42.0", "eslint-plugin-svelte": "^2.30.0", @@ -30,12 +28,12 @@ "tslib": "^2.5.3", "typescript": "^5.1.3", "vite": "^4.3.9", - "vitest": "^0.31.4" + "vitest": "^0.32.0" }, "type": "module", "dependencies": { - "@google-cloud/pubsub": "^3.7.0", - "@grpc/grpc-js": "^1.8.14", + "@google-cloud/pubsub": "^3.7.1", + "@grpc/grpc-js": "^1.8.15", "@grpc/proto-loader": "^0.7.7", "@tiptap/core": "^2.0.3", "@tiptap/extension-bullet-list": "^2.0.3", @@ -43,9 +41,9 @@ "@tiptap/extension-ordered-list": "^2.0.3", "@tiptap/pm": "^2.0.3", "@tiptap/starter-kit": "^2.0.3", - "firebase": "^9.22.1", + "firebase": "^9.22.2", "firebase-admin": "^11.9.0", - "stripe": "^12.8.0", + "stripe": "^12.9.0", "zod": "^3.21.4" } } diff --git a/client/pnpm-lock.yaml b/client/pnpm-lock.yaml index 0247d39c..dcaad399 100644 --- a/client/pnpm-lock.yaml +++ b/client/pnpm-lock.yaml @@ -1,4 +1,4 @@ -lockfileVersion: '6.1' +lockfileVersion: '6.0' settings: autoInstallPeers: true @@ -6,11 +6,11 @@ settings: dependencies: '@google-cloud/pubsub': - specifier: ^3.7.0 - version: 3.7.0 + specifier: ^3.7.1 + version: 3.7.1 '@grpc/grpc-js': - specifier: ^1.8.14 - version: 1.8.14 + specifier: ^1.8.15 + version: 1.8.15 '@grpc/proto-loader': specifier: ^0.7.7 version: 0.7.7 @@ -33,34 +33,34 @@ dependencies: specifier: ^2.0.3 version: 2.0.3(@tiptap/pm@2.0.3) firebase: - specifier: ^9.22.1 - version: 9.22.1 + specifier: ^9.22.2 + version: 9.22.2 firebase-admin: specifier: ^11.9.0 version: 11.9.0 stripe: - specifier: ^12.8.0 - version: 12.8.0 + specifier: ^12.9.0 + version: 12.9.0 zod: specifier: ^3.21.4 version: 3.21.4 devDependencies: '@playwright/test': - specifier: ^1.34.3 - version: 1.34.3 + specifier: ^1.35.1 + version: 1.35.1 '@sveltejs/adapter-node': specifier: ^1.2.4 - version: 1.2.4(@sveltejs/kit@1.20.1) + version: 1.2.4(@sveltejs/kit@1.20.2) '@sveltejs/kit': - specifier: ^1.20.1 - version: 1.20.1(svelte@3.59.1)(vite@4.3.9) + specifier: ^1.20.2 + version: 1.20.2(svelte@3.59.1)(vite@4.3.9) '@typescript-eslint/eslint-plugin': - specifier: ^5.59.8 - version: 5.59.8(@typescript-eslint/parser@5.59.8)(eslint@8.42.0)(typescript@5.1.3) + specifier: ^5.59.11 + version: 5.59.11(@typescript-eslint/parser@5.59.11)(eslint@8.42.0)(typescript@5.1.3) '@typescript-eslint/parser': - specifier: ^5.59.8 - version: 5.59.8(eslint@8.42.0)(typescript@5.1.3) + specifier: ^5.59.11 + version: 5.59.11(eslint@8.42.0)(typescript@5.1.3) autoprefixer: specifier: ^10.4.14 version: 10.4.14(postcss@8.4.24) @@ -78,7 +78,7 @@ devDependencies: version: 3.59.1 svelte-check: specifier: ^3.4.3 - version: 3.4.3(@babel/core@7.21.8)(postcss@8.4.24)(svelte@3.59.1) + version: 3.4.3(@babel/core@7.22.5)(postcss@8.4.24)(svelte@3.59.1) tailwindcss: specifier: ^3.3.2 version: 3.3.2 @@ -90,10 +90,10 @@ devDependencies: version: 5.1.3 vite: specifier: ^4.3.9 - version: 4.3.9(@types/node@20.1.4) + version: 4.3.9(@types/node@20.3.1) vitest: - specifier: ^0.31.4 - version: 0.31.4 + specifier: ^0.32.0 + version: 0.32.0 packages: @@ -109,30 +109,30 @@ packages: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.18 - /@babel/code-frame@7.21.4: - resolution: {integrity: sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==} + /@babel/code-frame@7.22.5: + resolution: {integrity: sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/highlight': 7.18.6 + '@babel/highlight': 7.22.5 - /@babel/compat-data@7.21.7: - resolution: {integrity: sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==} + /@babel/compat-data@7.22.5: + resolution: {integrity: sha512-4Jc/YuIaYqKnDDz892kPIledykKg12Aw1PYX5i/TY28anJtacvM1Rrr8wbieB9GfEJwlzqT0hUEao0CxEebiDA==} engines: {node: '>=6.9.0'} - /@babel/core@7.21.8: - resolution: {integrity: sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==} + /@babel/core@7.22.5: + resolution: {integrity: sha512-SBuTAjg91A3eKOvD+bPEz3LlhHZRNu1nFOVts9lzDJTXshHTjII0BAtDS3Y2DAkdZdDKWVZGVwkDfc4Clxn1dg==} engines: {node: '>=6.9.0'} dependencies: '@ampproject/remapping': 2.2.1 - '@babel/code-frame': 7.21.4 - '@babel/generator': 7.21.5 - '@babel/helper-compilation-targets': 7.21.5(@babel/core@7.21.8) - '@babel/helper-module-transforms': 7.21.5 - '@babel/helpers': 7.21.5 - '@babel/parser': 7.21.8 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.5 - '@babel/types': 7.21.5 + '@babel/code-frame': 7.22.5 + '@babel/generator': 7.22.5 + '@babel/helper-compilation-targets': 7.22.5(@babel/core@7.22.5) + '@babel/helper-module-transforms': 7.22.5 + '@babel/helpers': 7.22.5 + '@babel/parser': 7.22.5 + '@babel/template': 7.22.5 + '@babel/traverse': 7.22.5 + '@babel/types': 7.22.5 convert-source-map: 1.9.0 debug: 4.3.4 gensync: 1.0.0-beta.2 @@ -141,201 +141,201 @@ packages: transitivePeerDependencies: - supports-color - /@babel/generator@7.21.5: - resolution: {integrity: sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==} + /@babel/generator@7.22.5: + resolution: {integrity: sha512-+lcUbnTRhd0jOewtFSedLyiPsD5tswKkbgcezOqqWFUVNEwoUTlpPOBmvhG7OXWLR4jMdv0czPGH5XbflnD1EA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.22.5 '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.18 jsesc: 2.5.2 - /@babel/helper-compilation-targets@7.21.5(@babel/core@7.21.8): - resolution: {integrity: sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==} + /@babel/helper-compilation-targets@7.22.5(@babel/core@7.22.5): + resolution: {integrity: sha512-Ji+ywpHeuqxB8WDxraCiqR0xfhYjiDE/e6k7FuIaANnoOFxAHskHChz4vA1mJC9Lbm01s1PVAGhQY4FUKSkGZw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/compat-data': 7.21.7 - '@babel/core': 7.21.8 - '@babel/helper-validator-option': 7.21.0 - browserslist: 4.21.5 + '@babel/compat-data': 7.22.5 + '@babel/core': 7.22.5 + '@babel/helper-validator-option': 7.22.5 + browserslist: 4.21.9 lru-cache: 5.1.1 semver: 6.3.0 - /@babel/helper-environment-visitor@7.21.5: - resolution: {integrity: sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==} + /@babel/helper-environment-visitor@7.22.5: + resolution: {integrity: sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==} engines: {node: '>=6.9.0'} - /@babel/helper-function-name@7.21.0: - resolution: {integrity: sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==} + /@babel/helper-function-name@7.22.5: + resolution: {integrity: sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.20.7 - '@babel/types': 7.21.5 + '@babel/template': 7.22.5 + '@babel/types': 7.22.5 - /@babel/helper-hoist-variables@7.18.6: - resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} + /@babel/helper-hoist-variables@7.22.5: + resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.22.5 - /@babel/helper-module-imports@7.21.4: - resolution: {integrity: sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==} + /@babel/helper-module-imports@7.22.5: + resolution: {integrity: sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.22.5 - /@babel/helper-module-transforms@7.21.5: - resolution: {integrity: sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==} + /@babel/helper-module-transforms@7.22.5: + resolution: {integrity: sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-environment-visitor': 7.21.5 - '@babel/helper-module-imports': 7.21.4 - '@babel/helper-simple-access': 7.21.5 - '@babel/helper-split-export-declaration': 7.18.6 - '@babel/helper-validator-identifier': 7.19.1 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.5 - '@babel/types': 7.21.5 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-module-imports': 7.22.5 + '@babel/helper-simple-access': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.5 + '@babel/helper-validator-identifier': 7.22.5 + '@babel/template': 7.22.5 + '@babel/traverse': 7.22.5 + '@babel/types': 7.22.5 transitivePeerDependencies: - supports-color - /@babel/helper-plugin-utils@7.21.5: - resolution: {integrity: sha512-0WDaIlXKOX/3KfBK/dwP1oQGiPh6rjMkT7HIRv7i5RR2VUMwrx5ZL0dwBkKx7+SW1zwNdgjHd34IMk5ZjTeHVg==} + /@babel/helper-plugin-utils@7.22.5: + resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} engines: {node: '>=6.9.0'} dev: false - /@babel/helper-simple-access@7.21.5: - resolution: {integrity: sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==} + /@babel/helper-simple-access@7.22.5: + resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.22.5 - /@babel/helper-split-export-declaration@7.18.6: - resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} + /@babel/helper-split-export-declaration@7.22.5: + resolution: {integrity: sha512-thqK5QFghPKWLhAV321lxF95yCg2K3Ob5yw+M3VHWfdia0IkPXUtoLH8x/6Fh486QUvzhb8YOWHChTVen2/PoQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.22.5 - /@babel/helper-string-parser@7.21.5: - resolution: {integrity: sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==} + /@babel/helper-string-parser@7.22.5: + resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} engines: {node: '>=6.9.0'} - /@babel/helper-validator-identifier@7.19.1: - resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} + /@babel/helper-validator-identifier@7.22.5: + resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} engines: {node: '>=6.9.0'} - /@babel/helper-validator-option@7.21.0: - resolution: {integrity: sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==} + /@babel/helper-validator-option@7.22.5: + resolution: {integrity: sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==} engines: {node: '>=6.9.0'} - /@babel/helpers@7.21.5: - resolution: {integrity: sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==} + /@babel/helpers@7.22.5: + resolution: {integrity: sha512-pSXRmfE1vzcUIDFQcSGA5Mr+GxBV9oiRKDuDxXvWQQBCh8HoIjs/2DlDB7H8smac1IVrB9/xdXj2N3Wol9Cr+Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.5 - '@babel/types': 7.21.5 + '@babel/template': 7.22.5 + '@babel/traverse': 7.22.5 + '@babel/types': 7.22.5 transitivePeerDependencies: - supports-color - /@babel/highlight@7.18.6: - resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} + /@babel/highlight@7.22.5: + resolution: {integrity: sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.19.1 + '@babel/helper-validator-identifier': 7.22.5 chalk: 2.4.2 js-tokens: 4.0.0 - /@babel/parser@7.21.8: - resolution: {integrity: sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==} + /@babel/parser@7.22.5: + resolution: {integrity: sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.21.5 + '@babel/types': 7.22.5 - /@babel/plugin-proposal-export-namespace-from@7.18.9(@babel/core@7.21.8): + /@babel/plugin-proposal-export-namespace-from@7.18.9(@babel/core@7.22.5): resolution: {integrity: sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.8 - '@babel/helper-plugin-utils': 7.21.5 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.21.8) + '@babel/core': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.22.5) dev: false - /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.21.8): + /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.22.5): resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.8 - '@babel/helper-plugin-utils': 7.21.5 + '@babel/core': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.21.8): + /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.22.5): resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.8 - '@babel/helper-plugin-utils': 7.21.5 + '@babel/core': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 dev: false - /@babel/plugin-transform-modules-commonjs@7.21.5(@babel/core@7.21.8): - resolution: {integrity: sha512-OVryBEgKUbtqMoB7eG2rs6UFexJi6Zj6FDXx+esBLPTCxCNxAY9o+8Di7IsUGJ+AVhp5ncK0fxWUBd0/1gPhrQ==} + /@babel/plugin-transform-modules-commonjs@7.22.5(@babel/core@7.22.5): + resolution: {integrity: sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.21.8 - '@babel/helper-module-transforms': 7.21.5 - '@babel/helper-plugin-utils': 7.21.5 - '@babel/helper-simple-access': 7.21.5 + '@babel/core': 7.22.5 + '@babel/helper-module-transforms': 7.22.5 + '@babel/helper-plugin-utils': 7.22.5 + '@babel/helper-simple-access': 7.22.5 transitivePeerDependencies: - supports-color dev: false - /@babel/runtime@7.21.5: - resolution: {integrity: sha512-8jI69toZqqcsnqGGqwGS4Qb1VwLOEp4hz+CXPywcvjs60u3B4Pom/U/7rm4W8tMOYEB+E9wgD0mW1l3r8qlI9Q==} + /@babel/runtime@7.22.5: + resolution: {integrity: sha512-ecjvYlnAaZ/KVneE/OdKYBYfgXV3Ptu6zQWmgEF7vwKhQnvVS6bjMD2XYgj+SNvQ1GfK/pjgokfPkC/2CO8CuA==} engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.13.11 dev: false - /@babel/template@7.20.7: - resolution: {integrity: sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==} + /@babel/template@7.22.5: + resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.21.4 - '@babel/parser': 7.21.8 - '@babel/types': 7.21.5 + '@babel/code-frame': 7.22.5 + '@babel/parser': 7.22.5 + '@babel/types': 7.22.5 - /@babel/traverse@7.21.5: - resolution: {integrity: sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==} + /@babel/traverse@7.22.5: + resolution: {integrity: sha512-7DuIjPgERaNo6r+PZwItpjCZEa5vyw4eJGufeLxrPdBXBoLcCJCIasvK6pK/9DVNrLZTLFhUGqaC6X/PA007TQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.21.4 - '@babel/generator': 7.21.5 - '@babel/helper-environment-visitor': 7.21.5 - '@babel/helper-function-name': 7.21.0 - '@babel/helper-hoist-variables': 7.18.6 - '@babel/helper-split-export-declaration': 7.18.6 - '@babel/parser': 7.21.8 - '@babel/types': 7.21.5 + '@babel/code-frame': 7.22.5 + '@babel/generator': 7.22.5 + '@babel/helper-environment-visitor': 7.22.5 + '@babel/helper-function-name': 7.22.5 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.5 + '@babel/parser': 7.22.5 + '@babel/types': 7.22.5 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color - /@babel/types@7.21.5: - resolution: {integrity: sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==} + /@babel/types@7.22.5: + resolution: {integrity: sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-string-parser': 7.21.5 - '@babel/helper-validator-identifier': 7.19.1 + '@babel/helper-string-parser': 7.22.5 + '@babel/helper-validator-identifier': 7.22.5 to-fast-properties: 2.0.0 /@esbuild/android-arm64@0.17.19: @@ -580,14 +580,14 @@ packages: text-decoding: 1.0.0 dev: false - /@firebase/analytics-compat@0.2.6(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11): + /@firebase/analytics-compat@0.2.6(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12): resolution: {integrity: sha512-4MqpVLFkGK7NJf/5wPEEP7ePBJatwYpyjgJ+wQHQGHfzaCDgntOnl9rL2vbVGGKCnRqWtZDIWhctB86UWXaX2Q==} peerDependencies: '@firebase/app-compat': 0.x dependencies: - '@firebase/analytics': 0.10.0(@firebase/app@0.9.11) + '@firebase/analytics': 0.10.0(@firebase/app@0.9.12) '@firebase/analytics-types': 0.8.0 - '@firebase/app-compat': 0.2.11 + '@firebase/app-compat': 0.2.12 '@firebase/component': 0.6.4 '@firebase/util': 1.9.3 tslib: 2.5.3 @@ -599,27 +599,27 @@ packages: resolution: {integrity: sha512-iRP+QKI2+oz3UAh4nPEq14CsEjrjD6a5+fuypjScisAh9kXKFvdJOZJDwk7kikLvWVLGEs9+kIUS4LPQV7VZVw==} dev: false - /@firebase/analytics@0.10.0(@firebase/app@0.9.11): + /@firebase/analytics@0.10.0(@firebase/app@0.9.12): resolution: {integrity: sha512-Locv8gAqx0e+GX/0SI3dzmBY5e9kjVDtD+3zCFLJ0tH2hJwuCAiL+5WkHuxKj92rqQj/rvkBUCfA1ewlX2hehg==} peerDependencies: '@firebase/app': 0.x dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/component': 0.6.4 - '@firebase/installations': 0.6.4(@firebase/app@0.9.11) + '@firebase/installations': 0.6.4(@firebase/app@0.9.12) '@firebase/logger': 0.4.0 '@firebase/util': 1.9.3 tslib: 2.5.3 dev: false - /@firebase/app-check-compat@0.3.7(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11): + /@firebase/app-check-compat@0.3.7(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12): resolution: {integrity: sha512-cW682AxsyP1G+Z0/P7pO/WT2CzYlNxoNe5QejVarW2o5ZxeWSSPAiVEwpEpQR/bUlUmdeWThYTMvBWaopdBsqw==} peerDependencies: '@firebase/app-compat': 0.x dependencies: - '@firebase/app-check': 0.8.0(@firebase/app@0.9.11) + '@firebase/app-check': 0.8.0(@firebase/app@0.9.12) '@firebase/app-check-types': 0.5.0 - '@firebase/app-compat': 0.2.11 + '@firebase/app-compat': 0.2.12 '@firebase/component': 0.6.4 '@firebase/logger': 0.4.0 '@firebase/util': 1.9.3 @@ -636,22 +636,22 @@ packages: resolution: {integrity: sha512-uwSUj32Mlubybw7tedRzR24RP8M8JUVR3NPiMk3/Z4bCmgEKTlQBwMXrehDAZ2wF+TsBq0SN1c6ema71U/JPyQ==} dev: false - /@firebase/app-check@0.8.0(@firebase/app@0.9.11): + /@firebase/app-check@0.8.0(@firebase/app@0.9.12): resolution: {integrity: sha512-dRDnhkcaC2FspMiRK/Vbp+PfsOAEP6ZElGm9iGFJ9fDqHoPs0HOPn7dwpJ51lCFi1+2/7n5pRPGhqF/F03I97g==} peerDependencies: '@firebase/app': 0.x dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/component': 0.6.4 '@firebase/logger': 0.4.0 '@firebase/util': 1.9.3 tslib: 2.5.3 dev: false - /@firebase/app-compat@0.2.11: - resolution: {integrity: sha512-IzjLh3Z9F4gPo+Ft7lNVxeKlYfKI6fseUmiLaySidcx/Sdro1vOzoBMOr+5OVVpVVMSib9BZ3QtBKZkPZk+Ucw==} + /@firebase/app-compat@0.2.12: + resolution: {integrity: sha512-3EfputoACcXvgi2uN9RUQVDYSmRSR4R4TWJW9Wvs4hTib2I26ldvVhDHaheQq90IwGYrRa+TTWuzr4a5dCRkVQ==} dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/component': 0.6.4 '@firebase/logger': 0.4.0 '@firebase/util': 1.9.3 @@ -662,8 +662,8 @@ packages: resolution: {integrity: sha512-AeweANOIo0Mb8GiYm3xhTEBVCmPwTYAu9Hcd2qSkLuga/6+j9b1Jskl5bpiSQWy9eJ/j5pavxj6eYogmnuzm+Q==} dev: false - /@firebase/app@0.9.11: - resolution: {integrity: sha512-b6OVXqn2qHXTASLstlu2aW8loHgB7gWcjVWbNKi6pZYZ9Tu3VE+xJuD8NH1br9gDh4ueVnrMBisfBTeZ0Hvlvg==} + /@firebase/app@0.9.12: + resolution: {integrity: sha512-VsE/WHZU8M9BCnHMbOi3FqIVIsoG4FlEehjp+XCDNE0zxn4BGgnpLdBu6/r9Bg565b1ND7dm6LSVRtewmeRb3w==} dependencies: '@firebase/component': 0.6.4 '@firebase/logger': 0.4.0 @@ -672,13 +672,13 @@ packages: tslib: 2.5.3 dev: false - /@firebase/auth-compat@0.4.2(@firebase/app-compat@0.2.11)(@firebase/app-types@0.9.0)(@firebase/app@0.9.11): + /@firebase/auth-compat@0.4.2(@firebase/app-compat@0.2.12)(@firebase/app-types@0.9.0)(@firebase/app@0.9.12): resolution: {integrity: sha512-Q30e77DWXFmXEt5dg5JbqEDpjw9y3/PcP9LslDPR7fARmAOTIY9MM6HXzm9KC+dlrKH/+p6l8g9ifJiam9mc4A==} peerDependencies: '@firebase/app-compat': 0.x dependencies: - '@firebase/app-compat': 0.2.11 - '@firebase/auth': 0.23.2(@firebase/app@0.9.11) + '@firebase/app-compat': 0.2.12 + '@firebase/auth': 0.23.2(@firebase/app@0.9.12) '@firebase/auth-types': 0.12.0(@firebase/app-types@0.9.0)(@firebase/util@1.9.3) '@firebase/component': 0.6.4 '@firebase/util': 1.9.3 @@ -704,12 +704,12 @@ packages: '@firebase/util': 1.9.3 dev: false - /@firebase/auth@0.23.2(@firebase/app@0.9.11): + /@firebase/auth@0.23.2(@firebase/app@0.9.12): resolution: {integrity: sha512-dM9iJ0R6tI1JczuGSxXmQbXAgtYie0K4WvKcuyuSTCu9V8eEDiz4tfa1sO3txsfvwg7nOY3AjoCyMYEdqZ8hdg==} peerDependencies: '@firebase/app': 0.x dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/component': 0.6.4 '@firebase/logger': 0.4.0 '@firebase/util': 1.9.3 @@ -755,14 +755,14 @@ packages: tslib: 2.5.3 dev: false - /@firebase/firestore-compat@0.3.10(@firebase/app-compat@0.2.11)(@firebase/app-types@0.9.0)(@firebase/app@0.9.11): - resolution: {integrity: sha512-mPxRwgi8riB0+EXVzwwOBssoBMCR1NtOz8uE0+vPlEzm3qCCDeyWK9Tqu8LBPs2uopWk6GJhy5esDHt0dnUd6A==} + /@firebase/firestore-compat@0.3.11(@firebase/app-compat@0.2.12)(@firebase/app-types@0.9.0)(@firebase/app@0.9.12): + resolution: {integrity: sha512-jPhySBBp6+Vt750WmeCK4it/NV9YHQEX+jJ7Va8wHOhVejy0zUhL5TsLF6Bz3hCjb4Dxn6XVgvuSqiuqY16yWw==} peerDependencies: '@firebase/app-compat': 0.x dependencies: - '@firebase/app-compat': 0.2.11 + '@firebase/app-compat': 0.2.12 '@firebase/component': 0.6.4 - '@firebase/firestore': 3.12.1(@firebase/app@0.9.11) + '@firebase/firestore': 3.12.2(@firebase/app@0.9.12) '@firebase/firestore-types': 2.5.1(@firebase/app-types@0.9.0)(@firebase/util@1.9.3) '@firebase/util': 1.9.3 tslib: 2.5.3 @@ -782,13 +782,13 @@ packages: '@firebase/util': 1.9.3 dev: false - /@firebase/firestore@3.12.1(@firebase/app@0.9.11): - resolution: {integrity: sha512-TgJup6AIAT9/u7MxdCeES/I96kJx7DLBTokOlW4FiiSCeOzyss9BYBrh1tkkXNIpFn9mUsvT44foZvFsOKp14Q==} + /@firebase/firestore@3.12.2(@firebase/app@0.9.12): + resolution: {integrity: sha512-6EDIJ2V4hlUkPvAb1uH5DAz65ZvhStIM1oYGSUx6mt2UdEDu/0CAVS7xYBY6niTyM/+2r6XBW3hYG/1x1V27vg==} engines: {node: '>=10.10.0'} peerDependencies: '@firebase/app': 0.x dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/component': 0.6.4 '@firebase/logger': 0.4.0 '@firebase/util': 1.9.3 @@ -801,14 +801,14 @@ packages: - encoding dev: false - /@firebase/functions-compat@0.3.5(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11): + /@firebase/functions-compat@0.3.5(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12): resolution: {integrity: sha512-uD4jwgwVqdWf6uc3NRKF8cSZ0JwGqSlyhPgackyUPe+GAtnERpS4+Vr66g0b3Gge0ezG4iyHo/EXW/Hjx7QhHw==} peerDependencies: '@firebase/app-compat': 0.x dependencies: - '@firebase/app-compat': 0.2.11 + '@firebase/app-compat': 0.2.12 '@firebase/component': 0.6.4 - '@firebase/functions': 0.10.0(@firebase/app@0.9.11) + '@firebase/functions': 0.10.0(@firebase/app@0.9.12) '@firebase/functions-types': 0.6.0 '@firebase/util': 1.9.3 tslib: 2.5.3 @@ -821,12 +821,12 @@ packages: resolution: {integrity: sha512-hfEw5VJtgWXIRf92ImLkgENqpL6IWpYaXVYiRkFY1jJ9+6tIhWM7IzzwbevwIIud/jaxKVdRzD7QBWfPmkwCYw==} dev: false - /@firebase/functions@0.10.0(@firebase/app@0.9.11): + /@firebase/functions@0.10.0(@firebase/app@0.9.12): resolution: {integrity: sha512-2U+fMNxTYhtwSpkkR6WbBcuNMOVaI7MaH3cZ6UAeNfj7AgEwHwMIFLPpC13YNZhno219F0lfxzTAA0N62ndWzA==} peerDependencies: '@firebase/app': 0.x dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/app-check-interop-types': 0.3.0 '@firebase/auth-interop-types': 0.2.1 '@firebase/component': 0.6.4 @@ -838,14 +838,14 @@ packages: - encoding dev: false - /@firebase/installations-compat@0.2.4(@firebase/app-compat@0.2.11)(@firebase/app-types@0.9.0)(@firebase/app@0.9.11): + /@firebase/installations-compat@0.2.4(@firebase/app-compat@0.2.12)(@firebase/app-types@0.9.0)(@firebase/app@0.9.12): resolution: {integrity: sha512-LI9dYjp0aT9Njkn9U4JRrDqQ6KXeAmFbRC0E7jI7+hxl5YmRWysq5qgQl22hcWpTk+cm3es66d/apoDU/A9n6Q==} peerDependencies: '@firebase/app-compat': 0.x dependencies: - '@firebase/app-compat': 0.2.11 + '@firebase/app-compat': 0.2.12 '@firebase/component': 0.6.4 - '@firebase/installations': 0.6.4(@firebase/app@0.9.11) + '@firebase/installations': 0.6.4(@firebase/app@0.9.12) '@firebase/installations-types': 0.5.0(@firebase/app-types@0.9.0) '@firebase/util': 1.9.3 tslib: 2.5.3 @@ -862,12 +862,12 @@ packages: '@firebase/app-types': 0.9.0 dev: false - /@firebase/installations@0.6.4(@firebase/app@0.9.11): + /@firebase/installations@0.6.4(@firebase/app@0.9.12): resolution: {integrity: sha512-u5y88rtsp7NYkCHC3ElbFBrPtieUybZluXyzl7+4BsIz4sqb4vSAuwHEUgCgCeaQhvsnxDEU6icly8U9zsJigA==} peerDependencies: '@firebase/app': 0.x dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/component': 0.6.4 '@firebase/util': 1.9.3 idb: 7.0.1 @@ -880,14 +880,14 @@ packages: tslib: 2.5.3 dev: false - /@firebase/messaging-compat@0.2.4(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11): + /@firebase/messaging-compat@0.2.4(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12): resolution: {integrity: sha512-lyFjeUhIsPRYDPNIkYX1LcZMpoVbBWXX4rPl7c/rqc7G+EUea7IEtSt4MxTvh6fDfPuzLn7+FZADfscC+tNMfg==} peerDependencies: '@firebase/app-compat': 0.x dependencies: - '@firebase/app-compat': 0.2.11 + '@firebase/app-compat': 0.2.12 '@firebase/component': 0.6.4 - '@firebase/messaging': 0.12.4(@firebase/app@0.9.11) + '@firebase/messaging': 0.12.4(@firebase/app@0.9.12) '@firebase/util': 1.9.3 tslib: 2.5.3 transitivePeerDependencies: @@ -898,29 +898,29 @@ packages: resolution: {integrity: sha512-ujA8dcRuVeBixGR9CtegfpU4YmZf3Lt7QYkcj693FFannwNuZgfAYaTmbJ40dtjB81SAu6tbFPL9YLNT15KmOQ==} dev: false - /@firebase/messaging@0.12.4(@firebase/app@0.9.11): + /@firebase/messaging@0.12.4(@firebase/app@0.9.12): resolution: {integrity: sha512-6JLZct6zUaex4g7HI3QbzeUrg9xcnmDAPTWpkoMpd/GoSVWH98zDoWXMGrcvHeCAIsLpFMe4MPoZkJbrPhaASw==} peerDependencies: '@firebase/app': 0.x dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/component': 0.6.4 - '@firebase/installations': 0.6.4(@firebase/app@0.9.11) + '@firebase/installations': 0.6.4(@firebase/app@0.9.12) '@firebase/messaging-interop-types': 0.2.0 '@firebase/util': 1.9.3 idb: 7.0.1 tslib: 2.5.3 dev: false - /@firebase/performance-compat@0.2.4(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11): + /@firebase/performance-compat@0.2.4(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12): resolution: {integrity: sha512-nnHUb8uP9G8islzcld/k6Bg5RhX62VpbAb/Anj7IXs/hp32Eb2LqFPZK4sy3pKkBUO5wcrlRWQa6wKOxqlUqsg==} peerDependencies: '@firebase/app-compat': 0.x dependencies: - '@firebase/app-compat': 0.2.11 + '@firebase/app-compat': 0.2.12 '@firebase/component': 0.6.4 '@firebase/logger': 0.4.0 - '@firebase/performance': 0.6.4(@firebase/app@0.9.11) + '@firebase/performance': 0.6.4(@firebase/app@0.9.12) '@firebase/performance-types': 0.2.0 '@firebase/util': 1.9.3 tslib: 2.5.3 @@ -932,28 +932,28 @@ packages: resolution: {integrity: sha512-kYrbr8e/CYr1KLrLYZZt2noNnf+pRwDq2KK9Au9jHrBMnb0/C9X9yWSXmZkFt4UIdsQknBq8uBB7fsybZdOBTA==} dev: false - /@firebase/performance@0.6.4(@firebase/app@0.9.11): + /@firebase/performance@0.6.4(@firebase/app@0.9.12): resolution: {integrity: sha512-HfTn/bd8mfy/61vEqaBelNiNnvAbUtME2S25A67Nb34zVuCSCRIX4SseXY6zBnOFj3oLisaEqhVcJmVPAej67g==} peerDependencies: '@firebase/app': 0.x dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/component': 0.6.4 - '@firebase/installations': 0.6.4(@firebase/app@0.9.11) + '@firebase/installations': 0.6.4(@firebase/app@0.9.12) '@firebase/logger': 0.4.0 '@firebase/util': 1.9.3 tslib: 2.5.3 dev: false - /@firebase/remote-config-compat@0.2.4(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11): + /@firebase/remote-config-compat@0.2.4(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12): resolution: {integrity: sha512-FKiki53jZirrDFkBHglB3C07j5wBpitAaj8kLME6g8Mx+aq7u9P7qfmuSRytiOItADhWUj7O1JIv7n9q87SuwA==} peerDependencies: '@firebase/app-compat': 0.x dependencies: - '@firebase/app-compat': 0.2.11 + '@firebase/app-compat': 0.2.12 '@firebase/component': 0.6.4 '@firebase/logger': 0.4.0 - '@firebase/remote-config': 0.4.4(@firebase/app@0.9.11) + '@firebase/remote-config': 0.4.4(@firebase/app@0.9.12) '@firebase/remote-config-types': 0.3.0 '@firebase/util': 1.9.3 tslib: 2.5.3 @@ -965,27 +965,27 @@ packages: resolution: {integrity: sha512-RtEH4vdcbXZuZWRZbIRmQVBNsE7VDQpet2qFvq6vwKLBIQRQR5Kh58M4ok3A3US8Sr3rubYnaGqZSurCwI8uMA==} dev: false - /@firebase/remote-config@0.4.4(@firebase/app@0.9.11): + /@firebase/remote-config@0.4.4(@firebase/app@0.9.12): resolution: {integrity: sha512-x1ioTHGX8ZwDSTOVp8PBLv2/wfwKzb4pxi0gFezS5GCJwbLlloUH4YYZHHS83IPxnua8b6l0IXUaWd0RgbWwzQ==} peerDependencies: '@firebase/app': 0.x dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/component': 0.6.4 - '@firebase/installations': 0.6.4(@firebase/app@0.9.11) + '@firebase/installations': 0.6.4(@firebase/app@0.9.12) '@firebase/logger': 0.4.0 '@firebase/util': 1.9.3 tslib: 2.5.3 dev: false - /@firebase/storage-compat@0.3.2(@firebase/app-compat@0.2.11)(@firebase/app-types@0.9.0)(@firebase/app@0.9.11): + /@firebase/storage-compat@0.3.2(@firebase/app-compat@0.2.12)(@firebase/app-types@0.9.0)(@firebase/app@0.9.12): resolution: {integrity: sha512-wvsXlLa9DVOMQJckbDNhXKKxRNNewyUhhbXev3t8kSgoCotd1v3MmqhKKz93ePhDnhHnDs7bYHy+Qa8dRY6BXw==} peerDependencies: '@firebase/app-compat': 0.x dependencies: - '@firebase/app-compat': 0.2.11 + '@firebase/app-compat': 0.2.12 '@firebase/component': 0.6.4 - '@firebase/storage': 0.11.2(@firebase/app@0.9.11) + '@firebase/storage': 0.11.2(@firebase/app@0.9.12) '@firebase/storage-types': 0.8.0(@firebase/app-types@0.9.0)(@firebase/util@1.9.3) '@firebase/util': 1.9.3 tslib: 2.5.3 @@ -1005,12 +1005,12 @@ packages: '@firebase/util': 1.9.3 dev: false - /@firebase/storage@0.11.2(@firebase/app@0.9.11): + /@firebase/storage@0.11.2(@firebase/app@0.9.12): resolution: {integrity: sha512-CtvoFaBI4hGXlXbaCHf8humajkbXhs39Nbh6MbNxtwJiCqxPy9iH3D3CCfXAvP0QvAAwmJUTK3+z9a++Kc4nkA==} peerDependencies: '@firebase/app': 0.x dependencies: - '@firebase/app': 0.9.11 + '@firebase/app': 0.9.12 '@firebase/component': 0.6.4 '@firebase/util': 1.9.3 node-fetch: 2.6.7 @@ -1082,8 +1082,8 @@ packages: dev: false optional: true - /@google-cloud/pubsub@3.7.0: - resolution: {integrity: sha512-PYgYM/bPMgzKzzKJwvHL8lupVVXIoS7sBppdJWDfK5BVA6tLqBF57P20YEy9V8gi1/v1bZ9YCa1Ag58oYfGItA==} + /@google-cloud/pubsub@3.7.1: + resolution: {integrity: sha512-J6jzgIubq1sAMafnSF2wGnOn1qkNd0l0Y5ChG33rU27/iDXmxKabaiY/dvFndX3v57TE/QcB9uQt5A6Pek+WrA==} engines: {node: '>=12.0.0'} dependencies: '@google-cloud/paginator': 4.0.1 @@ -1098,7 +1098,7 @@ packages: extend: 3.0.2 google-auth-library: 8.8.0 google-gax: 3.6.0 - heap-js: 2.2.0 + heap-js: 2.3.0 is-stream-ended: 0.1.4 lodash.snakecase: 4.1.1 p-defer: 3.0.0 @@ -1107,8 +1107,8 @@ packages: - supports-color dev: false - /@google-cloud/storage@6.10.1: - resolution: {integrity: sha512-EtLlT0YbXtrbUxaNbEfTyTytrjELtl4i42flf8COg+Hu5+apdNjsFO9XEY39wshxAuVjLf4fCSm7GTSW+BD3gQ==} + /@google-cloud/storage@6.11.0: + resolution: {integrity: sha512-p5VX5K2zLTrMXlKdS1CiQNkKpygyn7CBFm5ZvfhVj6+7QUsjWvYx9YDMkYXdarZ6JDt4cxiu451y9QUIH82ZTw==} engines: {node: '>=12'} requiresBuild: true dependencies: @@ -1140,15 +1140,15 @@ packages: engines: {node: ^8.13.0 || >=10.10.0} dependencies: '@grpc/proto-loader': 0.7.7 - '@types/node': 20.1.4 + '@types/node': 20.3.1 dev: false - /@grpc/grpc-js@1.8.14: - resolution: {integrity: sha512-w84maJ6CKl5aApCMzFll0hxtFNT6or9WwMslobKaqWUEf1K+zhlL43bSQhFreyYWIWR+Z0xnVFC1KtLm4ZpM/A==} + /@grpc/grpc-js@1.8.15: + resolution: {integrity: sha512-H2Bu/w6+oQ58DsRbQol66ERBk3V5ZIak/z/MDx0T4EgDnJWps807I6BvTjq0v6UvZtOcLO+ur+Q9wvniqu3OJA==} engines: {node: ^8.13.0 || >=10.10.0} dependencies: '@grpc/proto-loader': 0.7.7 - '@types/node': 20.1.4 + '@types/node': 20.3.1 dev: false /@grpc/proto-loader@0.6.13: @@ -1255,7 +1255,7 @@ packages: resolution: {integrity: sha512-PgaIi8Vv89YOjc6rpKL/uPg2w4k0rAwAYxcqeXqzKqsEAste5rgB8xp1/KUOG0oAOkPd3MRL6Duj+m0ZwJ3g+g==} engines: {node: ^12.16.0 || >=13.7.0} dependencies: - '@babel/generator': 7.21.5 + '@babel/generator': 7.22.5 '@linaria/logger': 4.0.0 '@linaria/utils': 4.3.4 transitivePeerDependencies: @@ -1266,14 +1266,14 @@ packages: resolution: {integrity: sha512-vt6WJG54n+KANaqxOfzIIU7aSfFHEWFbnGLsgxL7nASHqO0zezrNA2y2Rrp80zSeTW+wSpbmDM4uJyC9UW1qoA==} engines: {node: ^12.16.0 || >=13.7.0} dependencies: - '@babel/core': 7.21.8 - '@babel/plugin-proposal-export-namespace-from': 7.18.9(@babel/core@7.21.8) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.21.8) - '@babel/plugin-transform-modules-commonjs': 7.21.5(@babel/core@7.21.8) - '@babel/traverse': 7.21.5 - '@babel/types': 7.21.5 + '@babel/core': 7.22.5 + '@babel/plugin-proposal-export-namespace-from': 7.18.9(@babel/core@7.22.5) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.22.5) + '@babel/plugin-transform-modules-commonjs': 7.22.5(@babel/core@7.22.5) + '@babel/traverse': 7.22.5 + '@babel/types': 7.22.5 '@linaria/logger': 4.0.0 - babel-merge: 3.0.0(@babel/core@7.21.8) + babel-merge: 3.0.0(@babel/core@7.22.5) transitivePeerDependencies: - supports-color dev: false @@ -1309,13 +1309,13 @@ packages: engines: {node: '>=8.12.0'} dev: false - /@playwright/test@1.34.3: - resolution: {integrity: sha512-zPLef6w9P6T/iT6XDYG3mvGOqOyb6eHaV9XtkunYs0+OzxBtrPAAaHotc0X+PJ00WPPnLfFBTl7mf45Mn8DBmw==} - engines: {node: '>=14'} + /@playwright/test@1.35.1: + resolution: {integrity: sha512-b5YoFe6J9exsMYg0pQAobNDR85T1nLumUYgUTtKm4d21iX2L7WqKq9dW8NGJ+2vX0etZd+Y7UeuqsxDXm9+5ZA==} + engines: {node: '>=16'} hasBin: true dependencies: - '@types/node': 20.1.4 - playwright-core: 1.34.3 + '@types/node': 20.3.1 + playwright-core: 1.35.1 optionalDependencies: fsevents: 2.3.2 dev: true @@ -1370,20 +1370,20 @@ packages: /@remirror/core-constants@2.0.1: resolution: {integrity: sha512-ZR4aihtnnT9lMbhh5DEbsriJRlukRXmLZe7HmM+6ufJNNUDoazc75UX26xbgQlNUqgAqMcUdGFAnPc1JwgAdLQ==} dependencies: - '@babel/runtime': 7.21.5 + '@babel/runtime': 7.22.5 dev: false /@remirror/core-helpers@2.0.3: resolution: {integrity: sha512-LqIPF4stGG69l9qu/FFicv9d9B+YaItzgDMC5A0CEvDQfKkGD3BfabLmfpnuWbsc06oKGdTduilgWcALLZoYLg==} dependencies: - '@babel/runtime': 7.21.5 + '@babel/runtime': 7.22.5 '@linaria/core': 4.2.9 '@remirror/core-constants': 2.0.1 '@remirror/types': 1.0.1 '@types/object.omit': 3.0.0 '@types/object.pick': 1.3.2 '@types/throttle-debounce': 2.1.0 - case-anything: 2.1.11 + case-anything: 2.1.13 dash-get: 1.0.2 deepmerge: 4.3.1 fast-deep-equal: 3.1.3 @@ -1401,7 +1401,7 @@ packages: type-fest: 2.19.0 dev: false - /@rollup/plugin-commonjs@24.1.0(rollup@3.21.7): + /@rollup/plugin-commonjs@24.1.0(rollup@3.25.1): resolution: {integrity: sha512-eSL45hjhCWI0jCCXcNtLVqM5N1JlBGvlFfY0m6oOYnLCJ6N0qEXoZql4sY2MOUArzhH4SA/qBpTxvvZp2Sc+DQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -1410,16 +1410,16 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.2(rollup@3.21.7) + '@rollup/pluginutils': 5.0.2(rollup@3.25.1) commondir: 1.0.1 estree-walker: 2.0.2 glob: 8.1.0 is-reference: 1.2.1 magic-string: 0.27.0 - rollup: 3.21.7 + rollup: 3.25.1 dev: true - /@rollup/plugin-json@6.0.0(rollup@3.21.7): + /@rollup/plugin-json@6.0.0(rollup@3.25.1): resolution: {integrity: sha512-i/4C5Jrdr1XUarRhVu27EEwjt4GObltD7c+MkCIpO2QIbojw8MUs+CCTqOphQi3Qtg1FLmYt+l+6YeoIf51J7w==} engines: {node: '>=14.0.0'} peerDependencies: @@ -1428,12 +1428,12 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.2(rollup@3.21.7) - rollup: 3.21.7 + '@rollup/pluginutils': 5.0.2(rollup@3.25.1) + rollup: 3.25.1 dev: true - /@rollup/plugin-node-resolve@15.0.2(rollup@3.21.7): - resolution: {integrity: sha512-Y35fRGUjC3FaurG722uhUuG8YHOJRJQbI6/CkbRkdPotSpDj9NtIN85z1zrcyDcCQIW4qp5mgG72U+gJ0TAFEg==} + /@rollup/plugin-node-resolve@15.1.0(rollup@3.25.1): + resolution: {integrity: sha512-xeZHCgsiZ9pzYVgAo9580eCGqwh/XCEUM9q6iQfGNocjgkufHAqC3exA+45URvhiYV8sBF9RlBai650eNs7AsA==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^2.78.0||^3.0.0 @@ -1441,16 +1441,16 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.0.2(rollup@3.21.7) + '@rollup/pluginutils': 5.0.2(rollup@3.25.1) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-builtin-module: 3.2.1 is-module: 1.0.0 resolve: 1.22.2 - rollup: 3.21.7 + rollup: 3.25.1 dev: true - /@rollup/pluginutils@5.0.2(rollup@3.21.7): + /@rollup/pluginutils@5.0.2(rollup@3.25.1): resolution: {integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==} engines: {node: '>=14.0.0'} peerDependencies: @@ -1462,23 +1462,23 @@ packages: '@types/estree': 1.0.1 estree-walker: 2.0.2 picomatch: 2.3.1 - rollup: 3.21.7 + rollup: 3.25.1 dev: true - /@sveltejs/adapter-node@1.2.4(@sveltejs/kit@1.20.1): + /@sveltejs/adapter-node@1.2.4(@sveltejs/kit@1.20.2): resolution: {integrity: sha512-TNnhS+OKRZ9RKnC+ho5mlE2FJquI61i0v7yOXxBUSU3LAoYH2kwVVL8P8ecjefmZ8BOfM1V54pBnDODBU5CEaA==} peerDependencies: '@sveltejs/kit': ^1.0.0 dependencies: - '@rollup/plugin-commonjs': 24.1.0(rollup@3.21.7) - '@rollup/plugin-json': 6.0.0(rollup@3.21.7) - '@rollup/plugin-node-resolve': 15.0.2(rollup@3.21.7) - '@sveltejs/kit': 1.20.1(svelte@3.59.1)(vite@4.3.9) - rollup: 3.21.7 + '@rollup/plugin-commonjs': 24.1.0(rollup@3.25.1) + '@rollup/plugin-json': 6.0.0(rollup@3.25.1) + '@rollup/plugin-node-resolve': 15.1.0(rollup@3.25.1) + '@sveltejs/kit': 1.20.2(svelte@3.59.1)(vite@4.3.9) + rollup: 3.25.1 dev: true - /@sveltejs/kit@1.20.1(svelte@3.59.1)(vite@4.3.9): - resolution: {integrity: sha512-iZ7PvbM45sdLR3KIXFTbwIwP4PmeO/7JdNdpKRc/T9xMgDabNlPhL1gnJ/Hi1w00g4nc3Zpo/HNrzbRmuOnUjQ==} + /@sveltejs/kit@1.20.2(svelte@3.59.1)(vite@4.3.9): + resolution: {integrity: sha512-MtR1i+HtmYWcRgtubw1GQqT/+CWXL/z24PegE0xYAdObbhdr7YtEfmoe705D/JZMtMmoPXrmSk4W0MfL5A3lYw==} engines: {node: ^16.14 || >=18} hasBin: true requiresBuild: true @@ -1489,7 +1489,7 @@ packages: '@sveltejs/vite-plugin-svelte': 2.4.1(svelte@3.59.1)(vite@4.3.9) '@types/cookie': 0.5.1 cookie: 0.5.0 - devalue: 4.3.1 + devalue: 4.3.2 esm-env: 1.0.0 kleur: 4.1.5 magic-string: 0.30.0 @@ -1500,7 +1500,7 @@ packages: svelte: 3.59.1 tiny-glob: 0.2.9 undici: 5.22.1 - vite: 4.3.9(@types/node@20.1.4) + vite: 4.3.9(@types/node@20.3.1) transitivePeerDependencies: - supports-color dev: true @@ -1516,7 +1516,7 @@ packages: '@sveltejs/vite-plugin-svelte': 2.4.1(svelte@3.59.1)(vite@4.3.9) debug: 4.3.4 svelte: 3.59.1 - vite: 4.3.9(@types/node@20.1.4) + vite: 4.3.9(@types/node@20.3.1) transitivePeerDependencies: - supports-color dev: true @@ -1534,8 +1534,8 @@ packages: kleur: 4.1.5 magic-string: 0.30.0 svelte: 3.59.1 - svelte-hmr: 0.15.1(svelte@3.59.1) - vite: 4.3.9(@types/node@20.1.4) + svelte-hmr: 0.15.2(svelte@3.59.1) + vite: 4.3.9(@types/node@20.3.1) vitefu: 0.2.4(vite@4.3.9) transitivePeerDependencies: - supports-color @@ -1709,24 +1709,24 @@ packages: '@tiptap/core': ^2.0.0 dependencies: '@tiptap/core': 2.0.3(@tiptap/pm@2.0.3) - prosemirror-changeset: 2.2.0 - prosemirror-collab: 1.3.0 - prosemirror-commands: 1.5.1 - prosemirror-dropcursor: 1.8.0 - prosemirror-gapcursor: 1.3.1 - prosemirror-history: 1.3.1 - prosemirror-inputrules: 1.2.0 - prosemirror-keymap: 1.2.1 - prosemirror-markdown: 1.10.1 - prosemirror-menu: 1.2.1 - prosemirror-model: 1.19.0 - prosemirror-schema-basic: 1.2.1 - prosemirror-schema-list: 1.2.2 - prosemirror-state: 1.4.2 - prosemirror-tables: 1.3.2 - prosemirror-trailing-node: 2.0.4(prosemirror-model@1.19.0)(prosemirror-state@1.4.2)(prosemirror-view@1.31.2) - prosemirror-transform: 1.7.1 - prosemirror-view: 1.31.2 + prosemirror-changeset: 2.2.1 + prosemirror-collab: 1.3.1 + prosemirror-commands: 1.5.2 + prosemirror-dropcursor: 1.8.1 + prosemirror-gapcursor: 1.3.2 + prosemirror-history: 1.3.2 + prosemirror-inputrules: 1.2.1 + prosemirror-keymap: 1.2.2 + prosemirror-markdown: 1.11.0 + prosemirror-menu: 1.2.2 + prosemirror-model: 1.19.2 + prosemirror-schema-basic: 1.2.2 + prosemirror-schema-list: 1.3.0 + prosemirror-state: 1.4.3 + prosemirror-tables: 1.3.3 + prosemirror-trailing-node: 2.0.4(prosemirror-model@1.19.2)(prosemirror-state@1.4.3)(prosemirror-view@1.31.4) + prosemirror-transform: 1.7.3 + prosemirror-view: 1.31.4 transitivePeerDependencies: - supports-color dev: false @@ -1767,7 +1767,7 @@ packages: resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} dependencies: '@types/connect': 3.4.35 - '@types/node': 20.1.4 + '@types/node': 20.3.1 dev: false /@types/chai-subset@1.3.3: @@ -1783,7 +1783,7 @@ packages: /@types/connect@3.4.35: resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} dependencies: - '@types/node': 20.1.4 + '@types/node': 20.3.1 dev: false /@types/cookie@0.5.1: @@ -1793,7 +1793,7 @@ packages: /@types/duplexify@3.6.1: resolution: {integrity: sha512-n0zoEj/fMdMOvqbHxmqnza/kXyoGgJmEpsXjpP+gEqE1Ye4yNqc7xWipKnUoMpWhMuzJQSfK2gMrwlElly7OGQ==} dependencies: - '@types/node': 20.1.4 + '@types/node': 20.3.1 dev: false /@types/estree@1.0.1: @@ -1803,7 +1803,7 @@ packages: /@types/express-serve-static-core@4.17.35: resolution: {integrity: sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==} dependencies: - '@types/node': 20.1.4 + '@types/node': 20.3.1 '@types/qs': 6.9.7 '@types/range-parser': 1.2.4 '@types/send': 0.17.1 @@ -1822,17 +1822,17 @@ packages: resolution: {integrity: sha512-IO+MJPVhoqz+28h1qLAcBEH2+xHMK6MTyHJc7MTnnYb6wsoLR29POVGJ7LycmVXIqyy/4/2ShP5sUwTXuOwb/w==} dependencies: '@types/minimatch': 5.1.2 - '@types/node': 20.1.4 + '@types/node': 20.3.1 dev: false - /@types/json-schema@7.0.11: - resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} + /@types/json-schema@7.0.12: + resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} dev: true /@types/jsonwebtoken@9.0.2: resolution: {integrity: sha512-drE6uz7QBKq1fYqqoFKTDRdFCPHd5TCub75BM+D+cMx7NU9hUz7SESLfC2fSCXVFMO5Yj8sOWHuGqPgjc+fz0Q==} dependencies: - '@types/node': 20.1.4 + '@types/node': 20.3.1 dev: false /@types/linkify-it@3.0.2: @@ -1866,8 +1866,8 @@ packages: resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} dev: false - /@types/node@20.1.4: - resolution: {integrity: sha512-At4pvmIOki8yuwLtd7BNHl3CiWNbtclUbNtScGx4OHfBd4/oWoJC8KRCIxXwkdndzhxOsPXihrsOoydxBjlE9Q==} + /@types/node@20.3.1: + resolution: {integrity: sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg==} /@types/object.omit@3.0.0: resolution: {integrity: sha512-I27IoPpH250TUzc9FzXd0P1BV/BMJuzqD3jOz98ehf9dQqGkxlq+hO1bIqZGWqCg5bVOy0g4AUVJtnxe0klDmw==} @@ -1897,7 +1897,7 @@ packages: resolution: {integrity: sha512-F3OznnSLAUxFrCEu/L5PY8+ny8DtcFRjx7fZZ9bycvXRi3KPTRS9HOitGZwvPg0juRhXFWIeKX58cnX5YqLohQ==} dependencies: '@types/glob': 8.1.0 - '@types/node': 20.1.4 + '@types/node': 20.3.1 dev: false /@types/semver@7.5.0: @@ -1908,22 +1908,22 @@ packages: resolution: {integrity: sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==} dependencies: '@types/mime': 1.3.2 - '@types/node': 20.1.4 + '@types/node': 20.3.1 dev: false /@types/serve-static@1.15.1: resolution: {integrity: sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==} dependencies: '@types/mime': 3.0.1 - '@types/node': 20.1.4 + '@types/node': 20.3.1 dev: false /@types/throttle-debounce@2.1.0: resolution: {integrity: sha512-5eQEtSCoESnh2FsiLTxE121IiE60hnMqcb435fShf4bpLRjEu1Eoekht23y6zXS9Ts3l+Szu3TARnTsA0GkOkQ==} dev: false - /@typescript-eslint/eslint-plugin@5.59.8(@typescript-eslint/parser@5.59.8)(eslint@8.42.0)(typescript@5.1.3): - resolution: {integrity: sha512-JDMOmhXteJ4WVKOiHXGCoB96ADWg9q7efPWHRViT/f09bA8XOMLAVHHju3l0MkZnG1izaWXYmgvQcUjTRcpShQ==} + /@typescript-eslint/eslint-plugin@5.59.11(@typescript-eslint/parser@5.59.11)(eslint@8.42.0)(typescript@5.1.3): + resolution: {integrity: sha512-XxuOfTkCUiOSyBWIvHlUraLw/JT/6Io1365RO6ZuI88STKMavJZPNMU0lFcUTeQXEhHiv64CbxYxBNoDVSmghg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: '@typescript-eslint/parser': ^5.0.0 @@ -1934,10 +1934,10 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.5.1 - '@typescript-eslint/parser': 5.59.8(eslint@8.42.0)(typescript@5.1.3) - '@typescript-eslint/scope-manager': 5.59.8 - '@typescript-eslint/type-utils': 5.59.8(eslint@8.42.0)(typescript@5.1.3) - '@typescript-eslint/utils': 5.59.8(eslint@8.42.0)(typescript@5.1.3) + '@typescript-eslint/parser': 5.59.11(eslint@8.42.0)(typescript@5.1.3) + '@typescript-eslint/scope-manager': 5.59.11 + '@typescript-eslint/type-utils': 5.59.11(eslint@8.42.0)(typescript@5.1.3) + '@typescript-eslint/utils': 5.59.11(eslint@8.42.0)(typescript@5.1.3) debug: 4.3.4 eslint: 8.42.0 grapheme-splitter: 1.0.4 @@ -1950,8 +1950,8 @@ packages: - supports-color dev: true - /@typescript-eslint/parser@5.59.8(eslint@8.42.0)(typescript@5.1.3): - resolution: {integrity: sha512-AnR19RjJcpjoeGojmwZtCwBX/RidqDZtzcbG3xHrmz0aHHoOcbWnpDllenRDmDvsV0RQ6+tbb09/kyc+UT9Orw==} + /@typescript-eslint/parser@5.59.11(eslint@8.42.0)(typescript@5.1.3): + resolution: {integrity: sha512-s9ZF3M+Nym6CAZEkJJeO2TFHHDsKAM3ecNkLuH4i4s8/RCPnF5JRip2GyviYkeEAcwGMJxkqG9h2dAsnA1nZpA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -1960,9 +1960,9 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 5.59.8 - '@typescript-eslint/types': 5.59.8 - '@typescript-eslint/typescript-estree': 5.59.8(typescript@5.1.3) + '@typescript-eslint/scope-manager': 5.59.11 + '@typescript-eslint/types': 5.59.11 + '@typescript-eslint/typescript-estree': 5.59.11(typescript@5.1.3) debug: 4.3.4 eslint: 8.42.0 typescript: 5.1.3 @@ -1970,16 +1970,16 @@ packages: - supports-color dev: true - /@typescript-eslint/scope-manager@5.59.8: - resolution: {integrity: sha512-/w08ndCYI8gxGf+9zKf1vtx/16y8MHrZs5/tnjHhMLNSixuNcJavSX4wAiPf4aS5x41Es9YPCn44MIe4cxIlig==} + /@typescript-eslint/scope-manager@5.59.11: + resolution: {integrity: sha512-dHFOsxoLFtrIcSj5h0QoBT/89hxQONwmn3FOQ0GOQcLOOXm+MIrS8zEAhs4tWl5MraxCY3ZJpaXQQdFMc2Tu+Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@typescript-eslint/types': 5.59.8 - '@typescript-eslint/visitor-keys': 5.59.8 + '@typescript-eslint/types': 5.59.11 + '@typescript-eslint/visitor-keys': 5.59.11 dev: true - /@typescript-eslint/type-utils@5.59.8(eslint@8.42.0)(typescript@5.1.3): - resolution: {integrity: sha512-+5M518uEIHFBy3FnyqZUF3BMP+AXnYn4oyH8RF012+e7/msMY98FhGL5SrN29NQ9xDgvqCgYnsOiKp1VjZ/fpA==} + /@typescript-eslint/type-utils@5.59.11(eslint@8.42.0)(typescript@5.1.3): + resolution: {integrity: sha512-LZqVY8hMiVRF2a7/swmkStMYSoXMFlzL6sXV6U/2gL5cwnLWQgLEG8tjWPpaE4rMIdZ6VKWwcffPlo1jPfk43g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: '*' @@ -1988,8 +1988,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.59.8(typescript@5.1.3) - '@typescript-eslint/utils': 5.59.8(eslint@8.42.0)(typescript@5.1.3) + '@typescript-eslint/typescript-estree': 5.59.11(typescript@5.1.3) + '@typescript-eslint/utils': 5.59.11(eslint@8.42.0)(typescript@5.1.3) debug: 4.3.4 eslint: 8.42.0 tsutils: 3.21.0(typescript@5.1.3) @@ -1998,13 +1998,13 @@ packages: - supports-color dev: true - /@typescript-eslint/types@5.59.8: - resolution: {integrity: sha512-+uWuOhBTj/L6awoWIg0BlWy0u9TyFpCHrAuQ5bNfxDaZ1Ppb3mx6tUigc74LHcbHpOHuOTOJrBoAnhdHdaea1w==} + /@typescript-eslint/types@5.59.11: + resolution: {integrity: sha512-epoN6R6tkvBYSc+cllrz+c2sOFWkbisJZWkOE+y3xHtvYaOE6Wk6B8e114McRJwFRjGvYdJwLXQH5c9osME/AA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/typescript-estree@5.59.8(typescript@5.1.3): - resolution: {integrity: sha512-Jy/lPSDJGNow14vYu6IrW790p7HIf/SOV1Bb6lZ7NUkLc2iB2Z9elESmsaUtLw8kVqogSbtLH9tut5GCX1RLDg==} + /@typescript-eslint/typescript-estree@5.59.11(typescript@5.1.3): + resolution: {integrity: sha512-YupOpot5hJO0maupJXixi6l5ETdrITxeo5eBOeuV7RSKgYdU3G5cxO49/9WRnJq9EMrB7AuTSLH/bqOsXi7wPA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: typescript: '*' @@ -2012,8 +2012,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 5.59.8 - '@typescript-eslint/visitor-keys': 5.59.8 + '@typescript-eslint/types': 5.59.11 + '@typescript-eslint/visitor-keys': 5.59.11 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 @@ -2024,18 +2024,18 @@ packages: - supports-color dev: true - /@typescript-eslint/utils@5.59.8(eslint@8.42.0)(typescript@5.1.3): - resolution: {integrity: sha512-Tr65630KysnNn9f9G7ROF3w1b5/7f6QVCJ+WK9nhIocWmx9F+TmCAcglF26Vm7z8KCTwoKcNEBZrhlklla3CKg==} + /@typescript-eslint/utils@5.59.11(eslint@8.42.0)(typescript@5.1.3): + resolution: {integrity: sha512-didu2rHSOMUdJThLk4aZ1Or8IcO3HzCw/ZvEjTTIfjIrcdd5cvSIwwDy2AOlE7htSNp7QIZ10fLMyRCveesMLg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.42.0) - '@types/json-schema': 7.0.11 + '@types/json-schema': 7.0.12 '@types/semver': 7.5.0 - '@typescript-eslint/scope-manager': 5.59.8 - '@typescript-eslint/types': 5.59.8 - '@typescript-eslint/typescript-estree': 5.59.8(typescript@5.1.3) + '@typescript-eslint/scope-manager': 5.59.11 + '@typescript-eslint/types': 5.59.11 + '@typescript-eslint/typescript-estree': 5.59.11(typescript@5.1.3) eslint: 8.42.0 eslint-scope: 5.1.1 semver: 7.5.1 @@ -2044,47 +2044,47 @@ packages: - typescript dev: true - /@typescript-eslint/visitor-keys@5.59.8: - resolution: {integrity: sha512-pJhi2ms0x0xgloT7xYabil3SGGlojNNKjK/q6dB3Ey0uJLMjK2UDGJvHieiyJVW/7C3KI+Z4Q3pEHkm4ejA+xQ==} + /@typescript-eslint/visitor-keys@5.59.11: + resolution: {integrity: sha512-KGYniTGG3AMTuKF9QBD7EIrvufkB6O6uX3knP73xbKLMpH+QRPcgnCxjWXSHjMRuOxFLovljqQgQpR0c7GvjoA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@typescript-eslint/types': 5.59.8 + '@typescript-eslint/types': 5.59.11 eslint-visitor-keys: 3.4.1 dev: true - /@vitest/expect@0.31.4: - resolution: {integrity: sha512-tibyx8o7GUyGHZGyPgzwiaPaLDQ9MMuCOrc03BYT0nryUuhLbL7NV2r/q98iv5STlwMgaKuFJkgBW/8iPKwlSg==} + /@vitest/expect@0.32.0: + resolution: {integrity: sha512-VxVHhIxKw9Lux+O9bwLEEk2gzOUe93xuFHy9SzYWnnoYZFYg1NfBtnfnYWiJN7yooJ7KNElCK5YtA7DTZvtXtg==} dependencies: - '@vitest/spy': 0.31.4 - '@vitest/utils': 0.31.4 + '@vitest/spy': 0.32.0 + '@vitest/utils': 0.32.0 chai: 4.3.7 dev: true - /@vitest/runner@0.31.4: - resolution: {integrity: sha512-Wgm6UER+gwq6zkyrm5/wbpXGF+g+UBB78asJlFkIOwyse0pz8lZoiC6SW5i4gPnls/zUcPLWS7Zog0LVepXnpg==} + /@vitest/runner@0.32.0: + resolution: {integrity: sha512-QpCmRxftHkr72xt5A08xTEs9I4iWEXIOCHWhQQguWOKE4QH7DXSKZSOFibuwEIMAD7G0ERvtUyQn7iPWIqSwmw==} dependencies: - '@vitest/utils': 0.31.4 + '@vitest/utils': 0.32.0 concordance: 5.0.4 p-limit: 4.0.0 - pathe: 1.1.0 + pathe: 1.1.1 dev: true - /@vitest/snapshot@0.31.4: - resolution: {integrity: sha512-LemvNumL3NdWSmfVAMpXILGyaXPkZbG5tyl6+RQSdcHnTj6hvA49UAI8jzez9oQyE/FWLKRSNqTGzsHuk89LRA==} + /@vitest/snapshot@0.32.0: + resolution: {integrity: sha512-yCKorPWjEnzpUxQpGlxulujTcSPgkblwGzAUEL+z01FTUg/YuCDZ8dxr9sHA08oO2EwxzHXNLjQKWJ2zc2a19Q==} dependencies: magic-string: 0.30.0 - pathe: 1.1.0 + pathe: 1.1.1 pretty-format: 27.5.1 dev: true - /@vitest/spy@0.31.4: - resolution: {integrity: sha512-3ei5ZH1s3aqbEyftPAzSuunGICRuhE+IXOmpURFdkm5ybUADk+viyQfejNk6q8M5QGX8/EVKw+QWMEP3DTJDag==} + /@vitest/spy@0.32.0: + resolution: {integrity: sha512-MruAPlM0uyiq3d53BkwTeShXY0rYEfhNGQzVO5GHBmmX3clsxcWp79mMnkOVcV244sNTeDcHbcPFWIjOI4tZvw==} dependencies: - tinyspy: 2.1.0 + tinyspy: 2.1.1 dev: true - /@vitest/utils@0.31.4: - resolution: {integrity: sha512-DobZbHacWznoGUfYU8XDPY78UubJxXfMNY1+SUdOp1NsI34eopSA6aZMeaGu10waSOeYwE8lxrd/pLfT0RMxjQ==} + /@vitest/utils@0.32.0: + resolution: {integrity: sha512-53yXunzx47MmbuvcOPpLaVljHaeSu1G2dHdmy7+9ngMnQIkBQcvwOcoclWFnxDMxFbnq8exAfh3aKSZaK71J5A==} dependencies: concordance: 5.0.4 loupe: 2.3.6 @@ -2201,8 +2201,8 @@ packages: peerDependencies: postcss: ^8.1.0 dependencies: - browserslist: 4.21.5 - caniuse-lite: 1.0.30001487 + browserslist: 4.21.9 + caniuse-lite: 1.0.30001503 fraction.js: 4.2.0 normalize-range: 0.1.2 picocolors: 1.0.0 @@ -2210,12 +2210,12 @@ packages: postcss-value-parser: 4.2.0 dev: true - /babel-merge@3.0.0(@babel/core@7.21.8): + /babel-merge@3.0.0(@babel/core@7.22.5): resolution: {integrity: sha512-eBOBtHnzt9xvnjpYNI5HmaPp/b2vMveE5XggzqHnQeHJ8mFIBrBv6WZEVIj5jJ2uwTItkqKo9gWzEEcBxEq0yw==} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.21.8 + '@babel/core': 7.22.5 deepmerge: 2.2.1 object.omit: 3.0.0 dev: false @@ -2262,15 +2262,15 @@ packages: fill-range: 7.0.1 dev: true - /browserslist@4.21.5: - resolution: {integrity: sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==} + /browserslist@4.21.9: + resolution: {integrity: sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001487 - electron-to-chromium: 1.4.395 - node-releases: 2.0.10 - update-browserslist-db: 1.0.11(browserslist@4.21.5) + caniuse-lite: 1.0.30001503 + electron-to-chromium: 1.4.431 + node-releases: 2.0.12 + update-browserslist-db: 1.0.11(browserslist@4.21.9) /buffer-crc32@0.2.13: resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} @@ -2314,11 +2314,11 @@ packages: engines: {node: '>= 6'} dev: true - /caniuse-lite@1.0.30001487: - resolution: {integrity: sha512-83564Z3yWGqXsh2vaH/mhXfEM0wX+NlBCm1jYHOb97TrTWJEmPTccZgeLTPBUUb0PNVo+oomb7wkimZBIERClA==} + /caniuse-lite@1.0.30001503: + resolution: {integrity: sha512-Sf9NiF+wZxPfzv8Z3iS0rXM1Do+iOy2Lxvib38glFX+08TCYYYGR5fRJXk4d77C4AYwhUjgYgMsMudbh2TqCKw==} - /case-anything@2.1.11: - resolution: {integrity: sha512-uzKDXzdM/x914cepWPzElU3y50NRKYhjkO4ittOHLq+rF6M0AgRLF/+yPR1tvwLNAh8WHEPTfhuciZGPfX+oyg==} + /case-anything@2.1.13: + resolution: {integrity: sha512-zlOQ80VrQ2Ue+ymH5OuM/DlDq64mEm+B9UTdHULv5osUMD6HalNTblf2b1u/m6QecjsnOkBpqVZ+XPwIVsy7Ng==} engines: {node: '>=12.13'} dev: false @@ -2436,7 +2436,7 @@ packages: dependencies: date-time: 3.1.0 esutils: 2.0.3 - fast-diff: 1.2.0 + fast-diff: 1.3.0 js-string-escape: 1.0.1 lodash: 4.17.21 md5-hex: 3.0.1 @@ -2452,8 +2452,8 @@ packages: engines: {node: '>= 0.6'} dev: true - /crelt@1.0.5: - resolution: {integrity: sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA==} + /crelt@1.0.6: + resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} dev: false /cross-spawn@7.0.3: @@ -2517,8 +2517,8 @@ packages: engines: {node: '>=8'} dev: true - /devalue@4.3.1: - resolution: {integrity: sha512-Kc0TSP9IUU9eg55au5Q3YtqaYI2cgntVpunJV9Exbm9nvlBeTE5p2NqYHfpuXK6+VF2hF5PI+BPFPUti7e2N1g==} + /devalue@4.3.2: + resolution: {integrity: sha512-KqFl6pOgOW+Y6wJgu80rHpo2/3H07vr8ntR9rkkFIRETewbf5GaYYcakYfiKz89K+sLsuPkQIZaXDMjUObZwWg==} dev: true /didyoumean@1.2.2: @@ -2558,8 +2558,8 @@ packages: safe-buffer: 5.2.1 dev: false - /electron-to-chromium@1.4.395: - resolution: {integrity: sha512-r8IgVPlJsCs7yezgmuBTaOMuu8lgU0mzg+wcLLo0xVy5s+rpuFTI9tEKhHVaMIPgeJPjxwTDHUZqoBEsNMDbCQ==} + /electron-to-chromium@1.4.431: + resolution: {integrity: sha512-m232JTVmCawA2vG+1azVxhKZ9Sv1Q//xxNv5PkP5rWxGgQE8c3CiZFrh8Xnp+d1NmNxlu3QQrGIfdeW5TtXX5w==} /emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -2803,8 +2803,8 @@ packages: /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - /fast-diff@1.2.0: - resolution: {integrity: sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==} + /fast-diff@1.3.0: + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} dev: true /fast-glob@3.2.12: @@ -2871,47 +2871,47 @@ packages: '@fastify/busboy': 1.2.1 '@firebase/database-compat': 0.3.4 '@firebase/database-types': 0.10.4 - '@types/node': 20.1.4 + '@types/node': 20.3.1 jsonwebtoken: 9.0.0 jwks-rsa: 3.0.1 node-forge: 1.3.1 uuid: 9.0.0 optionalDependencies: '@google-cloud/firestore': 6.6.1 - '@google-cloud/storage': 6.10.1 + '@google-cloud/storage': 6.11.0 transitivePeerDependencies: - encoding - supports-color dev: false - /firebase@9.22.1: - resolution: {integrity: sha512-8x55ZZJwPlctKIhlfXL+KTOpdabp6dDpDwTEmuW1QNbfCkE1ZEuXHgjiQMfTkoeyQO9luV6YwVdgbgCt7yfYCg==} + /firebase@9.22.2: + resolution: {integrity: sha512-eBXsaTzXPx3Y0QhuuluG/qR58tlOx2X/W0GKNoF004FcG9L2gHuvGu5/bIczvrPyfNOCqDF+I5I/kOQi8l9m0A==} dependencies: - '@firebase/analytics': 0.10.0(@firebase/app@0.9.11) - '@firebase/analytics-compat': 0.2.6(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11) - '@firebase/app': 0.9.11 - '@firebase/app-check': 0.8.0(@firebase/app@0.9.11) - '@firebase/app-check-compat': 0.3.7(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11) - '@firebase/app-compat': 0.2.11 + '@firebase/analytics': 0.10.0(@firebase/app@0.9.12) + '@firebase/analytics-compat': 0.2.6(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12) + '@firebase/app': 0.9.12 + '@firebase/app-check': 0.8.0(@firebase/app@0.9.12) + '@firebase/app-check-compat': 0.3.7(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12) + '@firebase/app-compat': 0.2.12 '@firebase/app-types': 0.9.0 - '@firebase/auth': 0.23.2(@firebase/app@0.9.11) - '@firebase/auth-compat': 0.4.2(@firebase/app-compat@0.2.11)(@firebase/app-types@0.9.0)(@firebase/app@0.9.11) + '@firebase/auth': 0.23.2(@firebase/app@0.9.12) + '@firebase/auth-compat': 0.4.2(@firebase/app-compat@0.2.12)(@firebase/app-types@0.9.0)(@firebase/app@0.9.12) '@firebase/database': 0.14.4 '@firebase/database-compat': 0.3.4 - '@firebase/firestore': 3.12.1(@firebase/app@0.9.11) - '@firebase/firestore-compat': 0.3.10(@firebase/app-compat@0.2.11)(@firebase/app-types@0.9.0)(@firebase/app@0.9.11) - '@firebase/functions': 0.10.0(@firebase/app@0.9.11) - '@firebase/functions-compat': 0.3.5(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11) - '@firebase/installations': 0.6.4(@firebase/app@0.9.11) - '@firebase/installations-compat': 0.2.4(@firebase/app-compat@0.2.11)(@firebase/app-types@0.9.0)(@firebase/app@0.9.11) - '@firebase/messaging': 0.12.4(@firebase/app@0.9.11) - '@firebase/messaging-compat': 0.2.4(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11) - '@firebase/performance': 0.6.4(@firebase/app@0.9.11) - '@firebase/performance-compat': 0.2.4(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11) - '@firebase/remote-config': 0.4.4(@firebase/app@0.9.11) - '@firebase/remote-config-compat': 0.2.4(@firebase/app-compat@0.2.11)(@firebase/app@0.9.11) - '@firebase/storage': 0.11.2(@firebase/app@0.9.11) - '@firebase/storage-compat': 0.3.2(@firebase/app-compat@0.2.11)(@firebase/app-types@0.9.0)(@firebase/app@0.9.11) + '@firebase/firestore': 3.12.2(@firebase/app@0.9.12) + '@firebase/firestore-compat': 0.3.11(@firebase/app-compat@0.2.12)(@firebase/app-types@0.9.0)(@firebase/app@0.9.12) + '@firebase/functions': 0.10.0(@firebase/app@0.9.12) + '@firebase/functions-compat': 0.3.5(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12) + '@firebase/installations': 0.6.4(@firebase/app@0.9.12) + '@firebase/installations-compat': 0.2.4(@firebase/app-compat@0.2.12)(@firebase/app-types@0.9.0)(@firebase/app@0.9.12) + '@firebase/messaging': 0.12.4(@firebase/app@0.9.12) + '@firebase/messaging-compat': 0.2.4(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12) + '@firebase/performance': 0.6.4(@firebase/app@0.9.12) + '@firebase/performance-compat': 0.2.4(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12) + '@firebase/remote-config': 0.4.4(@firebase/app@0.9.12) + '@firebase/remote-config-compat': 0.2.4(@firebase/app-compat@0.2.12)(@firebase/app@0.9.12) + '@firebase/storage': 0.11.2(@firebase/app@0.9.12) + '@firebase/storage-compat': 0.3.2(@firebase/app-compat@0.2.12)(@firebase/app-types@0.9.0)(@firebase/app@0.9.12) '@firebase/util': 1.9.3 transitivePeerDependencies: - encoding @@ -3097,7 +3097,7 @@ packages: engines: {node: '>=12'} hasBin: true dependencies: - '@grpc/grpc-js': 1.8.14 + '@grpc/grpc-js': 1.8.15 '@grpc/proto-loader': 0.7.7 '@types/long': 4.0.2 '@types/rimraf': 3.0.2 @@ -3172,8 +3172,8 @@ packages: dependencies: function-bind: 1.1.1 - /heap-js@2.2.0: - resolution: {integrity: sha512-G3uM72G9F/zo9Hph/T7m4ZZVlVu5bx2f5CiCS78TBHz2mNIXnB5KRdEEYssXZJ7ldLDqID29bZ1D5ezCKQD2Zw==} + /heap-js@2.3.0: + resolution: {integrity: sha512-E5303mzwQ+4j/n2J0rDvEPBN7GKjhis10oHiYOgjxsmxYgqG++hz9NyLLOXttzH8as/DyiBHYpUrJTZWYaMo8Q==} engines: {node: '>=10.0.0'} dev: false @@ -3252,8 +3252,8 @@ packages: builtin-modules: 3.3.0 dev: true - /is-core-module@2.12.0: - resolution: {integrity: sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==} + /is-core-module@2.12.1: + resolution: {integrity: sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==} dependencies: has: 1.0.3 dev: true @@ -3362,7 +3362,7 @@ packages: engines: {node: '>=12.0.0'} hasBin: true dependencies: - '@babel/parser': 7.21.8 + '@babel/parser': 7.22.5 '@jsdoc/salty': 0.2.5 '@types/markdown-it': 12.2.3 bluebird: 3.7.2 @@ -3718,11 +3718,11 @@ packages: hasBin: true dev: false - /mlly@1.2.1: - resolution: {integrity: sha512-1aMEByaWgBPEbWV2BOPEMySRrzl7rIHXmQxam4DM8jVjalTQDjpN2ZKOLUrwyhfZQO7IXHml2StcHMhooDeEEQ==} + /mlly@1.3.0: + resolution: {integrity: sha512-HT5mcgIQKkOrZecOjOX3DJorTikWXwsBfpcr/MGBkhfWcjiqvnaL/9ppxvIUXfjT6xt4DVIAsN9fMUz1ev4bIw==} dependencies: acorn: 8.8.2 - pathe: 1.1.0 + pathe: 1.1.1 pkg-types: 1.0.3 ufo: 1.1.2 dev: true @@ -3795,8 +3795,8 @@ packages: engines: {node: '>= 6.13.0'} dev: false - /node-releases@2.0.10: - resolution: {integrity: sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==} + /node-releases@2.0.12: + resolution: {integrity: sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==} /normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} @@ -3864,8 +3864,8 @@ packages: word-wrap: 1.2.3 dev: true - /orderedmap@2.1.0: - resolution: {integrity: sha512-/pIFexOm6S70EPdznemIz3BQZoJ4VTFrhqzu0ACBqBgeLsLxq8e6Jim63ImIfwW/zAD1AlXpRMlOv3aghmo4dA==} + /orderedmap@2.1.1: + resolution: {integrity: sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g==} dev: false /p-defer@3.0.0: @@ -3923,8 +3923,8 @@ packages: engines: {node: '>=8'} dev: true - /pathe@1.1.0: - resolution: {integrity: sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==} + /pathe@1.1.1: + resolution: {integrity: sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==} dev: true /pathval@1.1.1: @@ -3953,13 +3953,13 @@ packages: resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} dependencies: jsonc-parser: 3.2.0 - mlly: 1.2.1 - pathe: 1.1.0 + mlly: 1.3.0 + pathe: 1.1.1 dev: true - /playwright-core@1.34.3: - resolution: {integrity: sha512-2pWd6G7OHKemc5x1r1rp8aQcpvDh7goMBZlJv6Co5vCNLVcQJdhxRL09SGaY6HcyHH9aT4tiynZabMofVasBYw==} - engines: {node: '>=14'} + /playwright-core@1.35.1: + resolution: {integrity: sha512-pNXb6CQ7OqmGDRspEjlxE49w+4YtR6a3X6mT1hZXeJHWmsEz7SunmvZeiG/+y1yyMZdHnnn73WKYdtV1er0Xyg==} + engines: {node: '>=16'} hasBin: true dev: true @@ -4016,7 +4016,7 @@ packages: dependencies: lilconfig: 2.1.0 postcss: 8.4.24 - yaml: 2.2.2 + yaml: 2.3.1 dev: true /postcss-nested@6.0.1(postcss@8.4.24): @@ -4078,150 +4078,150 @@ packages: react-is: 17.0.2 dev: true - /prosemirror-changeset@2.2.0: - resolution: {integrity: sha512-QM7ohGtkpVpwVGmFb8wqVhaz9+6IUXcIQBGZ81YNAKYuHiFJ1ShvSzab4pKqTinJhwciZbrtBEk/2WsqSt2PYg==} + /prosemirror-changeset@2.2.1: + resolution: {integrity: sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==} dependencies: - prosemirror-transform: 1.7.1 + prosemirror-transform: 1.7.3 dev: false - /prosemirror-collab@1.3.0: - resolution: {integrity: sha512-+S/IJ69G2cUu2IM5b3PBekuxs94HO1CxJIWOFrLQXUaUDKL/JfBx+QcH31ldBlBXyDEUl+k3Vltfi1E1MKp2mA==} + /prosemirror-collab@1.3.1: + resolution: {integrity: sha512-4SnynYR9TTYaQVXd/ieUvsVV4PDMBzrq2xPUWutHivDuOshZXqQ5rGbZM84HEaXKbLdItse7weMGOUdDVcLKEQ==} dependencies: - prosemirror-state: 1.4.2 + prosemirror-state: 1.4.3 dev: false - /prosemirror-commands@1.5.1: - resolution: {integrity: sha512-ga1ga/RkbzxfAvb6iEXYmrEpekn5NCwTb8w1dr/gmhSoaGcQ0VPuCzOn5qDEpC45ql2oDkKoKQbRxLJwKLpMTQ==} + /prosemirror-commands@1.5.2: + resolution: {integrity: sha512-hgLcPaakxH8tu6YvVAaILV2tXYsW3rAdDR8WNkeKGcgeMVQg3/TMhPdVoh7iAmfgVjZGtcOSjKiQaoeKjzd2mQ==} dependencies: - prosemirror-model: 1.19.0 - prosemirror-state: 1.4.2 - prosemirror-transform: 1.7.1 + prosemirror-model: 1.19.2 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.7.3 dev: false - /prosemirror-dropcursor@1.8.0: - resolution: {integrity: sha512-TZMitR8nlp9Xh42pDYGcWopCoFPmJduoyGJ7FjYM2/7gZKnfD41TIaZN5Q1cQjm6Fm/P5vk/DpVYFhS8kDdigw==} + /prosemirror-dropcursor@1.8.1: + resolution: {integrity: sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==} dependencies: - prosemirror-state: 1.4.2 - prosemirror-transform: 1.7.1 - prosemirror-view: 1.31.2 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.7.3 + prosemirror-view: 1.31.4 dev: false - /prosemirror-gapcursor@1.3.1: - resolution: {integrity: sha512-GKTeE7ZoMsx5uVfc51/ouwMFPq0o8YrZ7Hx4jTF4EeGbXxBveUV8CGv46mSHuBBeXGmvu50guoV2kSnOeZZnUA==} + /prosemirror-gapcursor@1.3.2: + resolution: {integrity: sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==} dependencies: - prosemirror-keymap: 1.2.1 - prosemirror-model: 1.19.0 - prosemirror-state: 1.4.2 - prosemirror-view: 1.31.2 + prosemirror-keymap: 1.2.2 + prosemirror-model: 1.19.2 + prosemirror-state: 1.4.3 + prosemirror-view: 1.31.4 dev: false - /prosemirror-history@1.3.1: - resolution: {integrity: sha512-YMV/IWBZ+LZSfaNcBbPcaQUiAiJRYFyJW2aapuNzL8nhIRsI7fIO0ykJFSe802+mWeoTsVJ1jxvRWPYqaUqljQ==} + /prosemirror-history@1.3.2: + resolution: {integrity: sha512-/zm0XoU/N/+u7i5zepjmZAEnpvjDtzoPWW6VmKptcAnPadN/SStsBjMImdCEbb3seiNTpveziPTIrXQbHLtU1g==} dependencies: - prosemirror-state: 1.4.2 - prosemirror-transform: 1.7.1 - prosemirror-view: 1.31.2 - rope-sequence: 1.3.3 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.7.3 + prosemirror-view: 1.31.4 + rope-sequence: 1.3.4 dev: false - /prosemirror-inputrules@1.2.0: - resolution: {integrity: sha512-eAW/M/NTSSzpCOxfR8Abw6OagdG0MiDAiWHQMQveIsZtoKVYzm0AflSPq/ymqJd56/Su1YPbwy9lM13wgHOFmQ==} + /prosemirror-inputrules@1.2.1: + resolution: {integrity: sha512-3LrWJX1+ULRh5SZvbIQlwZafOXqp1XuV21MGBu/i5xsztd+9VD15x6OtN6mdqSFI7/8Y77gYUbQ6vwwJ4mr6QQ==} dependencies: - prosemirror-state: 1.4.2 - prosemirror-transform: 1.7.1 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.7.3 dev: false - /prosemirror-keymap@1.2.1: - resolution: {integrity: sha512-kVK6WGC+83LZwuSJnuCb9PsADQnFZllt94qPP3Rx/vLcOUV65+IbBeH2nS5cFggPyEVJhGkGrgYFRrG250WhHQ==} + /prosemirror-keymap@1.2.2: + resolution: {integrity: sha512-EAlXoksqC6Vbocqc0GtzCruZEzYgrn+iiGnNjsJsH4mrnIGex4qbLdWWNza3AW5W36ZRrlBID0eM6bdKH4OStQ==} dependencies: - prosemirror-state: 1.4.2 - w3c-keyname: 2.2.6 + prosemirror-state: 1.4.3 + w3c-keyname: 2.2.8 dev: false - /prosemirror-markdown@1.10.1: - resolution: {integrity: sha512-s7iaTLiX+qO5z8kF2NcMmy2T7mIlxzkS4Sp3vTKSYChPtbMpg6YxFkU0Y06rUg2WtKlvBu7v1bXzlGBkfjUWAA==} + /prosemirror-markdown@1.11.0: + resolution: {integrity: sha512-yP9mZqPRstjZhhf3yykCQNE3AijxARrHe4e7esV9A+gp4cnGOH4QvrKYPpXLHspNWyvJJ+0URH+iIvV5qP1I2Q==} dependencies: markdown-it: 13.0.1 - prosemirror-model: 1.19.0 + prosemirror-model: 1.19.2 dev: false - /prosemirror-menu@1.2.1: - resolution: {integrity: sha512-sBirXxVfHalZO4f1ZS63WzewINK4182+7dOmoMeBkqYO8wqMBvBS7wQuwVOHnkMWPEh0+N0LJ856KYUN+vFkmQ==} + /prosemirror-menu@1.2.2: + resolution: {integrity: sha512-437HIWTq4F9cTX+kPfqZWWm+luJm95Aut/mLUy+9OMrOml0bmWDS26ceC6SNfb2/S94et1sZ186vLO7pDHzxSw==} dependencies: - crelt: 1.0.5 - prosemirror-commands: 1.5.1 - prosemirror-history: 1.3.1 - prosemirror-state: 1.4.2 + crelt: 1.0.6 + prosemirror-commands: 1.5.2 + prosemirror-history: 1.3.2 + prosemirror-state: 1.4.3 dev: false - /prosemirror-model@1.19.0: - resolution: {integrity: sha512-/CvFGJnwc41EJSfDkQLly1cAJJJmBpZwwUJtwZPTjY2RqZJfM8HVbCreOY/jti8wTRbVyjagcylyGoeJH/g/3w==} + /prosemirror-model@1.19.2: + resolution: {integrity: sha512-RXl0Waiss4YtJAUY3NzKH0xkJmsZupCIccqcIFoLTIKFlKNbIvFDRl27/kQy1FP8iUAxrjRRfIVvOebnnXJgqQ==} dependencies: - orderedmap: 2.1.0 + orderedmap: 2.1.1 dev: false - /prosemirror-schema-basic@1.2.1: - resolution: {integrity: sha512-vYBdIHsYKSDIqYmPBC7lnwk9DsKn8PnVqK97pMYP5MLEDFqWIX75JiaJTzndBii4bRuNqhC2UfDOfM3FKhlBHg==} + /prosemirror-schema-basic@1.2.2: + resolution: {integrity: sha512-/dT4JFEGyO7QnNTe9UaKUhjDXbTNkiWTq/N4VpKaF79bBjSExVV2NXmJpcM7z/gD7mbqNjxbmWW5nf1iNSSGnw==} dependencies: - prosemirror-model: 1.19.0 + prosemirror-model: 1.19.2 dev: false - /prosemirror-schema-list@1.2.2: - resolution: {integrity: sha512-rd0pqSDp86p0MUMKG903g3I9VmElFkQpkZ2iOd3EOVg1vo5Cst51rAsoE+5IPy0LPXq64eGcCYlW1+JPNxOj2w==} + /prosemirror-schema-list@1.3.0: + resolution: {integrity: sha512-Hz/7gM4skaaYfRPNgr421CU4GSwotmEwBVvJh5ltGiffUJwm7C8GfN/Bc6DR1EKEp5pDKhODmdXXyi9uIsZl5A==} dependencies: - prosemirror-model: 1.19.0 - prosemirror-state: 1.4.2 - prosemirror-transform: 1.7.1 + prosemirror-model: 1.19.2 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.7.3 dev: false - /prosemirror-state@1.4.2: - resolution: {integrity: sha512-puuzLD2mz/oTdfgd8msFbe0A42j5eNudKAAPDB0+QJRw8cO1ygjLmhLrg9RvDpf87Dkd6D4t93qdef00KKNacQ==} + /prosemirror-state@1.4.3: + resolution: {integrity: sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q==} dependencies: - prosemirror-model: 1.19.0 - prosemirror-transform: 1.7.1 - prosemirror-view: 1.31.2 + prosemirror-model: 1.19.2 + prosemirror-transform: 1.7.3 + prosemirror-view: 1.31.4 dev: false - /prosemirror-tables@1.3.2: - resolution: {integrity: sha512-/9JTeN6s58Zq66HXaxP6uf8PAmc7XXKZFPlOGVtLvxEd6xBP6WtzaJB9wBjiGUzwbdhdMEy7V62yuHqk/3VrnQ==} + /prosemirror-tables@1.3.3: + resolution: {integrity: sha512-t10hbu4sNDInic3AQYd8ouPN457zVJIhVDqSdqgsVXNoa1watYXBxqNSVrNQoGOFG4Ivreyp3hQE3KG1f9bSpw==} dependencies: - prosemirror-keymap: 1.2.1 - prosemirror-model: 1.19.0 - prosemirror-state: 1.4.2 - prosemirror-transform: 1.7.1 - prosemirror-view: 1.31.2 + prosemirror-keymap: 1.2.2 + prosemirror-model: 1.19.2 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.7.3 + prosemirror-view: 1.31.4 dev: false - /prosemirror-trailing-node@2.0.4(prosemirror-model@1.19.0)(prosemirror-state@1.4.2)(prosemirror-view@1.31.2): + /prosemirror-trailing-node@2.0.4(prosemirror-model@1.19.2)(prosemirror-state@1.4.3)(prosemirror-view@1.31.4): resolution: {integrity: sha512-0Yl9w7IdHkaCdqR+NE3FOucePME4OmiGcybnF1iasarEILP5U8+4xTnl53yafULjmwcg1SrSG65Hg7Zk2H2v3g==} peerDependencies: prosemirror-model: ^1.19.0 prosemirror-state: ^1.4.2 prosemirror-view: ^1.30.2 dependencies: - '@babel/runtime': 7.21.5 + '@babel/runtime': 7.22.5 '@remirror/core-constants': 2.0.1 '@remirror/core-helpers': 2.0.3 escape-string-regexp: 4.0.0 - prosemirror-model: 1.19.0 - prosemirror-state: 1.4.2 - prosemirror-view: 1.31.2 + prosemirror-model: 1.19.2 + prosemirror-state: 1.4.3 + prosemirror-view: 1.31.4 transitivePeerDependencies: - supports-color dev: false - /prosemirror-transform@1.7.1: - resolution: {integrity: sha512-VteoifAfpt46z0yEt6Fc73A5OID9t/y2QIeR5MgxEwTuitadEunD/V0c9jQW8ziT8pbFM54uTzRLJ/nLuQjMxg==} + /prosemirror-transform@1.7.3: + resolution: {integrity: sha512-qDapyx5lqYfxVeUWEw0xTGgeP2S8346QtE7DxkalsXlX89lpzkY6GZfulgfHyk1n4tf74sZ7CcXgcaCcGjsUtA==} dependencies: - prosemirror-model: 1.19.0 + prosemirror-model: 1.19.2 dev: false - /prosemirror-view@1.31.2: - resolution: {integrity: sha512-d/HKgUsaKzMQnr5tGRdZq+8GSixOTyYI69hoNV417VlciTvUDFSr4SWsRNUzhMRwvT6xVLI8yrVWERHjNWI6uw==} + /prosemirror-view@1.31.4: + resolution: {integrity: sha512-nJzH2LpYbonSTYFqQ1BUdEhbd1WPN/rp/K9T9qxBEYpgg3jK3BvEUCR45Ymc9IHpO0m3nBJwPm19RBxZdoBVuw==} dependencies: - prosemirror-model: 1.19.0 - prosemirror-state: 1.4.2 - prosemirror-transform: 1.7.1 + prosemirror-model: 1.19.2 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.7.3 dev: false /proto3-json-serializer@1.1.1: @@ -4267,7 +4267,7 @@ packages: '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 '@types/long': 4.0.2 - '@types/node': 20.1.4 + '@types/node': 20.3.1 long: 4.0.0 dev: false @@ -4286,7 +4286,7 @@ packages: '@protobufjs/path': 1.1.2 '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 - '@types/node': 20.1.4 + '@types/node': 20.3.1 long: 5.2.3 dev: false @@ -4360,7 +4360,7 @@ packages: resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==} hasBin: true dependencies: - is-core-module: 2.12.0 + is-core-module: 2.12.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: true @@ -4399,16 +4399,16 @@ packages: dependencies: glob: 7.2.3 - /rollup@3.21.7: - resolution: {integrity: sha512-KXPaEuR8FfUoK2uHwNjxTmJ18ApyvD6zJpYv9FOJSqLStmt6xOY84l1IjK2dSolQmoXknrhEFRaPRgOPdqCT5w==} + /rollup@3.25.1: + resolution: {integrity: sha512-tywOR+rwIt5m2ZAWSe5AIJcTat8vGlnPFAv15ycCrw33t6iFsXZ6mzHVFh2psSjxQPmI+xgzMZZizUAukBI4aQ==} engines: {node: '>=14.18.0', npm: '>=8.0.0'} hasBin: true optionalDependencies: fsevents: 2.3.2 dev: true - /rope-sequence@1.3.3: - resolution: {integrity: sha512-85aZYCxweiD5J8yTEbw+E6A27zSnLPNDL0WfPdw3YYodq7WjnTKo0q4dtyQ2gz23iPT8Q9CUyJtAaUNcTxRf5Q==} + /rope-sequence@1.3.4: + resolution: {integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==} dev: false /run-parallel@1.2.0: @@ -4574,11 +4574,11 @@ packages: acorn: 8.8.2 dev: true - /stripe@12.8.0: - resolution: {integrity: sha512-LVn981F20uR/0osbGq5n6j49LBh2W3gLoO96d8GPcUX0UYWzIOYXCG3aImIxNuiUPlgtziTHs+e33On2JgCScg==} + /stripe@12.9.0: + resolution: {integrity: sha512-stYtrWetRYUsEbsUVyJaPG9Sppt0ds2szBqXsuDG6KZPPuUmCccbpceLrhoOBwNl1RziEfNB7oG9wg1n2eW+EQ==} engines: {node: '>=12.*'} dependencies: - '@types/node': 20.1.4 + '@types/node': 20.3.1 qs: 6.11.2 dev: false @@ -4618,7 +4618,7 @@ packages: engines: {node: '>= 0.4'} dev: true - /svelte-check@3.4.3(@babel/core@7.21.8)(postcss@8.4.24)(svelte@3.59.1): + /svelte-check@3.4.3(@babel/core@7.22.5)(postcss@8.4.24)(svelte@3.59.1): resolution: {integrity: sha512-O07soQFY3X0VDt+bcGc6D5naz0cLtjwnmNP9JsEBPVyMemFEqUhL2OdLqvkl5H/u8Jwm50EiAU4BPRn5iin/kg==} hasBin: true peerDependencies: @@ -4631,7 +4631,7 @@ packages: picocolors: 1.0.0 sade: 1.8.1 svelte: 3.59.1 - svelte-preprocess: 5.0.3(@babel/core@7.21.8)(postcss@8.4.24)(svelte@3.59.1)(typescript@5.1.3) + svelte-preprocess: 5.0.4(@babel/core@7.22.5)(postcss@8.4.24)(svelte@3.59.1)(typescript@5.1.3) typescript: 5.1.3 transitivePeerDependencies: - '@babel/core' @@ -4660,17 +4660,17 @@ packages: svelte: 3.59.1 dev: true - /svelte-hmr@0.15.1(svelte@3.59.1): - resolution: {integrity: sha512-BiKB4RZ8YSwRKCNVdNxK/GfY+r4Kjgp9jCLEy0DuqAKfmQtpL38cQK3afdpjw4sqSs4PLi3jIPJIFp259NkZtA==} + /svelte-hmr@0.15.2(svelte@3.59.1): + resolution: {integrity: sha512-q/bAruCvFLwvNbeE1x3n37TYFb3mTBJ6TrCq6p2CoFbSTNhDE9oAtEfpy+wmc9So8AG0Tja+X0/mJzX9tSfvIg==} engines: {node: ^12.20 || ^14.13.1 || >= 16} peerDependencies: - svelte: '>=3.19.0' + svelte: ^3.19.0 || ^4.0.0-next.0 dependencies: svelte: 3.59.1 dev: true - /svelte-preprocess@5.0.3(@babel/core@7.21.8)(postcss@8.4.24)(svelte@3.59.1)(typescript@5.1.3): - resolution: {integrity: sha512-GrHF1rusdJVbOZOwgPWtpqmaexkydznKzy5qIC2FabgpFyKN57bjMUUUqPRfbBXK5igiEWn1uO/DXsa2vJ5VHA==} + /svelte-preprocess@5.0.4(@babel/core@7.22.5)(postcss@8.4.24)(svelte@3.59.1)(typescript@5.1.3): + resolution: {integrity: sha512-ABia2QegosxOGsVlsSBJvoWeXy1wUKSfF7SWJdTjLAbx/Y3SrVevvvbFNQqrSJw89+lNSsM58SipmZJ5SRi5iw==} engines: {node: '>= 14.10.0'} requiresBuild: true peerDependencies: @@ -4683,7 +4683,7 @@ packages: sass: ^1.26.8 stylus: ^0.55.0 sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 - svelte: ^3.23.0 + svelte: ^3.23.0 || ^4.0.0-next.0 || ^4.0.0 typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0' peerDependenciesMeta: '@babel/core': @@ -4707,7 +4707,7 @@ packages: typescript: optional: true dependencies: - '@babel/core': 7.21.8 + '@babel/core': 7.22.5 '@types/pug': 2.0.6 detect-indent: 6.1.0 magic-string: 0.27.0 @@ -4817,8 +4817,8 @@ packages: engines: {node: '>=14.0.0'} dev: true - /tinyspy@2.1.0: - resolution: {integrity: sha512-7eORpyqImoOvkQJCSkL0d0mB4NHHIFAy4b1u8PHdDa7SjGS2njzl6/lyGoZLm+eyYEtlUmFGE0rFj66SWxZgQQ==} + /tinyspy@2.1.1: + resolution: {integrity: sha512-XPJL2uSzcOyBMky6OFrusqWlzfFrXtE0hPuMgW8A2HmaqrPo4ZQHRN/V0QXN3FSjKxpsbRrFc5LI7KOwBsT1/w==} engines: {node: '>=14.0.0'} dev: true @@ -4930,13 +4930,13 @@ packages: busboy: 1.6.0 dev: true - /update-browserslist-db@1.0.11(browserslist@4.21.5): + /update-browserslist-db@1.0.11(browserslist@4.21.9): resolution: {integrity: sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: - browserslist: 4.21.5 + browserslist: 4.21.9 escalade: 3.1.1 picocolors: 1.0.0 @@ -4960,17 +4960,17 @@ packages: hasBin: true dev: false - /vite-node@0.31.4(@types/node@20.1.4): - resolution: {integrity: sha512-uzL377GjJtTbuc5KQxVbDu2xfU/x0wVjUtXQR2ihS21q/NK6ROr4oG0rsSkBBddZUVCwzfx22in76/0ZZHXgkQ==} + /vite-node@0.32.0(@types/node@20.3.1): + resolution: {integrity: sha512-220P/y8YacYAU+daOAqiGEFXx2A8AwjadDzQqos6wSukjvvTWNqleJSwoUn0ckyNdjHIKoxn93Nh1vWBqEKr3Q==} engines: {node: '>=v14.18.0'} hasBin: true dependencies: cac: 6.7.14 debug: 4.3.4 - mlly: 1.2.1 - pathe: 1.1.0 + mlly: 1.3.0 + pathe: 1.1.1 picocolors: 1.0.0 - vite: 4.3.9(@types/node@20.1.4) + vite: 4.3.9(@types/node@20.3.1) transitivePeerDependencies: - '@types/node' - less @@ -4981,7 +4981,7 @@ packages: - terser dev: true - /vite@4.3.9(@types/node@20.1.4): + /vite@4.3.9(@types/node@20.3.1): resolution: {integrity: sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true @@ -5006,10 +5006,10 @@ packages: terser: optional: true dependencies: - '@types/node': 20.1.4 + '@types/node': 20.3.1 esbuild: 0.17.19 postcss: 8.4.24 - rollup: 3.21.7 + rollup: 3.25.1 optionalDependencies: fsevents: 2.3.2 dev: true @@ -5022,11 +5022,11 @@ packages: vite: optional: true dependencies: - vite: 4.3.9(@types/node@20.1.4) + vite: 4.3.9(@types/node@20.3.1) dev: true - /vitest@0.31.4: - resolution: {integrity: sha512-GoV0VQPmWrUFOZSg3RpQAPN+LPmHg2/gxlMNJlyxJihkz6qReHDV6b0pPDcqFLNEPya4tWJ1pgwUNP9MLmUfvQ==} + /vitest@0.32.0: + resolution: {integrity: sha512-SW83o629gCqnV3BqBnTxhB10DAwzwEx3z+rqYZESehUB+eWsJxwcBQx7CKy0otuGMJTYh7qCVuUX23HkftGl/Q==} engines: {node: '>=v14.18.0'} hasBin: true peerDependencies: @@ -5058,12 +5058,12 @@ packages: dependencies: '@types/chai': 4.3.5 '@types/chai-subset': 1.3.3 - '@types/node': 20.1.4 - '@vitest/expect': 0.31.4 - '@vitest/runner': 0.31.4 - '@vitest/snapshot': 0.31.4 - '@vitest/spy': 0.31.4 - '@vitest/utils': 0.31.4 + '@types/node': 20.3.1 + '@vitest/expect': 0.32.0 + '@vitest/runner': 0.32.0 + '@vitest/snapshot': 0.32.0 + '@vitest/spy': 0.32.0 + '@vitest/utils': 0.32.0 acorn: 8.8.2 acorn-walk: 8.2.0 cac: 6.7.14 @@ -5072,14 +5072,14 @@ packages: debug: 4.3.4 local-pkg: 0.4.3 magic-string: 0.30.0 - pathe: 1.1.0 + pathe: 1.1.1 picocolors: 1.0.0 std-env: 3.3.3 strip-literal: 1.0.1 tinybench: 2.5.0 tinypool: 0.5.0 - vite: 4.3.9(@types/node@20.1.4) - vite-node: 0.31.4(@types/node@20.1.4) + vite: 4.3.9(@types/node@20.3.1) + vite-node: 0.32.0(@types/node@20.3.1) why-is-node-running: 2.2.2 transitivePeerDependencies: - less @@ -5090,8 +5090,8 @@ packages: - terser dev: true - /w3c-keyname@2.2.6: - resolution: {integrity: sha512-f+fciywl1SJEniZHD6H+kUO8gOnwIr7f4ijKA6+ZvJFjeGi1r4PDLl53Ayud9O/rk64RqgoQine0feoeOU0kXg==} + /w3c-keyname@2.2.8: + resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} dev: false /webidl-conversions@3.0.1: @@ -5181,8 +5181,8 @@ packages: engines: {node: '>= 6'} dev: true - /yaml@2.2.2: - resolution: {integrity: sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==} + /yaml@2.3.1: + resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==} engines: {node: '>= 14'} dev: true diff --git a/client/src/hooks.server.ts b/client/src/hooks.server.ts index 92d1bc86..a5fa6ab6 100644 --- a/client/src/hooks.server.ts +++ b/client/src/hooks.server.ts @@ -102,7 +102,7 @@ export const handle: Handle = async ({ event, resolve }) => { } } } - console.debug(`Authorization: ${performance.now() - now}ms`); + console.debug(`Authorization: ${(performance.now() - now).toFixed(4)}ms`); const isMain = event.url.pathname === "/"; if (isMain) { diff --git a/client/src/lib/proto/main.proto b/client/src/lib/proto/main.proto index 267f5e60..942bf056 100644 --- a/client/src/lib/proto/main.proto +++ b/client/src/lib/proto/main.proto @@ -20,13 +20,13 @@ message PaymentId { } message TargetId { - string target_id = 1; + bytes target_id = 1; FileType type = 2; } message FileId { - string file_id = 1; - string target_id = 2; + bytes file_id = 1; + bytes target_id = 2; } message AuthRequest { diff --git a/client/src/lib/proto/notes.ts b/client/src/lib/proto/notes.ts index f94c3b0b..0aafd2a9 100644 --- a/client/src/lib/proto/notes.ts +++ b/client/src/lib/proto/notes.ts @@ -1,11 +1,5 @@ -import type * as grpc from '@grpc/grpc-js'; import type { MessageTypeDefinition } from '@grpc/proto-loader'; - -type SubtypeConstructor any, Subtype> = { - new(...args: ConstructorParameters): Subtype; -}; - export interface ProtoGrpcType { proto: { Note: MessageTypeDefinition diff --git a/client/src/lib/proto/posts.proto b/client/src/lib/proto/posts.proto deleted file mode 100644 index 08e7ba8c..00000000 --- a/client/src/lib/proto/posts.proto +++ /dev/null @@ -1,26 +0,0 @@ -syntax = "proto3"; - -package proto; - -option go_package = "rusve/proto"; - -import "users.proto"; - -message PostId { - string post_id = 1; - string user_id = 2; -} - -message Post { - string id = 1; - string created = 2; - string updated = 3; - optional string deleted = 4; - - string user_id = 5; - string title = 6; - string content = 7; - - User user = 8; -} - diff --git a/client/src/lib/proto/posts.ts b/client/src/lib/proto/posts.ts deleted file mode 100644 index ab9031aa..00000000 --- a/client/src/lib/proto/posts.ts +++ /dev/null @@ -1,18 +0,0 @@ -import type * as grpc from '@grpc/grpc-js'; -import type { EnumTypeDefinition, MessageTypeDefinition } from '@grpc/proto-loader'; - - -type SubtypeConstructor any, Subtype> = { - new(...args: ConstructorParameters): Subtype; -}; - -export interface ProtoGrpcType { - proto: { - AuthRequest: MessageTypeDefinition - Post: MessageTypeDefinition - PostId: MessageTypeDefinition - User: MessageTypeDefinition - UserRole: EnumTypeDefinition - } -} - diff --git a/client/src/lib/proto/proto/Empty.ts b/client/src/lib/proto/proto/Empty.ts index 00bff7fa..3cd26225 100644 --- a/client/src/lib/proto/proto/Empty.ts +++ b/client/src/lib/proto/proto/Empty.ts @@ -1,8 +1,5 @@ // Original file: ../proto/main.proto +export interface Empty {} -export interface Empty { -} - -export interface Empty__Output { -} +export interface Empty__Output {} diff --git a/client/src/lib/proto/proto/File.ts b/client/src/lib/proto/proto/File.ts index e92eaafc..6a2bab19 100644 --- a/client/src/lib/proto/proto/File.ts +++ b/client/src/lib/proto/proto/File.ts @@ -3,11 +3,11 @@ import type { FileType as _proto_FileType, FileType__Output as _proto_FileType__Output } from '../proto/FileType'; export interface File { - 'id'?: (string); + 'id'?: (Buffer | Uint8Array | string); 'created'?: (string); 'updated'?: (string); 'deleted'?: (string); - 'targetId'?: (string); + 'targetId'?: (Buffer | Uint8Array | string); 'name'?: (string); 'type'?: (_proto_FileType); 'buffer'?: (Buffer | Uint8Array | string); @@ -16,11 +16,11 @@ export interface File { } export interface File__Output { - 'id': (string); + 'id': (Buffer); 'created': (string); 'updated': (string); 'deleted'?: (string); - 'targetId': (string); + 'targetId': (Buffer); 'name': (string); 'type': (_proto_FileType__Output); 'buffer': (Buffer); diff --git a/client/src/lib/proto/proto/FileId.ts b/client/src/lib/proto/proto/FileId.ts index 3332a551..e7cf84af 100644 --- a/client/src/lib/proto/proto/FileId.ts +++ b/client/src/lib/proto/proto/FileId.ts @@ -2,11 +2,11 @@ export interface FileId { - 'fileId'?: (string); - 'targetId'?: (string); + 'fileId'?: (Buffer | Uint8Array | string); + 'targetId'?: (Buffer | Uint8Array | string); } export interface FileId__Output { - 'fileId': (string); - 'targetId': (string); + 'fileId': (Buffer); + 'targetId': (Buffer); } diff --git a/client/src/lib/proto/proto/NotesService.ts b/client/src/lib/proto/proto/NotesService.ts index c846621f..c1d22058 100644 --- a/client/src/lib/proto/proto/NotesService.ts +++ b/client/src/lib/proto/proto/NotesService.ts @@ -1,49 +1,168 @@ // Original file: ../proto/main.proto -import type * as grpc from '@grpc/grpc-js' -import type { MethodDefinition } from '@grpc/proto-loader' -import type { Empty as _proto_Empty, Empty__Output as _proto_Empty__Output } from '../proto/Empty'; -import type { Note as _proto_Note, Note__Output as _proto_Note__Output } from '../proto/Note'; -import type { NoteId as _proto_NoteId, NoteId__Output as _proto_NoteId__Output } from '../proto/NoteId'; -import type { UserId as _proto_UserId, UserId__Output as _proto_UserId__Output } from '../proto/UserId'; +import type * as grpc from "@grpc/grpc-js"; +import type { MethodDefinition } from "@grpc/proto-loader"; +import type { + Empty as _proto_Empty, + Empty__Output as _proto_Empty__Output, +} from "../proto/Empty"; +import type { + Note as _proto_Note, + Note__Output as _proto_Note__Output, +} from "../proto/Note"; +import type { + NoteId as _proto_NoteId, + NoteId__Output as _proto_NoteId__Output, +} from "../proto/NoteId"; +import type { + UserId as _proto_UserId, + UserId__Output as _proto_UserId__Output, +} from "../proto/UserId"; export interface NotesServiceClient extends grpc.Client { - CreateNote(argument: _proto_Note, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - CreateNote(argument: _proto_Note, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - CreateNote(argument: _proto_Note, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - CreateNote(argument: _proto_Note, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - createNote(argument: _proto_Note, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - createNote(argument: _proto_Note, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - createNote(argument: _proto_Note, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - createNote(argument: _proto_Note, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - - DeleteNote(argument: _proto_NoteId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - DeleteNote(argument: _proto_NoteId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - DeleteNote(argument: _proto_NoteId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - DeleteNote(argument: _proto_NoteId, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - deleteNote(argument: _proto_NoteId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - deleteNote(argument: _proto_NoteId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - deleteNote(argument: _proto_NoteId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - deleteNote(argument: _proto_NoteId, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - - GetNotes(argument: _proto_UserId, metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_Note__Output>; - GetNotes(argument: _proto_UserId, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_Note__Output>; - getNotes(argument: _proto_UserId, metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_Note__Output>; - getNotes(argument: _proto_UserId, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_Note__Output>; - + CreateNote( + ...args: + | [ + argument: _proto_Note, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_Note, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_Note, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_Note, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + ): grpc.ClientUnaryCall; + createNote( + ...args: + | [ + argument: _proto_Note, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_Note, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_Note, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_Note, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + ): grpc.ClientUnaryCall; + + DeleteNote( + ...args: + | [ + argument: _proto_NoteId, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_NoteId, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_NoteId, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_NoteId, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + ): grpc.ClientUnaryCall; + deleteNote( + ...args: + | [ + argument: _proto_NoteId, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_NoteId, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_NoteId, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_NoteId, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + ): grpc.ClientUnaryCall; + + GetNotes( + argument: _proto_UserId, + metadata: grpc.Metadata, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_Note__Output>; + GetNotes( + argument: _proto_UserId, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_Note__Output>; + getNotes( + argument: _proto_UserId, + metadata: grpc.Metadata, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_Note__Output>; + getNotes( + argument: _proto_UserId, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_Note__Output>; } -export interface NotesServiceHandlers extends grpc.UntypedServiceImplementation { - CreateNote: grpc.handleUnaryCall<_proto_Note__Output, _proto_Empty>; - - DeleteNote: grpc.handleUnaryCall<_proto_NoteId__Output, _proto_Empty>; - - GetNotes: grpc.handleServerStreamingCall<_proto_UserId__Output, _proto_Note>; - +export interface NotesServiceHandlers + extends grpc.UntypedServiceImplementation { + CreateNote: grpc.handleUnaryCall<_proto_Note__Output, _proto_Empty>; + + DeleteNote: grpc.handleUnaryCall<_proto_NoteId__Output, _proto_Empty>; + + GetNotes: grpc.handleServerStreamingCall< + _proto_UserId__Output, + _proto_Note + >; } export interface NotesServiceDefinition extends grpc.ServiceDefinition { - CreateNote: MethodDefinition<_proto_Note, _proto_Empty, _proto_Note__Output, _proto_Empty__Output> - DeleteNote: MethodDefinition<_proto_NoteId, _proto_Empty, _proto_NoteId__Output, _proto_Empty__Output> - GetNotes: MethodDefinition<_proto_UserId, _proto_Note, _proto_UserId__Output, _proto_Note__Output> + CreateNote: MethodDefinition< + _proto_Note, + _proto_Empty, + _proto_Note__Output, + _proto_Empty__Output + >; + DeleteNote: MethodDefinition< + _proto_NoteId, + _proto_Empty, + _proto_NoteId__Output, + _proto_Empty__Output + >; + GetNotes: MethodDefinition< + _proto_UserId, + _proto_Note, + _proto_UserId__Output, + _proto_Note__Output + >; } diff --git a/client/src/lib/proto/proto/Post.ts b/client/src/lib/proto/proto/Post.ts deleted file mode 100644 index e93e28f9..00000000 --- a/client/src/lib/proto/proto/Post.ts +++ /dev/null @@ -1,27 +0,0 @@ -// Original file: ../proto/posts.proto - -import type { User as _proto_User, User__Output as _proto_User__Output } from '../proto/User'; - -export interface Post { - 'id'?: (string); - 'created'?: (string); - 'updated'?: (string); - 'deleted'?: (string); - 'userId'?: (string); - 'title'?: (string); - 'content'?: (string); - 'user'?: (_proto_User | null); - '_deleted'?: "deleted"; -} - -export interface Post__Output { - 'id': (string); - 'created': (string); - 'updated': (string); - 'deleted'?: (string); - 'userId': (string); - 'title': (string); - 'content': (string); - 'user': (_proto_User__Output | null); - '_deleted': "deleted"; -} diff --git a/client/src/lib/proto/proto/PostId.ts b/client/src/lib/proto/proto/PostId.ts deleted file mode 100644 index f848fe59..00000000 --- a/client/src/lib/proto/proto/PostId.ts +++ /dev/null @@ -1,12 +0,0 @@ -// Original file: ../proto/posts.proto - - -export interface PostId { - 'postId'?: (string); - 'userId'?: (string); -} - -export interface PostId__Output { - 'postId': (string); - 'userId': (string); -} diff --git a/client/src/lib/proto/proto/PostsService.ts b/client/src/lib/proto/proto/PostsService.ts deleted file mode 100644 index e6fbf0ab..00000000 --- a/client/src/lib/proto/proto/PostsService.ts +++ /dev/null @@ -1,48 +0,0 @@ -// Original file: ../proto/main.proto - -import type * as grpc from '@grpc/grpc-js' -import type { MethodDefinition } from '@grpc/proto-loader' -import type { Empty as _proto_Empty, Empty__Output as _proto_Empty__Output } from '../proto/Empty'; -import type { Post as _proto_Post, Post__Output as _proto_Post__Output } from '../proto/Post'; -import type { PostId as _proto_PostId, PostId__Output as _proto_PostId__Output } from '../proto/PostId'; - -export interface PostsServiceClient extends grpc.Client { - CreatePost(argument: _proto_Post, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - CreatePost(argument: _proto_Post, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - CreatePost(argument: _proto_Post, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - CreatePost(argument: _proto_Post, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - createPost(argument: _proto_Post, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - createPost(argument: _proto_Post, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - createPost(argument: _proto_Post, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - createPost(argument: _proto_Post, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - - DeletePost(argument: _proto_PostId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - DeletePost(argument: _proto_PostId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - DeletePost(argument: _proto_PostId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - DeletePost(argument: _proto_PostId, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - deletePost(argument: _proto_PostId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - deletePost(argument: _proto_PostId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - deletePost(argument: _proto_PostId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - deletePost(argument: _proto_PostId, callback: grpc.requestCallback<_proto_Post__Output>): grpc.ClientUnaryCall; - - GetPosts(argument: _proto_Empty, metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_Post__Output>; - GetPosts(argument: _proto_Empty, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_Post__Output>; - getPosts(argument: _proto_Empty, metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_Post__Output>; - getPosts(argument: _proto_Empty, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_Post__Output>; - -} - -export interface PostsServiceHandlers extends grpc.UntypedServiceImplementation { - CreatePost: grpc.handleUnaryCall<_proto_Post__Output, _proto_Post>; - - DeletePost: grpc.handleUnaryCall<_proto_PostId__Output, _proto_Post>; - - GetPosts: grpc.handleServerStreamingCall<_proto_Empty__Output, _proto_Post>; - -} - -export interface PostsServiceDefinition extends grpc.ServiceDefinition { - CreatePost: MethodDefinition<_proto_Post, _proto_Post, _proto_Post__Output, _proto_Post__Output> - DeletePost: MethodDefinition<_proto_PostId, _proto_Post, _proto_PostId__Output, _proto_Post__Output> - GetPosts: MethodDefinition<_proto_Empty, _proto_Post, _proto_Empty__Output, _proto_Post__Output> -} diff --git a/client/src/lib/proto/proto/TargetId.ts b/client/src/lib/proto/proto/TargetId.ts index 59cd5590..6b1412bf 100644 --- a/client/src/lib/proto/proto/TargetId.ts +++ b/client/src/lib/proto/proto/TargetId.ts @@ -3,11 +3,11 @@ import type { FileType as _proto_FileType, FileType__Output as _proto_FileType__Output } from '../proto/FileType'; export interface TargetId { - 'targetId'?: (string); + 'targetId'?: (Buffer | Uint8Array | string); 'type'?: (_proto_FileType); } export interface TargetId__Output { - 'targetId': (string); + 'targetId': (Buffer); 'type': (_proto_FileType__Output); } diff --git a/client/src/lib/proto/proto/User.ts b/client/src/lib/proto/proto/User.ts index 51bf2505..a42d94b8 100644 --- a/client/src/lib/proto/proto/User.ts +++ b/client/src/lib/proto/proto/User.ts @@ -11,7 +11,7 @@ export interface User { 'role'?: (_proto_UserRole); 'sub'?: (string); 'name'?: (string); - 'avatarId'?: (string); + 'avatarId'?: (Buffer | Uint8Array | string); 'paymentId'?: (string); '_deleted'?: "deleted"; '_avatarId'?: "avatarId"; @@ -27,7 +27,7 @@ export interface User__Output { 'role': (_proto_UserRole__Output); 'sub': (string); 'name': (string); - 'avatarId'?: (string); + 'avatarId'?: (Buffer); 'paymentId'?: (string); '_deleted': "deleted"; '_avatarId': "avatarId"; diff --git a/client/src/lib/proto/proto/UsersService.ts b/client/src/lib/proto/proto/UsersService.ts index caf563b5..4f6016e0 100644 --- a/client/src/lib/proto/proto/UsersService.ts +++ b/client/src/lib/proto/proto/UsersService.ts @@ -1,122 +1,496 @@ // Original file: ../proto/main.proto -import type * as grpc from '@grpc/grpc-js' -import type { MethodDefinition } from '@grpc/proto-loader' -import type { AuthRequest as _proto_AuthRequest, AuthRequest__Output as _proto_AuthRequest__Output } from '../proto/AuthRequest'; -import type { Empty as _proto_Empty, Empty__Output as _proto_Empty__Output } from '../proto/Empty'; -import type { File as _proto_File, File__Output as _proto_File__Output } from '../proto/File'; -import type { FileId as _proto_FileId, FileId__Output as _proto_FileId__Output } from '../proto/FileId'; -import type { PaymentId as _proto_PaymentId, PaymentId__Output as _proto_PaymentId__Output } from '../proto/PaymentId'; -import type { TargetId as _proto_TargetId, TargetId__Output as _proto_TargetId__Output } from '../proto/TargetId'; -import type { User as _proto_User, User__Output as _proto_User__Output } from '../proto/User'; -import type { UserId as _proto_UserId, UserId__Output as _proto_UserId__Output } from '../proto/UserId'; -import type { UserIds as _proto_UserIds, UserIds__Output as _proto_UserIds__Output } from '../proto/UserIds'; +import type * as grpc from "@grpc/grpc-js"; +import type { MethodDefinition } from "@grpc/proto-loader"; +import type { + AuthRequest as _proto_AuthRequest, + AuthRequest__Output as _proto_AuthRequest__Output, +} from "../proto/AuthRequest"; +import type { + Empty as _proto_Empty, + Empty__Output as _proto_Empty__Output, +} from "../proto/Empty"; +import type { + File as _proto_File, + File__Output as _proto_File__Output, +} from "../proto/File"; +import type { + FileId as _proto_FileId, + FileId__Output as _proto_FileId__Output, +} from "../proto/FileId"; +import type { + PaymentId as _proto_PaymentId, + PaymentId__Output as _proto_PaymentId__Output, +} from "../proto/PaymentId"; +import type { + TargetId as _proto_TargetId, + TargetId__Output as _proto_TargetId__Output, +} from "../proto/TargetId"; +import type { + User as _proto_User, + User__Output as _proto_User__Output, +} from "../proto/User"; +import type { + UserId as _proto_UserId, + UserId__Output as _proto_UserId__Output, +} from "../proto/UserId"; +import type { + UserIds as _proto_UserIds, + UserIds__Output as _proto_UserIds__Output, +} from "../proto/UserIds"; export interface UsersServiceClient extends grpc.Client { - Auth(argument: _proto_AuthRequest, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - Auth(argument: _proto_AuthRequest, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - Auth(argument: _proto_AuthRequest, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - Auth(argument: _proto_AuthRequest, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - auth(argument: _proto_AuthRequest, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - auth(argument: _proto_AuthRequest, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - auth(argument: _proto_AuthRequest, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - auth(argument: _proto_AuthRequest, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - - CreateFile(argument: _proto_File, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - CreateFile(argument: _proto_File, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - CreateFile(argument: _proto_File, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - CreateFile(argument: _proto_File, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - createFile(argument: _proto_File, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - createFile(argument: _proto_File, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - createFile(argument: _proto_File, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - createFile(argument: _proto_File, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - - DeleteFile(argument: _proto_FileId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - DeleteFile(argument: _proto_FileId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - DeleteFile(argument: _proto_FileId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - DeleteFile(argument: _proto_FileId, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - deleteFile(argument: _proto_FileId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - deleteFile(argument: _proto_FileId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - deleteFile(argument: _proto_FileId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - deleteFile(argument: _proto_FileId, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - - GetFile(argument: _proto_FileId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - GetFile(argument: _proto_FileId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - GetFile(argument: _proto_FileId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - GetFile(argument: _proto_FileId, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - getFile(argument: _proto_FileId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - getFile(argument: _proto_FileId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - getFile(argument: _proto_FileId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - getFile(argument: _proto_FileId, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - - GetFiles(argument: _proto_TargetId, metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_File__Output>; - GetFiles(argument: _proto_TargetId, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_File__Output>; - getFiles(argument: _proto_TargetId, metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_File__Output>; - getFiles(argument: _proto_TargetId, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_File__Output>; - - GetUser(argument: _proto_UserId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - GetUser(argument: _proto_UserId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - GetUser(argument: _proto_UserId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - GetUser(argument: _proto_UserId, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - getUser(argument: _proto_UserId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - getUser(argument: _proto_UserId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - getUser(argument: _proto_UserId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - getUser(argument: _proto_UserId, callback: grpc.requestCallback<_proto_User__Output>): grpc.ClientUnaryCall; - - GetUsers(argument: _proto_UserIds, metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_User__Output>; - GetUsers(argument: _proto_UserIds, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_User__Output>; - getUsers(argument: _proto_UserIds, metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_User__Output>; - getUsers(argument: _proto_UserIds, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_User__Output>; - - UpdatePaymentId(argument: _proto_PaymentId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - UpdatePaymentId(argument: _proto_PaymentId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - UpdatePaymentId(argument: _proto_PaymentId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - UpdatePaymentId(argument: _proto_PaymentId, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - updatePaymentId(argument: _proto_PaymentId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - updatePaymentId(argument: _proto_PaymentId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - updatePaymentId(argument: _proto_PaymentId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - updatePaymentId(argument: _proto_PaymentId, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - - UpdateUser(argument: _proto_User, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - UpdateUser(argument: _proto_User, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - UpdateUser(argument: _proto_User, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - UpdateUser(argument: _proto_User, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - updateUser(argument: _proto_User, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - updateUser(argument: _proto_User, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - updateUser(argument: _proto_User, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - updateUser(argument: _proto_User, callback: grpc.requestCallback<_proto_Empty__Output>): grpc.ClientUnaryCall; - + Auth( + ...args: + | [ + argument: _proto_AuthRequest, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_AuthRequest, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_AuthRequest, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_AuthRequest, + callback: grpc.requestCallback<_proto_User__Output>, + ] + ): grpc.ClientUnaryCall; + auth( + ...args: + | [ + argument: _proto_AuthRequest, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_AuthRequest, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_AuthRequest, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_AuthRequest, + callback: grpc.requestCallback<_proto_User__Output>, + ] + ): grpc.ClientUnaryCall; + + CreateFile( + ...args: + | [ + argument: _proto_File, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_File, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_File, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_File, + callback: grpc.requestCallback<_proto_File__Output>, + ] + ): grpc.ClientUnaryCall; + createFile( + ...args: + | [ + argument: _proto_File, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_File, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_File, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_File, + callback: grpc.requestCallback<_proto_File__Output>, + ] + ): grpc.ClientUnaryCall; + + DeleteFile( + ...args: + | [ + argument: _proto_FileId, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + callback: grpc.requestCallback<_proto_File__Output>, + ] + ): grpc.ClientUnaryCall; + deleteFile( + ...args: + | [ + argument: _proto_FileId, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + callback: grpc.requestCallback<_proto_File__Output>, + ] + ): grpc.ClientUnaryCall; + + GetFile( + ...args: + | [ + argument: _proto_FileId, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + callback: grpc.requestCallback<_proto_File__Output>, + ] + ): grpc.ClientUnaryCall; + getFile( + ...args: + | [ + argument: _proto_FileId, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_File__Output>, + ] + | [ + argument: _proto_FileId, + callback: grpc.requestCallback<_proto_File__Output>, + ] + ): grpc.ClientUnaryCall; + + GetFiles( + argument: _proto_TargetId, + metadata: grpc.Metadata, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_File__Output>; + GetFiles( + argument: _proto_TargetId, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_File__Output>; + getFiles( + argument: _proto_TargetId, + metadata: grpc.Metadata, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_File__Output>; + getFiles( + argument: _proto_TargetId, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_File__Output>; + + GetUser( + ...args: + | [ + argument: _proto_UserId, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_UserId, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_UserId, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_UserId, + callback: grpc.requestCallback<_proto_User__Output>, + ] + ): grpc.ClientUnaryCall; + getUser( + ...args: + | [ + argument: _proto_UserId, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_UserId, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_UserId, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_User__Output>, + ] + | [ + argument: _proto_UserId, + callback: grpc.requestCallback<_proto_User__Output>, + ] + ): grpc.ClientUnaryCall; + + GetUsers( + argument: _proto_UserIds, + metadata: grpc.Metadata, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_User__Output>; + GetUsers( + argument: _proto_UserIds, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_User__Output>; + getUsers( + argument: _proto_UserIds, + metadata: grpc.Metadata, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_User__Output>; + getUsers( + argument: _proto_UserIds, + options?: grpc.CallOptions, + ): grpc.ClientReadableStream<_proto_User__Output>; + + UpdatePaymentId( + ...args: + | [ + argument: _proto_PaymentId, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_PaymentId, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_PaymentId, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_PaymentId, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + ): grpc.ClientUnaryCall; + updatePaymentId( + ...args: + | [ + argument: _proto_PaymentId, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_PaymentId, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_PaymentId, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_PaymentId, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + ): grpc.ClientUnaryCall; + + UpdateUser( + ...args: + | [ + argument: _proto_User, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_User, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_User, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_User, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + ): grpc.ClientUnaryCall; + updateUser( + ...args: + | [ + argument: _proto_User, + metadata: grpc.Metadata, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_User, + metadata: grpc.Metadata, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_User, + options: grpc.CallOptions, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + | [ + argument: _proto_User, + callback: grpc.requestCallback<_proto_Empty__Output>, + ] + ): grpc.ClientUnaryCall; } -export interface UsersServiceHandlers extends grpc.UntypedServiceImplementation { - Auth: grpc.handleUnaryCall<_proto_AuthRequest__Output, _proto_User>; - - CreateFile: grpc.handleUnaryCall<_proto_File__Output, _proto_File>; - - DeleteFile: grpc.handleUnaryCall<_proto_FileId__Output, _proto_File>; - - GetFile: grpc.handleUnaryCall<_proto_FileId__Output, _proto_File>; - - GetFiles: grpc.handleServerStreamingCall<_proto_TargetId__Output, _proto_File>; - - GetUser: grpc.handleUnaryCall<_proto_UserId__Output, _proto_User>; - - GetUsers: grpc.handleServerStreamingCall<_proto_UserIds__Output, _proto_User>; - - UpdatePaymentId: grpc.handleUnaryCall<_proto_PaymentId__Output, _proto_Empty>; - - UpdateUser: grpc.handleUnaryCall<_proto_User__Output, _proto_Empty>; - +export interface UsersServiceHandlers + extends grpc.UntypedServiceImplementation { + Auth: grpc.handleUnaryCall<_proto_AuthRequest__Output, _proto_User>; + + CreateFile: grpc.handleUnaryCall<_proto_File__Output, _proto_File>; + + DeleteFile: grpc.handleUnaryCall<_proto_FileId__Output, _proto_File>; + + GetFile: grpc.handleUnaryCall<_proto_FileId__Output, _proto_File>; + + GetFiles: grpc.handleServerStreamingCall< + _proto_TargetId__Output, + _proto_File + >; + + GetUser: grpc.handleUnaryCall<_proto_UserId__Output, _proto_User>; + + GetUsers: grpc.handleServerStreamingCall< + _proto_UserIds__Output, + _proto_User + >; + + UpdatePaymentId: grpc.handleUnaryCall< + _proto_PaymentId__Output, + _proto_Empty + >; + + UpdateUser: grpc.handleUnaryCall<_proto_User__Output, _proto_Empty>; } export interface UsersServiceDefinition extends grpc.ServiceDefinition { - Auth: MethodDefinition<_proto_AuthRequest, _proto_User, _proto_AuthRequest__Output, _proto_User__Output> - CreateFile: MethodDefinition<_proto_File, _proto_File, _proto_File__Output, _proto_File__Output> - DeleteFile: MethodDefinition<_proto_FileId, _proto_File, _proto_FileId__Output, _proto_File__Output> - GetFile: MethodDefinition<_proto_FileId, _proto_File, _proto_FileId__Output, _proto_File__Output> - GetFiles: MethodDefinition<_proto_TargetId, _proto_File, _proto_TargetId__Output, _proto_File__Output> - GetUser: MethodDefinition<_proto_UserId, _proto_User, _proto_UserId__Output, _proto_User__Output> - GetUsers: MethodDefinition<_proto_UserIds, _proto_User, _proto_UserIds__Output, _proto_User__Output> - UpdatePaymentId: MethodDefinition<_proto_PaymentId, _proto_Empty, _proto_PaymentId__Output, _proto_Empty__Output> - UpdateUser: MethodDefinition<_proto_User, _proto_Empty, _proto_User__Output, _proto_Empty__Output> + Auth: MethodDefinition< + _proto_AuthRequest, + _proto_User, + _proto_AuthRequest__Output, + _proto_User__Output + >; + CreateFile: MethodDefinition< + _proto_File, + _proto_File, + _proto_File__Output, + _proto_File__Output + >; + DeleteFile: MethodDefinition< + _proto_FileId, + _proto_File, + _proto_FileId__Output, + _proto_File__Output + >; + GetFile: MethodDefinition< + _proto_FileId, + _proto_File, + _proto_FileId__Output, + _proto_File__Output + >; + GetFiles: MethodDefinition< + _proto_TargetId, + _proto_File, + _proto_TargetId__Output, + _proto_File__Output + >; + GetUser: MethodDefinition< + _proto_UserId, + _proto_User, + _proto_UserId__Output, + _proto_User__Output + >; + GetUsers: MethodDefinition< + _proto_UserIds, + _proto_User, + _proto_UserIds__Output, + _proto_User__Output + >; + UpdatePaymentId: MethodDefinition< + _proto_PaymentId, + _proto_Empty, + _proto_PaymentId__Output, + _proto_Empty__Output + >; + UpdateUser: MethodDefinition< + _proto_User, + _proto_Empty, + _proto_User__Output, + _proto_Empty__Output + >; } diff --git a/client/src/lib/proto/proto/UtilsService.ts b/client/src/lib/proto/proto/UtilsService.ts deleted file mode 100644 index 34acd539..00000000 --- a/client/src/lib/proto/proto/UtilsService.ts +++ /dev/null @@ -1,60 +0,0 @@ -// Original file: ../proto/main.proto - -import type * as grpc from '@grpc/grpc-js' -import type { MethodDefinition } from '@grpc/proto-loader' -import type { File as _proto_File, File__Output as _proto_File__Output } from '../proto/File'; -import type { FileId as _proto_FileId, FileId__Output as _proto_FileId__Output } from '../proto/FileId'; -import type { TargetId as _proto_TargetId, TargetId__Output as _proto_TargetId__Output } from '../proto/TargetId'; - -export interface UtilsServiceClient extends grpc.Client { - CreateFile(argument: _proto_File, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - CreateFile(argument: _proto_File, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - CreateFile(argument: _proto_File, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - CreateFile(argument: _proto_File, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - createFile(argument: _proto_File, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - createFile(argument: _proto_File, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - createFile(argument: _proto_File, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - createFile(argument: _proto_File, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - - DeleteFile(argument: _proto_FileId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - DeleteFile(argument: _proto_FileId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - DeleteFile(argument: _proto_FileId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - DeleteFile(argument: _proto_FileId, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - deleteFile(argument: _proto_FileId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - deleteFile(argument: _proto_FileId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - deleteFile(argument: _proto_FileId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - deleteFile(argument: _proto_FileId, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - - GetFile(argument: _proto_FileId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - GetFile(argument: _proto_FileId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - GetFile(argument: _proto_FileId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - GetFile(argument: _proto_FileId, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - getFile(argument: _proto_FileId, metadata: grpc.Metadata, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - getFile(argument: _proto_FileId, metadata: grpc.Metadata, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - getFile(argument: _proto_FileId, options: grpc.CallOptions, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - getFile(argument: _proto_FileId, callback: grpc.requestCallback<_proto_File__Output>): grpc.ClientUnaryCall; - - GetFiles(argument: _proto_TargetId, metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_File__Output>; - GetFiles(argument: _proto_TargetId, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_File__Output>; - getFiles(argument: _proto_TargetId, metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_File__Output>; - getFiles(argument: _proto_TargetId, options?: grpc.CallOptions): grpc.ClientReadableStream<_proto_File__Output>; - -} - -export interface UtilsServiceHandlers extends grpc.UntypedServiceImplementation { - CreateFile: grpc.handleUnaryCall<_proto_File__Output, _proto_File>; - - DeleteFile: grpc.handleUnaryCall<_proto_FileId__Output, _proto_File>; - - GetFile: grpc.handleUnaryCall<_proto_FileId__Output, _proto_File>; - - GetFiles: grpc.handleServerStreamingCall<_proto_TargetId__Output, _proto_File>; - -} - -export interface UtilsServiceDefinition extends grpc.ServiceDefinition { - CreateFile: MethodDefinition<_proto_File, _proto_File, _proto_File__Output, _proto_File__Output> - DeleteFile: MethodDefinition<_proto_FileId, _proto_File, _proto_FileId__Output, _proto_File__Output> - GetFile: MethodDefinition<_proto_FileId, _proto_File, _proto_FileId__Output, _proto_File__Output> - GetFiles: MethodDefinition<_proto_TargetId, _proto_File, _proto_TargetId__Output, _proto_File__Output> -} diff --git a/client/src/lib/proto/users.proto b/client/src/lib/proto/users.proto index 20f8b480..becd8eb0 100644 --- a/client/src/lib/proto/users.proto +++ b/client/src/lib/proto/users.proto @@ -21,7 +21,7 @@ message User { string sub = 7; string name = 8; - optional string avatar_id = 9; + optional bytes avatar_id = 9; optional string payment_id = 10; } @@ -31,12 +31,12 @@ enum FileType { } message File { - string id = 1; + bytes id = 1; string created = 2; string updated = 3; optional string deleted = 4; - string target_id = 5; + bytes target_id = 5; string name = 6; FileType type = 7; diff --git a/client/src/lib/proto/users.ts b/client/src/lib/proto/users.ts index 92f6df71..e29f5555 100644 --- a/client/src/lib/proto/users.ts +++ b/client/src/lib/proto/users.ts @@ -1,11 +1,5 @@ -import type * as grpc from '@grpc/grpc-js'; import type { EnumTypeDefinition, MessageTypeDefinition } from '@grpc/proto-loader'; - -type SubtypeConstructor any, Subtype> = { - new(...args: ConstructorParameters): Subtype; -}; - export interface ProtoGrpcType { proto: { File: MessageTypeDefinition diff --git a/client/src/lib/proto/utils.proto b/client/src/lib/proto/utils.proto deleted file mode 100644 index 8fc927ad..00000000 --- a/client/src/lib/proto/utils.proto +++ /dev/null @@ -1,34 +0,0 @@ -syntax = "proto3"; - -package proto; - -option go_package = "rusve/proto"; - -enum FileType { - DOCUMENT = 0; - AVATAR = 1; -} - -message TargetId { - string target_id = 1; - FileType type = 2; -} - -message FileId { - string file_id = 1; - string target_id = 2; -} - -message File { - string id = 1; - string created = 2; - string updated = 3; - optional string deleted = 4; - - string target_id = 5; - string name = 6; - FileType type = 7; - - bytes buffer = 8; - optional string url = 9; -} diff --git a/client/src/lib/proto/utils.ts b/client/src/lib/proto/utils.ts deleted file mode 100644 index dcce6698..00000000 --- a/client/src/lib/proto/utils.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type * as grpc from '@grpc/grpc-js'; -import type { EnumTypeDefinition, MessageTypeDefinition } from '@grpc/proto-loader'; - - -type SubtypeConstructor any, Subtype> = { - new(...args: ConstructorParameters): Subtype; -}; - -export interface ProtoGrpcType { - proto: { - File: MessageTypeDefinition - FileId: MessageTypeDefinition - FileType: EnumTypeDefinition - TargetId: MessageTypeDefinition - } -} - diff --git a/client/src/lib/server/safe.ts b/client/src/lib/server/safe.ts new file mode 100644 index 00000000..51ca15d0 --- /dev/null +++ b/client/src/lib/server/safe.ts @@ -0,0 +1,28 @@ +export type SafeReturn = + | { + data: T; + success: true; + } + | { + success: false; + error: string; + }; + +export async function safe( + promise: Promise | T, + err?: string, +): Promise> { + try { + const data = await promise; + return { data, success: true }; + } catch (e) { + console.error(e); + if (err !== undefined) { + return { error: err, success: false }; + } + if (e instanceof Error) { + return { error: e.message, success: false }; + } + return { error: "Unknown error", success: false }; + } +} diff --git a/client/src/lib/toast/toast.ts b/client/src/lib/toast/toast.ts index a28cba0f..f733510f 100644 --- a/client/src/lib/toast/toast.ts +++ b/client/src/lib/toast/toast.ts @@ -6,6 +6,11 @@ export type Toast = { }; export const toastStore = writable([]); -export function toast(t: Toast) { +export function showToast(t: Toast) { toastStore.update((toasts) => [...toasts, t]); } + +export const toast = { + success: (message: string) => showToast({ message, type: "success" }), + error: (message: string) => showToast({ message, type: "error" }), +}; diff --git a/client/src/routes/(app)/billing/+page.server.ts b/client/src/routes/(app)/billing/+page.server.ts index 6d6eb91c..1ac68d7f 100644 --- a/client/src/routes/(app)/billing/+page.server.ts +++ b/client/src/routes/(app)/billing/+page.server.ts @@ -11,6 +11,7 @@ export const load = (async ({ locals }) => { const isSub = await checkSubscription(locals.paymentId); return { isSubscribed: isSub, + paymentId: locals.paymentId, }; }) satisfies PageServerLoad; diff --git a/client/src/routes/(app)/billing/+page.svelte b/client/src/routes/(app)/billing/+page.svelte index 78164bb5..0f4dfdf3 100644 --- a/client/src/routes/(app)/billing/+page.svelte +++ b/client/src/routes/(app)/billing/+page.svelte @@ -8,10 +8,7 @@ export let form: ActionData; $: if (form?.error) { - toast({ - message: form.error, - type: "error", - }); + toast.error(form.error); } const isPro = data.isSubscribed; @@ -33,11 +30,7 @@ {#if !isPro}
- +