From 466997febcfc339cc825704dfec378d4c98d9b41 Mon Sep 17 00:00:00 2001 From: Hayden <64056131+hay-kot@users.noreply.github.com> Date: Fri, 7 May 2021 14:33:20 -0800 Subject: [PATCH 1/2] backend-events + code-cleanup (#395) * additional server events * sort 'recent recipes' by updated * remove duplicate code * fixes #396 * set color * consolidate tag/category pages * set colors * list unorganized recipes * cleanup old code * remove flash message, switch to global snackbar * cancel to close * cleanup Co-authored-by: hay-kot --- docs/docs/changelog/v0.5.0.md | 3 +- frontend/package-lock.json | 1884 ++++++++++++----- frontend/package.json | 3 +- frontend/src/App.vue | 36 +- frontend/src/api/recipe.js | 12 + frontend/src/components/UI/GlobalSnackbar.vue | 30 + frontend/src/components/UI/TheRecipeFab.vue | 2 +- frontend/src/main.js | 2 - .../pages/Admin/Dashboard/BackupViewer.vue | 10 +- .../src/pages/Admin/Dashboard/EventViewer.vue | 16 +- .../pages/Admin/Profile/ProfileThemeCard.vue | 2 +- frontend/src/pages/Admin/Profile/UserCard.vue | 3 +- .../Admin/ToolBox/CategoryTagEditor/index.vue | 5 +- .../pages/Admin/ToolBox/RecipeOrganizer.vue | 57 +- .../{CategoryPage.vue => CategoryTagPage.vue} | 17 +- frontend/src/pages/Recipes/CustomPage.vue | 5 +- frontend/src/pages/Recipes/TagPage.vue | 57 - frontend/src/routes/recipes.js | 7 +- frontend/src/store/index.js | 2 + frontend/src/store/modules/recipes.js | 8 +- frontend/src/store/modules/snackbar.js | 23 + frontend/src/utils/index.js | 45 +- mealie/routes/backup_routes.py | 2 +- mealie/routes/groups/crud.py | 7 +- mealie/routes/mealplans/crud.py | 14 +- mealie/routes/recipe/all_recipe_routes.py | 10 +- mealie/routes/users/auth.py | 5 +- mealie/routes/users/crud.py | 5 +- mealie/routes/users/sign_up.py | 6 +- mealie/schema/events.py | 3 +- mealie/services/events.py | 9 +- 31 files changed, 1604 insertions(+), 686 deletions(-) create mode 100644 frontend/src/components/UI/GlobalSnackbar.vue rename frontend/src/pages/Recipes/{CategoryPage.vue => CategoryTagPage.vue} (69%) delete mode 100644 frontend/src/pages/Recipes/TagPage.vue create mode 100644 frontend/src/store/modules/snackbar.js diff --git a/docs/docs/changelog/v0.5.0.md b/docs/docs/changelog/v0.5.0.md index 15050e5df..6f092a940 100644 --- a/docs/docs/changelog/v0.5.0.md +++ b/docs/docs/changelog/v0.5.0.md @@ -59,7 +59,7 @@ - All images are now converted to .webp for better compression ### General -- New 'Dark' Theme Packages with Mealie +- New 'Dark' Color Theme Packaged with Mealie - Updated Recipe Card Sections Toolbar - New Sort Options (They work this time!) - Alphabetical @@ -82,6 +82,7 @@ - Improved styling for search bar in desktop - Improved search layout on mobile - Profile image now shown on all sidebars +- Switched from Flash Messages to Snackbar (Removed dependency ### Behind the Scenes - Black and Flake8 now run as CI/CD checks diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 8c1fd530f..419136714 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -8,7 +8,6 @@ "version": "0.1.0", "dependencies": { "@adapttive/vue-markdown": "^4.0.1", - "@smartweb/vue-flash-message": "^0.6.10", "axios": "^0.21.1", "core-js": "^3.9.1", "fast-levenshtein": "^3.0.0", @@ -29,7 +28,7 @@ "@mdi/font": "^5.9.55", "@vue/cli-plugin-babel": "^4.5.11", "@vue/cli-plugin-eslint": "^4.5.11", - "@vue/cli-service": "^4.1.1", + "@vue/cli-service": "^4.5.12", "babel-eslint": "^10.1.0", "eslint": "^6.7.2", "eslint-plugin-vue": "^6.2.2", @@ -1498,11 +1497,6 @@ "node": ">= 6" } }, - "node_modules/@smartweb/vue-flash-message": { - "version": "0.6.10", - "resolved": "https://registry.npmjs.org/@smartweb/vue-flash-message/-/vue-flash-message-0.6.10.tgz", - "integrity": "sha512-ceDUUzXI6FDscev36kZQvc2BO+MayOt6uJ2HSh9zoOkfa0PVIhmaoB56InlTTsK7MmlSIvPJpRB+Habdx3MtNw==" - }, "node_modules/@soda/friendly-errors-webpack-plugin": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.8.0.tgz", @@ -1521,11 +1515,75 @@ "webpack": "^4.0.0 || ^5.0.0" } }, + "node_modules/@soda/get-current-script": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@soda/get-current-script/-/get-current-script-1.0.2.tgz", + "integrity": "sha512-T7VNNlYVM1SgQ+VsMYhnDkcGmWhQdL0bDyGm5TlQ3GBXnJscEClUUOKduWTmm2zCnvNLC1hc3JpuXjs/nFOc5w==", + "dev": true + }, "node_modules/@sphinxxxx/color-conversion": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/@sphinxxxx/color-conversion/-/color-conversion-2.2.2.tgz", "integrity": "sha512-XExJS3cLqgrmNBIP3bBw6+1oQ1ksGjFh0+oClDKFYpCCqx/hlqwWO5KO/S63fzUo67SxI9dMrF0y5T/Ey7h8Zw==" }, + "node_modules/@types/anymatch": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.1.tgz", + "integrity": "sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA==", + "dev": true + }, + "node_modules/@types/body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.34", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.34.tgz", + "integrity": "sha512-ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.4.tgz", + "integrity": "sha512-Kf8v0wljR5GSCOCF/VQWdV3ZhKOVA73drXtY3geMTQgHy9dgqQ0dLrf31M0hcuWkhFzK5sP0kkS3mJzcKVtZbw==", + "dev": true, + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.11.tgz", + "integrity": "sha512-no+R6rW60JEc59977wIxreQVsIEOAYwgCqldrA/vkpCnbD7MqTefO97lmoBe4WE0F156bC4uLSP1XHDOySnChg==", + "dev": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.19.tgz", + "integrity": "sha512-DJOSHzX7pCiSElWaGR8kCprwibCB/3yW6vcT8VG3P0SJjnv19gnWG/AZMfM60Xj/YJIp/YCaDHyvzsFVeniARA==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, "node_modules/@types/glob": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", @@ -1536,18 +1594,39 @@ "@types/node": "*" } }, + "node_modules/@types/http-proxy": { + "version": "1.17.5", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.5.tgz", + "integrity": "sha512-GNkDE7bTv6Sf8JbV2GksknKOsk7OznNYHSdrtvPJXO0qJ9odZig6IZKUi5RFGi6d1bf6dgIAe4uXi3DBc7069Q==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/json-schema": { "version": "7.0.7", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", "dev": true }, + "node_modules/@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", + "dev": true + }, "node_modules/@types/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==", "dev": true }, + "node_modules/@types/minimist": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", + "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", + "dev": true + }, "node_modules/@types/node": { "version": "15.0.1", "resolved": "https://registry.npmjs.org/@types/node/-/node-15.0.1.tgz", @@ -1566,6 +1645,114 @@ "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==", "dev": true }, + "node_modules/@types/qs": { + "version": "6.9.6", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.6.tgz", + "integrity": "sha512-0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz", + "integrity": "sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA==", + "dev": true + }, + "node_modules/@types/serve-static": { + "version": "1.13.9", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.9.tgz", + "integrity": "sha512-ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA==", + "dev": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", + "dev": true + }, + "node_modules/@types/tapable": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.7.tgz", + "integrity": "sha512-0VBprVqfgFD7Ehb2vd8Lh9TG3jP98gvr8rgehQqzztZNI7o8zS8Ad4jyZneKELphpuE212D8J70LnSNQSyO6bQ==", + "dev": true + }, + "node_modules/@types/uglify-js": { + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.0.tgz", + "integrity": "sha512-EGkrJD5Uy+Pg0NUR8uA4bJ5WMfljyad0G+784vLCNUkD+QwOJXUbBYExXfVGf7YtyzdQp3L/XMYcliB987kL5Q==", + "dev": true, + "dependencies": { + "source-map": "^0.6.1" + } + }, + "node_modules/@types/uglify-js/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@types/webpack": { + "version": "4.41.28", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.28.tgz", + "integrity": "sha512-Nn84RAiJjKRfPFFCVR8LC4ueTtTdfWAMZ03THIzZWRJB+rX24BD3LqPSFnbMscWauEsT4segAsylPDIaZyZyLQ==", + "dev": true, + "dependencies": { + "@types/anymatch": "*", + "@types/node": "*", + "@types/tapable": "^1", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "source-map": "^0.6.0" + } + }, + "node_modules/@types/webpack-dev-server": { + "version": "3.11.3", + "resolved": "https://registry.npmjs.org/@types/webpack-dev-server/-/webpack-dev-server-3.11.3.tgz", + "integrity": "sha512-p9B/QClflreKDeamKhBwuo5zqtI++wwb9QNG/CdIZUFtHvtaq0dWVgbtV7iMl4Sr4vWzEFj0rn16pgUFANjLPA==", + "dev": true, + "dependencies": { + "@types/connect-history-api-fallback": "*", + "@types/express": "*", + "@types/serve-static": "*", + "@types/webpack": "^4", + "http-proxy-middleware": "^1.0.0" + } + }, + "node_modules/@types/webpack-sources": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-2.1.0.tgz", + "integrity": "sha512-LXn/oYIpBeucgP1EIJbKQ2/4ZmpvRl+dlrFdX7+94SKRUV3Evy3FsfMZY318vGhkWUS5MPhtOM3w1/hCOAOXcg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.7.3" + } + }, + "node_modules/@types/webpack-sources/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@types/webpack/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/@vue/babel-helper-vue-jsx-merge-props": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.2.1.tgz", @@ -1847,35 +2034,37 @@ } }, "node_modules/@vue/cli-service": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@vue/cli-service/-/cli-service-4.1.1.tgz", - "integrity": "sha512-woEIXXc22DXKrSO+FAFnrzhnysJcAB1UTF2t0NIPrxnngm0O2YSO0idmy01a2H/q3auMCVNQdzggQ4JWUeV7Gg==", + "version": "4.5.12", + "resolved": "https://registry.npmjs.org/@vue/cli-service/-/cli-service-4.5.12.tgz", + "integrity": "sha512-Di/dFw72HIvUrpTgnnPQkPq07mdd7z3GPeCH/o+6fv4bxOD+gwK9z7P6RkG4lGv2QdLz+qjim9f7xw5w+9ENkg==", "dev": true, "dependencies": { "@intervolga/optimize-cssnano-plugin": "^1.0.5", "@soda/friendly-errors-webpack-plugin": "^1.7.1", - "@vue/cli-overlay": "^4.1.1", - "@vue/cli-plugin-router": "^4.1.1", - "@vue/cli-plugin-vuex": "^4.1.1", - "@vue/cli-shared-utils": "^4.1.1", - "@vue/component-compiler-utils": "^3.0.2", + "@soda/get-current-script": "^1.0.0", + "@types/minimist": "^1.2.0", + "@types/webpack": "^4.0.0", + "@types/webpack-dev-server": "^3.11.0", + "@vue/cli-overlay": "^4.5.12", + "@vue/cli-plugin-router": "^4.5.12", + "@vue/cli-plugin-vuex": "^4.5.12", + "@vue/cli-shared-utils": "^4.5.12", + "@vue/component-compiler-utils": "^3.1.2", "@vue/preload-webpack-plugin": "^1.1.0", "@vue/web-component-wrapper": "^1.2.0", - "acorn": "^6.1.1", - "acorn-walk": "^6.1.1", + "acorn": "^7.4.0", + "acorn-walk": "^7.1.1", "address": "^1.1.2", - "autoprefixer": "^9.7.2", - "browserslist": "^4.7.3", + "autoprefixer": "^9.8.6", + "browserslist": "^4.12.0", "cache-loader": "^4.1.0", - "case-sensitive-paths-webpack-plugin": "^2.2.0", - "chalk": "^2.4.2", + "case-sensitive-paths-webpack-plugin": "^2.3.0", "cli-highlight": "^2.1.4", - "clipboardy": "^2.0.0", - "cliui": "^5.0.0", - "copy-webpack-plugin": "^5.0.5", - "css-loader": "^3.1.0", + "clipboardy": "^2.3.0", + "cliui": "^6.0.0", + "copy-webpack-plugin": "^5.1.1", + "css-loader": "^3.5.3", "cssnano": "^4.1.10", - "current-script-polyfill": "^1.0.0", "debug": "^4.1.1", "default-gateway": "^5.0.5", "dotenv": "^8.2.0", @@ -1883,32 +2072,27 @@ "file-loader": "^4.2.0", "fs-extra": "^7.0.1", "globby": "^9.2.0", - "hash-sum": "^1.0.2", + "hash-sum": "^2.0.0", "html-webpack-plugin": "^3.2.0", "launch-editor-middleware": "^2.2.1", "lodash.defaultsdeep": "^4.6.1", "lodash.mapvalues": "^4.6.0", "lodash.transform": "^4.6.0", - "mini-css-extract-plugin": "^0.8.0", - "minimist": "^1.2.0", - "ora": "^3.4.0", - "portfinder": "^1.0.25", + "mini-css-extract-plugin": "^0.9.0", + "minimist": "^1.2.5", + "pnp-webpack-plugin": "^1.6.4", + "portfinder": "^1.0.26", "postcss-loader": "^3.0.0", - "read-pkg": "^5.1.1", - "semver": "^6.1.0", - "slash": "^3.0.0", - "source-map-url": "^0.4.0", - "ssri": "^6.0.1", - "string.prototype.padend": "^3.0.0", - "terser-webpack-plugin": "^2.2.1", + "ssri": "^7.1.0", + "terser-webpack-plugin": "^2.3.6", "thread-loader": "^2.1.3", "url-loader": "^2.2.0", - "vue-loader": "^15.7.2", - "vue-style-loader": "^4.1.0", + "vue-loader": "^15.9.2", + "vue-style-loader": "^4.1.2", "webpack": "^4.0.0", - "webpack-bundle-analyzer": "^3.6.0", - "webpack-chain": "^6.0.0", - "webpack-dev-server": "^3.9.0", + "webpack-bundle-analyzer": "^3.8.0", + "webpack-chain": "^6.4.0", + "webpack-dev-server": "^3.11.0", "webpack-merge": "^4.2.2" }, "bin": { @@ -1917,10 +2101,17 @@ "engines": { "node": ">=8" }, + "optionalDependencies": { + "vue-loader-v16": "npm:vue-loader@^16.1.0" + }, "peerDependencies": { + "@vue/compiler-sfc": "^3.0.0-beta.14", "vue-template-compiler": "^2.0.0" }, "peerDependenciesMeta": { + "@vue/compiler-sfc": { + "optional": true + }, "less-loader": { "optional": true }, @@ -1935,46 +2126,195 @@ }, "stylus-loader": { "optional": true + }, + "vue-template-compiler": { + "optional": true } } }, - "node_modules/@vue/cli-service/node_modules/acorn": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", - "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/@vue/cli-service/node_modules/acorn-walk": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", - "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/@vue/cli-service/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/@vue/cli-service/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/@vue/cli-service/node_modules/ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", + "node_modules/@vue/cli-service/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "figgy-pudding": "^3.5.1" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@vue/cli-service/node_modules/cacache": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", + "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", + "dev": true, + "dependencies": { + "chownr": "^1.1.2", + "figgy-pudding": "^3.5.1", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.2", + "infer-owner": "^1.0.4", + "lru-cache": "^5.1.1", + "minipass": "^3.0.0", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "p-map": "^3.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^2.7.1", + "ssri": "^7.0.0", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@vue/cli-service/node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/@vue/cli-service/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@vue/cli-service/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/@vue/cli-service/node_modules/hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", + "dev": true + }, + "node_modules/@vue/cli-service/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@vue/cli-service/node_modules/p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@vue/cli-service/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@vue/cli-service/node_modules/string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@vue/cli-service/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@vue/cli-service/node_modules/terser-webpack-plugin": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.8.tgz", + "integrity": "sha512-/fKw3R+hWyHfYx7Bv6oPqmk4HGQcrWLtV3X6ggvPuwPNHSnzvVV51z6OaaCOus4YLjutYGOz3pEpbhe6Up2s1w==", + "dev": true, + "dependencies": { + "cacache": "^13.0.1", + "find-cache-dir": "^3.3.1", + "jest-worker": "^25.4.0", + "p-limit": "^2.3.0", + "schema-utils": "^2.6.6", + "serialize-javascript": "^4.0.0", + "source-map": "^0.6.1", + "terser": "^4.6.12", + "webpack-sources": "^1.4.3" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/@vue/cli-service/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" } }, "node_modules/@vue/cli-shared-utils": { @@ -4762,12 +5102,6 @@ "node": ">=0.10.0" } }, - "node_modules/current-script-polyfill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/current-script-polyfill/-/current-script-polyfill-1.0.0.tgz", - "integrity": "sha1-8xz35PPiGLBybnOMqSoC00iO9hU=", - "dev": true - }, "node_modules/cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", @@ -7231,6 +7565,80 @@ "node": ">=8.0.0" } }, + "node_modules/http-proxy-middleware": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-1.3.1.tgz", + "integrity": "sha512-13eVVDYS4z79w7f1+NPllJtOQFx/FdUW4btIvVRMaRlUY9VGstAbo5MOhLEuUgZFRHn3x50ufn25zkj/boZnEg==", + "dev": true, + "dependencies": { + "@types/http-proxy": "^1.17.5", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/http-proxy-middleware/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/http-proxy-middleware/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/http-proxy-middleware/node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/http-proxy-middleware/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, "node_modules/http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", @@ -8003,12 +8411,15 @@ } }, "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-plain-object": { @@ -8901,9 +9312,9 @@ } }, "node_modules/mini-css-extract-plugin": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.2.tgz", - "integrity": "sha512-a3Y4of27Wz+mqK3qrcd3VhYz6cU0iW5x3Sgvqzbj+XmlrSizmvu8QQMl5oMYJjgHOC4iyt+w7l4umP+dQeW3bw==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz", + "integrity": "sha512-lp3GeY7ygcgAmVIcRPBVhIkf8Us7FZjA+ILpal44qLdSu11wmjKQ3d9k15lfD7pO4esu9eUIAW7qiYIBppv40A==", "dev": true, "dependencies": { "loader-utils": "^1.1.0", @@ -10136,6 +10547,18 @@ "node": ">=8" } }, + "node_modules/pnp-webpack-plugin": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", + "integrity": "sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==", + "dev": true, + "dependencies": { + "ts-pnp": "^1.1.6" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/portfinder": { "version": "1.0.28", "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", @@ -12246,6 +12669,15 @@ "node": ">=0.10.0" } }, + "node_modules/sort-keys/node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/sortablejs": { "version": "1.10.2", "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.10.2.tgz", @@ -12644,23 +13076,6 @@ "node": ">=4" } }, - "node_modules/string.prototype.padend": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz", - "integrity": "sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/string.prototype.trimend": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", @@ -12873,71 +13288,143 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.8.tgz", - "integrity": "sha512-/fKw3R+hWyHfYx7Bv6oPqmk4HGQcrWLtV3X6ggvPuwPNHSnzvVV51z6OaaCOus4YLjutYGOz3pEpbhe6Up2s1w==", + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", + "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", "dev": true, "dependencies": { - "cacache": "^13.0.1", - "find-cache-dir": "^3.3.1", - "jest-worker": "^25.4.0", - "p-limit": "^2.3.0", - "schema-utils": "^2.6.6", + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", "serialize-javascript": "^4.0.0", "source-map": "^0.6.1", - "terser": "^4.6.12", - "webpack-sources": "^1.4.3" + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" }, "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "node": ">= 6.9.0" }, "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" + "webpack": "^4.0.0" } }, - "node_modules/terser-webpack-plugin/node_modules/cacache": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", - "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", + "node_modules/terser-webpack-plugin/node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", "dev": true, "dependencies": { - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.2", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "minipass": "^3.0.0", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^7.0.0", - "unique-filename": "^1.1.1" + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" }, "engines": { - "node": ">= 8" + "node": ">=6" } }, - "node_modules/terser-webpack-plugin/node_modules/p-map": { + "node_modules/terser-webpack-plugin/node_modules/find-up": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "dependencies": { - "aggregate-error": "^3.0.0" + "locate-path": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=6" + } + }, + "node_modules/terser-webpack-plugin/node_modules/is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/terser-webpack-plugin/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser-webpack-plugin/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser-webpack-plugin/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser-webpack-plugin/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/terser-webpack-plugin/node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "dependencies": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/terser-webpack-plugin/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "bin": { + "semver": "bin/semver" } }, "node_modules/terser-webpack-plugin/node_modules/source-map": { @@ -13161,6 +13648,20 @@ "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==", "dev": true }, + "node_modules/ts-pnp": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz", + "integrity": "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -13957,6 +14458,117 @@ } } }, + "node_modules/vue-loader-v16": { + "name": "vue-loader", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.2.0.tgz", + "integrity": "sha512-TitGhqSQ61RJljMmhIGvfWzJ2zk9m1Qug049Ugml6QP3t0e95o0XJjk29roNEiPKJQBEi8Ord5hFuSuELzSp8Q==", + "dev": true, + "optional": true, + "dependencies": { + "chalk": "^4.1.0", + "hash-sum": "^2.0.0", + "loader-utils": "^2.0.0" + } + }, + "node_modules/vue-loader-v16/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "optional": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/vue-loader-v16/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "optional": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/vue-loader-v16/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "optional": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/vue-loader-v16/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "optional": true + }, + "node_modules/vue-loader-v16/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/vue-loader-v16/node_modules/hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", + "dev": true, + "optional": true + }, + "node_modules/vue-loader-v16/node_modules/loader-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", + "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", + "dev": true, + "optional": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/vue-loader-v16/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "optional": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/vue-router": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.1.tgz", @@ -14781,100 +15393,6 @@ "node": ">=4.0.0" } }, - "node_modules/webpack/node_modules/find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/webpack/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/webpack/node_modules/is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/webpack/node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/webpack/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/webpack/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/webpack/node_modules/pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/webpack/node_modules/schema-utils": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", @@ -14889,47 +15407,6 @@ "node": ">= 4" } }, - "node_modules/webpack/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/webpack/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/webpack/node_modules/terser-webpack-plugin": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", - "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", - "dev": true, - "dependencies": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" - }, - "engines": { - "node": ">= 6.9.0" - }, - "peerDependencies": { - "webpack": "^4.0.0" - } - }, "node_modules/websocket-driver": { "version": "0.7.4", "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", @@ -16514,11 +16991,6 @@ "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", "dev": true }, - "@smartweb/vue-flash-message": { - "version": "0.6.10", - "resolved": "https://registry.npmjs.org/@smartweb/vue-flash-message/-/vue-flash-message-0.6.10.tgz", - "integrity": "sha512-ceDUUzXI6FDscev36kZQvc2BO+MayOt6uJ2HSh9zoOkfa0PVIhmaoB56InlTTsK7MmlSIvPJpRB+Habdx3MtNw==" - }, "@soda/friendly-errors-webpack-plugin": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.8.0.tgz", @@ -16531,11 +17003,75 @@ "strip-ansi": "^5" } }, + "@soda/get-current-script": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@soda/get-current-script/-/get-current-script-1.0.2.tgz", + "integrity": "sha512-T7VNNlYVM1SgQ+VsMYhnDkcGmWhQdL0bDyGm5TlQ3GBXnJscEClUUOKduWTmm2zCnvNLC1hc3JpuXjs/nFOc5w==", + "dev": true + }, "@sphinxxxx/color-conversion": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/@sphinxxxx/color-conversion/-/color-conversion-2.2.2.tgz", "integrity": "sha512-XExJS3cLqgrmNBIP3bBw6+1oQ1ksGjFh0+oClDKFYpCCqx/hlqwWO5KO/S63fzUo67SxI9dMrF0y5T/Ey7h8Zw==" }, + "@types/anymatch": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@types/anymatch/-/anymatch-1.3.1.tgz", + "integrity": "sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA==", + "dev": true + }, + "@types/body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ==", + "dev": true, + "requires": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "@types/connect": { + "version": "3.4.34", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.34.tgz", + "integrity": "sha512-ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/connect-history-api-fallback": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.4.tgz", + "integrity": "sha512-Kf8v0wljR5GSCOCF/VQWdV3ZhKOVA73drXtY3geMTQgHy9dgqQ0dLrf31M0hcuWkhFzK5sP0kkS3mJzcKVtZbw==", + "dev": true, + "requires": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "@types/express": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.11.tgz", + "integrity": "sha512-no+R6rW60JEc59977wIxreQVsIEOAYwgCqldrA/vkpCnbD7MqTefO97lmoBe4WE0F156bC4uLSP1XHDOySnChg==", + "dev": true, + "requires": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "@types/express-serve-static-core": { + "version": "4.17.19", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.19.tgz", + "integrity": "sha512-DJOSHzX7pCiSElWaGR8kCprwibCB/3yW6vcT8VG3P0SJjnv19gnWG/AZMfM60Xj/YJIp/YCaDHyvzsFVeniARA==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, "@types/glob": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", @@ -16546,18 +17082,39 @@ "@types/node": "*" } }, + "@types/http-proxy": { + "version": "1.17.5", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.5.tgz", + "integrity": "sha512-GNkDE7bTv6Sf8JbV2GksknKOsk7OznNYHSdrtvPJXO0qJ9odZig6IZKUi5RFGi6d1bf6dgIAe4uXi3DBc7069Q==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/json-schema": { "version": "7.0.7", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", "dev": true }, + "@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", + "dev": true + }, "@types/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==", "dev": true }, + "@types/minimist": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", + "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", + "dev": true + }, "@types/node": { "version": "15.0.1", "resolved": "https://registry.npmjs.org/@types/node/-/node-15.0.1.tgz", @@ -16576,6 +17133,111 @@ "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==", "dev": true }, + "@types/qs": { + "version": "6.9.6", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.6.tgz", + "integrity": "sha512-0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA==", + "dev": true + }, + "@types/range-parser": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz", + "integrity": "sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA==", + "dev": true + }, + "@types/serve-static": { + "version": "1.13.9", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.9.tgz", + "integrity": "sha512-ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA==", + "dev": true, + "requires": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", + "dev": true + }, + "@types/tapable": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.7.tgz", + "integrity": "sha512-0VBprVqfgFD7Ehb2vd8Lh9TG3jP98gvr8rgehQqzztZNI7o8zS8Ad4jyZneKELphpuE212D8J70LnSNQSyO6bQ==", + "dev": true + }, + "@types/uglify-js": { + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.0.tgz", + "integrity": "sha512-EGkrJD5Uy+Pg0NUR8uA4bJ5WMfljyad0G+784vLCNUkD+QwOJXUbBYExXfVGf7YtyzdQp3L/XMYcliB987kL5Q==", + "dev": true, + "requires": { + "source-map": "^0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "@types/webpack": { + "version": "4.41.28", + "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.28.tgz", + "integrity": "sha512-Nn84RAiJjKRfPFFCVR8LC4ueTtTdfWAMZ03THIzZWRJB+rX24BD3LqPSFnbMscWauEsT4segAsylPDIaZyZyLQ==", + "dev": true, + "requires": { + "@types/anymatch": "*", + "@types/node": "*", + "@types/tapable": "^1", + "@types/uglify-js": "*", + "@types/webpack-sources": "*", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "@types/webpack-dev-server": { + "version": "3.11.3", + "resolved": "https://registry.npmjs.org/@types/webpack-dev-server/-/webpack-dev-server-3.11.3.tgz", + "integrity": "sha512-p9B/QClflreKDeamKhBwuo5zqtI++wwb9QNG/CdIZUFtHvtaq0dWVgbtV7iMl4Sr4vWzEFj0rn16pgUFANjLPA==", + "dev": true, + "requires": { + "@types/connect-history-api-fallback": "*", + "@types/express": "*", + "@types/serve-static": "*", + "@types/webpack": "^4", + "http-proxy-middleware": "^1.0.0" + } + }, + "@types/webpack-sources": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-2.1.0.tgz", + "integrity": "sha512-LXn/oYIpBeucgP1EIJbKQ2/4ZmpvRl+dlrFdX7+94SKRUV3Evy3FsfMZY318vGhkWUS5MPhtOM3w1/hCOAOXcg==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + } + } + }, "@vue/babel-helper-vue-jsx-merge-props": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.2.1.tgz", @@ -16800,35 +17462,37 @@ "requires": {} }, "@vue/cli-service": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@vue/cli-service/-/cli-service-4.1.1.tgz", - "integrity": "sha512-woEIXXc22DXKrSO+FAFnrzhnysJcAB1UTF2t0NIPrxnngm0O2YSO0idmy01a2H/q3auMCVNQdzggQ4JWUeV7Gg==", + "version": "4.5.12", + "resolved": "https://registry.npmjs.org/@vue/cli-service/-/cli-service-4.5.12.tgz", + "integrity": "sha512-Di/dFw72HIvUrpTgnnPQkPq07mdd7z3GPeCH/o+6fv4bxOD+gwK9z7P6RkG4lGv2QdLz+qjim9f7xw5w+9ENkg==", "dev": true, "requires": { "@intervolga/optimize-cssnano-plugin": "^1.0.5", "@soda/friendly-errors-webpack-plugin": "^1.7.1", - "@vue/cli-overlay": "^4.1.1", - "@vue/cli-plugin-router": "^4.1.1", - "@vue/cli-plugin-vuex": "^4.1.1", - "@vue/cli-shared-utils": "^4.1.1", - "@vue/component-compiler-utils": "^3.0.2", + "@soda/get-current-script": "^1.0.0", + "@types/minimist": "^1.2.0", + "@types/webpack": "^4.0.0", + "@types/webpack-dev-server": "^3.11.0", + "@vue/cli-overlay": "^4.5.12", + "@vue/cli-plugin-router": "^4.5.12", + "@vue/cli-plugin-vuex": "^4.5.12", + "@vue/cli-shared-utils": "^4.5.12", + "@vue/component-compiler-utils": "^3.1.2", "@vue/preload-webpack-plugin": "^1.1.0", "@vue/web-component-wrapper": "^1.2.0", - "acorn": "^6.1.1", - "acorn-walk": "^6.1.1", + "acorn": "^7.4.0", + "acorn-walk": "^7.1.1", "address": "^1.1.2", - "autoprefixer": "^9.7.2", - "browserslist": "^4.7.3", + "autoprefixer": "^9.8.6", + "browserslist": "^4.12.0", "cache-loader": "^4.1.0", - "case-sensitive-paths-webpack-plugin": "^2.2.0", - "chalk": "^2.4.2", + "case-sensitive-paths-webpack-plugin": "^2.3.0", "cli-highlight": "^2.1.4", - "clipboardy": "^2.0.0", - "cliui": "^5.0.0", - "copy-webpack-plugin": "^5.0.5", - "css-loader": "^3.1.0", + "clipboardy": "^2.3.0", + "cliui": "^6.0.0", + "copy-webpack-plugin": "^5.1.1", + "css-loader": "^3.5.3", "cssnano": "^4.1.10", - "current-script-polyfill": "^1.0.0", "debug": "^4.1.1", "default-gateway": "^5.0.5", "dotenv": "^8.2.0", @@ -16836,60 +17500,171 @@ "file-loader": "^4.2.0", "fs-extra": "^7.0.1", "globby": "^9.2.0", - "hash-sum": "^1.0.2", + "hash-sum": "^2.0.0", "html-webpack-plugin": "^3.2.0", "launch-editor-middleware": "^2.2.1", "lodash.defaultsdeep": "^4.6.1", "lodash.mapvalues": "^4.6.0", "lodash.transform": "^4.6.0", - "mini-css-extract-plugin": "^0.8.0", - "minimist": "^1.2.0", - "ora": "^3.4.0", - "portfinder": "^1.0.25", + "mini-css-extract-plugin": "^0.9.0", + "minimist": "^1.2.5", + "pnp-webpack-plugin": "^1.6.4", + "portfinder": "^1.0.26", "postcss-loader": "^3.0.0", - "read-pkg": "^5.1.1", - "semver": "^6.1.0", - "slash": "^3.0.0", - "source-map-url": "^0.4.0", - "ssri": "^6.0.1", - "string.prototype.padend": "^3.0.0", - "terser-webpack-plugin": "^2.2.1", + "ssri": "^7.1.0", + "terser-webpack-plugin": "^2.3.6", "thread-loader": "^2.1.3", "url-loader": "^2.2.0", - "vue-loader": "^15.7.2", - "vue-style-loader": "^4.1.0", + "vue-loader": "^15.9.2", + "vue-loader-v16": "npm:vue-loader@^16.1.0", + "vue-style-loader": "^4.1.2", "webpack": "^4.0.0", - "webpack-bundle-analyzer": "^3.6.0", - "webpack-chain": "^6.0.0", - "webpack-dev-server": "^3.9.0", + "webpack-bundle-analyzer": "^3.8.0", + "webpack-chain": "^6.4.0", + "webpack-dev-server": "^3.11.0", "webpack-merge": "^4.2.2" }, "dependencies": { - "acorn": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", - "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, - "acorn-walk": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", - "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "figgy-pudding": "^3.5.1" + "color-convert": "^2.0.1" + } + }, + "cacache": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", + "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", + "dev": true, + "requires": { + "chownr": "^1.1.2", + "figgy-pudding": "^3.5.1", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.2", + "infer-owner": "^1.0.4", + "lru-cache": "^5.1.1", + "minipass": "^3.0.0", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "p-map": "^3.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^2.7.1", + "ssri": "^7.0.0", + "unique-filename": "^1.1.1" + } + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + }, + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "string-width": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz", + "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "terser-webpack-plugin": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.8.tgz", + "integrity": "sha512-/fKw3R+hWyHfYx7Bv6oPqmk4HGQcrWLtV3X6ggvPuwPNHSnzvVV51z6OaaCOus4YLjutYGOz3pEpbhe6Up2s1w==", + "dev": true, + "requires": { + "cacache": "^13.0.1", + "find-cache-dir": "^3.3.1", + "jest-worker": "^25.4.0", + "p-limit": "^2.3.0", + "schema-utils": "^2.6.6", + "serialize-javascript": "^4.0.0", + "source-map": "^0.6.1", + "terser": "^4.6.12", + "webpack-sources": "^1.4.3" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" } } } @@ -19183,12 +19958,6 @@ } } }, - "current-script-polyfill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/current-script-polyfill/-/current-script-polyfill-1.0.0.tgz", - "integrity": "sha1-8xz35PPiGLBybnOMqSoC00iO9hU=", - "dev": true - }, "cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", @@ -21167,6 +21936,64 @@ "requires-port": "^1.0.0" } }, + "http-proxy-middleware": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-1.3.1.tgz", + "integrity": "sha512-13eVVDYS4z79w7f1+NPllJtOQFx/FdUW4btIvVRMaRlUY9VGstAbo5MOhLEuUgZFRHn3x50ufn25zkj/boZnEg==", + "dev": true, + "requires": { + "@types/http-proxy": "^1.17.5", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", @@ -21728,9 +22555,9 @@ } }, "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", "dev": true }, "is-plain-object": { @@ -22472,9 +23299,9 @@ "dev": true }, "mini-css-extract-plugin": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.2.tgz", - "integrity": "sha512-a3Y4of27Wz+mqK3qrcd3VhYz6cU0iW5x3Sgvqzbj+XmlrSizmvu8QQMl5oMYJjgHOC4iyt+w7l4umP+dQeW3bw==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz", + "integrity": "sha512-lp3GeY7ygcgAmVIcRPBVhIkf8Us7FZjA+ILpal44qLdSu11wmjKQ3d9k15lfD7pO4esu9eUIAW7qiYIBppv40A==", "dev": true, "requires": { "loader-utils": "^1.1.0", @@ -23477,6 +24304,15 @@ "find-up": "^4.0.0" } }, + "pnp-webpack-plugin": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", + "integrity": "sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==", + "dev": true, + "requires": { + "ts-pnp": "^1.1.6" + } + }, "portfinder": { "version": "1.0.28", "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", @@ -25249,6 +26085,14 @@ "dev": true, "requires": { "is-plain-obj": "^1.0.0" + }, + "dependencies": { + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + } } }, "sortablejs": { @@ -25596,17 +26440,6 @@ } } }, - "string.prototype.padend": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz", - "integrity": "sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2" - } - }, "string.prototype.trimend": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", @@ -25783,57 +26616,109 @@ } }, "terser-webpack-plugin": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.8.tgz", - "integrity": "sha512-/fKw3R+hWyHfYx7Bv6oPqmk4HGQcrWLtV3X6ggvPuwPNHSnzvVV51z6OaaCOus4YLjutYGOz3pEpbhe6Up2s1w==", + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", + "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", "dev": true, "requires": { - "cacache": "^13.0.1", - "find-cache-dir": "^3.3.1", - "jest-worker": "^25.4.0", - "p-limit": "^2.3.0", - "schema-utils": "^2.6.6", + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", "serialize-javascript": "^4.0.0", "source-map": "^0.6.1", - "terser": "^4.6.12", - "webpack-sources": "^1.4.3" + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" }, "dependencies": { - "cacache": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", - "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", "dev": true, "requires": { - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.2", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "minipass": "^3.0.0", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^7.0.0", - "unique-filename": "^1.1.1" + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" } }, - "p-map": { + "find-up": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "dev": true, "requires": { - "aggregate-error": "^3.0.0" + "locate-path": "^3.0.0" } }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -26005,6 +26890,12 @@ "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==", "dev": true }, + "ts-pnp": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz", + "integrity": "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==", + "dev": true + }, "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -26649,6 +27540,94 @@ "vue-style-loader": "^4.1.0" } }, + "vue-loader-v16": { + "version": "npm:vue-loader@16.2.0", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.2.0.tgz", + "integrity": "sha512-TitGhqSQ61RJljMmhIGvfWzJ2zk9m1Qug049Ugml6QP3t0e95o0XJjk29roNEiPKJQBEi8Ord5hFuSuELzSp8Q==", + "dev": true, + "optional": true, + "requires": { + "chalk": "^4.1.0", + "hash-sum": "^2.0.0", + "loader-utils": "^2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "optional": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "optional": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "optional": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "optional": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "optional": true + }, + "hash-sum": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", + "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", + "dev": true, + "optional": true + }, + "loader-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", + "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", + "dev": true, + "optional": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "optional": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "vue-router": { "version": "3.5.1", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.1.tgz", @@ -26927,76 +27906,6 @@ "estraverse": "^4.1.1" } }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, "schema-utils": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", @@ -27007,35 +27916,6 @@ "ajv-errors": "^1.0.0", "ajv-keywords": "^3.1.0" } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "terser-webpack-plugin": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", - "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", - "dev": true, - "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" - } } } }, diff --git a/frontend/package.json b/frontend/package.json index 6e2d559e5..7217b41d2 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -10,7 +10,6 @@ }, "dependencies": { "@adapttive/vue-markdown": "^4.0.1", - "@smartweb/vue-flash-message": "^0.6.10", "axios": "^0.21.1", "core-js": "^3.9.1", "fast-levenshtein": "^3.0.0", @@ -31,7 +30,7 @@ "@mdi/font": "^5.9.55", "@vue/cli-plugin-babel": "^4.5.11", "@vue/cli-plugin-eslint": "^4.5.11", - "@vue/cli-service": "^4.1.1", + "@vue/cli-service": "^4.5.12", "babel-eslint": "^10.1.0", "eslint": "^6.7.2", "eslint-plugin-vue": "^6.2.2", diff --git a/frontend/src/App.vue b/frontend/src/App.vue index 999cac80a..9bfb05464 100644 --- a/frontend/src/App.vue +++ b/frontend/src/App.vue @@ -6,14 +6,15 @@
This is a Demo | Username: changeme@email.com | Password: demo
+ - diff --git a/frontend/src/routes/recipes.js b/frontend/src/routes/recipes.js index cd099f780..3493d4940 100644 --- a/frontend/src/routes/recipes.js +++ b/frontend/src/routes/recipes.js @@ -2,15 +2,14 @@ import ViewRecipe from "@/pages/Recipe/ViewRecipe"; import NewRecipe from "@/pages/Recipe/NewRecipe"; import CustomPage from "@/pages/Recipes/CustomPage"; import AllRecipes from "@/pages/Recipes/AllRecipes"; -import CategoryPage from "@/pages/Recipes/CategoryPage"; -import TagPage from "@/pages/Recipes/TagPage"; +import CategoryTagPage from "@/pages/Recipes/CategoryTagPage"; import { api } from "@/api"; export const recipeRoutes = [ // Recipes { path: "/recipes/all", component: AllRecipes }, - { path: "/recipes/tag/:tag", component: TagPage }, - { path: "/recipes/category/:category", component: CategoryPage }, + { path: "/recipes/tag/:tag", component: CategoryTagPage }, + { path: "/recipes/category/:category", component: CategoryTagPage }, // Misc { path: "/new/", component: NewRecipe }, { path: "/pages/:customPage", component: CustomPage }, diff --git a/frontend/src/store/index.js b/frontend/src/store/index.js index d40042776..4ce1d9765 100644 --- a/frontend/src/store/index.js +++ b/frontend/src/store/index.js @@ -7,6 +7,7 @@ import language from "./modules/language"; import siteSettings from "./modules/siteSettings"; import recipes from "./modules/recipes"; import groups from "./modules/groups"; +import snackbar from "./modules/snackbar"; Vue.use(Vuex); @@ -22,6 +23,7 @@ const store = new Vuex.Store({ siteSettings, groups, recipes, + snackbar, }, state: { // All Recipe Data Store diff --git a/frontend/src/store/modules/recipes.js b/frontend/src/store/modules/recipes.js index 887acb49d..f2270eb94 100644 --- a/frontend/src/store/modules/recipes.js +++ b/frontend/src/store/modules/recipes.js @@ -1,5 +1,6 @@ import { api } from "@/api"; import Vue from "vue"; +import { recipe } from "@/utils/recipe"; const state = { recentRecipes: [], @@ -36,7 +37,6 @@ const mutations = { const actions = { async requestRecentRecipes() { const payload = await api.recipes.allSummary(0, 30); - payload.sort((a, b) => (a.dateAdded > b.dateAdded ? -1 : 1)); const hash = Object.fromEntries(payload.map(e => [e.id, e])); this.commit("setRecentRecipes", hash); }, @@ -60,7 +60,11 @@ const actions = { const getters = { getAllRecipes: state => Object.values(state.allRecipes), getAllRecipesHash: state => state.allRecipes, - getRecentRecipes: state => Object.values(state.recentRecipes), + getRecentRecipes: state => { + let list = Object.values(state.recentRecipes); + recipe.sortByUpdated(list); + return list; + }, getRecentRecipesHash: state => state.recentRecipes, }; diff --git a/frontend/src/store/modules/snackbar.js b/frontend/src/store/modules/snackbar.js new file mode 100644 index 000000000..21ae1a398 --- /dev/null +++ b/frontend/src/store/modules/snackbar.js @@ -0,0 +1,23 @@ +const state = { + snackbar: { + open: false, + text: "Hello From The Store", + color: "info", + }, +}; + +const mutations = { + setSnackbar(state, payload) { + state.snackbar = payload; + }, +}; + +const getters = { + getSnackbar: state => state.snackbar, +}; + +export default { + state, + mutations, + getters, +}; diff --git a/frontend/src/utils/index.js b/frontend/src/utils/index.js index 447e4a230..d62b1ffe9 100644 --- a/frontend/src/utils/index.js +++ b/frontend/src/utils/index.js @@ -1,14 +1,7 @@ -import { vueApp } from "../main"; import { recipe } from "@/utils/recipe"; +import { store } from "@/store"; // TODO: Migrate to Mixins -const notifyHelpers = { - baseCSS: "notify-base", - error: "notify-error-color", - warning: "notify-warning-color", - success: "notify-success-color", - info: "notify-info-color", -}; export const utils = { recipe: recipe, @@ -27,27 +20,37 @@ export const utils = { return `${year}-${month}-${day}`; }, notify: { - show: function(text, type = "info", title = null) { - vueApp.flashMessage.show({ - status: type, + info: function(text, title = null) { + store.commit("setSnackbar", { + open: true, title: title, - message: text, - time: 3000, - blockClass: `${notifyHelpers.baseCSS} ${notifyHelpers[type]}`, - contentClass: `${notifyHelpers.baseCSS} ${notifyHelpers[type]}`, + text: text, + color: "info", }); }, - info: function(text, title = null) { - this.show(text, "info", title); - }, success: function(text, title = null) { - this.show(text, "success", title); + store.commit("setSnackbar", { + open: true, + title: title, + text: text, + color: "success", + }); }, error: function(text, title = null) { - this.show(text, "error", title); + store.commit("setSnackbar", { + open: true, + title: title, + text: text, + color: "error", + }); }, warning: function(text, title = null) { - this.show(text, "warning", title); + store.commit("setSnackbar", { + open: true, + title: title, + text: text, + color: "warning", + }); }, }, }; diff --git a/mealie/routes/backup_routes.py b/mealie/routes/backup_routes.py index d4fef6c35..1e0917ecf 100644 --- a/mealie/routes/backup_routes.py +++ b/mealie/routes/backup_routes.py @@ -90,7 +90,7 @@ def import_database(file_name: str, import_data: ImportJob, session: Session = D force_import=import_data.force, rebase=import_data.rebase, ) - create_backup_event("Database Restore", f"Restored Database File {file_name}", session) + create_backup_event("Database Restore", f"Restore File: {file_name}", session) return db_import diff --git a/mealie/routes/groups/crud.py b/mealie/routes/groups/crud.py index 81262697d..b4a43ed51 100644 --- a/mealie/routes/groups/crud.py +++ b/mealie/routes/groups/crud.py @@ -1,8 +1,9 @@ -from fastapi import APIRouter, Depends, status, HTTPException +from fastapi import APIRouter, Depends, HTTPException, status from mealie.db.database import db from mealie.db.db_setup import generate_session from mealie.routes.deps import get_current_user from mealie.schema.user import GroupBase, GroupInDB, UpdateGroup, UserInDB +from mealie.services.events import create_group_event from sqlalchemy.orm.session import Session router = APIRouter(prefix="/api/groups", tags=["Groups"]) @@ -39,6 +40,7 @@ async def create_group( try: db.groups.create(session, group_data.dict()) + create_group_event("Group Created", f"'{group_data.name}' created") except Exception: raise HTTPException(status.HTTP_400_BAD_REQUEST) @@ -68,7 +70,8 @@ async def delete_user_group( if not group: raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="GROUP_NOT_FOUND") - if not group.users == []: + if group.users != []: raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="GROUP_WITH_USERS") + create_group_event("Group Deleted", f"'{group.name}' Deleted") db.groups.delete(session, id) diff --git a/mealie/routes/mealplans/crud.py b/mealie/routes/mealplans/crud.py index 5cff2c2ab..b3fe00f5a 100644 --- a/mealie/routes/mealplans/crud.py +++ b/mealie/routes/mealplans/crud.py @@ -4,6 +4,7 @@ from mealie.db.db_setup import generate_session from mealie.routes.deps import get_current_user from mealie.schema.meal import MealPlanIn, MealPlanInDB from mealie.schema.user import GroupInDB, UserInDB +from mealie.services.events import create_group_event from mealie.services.image import image from mealie.services.meal_services import get_todays_meal, process_meals from sqlalchemy.orm.session import Session @@ -24,10 +25,11 @@ def get_all_meals( @router.post("/create", status_code=status.HTTP_201_CREATED) def create_meal_plan( - data: MealPlanIn, session: Session = Depends(generate_session), current_user=Depends(get_current_user) + data: MealPlanIn, session: Session = Depends(generate_session), current_user: UserInDB = Depends(get_current_user) ): """ Creates a meal plan database entry """ processed_plan = process_meals(session, data) + create_group_event("Meal Plan Created", f"Mealplan Created for '{current_user.group}'") return db.meals.create(session, processed_plan.dict()) @@ -36,23 +38,29 @@ def update_meal_plan( plan_id: str, meal_plan: MealPlanIn, session: Session = Depends(generate_session), - current_user=Depends(get_current_user), + current_user: UserInDB = Depends(get_current_user), ): """ Updates a meal plan based off ID """ processed_plan = process_meals(session, meal_plan) processed_plan = MealPlanInDB(uid=plan_id, **processed_plan.dict()) try: db.meals.update(session, plan_id, processed_plan.dict()) + create_group_event("Meal Plan Updated", f"Mealplan Updated for '{current_user.group}'") except Exception: raise HTTPException(status.HTTP_400_BAD_REQUEST) @router.delete("/{plan_id}") -def delete_meal_plan(plan_id, session: Session = Depends(generate_session), current_user=Depends(get_current_user)): +def delete_meal_plan( + plan_id, + session: Session = Depends(generate_session), + current_user: UserInDB = Depends(get_current_user), +): """ Removes a meal plan from the database """ try: db.meals.delete(session, plan_id) + create_group_event("Meal Plan Deleted", f"Mealplan Deleted for '{current_user.group}'") except Exception: raise HTTPException(status.HTTP_400_BAD_REQUEST) diff --git a/mealie/routes/recipe/all_recipe_routes.py b/mealie/routes/recipe/all_recipe_routes.py index 9a61751c9..e75de92a8 100644 --- a/mealie/routes/recipe/all_recipe_routes.py +++ b/mealie/routes/recipe/all_recipe_routes.py @@ -26,17 +26,17 @@ async def get_recipe_summary( """ - return db.recipes.get_all(session, limit=limit, start=start, override_schema=RecipeSummary) + return db.recipes.get_all(session, limit=limit, start=start, order_by="date_updated", override_schema=RecipeSummary) @router.get("/api/recipes/summary/untagged", response_model=list[RecipeSummary]) -async def get_untagged_recipes(session: Session = Depends(generate_session)): - return db.recipes.count_untagged(session, False, override_schema=RecipeSummary) +async def get_untagged_recipes(count: bool = False, session: Session = Depends(generate_session)): + return db.recipes.count_untagged(session, count=count, override_schema=RecipeSummary) @router.get("/api/recipes/summary/uncategorized", response_model=list[RecipeSummary]) -async def get_uncategorized_recipes(session: Session = Depends(generate_session)): - return db.recipes.count_uncategorized(session, False, override_schema=RecipeSummary) +async def get_uncategorized_recipes(count: bool = False, session: Session = Depends(generate_session)): + return db.recipes.count_uncategorized(session, count=count, override_schema=RecipeSummary) @router.post("/api/recipes/category") diff --git a/mealie/routes/users/auth.py b/mealie/routes/users/auth.py index 555abf3be..0780556f7 100644 --- a/mealie/routes/users/auth.py +++ b/mealie/routes/users/auth.py @@ -1,4 +1,4 @@ -from fastapi import APIRouter, Depends, status +from fastapi import APIRouter, Depends, Request, status from fastapi.exceptions import HTTPException from fastapi.security import OAuth2PasswordRequestForm from mealie.core import security @@ -6,6 +6,7 @@ from mealie.core.security import authenticate_user from mealie.db.db_setup import generate_session from mealie.routes.deps import get_current_user from mealie.schema.user import UserInDB +from mealie.services.events import create_user_event from sqlalchemy.orm.session import Session router = APIRouter(prefix="/api/auth", tags=["Authentication"]) @@ -14,6 +15,7 @@ router = APIRouter(prefix="/api/auth", tags=["Authentication"]) @router.post("/token/long") @router.post("/token") def get_token( + request: Request, data: OAuth2PasswordRequestForm = Depends(), session: Session = Depends(generate_session), ): @@ -23,6 +25,7 @@ def get_token( user = authenticate_user(session, email, password) if not user: + create_user_event("Failed Login", f"Username: {email}, Source IP: '{request.client.host}'") raise HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, headers={"WWW-Authenticate": "Bearer"}, diff --git a/mealie/routes/users/crud.py b/mealie/routes/users/crud.py index 63d11dbdb..ab0a2ea3b 100644 --- a/mealie/routes/users/crud.py +++ b/mealie/routes/users/crud.py @@ -9,7 +9,7 @@ from mealie.db.database import db from mealie.db.db_setup import generate_session from mealie.routes.deps import get_current_user from mealie.schema.user import ChangePassword, UserBase, UserIn, UserInDB, UserOut -from mealie.services.events import create_sign_up_event +from mealie.services.events import create_user_event from sqlalchemy.orm.session import Session router = APIRouter(prefix="/api/users", tags=["Users"]) @@ -23,7 +23,7 @@ async def create_user( ): new_user.password = get_password_hash(new_user.password) - create_sign_up_event("User Created", f"Created by {current_user.full_name}", session=session) + create_user_event("User Created", f"Created by {current_user.full_name}", session=session) return db.users.create(session, new_user.dict()) @@ -150,5 +150,6 @@ async def delete_user( if current_user.id == id or current_user.admin: try: db.users.delete(session, id) + create_user_event("User Deleted", f"User ID: {id}", session=session) except Exception: raise HTTPException(status.HTTP_400_BAD_REQUEST) diff --git a/mealie/routes/users/sign_up.py b/mealie/routes/users/sign_up.py index 9d6bdaf79..c0cb386b6 100644 --- a/mealie/routes/users/sign_up.py +++ b/mealie/routes/users/sign_up.py @@ -7,7 +7,7 @@ from mealie.db.db_setup import generate_session from mealie.routes.deps import get_current_user from mealie.schema.sign_up import SignUpIn, SignUpOut, SignUpToken from mealie.schema.user import UserIn, UserInDB -from mealie.services.events import create_sign_up_event +from mealie.services.events import create_user_event from sqlalchemy.orm.session import Session router = APIRouter(prefix="/api/users/sign-ups", tags=["User Signup"]) @@ -39,7 +39,7 @@ async def create_user_sign_up_key( "name": key_data.name, "admin": key_data.admin, } - create_sign_up_event("Sign-up Token Created", f"Created by {current_user.full_name}", session=session) + create_user_event("Sign-up Token Created", f"Created by {current_user.full_name}", session=session) return db.sign_ups.create(session, sign_up) @@ -62,7 +62,7 @@ async def create_user_with_token( db.users.create(session, new_user.dict()) # DeleteToken - create_sign_up_event("Sign-up Token Used", f"New User {new_user.full_name}", session=session) + create_user_event("Sign-up Token Used", f"New User {new_user.full_name}", session=session) db.sign_ups.delete(session, token) diff --git a/mealie/schema/events.py b/mealie/schema/events.py index 5ee4e8a77..b5ae23b9c 100644 --- a/mealie/schema/events.py +++ b/mealie/schema/events.py @@ -12,7 +12,8 @@ class EventCategory(str, Enum): backup = "backup" scheduled = "scheduled" migration = "migration" - sign_up = "signup" + group = "group" + user = "user" class Event(CamelModel): diff --git a/mealie/services/events.py b/mealie/services/events.py index b47edf5dc..3cd9d5bf0 100644 --- a/mealie/services/events.py +++ b/mealie/services/events.py @@ -35,6 +35,11 @@ def create_migration_event(title, text, session=None): save_event(title=title, text=text, category=category, session=session) -def create_sign_up_event(title, text, session=None): - category = EventCategory.sign_up +def create_group_event(title, text, session=None): + category = EventCategory.group + save_event(title=title, text=text, category=category, session=session) + + +def create_user_event(title, text, session=None): + category = EventCategory.user save_event(title=title, text=text, category=category, session=session) From 8923c1ecf878153b399bc4b2acd4e09b70e9723b Mon Sep 17 00:00:00 2001 From: Hayden <64056131+hay-kot@users.noreply.github.com> Date: Fri, 7 May 2021 14:34:51 -0800 Subject: [PATCH 2/2] New Crowdin updates (#394) * New translations en-US.json (Romanian) * New translations en-US.json (Italian) * New translations en-US.json (Romanian) * New translations en-US.json (Spanish) * New translations en-US.json (Afrikaans) * New translations en-US.json (Arabic) * New translations en-US.json (Catalan) * New translations en-US.json (Czech) * New translations en-US.json (Danish) * New translations en-US.json (Greek) * New translations en-US.json (Finnish) * New translations en-US.json (Hebrew) * New translations en-US.json (Hungarian) * New translations en-US.json (Japanese) * New translations en-US.json (French) * New translations en-US.json (Korean) * New translations en-US.json (Dutch) * New translations en-US.json (Norwegian) * New translations en-US.json (Polish) * New translations en-US.json (Portuguese) * New translations en-US.json (Russian) * New translations en-US.json (Serbian (Cyrillic)) * New translations en-US.json (Swedish) * New translations en-US.json (Turkish) * New translations en-US.json (Ukrainian) * New translations en-US.json (Chinese Traditional) * New translations en-US.json (Vietnamese) * New translations en-US.json (Chinese Simplified) * New translations en-US.json (Portuguese, Brazilian) * New translations en-US.json (French) * New translations en-US.json (Italian) * New translations en-US.json (Spanish) * New translations en-US.json (Afrikaans) * New translations en-US.json (Arabic) * New translations en-US.json (Catalan) * New translations en-US.json (Czech) * New translations en-US.json (Danish) * New translations en-US.json (German) * New translations en-US.json (German) * New translations en-US.json (Greek) * New translations en-US.json (Finnish) * New translations en-US.json (Hebrew) * New translations en-US.json (Hungarian) * New translations en-US.json (Japanese) * New translations en-US.json (Vietnamese) * New translations en-US.json (Korean) * New translations en-US.json (Dutch) * New translations en-US.json (Norwegian) * New translations en-US.json (Polish) * New translations en-US.json (Portuguese) * New translations en-US.json (Russian) * New translations en-US.json (Serbian (Cyrillic)) * New translations en-US.json (Swedish) * New translations en-US.json (Turkish) * New translations en-US.json (Ukrainian) * New translations en-US.json (Chinese Simplified) * New translations en-US.json (Chinese Traditional) * New translations en-US.json (Portuguese, Brazilian) * New translations en-US.json (Polish) * New translations en-US.json (Polish) --- .../src/locales/dateTimeFormats/af-ZA.json | 3 +- .../src/locales/dateTimeFormats/ar-SA.json | 3 +- .../src/locales/dateTimeFormats/ca-ES.json | 3 +- .../src/locales/dateTimeFormats/cs-CZ.json | 3 +- .../src/locales/dateTimeFormats/da-DK.json | 3 +- .../src/locales/dateTimeFormats/de-DE.json | 3 +- .../src/locales/dateTimeFormats/el-GR.json | 3 +- .../src/locales/dateTimeFormats/es-ES.json | 3 +- .../src/locales/dateTimeFormats/fi-FI.json | 3 +- .../src/locales/dateTimeFormats/fr-FR.json | 3 +- .../src/locales/dateTimeFormats/he-IL.json | 3 +- .../src/locales/dateTimeFormats/hu-HU.json | 3 +- .../src/locales/dateTimeFormats/it-IT.json | 3 +- .../src/locales/dateTimeFormats/ja-JP.json | 3 +- .../src/locales/dateTimeFormats/ko-KR.json | 3 +- .../src/locales/dateTimeFormats/nl-NL.json | 3 +- .../src/locales/dateTimeFormats/no-NO.json | 3 +- .../src/locales/dateTimeFormats/pl-PL.json | 3 +- .../src/locales/dateTimeFormats/pt-BR.json | 3 +- .../src/locales/dateTimeFormats/pt-PT.json | 3 +- .../src/locales/dateTimeFormats/ro-RO.json | 3 +- .../src/locales/dateTimeFormats/ru-RU.json | 3 +- .../src/locales/dateTimeFormats/sr-SP.json | 3 +- .../src/locales/dateTimeFormats/sv-SE.json | 3 +- .../src/locales/dateTimeFormats/tr-TR.json | 3 +- .../src/locales/dateTimeFormats/uk-UA.json | 3 +- .../src/locales/dateTimeFormats/vi-VN.json | 3 +- .../src/locales/dateTimeFormats/zh-CN.json | 3 +- .../src/locales/dateTimeFormats/zh-TW.json | 3 +- frontend/src/locales/messages/af-ZA.json | 36 ++++-- frontend/src/locales/messages/ar-SA.json | 36 ++++-- frontend/src/locales/messages/ca-ES.json | 36 ++++-- frontend/src/locales/messages/cs-CZ.json | 36 ++++-- frontend/src/locales/messages/da-DK.json | 36 ++++-- frontend/src/locales/messages/de-DE.json | 36 ++++-- frontend/src/locales/messages/el-GR.json | 36 ++++-- frontend/src/locales/messages/es-ES.json | 36 ++++-- frontend/src/locales/messages/fi-FI.json | 36 ++++-- frontend/src/locales/messages/fr-FR.json | 36 ++++-- frontend/src/locales/messages/he-IL.json | 36 ++++-- frontend/src/locales/messages/hu-HU.json | 36 ++++-- frontend/src/locales/messages/it-IT.json | 36 ++++-- frontend/src/locales/messages/ja-JP.json | 36 ++++-- frontend/src/locales/messages/ko-KR.json | 36 ++++-- frontend/src/locales/messages/nl-NL.json | 36 ++++-- frontend/src/locales/messages/no-NO.json | 36 ++++-- frontend/src/locales/messages/pl-PL.json | 114 ++++++++++-------- frontend/src/locales/messages/pt-BR.json | 36 ++++-- frontend/src/locales/messages/pt-PT.json | 36 ++++-- frontend/src/locales/messages/ro-RO.json | 36 ++++-- frontend/src/locales/messages/ru-RU.json | 36 ++++-- frontend/src/locales/messages/sr-SP.json | 36 ++++-- frontend/src/locales/messages/sv-SE.json | 36 ++++-- frontend/src/locales/messages/tr-TR.json | 36 ++++-- frontend/src/locales/messages/uk-UA.json | 36 ++++-- frontend/src/locales/messages/vi-VN.json | 36 ++++-- frontend/src/locales/messages/zh-CN.json | 36 ++++-- frontend/src/locales/messages/zh-TW.json | 36 ++++-- 58 files changed, 851 insertions(+), 358 deletions(-) diff --git a/frontend/src/locales/dateTimeFormats/af-ZA.json b/frontend/src/locales/dateTimeFormats/af-ZA.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/af-ZA.json +++ b/frontend/src/locales/dateTimeFormats/af-ZA.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/ar-SA.json b/frontend/src/locales/dateTimeFormats/ar-SA.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/ar-SA.json +++ b/frontend/src/locales/dateTimeFormats/ar-SA.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/ca-ES.json b/frontend/src/locales/dateTimeFormats/ca-ES.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/ca-ES.json +++ b/frontend/src/locales/dateTimeFormats/ca-ES.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/cs-CZ.json b/frontend/src/locales/dateTimeFormats/cs-CZ.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/cs-CZ.json +++ b/frontend/src/locales/dateTimeFormats/cs-CZ.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/da-DK.json b/frontend/src/locales/dateTimeFormats/da-DK.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/da-DK.json +++ b/frontend/src/locales/dateTimeFormats/da-DK.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/de-DE.json b/frontend/src/locales/dateTimeFormats/de-DE.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/de-DE.json +++ b/frontend/src/locales/dateTimeFormats/de-DE.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/el-GR.json b/frontend/src/locales/dateTimeFormats/el-GR.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/el-GR.json +++ b/frontend/src/locales/dateTimeFormats/el-GR.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/es-ES.json b/frontend/src/locales/dateTimeFormats/es-ES.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/es-ES.json +++ b/frontend/src/locales/dateTimeFormats/es-ES.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/fi-FI.json b/frontend/src/locales/dateTimeFormats/fi-FI.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/fi-FI.json +++ b/frontend/src/locales/dateTimeFormats/fi-FI.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/fr-FR.json b/frontend/src/locales/dateTimeFormats/fr-FR.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/fr-FR.json +++ b/frontend/src/locales/dateTimeFormats/fr-FR.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/he-IL.json b/frontend/src/locales/dateTimeFormats/he-IL.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/he-IL.json +++ b/frontend/src/locales/dateTimeFormats/he-IL.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/hu-HU.json b/frontend/src/locales/dateTimeFormats/hu-HU.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/hu-HU.json +++ b/frontend/src/locales/dateTimeFormats/hu-HU.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/it-IT.json b/frontend/src/locales/dateTimeFormats/it-IT.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/it-IT.json +++ b/frontend/src/locales/dateTimeFormats/it-IT.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/ja-JP.json b/frontend/src/locales/dateTimeFormats/ja-JP.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/ja-JP.json +++ b/frontend/src/locales/dateTimeFormats/ja-JP.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/ko-KR.json b/frontend/src/locales/dateTimeFormats/ko-KR.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/ko-KR.json +++ b/frontend/src/locales/dateTimeFormats/ko-KR.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/nl-NL.json b/frontend/src/locales/dateTimeFormats/nl-NL.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/nl-NL.json +++ b/frontend/src/locales/dateTimeFormats/nl-NL.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/no-NO.json b/frontend/src/locales/dateTimeFormats/no-NO.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/no-NO.json +++ b/frontend/src/locales/dateTimeFormats/no-NO.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/pl-PL.json b/frontend/src/locales/dateTimeFormats/pl-PL.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/pl-PL.json +++ b/frontend/src/locales/dateTimeFormats/pl-PL.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/pt-BR.json b/frontend/src/locales/dateTimeFormats/pt-BR.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/pt-BR.json +++ b/frontend/src/locales/dateTimeFormats/pt-BR.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/pt-PT.json b/frontend/src/locales/dateTimeFormats/pt-PT.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/pt-PT.json +++ b/frontend/src/locales/dateTimeFormats/pt-PT.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/ro-RO.json b/frontend/src/locales/dateTimeFormats/ro-RO.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/ro-RO.json +++ b/frontend/src/locales/dateTimeFormats/ro-RO.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/ru-RU.json b/frontend/src/locales/dateTimeFormats/ru-RU.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/ru-RU.json +++ b/frontend/src/locales/dateTimeFormats/ru-RU.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/sr-SP.json b/frontend/src/locales/dateTimeFormats/sr-SP.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/sr-SP.json +++ b/frontend/src/locales/dateTimeFormats/sr-SP.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/sv-SE.json b/frontend/src/locales/dateTimeFormats/sv-SE.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/sv-SE.json +++ b/frontend/src/locales/dateTimeFormats/sv-SE.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/tr-TR.json b/frontend/src/locales/dateTimeFormats/tr-TR.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/tr-TR.json +++ b/frontend/src/locales/dateTimeFormats/tr-TR.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/uk-UA.json b/frontend/src/locales/dateTimeFormats/uk-UA.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/uk-UA.json +++ b/frontend/src/locales/dateTimeFormats/uk-UA.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/vi-VN.json b/frontend/src/locales/dateTimeFormats/vi-VN.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/vi-VN.json +++ b/frontend/src/locales/dateTimeFormats/vi-VN.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/zh-CN.json b/frontend/src/locales/dateTimeFormats/zh-CN.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/zh-CN.json +++ b/frontend/src/locales/dateTimeFormats/zh-CN.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/dateTimeFormats/zh-TW.json b/frontend/src/locales/dateTimeFormats/zh-TW.json index 9e0240f38..25c6e007b 100644 --- a/frontend/src/locales/dateTimeFormats/zh-TW.json +++ b/frontend/src/locales/dateTimeFormats/zh-TW.json @@ -16,7 +16,6 @@ "day": "numeric", "weekday": "long", "hour": "numeric", - "minute": "numeric", - "hour12": true + "minute": "numeric" } } \ No newline at end of file diff --git a/frontend/src/locales/messages/af-ZA.json b/frontend/src/locales/messages/af-ZA.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/af-ZA.json +++ b/frontend/src/locales/messages/af-ZA.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/ar-SA.json b/frontend/src/locales/messages/ar-SA.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/ar-SA.json +++ b/frontend/src/locales/messages/ar-SA.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/ca-ES.json b/frontend/src/locales/messages/ca-ES.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/ca-ES.json +++ b/frontend/src/locales/messages/ca-ES.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/cs-CZ.json b/frontend/src/locales/messages/cs-CZ.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/cs-CZ.json +++ b/frontend/src/locales/messages/cs-CZ.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/da-DK.json b/frontend/src/locales/messages/da-DK.json index b4ddb6166..dbd3f4983 100644 --- a/frontend/src/locales/messages/da-DK.json +++ b/frontend/src/locales/messages/da-DK.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Anvend", "cancel": "Annuller", + "clear": "Clear", "close": "Luk", "confirm": "Bekræft", "create": "Opret", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Slet", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filtrer", "friday": "Fredag", "get": "Get", - "groups": "Grupper", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Importere", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Mandag", "name": "Navn", + "new": "New", "no": "Nej", "ok": "Ok", "options": "Options:", - "rating": "Rating", "random": "Tilfældig", + "rating": "Rating", "recent": "Seneste", "recipes": "Opskrifter", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Lørdag", "save": "Gem", "settings": "Indstillinger", + "shuffle": "Shuffle", "sort": "Sorter", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Indsend", "success-count": "Success: {count}", "sunday": "Søndag", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Temaer", "thursday": "Torsdag", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Brugere", "wednesday": "Onsdag", "yes": "Ja" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Opret en ny måltidsplan", "dinner-this-week": "Madplan denne uge", "dinner-today": "Madplan i dag", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Rediger måltidsplan", "end-date": "Slutdato", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Måltidsplaner", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Seneste:", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Advarsel" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Måltidsplanlægning Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "Webadresserne, der er anført nedenfor, modtager webhooks, der indeholder opskriftsdataene for måltidsplanen på den planlagte dag. \nWebhooks udføres i øjeblikket på {time} ", - "webhook-url": "Webhook adresse" + "webhook-url": "Webhook adresse", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Administrator", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Log ud", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "Ny bruger", "password": "Adgangskode", @@ -377,6 +394,7 @@ "total-users": "Antal brugere", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/de-DE.json b/frontend/src/locales/messages/de-DE.json index eca134ebd..fa5f56738 100644 --- a/frontend/src/locales/messages/de-DE.json +++ b/frontend/src/locales/messages/de-DE.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Anwendungsmodus", "database-type": "Datenbanktyp", + "database-url": "Database URL", "default-group": "Standardgruppe", "demo": "Demo", "demo-status": "Demostatus", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Keine Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Kategorie angelegt", "category-creation-failed": "Anlegen der Kategorie fehlgeschlagen", "category-deleted": "Kategorie entfernt", @@ -28,16 +29,18 @@ "category-filter": "Kategoriefilter", "category-update-failed": "Aktualisieren der Kategorie fehlgeschlagen", "category-updated": "Kategorie aktualisiert", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Anwenden", "cancel": "Abbrechen", + "clear": "Clear", "close": "Schließen", "confirm": "Bestätigen", "create": "Erstellen", "created": "Erstellt", "current-parenthesis": "(Neueste)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Löschen", "disabled": "Deaktiviert", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Freitag", "get": "Holen", - "groups": "Gruppen", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Importieren", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Montag", "name": "Name", + "new": "New", "no": "Nein", "ok": "Okay", "options": "Optionen:", - "rating": "Bewertung", "random": "Zufall", + "rating": "Bewertung", "recent": "Neueste", "recipes": "Rezepte", "rename-object": "{0} umbenennen", @@ -73,13 +76,13 @@ "saturday": "Samstag", "save": "Speichern", "settings": "Einstellungen", + "shuffle": "Shuffle", "sort": "Sortierung", "sort-alphabetically": "Alphabetisch", "status": "Status", "submit": "Einfügen", "success-count": "Erfolgreich: {count}", "sunday": "Sonntag", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themen", "thursday": "Donnerstag", @@ -89,7 +92,6 @@ "updated": "Aktualisiert", "upload": "Hochladen", "url": "URL", - "users": "Benutzer", "wednesday": "Mittwoch", "yes": "Ja" }, @@ -108,6 +110,7 @@ "group-not-found": "Gruppe nicht gefunden", "groups": "Gruppen", "groups-can-only-be-set-by-administrators": "Gruppen können nur von Administratoren gesetzt werden", + "manage-groups": "Manage Groups", "user-group": "Benutzergruppe", "user-group-created": "Benutzergruppe angelegt", "user-group-creation-failed": "Anlegen der Benutzergruppe fehlgeschlagen" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Neuen Essensplan erstellen", "dinner-this-week": "Essen diese Woche", "dinner-today": "Heutiges Essen", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Essensplan bearbeiten", "end-date": "Enddatum", "group": "Gruppe (Beta)", "meal-planner": "Essensplaner", "meal-plans": "Essenspläne", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Essensplan angelegt", "mealplan-creation-failed": "Anlegen des Essensplans fehlgeschlagen", "mealplan-deleted": "Essensplan entfernt", "mealplan-deletion-failed": "Entfernen des Essensplans fehlgeschlagen", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Aktualisieren des Essensplans fehlgeschlagen", "mealplan-updated": "Essensplan aktualisiert", "no-meal-plan-defined-yet": "Noch kein Essensplan definiert", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Benutzerdefinierte Seiten", "edit-page": "Seite bearbeiten", + "events": "Events", "first-day-of-week": "Woche beginnt am", "group-settings-updated": "Gruppeneinstellungen aktualisiert", "homepage": { @@ -267,7 +274,6 @@ "latest": "Neueste", "local-api": "Lokale API", "locale-settings": "Spracheinstellungen", - "manage-users": "Benutzer verwalten", "migrations": "Migrationen", "new-page": "Neue Seite", "page-name": "Seitenname", @@ -305,6 +311,14 @@ "theme-updated": "Thema aktualisiert", "warning": "Warnung" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Essensplaner Webhooks", "test-webhooks": "Teste Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "Die unten stehenden URL's erhalten Webhooks welche die Rezeptdaten für den Menüplan am geplanten Tag enthalten. Derzeit werden die Webhooks ausgeführt um", - "webhook-url": "Webhook-URL" + "webhook-url": "Webhook-URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Entfernen des Schlagworts fehlgeschlagen", "tag-update-failed": "Aktualisieren des Schlagworts fehlgeschlagen", "tag-updated": "Schlagwort aktualisiert", - "tags": "Schlagworte" + "tags": "Schlagworte", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Linkname", "login": "Anmeldung", "logout": "Ausloggen", + "manage-users": "Manage Users", "new-password": "Neues Passwort", "new-user": "Neuer Benutzer", "password": "Passwort", @@ -377,6 +394,7 @@ "total-users": "Alle Benutzer", "upload-photo": "Foto hochladen", "use-8-characters-or-more-for-your-password": "Benutze 8 oder mehr Zeichen für das Passwort", + "user": "User", "user-created": "Benutzer angelegt", "user-creation-failed": "Anlegen des Benutzers fehlgeschlagen", "user-deleted": "Benutzer entfernt", diff --git a/frontend/src/locales/messages/el-GR.json b/frontend/src/locales/messages/el-GR.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/el-GR.json +++ b/frontend/src/locales/messages/el-GR.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/es-ES.json b/frontend/src/locales/messages/es-ES.json index d2e35206d..75075006a 100644 --- a/frontend/src/locales/messages/es-ES.json +++ b/frontend/src/locales/messages/es-ES.json @@ -9,6 +9,7 @@ "api-port": "Puerto API", "application-mode": "Modo de Aplicación", "database-type": "Tipo de base de datos", + "database-url": "Database URL", "default-group": "Grupo Predeterminado", "demo": "Versión Demo", "demo-status": "Estado Demo", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "No Demo", "production": "Producción", - "database-url": "Database URL", "version": "Versión" }, "category": { + "category": "Category", "category-created": "Categoría creada", "category-creation-failed": "Error al crear categoría", "category-deleted": "Categoría Eliminada", @@ -28,16 +29,18 @@ "category-filter": "Filtros de Categorías", "category-update-failed": "Error al actualizar categoría", "category-updated": "Categoría actualizada", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Aplicar", "cancel": "Cancelar", + "clear": "Clear", "close": "Cerrar", "confirm": "Confirmar", "create": "Crear", "created": "Created", "current-parenthesis": "(Actual)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Eliminar", "disabled": "Deshabilitado", @@ -53,7 +56,6 @@ "filter": "Filtro", "friday": "Viernes", "get": "Obtener", - "groups": "Grupos", "image": "Imagen", "image-upload-failed": "Error al subir la imagen", "import": "Importar", @@ -61,11 +63,12 @@ "link": "Enlace", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Si" }, @@ -108,6 +110,7 @@ "group-not-found": "Grupo no encontrado", "groups": "Grupos", "groups-can-only-be-set-by-administrators": "Los grupos sólo pueden ser establecidos por administradores", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Editar Plan de Comida", "end-date": "Fecha de Finalización", "group": "Grupo (Beta)", "meal-planner": "Plan de Comidas", "meal-plans": "Planes de Comidas", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Plan de Comida creado", "mealplan-creation-failed": "Error al crear Plan de Comida", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/fi-FI.json b/frontend/src/locales/messages/fi-FI.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/fi-FI.json +++ b/frontend/src/locales/messages/fi-FI.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/fr-FR.json b/frontend/src/locales/messages/fr-FR.json index 0d53facac..a0ae4fea3 100644 --- a/frontend/src/locales/messages/fr-FR.json +++ b/frontend/src/locales/messages/fr-FR.json @@ -9,6 +9,7 @@ "api-port": "Port de l'API", "application-mode": "Mode de l'application", "database-type": "Type de base de données", + "database-url": "URL de la base de données", "default-group": "Groupe par défaut", "demo": "Oui", "demo-status": "Mode démo", @@ -17,10 +18,10 @@ "download-recipe-json": "Dernier JSON récupéré", "not-demo": "Non", "production": "Production", - "database-url": "URL de la base de données", "version": "Version" }, "category": { + "category": "Catégorie", "category-created": "Catégorie créée", "category-creation-failed": "La création de la catégorie a échoué", "category-deleted": "Catégorie supprimée", @@ -28,16 +29,18 @@ "category-filter": "Filtre par catégories", "category-update-failed": "La mise à jour de la catégorie a échoué", "category-updated": "Catégorie mise à jour", - "category": "Catégorie" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Appliquer", "cancel": "Annuler", + "clear": "Clear", "close": "Fermer", "confirm": "Confirmer", "create": "Créer", "created": "Créé", "current-parenthesis": "(Actuel)", + "custom": "Custom", "dashboard": "Tableau de bord", "delete": "Supprimer", "disabled": "Désactivé", @@ -53,7 +56,6 @@ "filter": "Filtrer", "friday": "Vendredi", "get": "Envoyer", - "groups": "Groupes", "image": "Image", "image-upload-failed": "Le téléchargement de l'image a échoué", "import": "Importer", @@ -61,11 +63,12 @@ "link": "Lien", "monday": "Lundi", "name": "Nom", + "new": "New", "no": "Non", "ok": "OK", "options": "Options :", - "rating": "Note", "random": "Aléatoire", + "rating": "Note", "recent": "Récent", "recipes": "Recettes", "rename-object": "Renommer {0}", @@ -73,13 +76,13 @@ "saturday": "Samedi", "save": "Sauvegarder", "settings": "Paramètres", + "shuffle": "Aléatoire", "sort": "Trier", "sort-alphabetically": "Alphabétique", "status": "Statut", "submit": "Soumettre", "success-count": "Succès : {count}", "sunday": "Dimanche", - "shuffle": "Aléatoire", "templates": "Modèles :", "themes": "Thèmes", "thursday": "Jeudi", @@ -89,7 +92,6 @@ "updated": "Mis à jour", "upload": "Importer", "url": "URL", - "users": "Utilisateurs", "wednesday": "Mercredi", "yes": "Oui" }, @@ -108,6 +110,7 @@ "group-not-found": "Groupe non trouvé", "groups": "Groupes", "groups-can-only-be-set-by-administrators": "Les groupes peuvent uniquement être assignés par les administrateurs", + "manage-groups": "Manage Groups", "user-group": "Groupe utilisateur", "user-group-created": "Groupe d'utilisateurs créé", "user-group-creation-failed": "La création du groupe d'utilisateur a échoué" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Créer un nouveau menu", "dinner-this-week": "Au menu cette semaine", "dinner-today": "Menu du jour", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Modifier le menu", "end-date": "Date de fin", "group": "Regrouper (Bêta)", "meal-planner": "Menus", "meal-plans": "Menus", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Menu créé", "mealplan-creation-failed": "La création du menu a échoué", "mealplan-deleted": "Menu supprimé", "mealplan-deletion-failed": "La suppression du menu a échoué", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "La mise à jour du menu a échoué", "mealplan-updated": "Menu mis à jour", "no-meal-plan-defined-yet": "Aucun menu planifié", @@ -254,6 +260,7 @@ "current": "Version :", "custom-pages": "Pages personnalisées", "edit-page": "Modifier la page", + "events": "Events", "first-day-of-week": "Premier jour de la semaine", "group-settings-updated": "Paramètres du groupe mis à jour", "homepage": { @@ -267,7 +274,6 @@ "latest": "Dernière", "local-api": "API locale", "locale-settings": "Paramètres régionaux", - "manage-users": "Utilisateurs", "migrations": "Migrations", "new-page": "Nouvelle page", "page-name": "Nom de la page", @@ -305,6 +311,14 @@ "theme-updated": "Thème mis à jour", "warning": "Avertissement" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assigner tout", "bulk-assign": "Assigner en masse", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Webhooks des menus", "test-webhooks": "Tester les webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "Les liens dans cette liste recevront les webhooks contenant les recettes pour le menu du jour. Actuellement, les webhooks se lancent à", - "webhook-url": "Lien du webhook" + "webhook-url": "Lien du webhook", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "La suppression du mot-clé a échoué", "tag-update-failed": "La mise à jour du mot-clé a échoué", "tag-updated": "Mot-clé mis à jour", - "tags": "Mots-clés" + "tags": "Mots-clés", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Nom du lien", "login": "Connexion", "logout": "Déconnexion", + "manage-users": "Manage Users", "new-password": "Nouveau mot de passe", "new-user": "Nouvel utilisateur", "password": "Mot de passe", @@ -377,6 +394,7 @@ "total-users": "Nombre d'utilisateurs", "upload-photo": "Importer une photo", "use-8-characters-or-more-for-your-password": "Utiliser au moins 8 caractères pour votre mot de passe", + "user": "User", "user-created": "Utilisateur créé", "user-creation-failed": "La création de l'utilisateur a échoué", "user-deleted": "Utilisateur supprimé", diff --git a/frontend/src/locales/messages/he-IL.json b/frontend/src/locales/messages/he-IL.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/he-IL.json +++ b/frontend/src/locales/messages/he-IL.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/hu-HU.json b/frontend/src/locales/messages/hu-HU.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/hu-HU.json +++ b/frontend/src/locales/messages/hu-HU.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/it-IT.json b/frontend/src/locales/messages/it-IT.json index d62fc3ccc..562cad094 100644 --- a/frontend/src/locales/messages/it-IT.json +++ b/frontend/src/locales/messages/it-IT.json @@ -9,6 +9,7 @@ "api-port": "Porta API", "application-mode": "Modalità", "database-type": "Tipo Database", + "database-url": "URL Database", "default-group": "Gruppo Predefinito", "demo": "Demo", "demo-status": "Stato Demo", @@ -17,10 +18,10 @@ "download-recipe-json": "Ultimo JSON", "not-demo": "Non Demo", "production": "Produzione", - "database-url": "URL Database", "version": "Versione" }, "category": { + "category": "Categoria", "category-created": "Categoria creata", "category-creation-failed": "Creazione categoria fallita", "category-deleted": "Categoria Eliminata", @@ -28,16 +29,18 @@ "category-filter": "Filtro Categoria", "category-update-failed": "Aggiornamento categoria fallito", "category-updated": "Categoria aggiornata", - "category": "Categoria" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Applica", "cancel": "Cancella", + "clear": "Clear", "close": "Chiudi", "confirm": "Conferma", "create": "Crea", "created": "Created", "current-parenthesis": "(Corrente)", + "custom": "Custom", "dashboard": "Pannello di controllo", "delete": "Elimina", "disabled": "Disabilitato", @@ -53,7 +56,6 @@ "filter": "Filtro", "friday": "Venerdì", "get": "Ottieni", - "groups": "Gruppi", "image": "Immagine", "image-upload-failed": "Caricamento immagine fallito", "import": "Importa", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Lunedì", "name": "Nome", + "new": "New", "no": "No", "ok": "OK", "options": "Opzioni:", - "rating": "Rating", "random": "Casuale", + "rating": "Rating", "recent": "Recente", "recipes": "Ricette", "rename-object": "Rinomina {0}", @@ -73,13 +76,13 @@ "saturday": "Sabato", "save": "Salva", "settings": "Impostazioni", + "shuffle": "Shuffle", "sort": "Ordina", "sort-alphabetically": "Alphabetical", "status": "Stato", "submit": "Invia", "success-count": "Successo: {count}", "sunday": "Domenica", - "shuffle": "Shuffle", "templates": "Modelli:", "themes": "Temi", "thursday": "Giovedì", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Carica", "url": "URL", - "users": "Utenti", "wednesday": "Mercoledì", "yes": "Sì" }, @@ -108,6 +110,7 @@ "group-not-found": "Gruppo non trovato", "groups": "Gruppi", "groups-can-only-be-set-by-administrators": "I gruppi possono essere impostati solo dagli amministratori", + "manage-groups": "Manage Groups", "user-group": "Gruppo Utente", "user-group-created": "Gruppo Utente Creato", "user-group-creation-failed": "Creazione Gruppo Utente Fallita" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Crea un Nuovo Piano Alimentare", "dinner-this-week": "Cena Questa Settimana", "dinner-today": "Cena Oggi", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Modifica Piano Alimentare", "end-date": "Data Fine", "group": "Gruppo (Beta)", "meal-planner": "Piano Alimentare", "meal-plans": "Piani Alimentari", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Piano allimentare creato", "mealplan-creation-failed": "Creazione piano alimentare fallita", "mealplan-deleted": "Piano Alimentare Eliminato", "mealplan-deletion-failed": "Eliminazione piano alimentare fallita", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Aggiornamento piano alimentare fallito", "mealplan-updated": "Piano Alimentare Aggiornato", "no-meal-plan-defined-yet": "Ancora nessun piano alimentare definito", @@ -254,6 +260,7 @@ "current": "Versione:", "custom-pages": "Pagine Personalizzate", "edit-page": "Modifica Pagina", + "events": "Events", "first-day-of-week": "Primo giorno della settimana", "group-settings-updated": "Impostazioni Gruppo Aggiornate", "homepage": { @@ -267,7 +274,6 @@ "latest": "Recenti", "local-api": "API Locale", "locale-settings": "Impostazioni regionali", - "manage-users": "Gestisci Utenti", "migrations": "Migrazioni", "new-page": "Nuova Pagina", "page-name": "Nome Pagina", @@ -305,6 +311,14 @@ "theme-updated": "Tema aggiornato", "warning": "Avviso" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assegna Tutto", "bulk-assign": "Assegna Bulk", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Webhooks Pianificatore Alimentare", "test-webhooks": "Testa Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "Gli URL elencati sotto riceveranno dei webhooks contenenti i dati delle ricette per il piano alimentare nel giorno programmato. I Webhooks correnti verrano eseguiti alle", - "webhook-url": "URL Webhook" + "webhook-url": "URL Webhook", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Eliminazione tag fallita", "tag-update-failed": "Aggiornamento tag fallito", "tag-updated": "Tag aggiornato", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Amministratore", @@ -364,6 +380,7 @@ "link-name": "Link Nome", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "Nuova Password", "new-user": "Nuovo Utente", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Totale Utenti", "upload-photo": "Carica Foto", "use-8-characters-or-more-for-your-password": "Usa 8 caratteri o piú per la password", + "user": "User", "user-created": "Utente creato", "user-creation-failed": "Creazione utente fallita", "user-deleted": "Utente eliminato", diff --git a/frontend/src/locales/messages/ja-JP.json b/frontend/src/locales/messages/ja-JP.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/ja-JP.json +++ b/frontend/src/locales/messages/ja-JP.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/ko-KR.json b/frontend/src/locales/messages/ko-KR.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/ko-KR.json +++ b/frontend/src/locales/messages/ko-KR.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/nl-NL.json b/frontend/src/locales/messages/nl-NL.json index cda0bbda2..a2ec07566 100644 --- a/frontend/src/locales/messages/nl-NL.json +++ b/frontend/src/locales/messages/nl-NL.json @@ -9,6 +9,7 @@ "api-port": "API Poort", "application-mode": "Applicatie modus", "database-type": "Databasetype", + "database-url": "Database URL", "default-group": "Standaardgroep", "demo": "Demo", "demo-status": "Demo status", @@ -17,10 +18,10 @@ "download-recipe-json": "Laatste Ingelezen JSON", "not-demo": "Niet Demo", "production": "Productie", - "database-url": "Database URL", "version": "Versie" }, "category": { + "category": "Categorie", "category-created": "Categorie aangemaakt", "category-creation-failed": "Categorie aanmaken mislukt", "category-deleted": "Categorie Verwijderd", @@ -28,16 +29,18 @@ "category-filter": "Categorie Filter", "category-update-failed": "Categorie bijwerken mislukt", "category-updated": "Categorie bijgewerkt", - "category": "Categorie" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Toepassen", "cancel": "Annuleren", + "clear": "Clear", "close": "Sluiten", "confirm": "Bevestigen", "create": "Maak", "created": "Aangemaakt op", "current-parenthesis": "(Huidig)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Verwijderen", "disabled": "Uitgeschakeld", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Vrijdag", "get": "Haal op", - "groups": "Groepen", "image": "Afbeelding", "image-upload-failed": "Afbeelding uploaden mislukt", "import": "Importeren", @@ -61,11 +63,12 @@ "link": "Koppeling", "monday": "Maandag", "name": "Naam", + "new": "New", "no": "Nee", "ok": "Ok", "options": "Opties:", - "rating": "Beoordeling", "random": "Willekeurig", + "rating": "Beoordeling", "recent": "Recent(e)", "recipes": "Recepten", "rename-object": "Hernoem {0}", @@ -73,13 +76,13 @@ "saturday": "Zaterdag", "save": "Opslaan", "settings": "Instellingen", + "shuffle": "Willekeurig", "sort": "Sorteren", "sort-alphabetically": "Alfabetisch", "status": "Status", "submit": "Verzenden", "success-count": "Succes: {count}", "sunday": "Zondag", - "shuffle": "Willekeurig", "templates": "Sjablonen:", "themes": "Thema's", "thursday": "Donderdag", @@ -89,7 +92,6 @@ "updated": "Bijgewerkt", "upload": "Uploaden", "url": "URL", - "users": "Gebruikers", "wednesday": "Woensdag", "yes": "Ja" }, @@ -108,6 +110,7 @@ "group-not-found": "Groep niet gevonden", "groups": "Groepen", "groups-can-only-be-set-by-administrators": "Groepen kunnen alleen worden ingesteld door beheerders", + "manage-groups": "Manage Groups", "user-group": "Gebruikersgroep", "user-group-created": "Gebruikersgroep aangemaakt", "user-group-creation-failed": "Aanmaken gebruikersgroep is mislukt" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Maak een nieuw Maaltijdplan", "dinner-this-week": "Het avondeten deze week", "dinner-today": "Het avondeten vandaag", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Maaltijdplan bewerken", "end-date": "Einddatum", "group": "Groep (Beta)", "meal-planner": "Maaltijd planner", "meal-plans": "Maaltijd plannen", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Maaltijdplan aangemaakt", "mealplan-creation-failed": "Maaltijdplan aanmaken mislukt", "mealplan-deleted": "Maaltijdplan verwijderd", "mealplan-deletion-failed": "Maaltijdplan verwijderen mislukt", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Maaltijdplan bijwerken mislukt", "mealplan-updated": "Maaltijdplan bijgewerkt", "no-meal-plan-defined-yet": "Nog geen maaltijdplan gedefinieerd", @@ -254,6 +260,7 @@ "current": "Versie:", "custom-pages": "Aangepaste paginas", "edit-page": "Pagina Bewerken", + "events": "Events", "first-day-of-week": "Eerste dag van de week", "group-settings-updated": "Groepsinstellingen bijgewerkt", "homepage": { @@ -267,7 +274,6 @@ "latest": "Laatste", "local-api": "Lokale API", "locale-settings": "Lokale instellingen", - "manage-users": "Beheer gebruikers", "migrations": "Migraties", "new-page": "Nieuwe pagina", "page-name": "Pagina naam", @@ -305,6 +311,14 @@ "theme-updated": "Thema bijgewerkt", "warning": "Waarschuwing" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Alles toewijzen", "bulk-assign": "Bulk toewijzen", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Maaltijdplanner Webhooks", "test-webhooks": "Webhooks testen", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "De onderstaande URL's ontvangen webhooks met receptgegevens voor het maaltijdplan op de geplande dag. Momenteel zullen Webhooks uitvoeren op", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Label verwijderen mislukt", "tag-update-failed": "Label update mislukt", "tag-updated": "Label bijgewerkt", - "tags": "Labels" + "tags": "Labels", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Beheerder", @@ -364,6 +380,7 @@ "link-name": "Koppeling Naam", "login": "Inloggen", "logout": "Uitloggen", + "manage-users": "Manage Users", "new-password": "Nieuw Wachtwoord", "new-user": "Nieuwe Gebruiker", "password": "Wachtwoord", @@ -377,6 +394,7 @@ "total-users": "Totaal Gebruikers", "upload-photo": "Foto uploaden", "use-8-characters-or-more-for-your-password": "Gebruik 8 tekens of meer voor uw wachtwoord", + "user": "User", "user-created": "Gebruiker aangemaakt", "user-creation-failed": "Aanmaken van gebruiker mislukt", "user-deleted": "Gebruiker verwijderd", diff --git a/frontend/src/locales/messages/no-NO.json b/frontend/src/locales/messages/no-NO.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/no-NO.json +++ b/frontend/src/locales/messages/no-NO.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/pl-PL.json b/frontend/src/locales/messages/pl-PL.json index aa7bfec4d..e082e3436 100644 --- a/frontend/src/locales/messages/pl-PL.json +++ b/frontend/src/locales/messages/pl-PL.json @@ -9,105 +9,108 @@ "api-port": "Port API", "application-mode": "Tryb aplikacji", "database-type": "Rodzaj bazy danych", + "database-url": "URL bazy danych", "default-group": "Domyślna grupa", "demo": "Demo", "demo-status": "Status demo", "development": "Wersja testowa", - "download-log": "Download Log", + "download-log": "Pobierz dziennik", "download-recipe-json": "Last Scraped JSON", "not-demo": "Nie demo", "production": "Produkcyjna", - "database-url": "Database URL", "version": "Wersja" }, "category": { - "category-created": "Category created", - "category-creation-failed": "Category creation failed", - "category-deleted": "Category Deleted", - "category-deletion-failed": "Category deletion failed", - "category-filter": "Category Filter", - "category-update-failed": "Category update failed", - "category-updated": "Category updated", - "category": "Category" + "category": "Kategoria", + "category-created": "Kategoria stworzona", + "category-creation-failed": "Błąd podczas tworzenia kategorii", + "category-deleted": "Usunięto kategorię", + "category-deletion-failed": "Usunięcie kategorii nie powiodło się", + "category-filter": "Filtr kategorii", + "category-update-failed": "Aktualizacja kategorii nie powiodła się", + "category-updated": "Zaktualizowano kategorię", + "uncategorized-count": "Nieskategoryzowane {count}" }, "general": { "apply": "Zastosuj", "cancel": "Anuluj", + "clear": "Wyczyść", "close": "Zamknij", "confirm": "Potwierdź", "create": "Utwórz", - "created": "Created", + "created": "Utworzono", "current-parenthesis": "(Bieżący)", - "dashboard": "Dashboard", + "custom": "Niestandardowy", + "dashboard": "Kokpit", "delete": "Usuń", "disabled": "Wyłączone", "download": "Pobierz", "edit": "Edytuj", "enabled": "Włączone", - "exception": "Exception", - "failed-count": "Failed: {count}", - "failure-uploading-file": "Failure uploading file", + "exception": "Wyjątek", + "failed-count": "Niepowodzenie: {count}", + "failure-uploading-file": "Błąd podczas przesyłania pliku", "field-required": "Pole jest wymagane", - "file-folder-not-found": "File/folder not found", - "file-uploaded": "File uploaded", + "file-folder-not-found": "Nie znaleziono pliku/folderu", + "file-uploaded": "Plik przesłany", "filter": "Filtruj", "friday": "Piątek", "get": "Zastosuj", - "groups": "Grupy", - "image": "Image", - "image-upload-failed": "Image upload failed", + "image": "Zdjęcie", + "image-upload-failed": "Przesyłanie zdjęcia nie powiodło się", "import": "Importuj", - "keyword": "Keyword", + "keyword": "Słowo kluczowe", "link": "Link", "monday": "Poniedziałek", "name": "Nazwa", + "new": "Nowy", "no": "Nie", "ok": "OK", - "options": "Options:", - "rating": "Rating", + "options": "Opcje:", "random": "Losowa", + "rating": "Ocena", "recent": "Najnowsze", "recipes": "Przepisy", - "rename-object": "Rename {0}", + "rename-object": "Zmień nazwę {0}", "reset": "Resetuj", "saturday": "Sobota", "save": "Zapisz", "settings": "Ustawienia", + "shuffle": "Pomieszaj", "sort": "Sortuj", - "sort-alphabetically": "Alphabetical", - "status": "Status", + "sort-alphabetically": "Alfabetyczne", + "status": "Stan", "submit": "Zatwierdź", - "success-count": "Success: {count}", + "success-count": "Sukces: {count}", "sunday": "Niedziela", - "shuffle": "Shuffle", - "templates": "Templates:", + "templates": "Szablony:", "themes": "Motywy", "thursday": "Czwartek", "token": "Token", "tuesday": "Wtorek", "update": "Uaktualnij", - "updated": "Updated", + "updated": "Zaktualizowano", "upload": "Prześlij", "url": "URL", - "users": "Użytkownicy", "wednesday": "Środa", "yes": "Tak" }, "group": { - "are-you-sure-you-want-to-delete-the-group": "Are you sure you want to delete {groupName}?", - "cannot-delete-default-group": "Cannot delete default group", - "cannot-delete-group-with-users": "Cannot delete group with users", - "confirm-group-deletion": "Confirm Group Deletion", - "create-group": "Create Group", - "error-updating-group": "Error updating group", - "group": "Group", - "group-deleted": "Group deleted", - "group-deletion-failed": "Group deletion failed", - "group-id-with-value": "Group ID: {groupID}", - "group-name": "Group Name", - "group-not-found": "Group not found", - "groups": "Groups", - "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "are-you-sure-you-want-to-delete-the-group": "Czy na pewno chcesz usunąć {groupName}?", + "cannot-delete-default-group": "Nie można usunąć domyślnej grupy", + "cannot-delete-group-with-users": "Nie można usunąć grupy w której są użytkownicy", + "confirm-group-deletion": "Potwierdź usunięcie grupy", + "create-group": "Utwórz Grupę", + "error-updating-group": "Błąd podczas aktualizacji grupy", + "group": "Grupa", + "group-deleted": "Grupa została usunięta", + "group-deletion-failed": "Usunięcie grupy nie powiodło się", + "group-id-with-value": "ID grupy: {groupID}", + "group-name": "Nazwa grupy", + "group-not-found": "Nie znaleziono grupy", + "groups": "Grupy", + "groups-can-only-be-set-by-administrators": "Grupy mogą być ustawiane tylko przez administratorów", + "manage-groups": "Zarządzaj grupami", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Utwórz nowy plan posiłku", "dinner-this-week": "Obiad w tym tygodniu", "dinner-today": "Obiad dziś", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edytuj plan posiłku", "end-date": "Data zakończenia", "group": "Grupa (Beta)", "meal-planner": "Plan posiłków", "meal-plans": "Plany posiłku", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Wersja:", "custom-pages": "Niestandardowe strony", "edit-page": "Edytuj stronę", + "events": "Events", "first-day-of-week": "Pierwszy dzień tygodnia", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Najnowsza", "local-api": "Lokalne API", "locale-settings": "Ustawienia językowe", - "manage-users": "Zarządzaj użytkownikami", "migrations": "Migracje", "new-page": "Nowa Strona", "page-name": "Nazwa strony", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Ostrzeżenie" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Przypisz wszystkie", "bulk-assign": "Masowe przypisanie", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Webhooki planera posiłków", "test-webhooks": "Testuj webhooki", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "Odnośniki poniżej otrzymają webhook zawierający dane o przepisie dla danego dnia. Aktualnie webhooki zostanę wykonane o", - "webhook-url": "URL webhooka" + "webhook-url": "URL webhooka", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Administrator", @@ -364,6 +380,7 @@ "link-name": "Nazwa linku", "login": "Login", "logout": "Wyloguj się", + "manage-users": "Manage Users", "new-password": "Nowe Hasło", "new-user": "Nowy użytkownik", "password": "Hasło", @@ -377,6 +394,7 @@ "total-users": "Ilość użytkowników", "upload-photo": "Prześlij zdjęcie", "use-8-characters-or-more-for-your-password": "Hasło musi składać się z 8 lub więcej znaków", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/pt-BR.json b/frontend/src/locales/messages/pt-BR.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/pt-BR.json +++ b/frontend/src/locales/messages/pt-BR.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/pt-PT.json b/frontend/src/locales/messages/pt-PT.json index 1dcaced01..1636f7652 100644 --- a/frontend/src/locales/messages/pt-PT.json +++ b/frontend/src/locales/messages/pt-PT.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancelar", + "clear": "Clear", "close": "Fechar", "confirm": "Confirmar", "create": "Criar", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Eliminar", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Importar", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Nome", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Aleatório", + "rating": "Rating", "recent": "Recent", "recipes": "Receitas", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Guardar", "settings": "Definições", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submeter", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Temas", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Enviar", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Criar novo Plano de Refeições", "dinner-this-week": "Jantar esta semana", "dinner-today": "Jantar Hoje", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Editar Plano de Refeições", "end-date": "Data de Fim", "group": "Group (Beta)", "meal-planner": "Planeador de Refeições", "meal-plans": "Planos de Refeições", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Versão:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Mais Recente", "local-api": "API Local", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Aviso" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Webhooks do Organizador de Refeições", "test-webhooks": "Webhooks de Teste", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "Os URLs apresentados abaixo receberão webhooks que contêm os dados da receita para o plano de refeições no dia marcado. Atualmente, os webhooks serão executados a ", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/ro-RO.json b/frontend/src/locales/messages/ro-RO.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/ro-RO.json +++ b/frontend/src/locales/messages/ro-RO.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/ru-RU.json b/frontend/src/locales/messages/ru-RU.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/ru-RU.json +++ b/frontend/src/locales/messages/ru-RU.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/sr-SP.json b/frontend/src/locales/messages/sr-SP.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/sr-SP.json +++ b/frontend/src/locales/messages/sr-SP.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/sv-SE.json b/frontend/src/locales/messages/sv-SE.json index 20ffddbcd..4ce3c1e54 100644 --- a/frontend/src/locales/messages/sv-SE.json +++ b/frontend/src/locales/messages/sv-SE.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Avbryt", + "clear": "Clear", "close": "Stäng", "confirm": "Confirm", "create": "Skapa", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Ta bort", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Importera", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Namn", + "new": "New", "no": "No", "ok": "Ok", "options": "Options:", - "rating": "Rating", "random": "Slumpa", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Spara", "settings": "Inställningar", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Skicka", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Skapa en ny måltidsplan", "dinner-this-week": "Veckans middagar", "dinner-today": "Middag idag", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Redigera måltidsplan", "end-date": "Slutdatum", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Måltidsplaner", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Senaste", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Varning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Webhooks för denna måltidsplan", "test-webhooks": "Testa Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "Följande URLer kommer att mottaga webhooks med receptdata för dagens planerade måltid. Datan kommer att skickas klockan { time }", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Lösenord", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/tr-TR.json b/frontend/src/locales/messages/tr-TR.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/tr-TR.json +++ b/frontend/src/locales/messages/tr-TR.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/uk-UA.json b/frontend/src/locales/messages/uk-UA.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/uk-UA.json +++ b/frontend/src/locales/messages/uk-UA.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/vi-VN.json b/frontend/src/locales/messages/vi-VN.json index d64ebf629..7330f3846 100644 --- a/frontend/src/locales/messages/vi-VN.json +++ b/frontend/src/locales/messages/vi-VN.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "Cancel", + "clear": "Clear", "close": "Close", "confirm": "Confirm", "create": "Create", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "Delete", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "Import", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "Name", + "new": "New", "no": "No", "ok": "OK", "options": "Options:", - "rating": "Rating", "random": "Random", + "rating": "Rating", "recent": "Recent", "recipes": "Recipes", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "Save", "settings": "Settings", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "Submit", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "Themes", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "Upload", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "Create a New Meal Plan", "dinner-this-week": "Dinner This Week", "dinner-today": "Dinner Today", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "Edit Meal Plan", "end-date": "End Date", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "Meal Plans", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "Version:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "Latest", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "Meal Planner Webhooks", "test-webhooks": "Test Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "The URLs listed below will receive webhooks containing the recipe data for the meal plan on it's scheduled day. Currently Webhooks will execute at", - "webhook-url": "Webhook URL" + "webhook-url": "Webhook URL", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "Password", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/zh-CN.json b/frontend/src/locales/messages/zh-CN.json index 008ed214b..01291e63d 100644 --- a/frontend/src/locales/messages/zh-CN.json +++ b/frontend/src/locales/messages/zh-CN.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "应用", "cancel": "取消", + "clear": "Clear", "close": "关闭", "confirm": "确定", "create": "创建", "created": "Created", "current-parenthesis": "(当前)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "删除", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "筛选", "friday": "Friday", "get": "Get", - "groups": "群组", "image": "Image", "image-upload-failed": "Image upload failed", "import": "导入", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "名称", + "new": "New", "no": "否", "ok": "好的", "options": "Options:", - "rating": "Rating", "random": "随机", + "rating": "Rating", "recent": "最近", "recipes": "食谱", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "保存", "settings": "设定", + "shuffle": "Shuffle", "sort": "排序", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "提交", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "布景主题", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "上传", "url": "URL", - "users": "用户", "wednesday": "Wednesday", "yes": "是" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "创建一个新的用餐计划", "dinner-this-week": "本周晚餐", "dinner-today": "今日晚餐", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "编辑用餐计划", "end-date": "结束日期", "group": "Group (Beta)", "meal-planner": "用餐计划", "meal-plans": "用餐计划", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "版本号:", "custom-pages": "自定义页面", "edit-page": "编辑页面", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "最新版本", "local-api": "本地API", "locale-settings": "Locale settings", - "manage-users": "管理用户", "migrations": "迁移", "new-page": "新建页面", "page-name": "页面名称", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "Warning(警告)" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "用餐计划器Webhooks", "test-webhooks": "测试Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "下方列出的网址将在预定日期接收到有关用餐计划的食谱资料。Webhooks执行将在", - "webhook-url": "Webhook网址" + "webhook-url": "Webhook网址", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "管理员", @@ -364,6 +380,7 @@ "link-name": "链接名", "login": "登录", "logout": "登出", + "manage-users": "Manage Users", "new-password": "新密码", "new-user": "新建用户", "password": "密码", @@ -377,6 +394,7 @@ "total-users": "用户总数", "upload-photo": "上传照片", "use-8-characters-or-more-for-your-password": "请设置密码字符为8个或更多", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted", diff --git a/frontend/src/locales/messages/zh-TW.json b/frontend/src/locales/messages/zh-TW.json index 540075be6..9ac2c9bfe 100644 --- a/frontend/src/locales/messages/zh-TW.json +++ b/frontend/src/locales/messages/zh-TW.json @@ -9,6 +9,7 @@ "api-port": "API Port", "application-mode": "Application Mode", "database-type": "Database Type", + "database-url": "Database URL", "default-group": "Default Group", "demo": "Demo", "demo-status": "Demo Status", @@ -17,10 +18,10 @@ "download-recipe-json": "Last Scraped JSON", "not-demo": "Not Demo", "production": "Production", - "database-url": "Database URL", "version": "Version" }, "category": { + "category": "Category", "category-created": "Category created", "category-creation-failed": "Category creation failed", "category-deleted": "Category Deleted", @@ -28,16 +29,18 @@ "category-filter": "Category Filter", "category-update-failed": "Category update failed", "category-updated": "Category updated", - "category": "Category" + "uncategorized-count": "Uncategorized {count}" }, "general": { "apply": "Apply", "cancel": "取消", + "clear": "Clear", "close": "關閉", "confirm": "確定", "create": "創建", "created": "Created", "current-parenthesis": "(Current)", + "custom": "Custom", "dashboard": "Dashboard", "delete": "删除", "disabled": "Disabled", @@ -53,7 +56,6 @@ "filter": "Filter", "friday": "Friday", "get": "Get", - "groups": "Groups", "image": "Image", "image-upload-failed": "Image upload failed", "import": "導入", @@ -61,11 +63,12 @@ "link": "Link", "monday": "Monday", "name": "名稱", + "new": "New", "no": "No", "ok": "好的", "options": "Options:", - "rating": "Rating", "random": "隨機", + "rating": "Rating", "recent": "Recent", "recipes": "食譜", "rename-object": "Rename {0}", @@ -73,13 +76,13 @@ "saturday": "Saturday", "save": "保存", "settings": "設定", + "shuffle": "Shuffle", "sort": "Sort", "sort-alphabetically": "Alphabetical", "status": "Status", "submit": "提交", "success-count": "Success: {count}", "sunday": "Sunday", - "shuffle": "Shuffle", "templates": "Templates:", "themes": "佈景主題", "thursday": "Thursday", @@ -89,7 +92,6 @@ "updated": "Updated", "upload": "上傳", "url": "URL", - "users": "Users", "wednesday": "Wednesday", "yes": "Yes" }, @@ -108,6 +110,7 @@ "group-not-found": "Group not found", "groups": "Groups", "groups-can-only-be-set-by-administrators": "Groups can only be set by administrators", + "manage-groups": "Manage Groups", "user-group": "User Group", "user-group-created": "User Group Created", "user-group-creation-failed": "User Group Creation Failed" @@ -116,15 +119,18 @@ "create-a-new-meal-plan": "創建一個新的用餐計劃", "dinner-this-week": "本週晚餐", "dinner-today": "今日晚餐", + "dinner-tonight": "DINNER TONIGHT", "edit-meal-plan": "編輯用餐計劃", "end-date": "結束日期", "group": "Group (Beta)", "meal-planner": "Meal Planner", "meal-plans": "用餐計劃", + "mealplan-categories": "MEALPLAN CATEGORIES", "mealplan-created": "Mealplan created", "mealplan-creation-failed": "Mealplan creation failed", "mealplan-deleted": "Mealplan Deleted", "mealplan-deletion-failed": "Mealplan deletion failed", + "mealplan-settings": "Mealplan Settings", "mealplan-update-failed": "Mealplan update failed", "mealplan-updated": "Mealplan Updated", "no-meal-plan-defined-yet": "No meal plan defined yet", @@ -254,6 +260,7 @@ "current": "版本號:", "custom-pages": "Custom Pages", "edit-page": "Edit Page", + "events": "Events", "first-day-of-week": "First day of the week", "group-settings-updated": "Group Settings Updated", "homepage": { @@ -267,7 +274,6 @@ "latest": "最新版本:", "local-api": "Local API", "locale-settings": "Locale settings", - "manage-users": "Manage Users", "migrations": "Migrations", "new-page": "New Page", "page-name": "Page Name", @@ -305,6 +311,14 @@ "theme-updated": "Theme updated", "warning": "警告(Warning)" }, + "token": { + "active-tokens": "ACTIVE TOKENS", + "api-token": "API Token", + "api-tokens": "API Tokens", + "copy-this-token-for-use-with-an-external-application-this-token-will-not-be-viewable-again": "Copy this token for use with an external application. This token will not be viewable again.", + "create-an-api-token": "Create an API Token", + "token-name": "Token Name" + }, "toolbox": { "assign-all": "Assign All", "bulk-assign": "Bulk Assign", @@ -319,7 +333,8 @@ "meal-planner-webhooks": "用餐計劃器Webhooks", "test-webhooks": "測試Webhooks", "the-urls-listed-below-will-recieve-webhooks-containing-the-recipe-data-for-the-meal-plan-on-its-scheduled-day-currently-webhooks-will-execute-at": "下方列出的網址將在預定日期接收到有關用餐計劃的食譜資料。Webhooks將在{ time }執行", - "webhook-url": "Webhook網址" + "webhook-url": "Webhook網址", + "webhooks-caps": "WEBHOOKS" } }, "signup": { @@ -340,7 +355,8 @@ "tag-deletion-failed": "Tag deletion failed", "tag-update-failed": "Tag update failed", "tag-updated": "Tag updated", - "tags": "Tags" + "tags": "Tags", + "untagged-count": "Untagged {count}" }, "user": { "admin": "Admin", @@ -364,6 +380,7 @@ "link-name": "Link Name", "login": "Login", "logout": "Logout", + "manage-users": "Manage Users", "new-password": "New Password", "new-user": "New User", "password": "密碼", @@ -377,6 +394,7 @@ "total-users": "Total Users", "upload-photo": "Upload Photo", "use-8-characters-or-more-for-your-password": "Use 8 characters or more for your password", + "user": "User", "user-created": "User created", "user-creation-failed": "User creation failed", "user-deleted": "User deleted",