diff --git a/CHANGELOG.md b/CHANGELOG.md index 65e3851f2..d507913d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) ## [Unreleased] +## [0.10.0] - 2022-09-12 +### Change +- (internal) Use Composition API in the components +- Update dependencies +- Enable streaming-upload as possible by default if available because Chrome Stable 105 can streaming-upload when using separate Chrome profiles + ## [0.9.0] - 2022-08-30 ### Change - Force disable streaming-upload because Chrome Stable 105.0.5195.52 causes an error "Failed to load resource: net::ERR_FAILED", which will be enabled again after Chrome fixed @@ -394,7 +400,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) ### Added - First release -[Unreleased]: https://github.com/nwtgck/piping-ui-web/compare/v0.9.0...HEAD +[Unreleased]: https://github.com/nwtgck/piping-ui-web/compare/v0.10.0...HEAD +[0.10.0]: https://github.com/nwtgck/piping-ui-web/compare/v0.9.0...v0.10.0 [0.9.0]: https://github.com/nwtgck/piping-ui-web/compare/v0.8.0...v0.9.0 [0.8.0]: https://github.com/nwtgck/piping-ui-web/compare/v0.7.3...v0.8.0 [0.7.3]: https://github.com/nwtgck/piping-ui-web/compare/v0.7.2...v0.7.3 diff --git a/package-lock.json b/package-lock.json index 76782a8f8..95ab382d6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "piping-ui", - "version": "0.9.0", + "version": "0.10.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "piping-ui", - "version": "0.8.1-SNAPSHOT", + "version": "0.10.0", "hasInstallScript": true, "license": "MIT", "dependencies": { @@ -16,12 +16,12 @@ "@mattiasbuelens/web-streams-adapter": "^0.1.0", "binconv": "^0.2.0", "clipboard-copy": "^4.0.1", - "core-js": "^3.25.0", + "core-js": "^3.25.1", "file-saver": "^2.0.5", "file-type": "^16.5.3", "filepond": "^4.30.4", - "fp-ts": "^2.12.2", - "io-ts": "^2.2.17", + "fp-ts": "^2.12.3", + "io-ts": "^2.2.18", "jszip": "^3.10.1", "jwk-thumbprint": "^0.1.4", "linkifyjs": "^3.0.5", @@ -30,7 +30,7 @@ "sanitize-html": "^2.7.1", "smoothscroll-polyfill": "^0.4.4", "url-join": "^4.0.1", - "vue": "^2.7.7", + "vue": "^2.7.10", "vue-async-computed": "^3.9.0", "vue-async-computed-decorator": "0.0.5", "vue-class-component": "^7.2.6", @@ -45,7 +45,7 @@ "@types/file-saver": "^2.0.5", "@types/mocha": "^8.2.3", "@types/openpgp": "^4.4.18", - "@types/react": "^18.0.17", + "@types/react": "^18.0.19", "@types/react-dom": "^18.0.6", "@types/sanitize-html": "^2.6.2", "@types/smoothscroll-polyfill": "^0.3.1", @@ -61,7 +61,7 @@ "@vue/test-utils": "^1.3.0", "babel-eslint": "^10.1.0", "chai": "^4.3.6", - "concurrently": "^7.3.0", + "concurrently": "^7.4.0", "copyfiles": "^2.4.1", "cross-var": "^1.1.0", "eslint": "^6.8.0", @@ -72,7 +72,7 @@ "react-dom": "^18.2.0", "sass": "~1.32.0", "sass-loader": "^10.3.1", - "typescript": "^4.8.2", + "typescript": "^4.8.3", "vue-cli-plugin-vuetify": "^2.5.5", "vuetify-loader": "^1.9.2", "watch-build-serve": "git+https://github.com/nwtgck/watch-build-serve-node.git#afc757410b3339e1603916ab98b8e5760569dbaa", @@ -2340,9 +2340,9 @@ "dev": true }, "node_modules/@types/react": { - "version": "18.0.17", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.17.tgz", - "integrity": "sha512-38ETy4tL+rn4uQQi7mB81G7V1g0u2ryquNmsVIOKUAEIDK+3CUjZ6rSRpdvS99dNBnkLFL83qfmtLacGOTIhwQ==", + "version": "18.0.19", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.19.tgz", + "integrity": "sha512-BDc3Q+4Q3zsn7k9xZrKfjWyJsSlEDMs38gD1qp2eDazLCdcPqAT+vq1ND+Z8AGel/UiwzNUk8ptpywgNQcJ1MQ==", "dev": true, "dependencies": { "@types/prop-types": "*", @@ -6763,13 +6763,13 @@ } }, "node_modules/concurrently": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-7.3.0.tgz", - "integrity": "sha512-IiDwm+8DOcFEInca494A8V402tNTQlJaYq78RF2rijOrKEk/AOHTxhN4U1cp7GYKYX5Q6Ymh1dLTBlzIMN0ikA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-7.4.0.tgz", + "integrity": "sha512-M6AfrueDt/GEna/Vg9BqQ+93yuvzkSKmoTixnwEJkH0LlcGrRC2eCmjeG1tLLHIYfpYJABokqSGyMcXjm96AFA==", "dev": true, "dependencies": { "chalk": "^4.1.0", - "date-fns": "^2.16.1", + "date-fns": "^2.29.1", "lodash": "^4.17.21", "rxjs": "^7.0.0", "shell-quote": "^1.7.3", @@ -6779,10 +6779,14 @@ "yargs": "^17.3.1" }, "bin": { + "conc": "dist/bin/concurrently.js", "concurrently": "dist/bin/concurrently.js" }, "engines": { "node": "^12.20.0 || ^14.13.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/open-cli-tools/concurrently?sponsor=1" } }, "node_modules/concurrently/node_modules/ansi-styles": { @@ -7334,9 +7338,9 @@ } }, "node_modules/core-js": { - "version": "3.25.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.0.tgz", - "integrity": "sha512-CVU1xvJEfJGhyCpBrzzzU1kjCfgsGUxhEvwUV2e/cOedYWHdmluamx+knDnmhqALddMG16fZvIqvs9aijsHHaA==", + "version": "3.25.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.1.tgz", + "integrity": "sha512-sr0FY4lnO1hkQ4gLDr24K0DGnweGO1QwSj5BpfQjpSJPdqWalja4cTps29Y/PJVG/P7FYlPDkH3hO+Tr0CvDgQ==", "hasInstallScript": true, "funding": { "type": "opencollective", @@ -10605,9 +10609,9 @@ } }, "node_modules/fp-ts": { - "version": "2.12.2", - "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-2.12.2.tgz", - "integrity": "sha512-v8J7ud+nTkP5Zz17GhpCsY19wiRbB9miuj61nBcCJyDpu52zs9Z4O7OLDfYoKFQMJ9EsSZA7W1vRgC1d3jy5qw==" + "version": "2.12.3", + "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-2.12.3.tgz", + "integrity": "sha512-8m0XvW8kZbfnJOA4NvSVXu95mLbPf4LQGwQyqVukIYS4KzSNJiyKSmuZUmbVHteUi6MGkAJGPb0goPZqI+Tsqg==" }, "node_modules/fragment-cache": { "version": "0.2.1", @@ -11952,9 +11956,9 @@ } }, "node_modules/io-ts": { - "version": "2.2.17", - "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-2.2.17.tgz", - "integrity": "sha512-RkQY06h6rRyADVEI46OCAUYTP2p18Vdtz9Movi19Mmj7SJ1NhN/yGyW7CxlcBVxh95WKg2YSbTmcUPqqeLuhXw==", + "version": "2.2.18", + "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-2.2.18.tgz", + "integrity": "sha512-3JxUUzRtPQPs5sOwB7pW0+Xb54nOzqA6M1sRB1hwgsRmkWMeGTjtOrCynGTJhIj+mBLUj2S37DAq2+BrPh9kTQ==", "peerDependencies": { "fp-ts": "^2.5.0" } @@ -19511,9 +19515,9 @@ "dev": true }, "node_modules/typescript": { - "version": "4.8.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.2.tgz", - "integrity": "sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==", + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.3.tgz", + "integrity": "sha512-goMHfm00nWPa8UvR/CPSvykqf6dVV8x/dp0c5mFTMTIu0u0FlGWRioyy7Nn0PGAdHxpJZnuO/ut+PpQ8UiHAig==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -20007,11 +20011,11 @@ "dev": true }, "node_modules/vue": { - "version": "2.7.7", - "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.7.tgz", - "integrity": "sha512-osfkncsGCWqtch+YWYxbqTNQ9hl/UQ6TFRkdmK/VqAjuMpxzr5QotFsYpmJ1AB1ez2LJeIKXDmtMkXUotMOTsA==", + "version": "2.7.10", + "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.10.tgz", + "integrity": "sha512-HmFC70qarSHPXcKtW8U8fgIkF6JGvjEmDiVInTkKZP0gIlEPhlVlcJJLkdGIDiNkIeA2zJPQTWJUI4iWe+AVfg==", "dependencies": { - "@vue/compiler-sfc": "2.7.7", + "@vue/compiler-sfc": "2.7.10", "csstype": "^3.1.0" } }, @@ -20250,9 +20254,9 @@ "dev": true }, "node_modules/vue/node_modules/@vue/compiler-sfc": { - "version": "2.7.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.7.tgz", - "integrity": "sha512-Ah8dIuo6ZVPHTq9+s4rBU/YpJu3vGSNyeOTCrPrVPQnkUfnT5Ig+IKBhePuQWFXguYb2TuEWrEfiiX9DZ3aJlA==", + "version": "2.7.10", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.10.tgz", + "integrity": "sha512-55Shns6WPxlYsz4WX7q9ZJBL77sKE1ZAYNYStLs6GbhIOMrNtjMvzcob6gu3cGlfpCR4bT7NXgyJ3tly2+Hx8Q==", "dependencies": { "@babel/parser": "^7.18.4", "postcss": "^8.4.14", @@ -20265,9 +20269,9 @@ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" }, "node_modules/vue/node_modules/postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "version": "8.4.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz", + "integrity": "sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==", "funding": [ { "type": "opencollective", @@ -23590,9 +23594,9 @@ "dev": true }, "@types/react": { - "version": "18.0.17", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.17.tgz", - "integrity": "sha512-38ETy4tL+rn4uQQi7mB81G7V1g0u2ryquNmsVIOKUAEIDK+3CUjZ6rSRpdvS99dNBnkLFL83qfmtLacGOTIhwQ==", + "version": "18.0.19", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.19.tgz", + "integrity": "sha512-BDc3Q+4Q3zsn7k9xZrKfjWyJsSlEDMs38gD1qp2eDazLCdcPqAT+vq1ND+Z8AGel/UiwzNUk8ptpywgNQcJ1MQ==", "dev": true, "requires": { "@types/prop-types": "*", @@ -27335,13 +27339,13 @@ } }, "concurrently": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-7.3.0.tgz", - "integrity": "sha512-IiDwm+8DOcFEInca494A8V402tNTQlJaYq78RF2rijOrKEk/AOHTxhN4U1cp7GYKYX5Q6Ymh1dLTBlzIMN0ikA==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-7.4.0.tgz", + "integrity": "sha512-M6AfrueDt/GEna/Vg9BqQ+93yuvzkSKmoTixnwEJkH0LlcGrRC2eCmjeG1tLLHIYfpYJABokqSGyMcXjm96AFA==", "dev": true, "requires": { "chalk": "^4.1.0", - "date-fns": "^2.16.1", + "date-fns": "^2.29.1", "lodash": "^4.17.21", "rxjs": "^7.0.0", "shell-quote": "^1.7.3", @@ -27784,9 +27788,9 @@ } }, "core-js": { - "version": "3.25.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.0.tgz", - "integrity": "sha512-CVU1xvJEfJGhyCpBrzzzU1kjCfgsGUxhEvwUV2e/cOedYWHdmluamx+knDnmhqALddMG16fZvIqvs9aijsHHaA==" + "version": "3.25.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.25.1.tgz", + "integrity": "sha512-sr0FY4lnO1hkQ4gLDr24K0DGnweGO1QwSj5BpfQjpSJPdqWalja4cTps29Y/PJVG/P7FYlPDkH3hO+Tr0CvDgQ==" }, "core-js-compat": { "version": "3.23.4", @@ -30459,9 +30463,9 @@ "dev": true }, "fp-ts": { - "version": "2.12.2", - "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-2.12.2.tgz", - "integrity": "sha512-v8J7ud+nTkP5Zz17GhpCsY19wiRbB9miuj61nBcCJyDpu52zs9Z4O7OLDfYoKFQMJ9EsSZA7W1vRgC1d3jy5qw==" + "version": "2.12.3", + "resolved": "https://registry.npmjs.org/fp-ts/-/fp-ts-2.12.3.tgz", + "integrity": "sha512-8m0XvW8kZbfnJOA4NvSVXu95mLbPf4LQGwQyqVukIYS4KzSNJiyKSmuZUmbVHteUi6MGkAJGPb0goPZqI+Tsqg==" }, "fragment-cache": { "version": "0.2.1", @@ -31518,9 +31522,9 @@ } }, "io-ts": { - "version": "2.2.17", - "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-2.2.17.tgz", - "integrity": "sha512-RkQY06h6rRyADVEI46OCAUYTP2p18Vdtz9Movi19Mmj7SJ1NhN/yGyW7CxlcBVxh95WKg2YSbTmcUPqqeLuhXw==", + "version": "2.2.18", + "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-2.2.18.tgz", + "integrity": "sha512-3JxUUzRtPQPs5sOwB7pW0+Xb54nOzqA6M1sRB1hwgsRmkWMeGTjtOrCynGTJhIj+mBLUj2S37DAq2+BrPh9kTQ==", "requires": {} }, "ip": { @@ -37632,9 +37636,9 @@ "dev": true }, "typescript": { - "version": "4.8.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.2.tgz", - "integrity": "sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==", + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.3.tgz", + "integrity": "sha512-goMHfm00nWPa8UvR/CPSvykqf6dVV8x/dp0c5mFTMTIu0u0FlGWRioyy7Nn0PGAdHxpJZnuO/ut+PpQ8UiHAig==", "dev": true }, "uglify-js": { @@ -38025,18 +38029,18 @@ "dev": true }, "vue": { - "version": "2.7.7", - "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.7.tgz", - "integrity": "sha512-osfkncsGCWqtch+YWYxbqTNQ9hl/UQ6TFRkdmK/VqAjuMpxzr5QotFsYpmJ1AB1ez2LJeIKXDmtMkXUotMOTsA==", + "version": "2.7.10", + "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.10.tgz", + "integrity": "sha512-HmFC70qarSHPXcKtW8U8fgIkF6JGvjEmDiVInTkKZP0gIlEPhlVlcJJLkdGIDiNkIeA2zJPQTWJUI4iWe+AVfg==", "requires": { - "@vue/compiler-sfc": "2.7.7", + "@vue/compiler-sfc": "2.7.10", "csstype": "^3.1.0" }, "dependencies": { "@vue/compiler-sfc": { - "version": "2.7.7", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.7.tgz", - "integrity": "sha512-Ah8dIuo6ZVPHTq9+s4rBU/YpJu3vGSNyeOTCrPrVPQnkUfnT5Ig+IKBhePuQWFXguYb2TuEWrEfiiX9DZ3aJlA==", + "version": "2.7.10", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.10.tgz", + "integrity": "sha512-55Shns6WPxlYsz4WX7q9ZJBL77sKE1ZAYNYStLs6GbhIOMrNtjMvzcob6gu3cGlfpCR4bT7NXgyJ3tly2+Hx8Q==", "requires": { "@babel/parser": "^7.18.4", "postcss": "^8.4.14", @@ -38049,9 +38053,9 @@ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" }, "postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "version": "8.4.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz", + "integrity": "sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==", "requires": { "nanoid": "^3.3.4", "picocolors": "^1.0.0", diff --git a/package.json b/package.json index b17b7989a..2e88037dd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "piping-ui", - "version": "0.9.0", + "version": "0.10.0", "private": true, "author": "Ryo Ota (https://github.com/nwtgck)", "scripts": { @@ -25,12 +25,12 @@ "@mattiasbuelens/web-streams-adapter": "^0.1.0", "binconv": "^0.2.0", "clipboard-copy": "^4.0.1", - "core-js": "^3.25.0", + "core-js": "^3.25.1", "file-saver": "^2.0.5", "file-type": "^16.5.3", "filepond": "^4.30.4", - "fp-ts": "^2.12.2", - "io-ts": "^2.2.17", + "fp-ts": "^2.12.3", + "io-ts": "^2.2.18", "jszip": "^3.10.1", "jwk-thumbprint": "^0.1.4", "linkifyjs": "^3.0.5", @@ -39,7 +39,7 @@ "sanitize-html": "^2.7.1", "smoothscroll-polyfill": "^0.4.4", "url-join": "^4.0.1", - "vue": "^2.7.7", + "vue": "^2.7.10", "vue-async-computed": "^3.9.0", "vue-async-computed-decorator": "0.0.5", "vue-class-component": "^7.2.6", @@ -54,7 +54,7 @@ "@types/file-saver": "^2.0.5", "@types/mocha": "^8.2.3", "@types/openpgp": "^4.4.18", - "@types/react": "^18.0.17", + "@types/react": "^18.0.19", "@types/react-dom": "^18.0.6", "@types/sanitize-html": "^2.6.2", "@types/smoothscroll-polyfill": "^0.3.1", @@ -70,7 +70,7 @@ "@vue/test-utils": "^1.3.0", "babel-eslint": "^10.1.0", "chai": "^4.3.6", - "concurrently": "^7.3.0", + "concurrently": "^7.4.0", "copyfiles": "^2.4.1", "cross-var": "^1.1.0", "eslint": "^6.8.0", @@ -81,7 +81,7 @@ "react-dom": "^18.2.0", "sass": "~1.32.0", "sass-loader": "^10.3.1", - "typescript": "^4.8.2", + "typescript": "^4.8.3", "vue-cli-plugin-vuetify": "^2.5.5", "vuetify-loader": "^1.9.2", "watch-build-serve": "git+https://github.com/nwtgck/watch-build-serve-node.git#afc757410b3339e1603916ab98b8e5760569dbaa", diff --git a/src/components/DarkThemeSwitch.vue b/src/components/DarkThemeSwitch.vue new file mode 100644 index 000000000..eb7f68fbf --- /dev/null +++ b/src/components/DarkThemeSwitch.vue @@ -0,0 +1,21 @@ + + + diff --git a/src/components/DataDownloader.vue b/src/components/DataDownloader.vue index 3328d3d5f..a17e47ba0 100644 --- a/src/components/DataDownloader.vue +++ b/src/components/DataDownloader.vue @@ -1,15 +1,15 @@ + + + + diff --git a/src/components/DataViewer.vue b/src/components/DataViewer.vue index fe266c71e..9149536aa 100644 --- a/src/components/DataViewer.vue +++ b/src/components/DataViewer.vue @@ -1,7 +1,7 @@ diff --git a/src/components/PipingUI.vue b/src/components/PipingUI.vue index cca7369a9..a2c760767 100644 --- a/src/components/PipingUI.vue +++ b/src/components/PipingUI.vue @@ -6,11 +6,11 @@
- {{ strings['send'] }} + {{ strings?.['send'] }} {{ icons.mdiUpload }} - {{ strings['get'] }} + {{ strings?.['get'] }} {{ icons.mdiDownload }} @@ -23,18 +23,16 @@ v-model="isTextMode">
- - - @@ -123,14 +121,14 @@ class="ma-0 pa-0" > - {{ strings['send'] }} + {{ strings?.['send'] }} {{ icons.mdiUpload }} @@ -153,7 +151,7 @@ dark @click="view()" block> - {{ strings['view'] }} + {{ strings?.['view'] }} {{ icons.mdiFileFind }} @@ -162,7 +160,7 @@ @click="get()" dark block> - {{ strings['download'] }} + {{ strings?.['download'] }} {{ icons.mdiDownload }} @@ -175,13 +173,13 @@ @@ -199,31 +197,27 @@ -