diff --git a/docs/install/docker.md b/docs/install/docker.md index 60fe1f709..fdf2dab90 100644 --- a/docs/install/docker.md +++ b/docs/install/docker.md @@ -52,9 +52,9 @@ The main, and also recommended, installation option is to install this applicati 1. Choose your `docker-compose.yml` from the examples below. 2. Download the `.env` configuration file with `wget`, then **edit it accordingly** (you NEED to set `SECRET_KEY` and `POSTGRES_PASSWORD`). - ```shell - wget https://raw.githubusercontent.com/vabene1111/recipes/develop/.env.template -O .env - ``` + ```shell + wget https://raw.githubusercontent.com/vabene1111/recipes/develop/.env.template -O .env + ``` 3. Start your container using `docker-compose up -d`. ### Plain diff --git a/requirements.txt b/requirements.txt index dc2849d25..4a8a33747 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,22 +1,22 @@ -Django==3.2.10 -cryptography==36.0.0 +Django==3.2.11 +cryptography==36.0.1 django-annoying==0.10.6 django-autocomplete-light==3.8.2 django-cleanup==5.2.0 django-crispy-forms==1.13.0 django-filter==21.1 django-tables2==2.4.1 -djangorestframework==3.12.4 +djangorestframework==3.13.1 drf-writable-nested==0.6.3 bleach==4.1.0 bleach-allowlist==1.0.3 gunicorn==20.1.0 -lxml==4.6.5 +lxml==4.7.1 Markdown==3.3.6 -Pillow==8.4.0 -psycopg2-binary==2.9.2 +Pillow==9.0.0 +psycopg2-binary==2.9.3 python-dotenv==0.19.2 -requests==2.26.0 +requests==2.27.0 simplejson==3.17.6 six==1.16.0 webdavclient3==3.14.6 @@ -29,17 +29,17 @@ microdata==0.7.2 Jinja2==3.0.3 django-webpack-loader==1.4.1 django-js-reverse==0.9.1 -django-allauth==0.46.0 -recipe-scrapers==13.7.0 +django-allauth==0.47.0 +recipe-scrapers==13.10.1 django-scopes==1.2.0 pytest==6.2.5 -pytest-django==4.5.1 +pytest-django==4.5.2 django-treebeard==4.5.1 -django-cors-headers==3.10.0 +django-cors-headers==3.10.1 django-storages==1.12.3 -boto3==1.20.19 -django-prometheus==2.1.0 +boto3==1.20.27 +django-prometheus==2.2.0 django-hCaptcha==0.1.0 python-ldap==3.4.0 -django-auth-ldap==3.0.0 +django-auth-ldap==4.0.0 pytest-factoryboy==2.1.0 diff --git a/vue/package.json b/vue/package.json index 669bac46b..659081898 100644 --- a/vue/package.json +++ b/vue/package.json @@ -15,7 +15,7 @@ "@riophae/vue-treeselect": "^0.4.0", "axios": "^0.24.0", "bootstrap-vue": "^2.21.2", - "core-js": "^3.19.0", + "core-js": "^3.20.2", "html2pdf.js": "^0.10.1", "lodash": "^4.17.21", "moment": "^2.29.1", @@ -25,7 +25,7 @@ "vue-click-outside": "^1.1.0", "vue-clickaway": "^2.2.2", "vue-cookies": "^1.7.4", - "vue-i18n": "^8.26.5", + "vue-i18n": "^8.26.8", "vue-infinite-loading": "^2.4.5", "vue-multiselect": "^2.1.6", "vue-property-decorator": "^9.1.2", @@ -46,7 +46,7 @@ "@vue/cli-plugin-typescript": "^4.5.15", "@vue/cli-service": "~4.5.13", "@vue/compiler-sfc": "^3.2.20", - "@vue/eslint-config-typescript": "^9.1.0", + "@vue/eslint-config-typescript": "^10.0.0", "babel-eslint": "^10.1.0", "eslint": "^7.28.0", "eslint-plugin-vue": "^8.0.3", diff --git a/vue/src/locales/hy.json b/vue/src/locales/hy.json index 0c79cfcff..5e9ba2417 100644 --- a/vue/src/locales/hy.json +++ b/vue/src/locales/hy.json @@ -1,32 +1,32 @@ { - "err_fetching_resource": "", - "err_creating_resource": "", - "err_updating_resource": "", - "err_deleting_resource": "", - "success_fetching_resource": "", - "success_creating_resource": "", - "success_updating_resource": "", - "success_deleting_resource": "", - "import_running": "", - "all_fields_optional": "", - "convert_internal": "", - "show_only_internal": "", - "Log_Recipe_Cooking": "", + "err_fetching_resource": "Ռեսուրսը կցելիս սխալ է գրանցվել:", + "err_creating_resource": "Ռեսուրսը ստեղծելիս սխալ է գրանցվել:", + "err_updating_resource": "Ռեսուրսը թարմացնելիս սխալ է գրանցվել:", + "err_deleting_resource": "Ռեսուրսը ջնջելիս սխալ է գրանցվել:", + "success_fetching_resource": "Ռեսուրսը հաջողությամբ կցվել է։", + "success_creating_resource": "Ռեսուրսը հաջողությամբ ստեղծվել է։", + "success_updating_resource": "Ռեսուրսը հաջողությամբ թարմացվել է։", + "success_deleting_resource": "Ռեսուրսը հաջողությամբ ջնջվել է։", + "import_running": "Ներմուծվում է, խնդրում ենք սպասել։", + "all_fields_optional": "Բոլոր տողերը կամավոր են և կարող են մնալ դատարկ։", + "convert_internal": "Փոխակերպել ներքին բաղադրատոմսի", + "show_only_internal": "Ցույց տալ միայն ներքին բաղադրատոմսերը", + "Log_Recipe_Cooking": "Գրանցել բաղադրատոմսի օգտագործում", "External_Recipe_Image": "", "Add_to_Book": "", - "Add_to_Shopping": "", - "Add_to_Plan": "", - "Step_start_time": "", - "Meal_Plan": "", - "Select_Book": "", - "Recipe_Image": "", - "Import_finished": "", - "View_Recipes": "", - "Log_Cooking": "", - "New_Recipe": "", - "Url_Import": "", - "Reset_Search": "", - "Recently_Viewed": "", + "Add_to_Shopping": "Ավելացնել գնումներին", + "Add_to_Plan": "Ավելացնել պլանին", + "Step_start_time": "Քայլի սկսելու ժամանակը", + "Meal_Plan": "Ճաշացուցակ", + "Select_Book": "Ընտրել գիրք", + "Recipe_Image": "Բաղադրատոմսի նկար", + "Import_finished": "Ներմուծումն ավարտված է", + "View_Recipes": "Դիտել բաղադրատոմսերը", + "Log_Cooking": "Գրանցել եփելը", + "New_Recipe": "Նոր բաղադրատոմս", + "Url_Import": "URL ներմուծում", + "Reset_Search": "Զրոյացնել որոնումը", + "Recently_Viewed": "Վերջերս դիտած", "Load_More": "", "Keywords": "", "Books": "", @@ -100,5 +100,27 @@ "Move_Food": "Տեղափոխել սննդամթերքը", "New_Food": "Նոր սննդամթերք", "Hide_Food": "Թաքցնել սննդամթերքը", - "Delete_Food": "Ջնջել սննդամթերքը" + "Delete_Food": "Ջնջել սննդամթերքը", + "Table_of_Contents": "Բովանդակություն", + "New_Keyword": "Նոր բանալի բառ", + "Hide_Keywords": "Թաքցնել բանալի բառը", + "Merge_Keyword": "Միացնել բանալի բառը", + "Sort_by_new": "Տեսակավորել ըստ նորերի", + "Add_nutrition_recipe": "Ավելացնել սննդայնություն բաղադրատոմսին", + "Remove_nutrition_recipe": "Հեռացնել բաղադրատոմսի սննդայնությունը", + "Manage_Books": "Կարգավորել Գրքերը", + "Edit_Recipe": "Խմբագրել բաղադրատոմսը", + "Move_Keyword": "Տեղափոխել բանալի բառը", + "file_upload_disabled": "Ջեր տարածությունում ֆայլերի վերբեռնումը միացված չէ։", + "Delete_Keyword": "Ջնջել բանալի բառը", + "step_time_minutes": "Քայլի տևողությունը րոպեներով", + "Show_as_header": "Ցույց տալ որպես խորագիր", + "Hide_as_header": "Թաքցնել որպես խորագիր", + "warning_feature_beta": "Այս հատկությունը ԲԵՏԱ տարբերակում է։ Ակնկալեք սխալներ և անգամ խափանող թարմացումներ ապագայում։", + "confirm_delete": "Համոզվա՞ծ եք, որ ուզում եք ջնջել այս {օբյեկտը}։", + "Recipes_per_page": "Բաղադրատոմս էջում", + "Save_and_View": "Պահպանել և Դիտել", + "Select_File": "Ընտրել Ֆայլ", + "Edit_Keyword": "Խմբագրել բանալի բառը", + "Hide_Recipes": "Թաքցնել բաղադրատոմսերը" } diff --git a/vue/yarn.lock b/vue/yarn.lock index 5dc766455..f90640222 100644 --- a/vue/yarn.lock +++ b/vue/yarn.lock @@ -1270,7 +1270,7 @@ dependencies: "@types/node" "*" -"@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.7": +"@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.9": version "7.0.9" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== @@ -1420,6 +1420,20 @@ semver "^7.3.5" tsutils "^3.21.0" +"@typescript-eslint/eslint-plugin@^5.0.0": + version "5.8.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.8.1.tgz#97dfaa39f38e99f86801fdf34f9f1bed66704258" + integrity sha512-wTZ5oEKrKj/8/366qTM366zqhIKAp6NCMweoRONtfuC07OAU9nVI2GZZdqQ1qD30WAAtcPdkH+npDwtRFdp4Rw== + dependencies: + "@typescript-eslint/experimental-utils" "5.8.1" + "@typescript-eslint/scope-manager" "5.8.1" + debug "^4.3.2" + functional-red-black-tree "^1.0.1" + ignore "^5.1.8" + regexpp "^3.2.0" + semver "^7.3.5" + tsutils "^3.21.0" + "@typescript-eslint/experimental-utils@4.33.0": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz#6f2a786a4209fa2222989e9380b5331b2810f7fd" @@ -1432,6 +1446,18 @@ eslint-scope "^5.1.1" eslint-utils "^3.0.0" +"@typescript-eslint/experimental-utils@5.8.1": + version "5.8.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.8.1.tgz#01861eb2f0749f07d02db342b794145a66ed346f" + integrity sha512-fbodVnjIDU4JpeXWRDsG5IfIjYBxEvs8EBO8W1+YVdtrc2B9ppfof5sZhVEDOtgTfFHnYQJDI8+qdqLYO4ceww== + dependencies: + "@types/json-schema" "^7.0.9" + "@typescript-eslint/scope-manager" "5.8.1" + "@typescript-eslint/types" "5.8.1" + "@typescript-eslint/typescript-estree" "5.8.1" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" + "@typescript-eslint/parser@^4.32.0": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.33.0.tgz#dfe797570d9694e560528d18eecad86c8c744899" @@ -1442,6 +1468,16 @@ "@typescript-eslint/typescript-estree" "4.33.0" debug "^4.3.1" +"@typescript-eslint/parser@^5.0.0": + version "5.8.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.8.1.tgz#380f5f1e596b540059998aa3fc80d78f0f9b0d0a" + integrity sha512-K1giKHAjHuyB421SoXMXFHHVI4NdNY603uKw92++D3qyxSeYvC10CBJ/GE5Thpo4WTUvu1mmJI2/FFkz38F2Gw== + dependencies: + "@typescript-eslint/scope-manager" "5.8.1" + "@typescript-eslint/types" "5.8.1" + "@typescript-eslint/typescript-estree" "5.8.1" + debug "^4.3.2" + "@typescript-eslint/scope-manager@4.33.0": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz#d38e49280d983e8772e29121cf8c6e9221f280a3" @@ -1450,11 +1486,24 @@ "@typescript-eslint/types" "4.33.0" "@typescript-eslint/visitor-keys" "4.33.0" +"@typescript-eslint/scope-manager@5.8.1": + version "5.8.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.8.1.tgz#7fc0604f7ade8833e4d42cebaa1e2debf8b932e4" + integrity sha512-DGxJkNyYruFH3NIZc3PwrzwOQAg7vvgsHsHCILOLvUpupgkwDZdNq/cXU3BjF4LNrCsVg0qxEyWasys5AiJ85Q== + dependencies: + "@typescript-eslint/types" "5.8.1" + "@typescript-eslint/visitor-keys" "5.8.1" + "@typescript-eslint/types@4.33.0": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72" integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ== +"@typescript-eslint/types@5.8.1": + version "5.8.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.8.1.tgz#04c6b49ebc8c99238238a6b8b43f2fc613983b5a" + integrity sha512-L/FlWCCgnjKOLefdok90/pqInkomLnAcF9UAzNr+DSqMC3IffzumHTQTrINXhP1gVp9zlHiYYjvozVZDPleLcA== + "@typescript-eslint/typescript-estree@4.33.0": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz#0dfb51c2908f68c5c08d82aefeaf166a17c24609" @@ -1468,6 +1517,19 @@ semver "^7.3.5" tsutils "^3.21.0" +"@typescript-eslint/typescript-estree@5.8.1": + version "5.8.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.8.1.tgz#a592855be688e7b729a1e9411d7d74ec992ed6ef" + integrity sha512-26lQ8l8tTbG7ri7xEcCFT9ijU5Fk+sx/KRRyyzCv7MQ+rZZlqiDPtMKWLC8P7o+dtCnby4c+OlxuX1tp8WfafQ== + dependencies: + "@typescript-eslint/types" "5.8.1" + "@typescript-eslint/visitor-keys" "5.8.1" + debug "^4.3.2" + globby "^11.0.4" + is-glob "^4.0.3" + semver "^7.3.5" + tsutils "^3.21.0" + "@typescript-eslint/visitor-keys@4.33.0": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz#2a22f77a41604289b7a186586e9ec48ca92ef1dd" @@ -1476,6 +1538,14 @@ "@typescript-eslint/types" "4.33.0" eslint-visitor-keys "^2.0.0" +"@typescript-eslint/visitor-keys@5.8.1": + version "5.8.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.8.1.tgz#58a2c566265d5511224bc316149890451c1bbab0" + integrity sha512-SWgiWIwocK6NralrJarPZlWdr0hZnj5GXHIgfdm8hNkyKvpeQuFyLP6YjSIe9kf3YBIfU6OHSZLYkQ+smZwtNg== + dependencies: + "@typescript-eslint/types" "5.8.1" + eslint-visitor-keys "^3.0.0" + "@vue/babel-helper-vue-jsx-merge-props@^1.2.1": version "1.2.1" resolved "https://registry.yarnpkg.com/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.2.1.tgz#31624a7a505fb14da1d58023725a4c5f270e6a81" @@ -1806,11 +1876,13 @@ optionalDependencies: prettier "^1.18.2 || ^2.0.0" -"@vue/eslint-config-typescript@^9.1.0": - version "9.1.0" - resolved "https://registry.yarnpkg.com/@vue/eslint-config-typescript/-/eslint-config-typescript-9.1.0.tgz#b98a64352b312085444a08b98728962e2a8425ab" - integrity sha512-j/852/ZYQ5wDvCD3HE2q4uqJwJAceer2FwoEch1nFo+zTOsPrbzbE3cuWIs3kvu5hdFsGTMYwRwjI6fqZKDMxQ== +"@vue/eslint-config-typescript@^10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@vue/eslint-config-typescript/-/eslint-config-typescript-10.0.0.tgz#3b63c8cf276962cb89414857581b9b424acf2820" + integrity sha512-F94cL8ug3FaYXlCfU5/wiGjk1qeadmoBpRGAOBq+qre3Smdupa59dd6ZJrsfRODpsMPyTG7330juMDsUvpZ3Rw== dependencies: + "@typescript-eslint/eslint-plugin" "^5.0.0" + "@typescript-eslint/parser" "^5.0.0" vue-eslint-parser "^8.0.0" "@vue/preload-webpack-plugin@^1.1.0": @@ -3375,15 +3447,10 @@ core-js@^2.4.0, core-js@^2.5.0: resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== -core-js@^3.19.0, core-js@^3.6.5, core-js@^3.7.0: - version "3.19.3" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.19.3.tgz#6df8142a996337503019ff3235a7022d7cdf4559" - integrity sha512-LeLBMgEGSsG7giquSzvgBrTS7V5UL6ks3eQlUSbN8dJStlLFiRzUm5iqsRyzUB8carhfKjkJ2vzKqE6z1Vga9g== - -core-js@^3.6.0, core-js@^3.8.3: - version "3.20.0" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.20.0.tgz#1c5ac07986b8d15473ab192e45a2e115a4a95b79" - integrity sha512-KjbKU7UEfg4YPpskMtMXPhUKn7m/1OdTHTVjy09ScR2LVaoUXe8Jh0UdvN2EKUR6iKTJph52SJP95mAB0MnVLQ== +core-js@^3.20.2, core-js@^3.6.0, core-js@^3.6.5, core-js@^3.7.0, core-js@^3.8.3: + version "3.20.2" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.20.2.tgz#46468d8601eafc8b266bd2dd6bf9dee622779581" + integrity sha512-nuqhq11DcOAbFBV4zCbKeGbKQsUDRqTX0oqx7AttUBuqe3h20ixsE039QHelbL6P4h+9kytVqyEtyZ6gsiwEYw== core-util-is@1.0.2: version "1.0.2" @@ -5569,7 +5636,7 @@ globals@^13.6.0, globals@^13.9.0: dependencies: type-fest "^0.20.2" -globby@^11.0.3: +globby@^11.0.3, globby@^11.0.4: version "11.0.4" resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5" integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== @@ -6356,7 +6423,7 @@ is-glob@^3.1.0: dependencies: is-extglob "^2.1.0" -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== @@ -8759,7 +8826,7 @@ regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.1: call-bind "^1.0.2" define-properties "^1.1.3" -regexpp@^3.1.0: +regexpp@^3.1.0, regexpp@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== @@ -10540,10 +10607,10 @@ vue-i18n-extract@1.0.2: is-valid-glob "^1.0.0" yargs "^13.2.2" -vue-i18n@^8.17.0, vue-i18n@^8.26.5: - version "8.26.7" - resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-8.26.7.tgz#adfd48373449fe31438c48e3b3bd43044dc3a681" - integrity sha512-7apa5PvRg1YCLoraE3lOgpCG8hJGupLCtywQWedWsgBbvF0TOgFvhitqK9xRH0PBGG1G8aiJz9oklyNDFfDxLg== +vue-i18n@^8.17.0, vue-i18n@^8.26.8: + version "8.26.8" + resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-8.26.8.tgz#afe936adbf96ff0e9808e04845b8f41cc21c666f" + integrity sha512-BN2OXolO15AKS95yNF8oOtARibaO6RxyKkAYNV4XpOmL7S4eVZYMIDtyvDv+XGZaiUmBJSH9mdNqzexvGMnK2A== vue-infinite-loading@^2.4.5: version "2.4.5"