improved import process and messages
This commit is contained in:
commit
ac1456e72b
1065 changed files with 116006 additions and 43438 deletions
4
.gitignore
vendored
4
.gitignore
vendored
|
@ -5,4 +5,6 @@
|
|||
# NPM
|
||||
node_modules
|
||||
|
||||
# NativeScript application
|
||||
# NativeScript application
|
||||
platforms
|
||||
hooks
|
||||
|
|
|
@ -12,7 +12,7 @@ Here are some important resources:
|
|||
|
||||
1. Fork this repository and head to the `app/i18n` folder.
|
||||
2. Create a new JSON file or duplicate any existing file and start translating its values.
|
||||
3. The filenames should be based on this [gist](https://gist.github.com/vishnuraghavb/bf27b068acc35e331adfba66d18e2094).
|
||||
3. The filename should be based on this [gist](https://gist.github.com/vishnuraghavb/bf27b068acc35e331adfba66d18e2094).
|
||||
4. Once done, create a new pull request.
|
||||
|
||||
#### Don't know what fork means? No issues.
|
||||
|
|
25
README.md
25
README.md
|
@ -7,19 +7,20 @@
|
|||
<a href="https://github.com/vishnuraghavb/EnRecipes/releases" alt="Release version"><img src="https://img.shields.io/github/v/release/vishnuraghavb/EnRecipes?label=Release"></a> <a href="https://github.com/vishnuraghavb/EnRecipes/releases" alt="Release date"><img src="https://img.shields.io/github/release-date/vishnuraghavb/EnRecipes?color=blue&label=Release%20date"></a> <a href="https://www.gnu.org/licenses/gpl-3.0" alt="License: GPLv3"><img src="https://img.shields.io/badge/License-GPL%20v3-blue"></a> <a href="https://github.com/vishnuraghavb/EnRecipes/issues" alt="GitHub issues"><img src="https://img.shields.io/github/issues/vishnuraghavb/EnRecipes?label=Issues"></a> <a href="https://liberapay.com/vishnuraghavb/donate" alt="Translation Status"><img src="https://img.shields.io/liberapay/patrons/vishnuraghavb?label=Patrons"></a>
|
||||
|
||||
<hr>
|
||||
<p align="center"><a href="#features">Features</a> - <a href="#downloads">Downloads</a> - <a href="#screenshots">Screenshots</a> - <a href="#future">Future</a> - <a href="#contributors">Contribution</a> - <a href="#credits">Credits</a> - <a href="#license">License</a> - <a href="https://enrecipes.vercel.app/">Website</a> - <a href="https://enrecipes.vercel.app/">Telegram group</a></p>
|
||||
<p align="center"><a href="#features">Features</a> - <a href="#downloads">Downloads</a> - <a href="#screenshots">Screenshots</a> - <a href="https://github.com/vishnuraghavb/EnRecipes/wiki/User-Guide">User guide</a> - <a href="#future">Future</a> - <a href="#contributors">Contribution</a> - <a href="#credits">Credits</a> - <a href="#license">License</a> - <a href="https://enrecipes.vercel.app/">Website</a> - <a href="https://enrecipes.vercel.app/">Telegram group</a></p>
|
||||
<hr>
|
||||
|
||||
## Features
|
||||
|
||||
- Create recipes quickly
|
||||
- Add photo, notes and combinations to your recipes
|
||||
- Organise your recipes by category
|
||||
- Quickly search for your recipes either by name or ingredient
|
||||
- Mark recipes as favourites and add them to your Try Later list
|
||||
- Organise your recipes by cuisine, category and tags
|
||||
- Quickly search for your recipes by name, ingredient or tag
|
||||
- Mark recipes as Favourites and add them to your Try Later list
|
||||
- Scale your recipe ingredients to serve more or less people
|
||||
- Get notified of the last time you tried a recipe
|
||||
- Share your recipe to anyone by any means as a nicely formatted message. You can share the recipe photo too.
|
||||
- Share your recipe to anyone by any means as a nicely formatted message. You can share the recipe photo too
|
||||
- Shake to view random recipe
|
||||
- Create meal plans
|
||||
- Import/Export recipes
|
||||
- Light & Dark theme
|
||||
|
@ -27,7 +28,7 @@
|
|||
- No internet access is required and never asks for any unwanted permissions
|
||||
- 100% free and open-source
|
||||
|
||||
**Languages supported**: English, German, Tamil
|
||||
**Languages supported**: Danish, Dutch, English, German, Portuguese, Russian, Spanish and Tamil
|
||||
|
||||
Check the [Roadmap](https://github.com/vishnuraghavb/EnRecipes/projects/1) for upcoming features.
|
||||
|
||||
|
@ -49,16 +50,14 @@ You can [create an issue here](https://github.com/vishnuraghavb/EnRecipes/issues
|
|||
## Future
|
||||
|
||||
- [Roadmap](https://github.com/vishnuraghavb/EnRecipes/projects/1)
|
||||
- [Translations](https://github.com/vishnuraghavb/EnRecipes/projects/2) - Contributors are welcome!
|
||||
- [Translations](https://github.com/vishnuraghavb/EnRecipes/projects/2) - Want to contribute? Please read the [CONTRIBUTING.md](https://github.com/vishnuraghavb/EnRecipes/blob/main/CONTRIBUTING.md)
|
||||
|
||||
## Contributors
|
||||
|
||||
- [mondstern](https://codeberg.org/mondstern) (Translator)
|
||||
- [epicalxyz](https://github.com/epicalxyz) (Translator)
|
||||
|
||||
### Want to contribute?
|
||||
|
||||
Please read the [CONTRIBUTING.md](https://github.com/vishnuraghavb/EnRecipes/blob/main/CONTRIBUTING.md)
|
||||
- [mondstern](https://codeberg.org/mondstern) (Translations: Danish, Dutch and German)
|
||||
- [EpicalXYZ](https://github.com/epicalxyz) (Translations: Portuguese)
|
||||
- [dm9pZCAq](https://github.com/dm9pZCAq) (Translations: Russian)
|
||||
- [AHaro88](https://github.com/taraletti) (Translations: Spanish)
|
||||
|
||||
## Credits
|
||||
|
||||
|
|
261
app/app.scss
261
app/app.scss
|
@ -11,12 +11,12 @@ $gray7: #495057;
|
|||
$gray8: #343a40;
|
||||
$gray9: #212529;
|
||||
$orange: #ff5200;
|
||||
$fabRipple: #ff864d;
|
||||
$fabRipple: #ff922b;
|
||||
$red: #c92a2a;
|
||||
$breakfast: #ffb180;
|
||||
$lunch: #ceff80;
|
||||
$dinner: #80ceff;
|
||||
$snacks: #b180ff; // Global SCSS styling
|
||||
$breakfast: #ff922b;
|
||||
$lunch: #94d82d;
|
||||
$dinner: #339af0;
|
||||
$snacks: #845ef7; // Global SCSS styling
|
||||
// @see https://docs.nativescript.org/ui/styling
|
||||
.ns-modal,
|
||||
Page {
|
||||
|
@ -55,10 +55,11 @@ Page {
|
|||
.sd {
|
||||
background: $gray1;
|
||||
}
|
||||
.combination,
|
||||
.group-info,
|
||||
.overviewItem,
|
||||
.recipeItem,
|
||||
.textCard,
|
||||
.urlCard {
|
||||
.textCard {
|
||||
background: white;
|
||||
}
|
||||
TextField.combinationToken {
|
||||
|
@ -66,6 +67,7 @@ Page {
|
|||
}
|
||||
.sd-group-header,
|
||||
.sd-item,
|
||||
.tag,
|
||||
.time .bx {
|
||||
color: $gray8;
|
||||
}
|
||||
|
@ -78,7 +80,8 @@ Page {
|
|||
background: $gray3;
|
||||
}
|
||||
.count,
|
||||
.marker {
|
||||
.marker,
|
||||
.noteCount {
|
||||
color: $gray1;
|
||||
background: $gray9;
|
||||
}
|
||||
|
@ -121,15 +124,19 @@ Page {
|
|||
.sd {
|
||||
background: $gray9;
|
||||
}
|
||||
.combination,
|
||||
.overviewItem,
|
||||
.recipeItem,
|
||||
.textCard,
|
||||
.urlCard,
|
||||
TextField.combinationToken {
|
||||
background: $gray8;
|
||||
}
|
||||
.group-info {
|
||||
background: #111;
|
||||
}
|
||||
.sd-group-header,
|
||||
.sd-item,
|
||||
.tag,
|
||||
.time .bx {
|
||||
color: $gray3;
|
||||
}
|
||||
|
@ -142,7 +149,8 @@ Page {
|
|||
background: #111;
|
||||
}
|
||||
.count,
|
||||
.marker {
|
||||
.marker,
|
||||
.noteCount {
|
||||
color: $gray9;
|
||||
background: $gray1;
|
||||
}
|
||||
|
@ -168,7 +176,7 @@ TimePickerField {
|
|||
width: 100%;
|
||||
border-width: 1;
|
||||
font-size: 14;
|
||||
padding: 14 14 13;
|
||||
padding: 13 12;
|
||||
margin: 8 0 0;
|
||||
border-radius: 4;
|
||||
border-color: $gray6;
|
||||
|
@ -182,25 +190,25 @@ ListPicker {
|
|||
}
|
||||
SearchBar {
|
||||
font-family: 'Orkney-Regular';
|
||||
font-size: 16;
|
||||
font-size: 14;
|
||||
text-field-hint-color: $gray6;
|
||||
}
|
||||
TabView {
|
||||
tab-text-color: $gray6;
|
||||
}
|
||||
.inputField {
|
||||
margin-bottom: 4;
|
||||
margin-bottom: 8;
|
||||
}
|
||||
.fieldLabel {
|
||||
font-size: 12;
|
||||
margin-left: 12;
|
||||
margin-left: 8;
|
||||
padding: 0 4;
|
||||
}
|
||||
.progressContainer {
|
||||
width: 100%;
|
||||
}
|
||||
.category,
|
||||
.group-header,
|
||||
// .category,
|
||||
// .group-header,
|
||||
.text-btn,
|
||||
MDActivityIndicator {
|
||||
color: $orange;
|
||||
|
@ -208,12 +216,16 @@ MDActivityIndicator {
|
|||
MDProgress {
|
||||
progress-color: $orange;
|
||||
}
|
||||
Switch {
|
||||
background-color: $orange;
|
||||
off-background-color: $gray6;
|
||||
}
|
||||
// -----------------------------
|
||||
// ActionBar
|
||||
ActionBar {
|
||||
height: 64;
|
||||
margin: 0;
|
||||
padding: 6 8;
|
||||
// height: 64;
|
||||
padding: 0 8;
|
||||
GridLayout {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
|
@ -242,6 +254,7 @@ ActionBar {
|
|||
vertical-alignment: center;
|
||||
.bx {
|
||||
font-size: 24;
|
||||
margin: 0 24 0 0;
|
||||
}
|
||||
&.selected-sd-item {
|
||||
color: $orange;
|
||||
|
@ -253,7 +266,7 @@ ActionBar {
|
|||
// prettier-ignore
|
||||
Label {
|
||||
padding: 2 16 0 0;
|
||||
font-size: 16;
|
||||
font-size: 14;
|
||||
vertical-alignment: center;
|
||||
&.bx {
|
||||
padding: 0 0 0 16;
|
||||
|
@ -265,10 +278,27 @@ ActionBar {
|
|||
MDButton.bx {
|
||||
margin: 0;
|
||||
}
|
||||
.recipeCount {
|
||||
padding: 4;
|
||||
font-size: 14;
|
||||
margin: 0 8 0 0;
|
||||
vertical-alignment: center;
|
||||
}
|
||||
}
|
||||
.sd-group-header {
|
||||
width: 100%;
|
||||
padding: 0 0 8 8;
|
||||
MDButton.bx {
|
||||
margin: 0;
|
||||
}
|
||||
.filterPath {
|
||||
line-height: 6;
|
||||
}
|
||||
}
|
||||
.noTags {
|
||||
font-size: 14;
|
||||
text-align: center;
|
||||
margin: 8;
|
||||
}
|
||||
MDRipple {
|
||||
border-radius: 4;
|
||||
|
@ -295,7 +325,7 @@ MDButton {
|
|||
line-height: 8;
|
||||
padding: 0 32;
|
||||
text-align: center;
|
||||
font-size: 16;
|
||||
font-size: 14;
|
||||
horizontal-alignment: center;
|
||||
.icon {
|
||||
font-size: 64;
|
||||
|
@ -308,10 +338,9 @@ MDButton {
|
|||
margin-bottom: 16;
|
||||
}
|
||||
.title {
|
||||
font-size: 20;
|
||||
font-size: 18;
|
||||
text-align: center;
|
||||
padding: 0;
|
||||
margin: 0 0 8;
|
||||
horizontal-alignment: center;
|
||||
.bx {
|
||||
font-size: 24;
|
||||
|
@ -323,31 +352,48 @@ MDButton {
|
|||
// Recipe Items
|
||||
RadListView {
|
||||
margin: 0 0 128;
|
||||
font-size: 16;
|
||||
font-size: 14;
|
||||
}
|
||||
.recipeItem {
|
||||
margin: 8 16;
|
||||
margin: 4 8;
|
||||
border-radius: 4;
|
||||
.recipeInfo {
|
||||
margin: 4;
|
||||
.category,
|
||||
.time {
|
||||
font-size: 12;
|
||||
margin: 0;
|
||||
padding: 8;
|
||||
.attr,
|
||||
.category {
|
||||
font-size: 10;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
.title {
|
||||
margin: 0;
|
||||
padding: 4 0;
|
||||
padding: 2 0;
|
||||
}
|
||||
.timeContainer {
|
||||
.attrContainer {
|
||||
padding: 0;
|
||||
.time {
|
||||
padding: 0 0 0 4;
|
||||
.attr {
|
||||
padding: 1 8 0 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.tagsContainer {
|
||||
padding: 2 0 0;
|
||||
.collapsedTagsCount {
|
||||
font-size: 10;
|
||||
padding: 1 0 0 2;
|
||||
}
|
||||
.tag {
|
||||
font-size: 10;
|
||||
padding: 0 4;
|
||||
margin: 0 4 0 0;
|
||||
line-height: 0;
|
||||
border-radius: 4;
|
||||
border-width: 1;
|
||||
border-color: $gray6;
|
||||
}
|
||||
}
|
||||
.imageHolder {
|
||||
vertical-alignment: center;
|
||||
&.card {
|
||||
|
@ -362,25 +408,33 @@ RadListView {
|
|||
margin: 0 8;
|
||||
background: $red;
|
||||
color: #fff;
|
||||
height: 128;
|
||||
height: 104;
|
||||
border-radius: 4;
|
||||
}
|
||||
// -----------------------------
|
||||
// SETTINGS
|
||||
.group-header {
|
||||
text-transform: uppercase;
|
||||
// text-transform: uppercase;
|
||||
padding: 8;
|
||||
}
|
||||
.group-info {
|
||||
text-align: center;
|
||||
padding: 16;
|
||||
line-height: 6;
|
||||
margin-top: 8;
|
||||
border-radius: 4;
|
||||
}
|
||||
.main-container {
|
||||
padding: 8 8 88;
|
||||
.option {
|
||||
font-size: 16;
|
||||
font-size: 14;
|
||||
line-height: 6;
|
||||
.bx {
|
||||
margin: 11 24 11 16;
|
||||
}
|
||||
.info {
|
||||
font-size: 12;
|
||||
line-height: 4;
|
||||
padding-top: 0;
|
||||
}
|
||||
StackLayout {
|
||||
margin: 9 24 9 0;
|
||||
|
@ -395,51 +449,69 @@ RadListView {
|
|||
width: 100%;
|
||||
border-radius: 4;
|
||||
.appIcon {
|
||||
height: 128;
|
||||
height: 96;
|
||||
}
|
||||
}
|
||||
// -----------------------------
|
||||
// VIEW RECIPE
|
||||
.viewRecipe {
|
||||
.attr,
|
||||
.category,
|
||||
.ingredient,
|
||||
.time {
|
||||
font-size: 16;
|
||||
.tag,
|
||||
.tagsTitle {
|
||||
font-size: 14;
|
||||
}
|
||||
.attr,
|
||||
.category {
|
||||
margin: 0 8;
|
||||
margin: 0 12;
|
||||
}
|
||||
.time {
|
||||
margin: 0 8;
|
||||
.small {
|
||||
font-size: 10;
|
||||
}
|
||||
.title {
|
||||
font-size: 22;
|
||||
font-size: 18;
|
||||
line-height: 6;
|
||||
padding: 0 12;
|
||||
}
|
||||
.ratingContainer {
|
||||
margin: 14 8 6;
|
||||
.rating {
|
||||
margin-right: 8;
|
||||
color: $orange;
|
||||
}
|
||||
}
|
||||
.subTitle {
|
||||
font-size: 18;
|
||||
line-height: 4;
|
||||
font-size: 14;
|
||||
line-height: 6;
|
||||
}
|
||||
.tagsContainer {
|
||||
padding: 18 12 0;
|
||||
.tag {
|
||||
padding: 1 6;
|
||||
margin: 0 8 8 0;
|
||||
}
|
||||
}
|
||||
.overviewContainer {
|
||||
margin-top: 12;
|
||||
margin: 12 0 24;
|
||||
.overviewItem {
|
||||
border-radius: 4;
|
||||
margin: 8;
|
||||
margin: 4;
|
||||
android-elevation: 1;
|
||||
.bx {
|
||||
padding: 12 0 0 12;
|
||||
padding: 16 0 0 16;
|
||||
color: $gray6;
|
||||
horizontal-alignment: left;
|
||||
}
|
||||
.itemCount {
|
||||
font-size: 16;
|
||||
padding: 8 12 12;
|
||||
font-size: 14;
|
||||
padding: 8 16 16;
|
||||
}
|
||||
}
|
||||
}
|
||||
.ingredient {
|
||||
line-height: 6;
|
||||
padding-bottom: 0;
|
||||
font-family: 'Orkney-Regular';
|
||||
margin: 0 0 0 4;
|
||||
}
|
||||
.count {
|
||||
width: 24;
|
||||
|
@ -447,40 +519,49 @@ RadListView {
|
|||
padding-top: 4%;
|
||||
margin: 0 0 0 8;
|
||||
text-align: center;
|
||||
vertical-alignment: top;
|
||||
horizontal-alignment: center;
|
||||
border-radius: 99;
|
||||
}
|
||||
.instruction {
|
||||
font-size: 16;
|
||||
font-size: 14;
|
||||
line-height: 6;
|
||||
padding: 1 0 24 36;
|
||||
padding: 2 0 24 35;
|
||||
margin: 0 0 0 19;
|
||||
border-width: 0 0 0 2;
|
||||
}
|
||||
.instruction.noBorder {
|
||||
border-color: transparent;
|
||||
}
|
||||
.urlCard {
|
||||
margin: 8 16;
|
||||
.combination {
|
||||
margin: 8 8 0;
|
||||
border-radius: 4;
|
||||
font-size: 16;
|
||||
font-size: 14;
|
||||
.bx {
|
||||
font-size: 24;
|
||||
padding: 0 0 0 16;
|
||||
}
|
||||
.link {
|
||||
padding: 13 16 13 11;
|
||||
.combinationTitle {
|
||||
padding: 14 24;
|
||||
margin: 0;
|
||||
line-height: 6;
|
||||
}
|
||||
.linkIcon {
|
||||
padding: 0 0 0 12;
|
||||
}
|
||||
}
|
||||
.textCard {
|
||||
font-size: 16;
|
||||
.noteCount {
|
||||
width: 24;
|
||||
height: 24;
|
||||
padding-top: 4%;
|
||||
margin: 0 0 0 8;
|
||||
text-align: center;
|
||||
vertical-alignment: top;
|
||||
horizontal-alignment: center;
|
||||
clip-path: polygon(4% 12%, 12% 4%, 75% 4%, 96% 25%, 96% 88%, 88% 96%, 12% 96%, 4% 88%,);
|
||||
}
|
||||
.note {
|
||||
font-size: 14;
|
||||
line-height: 6;
|
||||
padding: 13 16;
|
||||
margin: 8 16;
|
||||
border-radius: 4;
|
||||
padding: 2 0 24 37;
|
||||
margin: 0 0 0 19;
|
||||
}
|
||||
}
|
||||
// -----------------------------
|
||||
|
@ -500,7 +581,7 @@ MDFloatingActionButton {
|
|||
// -----------------------------
|
||||
// EDIT RECIPE
|
||||
.sectionTitle {
|
||||
font-size: 20;
|
||||
font-size: 18;
|
||||
}
|
||||
.text-btn {
|
||||
font-size: 14;
|
||||
|
@ -522,38 +603,42 @@ MDButton.closeBtn {
|
|||
padding: 0 0 88;
|
||||
width: 100%;
|
||||
.plansContainer {
|
||||
padding: 8 4;
|
||||
color: $gray9;
|
||||
margin: 16 8 0 16;
|
||||
padding: 0;
|
||||
border-left-width: 8;
|
||||
&.breakfast {
|
||||
background: $breakfast;
|
||||
border-left-color: $breakfast;
|
||||
}
|
||||
&.lunch {
|
||||
background: $lunch;
|
||||
border-left-color: $lunch;
|
||||
}
|
||||
&.dinner {
|
||||
background: $dinner;
|
||||
border-left-color: $dinner;
|
||||
}
|
||||
&.snacks {
|
||||
background: $snacks;
|
||||
border-left-color: $snacks;
|
||||
}
|
||||
.periodLabel {
|
||||
text-transform: uppercase;
|
||||
text-transform: capitalize;
|
||||
vertical-alignment: center;
|
||||
font-size: 14;
|
||||
padding: 0 0 0 16;
|
||||
}
|
||||
MDRipple {
|
||||
background: white;
|
||||
}
|
||||
.recipes {
|
||||
margin: 4 8;
|
||||
margin: 0 8 8 16;
|
||||
.recipeTitle {
|
||||
font-size: 14;
|
||||
padding: 6 8;
|
||||
line-height: 4;
|
||||
}
|
||||
.closeBtn {
|
||||
margin: 0 8;
|
||||
vertical-alignment: top;
|
||||
padding: 14 16;
|
||||
line-height: 6;
|
||||
}
|
||||
}
|
||||
// .closeBtn {
|
||||
// margin: 0 16 0 4;
|
||||
// vertical-alignment: top;
|
||||
// }
|
||||
MDButton,
|
||||
MDRipple {
|
||||
ripple-color: rgba($gray6, 0.2);
|
||||
|
@ -567,7 +652,7 @@ MDButton.closeBtn {
|
|||
width: 100%;
|
||||
color: $gray9;
|
||||
background: $gray1;
|
||||
font-size: 16;
|
||||
font-size: 14;
|
||||
&.dark {
|
||||
color: $gray1;
|
||||
background: $gray9;
|
||||
|
@ -575,7 +660,7 @@ MDButton.closeBtn {
|
|||
.dialogTitle {
|
||||
line-height: 6;
|
||||
padding: 24 24 16;
|
||||
font-size: 20;
|
||||
font-size: 18;
|
||||
}
|
||||
.dialogInput {
|
||||
padding: 0 24 16;
|
||||
|
@ -590,6 +675,11 @@ MDButton.closeBtn {
|
|||
line-height: 6;
|
||||
padding: 13 24;
|
||||
margin: 0;
|
||||
border-radius: 1;
|
||||
background: transparent;
|
||||
}
|
||||
.actionToggle {
|
||||
background: $orange;
|
||||
}
|
||||
.actionsContainer {
|
||||
padding: 8;
|
||||
|
@ -598,9 +688,10 @@ MDButton.closeBtn {
|
|||
font-size: 12;
|
||||
padding: 12;
|
||||
min-width: 0;
|
||||
color: #ff7043;
|
||||
color: $orange;
|
||||
}
|
||||
MDButton.actionIcon {
|
||||
font-size: 14;
|
||||
width: auto;
|
||||
height: auto;
|
||||
min-width: 0;
|
||||
|
|
|
@ -21,8 +21,23 @@
|
|||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://github.com/vishnuraghavb/enrecipes')" />
|
||||
<Label col="0" class="bx" :text="icon.link" />
|
||||
<Label verticalAlignment="center" col="1" :text="'View project on GitHub' | L" textWrap="true" />
|
||||
<Label col="0" class="bx" :text="icon.github" />
|
||||
<Label verticalAlignment="center" col="1" :text="'View on GitHub' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://github.com/vishnuraghavb/EnRecipes/blob/main/PRIVACY.md')" />
|
||||
<Label col="0" class="bx" :text="icon.lock" />
|
||||
<Label verticalAlignment="center" col="1" :text="'Privacy policy' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://github.com/vishnuraghavb/EnRecipes/wiki/User-Guide')" />
|
||||
<Label col="0" class="bx" :text="icon.compass" />
|
||||
<Label verticalAlignment="center" col="1" :text="'User guide' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://www.vishnuraghav.com/donate')" />
|
||||
<Label col="0" class="bx" :text="icon.donate" />
|
||||
<Label verticalAlignment="center" col="1" :text="'Donate' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://t.me/enrecipes')" />
|
||||
|
@ -39,24 +54,46 @@
|
|||
<Label col="0" class="bx" :text="icon.user" />
|
||||
<Label verticalAlignment="center" col="1" :text="'Vishnu Raghav B' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://github.com/vishnuraghavb')" />
|
||||
<Label col="0" class="bx" :text="icon.link" />
|
||||
<Label verticalAlignment="center" col="1" :text="'Follow on GitHub' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://mastodon.social/@vishnuraghavb')" />
|
||||
<Label col="0" class="bx" :text="icon.link" />
|
||||
<Label verticalAlignment="center" col="1" :text="'Follow on Mastodon' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<StackLayout class="hr m-10"></StackLayout>
|
||||
<Label :text="'Contributors' | L" class="group-header orkm" />
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://github.com/mondlicht-und-sterne')" />
|
||||
<Label col="0" class="bx" :text="icon.user" />
|
||||
<MDRipple colSpan="2" @tap="openURL('https://codeberg.org/mondstern')" />
|
||||
<Label col="0" class="bx" :text="icon.link" />
|
||||
<StackLayout col="1">
|
||||
<Label text="mondstern" textWrap="true" />
|
||||
<Label :text="`${$options.filters.L('Translations:')} Deutsch`" class="info" textWrap="true" />
|
||||
<Label :text="'Translator' | L" class="info" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://github.com/epicalxyz')" />
|
||||
<Label col="0" class="bx" :text="icon.github" />
|
||||
<StackLayout col="1">
|
||||
<Label text="EpicalXYZ" textWrap="true" />
|
||||
<Label :text="'Translator' | L" class="info" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://github.com/dm9pZCAq')" />
|
||||
<Label col="0" class="bx" :text="icon.github" />
|
||||
<StackLayout col="1">
|
||||
<Label text="dm9pZCAq" textWrap="true" />
|
||||
<Label :text="'Translator' | L" class="info" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://github.com/taraletti')" />
|
||||
<Label col="0" class="bx" :text="icon.github" />
|
||||
<StackLayout col="1">
|
||||
<Label text="AHaro88" textWrap="true" />
|
||||
<Label :text="'Translator' | L" class="info" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="openURL('https://github.com/RAPXT')" />
|
||||
<Label col="0" class="bx" :text="icon.github" />
|
||||
<StackLayout col="1">
|
||||
<Label text="RAPXT" textWrap="true" />
|
||||
<Label :text="'Translator' | L" class="info" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
|
|
|
@ -1,57 +1,65 @@
|
|||
<template>
|
||||
<Page @loaded="onPageLoad" actionBarHidden="true" :androidStatusBarBackground="appTheme == 'Light' ? '#f1f3f5' : '#212529'">
|
||||
<RadSideDrawer allowEdgeSwipe="true" showOverNavigation="true" ref="drawer" id="sideDrawer" drawerContentSize="270" gesturesEnabled="true" drawerTransition="SlideInOnTopTransition">
|
||||
<RadSideDrawer allowEdgeSwipe="true" showOverNavigation="true" ref="drawer" id="sideDrawer" drawerContentSize="280" gesturesEnabled="true" drawerTransition="SlideInOnTopTransition">
|
||||
<GridLayout rows="*, auto" columns="*" ~drawerContent class="sd">
|
||||
<StackLayout row="0">
|
||||
<GridLayout rows="48" columns="auto, *, auto" v-for="(item, index) in topmenu" :key="index" class="sd-item orkm" :class="{
|
||||
'selected-sd-item': currentComponent === item.component,
|
||||
}">
|
||||
<MDRipple row="0" colSpan="3" @tap="navigateTo(item.component, item.component, false, false)" />
|
||||
<MDRipple row="0" colSpan="3" @tap="navigateTo(item.component, item.component, false)" />
|
||||
<Label col="0" row="0" class="bx" :text="icon[item.icon]" />
|
||||
<Label col="1" row="0" :text="`${item.title}` | L" />
|
||||
<Label class="recipeCount" v-if="getRecipeCount(item.title)" :text="getRecipeCount(item.title)" col="2" />
|
||||
</GridLayout>
|
||||
<StackLayout class="hr" margin="8"></StackLayout>
|
||||
<GridLayout rows="48" columns="auto, *" class="sd-item orkm" :class="{
|
||||
'selected-sd-item': currentComponent === 'MealPlanner',
|
||||
}">
|
||||
<MDRipple row="0" colSpan="3" @tap="navigateTo(MealPlanner, 'MealPlanner', true, false)" />
|
||||
<Label col="0" row="0" class="bx" :text="icon.calendar" />
|
||||
<Label col="2" row="0" :text="'Meal Planner' | L" />
|
||||
</GridLayout>
|
||||
<StackLayout class="hr" margin="8"></StackLayout>
|
||||
<GridLayout class="sd-group-header orkm" rows="auto" columns="*, auto" v-if="categoriesWithRecipes.length">
|
||||
<Label verticalAlignment="center" col="0" :text="'Categories' | L" />
|
||||
<MDButton variant="text" @tap="toggleCatEdit" col="2" :text="`${editCategory ? 'DONE' : 'RENAME'}` | L" />
|
||||
<GridLayout class="sd-group-header orkm" rows="auto" columns="*, auto" v-if="cuisinesWithRecipes.length">
|
||||
<Label class="filterPath" verticalAlignment="center" col="0" :text="getCurrentPath | L" textWrap='true' />
|
||||
<MDButton :visibility="selectedCuisine?'visible':'hidden'" variant="text" @tap="previousRecipeFilter" class="bx" col="2" :text="icon.back" />
|
||||
</GridLayout>
|
||||
<ScrollView height="100%">
|
||||
<StackLayout>
|
||||
<GridLayout v-for="(item, index) in categoriesWithRecipes" :key="index" class="sd-item orkm" :class="{
|
||||
'selected-sd-item': currentComponent == item,
|
||||
<GridLayout v-for="(item, index) in getRecipeList" :key="index" class="sd-item orkm" :class="{
|
||||
'selected-sd-item': selectedTag == item,
|
||||
}" columns="auto, *, auto">
|
||||
<MDRipple row="0" colSpan="3" @tap="navigateTo(item, item, false, true)" />
|
||||
<Label col="0" class="bx" :text="icon.label" />
|
||||
<MDRipple row="0" colSpan="3" @tap="setRecipeFilter(item)" />
|
||||
<Label col="0" class="bx" :text="icon[selectedFilterType]" />
|
||||
<Label col="1" :text="`${item}` | L" />
|
||||
<MDButton variant="text" v-if="editCategory" @tap="renameCategory(item)" col="2" class="bx" :text="icon.edit" />
|
||||
<Label class="recipeCount" v-else :text="getRecipeCount(item)" col="2" />
|
||||
<Label class="recipeCount" :text="getRecipeCount(item)" col="2" />
|
||||
</GridLayout>
|
||||
<GridLayout v-if="selectedFilterType=='tag' && !tagsWithRecipes.length" columns="*" rows="*">
|
||||
<Label class="noTags" :text="'No tags available' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
</ScrollView>
|
||||
</StackLayout>
|
||||
<StackLayout row="1">
|
||||
<StackLayout class="hr" margin="0 8 8"></StackLayout>
|
||||
<GridLayout rows="48" columns="auto, *" class="sd-item orkm" :class="{
|
||||
'selected-sd-item': currentComponent === 'MealPlanner',
|
||||
}">
|
||||
<MDRipple row="0" colSpan="3" @tap="navigateTo(MealPlanner, 'MealPlanner', true)" />
|
||||
<Label col="0" row="0" class="bx" :text="icon.calendar" />
|
||||
<Label col="2" row="0" :text="'Meal Planner' | L" />
|
||||
</GridLayout>
|
||||
<!-- <GridLayout rows="48" columns="auto, *" class="sd-item orkm" :class="{
|
||||
'selected-sd-item': currentComponent === 'MealPlanner',
|
||||
}">
|
||||
<MDRipple row="0" colSpan="3" @tap="navigateTo(MealPlanner, 'MealPlanner', true)" />
|
||||
<Label col="0" row="0" class="bx" :text="icon.cart" />
|
||||
<Label col="2" row="0" :text="'Shopping List' | L" />
|
||||
</GridLayout> -->
|
||||
<StackLayout class="hr" margin="8"></StackLayout>
|
||||
<GridLayout class="sd-item orkm" :class="{
|
||||
'selected-sd-item': currentComponent == item.title,
|
||||
}" v-for="(item, index) in bottommenu" :key="index" rows="48" columns="auto, *">
|
||||
<MDRipple colSpan="3" @tap="navigateTo(item.component, 'item.title', true, false)" />
|
||||
<MDRipple colSpan="3" @tap="navigateTo(item.component, 'item.title', true)" />
|
||||
<Label class="bx" col="0" :text="icon[item.icon]" />
|
||||
<Label col="2" :text="`${item.title}` | L" />
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<Frame ~mainContent id="main-frame">
|
||||
<EnRecipes ref="enrecipes" :filterFavourites="filterFavourites" :filterTrylater="filterTrylater" :selectedCategory="selectedCategory" :closeDrawer="closeDrawer" :hijackGlobalBackEvent="hijackGlobalBackEvent"
|
||||
:releaseGlobalBackEvent="releaseGlobalBackEvent" />
|
||||
<EnRecipes ref="enrecipes" :filterFavourites="filterFavourites" :filterTrylater="filterTrylater" :selectedCuisine="selectedCuisine" :selectedCategory="selectedCategory" :selectedTag="selectedTag" :closeDrawer="closeDrawer"
|
||||
:hijackGlobalBackEvent="hijackGlobalBackEvent" :releaseGlobalBackEvent="releaseGlobalBackEvent" />
|
||||
</Frame>
|
||||
</RadSideDrawer>
|
||||
</Page>
|
||||
|
@ -68,6 +76,10 @@ from "@nativescript/core"
|
|||
import Theme from "@nativescript/theme"
|
||||
import * as Toast from "nativescript-toast"
|
||||
import * as application from "tns-core-modules/application"
|
||||
import {
|
||||
localize
|
||||
}
|
||||
from "@nativescript/localize"
|
||||
import {
|
||||
mapActions,
|
||||
mapState
|
||||
|
@ -81,7 +93,10 @@ import PromptDialog from "./modal/PromptDialog"
|
|||
export default {
|
||||
data() {
|
||||
return {
|
||||
selectedCuisine: null,
|
||||
selectedCategory: null,
|
||||
selectedTag: null,
|
||||
selectedFilterType: 'cuisine',
|
||||
filterFavourites: false,
|
||||
filterTrylater: false,
|
||||
MealPlanner: MealPlanner,
|
||||
|
@ -107,7 +122,6 @@ export default {
|
|||
component: About,
|
||||
icon: "info",
|
||||
}, ],
|
||||
editCategory: false,
|
||||
appTheme: "Light",
|
||||
}
|
||||
},
|
||||
|
@ -116,16 +130,49 @@ export default {
|
|||
MealPlanner,
|
||||
},
|
||||
computed: {
|
||||
...mapState( [ "icon", "recipes", "categories", "yieldUnits", "mealPlans", "currentComponent", ] ),
|
||||
...mapState( [ "icon", "recipes", "cuisines", "categories", "yieldUnits", "mealPlans", "currentComponent" ] ),
|
||||
getCurrentPath() {
|
||||
let path = "/"
|
||||
if ( this.selectedCuisine ) path += localize( this.selectedCuisine )
|
||||
else path = "Cuisines"
|
||||
if ( this.selectedCategory ) path += "/" + localize( this.selectedCategory )
|
||||
if ( this.selectedTag ) path += "/" + localize( this.selectedTag )
|
||||
return path;
|
||||
},
|
||||
getRecipeList() {
|
||||
switch ( this.selectedFilterType ) {
|
||||
case 'cuisine':
|
||||
return this.cuisinesWithRecipes
|
||||
break;
|
||||
case 'category':
|
||||
return this.categoriesWithRecipes
|
||||
break;
|
||||
case 'tag':
|
||||
return this.tagsWithRecipes
|
||||
break;
|
||||
}
|
||||
},
|
||||
cuisinesWithRecipes() {
|
||||
let arr = this.recipes.map( ( e ) => e.cuisine )
|
||||
return arr.length ? [ "All Cuisines", ...new Set( arr ) ] : []
|
||||
},
|
||||
categoriesWithRecipes() {
|
||||
let arr = this.recipes.map( ( e ) => {
|
||||
return e.category
|
||||
} )
|
||||
return [ ...new Set( arr ) ]
|
||||
let arr = this.recipes.map( e => ( this.selectedCuisine === "All Cuisines" || e.cuisine === this.selectedCuisine ) && e.category ).filter( e => e )
|
||||
return arr.length ? [ "All Categories", ...new Set( arr ) ] : []
|
||||
},
|
||||
tagsWithRecipes() {
|
||||
let arr = this.recipes.map( e => {
|
||||
if ( this.selectedCuisine === "All Cuisines" && this.selectedCategory === "All Categories" && e.tags.length ) return e.tags;
|
||||
else if ( this.selectedCuisine === "All Cuisines" && e.category === this.selectedCategory && e.tags.length ) return e.tags;
|
||||
else if ( this.selectedCategory === "All Categories" && e.cuisine === this.selectedCuisine && e.tags.length ) return e.tags;
|
||||
else if ( e.category === this.selectedCategory && e.cuisine === this.selectedCuisine && e.tags.length ) return e.tags;
|
||||
} ).flat().filter( e => e )
|
||||
let showAllTags = this.selectedCuisine === "All Cuisines" && this.selectedCategory === "All Categories"
|
||||
return arr.length ? [ !showAllTags && "All Tags", ...new Set( arr ) ].filter( e => e ) : []
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
...mapActions( [ "setCurrentComponentAction", "initializeRecipes", "initializeCategories", "initializeYieldUnits", "initializeMealPlans", "renameCategoryAction", ] ),
|
||||
...mapActions( [ "setCurrentComponentAction", "initializeListItems", "initializeRecipes", "initializeMealPlans", "setShakeAction" ] ),
|
||||
onPageLoad() {
|
||||
if ( this.appTheme === "Light" ) {
|
||||
const View = android.view.View
|
||||
|
@ -135,43 +182,44 @@ export default {
|
|||
}
|
||||
},
|
||||
// HELPERS
|
||||
toggleCatEdit() {
|
||||
this.editCategory = !this.editCategory
|
||||
if ( this.selectedCategory ) this.setCurrentComponentAction( "EnRecipes" )
|
||||
setRecipeFilter( item ) {
|
||||
this.$navigateBack( {
|
||||
frame: "main-frame",
|
||||
backstackVisible: false
|
||||
} )
|
||||
this.filterFavourites = this.filterTrylater = false
|
||||
this.selectedCategory = null
|
||||
if ( this.selectedCuisine == null ) {
|
||||
this.selectedFilterType = 'category'
|
||||
this.selectedCuisine = item
|
||||
} else if ( this.selectedCategory == null ) {
|
||||
this.selectedFilterType = 'tag'
|
||||
this.selectedCategory = item
|
||||
if ( !this.tagsWithRecipes.length ) this.closeDrawer()
|
||||
} else {
|
||||
this.selectedTag = item;
|
||||
this.closeDrawer()
|
||||
}
|
||||
this.setCurrentComponentAction( "Filtered result" )
|
||||
this.$refs.enrecipes.updateFilter()
|
||||
},
|
||||
renameCategory( category ) {
|
||||
this.releaseGlobalBackEvent()
|
||||
this.$showModal( PromptDialog, {
|
||||
props: {
|
||||
title: `Rename category`,
|
||||
text: category,
|
||||
action: "RENAME",
|
||||
},
|
||||
} ).then( ( newCategory ) => {
|
||||
this.hijackGlobalBackEvent()
|
||||
if ( newCategory.length ) {
|
||||
this.renameCategoryAction( {
|
||||
current: category,
|
||||
updated: newCategory
|
||||
} )
|
||||
this.editCategory = false
|
||||
this.navigateTo( newCategory, newCategory, false, true )
|
||||
}
|
||||
} )
|
||||
},
|
||||
setSelectedCategory( e ) {
|
||||
this.selectedCategory = e.item
|
||||
this.closeDrawer()
|
||||
previousRecipeFilter() {
|
||||
if ( this.selectedCategory ) {
|
||||
this.selectedFilterType = 'category'
|
||||
this.selectedTag = this.selectedCategory = null
|
||||
this.setCurrentComponentAction( "Filtered result" )
|
||||
} else {
|
||||
this.selectedFilterType = 'cuisine'
|
||||
this.selectedCuisine = null
|
||||
this.setCurrentComponentAction( "EnRecipes" )
|
||||
}
|
||||
this.$refs.enrecipes.updateFilter()
|
||||
},
|
||||
closeDrawer() {
|
||||
this.$refs.drawer.nativeView.closeDrawer()
|
||||
},
|
||||
getRecipeCount( category ) {
|
||||
getRecipeCount( arg ) {
|
||||
let count = ''
|
||||
switch ( category ) {
|
||||
switch ( arg ) {
|
||||
case 'EnRecipes':
|
||||
count = this.recipes.length
|
||||
break;
|
||||
|
@ -181,8 +229,30 @@ export default {
|
|||
case 'Favourites':
|
||||
count = this.recipes.filter( e => e.isFavorite ).length
|
||||
break;
|
||||
default:
|
||||
count = this.recipes.filter( e => e.category === category ).length
|
||||
default: {
|
||||
switch ( this.selectedFilterType ) {
|
||||
case 'cuisine':
|
||||
count = this.recipes.filter( e => arg === "All Cuisines" ? e.cuisine : e.cuisine === arg ).length
|
||||
break;
|
||||
case 'category':
|
||||
count = this.recipes.filter( e => this.selectedCuisine === "All Cuisines" ? arg === "All Categories" ? e.category : e.category === arg : arg === "All Categories" ? e.cuisine === this.selectedCuisine && e.category : e.cuisine === this
|
||||
.selectedCuisine && e.category === arg ).length
|
||||
break;
|
||||
case 'tag':
|
||||
count = this.recipes.filter( e => {
|
||||
if ( this.selectedCuisine === "All Cuisines" && this.selectedCategory === "All Categories" ) {
|
||||
return e.tags.includes( arg ) || arg === "All Tags"
|
||||
} else if ( this.selectedCuisine === "All Cuisines" && e.category === this.selectedCategory ) {
|
||||
return e.tags.includes( arg ) || arg === "All Tags"
|
||||
} else if ( this.selectedCategory === "All Categories" && e.cuisine === this.selectedCuisine ) {
|
||||
return e.tags.includes( arg ) || arg === "All Tags"
|
||||
} else if ( e.category === this.selectedCategory && e.cuisine === this.selectedCuisine ) {
|
||||
return e.tags.includes( arg ) || arg === "All Tags"
|
||||
}
|
||||
} ).length
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return count
|
||||
},
|
||||
|
@ -200,18 +270,18 @@ export default {
|
|||
if ( this.$refs.drawer && this.$refs.drawer.nativeView.getIsOpen() ) {
|
||||
preventDefault()
|
||||
this.closeDrawer()
|
||||
this.editCategory = false
|
||||
} else if (
|
||||
[ "Favourites", "Try Later", this.selectedCategory ].includes( this.currentComponent ) ) {
|
||||
[ "Favourites", "Try Later", "Filtered result" ].includes( this.currentComponent ) ) {
|
||||
preventDefault()
|
||||
this.setCurrentComponentAction( "EnRecipes" )
|
||||
this.filterFavourites = this.filterTrylater = false
|
||||
this.selectedCategory = null
|
||||
this.selectedTag = this.selectedCategory = this.selectedCuisine = null
|
||||
this.selectedFilterType = "cuisine"
|
||||
this.$refs.enrecipes.updateFilter()
|
||||
this.releaseGlobalBackEvent()
|
||||
}
|
||||
},
|
||||
navigateTo( to, title, isTrueComponent, isCategory ) {
|
||||
navigateTo( to, title, isTrueComponent ) {
|
||||
if ( title !== this.currentComponent ) {
|
||||
if ( isTrueComponent ) {
|
||||
this.$navigateTo( to, {
|
||||
|
@ -219,7 +289,7 @@ export default {
|
|||
backstackVisible: false
|
||||
} )
|
||||
this.closeDrawer()
|
||||
} else if ( !this.editCategory || !isCategory ) {
|
||||
} else {
|
||||
this.releaseGlobalBackEvent()
|
||||
this.hijackGlobalBackEvent()
|
||||
this.setCurrentComponentAction( to )
|
||||
|
@ -229,14 +299,14 @@ export default {
|
|||
} )
|
||||
this.filterFavourites = to === "Favourites" ? true : false
|
||||
this.filterTrylater = to === "Try Later" ? true : false
|
||||
this.selectedCategory = isCategory ? to : null
|
||||
this.$refs.enrecipes.updateFilter()
|
||||
this.closeDrawer()
|
||||
}
|
||||
this.editCategory = false
|
||||
} else {
|
||||
this.closeDrawer()
|
||||
}
|
||||
this.selectedTag = this.selectedCategory = this.selectedCuisine = null
|
||||
this.selectedFilterType = "cuisine"
|
||||
},
|
||||
},
|
||||
created() {
|
||||
|
@ -245,10 +315,9 @@ export default {
|
|||
Theme.setMode( Theme[ this.appTheme ] )
|
||||
}, 10 )
|
||||
if ( !this.recipes.length ) this.initializeRecipes()
|
||||
if ( !this.categories.length ) this.initializeCategories()
|
||||
if ( !this.yieldUnits.length ) this.initializeYieldUnits()
|
||||
this.initializeListItems()
|
||||
if ( !this.mealPlans.length ) this.initializeMealPlans()
|
||||
console.log( Device.language );
|
||||
this.setShakeAction( ApplicationSettings.getBoolean( "shakeEnabled", true ) )
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -24,13 +24,23 @@
|
|||
<TextField :hint="'My Healthy Recipe' | L" v-model="recipeContent.title" @loaded="setInputTypeText($event, 'words')" />
|
||||
<Label top="0" class="fieldLabel" :text="'Title' | L" />
|
||||
</AbsoluteLayout>
|
||||
<GridLayout columns="*, 8, *">
|
||||
<AbsoluteLayout class="inputField" col="0">
|
||||
<TextField :text="`${recipeContent.cuisine}` | L" editable="false" @focus="modalOpen === false && showCuisine(true)" @tap="showCuisine(false)" />
|
||||
<Label top="0" class="fieldLabel" :text="'Cuisine' | L" />
|
||||
</AbsoluteLayout>
|
||||
<AbsoluteLayout class="inputField" col="2">
|
||||
<TextField ref='category' :text="`${recipeContent.category}` | L" editable="false" @focus="modalOpen === false && showCategories(true)" @tap="showCategories(false)" />
|
||||
<Label top="0" class="fieldLabel" :text="'Category' | L" />
|
||||
</AbsoluteLayout>
|
||||
</GridLayout>
|
||||
<AbsoluteLayout class="inputField">
|
||||
<TextField :text="`${recipeContent.category}` | L" editable="false" @focus="modalOpen === false && showCategories(true)" @tap="showCategories(false)" />
|
||||
<Label top="0" class="fieldLabel" :text="'Category' | L" />
|
||||
<TextField autocapitalizationType="words" ref='tags' :hint="`${$options.filters.L('separate with spaces')}`" v-model="tags" @textChange="splitTags" returnKeyType="next" />
|
||||
<Label top="0" class="fieldLabel" :text="`${$options.filters.L('Tags')} (${$options.filters.L('separate with spaces')})`" />
|
||||
</AbsoluteLayout>
|
||||
<GridLayout columns="*, 8, *">
|
||||
<AbsoluteLayout class="inputField" col="0">
|
||||
<TextField ref="prepTime" :text="timeRequired('prepTime')" editable="false" @focus="
|
||||
<TextField :text="timeRequired('prepTime')" editable="false" @focus="
|
||||
modalOpen === false && setTimeRequired(true, 'prepTime')
|
||||
" @tap="setTimeRequired(false, 'prepTime')" />
|
||||
<Label top="0" class="fieldLabel" :text="'Preparation time' | L" />
|
||||
|
@ -52,14 +62,25 @@
|
|||
<Label top="0" class="fieldLabel" :text="'Yield measured in' | L" />
|
||||
</AbsoluteLayout>
|
||||
</GridLayout>
|
||||
<GridLayout columns="*, 8, *">
|
||||
<AbsoluteLayout class="inputField" col="0">
|
||||
<TextField ref="difficultyLevel" :text="`${recipeContent.difficulty}` | L" editable="false" @focus="modalOpen === false && showDifficultyLevel(true)" @tap="showDifficultyLevel(false)" />
|
||||
<Label top="0" class="fieldLabel" :text="'Difficulty level' | L" />
|
||||
</AbsoluteLayout>
|
||||
</GridLayout>
|
||||
<StackLayout class="hr" margin="24 16"></StackLayout>
|
||||
</StackLayout>
|
||||
<StackLayout margin="0 16">
|
||||
<Label :text="'Ingredients' | L" class="sectionTitle" />
|
||||
<GridLayout columns="*,8,auto,8,auto,8,auto" v-for="(ingredient, index) in recipeContent.ingredients" :key="index">
|
||||
<TextField ref="ingredient" @loaded="focusField($event, 'sentence')" col="0" v-model="recipeContent.ingredients[index].item" :hint="`${$options.filters.L('Item')} ${index + 1}`" returnKeyType="next" />
|
||||
<TextField width="60" col="2" v-model="recipeContent.ingredients[index].quantity" hint="1.00" keyboardType="number" returnKeyType="next" />
|
||||
<TextField width="76" col="4" :text="`${recipeContent.ingredients[index].unit}` | L" editable="false" @focus="modalOpen === false && showUnits($event, true, index)" @tap="showUnits($event, false, index)" />
|
||||
<GridLayout columns="auto,8,auto,8,*,8,auto" v-for="(ingredient, index) in recipeContent.ingredients" :key="index">
|
||||
|
||||
<TextField width="60" col="0" @loaded="!recipeContent.ingredients[index].item && focusField($event)" v-model="recipeContent.ingredients[index].quantity" hint="1.00" keyboardType="number" returnKeyType="next" />
|
||||
|
||||
<TextField width="76" col="2" :text="`${recipeContent.ingredients[index].unit}` | L" editable="false" @focus="modalOpen === false && showUnits($event, true, index)" @tap="showUnits($event, false, index)" />
|
||||
|
||||
<TextField ref="ingredient" @loaded="setInputTypeText($event, 'sentence')" col="4" v-model="recipeContent.ingredients[index].item" :hint="`${$options.filters.L('Item')} ${index + 1}`"
|
||||
@returnPress="index+1 == recipeContent.ingredients.length && addIngredient()" />
|
||||
|
||||
<MDButton variant="text" col="6" class="bx closeBtn" :text="icon.close" @tap="removeIngredient(index)" />
|
||||
</GridLayout>
|
||||
<MDButton variant="text" class="text-btn orkm" :text="`+ ${$options.filters.L('ADD INGREDIENT')}`" @tap="addIngredient()" />
|
||||
|
@ -74,15 +95,6 @@
|
|||
<MDButton variant="text" class="text-btn orkm" :text="`+ ${$options.filters.L('ADD STEP')}`" @tap="addInstruction" />
|
||||
<StackLayout class="hr" margin="24 16"></StackLayout>
|
||||
</StackLayout>
|
||||
<StackLayout margin="0 16">
|
||||
<Label :text="'Combinations' | L" class="sectionTitle" />
|
||||
<GridLayout columns="*,8,auto" v-for="(combination, index) in recipeContent.combinations" :key="index">
|
||||
<TextField class="combinationToken" col="0" :text="getCombinationTitle(combination)" editable="false" />
|
||||
<MDButton variant="text" col="2" class="bx closeBtn" :text="icon.close" @tap="removeCombination(combination)" />
|
||||
</GridLayout>
|
||||
<MDButton variant="text" class="text-btn orkm" :text="`+ ${$options.filters.L('ADD COMBINATION')}`" @tap="showCombinations" />
|
||||
<StackLayout class="hr" margin="24 16"></StackLayout>
|
||||
</StackLayout>
|
||||
<StackLayout margin="0 16">
|
||||
<Label :text="'Notes' | L" class="sectionTitle" />
|
||||
<GridLayout columns="*,8,auto" v-for="(note, index) in recipeContent.notes" :key="index">
|
||||
|
@ -90,6 +102,15 @@
|
|||
<MDButton variant="text" col="2" class="bx closeBtn" :text="icon.close" @tap="removeNote(index)" />
|
||||
</GridLayout>
|
||||
<MDButton variant="text" class="text-btn orkm" :text="`+ ${$options.filters.L('ADD NOTE')}`" @tap="addNote" />
|
||||
<StackLayout class="hr" margin="24 16"></StackLayout>
|
||||
</StackLayout>
|
||||
<StackLayout margin="0 16">
|
||||
<Label :text="'Combinations' | L" class="sectionTitle" />
|
||||
<GridLayout columns="*,8,auto" v-for="(combination, index) in recipeContent.combinations" :key="index">
|
||||
<TextField class="combinationToken" col="0" :text="getCombinationTitle(combination)" editable="false" />
|
||||
<MDButton variant="text" col="2" class="bx closeBtn" :text="icon.close" @tap="removeCombination(combination)" />
|
||||
</GridLayout>
|
||||
<MDButton variant="text" class="text-btn orkm" :text="`+ ${$options.filters.L('ADD COMBINATION')}`" @tap="showCombinations" />
|
||||
</StackLayout>
|
||||
</StackLayout>
|
||||
</ScrollView>
|
||||
|
@ -135,7 +156,7 @@ import PromptDialog from "./modal/PromptDialog.vue"
|
|||
import ListPicker from "./modal/ListPicker.vue"
|
||||
import * as utils from "~/shared/utils"
|
||||
export default {
|
||||
props: [ "recipeID", "selectedCategory", "filterFavourites", "filterTrylater", "navigationFromView", ],
|
||||
props: [ "recipeID", "selectedCuisine", "selectedCategory", "selectedTag", "filterFavourites", "filterTrylater", "navigationFromView", ],
|
||||
data() {
|
||||
return {
|
||||
title: "New recipe",
|
||||
|
@ -143,13 +164,17 @@ export default {
|
|||
recipeContent: {
|
||||
imageSrc: null,
|
||||
title: undefined,
|
||||
cuisine: "Undefined",
|
||||
category: "Undefined",
|
||||
tags: [],
|
||||
prepTime: "00:00",
|
||||
cookTime: "00:00",
|
||||
yield: {
|
||||
quantity: undefined,
|
||||
unit: "Serving",
|
||||
},
|
||||
difficulty: "Easy",
|
||||
rating: 0,
|
||||
ingredients: [],
|
||||
instructions: [],
|
||||
combinations: [],
|
||||
|
@ -158,8 +183,10 @@ export default {
|
|||
tried: true,
|
||||
lastTried: null,
|
||||
lastModified: null,
|
||||
created: null,
|
||||
},
|
||||
tempRecipeContent: {},
|
||||
tags: undefined,
|
||||
blockModal: false,
|
||||
modalOpen: false,
|
||||
newRecipeID: null,
|
||||
|
@ -167,10 +194,15 @@ export default {
|
|||
saving: false,
|
||||
cacheImagePath: null,
|
||||
unSyncCombinations: [],
|
||||
difficultyLevels: [
|
||||
"Easy",
|
||||
"Moderate",
|
||||
"Challenging",
|
||||
],
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapState( [ "icon", "units", "yieldUnits", "recipes", "categories", "currentComponent", ] ),
|
||||
...mapState( [ "icon", "units", "yieldUnits", "recipes", "cuisines", "categories", "currentComponent", ] ),
|
||||
screenWidth() {
|
||||
return Screen.mainScreen.widthDIPs
|
||||
},
|
||||
|
@ -182,7 +214,7 @@ export default {
|
|||
},
|
||||
},
|
||||
methods: {
|
||||
...mapActions( [ "setCurrentComponentAction", "addRecipeAction", "overwriteRecipeAction", "addCategoryAction", "addYieldUnitAction", "unSyncCombinationsAction", ] ),
|
||||
...mapActions( [ "setCurrentComponentAction", "addRecipeAction", "overwriteRecipeAction", "addListItemAction", "unSyncCombinationsAction", ] ),
|
||||
onPageLoad( args ) {
|
||||
const page = args.object;
|
||||
page.bindingContext = new Observable();
|
||||
|
@ -201,20 +233,21 @@ export default {
|
|||
if ( type ) this.setInputTypeText( args, type )
|
||||
if ( !args.object.text ) {
|
||||
args.object.focus()
|
||||
setTimeout( ( e ) => Utils.ad.showSoftInput( args.object.android ), 10 )
|
||||
setTimeout( ( e ) => Utils.ad.showSoftInput( args.object.android ), 100 )
|
||||
}
|
||||
},
|
||||
setInputTypeText( args, type ) {
|
||||
let field = args.object
|
||||
let common = android.text.InputType.TYPE_CLASS_TEXT | android.text.InputType.TYPE_TEXT_FLAG_AUTO_CORRECT
|
||||
switch ( type ) {
|
||||
case "words":
|
||||
field.android.setInputType( android.text.InputType.TYPE_CLASS_TEXT | android.text.InputType.TYPE_TEXT_FLAG_CAP_WORDS | android.text.InputType.TYPE_TEXT_FLAG_AUTO_CORRECT )
|
||||
field.android.setInputType( android.text.InputType.TYPE_TEXT_FLAG_CAP_WORDS | common )
|
||||
break
|
||||
case "sentence":
|
||||
field.android.setInputType( android.text.InputType.TYPE_CLASS_TEXT | android.text.InputType.TYPE_TEXT_FLAG_CAP_SENTENCES | android.text.InputType.TYPE_TEXT_FLAG_AUTO_CORRECT )
|
||||
field.android.setInputType( android.text.InputType.TYPE_TEXT_FLAG_CAP_SENTENCES | common )
|
||||
break
|
||||
case "multiLine":
|
||||
field.android.setInputType( android.text.InputType.TYPE_CLASS_TEXT | android.text.InputType.TYPE_TEXT_FLAG_MULTI_LINE | android.text.InputType.TYPE_TEXT_FLAG_CAP_SENTENCES | android.text.InputType.TYPE_TEXT_FLAG_AUTO_CORRECT )
|
||||
field.android.setInputType( android.text.InputType.TYPE_TEXT_FLAG_MULTI_LINE | android.text.InputType.TYPE_TEXT_FLAG_CAP_SENTENCES | common )
|
||||
break
|
||||
default:
|
||||
break
|
||||
|
@ -223,7 +256,7 @@ export default {
|
|||
getRandomID() {
|
||||
let res = ""
|
||||
let chars = "abcdefghijklmnopqrstuvwxyz0123456789"
|
||||
for ( let i = 0; i < 10; i++ ) {
|
||||
for ( let i = 0; i < 20; i++ ) {
|
||||
res += chars.charAt( Math.floor( Math.random() * chars.length ) )
|
||||
}
|
||||
return res
|
||||
|
@ -263,13 +296,56 @@ export default {
|
|||
this.viewIsScrolled = args.scrollY ? true : false
|
||||
},
|
||||
// DATA LIST
|
||||
showCuisine( focus ) {
|
||||
this.modalOpen = true
|
||||
this.releaseBackEvent()
|
||||
this.$showModal( ActionDialog, {
|
||||
props: {
|
||||
title: "Cuisine",
|
||||
list: this.cuisines,
|
||||
stretch: true,
|
||||
action: "ADD NEW",
|
||||
},
|
||||
} ).then( ( action ) => {
|
||||
if ( action == "ADD NEW" ) {
|
||||
this.$showModal( PromptDialog, {
|
||||
props: {
|
||||
title: "New cuisine",
|
||||
action: "ADD",
|
||||
},
|
||||
} ).then( ( item ) => {
|
||||
this.hijackBackEvent()
|
||||
if ( item.length ) {
|
||||
this.recipeContent.cuisine = item
|
||||
ApplicationSettings.setString( "previousCuisine", item )
|
||||
this.addListItemAction( {
|
||||
item,
|
||||
listName: 'cuisines'
|
||||
} )
|
||||
this.modalOpen = false
|
||||
if ( focus ) this.autoFocusField( "category", false )
|
||||
}
|
||||
} )
|
||||
} else if ( action ) {
|
||||
this.recipeContent.cuisine = action
|
||||
ApplicationSettings.setString( "previousCuisine", action )
|
||||
this.hijackBackEvent()
|
||||
this.modalOpen = false
|
||||
if ( focus ) this.autoFocusField( "category", false )
|
||||
} else {
|
||||
this.cuisines.includes( this.recipeContent.cuisine ) ? mull : this.recipeContent.cuisine = 'Undefined'
|
||||
this.hijackBackEvent()
|
||||
}
|
||||
} )
|
||||
},
|
||||
showCategories( focus ) {
|
||||
this.modalOpen = true
|
||||
this.releaseBackEvent()
|
||||
this.$showModal( ActionDialog, {
|
||||
props: {
|
||||
title: "Category",
|
||||
list: [ ...this.categories ],
|
||||
list: this.categories,
|
||||
stretch: true,
|
||||
action: "ADD NEW",
|
||||
},
|
||||
} ).then( ( action ) => {
|
||||
|
@ -279,41 +355,39 @@ export default {
|
|||
title: "New category",
|
||||
action: "ADD",
|
||||
},
|
||||
} ).then( ( category ) => {
|
||||
} ).then( ( item ) => {
|
||||
this.hijackBackEvent()
|
||||
if ( category.length ) {
|
||||
this.recipeContent.category = category
|
||||
this.addCategoryAction( category )
|
||||
if ( item.length ) {
|
||||
this.recipeContent.category = item
|
||||
ApplicationSettings.setString( "previousCategory", item )
|
||||
this.addListItemAction( {
|
||||
item,
|
||||
listName: 'categories'
|
||||
} )
|
||||
this.modalOpen = false
|
||||
if ( focus ) this.autoFocusField( "prepTime", false )
|
||||
if ( focus ) this.autoFocusField( "tags", true )
|
||||
}
|
||||
} )
|
||||
} else if ( action ) {
|
||||
this.recipeContent.category = action
|
||||
ApplicationSettings.setString( "previousCategory", action )
|
||||
this.hijackBackEvent()
|
||||
this.modalOpen = false
|
||||
if ( focus ) this.autoFocusField( "prepTime", false )
|
||||
if ( focus ) this.autoFocusField( "tags", true )
|
||||
} else {
|
||||
this.categories.includes( this.recipeContent.category ) ? mull : this.recipeContent.category = 'Undefined'
|
||||
this.hijackBackEvent()
|
||||
}
|
||||
} )
|
||||
},
|
||||
autoFocusField( ref, showSoftInput ) {
|
||||
this.$refs[ ref ].nativeView.focus()
|
||||
if ( showSoftInput ) {
|
||||
setTimeout( () => {
|
||||
Utils.ad.showSoftInput( this.$refs[ ref ].nativeView.android )
|
||||
}, 1 )
|
||||
}
|
||||
},
|
||||
showYieldUnits( focus ) {
|
||||
this.modalOpen = true
|
||||
this.releaseBackEvent()
|
||||
this.$showModal( ActionDialog, {
|
||||
props: {
|
||||
title: "Yield measured in",
|
||||
list: [ ...this.yieldUnits ],
|
||||
// height: "420",
|
||||
list: this.yieldUnits,
|
||||
stretch: true,
|
||||
action: "ADD NEW",
|
||||
},
|
||||
} ).then( ( action ) => {
|
||||
|
@ -323,21 +397,48 @@ export default {
|
|||
title: "New yield unit",
|
||||
action: "ADD",
|
||||
},
|
||||
} ).then( ( yieldUnit ) => {
|
||||
} ).then( ( item ) => {
|
||||
this.hijackBackEvent()
|
||||
if ( yieldUnit.length ) {
|
||||
this.recipeContent.yield.unit = yieldUnit
|
||||
this.addYieldUnitAction( yieldUnit )
|
||||
if ( item.length ) {
|
||||
this.recipeContent.yield.unit = item
|
||||
ApplicationSettings.setString( "previousYieldUnit", item )
|
||||
this.addListItemAction( {
|
||||
item,
|
||||
listName: 'yieldUnits'
|
||||
} )
|
||||
this.modalOpen = false
|
||||
if ( focus ) this.addIngredient()
|
||||
if ( focus ) this.autoFocusField( "difficultyLevel", false )
|
||||
}
|
||||
} )
|
||||
} else if ( action ) {
|
||||
this.recipeContent.yield.unit = action
|
||||
ApplicationSettings.setString( "previousYieldUnit", action )
|
||||
this.hijackBackEvent()
|
||||
this.modalOpen = false
|
||||
if ( focus ) this.autoFocusField( "difficultyLevel", false )
|
||||
} else {
|
||||
this.yieldUnits.includes( this.recipeContent.yield.unit ) ? mull : this.recipeContent.yield.unit = 'Serving'
|
||||
this.hijackBackEvent()
|
||||
}
|
||||
} )
|
||||
},
|
||||
showDifficultyLevel( focus ) {
|
||||
this.modalOpen = true
|
||||
this.releaseBackEvent()
|
||||
this.$showModal( ActionDialog, {
|
||||
props: {
|
||||
title: "Difficulty level",
|
||||
list: this.difficultyLevels,
|
||||
stretch: false,
|
||||
},
|
||||
} ).then( ( action ) => {
|
||||
if ( action ) {
|
||||
this.recipeContent.difficulty = action
|
||||
this.hijackBackEvent()
|
||||
this.modalOpen = false
|
||||
if ( focus ) this.addIngredient()
|
||||
} else {
|
||||
this.difficultyLevels.includes( this.recipeContent.difficulty ) ? mull : this.recipeContent.difficulty = 'Easy'
|
||||
this.hijackBackEvent()
|
||||
}
|
||||
} )
|
||||
|
@ -347,26 +448,55 @@ export default {
|
|||
this.releaseBackEvent()
|
||||
this.$showModal( ActionDialog, {
|
||||
props: {
|
||||
title: localize( "Unit" ),
|
||||
list: [ ...this.units ],
|
||||
title: "Units",
|
||||
list: this.units,
|
||||
stretch: true,
|
||||
action: "ADD NEW",
|
||||
},
|
||||
} ).then( ( action ) => {
|
||||
this.hijackBackEvent()
|
||||
if ( action ) {
|
||||
this.recipeContent.ingredients[ index ].unit = e.object.text = action
|
||||
this.modalOpen = false
|
||||
if ( focus ) {
|
||||
if ( this.recipeContent.ingredients.length - 1 === index ) {
|
||||
this.addIngredient()
|
||||
} else {
|
||||
this.$refs.ingredient[ index + 1 ].nativeView.focus()
|
||||
setTimeout(
|
||||
( e ) => Utils.ad.showSoftInput( this.$refs.ingredient[ index + 1 ].nativeView.android ), 10 )
|
||||
if ( action == "ADD NEW" ) {
|
||||
this.$showModal( PromptDialog, {
|
||||
props: {
|
||||
title: "New unit",
|
||||
action: "ADD",
|
||||
},
|
||||
} ).then( ( item ) => {
|
||||
this.hijackBackEvent()
|
||||
if ( item.length ) {
|
||||
this.recipeContent.ingredients[ index ].unit = item
|
||||
this.addListItemAction( {
|
||||
item,
|
||||
listName: 'units'
|
||||
} )
|
||||
this.modalOpen = false
|
||||
if ( focus && this.recipeContent.ingredients.length - 1 === index )
|
||||
this.autoFocusRefField( 'ingredient', index )
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
} )
|
||||
} else if ( action ) {
|
||||
this.recipeContent.ingredients[ index ].unit = action
|
||||
this.modalOpen = false
|
||||
if ( focus && this.recipeContent.ingredients.length - 1 === index ) this.autoFocusRefField( 'ingredient', index )
|
||||
}
|
||||
} )
|
||||
},
|
||||
autoFocusField( ref, showSoftInput ) {
|
||||
this.$refs[ ref ].nativeView.focus()
|
||||
if ( showSoftInput ) {
|
||||
setTimeout( () => {
|
||||
Utils.ad.showSoftInput( this.$refs[ ref ].nativeView.android )
|
||||
}, 100 )
|
||||
}
|
||||
},
|
||||
autoFocusRefField( ref, index ) {
|
||||
this.$refs[ ref ][ index ].nativeView.focus()
|
||||
setTimeout( () => {
|
||||
Utils.ad.showSoftInput( this.$refs[ ref ][ index ].nativeView.android )
|
||||
}, 100 )
|
||||
},
|
||||
// NAVIGATION HANDLERS
|
||||
navigateBackController() {
|
||||
if ( this.navigationFromView ) {
|
||||
|
@ -415,6 +545,7 @@ export default {
|
|||
},
|
||||
// DATA HANDLERS
|
||||
imageHandler() {
|
||||
this.clearEmptyFields()
|
||||
if ( this.recipeContent.imageSrc ) {
|
||||
this.blockModal = true
|
||||
this.$showModal( ConfirmDialog, {
|
||||
|
@ -500,6 +631,21 @@ export default {
|
|||
} )
|
||||
},
|
||||
// INPUT FIELD HANDLERS
|
||||
splitTags() {
|
||||
let string
|
||||
if ( this.tags ) {
|
||||
let tags = this.tags.split( " " ).map( e => {
|
||||
string = e.replace( /^[^\w\s]+/, '' )
|
||||
if ( /^[A-Za-z]+/.test( string ) ) {
|
||||
return string.charAt( 0 ).toUpperCase() + string.slice( 1 )
|
||||
}
|
||||
} ).filter( e => e )
|
||||
this.recipeContent.tags = tags
|
||||
}
|
||||
},
|
||||
joinTags() {
|
||||
this.tags = this.recipeContent.tags.join( " " )
|
||||
},
|
||||
fieldDeletionConfirm( title ) {
|
||||
return this.$showModal( ConfirmDialog, {
|
||||
props: {
|
||||
|
@ -510,20 +656,26 @@ export default {
|
|||
} )
|
||||
},
|
||||
addIngredient() {
|
||||
let ingredients = this.recipeContent.ingredients
|
||||
let unit = ingredients.length ? ingredients[ ingredients.length - 1 ].unit : "unit"
|
||||
this.recipeContent.ingredients.push( {
|
||||
item: "",
|
||||
quantity: null,
|
||||
unit: "unit",
|
||||
unit,
|
||||
} )
|
||||
},
|
||||
removeIngredient( index ) {
|
||||
this.modalOpen = true
|
||||
if ( this.recipeContent.ingredients[ index ].item.length ) {
|
||||
this.fieldDeletionConfirm( "Remove ingredient?" ).then( ( res ) => {
|
||||
if ( res ) {
|
||||
this.recipeContent.ingredients.splice( index, 1 )
|
||||
}
|
||||
} )
|
||||
} else this.recipeContent.ingredients.splice( index, 1 )
|
||||
} else {
|
||||
this.recipeContent.ingredients.splice( index, 1 )
|
||||
}
|
||||
setTimeout( e => this.modalOpen = false, 200 )
|
||||
},
|
||||
addInstruction() {
|
||||
this.recipeContent.instructions.push( "" )
|
||||
|
@ -576,7 +728,7 @@ export default {
|
|||
},
|
||||
// SAVE OPERATION
|
||||
clearEmptyFields() {
|
||||
if ( !this.recipeContent.title ) this.recipeContent.title = "Untitled Recipe"
|
||||
if ( !this.recipeContent.title ) this.recipeContent.title = localize( "Untitled Recipe" )
|
||||
if ( !this.recipeContent.yield.quantity ) this.recipeContent.yield.quantity = 1
|
||||
this.recipeContent.ingredients = this.recipeContent.ingredients.filter(
|
||||
( e ) => e.item )
|
||||
|
@ -613,7 +765,6 @@ export default {
|
|||
this.saveRecipe()
|
||||
},
|
||||
saveRecipe() {
|
||||
console.log( this.recipeContent.ingredients );
|
||||
if ( this.recipeID ) {
|
||||
this.overwriteRecipeAction( {
|
||||
id: this.recipeID,
|
||||
|
@ -641,9 +792,18 @@ export default {
|
|||
let recipe = this.recipes.filter( ( e ) => e.id === this.recipeID )[ 0 ]
|
||||
Object.assign( this.recipeContent, JSON.parse( JSON.stringify( recipe ) ) )
|
||||
Object.assign( this.tempRecipeContent, JSON.parse( JSON.stringify( this.recipeContent ) ) )
|
||||
if ( this.recipeContent.tags.length ) this.joinTags()
|
||||
} else {
|
||||
if ( this.selectedCategory ) this.recipeContent.category = this.selectedCategory
|
||||
this.recipeContent.cuisine = this.selectedCuisine ? /All/.test( this.selectedCuisine ) ? "Undefined" : this.selectedCuisine : ApplicationSettings.getString( "previousCuisine", "Undefined" )
|
||||
this.recipeContent.category = this.selectedCategory ? /All/.test( this.selectedCategory ) ? "Undefined" : this.selectedCategory : ApplicationSettings.getString( "previousCategory", "Undefined" )
|
||||
if ( this.selectedTag && !/All/.test( this.selectedTag ) ) {
|
||||
this.tags = this.selectedTag
|
||||
this.splitTags()
|
||||
}
|
||||
this.recipeContent.yield.unit = ApplicationSettings.getString( "previousYieldUnit", "Serving" )
|
||||
if ( this.filterFavourites ) this.recipeContent.isFavorite = true
|
||||
if ( this.filterTrylater ) this.recipeContent.tried = false
|
||||
this.recipeContent.created = new Date()
|
||||
Object.assign( this.tempRecipeContent, JSON.parse( JSON.stringify( this.recipeContent ) ) )
|
||||
this.newRecipeID = this.getRandomID()
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<ActionBar :androidElevation="viewIsScrolled ? 4 : 0">
|
||||
<GridLayout v-if="showSearch" columns="auto, *" verticalAlignment="center">
|
||||
<MDButton class="bx" :text="icon.back" variant="text" automationText="Back" col="0" @tap="closeSearch" />
|
||||
<SearchBar col="1" :hint="'Search by name or ingredient' | L" v-model="searchQuery" @textChange="updateFilter" @clear="clearSearch" />
|
||||
<SearchBar col="1" :hint="'Search' | L" v-model="searchQuery" @textChange="updateFilter" @clear="clearSearch" />
|
||||
</GridLayout>
|
||||
<GridLayout v-else columns="auto, *, auto, auto">
|
||||
<MDButton class="bx" col="0" variant="text" @tap="showDrawer" :text="icon.menu" automationText="Back" />
|
||||
|
@ -13,46 +13,58 @@
|
|||
</GridLayout>
|
||||
</ActionBar>
|
||||
<AbsoluteLayout>
|
||||
<RadListView ref="listView" itemHeight="112" for="recipe in recipes" swipeActions="true" @itemSwipeProgressChanged="onSwiping" @itemSwipeProgressEnded="onSwipeEnded" @scrolled="onScroll" :filteringFunction="filterFunction"
|
||||
<RadListView ref="listView" itemHeight="104" for="recipe in recipes" swipeActions="true" @itemSwipeProgressChanged="onSwiping" @itemSwipeProgressEnded="onSwipeEnded" @scrolled="onScroll" :filteringFunction="filterFunction"
|
||||
:sortingFunction="sortFunction">
|
||||
<v-template name="header">
|
||||
<StackLayout height="4"></StackLayout>
|
||||
</v-template>
|
||||
<v-template>
|
||||
<GridLayout class="recipeItem" rows="112" columns="112, *" androidElevation="1">
|
||||
<GridLayout class="recipeItem" rows="104" columns="104, *" androidElevation="1">
|
||||
<MDRipple colSpan="2" @tap="viewRecipe(recipe.id)" />
|
||||
<GridLayout class="imageHolder card" rows="112" columns="112">
|
||||
<Image row="0" col="0" v-if="recipe.imageSrc" :src="recipe.imageSrc" stretch="aspectFill" decodeWidth="112" decodeHeight="112" loadMode="async" />
|
||||
<GridLayout class="imageHolder card" rows="104" columns="104">
|
||||
<Image row="0" col="0" v-if="recipe.imageSrc" :src="recipe.imageSrc" stretch="aspectFill" decodeWidth="104" decodeHeight="104" loadMode="async" />
|
||||
<Label v-else row="0" col="0" horizontalAlignment="center" class="bx" fontSize="56" :text="icon.image" />
|
||||
</GridLayout>
|
||||
<StackLayout class="recipeInfo" col="1">
|
||||
<Label :text="`${recipe.category}` | L" class="orkm category" />
|
||||
<Label :text="`${$options.filters.L(recipe.cuisine)} • ${$options.filters.L(recipe.category)}`" class="category" />
|
||||
<Label :text="recipe.title" class="orkm title" />
|
||||
<StackLayout class="timeContainer" orientation="horizontal">
|
||||
<Label class="bx small" :text="icon.time" />
|
||||
<Label class="time" :text="
|
||||
`${
|
||||
formattedTotalTime(recipe.prepTime, recipe.cookTime).time
|
||||
}`
|
||||
" />
|
||||
</StackLayout>
|
||||
<GridLayout columns="*" rows="auto, *, auto">
|
||||
<StackLayout class="attrContainer" orientation="horizontal" row="0">
|
||||
<Label class="bx small" :text="icon.starLine" />
|
||||
<Label class="attr" :text="recipe.rating" />
|
||||
<Label class="bx small" :text="icon.meter" />
|
||||
<Label class="attr" :text="`${recipe.difficulty}` | L" />
|
||||
<Label class="bx small" :text="icon.time" />
|
||||
<Label class="attr" :text="
|
||||
`${
|
||||
formattedTotalTime(recipe.prepTime, recipe.cookTime).time
|
||||
}`
|
||||
" />
|
||||
</StackLayout>
|
||||
<FlexboxLayout class="tagsContainer" flexWrap="wrap" row="2">
|
||||
<Label v-for="(tag, index) in recipe.tags" :key="index" v-if="tag && index < 2" class="tag" :text="tag" />
|
||||
<Label class="collapsedTagsCount" v-if="recipe.tags.length > 2" :text="recipe.tags.length - 2 +'+'" />
|
||||
</FlexboxLayout>
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
</v-template>
|
||||
<v-template name="itemswipe">
|
||||
<GridLayout columns="*, auto">
|
||||
<GridLayout columns="*, auto" padding="0">
|
||||
<StackLayout id="delete-action" col="1" class="swipe-item right">
|
||||
<Label class="bx" padding="8 0 0 6" :text="icon.trash" />
|
||||
<Label class="bx" padding="8" :text="icon.trash" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
</v-template>
|
||||
<v-template name="footer">
|
||||
<StackLayout height="80"></StackLayout>
|
||||
<StackLayout height="84"></StackLayout>
|
||||
</v-template>
|
||||
</RadListView>
|
||||
<GridLayout rows="*, auto, *, 88" columns="*" class="emptyStateContainer">
|
||||
<StackLayout row="1" class="emptyState" v-if="
|
||||
!recipes.length &&
|
||||
!filterFavourites &&
|
||||
!filterTrylater &&
|
||||
!selectedCategory
|
||||
!filterTrylater
|
||||
" @tap="addRecipe">
|
||||
<Label class="bx icon" :text="icon.plusCircle" />
|
||||
<Label class="title orkm" :text="'Start adding your recipes!' | L" textWrap="true" />
|
||||
|
@ -61,17 +73,17 @@
|
|||
</StackLayout>
|
||||
</StackLayout>
|
||||
<StackLayout row="1" class="emptyState" v-if="!filteredRecipes.length && filterTrylater && !searchQuery">
|
||||
<Label class="bx icon" :text="icon.trylaterOutline" textWrap="true" />
|
||||
<Label class="bx icon" :text="icon.trylaterLine" textWrap="true" />
|
||||
<Label class="title orkm" :text="'All done!' | L" textWrap="true" />
|
||||
<Label :text="'Recipes you mark as try later will be listed here' | L" textWrap="true" />
|
||||
</StackLayout>
|
||||
<StackLayout row="1" class="emptyState" v-if="!filteredRecipes.length && filterFavourites && !searchQuery">
|
||||
<Label class="bx icon" :text="icon.heartOutline" textWrap="true" />
|
||||
<Label class="bx icon" :text="icon.heartLine" textWrap="true" />
|
||||
<Label class="title orkm" :text="'No favourites yet' | L" textWrap="true" />
|
||||
<Label :text="'Recipes you mark as favourite will be listed here' | L" textWrap="true" />
|
||||
</StackLayout>
|
||||
<StackLayout row="1" class="emptyState" v-if="!filteredRecipes.length && !searchQuery && selectedCategory">
|
||||
<Label class="bx icon" :text="icon.labelOutline" textWrap="true" />
|
||||
<StackLayout row="1" class="emptyState" v-if="selectedCuisine && !filteredRecipes.length && !searchQuery">
|
||||
<Label class="bx icon" :text="icon.categoryLine" textWrap="true" />
|
||||
<Label class="title orkm" :text="'Category looks empty' | L" textWrap="true" />
|
||||
<StackLayout orientation="horizontal" horizontalAlignment="center">
|
||||
<Label :text="'Use the plus button to add one' | L" textWrap="true" />
|
||||
|
@ -94,15 +106,28 @@
|
|||
|
||||
<script>
|
||||
import {
|
||||
ApplicationSettings,
|
||||
AndroidApplication,
|
||||
Utils,
|
||||
Observable
|
||||
Observable,
|
||||
Device,
|
||||
}
|
||||
from "@nativescript/core";
|
||||
import {
|
||||
localize
|
||||
}
|
||||
from "@nativescript/localize"
|
||||
import {
|
||||
time
|
||||
} from "tns-core-modules/profiling"
|
||||
import {
|
||||
startAccelerometerUpdates,
|
||||
stopAccelerometerUpdates,
|
||||
} from "nativescript-accelerometer"
|
||||
import {
|
||||
Vibrate
|
||||
} from 'nativescript-vibrate';
|
||||
let vibrator = new Vibrate();
|
||||
import {
|
||||
mapActions,
|
||||
mapState
|
||||
|
@ -113,8 +138,12 @@ import ViewRecipe from "./ViewRecipe.vue";
|
|||
import ActionDialog from "./modal/ActionDialog.vue";
|
||||
import ConfirmDialog from "./modal/ConfirmDialog.vue";
|
||||
import * as utils from "~/shared/utils";
|
||||
let lastTime = 0;
|
||||
let lastShake = 0;
|
||||
let lastForce = 0;
|
||||
let shakeCount = 0;
|
||||
export default {
|
||||
props: [ "filterFavourites", "filterTrylater", "closeDrawer", "selectedCategory", "hijackGlobalBackEvent", "releaseGlobalBackEvent" ],
|
||||
props: [ "filterFavourites", "filterTrylater", "closeDrawer", "selectedCategory", "selectedCuisine", "selectedTag", "hijackGlobalBackEvent", "releaseGlobalBackEvent" ],
|
||||
components: {
|
||||
EditRecipe,
|
||||
ViewRecipe
|
||||
|
@ -125,41 +154,46 @@ export default {
|
|||
viewIsScrolled: false,
|
||||
showSearch: false,
|
||||
rightAction: false,
|
||||
sortType: "Natural order",
|
||||
deletionDialogActive: false,
|
||||
showFAB: false
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapState( [ "icon", "recipes", "currentComponent" ] ),
|
||||
...mapState( [ "sortType", "icon", "recipes", "currentComponent", "shakeEnabled" ] ),
|
||||
filteredRecipes() {
|
||||
let ingredients = this.recipes.map( e => e.ingredients.map( f => f.item.toLowerCase() ).join() ).join()
|
||||
let tags = this.recipes.map( e => e.tags.map( f => f.toLowerCase() ).join() ).join()
|
||||
|
||||
if ( this.filterFavourites ) {
|
||||
return this.recipes.filter( e => e.isFavorite && e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) );
|
||||
return this.recipes.filter( e => e.isFavorite && ( tags.includes( this.searchQuery ) || e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) ) )
|
||||
} else if ( this.filterTrylater ) {
|
||||
return this.recipes.filter( e => !e.tried && e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) );
|
||||
} else if ( this.selectedCategory ) {
|
||||
return this.recipes.filter( e => e.category === this.selectedCategory && e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) );
|
||||
return this.recipes.filter( e => !e.tried && ( tags.includes( this.searchQuery ) || e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) ) )
|
||||
} else if ( this.selectedCuisine ) {
|
||||
return this.recipes.filter( e => {
|
||||
return this.recipeFilter( e ) && ( tags.includes( this.searchQuery ) || e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) )
|
||||
} )
|
||||
} else {
|
||||
return this.recipes.filter( e => e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) );
|
||||
return this.recipes.filter( e => tags.includes( this.searchQuery ) || e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) )
|
||||
}
|
||||
},
|
||||
noResultFor() {
|
||||
if ( this.selectedCategory ) return "Your search did not match any recipes in this category";
|
||||
if ( this.selectedCuisine ) return "Your search did not match any recipes in the filtered result";
|
||||
if ( this.filterFavourites ) return "Your search did not match any recipes in your favourites";
|
||||
if ( this.filterTrylater ) return "Your search did not match any recipes in your try later list";
|
||||
return "Your search did not match any recipes";
|
||||
}
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
...mapActions( [ "setCurrentComponentAction", "deleteRecipeAction" ] ),
|
||||
...mapActions( [ "setCurrentComponentAction", "setSortTypeAction", "deleteRecipeAction" ] ),
|
||||
onPageLoad( args ) {
|
||||
const page = args.object;
|
||||
page.bindingContext = new Observable();
|
||||
this.filterFavourites ? this.setComponent( "Favourites" ) : this.filterTrylater ? this.setComponent( "Try Later" ) : this.selectedCategory ? this.setComponent( this.selectedCategory ) : this.setComponent( "EnRecipes" );
|
||||
this.filterFavourites ? this.setComponent( "Favourites" ) : this.filterTrylater ? this.setComponent( "Try Later" ) : this.selectedCuisine ? this.setComponent( "Filtered result" ) : this.setComponent( "EnRecipes" );
|
||||
this.showFAB = true;
|
||||
if ( this.shakeEnabled ) startAccelerometerUpdates( data => this.onSensorData( data ) )
|
||||
},
|
||||
onPageUnload() {
|
||||
if ( this.shakeEnabled ) stopAccelerometerUpdates();
|
||||
this.releaseGlobalBackEvent();
|
||||
},
|
||||
// HELPERS
|
||||
|
@ -191,8 +225,9 @@ export default {
|
|||
formattedTotalTime( prepTime, cookTime ) {
|
||||
let t1 = prepTime.split( ":" );
|
||||
let t2 = cookTime.split( ":" );
|
||||
let h = parseInt( t1[ 0 ] ) + parseInt( t2[ 0 ] );
|
||||
let m = parseInt( t1[ 1 ] ) + parseInt( t2[ 1 ] );
|
||||
let minutes = parseInt( t1[ 1 ] ) + parseInt( t2[ 1 ] )
|
||||
let m = minutes % 60
|
||||
let h = parseInt( t1[ 0 ] ) + parseInt( t2[ 0 ] ) + Math.floor( minutes / 60 );
|
||||
let hr = localize( 'hr' )
|
||||
let min = localize( 'min' )
|
||||
return {
|
||||
|
@ -203,6 +238,23 @@ export default {
|
|||
onScroll( args ) {
|
||||
this.viewIsScrolled = args.scrollOffset ? true : false;
|
||||
},
|
||||
randomRecipeID() { // TODO: show only from selected filter
|
||||
let min = 0
|
||||
let max = this.filteredRecipes.length - 1
|
||||
let randomIndex = Math.round( Math.random() * ( max - min ) )
|
||||
return this.filteredRecipes[ randomIndex ].id
|
||||
},
|
||||
recipeFilter( e ) {
|
||||
let cuisineMatched = e.cuisine === this.selectedCuisine
|
||||
let allCuisines = /All/.test( this.selectedCuisine )
|
||||
let categoryMatched = e.category === this.selectedCategory
|
||||
let allCategories = /All/.test( this.selectedCategory )
|
||||
let tagMatched = e.tags.includes( this.selectedTag )
|
||||
let allTags = /All/.test( this.selectedTag )
|
||||
let cuisine = cuisineMatched || allCuisines
|
||||
|
||||
return this.selectedTag && !allTags ? ( categoryMatched || allCategories ) && cuisine && tagMatched : this.selectedCategory && !allCategories ? cuisine && categoryMatched : cuisine
|
||||
},
|
||||
// NAVIGATION HANDLERS
|
||||
hijackLocalBackEvent() {
|
||||
this.releaseGlobalBackEvent();
|
||||
|
@ -222,8 +274,11 @@ export default {
|
|||
this.releaseGlobalBackEvent();
|
||||
this.$navigateTo( EditRecipe, {
|
||||
props: {
|
||||
selectedCuisine: this.selectedCuisine,
|
||||
selectedCategory: this.selectedCategory,
|
||||
filterFavourites: this.filterFavourites
|
||||
selectedTag: this.selectedTag,
|
||||
filterFavourites: this.filterFavourites,
|
||||
filterTrylater: this.filterTrylater,
|
||||
}
|
||||
} );
|
||||
},
|
||||
|
@ -237,18 +292,29 @@ export default {
|
|||
backstackVisible: false
|
||||
} );
|
||||
},
|
||||
viewRandomRecipe() {
|
||||
this.showFAB = false;
|
||||
this.$navigateTo( ViewRecipe, {
|
||||
props: {
|
||||
filterTrylater: false,
|
||||
recipeID: this.randomRecipeID()
|
||||
},
|
||||
backstackVisible: false
|
||||
} );
|
||||
},
|
||||
// LIST HANDLERS
|
||||
sortDialog() {
|
||||
this.releaseGlobalBackEvent();
|
||||
this.$showModal( ActionDialog, {
|
||||
props: {
|
||||
title: "Sort by",
|
||||
list: [ "Natural order", "Title", "Duration", "Last modified" ],
|
||||
height: "192"
|
||||
list: [ "Title", "Quickest first", "Slowest first", "Rating", "Difficulty level", "Last updated", "Newest first", "Oldest first" ],
|
||||
stretch: false
|
||||
}
|
||||
} ).then( action => {
|
||||
if ( action && action !== "Cancel" && this.sortType !== action ) {
|
||||
this.sortType = action;
|
||||
this.setSortTypeAction( action )
|
||||
ApplicationSettings.setString( "sortType", action )
|
||||
this.updateSort();
|
||||
}
|
||||
this.hijackGlobalBackEvent();
|
||||
|
@ -260,25 +326,54 @@ export default {
|
|||
listView.sortingFunction = this.sortFunction;
|
||||
},
|
||||
sortFunction( item, otherItem ) {
|
||||
const titleOrder = item.title.toLowerCase().localeCompare( otherItem.title.toLowerCase(), "en", {
|
||||
const titleOrder = item.title.toLowerCase().localeCompare( otherItem.title.toLowerCase(), Device.language, {
|
||||
ignorePunctuation: true
|
||||
} );
|
||||
let d1 = this.formattedTotalTime( item.prepTime, item.cookTime ).duration;
|
||||
let d2 = this.formattedTotalTime( otherItem.prepTime, otherItem.cookTime ).duration;
|
||||
let ld1 = new Date( item.lastModified );
|
||||
let ld2 = new Date( otherItem.lastModified );
|
||||
let cd1 = new Date( item.created );
|
||||
let cd2 = new Date( otherItem.created );
|
||||
let r1 = item.rating
|
||||
let r2 = otherItem.rating
|
||||
|
||||
function difficultyLevel( level ) {
|
||||
switch ( level ) {
|
||||
case "Easy":
|
||||
return 1;
|
||||
case "Moderate":
|
||||
return 2;
|
||||
case "Challenging":
|
||||
return 3;
|
||||
}
|
||||
}
|
||||
let dl1 = difficultyLevel( item.difficulty )
|
||||
let dl2 = difficultyLevel( otherItem.difficulty )
|
||||
switch ( this.sortType ) {
|
||||
case "Title":
|
||||
return titleOrder > 0 ? -1 : titleOrder < 0 ? 1 : 0;
|
||||
break;
|
||||
case "Duration":
|
||||
case "Quickest first":
|
||||
return d1 > d2 ? -1 : d1 < d2 ? 1 : 0;
|
||||
break;
|
||||
case "Last modified":
|
||||
case "Slowest first":
|
||||
return d1 > d2 ? 1 : d1 < d2 ? -1 : 0;
|
||||
break;
|
||||
case "Rating":
|
||||
return r1 > r2 ? 1 : r1 < r2 ? -1 : 0;
|
||||
break;
|
||||
case "Difficulty level":
|
||||
return dl1 > dl2 ? -1 : dl1 < dl2 ? 1 : 0;
|
||||
break;
|
||||
case "Last updated":
|
||||
return ld1 < ld2 ? -1 : ld1 > ld2 ? 1 : 0;
|
||||
break;
|
||||
default:
|
||||
return 0;
|
||||
case "Newest first":
|
||||
return cd1 < cd2 ? -1 : cd1 > cd2 ? 1 : 0;
|
||||
break;
|
||||
case "Oldest first":
|
||||
return cd1 < cd2 ? 1 : cd1 > cd2 ? -1 : 0;
|
||||
break;
|
||||
}
|
||||
},
|
||||
|
@ -289,16 +384,17 @@ export default {
|
|||
listView.filteringFunction = this.filterFunction;
|
||||
}, 1 );
|
||||
},
|
||||
filterFunction( item ) {
|
||||
let ingredients = item.ingredients.map( e => e.item.toLowerCase() ).join()
|
||||
filterFunction( e ) {
|
||||
let ingredients = e.ingredients.map( e => e.item.toLowerCase() ).join()
|
||||
let tags = e.tags.map( e => e.toLowerCase() ).join()
|
||||
if ( this.filterFavourites ) {
|
||||
return item.isFavorite ? item.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) : false;
|
||||
return e.isFavorite ? tags.includes( this.searchQuery ) || e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) : false;
|
||||
} else if ( this.filterTrylater ) {
|
||||
return item.tried ? false : item.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery );
|
||||
} else if ( this.selectedCategory ) {
|
||||
return item.category === this.selectedCategory ? item.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) : false;
|
||||
return e.tried ? false : tags.includes( this.searchQuery ) || e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery );
|
||||
} else if ( this.selectedCuisine ) {
|
||||
return this.recipeFilter( e ) ? tags.includes( this.searchQuery ) || e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery ) : false;
|
||||
} else {
|
||||
return item.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery );
|
||||
return tags.includes( this.searchQuery ) || e.title.toLowerCase().includes( this.searchQuery ) || ingredients.includes( this.searchQuery );
|
||||
}
|
||||
},
|
||||
onSwiping( {
|
||||
|
@ -308,8 +404,8 @@ export default {
|
|||
const swipeLimits = data.swipeLimits;
|
||||
const swipeView = object;
|
||||
const rightItem = swipeView.getViewById( "delete-action" );
|
||||
swipeLimits.right = rightItem.getMeasuredWidth() - 12;
|
||||
swipeLimits.threshold = swipeLimits.right - 6;
|
||||
swipeLimits.right = rightItem.getMeasuredWidth() - 8;
|
||||
swipeLimits.threshold = swipeLimits.right - 4;
|
||||
if ( data.x < -swipeLimits.threshold ) {
|
||||
this.rightAction = true;
|
||||
swipeView.notifySwipeToExecuteFinished();
|
||||
|
@ -341,7 +437,43 @@ export default {
|
|||
}
|
||||
this.deletionDialogActive = false;
|
||||
} );
|
||||
}
|
||||
},
|
||||
// SHAKE DETECTOR
|
||||
onSensorData( {
|
||||
x,
|
||||
y,
|
||||
z
|
||||
} ) {
|
||||
x = x.toFixed( 2 )
|
||||
y = y.toFixed( 2 )
|
||||
z = z.toFixed( 2 )
|
||||
const FORCE_THRESHOLD = 1;
|
||||
const TIME_THRESHOLD = 150;
|
||||
const SHAKE_TIMEOUT = 600;
|
||||
const SHAKE_THROTTLE = 600;
|
||||
const SHAKE_COUNT = 3;
|
||||
const now = time()
|
||||
if ( ( now - lastForce ) > SHAKE_TIMEOUT ) {
|
||||
shakeCount = 0;
|
||||
}
|
||||
let timeDelta = now - lastTime;
|
||||
if ( timeDelta > TIME_THRESHOLD ) {
|
||||
let forceVector = Math.abs( Math.sqrt( Math.pow( x, 2 ) + Math.pow( y, 2 ) + Math.pow( z, 2 ) ) - 1 );
|
||||
if ( forceVector > FORCE_THRESHOLD ) {
|
||||
shakeCount++;
|
||||
if ( ( shakeCount >= SHAKE_COUNT ) && ( now - lastShake > SHAKE_THROTTLE ) ) {
|
||||
lastShake = now;
|
||||
shakeCount = 0;
|
||||
if ( this.filteredRecipes.length ) {
|
||||
vibrator.vibrate( 100 )
|
||||
this.viewRandomRecipe()
|
||||
}
|
||||
}
|
||||
lastForce = now;
|
||||
}
|
||||
lastTime = now;
|
||||
}
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.showFAB = true;
|
||||
|
|
|
@ -15,12 +15,11 @@
|
|||
<StackLayout v-for="(mealType, index) in mealTimes" :key="'mealType' + index" class="plansContainer" :class="mealType">
|
||||
<GridLayout columns="*, auto" class="header">
|
||||
<Label col="0" class="periodLabel orkm" :text="mealType | L" />
|
||||
<MDButton col="1" variant="text" class="bx addMeal" :text="icon.plus" @tap="addRecipe(mealType)" />
|
||||
<MDButton col="1" variant="text" class="bx" :text="icon.plus" @tap="addRecipe(mealType)" />
|
||||
</GridLayout>
|
||||
<GridLayout class="recipes" columns="*, auto" v-for="(recipeID, index) in getRecipes[mealType]" :key="mealType + index">
|
||||
<MDRipple @tap="viewRecipe(recipeID)" />
|
||||
<GridLayout class="recipes" :paddingTop="index == 0?8:0" columns="*" v-for="(recipeID, index) in getRecipes[mealType]" :key="mealType + index">
|
||||
<MDRipple @tap="viewRecipe(recipeID)" @longPress="removeRecipe(mealType, recipeID)" />
|
||||
<Label verticalAlignment="center" class="recipeTitle" col="0" :text="getRecipeTitle(recipeID)" textWrap="true" />
|
||||
<MDButton variant="text" col="1" class="bx closeBtn" :text="icon.close" @tap="removeRecipe(mealType, recipeID)" />
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
</StackLayout>
|
||||
|
@ -57,14 +56,10 @@ import {
|
|||
mapActions
|
||||
}
|
||||
from "vuex"
|
||||
|
||||
import ViewRecipe from "./ViewRecipe.vue"
|
||||
|
||||
import ActionDialogWithSearch from "./modal/ActionDialogWithSearch.vue"
|
||||
import ConfirmDialog from "./modal/ConfirmDialog.vue"
|
||||
|
||||
import * as utils from "~/shared/utils"
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
|
@ -90,10 +85,10 @@ export default {
|
|||
gray9: new Color( "#212529" ),
|
||||
black: new Color( "#111111" ),
|
||||
orange: new Color( "#ff5200" ),
|
||||
breakfast: "#ffb180",
|
||||
lunch: "#ceff80",
|
||||
dinner: "#80ceff",
|
||||
snacks: "#b180ff",
|
||||
breakfast: "#ff922b",
|
||||
lunch: "#94d82d",
|
||||
dinner: "#339af0",
|
||||
snacks: "#845ef7",
|
||||
},
|
||||
appFontRegular: "Orkney-Regular",
|
||||
appFontMedium: "Orkney-Medium",
|
||||
|
@ -107,44 +102,27 @@ export default {
|
|||
},
|
||||
monthViewStyle() {
|
||||
const monthViewStyle = new CalendarMonthViewStyle()
|
||||
monthViewStyle.backgroundColor = this.isLightMode ?
|
||||
this.color.gray1 :
|
||||
this.color.gray9
|
||||
monthViewStyle.backgroundColor = this.isLightMode ? this.color.gray1 : this.color.gray9
|
||||
monthViewStyle.showTitle = true
|
||||
monthViewStyle.showWeekNumbers = false
|
||||
monthViewStyle.showDayNames = true
|
||||
|
||||
const titleCellStyle = new DayCellStyle()
|
||||
titleCellStyle.cellBackgroundColor = this.isLightMode ?
|
||||
this.color.gray2 :
|
||||
this.color.black
|
||||
titleCellStyle.cellBackgroundColor = this.isLightMode ? this.color.gray2 : this.color.black
|
||||
titleCellStyle.cellBorderWidth = 1
|
||||
titleCellStyle.cellBorderColor = this.isLightMode ?
|
||||
this.color.gray2 :
|
||||
this.color.black
|
||||
titleCellStyle.cellBorderColor = this.isLightMode ? this.color.gray2 : this.color.black
|
||||
titleCellStyle.cellTextSize = 16
|
||||
titleCellStyle.cellTextColor = this.isLightMode ?
|
||||
this.color.gray9 :
|
||||
this.color.gray1
|
||||
titleCellStyle.cellTextColor = this.isLightMode ? this.color.gray9 : this.color.gray1
|
||||
titleCellStyle.cellTextFontName = this.appFontMedium
|
||||
monthViewStyle.titleCellStyle = titleCellStyle
|
||||
|
||||
const dayNameCellStyle = new CellStyle()
|
||||
dayNameCellStyle.cellBackgroundColor = this.isLightMode ?
|
||||
this.color.gray2 :
|
||||
this.color.black
|
||||
dayNameCellStyle.cellTextColor = this.isLightMode ?
|
||||
this.color.gray9 :
|
||||
this.color.gray1
|
||||
dayNameCellStyle.cellBackgroundColor = this.isLightMode ? this.color.gray2 : this.color.black
|
||||
dayNameCellStyle.cellTextColor = this.isLightMode ? this.color.gray9 : this.color.gray1
|
||||
dayNameCellStyle.cellBorderWidth = 1
|
||||
dayNameCellStyle.cellBorderColor = this.isLightMode ?
|
||||
this.color.gray2 :
|
||||
this.color.black
|
||||
dayNameCellStyle.cellBorderColor = this.isLightMode ? this.color.gray2 : this.color.black
|
||||
dayNameCellStyle.cellTextSize = 10
|
||||
dayNameCellStyle.cellAlignment = CalendarCellAlignment.Center
|
||||
dayNameCellStyle.cellTextFontName = this.appFontMedium
|
||||
monthViewStyle.dayNameCellStyle = dayNameCellStyle
|
||||
|
||||
const dayCellStyle = new DayCellStyle()
|
||||
dayCellStyle.showEventsText = false
|
||||
dayCellStyle.eventTextColor = this.color.orange
|
||||
|
@ -152,51 +130,34 @@ export default {
|
|||
dayCellStyle.eventFontStyle = CalendarFontStyle.Bold
|
||||
dayCellStyle.eventTextSize = 8
|
||||
dayCellStyle.cellTextSize = 16
|
||||
dayCellStyle.cellTextColor = this.isLightMode ?
|
||||
this.color.gray9 :
|
||||
this.color.gray1
|
||||
dayCellStyle.cellTextColor = this.isLightMode ? this.color.gray9 : this.color.gray1
|
||||
dayCellStyle.cellAlignment = CalendarCellAlignment.Bottom
|
||||
dayCellStyle.cellBackgroundColor = this.isLightMode ?
|
||||
this.color.gray1 :
|
||||
this.color.gray9
|
||||
dayCellStyle.cellBackgroundColor = this.isLightMode ? this.color.gray1 : this.color.gray9
|
||||
dayCellStyle.cellTextFontName = this.appFontRegular
|
||||
dayCellStyle.cellBorderWidth = 1
|
||||
dayCellStyle.cellBorderColor = this.isLightMode ?
|
||||
this.color.gray2 :
|
||||
this.color.black
|
||||
dayCellStyle.cellBorderColor = this.isLightMode ? this.color.gray2 : this.color.black
|
||||
monthViewStyle.dayCellStyle = dayCellStyle
|
||||
|
||||
const todayCellStyle = new DayCellStyle()
|
||||
todayCellStyle.cellBackgroundColor = this.isLightMode ?
|
||||
this.color.gray1 :
|
||||
this.color.gray9
|
||||
todayCellStyle.cellBackgroundColor = this.isLightMode ? this.color.gray1 : this.color.gray9
|
||||
todayCellStyle.cellTextColor = this.color.orange
|
||||
todayCellStyle.cellBorderWidth = 1
|
||||
todayCellStyle.cellTextFontName = this.appFontMedium
|
||||
todayCellStyle.cellTextFontStyle = CalendarFontStyle.Bold
|
||||
todayCellStyle.cellTextSize = 16
|
||||
todayCellStyle.cellAlignment = CalendarCellAlignment.Bottom
|
||||
todayCellStyle.cellBorderColor = this.isLightMode ?
|
||||
this.color.gray2 :
|
||||
this.color.black
|
||||
todayCellStyle.cellBorderColor = this.isLightMode ? this.color.gray2 : this.color.black
|
||||
monthViewStyle.todayCellStyle = todayCellStyle
|
||||
|
||||
const selectedCellStyle = new DayCellStyle()
|
||||
selectedCellStyle.eventTextSize = 1
|
||||
selectedCellStyle.cellAlignment = CalendarCellAlignment.Bottom
|
||||
selectedCellStyle.cellBackgroundColor = this.isLightMode ?
|
||||
this.color.white :
|
||||
this.color.gray8
|
||||
selectedCellStyle.cellBackgroundColor = this.isLightMode ? this.color.white : this.color.gray8
|
||||
selectedCellStyle.cellBorderWidth = 1
|
||||
selectedCellStyle.cellBorderColor = this.color.orange
|
||||
selectedCellStyle.cellTextColor = this.isLightMode ?
|
||||
this.color.gray9 :
|
||||
this.color.gray1
|
||||
selectedCellStyle.cellTextColor = this.isLightMode ? this.color.gray9 : this.color.gray1
|
||||
selectedCellStyle.cellTextFontName = this.appFontMedium
|
||||
selectedCellStyle.cellTextFontStyle = CalendarFontStyle.Bold
|
||||
selectedCellStyle.cellTextSize = 16
|
||||
monthViewStyle.selectedDayCellStyle = selectedCellStyle
|
||||
|
||||
return monthViewStyle
|
||||
},
|
||||
getRecipes() {
|
||||
|
@ -220,41 +181,24 @@ export default {
|
|||
}
|
||||
return acc
|
||||
}, {} )
|
||||
}
|
||||
else return 0
|
||||
} else return 0
|
||||
},
|
||||
getMealPlans() {
|
||||
const getDate = ( date ) => {
|
||||
let d = new Date( date )
|
||||
let result = new Date(
|
||||
d.getFullYear(),
|
||||
d.getMonth(),
|
||||
d.getDate(),
|
||||
d.getHours()
|
||||
)
|
||||
let result = new Date( d.getFullYear(), d.getMonth(), d.getDate(), d.getHours() )
|
||||
return result
|
||||
}
|
||||
let events = []
|
||||
this.mealPlans.forEach( ( plan ) => {
|
||||
let e = new CalendarEvent(
|
||||
plan.title,
|
||||
getDate( plan.startDate ),
|
||||
getDate( plan.endDate ),
|
||||
false,
|
||||
new Color( plan.eventColor )
|
||||
)
|
||||
let e = new CalendarEvent( plan.title, getDate( plan.startDate ), getDate( plan.endDate ), false, new Color( plan.eventColor ) )
|
||||
events = [ ...events, e ]
|
||||
} )
|
||||
return events
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
...mapActions( [
|
||||
"setCurrentComponentAction",
|
||||
"initializeMealPlans",
|
||||
"addMealPlanAction",
|
||||
"deleteMealPlanAction",
|
||||
] ),
|
||||
...mapActions( [ "setCurrentComponentAction", "initializeMealPlans", "addMealPlanAction", "deleteMealPlanAction", ] ),
|
||||
onPageLoad( args ) {
|
||||
const page = args.object;
|
||||
page.bindingContext = new Observable();
|
||||
|
@ -263,24 +207,13 @@ export default {
|
|||
onCalendarLoad( args ) {
|
||||
args.object.locale = `${Device.language}-${Device.language.toUpperCase()}`
|
||||
args.object.monthViewStyle = this.monthViewStyle
|
||||
args.object.android
|
||||
.getGestureManager()
|
||||
.setDoubleTapToChangeDisplayMode( false )
|
||||
args.object.android
|
||||
.getGestureManager()
|
||||
.setPinchCloseToChangeDisplayMode( false )
|
||||
if ( args.object.selectedDate == null )
|
||||
args.object.selectedDate = new Date()
|
||||
args.object.android.getGestureManager().setDoubleTapToChangeDisplayMode( false )
|
||||
args.object.android.getGestureManager().setPinchCloseToChangeDisplayMode( false )
|
||||
if ( args.object.selectedDate == null ) args.object.selectedDate = new Date()
|
||||
if ( args.object.nativeView.getEventAdapter() ) {
|
||||
args.object.nativeView
|
||||
.getEventAdapter()
|
||||
.getRenderer()
|
||||
.setEventRenderMode(
|
||||
com.telerik.widget.calendar.events.EventRenderMode.Shape
|
||||
)
|
||||
args.object.nativeView.getEventAdapter().getRenderer().setEventRenderMode( com.telerik.widget.calendar.events.EventRenderMode.Shape )
|
||||
}
|
||||
},
|
||||
|
||||
// HELPERS
|
||||
showDrawer() {
|
||||
utils.showDrawer()
|
||||
|
@ -300,9 +233,8 @@ export default {
|
|||
},
|
||||
getRecipeTitle( id ) {
|
||||
let recipe = this.recipes.filter( ( e ) => e.id === id )[ 0 ]
|
||||
return recipe ? recipe.title : "[Deleted Recipe]"
|
||||
return recipe ? recipe.title : `[ ${this.$options.filters.L('Recipe not found')} ]`
|
||||
},
|
||||
|
||||
// NAVIGATION HANDLERS
|
||||
viewRecipe( recipeID ) {
|
||||
let recipe = this.recipes.filter( ( e ) => e.id === recipeID )[ 0 ]
|
||||
|
@ -316,14 +248,9 @@ export default {
|
|||
} )
|
||||
}
|
||||
},
|
||||
|
||||
// DATA HANDLERS
|
||||
addRecipe( mealType ) {
|
||||
let filteredRecipes = this.recipes.filter( ( e ) =>
|
||||
this.getRecipes[ mealType ] ?
|
||||
!this.getRecipes[ mealType ].includes( e.id ) :
|
||||
true
|
||||
)
|
||||
let filteredRecipes = this.recipes.filter( ( e ) => this.getRecipes[ mealType ] ? !this.getRecipes[ mealType ].includes( e.id ) : true )
|
||||
this.$showModal( ActionDialogWithSearch, {
|
||||
props: {
|
||||
title: "Select a recipe",
|
||||
|
@ -336,7 +263,7 @@ export default {
|
|||
removeRecipeConfirm( mealType ) {
|
||||
return this.$showModal( ConfirmDialog, {
|
||||
props: {
|
||||
title: `Remove recipe from ${mealType}`,
|
||||
title: `Remove recipe from ${mealType}?`,
|
||||
cancelButtonText: "CANCEL",
|
||||
okButtonText: "REMOVE",
|
||||
},
|
||||
|
@ -352,10 +279,7 @@ export default {
|
|||
this.removeRecipeConfirm( mealType ).then( ( res ) => {
|
||||
if ( res ) {
|
||||
let actualMealPlan = this.selectedDayMealPlans.filter(
|
||||
( e ) =>
|
||||
e.startDate.getHours() === startHour[ mealType ] &&
|
||||
e.title === recipeID
|
||||
)[ 0 ]
|
||||
( e ) => e.startDate.getHours() === startHour[ mealType ] && e.title === recipeID )[ 0 ]
|
||||
let mealPlan = {
|
||||
title: actualMealPlan.title,
|
||||
startDate: actualMealPlan.startDate,
|
||||
|
@ -365,14 +289,11 @@ export default {
|
|||
}
|
||||
} )
|
||||
},
|
||||
|
||||
// CALENDAR
|
||||
updateSelectedDatePlans() {
|
||||
let date = new Date( this.selectedDate )
|
||||
setTimeout( () => {
|
||||
this.selectedDayMealPlans = this.$refs.calendar.nativeView.getEventsForDate(
|
||||
date
|
||||
)
|
||||
this.selectedDayMealPlans = this.$refs.calendar.nativeView.getEventsForDate( date )
|
||||
}, 100 )
|
||||
},
|
||||
onDateSelected( args ) {
|
||||
|
@ -411,13 +332,7 @@ export default {
|
|||
end: new Date( y, m, d, 19 ),
|
||||
},
|
||||
}
|
||||
let event = new CalendarEvent(
|
||||
recipeID,
|
||||
mealTime[ mealType ].start,
|
||||
mealTime[ mealType ].end,
|
||||
false,
|
||||
new Color( this.color[ mealType ] )
|
||||
)
|
||||
let event = new CalendarEvent( recipeID, mealTime[ mealType ].start, mealTime[ mealType ].end, false, new Color( this.color[ mealType ] ) )
|
||||
this.addMealPlanAction( {
|
||||
event,
|
||||
eventColor: this.color[ mealType ]
|
||||
|
|
|
@ -26,6 +26,21 @@
|
|||
</StackLayout>
|
||||
</GridLayout>
|
||||
<StackLayout class="hr m-10"></StackLayout>
|
||||
<Label :text="'Options' | L" class="group-header orkm" />
|
||||
<!-- <GridLayout columns="auto, *, auto" class="option">
|
||||
<Label col="0" verticalAlignment="center" class="bx" :text="icon.show" />
|
||||
<Label col="1" verticalAlignment="center" :text="'Keep display on while viewing a recipe' | L" textWrap="true" />
|
||||
<Switch :color="shakeEnabled ? '#ff5200' : appTheme==='Light' ? '#495057' : '#adb5bd'" verticalAlignment="center" col="2" :checked="shakeEnabled" @checkedChange="toggleShake" />
|
||||
</GridLayout> -->
|
||||
<GridLayout columns="auto, *, auto" class="option">
|
||||
<Label col="0" verticalAlignment="center" class="bx" :text="icon.shuffle" />
|
||||
<StackLayout col="1">
|
||||
<Label :text="'Shake to view random recipe' | L" textWrap="true" />
|
||||
<Label :text="`Helps you choose what to cook when you can't decide` | L" class="info" textWrap="true" />
|
||||
</StackLayout>
|
||||
<Switch :color="shakeEnabled ? '#ff5200' : appTheme==='Light' ? '#495057' : '#adb5bd'" verticalAlignment="center" col="2" :checked="shakeEnabled" @checkedChange="toggleShake" />
|
||||
</GridLayout>
|
||||
<StackLayout class="hr m-10"></StackLayout>
|
||||
<Label :text="'Database' | L" class="group-header orkm" />
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="exportCheck" />
|
||||
|
@ -47,6 +62,29 @@
|
|||
<Label :text="'Supports full backups exported by this app' | L" class="info" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<StackLayout class="hr m-10"></StackLayout>
|
||||
<Label :text="'Reset' | L" class="group-header orkm" />
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="resetListItems('cuisines')" />
|
||||
<Label col="0" class="bx" :text="icon.reset" />
|
||||
<Label col="1" verticalAlignment="center" :text="'Reset cuisines list' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="resetListItems('categories')" />
|
||||
<Label col="0" class="bx" :text="icon.reset" />
|
||||
<Label col="1" verticalAlignment="center" :text="'Reset categories list' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="resetListItems('yieldUnits')" />
|
||||
<Label col="0" class="bx" :text="icon.reset" />
|
||||
<Label col="1" verticalAlignment="center" :text="'Reset yield units list' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout columns="auto, *" class="option">
|
||||
<MDRipple colSpan="2" @tap="resetListItems('units')" />
|
||||
<Label col="0" class="bx" :text="icon.reset" />
|
||||
<Label col="1" verticalAlignment="center" :text="'Reset units list' | L" textWrap="true" />
|
||||
</GridLayout>
|
||||
<Label class="group-info" :text="'Resetting a list will NOT delete your existing entries but only restores the deleted default entries.' | L" textWrap="true" />
|
||||
</StackLayout>
|
||||
</ScrollView>
|
||||
</Page>
|
||||
|
@ -81,12 +119,9 @@ import {
|
|||
mapActions
|
||||
}
|
||||
from "vuex"
|
||||
|
||||
import ActionDialog from "./modal/ActionDialog.vue"
|
||||
import ConfirmDialog from "./modal/ConfirmDialog.vue"
|
||||
|
||||
import * as utils from "~/shared/utils"
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
|
@ -98,24 +133,10 @@ export default {
|
|||
}
|
||||
},
|
||||
computed: {
|
||||
...mapState( [
|
||||
"icon",
|
||||
"recipes",
|
||||
"userCategories",
|
||||
"userYieldUnits",
|
||||
"mealPlans",
|
||||
"currentComponent",
|
||||
"language",
|
||||
] ),
|
||||
...mapState( [ "icon", "recipes", "cuisines", "categories", "yieldUnits", "units", "mealPlans", "currentComponent", "language", "shakeEnabled", "importSummary" ] ),
|
||||
},
|
||||
methods: {
|
||||
...mapActions( [
|
||||
"setCurrentComponentAction",
|
||||
"importCategoriesAction",
|
||||
"importYieldUnitsAction",
|
||||
"importRecipesAction",
|
||||
"importMealPlansAction",
|
||||
] ),
|
||||
...mapActions( [ "setCurrentComponentAction", "importListItemsAction", "importRecipesAction", "importMealPlansAction", "resetListItemsAction", "setShakeAction", "unlinkBrokenImages" ] ),
|
||||
onPageLoad( args ) {
|
||||
const page = args.object;
|
||||
page.bindingContext = new Observable();
|
||||
|
@ -128,7 +149,6 @@ export default {
|
|||
onScroll( args ) {
|
||||
this.viewIsScrolled = args.scrollY ? true : false
|
||||
},
|
||||
|
||||
// LANGUAGE SELECTION
|
||||
selectAppLanguage() {
|
||||
let languages = this.language.map( e => e.title )
|
||||
|
@ -136,6 +156,7 @@ export default {
|
|||
props: {
|
||||
title: "App language",
|
||||
list: [ ...languages ],
|
||||
stretch: true,
|
||||
},
|
||||
} ).then( ( action ) => {
|
||||
if ( action && action !== "Cancel" && this.appLanguage !== action ) {
|
||||
|
@ -153,7 +174,6 @@ export default {
|
|||
if ( result ) {
|
||||
this.appLanguage = action
|
||||
ApplicationSettings.setString( "appLanguage", action )
|
||||
|
||||
overrideLocale( locale )
|
||||
setTimeout( ( e ) => utils.restartApp(), 250 )
|
||||
}
|
||||
|
@ -168,7 +188,7 @@ export default {
|
|||
props: {
|
||||
title: "Theme",
|
||||
list: [ "Light", "Dark" ],
|
||||
height: "96",
|
||||
stretch: false
|
||||
},
|
||||
} ).then( ( action ) => {
|
||||
if ( action && action !== "Cancel" && this.appTheme !== action ) {
|
||||
|
@ -189,44 +209,29 @@ export default {
|
|||
}
|
||||
} )
|
||||
},
|
||||
|
||||
// SHAKE VIEW RANDOM RECIPE
|
||||
toggleShake( args ) {
|
||||
let checked = args.object.checked
|
||||
// let checked = !this.shakeEnabled
|
||||
ApplicationSettings.setBoolean( 'shakeEnabled', checked )
|
||||
this.setShakeAction( checked )
|
||||
},
|
||||
// EXPORT HANDLERS
|
||||
exportCheck() {
|
||||
if ( !this.recipes.length ) {
|
||||
Toast.makeText(
|
||||
localize( "Add at least one recipe to perform a backup" ),
|
||||
"long"
|
||||
).show()
|
||||
}
|
||||
else {
|
||||
this.permissionCheck(
|
||||
this.permissionConfirmation,
|
||||
localize( "EnRecipes requires storage permission in order to backup your data to this device." ),
|
||||
this.exportBackup
|
||||
)
|
||||
Toast.makeText( localize( "Add at least one recipe to perform a backup" ), "long" ).show()
|
||||
} else {
|
||||
this.permissionCheck( this.permissionConfirmation, localize( "EnRecipes requires storage permission in order to backup your data to this device." ), this.exportBackup )
|
||||
}
|
||||
},
|
||||
exportBackup() {
|
||||
this.exportFiles( "create" )
|
||||
let date = new Date()
|
||||
let formattedDate =
|
||||
date.getFullYear() +
|
||||
"-" +
|
||||
( "0" + ( date.getMonth() + 1 ) ).slice( -2 ) +
|
||||
"-" +
|
||||
( "0" + date.getDate() ).slice( -2 ) +
|
||||
"_" +
|
||||
( "0" + date.getHours() ).slice( -2 ) +
|
||||
( "0" + date.getMinutes() ).slice( -2 ) +
|
||||
( "0" + date.getSeconds() ).slice( -2 )
|
||||
const sdDownloadPath = Folder.fromPath(
|
||||
android.os.Environment.getExternalStorageDirectory().getAbsolutePath()
|
||||
).getFolder( "Download" ).path
|
||||
let formattedDate = date.getFullYear() + "-" + ( "0" + ( date.getMonth() + 1 ) ).slice( -2 ) + "-" + ( "0" + date.getDate() ).slice( -2 ) + "_" + ( "0" + date.getHours() ).slice( -2 ) + ( "0" + date.getMinutes() ).slice( -2 ) + ( "0" + date
|
||||
.getSeconds() ).slice( -2 )
|
||||
const sdDownloadPath = Folder.fromPath( android.os.Environment.getExternalStorageDirectory().getAbsolutePath() ).getFolder( "Download" ).path
|
||||
let fromPath = path.join( knownFolders.documents().path, "EnRecipes" )
|
||||
let destPath = path.join(
|
||||
sdDownloadPath,
|
||||
`EnRecipes-Backup_${formattedDate}.zip`
|
||||
)
|
||||
let destPath = path.join( sdDownloadPath, `EnRecipes-Backup_${formattedDate}.zip` )
|
||||
this.backupInProgress = true
|
||||
Zip.zip( {
|
||||
directory: fromPath,
|
||||
|
@ -235,44 +240,34 @@ export default {
|
|||
this.backupProgress = progress
|
||||
},
|
||||
} ).then( ( success ) => {
|
||||
Toast.makeText(
|
||||
"Backup file successfully saved to Download folder",
|
||||
"long"
|
||||
).show()
|
||||
Toast.makeText( "Backup file successfully saved to Download folder", "long" ).show()
|
||||
this.exportFiles( "delete" )
|
||||
} )
|
||||
},
|
||||
exportFiles( option ) {
|
||||
const folder = path.join( knownFolders.documents().path, "EnRecipes" )
|
||||
const EnRecipesFile = File.fromPath( path.join( folder, "recipes.json" ) )
|
||||
let userCategoriesFile, userYieldUnitsFile, mealPlansFile
|
||||
if ( this.userCategories.length ) {
|
||||
userCategoriesFile = File.fromPath(
|
||||
path.join( folder, "userCategories.json" )
|
||||
)
|
||||
}
|
||||
if ( this.userYieldUnits.length ) {
|
||||
userYieldUnitsFile = File.fromPath(
|
||||
path.join( folder, "userYieldUnits.json" )
|
||||
)
|
||||
}
|
||||
if ( this.mealPlans.length ) {
|
||||
mealPlansFile = File.fromPath( path.join( folder, "mealPlans.json" ) )
|
||||
}
|
||||
let userCuisinesFile, userCategoriesFile, userYieldUnitsFile, userUnitsFile, mealPlansFile
|
||||
if ( this.cuisines.length ) userCuisinesFile = File.fromPath( path.join( folder, "userCuisines.json" ) )
|
||||
if ( this.categories.length ) userCategoriesFile = File.fromPath( path.join( folder, "userCategories.json" ) )
|
||||
if ( this.yieldUnits.length ) userYieldUnitsFile = File.fromPath( path.join( folder, "userYieldUnits.json" ) )
|
||||
if ( this.units.length ) userUnitsFile = File.fromPath( path.join( folder, "userUnits.json" ) )
|
||||
if ( this.mealPlans.length ) mealPlansFile = File.fromPath( path.join( folder, "mealPlans.json" ) )
|
||||
switch ( option ) {
|
||||
case "create":
|
||||
this.writeDataToFile( EnRecipesFile, this.recipes )
|
||||
this.userCategories.length &&
|
||||
this.writeDataToFile( userCategoriesFile, this.userCategories )
|
||||
this.userYieldUnits.length &&
|
||||
this.writeDataToFile( userYieldUnitsFile, this.userYieldUnits )
|
||||
this.mealPlans.length &&
|
||||
this.writeDataToFile( mealPlansFile, this.mealPlans )
|
||||
this.cuisines.length && this.writeDataToFile( userCuisinesFile, this.cuisines )
|
||||
this.categories.length && this.writeDataToFile( userCategoriesFile, this.categories )
|
||||
this.yieldUnits.length && this.writeDataToFile( userYieldUnitsFile, this.yieldUnits )
|
||||
this.units.length && this.writeDataToFile( userUnitsFile, this.units )
|
||||
this.mealPlans.length && this.writeDataToFile( mealPlansFile, this.mealPlans )
|
||||
break
|
||||
case "delete":
|
||||
EnRecipesFile.remove()
|
||||
this.userCategories.length && userCategoriesFile.remove()
|
||||
this.userYieldUnits.length && userYieldUnitsFile.remove()
|
||||
this.cuisines.length && userCuisinesFile.remove()
|
||||
this.categories.length && userCategoriesFile.remove()
|
||||
this.yieldUnits.length && userYieldUnitsFile.remove()
|
||||
this.units.length && userUnitsFile.remove()
|
||||
this.mealPlans.length && mealPlansFile.remove()
|
||||
break
|
||||
default:
|
||||
|
@ -282,26 +277,19 @@ export default {
|
|||
writeDataToFile( file, data ) {
|
||||
file.writeText( JSON.stringify( data ) )
|
||||
},
|
||||
|
||||
// IMPORT HANDLERS
|
||||
importCheck() {
|
||||
this.permissionCheck(
|
||||
this.permissionConfirmation,
|
||||
localize( "EnRecipes requires storage permission in order to import your data from a previous backup." ),
|
||||
this.openFilePicker
|
||||
)
|
||||
this.permissionCheck( this.permissionConfirmation, localize( "EnRecipes requires storage permission in order to import your data from a previous backup." ), this.openFilePicker )
|
||||
},
|
||||
openFilePicker() {
|
||||
Filepicker.create( {
|
||||
mode: "single",
|
||||
extensions: [ "zip" ],
|
||||
} )
|
||||
.present()
|
||||
.then( ( selection ) => {
|
||||
Toast.makeText( localize( "Verifying..." ) ).show()
|
||||
let zipPath = selection[ 0 ]
|
||||
this.validateZipContent( zipPath )
|
||||
} )
|
||||
mode: "single",
|
||||
extensions: [ "zip" ],
|
||||
} ).present().then( ( selection ) => {
|
||||
Toast.makeText( localize( "Verifying..." ) ).show()
|
||||
let zipPath = selection[ 0 ]
|
||||
this.validateZipContent( zipPath )
|
||||
} )
|
||||
},
|
||||
importDataToDB( data, db, zipPath ) {
|
||||
switch ( db ) {
|
||||
|
@ -309,11 +297,29 @@ export default {
|
|||
this.importImages( zipPath )
|
||||
this.importRecipesAction( data )
|
||||
break
|
||||
case "userCuisinesDB":
|
||||
this.importListItemsAction( {
|
||||
data,
|
||||
listName: "cuisines",
|
||||
} )
|
||||
break
|
||||
case "userCategoriesDB":
|
||||
this.importCategoriesAction( data )
|
||||
this.importListItemsAction( {
|
||||
data,
|
||||
listName: "categories",
|
||||
} )
|
||||
break
|
||||
case "userYieldUnitsDB":
|
||||
this.importYieldUnitsAction( data )
|
||||
this.importListItemsAction( {
|
||||
data,
|
||||
listName: "yieldUnits",
|
||||
} )
|
||||
break
|
||||
case "userUnitsDB":
|
||||
this.importListItemsAction( {
|
||||
data,
|
||||
listName: "units",
|
||||
} )
|
||||
break
|
||||
case "mealPlansDB":
|
||||
this.importMealPlansAction( data )
|
||||
|
@ -322,16 +328,45 @@ export default {
|
|||
break
|
||||
}
|
||||
},
|
||||
hasValidJSON( data ) {
|
||||
try {
|
||||
JSON.parse( data ) && Array.isArray( JSON.parse( data ) )
|
||||
} catch ( e ) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
isFileDataValid( file ) {
|
||||
file.forEach( ( file, i ) => {
|
||||
if ( File.exists( file.path ) ) {
|
||||
File.fromPath( file.path )
|
||||
.readText()
|
||||
.then( ( data ) => {
|
||||
Array.isArray( JSON.parse( data ) ) &&
|
||||
this.importDataToDB( JSON.parse( data ), file.db, file.zipPath )
|
||||
} )
|
||||
}
|
||||
const files = file.filter( e => File.exists( e.path ) )
|
||||
if ( files.length ) {
|
||||
let isValid = files.map( e => false )
|
||||
files.forEach( ( file, i ) => {
|
||||
File.fromPath( file.path ).readText().then( ( data ) => {
|
||||
isValid[ i ] = this.hasValidJSON( data )
|
||||
if ( !isValid[ i ] ) {
|
||||
this.failedImport( `${localize("Backup file has been modified externally.")}\n\n${localize("Invalid file:")} ${file.file}` )
|
||||
return 0;
|
||||
}
|
||||
if ( isValid.every( e => e === true ) ) {
|
||||
files.forEach( ( file, i ) => {
|
||||
File.fromPath( file.path ).readText().then( ( data ) => {
|
||||
this.importDataToDB( JSON.parse( data ), file.db, file.zipPath )
|
||||
} )
|
||||
} )
|
||||
}
|
||||
} )
|
||||
} )
|
||||
} else {
|
||||
this.failedImport( localize( "Backup file seems empty." ) )
|
||||
}
|
||||
},
|
||||
failedImport( description ) {
|
||||
this.$showModal( ConfirmDialog, {
|
||||
props: {
|
||||
title: "Import failed",
|
||||
description,
|
||||
okButtonText: "OK",
|
||||
},
|
||||
} )
|
||||
},
|
||||
validateZipContent( zipPath ) {
|
||||
|
@ -341,38 +376,46 @@ export default {
|
|||
} ).then( ( extractedFolderPath ) => {
|
||||
let cacheFolderPath = extractedFolderPath + "/EnRecipes"
|
||||
const EnRecipesFilePath = cacheFolderPath + "/recipes.json"
|
||||
const userCuisinesFilePath = cacheFolderPath + "/userCuisines.json"
|
||||
const userCategoriesFilePath = cacheFolderPath + "/userCategories.json"
|
||||
const userYieldUnitsFilePath = cacheFolderPath + "/userYieldUnits.json"
|
||||
const userUnitsFilePath = cacheFolderPath + "/userUnits.json"
|
||||
const mealPlansFilePath = cacheFolderPath + "/mealPlans.json"
|
||||
if ( Folder.exists( cacheFolderPath ) ) {
|
||||
this.isFileDataValid( [ {
|
||||
zipPath,
|
||||
path: EnRecipesFilePath,
|
||||
db: "EnRecipesDB",
|
||||
},
|
||||
{
|
||||
zipPath,
|
||||
path: userCategoriesFilePath,
|
||||
db: "userCategoriesDB"
|
||||
},
|
||||
{
|
||||
zipPath,
|
||||
path: userYieldUnitsFilePath,
|
||||
db: "userYieldUnitsDB"
|
||||
},
|
||||
{
|
||||
zipPath,
|
||||
path: mealPlansFilePath,
|
||||
db: "mealPlansDB"
|
||||
},
|
||||
] )
|
||||
}
|
||||
else {
|
||||
zipPath,
|
||||
path: EnRecipesFilePath,
|
||||
db: "EnRecipesDB",
|
||||
file: "recipes.json"
|
||||
}, {
|
||||
zipPath,
|
||||
path: userCuisinesFilePath,
|
||||
db: "userCuisinesDB",
|
||||
file: "userCuisines.json"
|
||||
}, {
|
||||
zipPath,
|
||||
path: userCategoriesFilePath,
|
||||
db: "userCategoriesDB",
|
||||
file: "userCategories.json"
|
||||
}, {
|
||||
zipPath,
|
||||
path: userYieldUnitsFilePath,
|
||||
db: "userYieldUnitsDB",
|
||||
file: "userYieldUnits.json"
|
||||
}, {
|
||||
zipPath,
|
||||
path: userUnitsFilePath,
|
||||
db: "userUnitsDB",
|
||||
file: "userUnits.json"
|
||||
}, {
|
||||
zipPath,
|
||||
path: mealPlansFilePath,
|
||||
db: "mealPlansDB",
|
||||
file: "mealPlans.json"
|
||||
}, ] )
|
||||
} else {
|
||||
Folder.fromPath( extractedFolderPath ).remove()
|
||||
Toast.makeText(
|
||||
"Import failed. Backup file is incorrect or corrupt",
|
||||
"long"
|
||||
).show()
|
||||
this.failedImport( localize( "Backup file is incorrect or corrupt." ) )
|
||||
}
|
||||
if ( Folder.exists( cacheFolderPath + "/Images" ) ) {
|
||||
this.importImages( cacheFolderPath + "/Images" )
|
||||
|
@ -386,11 +429,29 @@ export default {
|
|||
directory: dest,
|
||||
overwrite: true,
|
||||
} ).then( ( res ) => {
|
||||
Toast.makeText( localize( "Import successful" ), "long" ).show()
|
||||
this.$navigateBack()
|
||||
Toast.makeText( localize( "Import successful" ) ).show()
|
||||
this.showImportSummary()
|
||||
this.unlinkBrokenImages()
|
||||
} )
|
||||
},
|
||||
showImportSummary() {
|
||||
let {
|
||||
found,
|
||||
imported,
|
||||
updated
|
||||
} = this.importSummary
|
||||
let exists = found - imported + updated
|
||||
let importedNote = `\n${imported} ${localize('recipes imported')}`
|
||||
let existsNote = `\n${exists} ${localize('recipes already exists')}`
|
||||
let updatedNote = `\n${updated} ${localize('recipes updated')}`
|
||||
this.$showModal( ConfirmDialog, {
|
||||
props: {
|
||||
title: "Import summary",
|
||||
description: `${found} ${localize('recipes found')}${ importedNote}${existsNote}${updatedNote}`,
|
||||
okButtonText: "OK",
|
||||
},
|
||||
} )
|
||||
},
|
||||
|
||||
// PERMISSIONS HANDLER
|
||||
permissionCheck( confirmation, description, action ) {
|
||||
if ( !ApplicationSettings.getBoolean( "storagePermissionAsked", false ) ) {
|
||||
|
@ -399,22 +460,19 @@ export default {
|
|||
Permissions.request( "photo" ).then( ( res ) => {
|
||||
let status = res[ Object.keys( res )[ 0 ] ]
|
||||
if ( status === "authorized" ) action()
|
||||
if ( status !== "denied" )
|
||||
ApplicationSettings.setBoolean( "storagePermissionAsked", true )
|
||||
if ( status !== "denied" ) ApplicationSettings.setBoolean( "storagePermissionAsked", true )
|
||||
else Toast.makeText( localize( "Permission denied" ) ).show()
|
||||
} )
|
||||
}
|
||||
} )
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
Permissions.check( "photo" ).then( ( res ) => {
|
||||
let status = res[ Object.keys( res )[ 0 ] ]
|
||||
if ( status !== "authorized" ) {
|
||||
confirmation( description ).then( ( e ) => {
|
||||
e && utils.openAppSettingsPage()
|
||||
} )
|
||||
}
|
||||
else action()
|
||||
} else action()
|
||||
} )
|
||||
}
|
||||
},
|
||||
|
@ -428,6 +486,11 @@ export default {
|
|||
},
|
||||
} )
|
||||
},
|
||||
// RESET
|
||||
resetListItems( listName ) {
|
||||
this.resetListItemsAction( listName )
|
||||
Toast.makeText( localize( "Reset successful" ) ).show()
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.appTheme = ApplicationSettings.getString( "appTheme", "Light" )
|
||||
|
|
|
@ -4,9 +4,10 @@
|
|||
<GridLayout rows="48" columns="auto, *, auto">
|
||||
<MDButton variant="text" row="0" col="0" class="bx" :text="icon.back" automationText="Back" @tap="$navigateBack()" />
|
||||
<FlexboxLayout row="0" col="2" alignItems="center">
|
||||
<MDButton v-if="!filterTrylater" variant="text" class="bx" :text="recipe.tried ? icon.trylaterOutline : icon.trylater" @tap="toggleTrylater" />
|
||||
<MDButton v-if="!filterTrylater" variant="text" class="bx" :text="recipe.tried ? icon.trylaterLine : icon.trylater" @tap="toggleTrylater" />
|
||||
<MDButton v-else variant="text" class="bx" :text="icon.check" @tap="recipeTried" />
|
||||
<MDButton variant="text" class="bx" :text="recipe.isFavorite ? icon.heart : icon.heartOutline" @tap="toggleFavourite" />
|
||||
<MDButton variant="text" class="bx" :text="recipe.isFavorite ? icon.heart : icon.heartLine" @tap="toggleFavourite" />
|
||||
<!-- <MDButton variant="text" class="bx" :text="icon.emptyCart" /> -->
|
||||
<MDButton variant="text" v-if="!busy" class="bx" :text="icon.edit" @tap="editRecipe" />
|
||||
<MDActivityIndicator v-else :busy="busy" />
|
||||
</FlexboxLayout>
|
||||
|
@ -25,10 +26,10 @@
|
|||
<Label :text="'Instructions' | L"></Label>
|
||||
</TabStripItem>
|
||||
<TabStripItem>
|
||||
<Label :text="'Combinations' | L"></Label>
|
||||
<Label :text="'Notes' | L"></Label>
|
||||
</TabStripItem>
|
||||
<TabStripItem>
|
||||
<Label :text="'Notes' | L"></Label>
|
||||
<Label :text="'Combinations' | L"></Label>
|
||||
</TabStripItem>
|
||||
</TabStrip>
|
||||
<TabContentItem>
|
||||
|
@ -38,11 +39,19 @@
|
|||
<Image v-if="recipe.imageSrc" :src="recipe.imageSrc" stretch="aspectFill" width="100%" :height="screenWidth" />
|
||||
<Label v-else horizontalAlignment="center" class="bx" fontSize="160" :text="icon.image" />
|
||||
</StackLayout>
|
||||
<StackLayout margin="16 8 80">
|
||||
<Label class="category orkm" :text="`${recipe.category}` | L" />
|
||||
<Label margin="0 8" class="title orkm" :text="recipe.title" textWrap="true" />
|
||||
<Label class="time" :text="`${$options.filters.L('Preparation time')}: ${formattedTime(recipe.prepTime)}`" textWrap="true" />
|
||||
<Label class="time" :text="`${$options.filters.L('Cooking time')}: ${formattedTime(recipe.cookTime)}`" textWrap="true" />
|
||||
<StackLayout margin="16 4 80">
|
||||
<Label class="category" :text="`${$options.filters.L(recipe.cuisine)} • ${$options.filters.L(recipe.category)}`" />
|
||||
<Label class="title orkm" :text="recipe.title" textWrap="true" />
|
||||
<FlexboxLayout class="ratingContainer">
|
||||
<Label class="rating bx" v-for="n in 5" :key="n" :text="recipe.rating < n ?icon.starLine:icon.star" @tap="setRating(n)" @longPress="setRating(n)" />
|
||||
</FlexboxLayout>
|
||||
<Label class="attr" :text="`${$options.filters.L('Difficulty level')}: ${$options.filters.L(recipe.difficulty)}`" textWrap="true" />
|
||||
<Label class="attr" :text="`${$options.filters.L('Preparation time')}: ${formattedTime(recipe.prepTime)}`" textWrap="true" />
|
||||
<Label class="attr" :text="`${$options.filters.L('Cooking time')}: ${formattedTime(recipe.cookTime)}`" textWrap="true" />
|
||||
<FlexboxLayout v-if="recipe.tags.length" class="tagsContainer" flexWrap="wrap">
|
||||
<Label class="tagsTitle" :text="`${$options.filters.L('Tags')}: `" />
|
||||
<Label v-for="(tag, index) in recipe.tags" :key="index" v-if="tag" :text="tag" class="tag" textWrap="false" />
|
||||
</FlexboxLayout>
|
||||
<GridLayout rows="auto, auto" columns="*, *" class="overviewContainer">
|
||||
<GridLayout class="overviewItem" row="0" col="0" rows="auto, auto" columns="*">
|
||||
<MDRipple rowSpan="2" @tap="selectedTabIndex = 1" />
|
||||
|
@ -68,17 +77,6 @@
|
|||
</GridLayout>
|
||||
<GridLayout class="overviewItem" row="1" col="0" rows="auto, auto" columns="*">
|
||||
<MDRipple rowSpan="2" @tap="selectedTabIndex = 3" />
|
||||
<Label row="0" class="bx" :text="icon.outline" />
|
||||
<Label row="1" class="itemCount" :text="
|
||||
`${recipe.combinations.length} ${
|
||||
recipe.combinations.length == 1
|
||||
? $options.filters.L('Combination')
|
||||
: $options.filters.L('Combinations')
|
||||
}`
|
||||
" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout class="overviewItem" row="1" col="1" rows="auto, auto" columns="*">
|
||||
<MDRipple rowSpan="2" @tap="selectedTabIndex = 4" />
|
||||
<Label row="0" class="bx" :text="icon.note" />
|
||||
<Label row="1" class="itemCount" :text="
|
||||
`${recipe.notes.length} ${
|
||||
|
@ -88,7 +86,20 @@
|
|||
}`
|
||||
" textWrap="true" />
|
||||
</GridLayout>
|
||||
<GridLayout class="overviewItem" row="1" col="1" rows="auto, auto" columns="*">
|
||||
<MDRipple rowSpan="2" @tap="selectedTabIndex = 4" />
|
||||
<Label row="0" class="bx" :text="icon.outline" />
|
||||
<Label row="1" class="itemCount" :text="
|
||||
`${recipe.combinations.length} ${
|
||||
recipe.combinations.length == 1
|
||||
? $options.filters.L('Combination')
|
||||
: $options.filters.L('Combinations')
|
||||
}`
|
||||
" textWrap="true" />
|
||||
</GridLayout>
|
||||
</GridLayout>
|
||||
<Label class="attr small" :text="`${$options.filters.L('Last updated')}: ${formattedDate(recipe.lastModified)}`" textWrap="true" />
|
||||
<Label class="attr small" :text="`${$options.filters.L('Created')}: ${formattedDate(recipe.created)}`" textWrap="true" />
|
||||
</StackLayout>
|
||||
</StackLayout>
|
||||
</ScrollView>
|
||||
|
@ -98,15 +109,15 @@
|
|||
<GridLayout v-if="!recipe.ingredients.length" rows="*, auto, *, 88" columns="*" class="emptyStateContainer">
|
||||
<StackLayout col="0" row="1" class="emptyState">
|
||||
<Label class="bx icon" :text="icon.item" textWrap="true" />
|
||||
<Label class="subTitle orkm" :text="'Use the pencil button to add some ingredients' | L" textWrap="true" />
|
||||
<Label class="title orkm" :text="'Use the pencil button to add some ingredients' | L" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<StackLayout v-else padding="24 16 72">
|
||||
<StackLayout v-else padding="16 16 72">
|
||||
<AbsoluteLayout class="inputField">
|
||||
<TextField width="50%" v-model="yieldMultiplier" keyboardType="number" />
|
||||
<Label top="0" class="fieldLabel" :text="`${$options.filters.L('Required')} ${$options.filters.L(recipe.yield.unit)}`" />
|
||||
</AbsoluteLayout>
|
||||
<Label margin="16 0" class="subTitle orkm" :text="
|
||||
<Label padding="16 0 8" class="title orkm" :text="
|
||||
`${$options.filters.L('Ingredients')} (${positiveYieldMultiplier} ${$options.filters.L(recipe.yield.unit)})`
|
||||
" textWrap="true" />
|
||||
<StackLayout v-for="(item, index) in recipe.ingredients" :key="index">
|
||||
|
@ -128,32 +139,15 @@
|
|||
<GridLayout v-if="!recipe.instructions.length" rows="*, auto, *, 88" columns="*" class="emptyStateContainer">
|
||||
<StackLayout col="0" row="1" class="emptyState">
|
||||
<Label class="bx icon" :text="icon.step" textWrap="true" />
|
||||
<Label class="subTitle orkm" :text="'Use the pencil button to add some instructions' | L" textWrap="true" />
|
||||
<Label class="title orkm" :text="'Use the pencil button to add some instructions' | L" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<StackLayout v-else padding="28 16 62">
|
||||
<StackLayout v-else padding="20 16 62">
|
||||
<GridLayout columns="auto ,*" v-for="(instruction, index) in recipe.instructions" :key="index">
|
||||
<Label col="0" colSpan="2" class="instruction" :class="{
|
||||
noBorder: index === recipe.instructions.length - 1,
|
||||
}" :text="instruction" textWrap="true" />
|
||||
<Label verticalAlignment="top" horizontalAlignment="center" class="count orkm" col="0" :text="index + 1" />
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
</ScrollView>
|
||||
</TabContentItem>
|
||||
<TabContentItem>
|
||||
<ScrollView @scroll="onScroll">
|
||||
<GridLayout v-if="!recipe.combinations.length" rows="*, auto, *, 88" columns="*" class="emptyStateContainer">
|
||||
<StackLayout col="0" row="1" class="emptyState">
|
||||
<Label class="bx icon" :text="icon.outline" textWrap="true" />
|
||||
<Label class="subTitle orkm" :text="'Use the pencil button to add some combinations' | L" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<StackLayout v-else padding="8 0 80">
|
||||
<GridLayout columns="auto, *" v-for="(combination, index) in recipe.combinations" :key="index" androidElevation="1" class="urlCard">
|
||||
<MDRipple colSpan="2" @tap="viewCombination(combination)" />
|
||||
<Label col="0" class="bx linkIcon" :text="icon.food" />
|
||||
<Label col="1" verticalAlignment="center" class="link" :text="getCombinationTitle(combination)" textWrap="true" />
|
||||
<Label class="count orkm" col="0" :text="index + 1" />
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
</ScrollView>
|
||||
|
@ -163,14 +157,31 @@
|
|||
<GridLayout v-if="!recipe.notes.length" rows="*, auto, *, 88" columns="*" class="emptyStateContainer">
|
||||
<StackLayout col="0" row="1" class="emptyState">
|
||||
<Label class="bx icon" :text="icon.note" textWrap="true" />
|
||||
<Label class="subTitle orkm" :text="'Use the pencil button to add some notes' | L" textWrap="true" />
|
||||
<Label class="title orkm" :text="'Use the pencil button to add some notes' | L" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<StackLayout v-else padding="8 0 80">
|
||||
<StackLayout @loaded="createNotes"></StackLayout>
|
||||
<StackLayout v-else padding="20 16 62" @loaded="createNotes">
|
||||
</StackLayout>
|
||||
</ScrollView>
|
||||
</TabContentItem>
|
||||
<TabContentItem>
|
||||
<ScrollView @scroll="onScroll">
|
||||
<GridLayout v-if="!recipe.combinations.length" rows="*, auto, *, 88" columns="*" class="emptyStateContainer">
|
||||
<StackLayout col="0" row="1" class="emptyState">
|
||||
<Label class="bx icon" :text="icon.outline" textWrap="true" />
|
||||
<Label class="title orkm" :text="'Use the pencil button to add some combinations' | L" textWrap="true" />
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
<StackLayout v-else padding="0 0 80">
|
||||
<GridLayout columns="auto, *" v-for="(combination, index) in recipe.combinations" :key="index" androidElevation="1" class="combination">
|
||||
<MDRipple colSpan="2" @tap="viewCombination(combination)" />
|
||||
<Label col="0" class="bx" :text="icon.food" />
|
||||
<Label col="1" verticalAlignment="center" class="combinationTitle" :text="getCombinationTitle(combination)" textWrap="true" />
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
</ScrollView>
|
||||
</TabContentItem>
|
||||
|
||||
</Tabs>
|
||||
<GridLayout id="btnFabContainer" rows="*, auto" columns="*, auto">
|
||||
<transition name="dolly" appear>
|
||||
|
@ -191,7 +202,9 @@ import {
|
|||
Span,
|
||||
FormattedString,
|
||||
Label,
|
||||
Observable
|
||||
GridLayout,
|
||||
ItemSpec,
|
||||
Observable,
|
||||
}
|
||||
from "@nativescript/core"
|
||||
import {
|
||||
|
@ -206,6 +219,7 @@ import {
|
|||
localize
|
||||
}
|
||||
from "@nativescript/localize"
|
||||
const intl = require( "nativescript-intl" );
|
||||
import {
|
||||
mapActions,
|
||||
mapState
|
||||
|
@ -243,7 +257,7 @@ export default {
|
|||
},
|
||||
},
|
||||
methods: {
|
||||
...mapActions( [ "toggleStateAction", "setCurrentComponentAction", "overwriteRecipeAction", "setRecipeAsTriedAction", ] ),
|
||||
...mapActions( [ "toggleStateAction", "setCurrentComponentAction", "overwriteRecipeAction", "setRecipeAsTriedAction", "setRatingAction" ] ),
|
||||
onPageLoad( args ) {
|
||||
const page = args.object;
|
||||
page.bindingContext = new Observable();
|
||||
|
@ -274,10 +288,7 @@ export default {
|
|||
}
|
||||
return (
|
||||
( diff < 86400 && lastTried > midnight && duration( "today" ) ) || ( dayDiff == 1 && "yesterday" ) || ( dayDiff < 7 && dayDiff + " " + duration( "days ago" ) ) || ( dayDiff < 31 && Math.round( dayDiff / 7 ) + " " + duration(
|
||||
"weeks ago" ) ) || ( dayDiff <
|
||||
366 && Math.round(
|
||||
dayDiff /
|
||||
30 ) + " " + duration( "months ago" ) ) || ( dayDiff > 365 && duration( "long time ago" ) ) )
|
||||
"weeks ago" ) ) || ( dayDiff < 366 && Math.round( dayDiff / 30 ) + " " + duration( "months ago" ) ) || ( dayDiff > 365 && duration( "long time ago" ) ) )
|
||||
},
|
||||
selectedIndexChange( args ) {
|
||||
this.selectedTabIndex = args.object.selectedIndex
|
||||
|
@ -310,6 +321,17 @@ export default {
|
|||
let min = localize( 'min' )
|
||||
return h ? ( m ? `${h} ${hr} ${m} ${min}` : `${h} ${hr}` ) : `${m} ${min}`
|
||||
},
|
||||
formattedDate( date ) {
|
||||
let d = new Date( date )
|
||||
var dateFormat = new intl.DateTimeFormat( null, {
|
||||
'year': 'numeric',
|
||||
'month': 'long',
|
||||
'day': 'numeric',
|
||||
'hour': 'numeric',
|
||||
'minute': 'numeric',
|
||||
} ).format( d );
|
||||
return `${dateFormat}`
|
||||
},
|
||||
isValidURL( string ) {
|
||||
let pattern = new RegExp( "^https?|^www", "ig" )
|
||||
return pattern.test( string )
|
||||
|
@ -371,26 +393,25 @@ export default {
|
|||
break
|
||||
}
|
||||
} )
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
this.shareRecipe()
|
||||
}
|
||||
},
|
||||
shareRecipe() {
|
||||
let overview = `${
|
||||
this.recipe.title
|
||||
}\n\n${localize("Preparation time")}: ${this.formattedTime(
|
||||
}\n\n${localize( "Cuisine" )}: ${localize( this.recipe.cuisine)}\n${localize( "Category" )}: ${localize( this.recipe.category)}\n${localize( "Tags" )}: ${this.recipe.tags.join(", ")}\n${localize( "Star rating" )}: ${this.recipe.rating}\n${localize( "Difficulty level" )}: ${localize( this.recipe.difficulty)}\n${localize("Preparation time")}: ${this.formattedTime(
|
||||
this.recipe.prepTime
|
||||
)}\n${localize( "Cooking time" )}: ${this.formattedTime(this.recipe.cookTime)}\n`
|
||||
let shareContent = overview
|
||||
if ( this.recipe.ingredients.length ) {
|
||||
let ingredients = `\n\n${localize( "Ingredients" )} (${
|
||||
this.yieldMultiplier
|
||||
} ${localize( this.recipe.yield.unit )})\n\n`
|
||||
} ${localize( this.recipe.yield.unit )}):\n\n`
|
||||
this.recipe.ingredients.forEach( ( e ) => {
|
||||
ingredients += `- ${
|
||||
e.quantity
|
||||
? this.roundedQuantity(e.quantity) + " " + e.unit + " "
|
||||
? this.roundedQuantity(e.quantity) + " " + this.$options.filters.L(e.unit) + " "
|
||||
: ""
|
||||
}${e.item}\n`
|
||||
} )
|
||||
|
@ -403,13 +424,6 @@ export default {
|
|||
} )
|
||||
shareContent += instructions
|
||||
}
|
||||
if ( this.recipe.combinations.length ) {
|
||||
let combinations = `\n${localize( "Combinations" )}:\n\n`
|
||||
this.recipe.combinations.forEach( ( e, i ) => {
|
||||
combinations += `${i + 1}. ${this.getCombinationTitle(e)}\n\n`
|
||||
} )
|
||||
shareContent += combinations
|
||||
}
|
||||
if ( this.recipe.notes.length ) {
|
||||
let notes = `\n${localize( "Notes" )}:\n\n`
|
||||
this.recipe.notes.forEach( ( e, i ) => {
|
||||
|
@ -417,6 +431,13 @@ export default {
|
|||
} )
|
||||
shareContent += notes
|
||||
}
|
||||
if ( this.recipe.combinations.length ) {
|
||||
let combinations = `\n${localize( "Combinations" )}:\n\n`
|
||||
this.recipe.combinations.forEach( ( e, i ) => {
|
||||
combinations += `${i + 1}. ${this.getCombinationTitle(e)}\n\n`
|
||||
} )
|
||||
shareContent += combinations
|
||||
}
|
||||
let sharenote = '\n' + localize( "Shared via EnRecipes. Get it on Play Store or F-Droid." )
|
||||
shareContent += sharenote
|
||||
SocialShare.shareText( shareContent, "Share recipe using" )
|
||||
|
@ -435,8 +456,7 @@ export default {
|
|||
this.toggle( "isFavorite" )
|
||||
},
|
||||
toggleTrylater() {
|
||||
this.recipe.tried ? Toast.makeText( localize( "Added to Try Later" ) ).show() : Toast.makeText(
|
||||
localize( "Removed from Try Later" ) ).show()
|
||||
this.recipe.tried ? Toast.makeText( localize( "Added to Try Later" ) ).show() : Toast.makeText( localize( "Removed from Try Later" ) ).show()
|
||||
this.toggle( "tried" )
|
||||
},
|
||||
recipeTried() {
|
||||
|
@ -446,20 +466,36 @@ export default {
|
|||
} )
|
||||
this.$navigateBack()
|
||||
},
|
||||
setRating( rating ) {
|
||||
if ( rating !== this.recipe.rating ) {
|
||||
|
||||
this.setRatingAction( {
|
||||
id: this.currentRecipeID,
|
||||
recipe: this.recipe,
|
||||
rating,
|
||||
} )
|
||||
}
|
||||
},
|
||||
// NOTES
|
||||
createNote( note ) {
|
||||
createNote( note, i ) {
|
||||
const vm = this
|
||||
let regex = /(https?:\/\/[^\s]+)/g
|
||||
let label = new Label()
|
||||
label.class = "textCard"
|
||||
label.textWrap = true
|
||||
const grid = new GridLayout()
|
||||
const firstCol = new ItemSpec( 1, "auto" )
|
||||
const secondCol = new ItemSpec( 1, "star" )
|
||||
const label1 = new Label()
|
||||
const label2 = new Label()
|
||||
label1.class = "note"
|
||||
label1.textWrap = true
|
||||
label2.class = "noteCount orkm"
|
||||
label2.text = i + 1
|
||||
let formattedString = new FormattedString()
|
||||
let textArray = note.split( regex )
|
||||
|
||||
function createSpan( text, isUrl ) {
|
||||
let span = new Span()
|
||||
span.text = text
|
||||
span.fontSize = 16
|
||||
span.fontSize = 14
|
||||
if ( isUrl ) {
|
||||
span.textDecoration = "underline"
|
||||
span.color = "#ff5200"
|
||||
|
@ -470,14 +506,21 @@ export default {
|
|||
textArray.forEach( ( text ) => {
|
||||
createSpan( text, regex.test( text ) )
|
||||
} )
|
||||
label.formattedText = formattedString
|
||||
return label
|
||||
label1.formattedText = formattedString
|
||||
grid.addChild( label1 )
|
||||
grid.addChild( label2 )
|
||||
GridLayout.setColumn( label1, 0 )
|
||||
GridLayout.setColumn( label2, 0 )
|
||||
GridLayout.setColumnSpan( label1, 2 )
|
||||
grid.addColumn( firstCol )
|
||||
grid.addColumn( secondCol )
|
||||
return grid
|
||||
},
|
||||
createNotes( args ) {
|
||||
const stack = args.object
|
||||
if ( !stack.getChildrenCount() ) {
|
||||
this.recipe.notes.forEach( ( note ) => {
|
||||
stack.addChild( this.createNote( note ) )
|
||||
this.recipe.notes.forEach( ( note, i ) => {
|
||||
stack.addChild( this.createNote( note, i ) )
|
||||
} )
|
||||
}
|
||||
},
|
||||
|
|
|
@ -1,17 +1,18 @@
|
|||
<template>
|
||||
<Page>
|
||||
<StackLayout class="dialogContainer" :class="appTheme">
|
||||
<Label class="dialogTitle orkm" :text="`${title}` | L" />
|
||||
<ScrollView width="100%" :height="height ? height : screenHeight - 256">
|
||||
<GridLayout columns="*" :rows="`auto, ${stretch? '*':'auto'}, auto`" class="dialogContainer" :class="appTheme">
|
||||
<Label row="0" class="dialogTitle orkm" :text="`${title}` | L" />
|
||||
<ScrollView row="1" width="100%">
|
||||
<StackLayout>
|
||||
<MDButton v-for="(item, index) in list" :key="index" class="actionItem" variant="text" :rippleColor="rippleColor" :text="`${item}` | L" @loaded="onLabelLoaded" @tap="tapAction(item)" />
|
||||
<MDButton v-for="(item, index) in newList" :key="index" class="actionItem" variant="text" :rippleColor="rippleColor" :text="`${title==='Sort by' && sortType=== item ? '→ ':''}${localized(item)}`" @loaded="onLabelLoaded" @tap="tapAction(item)"
|
||||
@longPress="removeItem(index)" />
|
||||
</StackLayout>
|
||||
</ScrollView>
|
||||
<GridLayout rows="auto" columns="auto, *, auto" class="actionsContainer">
|
||||
<GridLayout row="2" rows="auto" columns="auto, *, auto" class="actionsContainer">
|
||||
<MDButton :rippleColor="rippleColor" variant="text" v-if="action" col="0" class="action orkm pull-left" :text="`${action}` | L" @tap="$modal.close(action)" />
|
||||
<MDButton :rippleColor="rippleColor" variant="text" col="2" class="action orkm pull-right" :text="'CANCEL' | L" @tap="$modal.close(false)" />
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
</Page>
|
||||
</template>
|
||||
|
||||
|
@ -20,9 +21,26 @@ import {
|
|||
Application,
|
||||
Screen
|
||||
} from "@nativescript/core"
|
||||
import * as Toast from "nativescript-toast"
|
||||
import {
|
||||
localize
|
||||
}
|
||||
from "@nativescript/localize"
|
||||
import {
|
||||
mapState,
|
||||
mapActions
|
||||
}
|
||||
from "vuex"
|
||||
import ConfirmDialog from "./ConfirmDialog.vue"
|
||||
export default {
|
||||
props: [ "title", "list", "height", "action" ],
|
||||
props: [ "title", "list", "stretch", "action" ],
|
||||
data() {
|
||||
return {
|
||||
newList: this.list,
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapState( [ "sortType" ] ),
|
||||
appTheme() {
|
||||
return Application.systemAppearance()
|
||||
},
|
||||
|
@ -34,12 +52,60 @@ export default {
|
|||
},
|
||||
},
|
||||
methods: {
|
||||
...mapActions( [ "removeListItemAction" ] ),
|
||||
localized( item ) {
|
||||
if ( this.title !== 'App language' )
|
||||
return localize( item )
|
||||
else
|
||||
return item
|
||||
},
|
||||
tapAction( item ) {
|
||||
this.$modal.close( item )
|
||||
},
|
||||
onLabelLoaded( args ) {
|
||||
args.object.android.setGravity( 16 )
|
||||
},
|
||||
deletionConfirmation( type, description ) {
|
||||
return this.$showModal( ConfirmDialog, {
|
||||
props: {
|
||||
title: `Remove ${type}?`,
|
||||
description,
|
||||
cancelButtonText: "CANCEL",
|
||||
okButtonText: "REMOVE",
|
||||
},
|
||||
} )
|
||||
},
|
||||
removeItem( index ) {
|
||||
let item = this.newList[ index ]
|
||||
let vm = this
|
||||
|
||||
function removeListItem( type, listName ) {
|
||||
vm.deletionConfirmation( type, `${vm.$options.filters.L('Are you sure you want to remove')} "${vm.$options.filters.L(item)}"?` ).then( action => {
|
||||
if ( action != null && action ) {
|
||||
vm.newList.splice( index, 1 )
|
||||
vm.removeListItemAction( {
|
||||
item,
|
||||
listName
|
||||
} )
|
||||
}
|
||||
} )
|
||||
}
|
||||
switch ( this.title ) {
|
||||
case "Cuisine":
|
||||
removeListItem( 'cuisine', "cuisines" )
|
||||
break;
|
||||
case "Category":
|
||||
removeListItem( "category", "categories" )
|
||||
break;
|
||||
case "Yield measured in":
|
||||
removeListItem( "yield unit", "yieldUnits" )
|
||||
break;
|
||||
case "Units":
|
||||
removeListItem( "unit", "units" )
|
||||
break;
|
||||
default:
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
<template>
|
||||
<Page>
|
||||
<StackLayout class="dialogContainer" :class="appTheme">
|
||||
<Label class="dialogTitle orkm" :text="`${title}` | L" textWrap='true' />
|
||||
<StackLayout v-if="filteredRecipes.length || searchTerm" padding="0 24 24">
|
||||
<TextField :hint="'Search' | L" v-model="searchTerm" />
|
||||
<GridLayout columns="*" rows="auto, auto, *, auto" class="dialogContainer" :class="appTheme">
|
||||
<Label row="0" class="dialogTitle orkm" :text="`${title}` | L" textWrap='true' />
|
||||
<StackLayout row="1" v-if="filteredRecipes.length || searchQuery" padding="0 24 24">
|
||||
<TextField :hint="'Search' | L" v-model="searchQuery" />
|
||||
</StackLayout>
|
||||
<ScrollView width="100%" :height="height ? height : screenHeight - 320">
|
||||
<ScrollView row="2" width="100%" :height="height ? height : ''">
|
||||
<StackLayout>
|
||||
<MDButton v-for="(recipe, index) in filteredRecipes" :key="index" class="actionItem" variant="text" :rippleColor="rippleColor" :text="recipe.title" @loaded="onLabelLoaded" @tap="tapAction(recipe)" />
|
||||
<Label padding="24" lineHeight="6" v-if="!filteredRecipes.length" :text="'Nothing here! Add some recipes and try again.' | L" textAlignment="center" textWrap="true" />
|
||||
</StackLayout>
|
||||
</ScrollView>
|
||||
<GridLayout rows="auto" columns="auto, *, auto" class="actionsContainer">
|
||||
<GridLayout row="3" rows="auto" columns="auto, *, auto" class="actionsContainer">
|
||||
<MDButton :rippleColor="rippleColor" variant="text" v-if="action" col="0" class="action orkm pull-left" :text="`${action}` | L" @tap="$modal.close(action)" />
|
||||
<MDButton :rippleColor="rippleColor" variant="text" col="2" class="action orkm pull-right" :text="'CANCEL' | L" @tap="$modal.close(false)" />
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
</GridLayout>
|
||||
</Page>
|
||||
</template>
|
||||
|
||||
|
@ -29,7 +29,7 @@ export default {
|
|||
props: [ "title", "recipes", "height", "action" ],
|
||||
data() {
|
||||
return {
|
||||
searchTerm: "",
|
||||
searchQuery: "",
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
@ -47,9 +47,14 @@ export default {
|
|||
return {
|
||||
id: e.id,
|
||||
title: e.title,
|
||||
cuisine: e.cuisine,
|
||||
category: e.category,
|
||||
tags: e.tags.map( e => e.toLowerCase() ).join(),
|
||||
ingredients: e.ingredients.map( e => e.item.toLowerCase() ).join(),
|
||||
}
|
||||
} ).filter( ( e ) => e.title.includes( this.searchTerm ) )
|
||||
} ).filter( ( e ) => this.recipeFilter( e ) )
|
||||
},
|
||||
|
||||
},
|
||||
methods: {
|
||||
tapAction( recipe ) {
|
||||
|
@ -58,6 +63,10 @@ export default {
|
|||
onLabelLoaded( args ) {
|
||||
args.object.android.setGravity( 16 )
|
||||
},
|
||||
recipeFilter( e ) {
|
||||
let searchQuery = this.searchQuery.toLowerCase()
|
||||
return e.title.includes( searchQuery ) || e.cuisine.includes( searchQuery ) || e.category.includes( searchQuery ) || e.tags.includes( searchQuery ) || e.ingredients.includes( searchQuery )
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<Label class="dialogTitle orkm" :text="`${title}` | L" textWrap="true" />
|
||||
<Label v-if="description" class="dialogDescription" :text="description" textWrap="true" />
|
||||
<GridLayout rows="auto" columns="*, auto, auto" class="actionsContainer">
|
||||
<MDButton :rippleColor="rippleColor" variant="text" col="1" class="action orkm" :text="`${cancelButtonText}` | L" @tap="$modal.close(false)" />
|
||||
<MDButton v-if="cancelButtonText" :rippleColor="rippleColor" variant="text" col="1" class="action orkm" :text="`${cancelButtonText}` | L" @tap="$modal.close(false)" />
|
||||
<MDButton :rippleColor="rippleColor" variant="text" col="2" class="action orkm" :text="`${okButtonText}` | L" @tap="$modal.close(true)" />
|
||||
</GridLayout>
|
||||
</StackLayout>
|
||||
|
@ -23,9 +23,7 @@ export default {
|
|||
return Application.systemAppearance()
|
||||
},
|
||||
rippleColor() {
|
||||
return this.appTheme == "light" ?
|
||||
"rgba(134,142,150,0.2)" :
|
||||
"rgba(206,212,218,0.1)"
|
||||
return this.appTheme == "light" ? "rgba(134,142,150,0.2)" : "rgba(206,212,218,0.1)"
|
||||
},
|
||||
},
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<StackLayout class="dialogContainer" :class="appTheme">
|
||||
<Label class="dialogTitle orkm" :text="`${title}` | L" textWrap='true' />
|
||||
<StackLayout class="dialogInput">
|
||||
<TextField @loaded="focusField" :hint="hint ? hint : ''" v-model="category" autocapitalizationType="words" />
|
||||
<TextField @loaded="focusField" :hint="hint ? hint : ''" v-model="category" autocapitalizationType="words" @returnPress="$modal.close(category)" />
|
||||
</StackLayout>
|
||||
<GridLayout rows="auto" columns="*, auto, auto" class="actionsContainer">
|
||||
<MDButton :rippleColor="rippleColor" variant="text" col="1" class="action orkm" :text="'CANCEL' | L" @tap="$modal.close(false)" />
|
||||
|
|
|
@ -15,15 +15,15 @@
|
|||
|
||||
android {
|
||||
defaultConfig {
|
||||
versionCode 4
|
||||
versionName '1.1.3'
|
||||
versionCode 5
|
||||
versionName '1.2.5'
|
||||
applicationId 'com.vishnuraghav.enrecipes'
|
||||
minSdkVersion 21
|
||||
generatedDensities = []
|
||||
ndk {
|
||||
abiFilters.clear()
|
||||
abiFilters.addAll(['x86','armeabi-v7a','arm64-v8a'])
|
||||
}
|
||||
// ndk {
|
||||
// abiFilters.clear()
|
||||
// abiFilters.addAll(['x86','armeabi-v7a','arm64-v8a'])
|
||||
// }
|
||||
}
|
||||
aaptOptions {
|
||||
additionalParameters "--no-version-vectors"
|
||||
|
|
|
@ -2,10 +2,10 @@
|
|||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="__PACKAGE__" android:versionCode="10000" android:versionName="1.0">
|
||||
<supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:xlargeScreens="true" />
|
||||
<uses-permission android:name="android.permission.CAMERA" tools:node="remove" />
|
||||
<!-- <uses-feature android:name="android.hardware.camera" /> -->
|
||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
||||
<uses-permission android:name="android.permission.VIBRATE" />
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" tools:node="remove" />
|
||||
<uses-permission android:name="android.permission.INTERNET" tools:node="remove" />
|
||||
<uses-permission android:name="android.permission.RECORD_AUDIO" tools:node="remove" />
|
||||
|
|
291
app/resources/Android/src/main/res/values-da/strings.xml
Normal file
291
app/resources/Android/src/main/res/values-da/strings.xml
Normal file
|
@ -0,0 +1,291 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="_Invalid_file__Z2bRAst">"Invalid file:"</string>
|
||||
<string name="_Backup_file_has_been_modified_externally__Wjiqq">"Backup file has been modified externally."</string>
|
||||
<string name="_Backup_file_seems_empty__Zd7qfR">"Backup file seems empty."</string>
|
||||
<string name="_Backup_file_is_incorrect_or_corrupt__1jXb8N">"Backup file is incorrect or corrupt."</string>
|
||||
<string name="_Remove_recipe_from_snacks__MNnCU">"Remove recipe from snacks?"</string>
|
||||
<string name="_Remove_recipe_from_dinner__8sWfY">"Remove recipe from dinner?"</string>
|
||||
<string name="_Remove_recipe_from_lunch__Zwpsg2">"Remove recipe from lunch?"</string>
|
||||
<string name="_Remove_recipe_from_breakfast__ZvYyFG">"Remove recipe from breakfast?"</string>
|
||||
<string name="_Untitled_Recipe_Zv0UxP">"Untitled Recipe"</string>
|
||||
<string name="_Star_rating_Z11p4Kw">"Star rating"</string>
|
||||
<string name="Created">"Created"</string>
|
||||
<string name="_Filtered_result_1AMEXe">"Filtered result"</string>
|
||||
<string name="OK">"OK"</string>
|
||||
<string name="_recipes_updated_Z2arFrR">"recipes updated"</string>
|
||||
<string name="_recipes_already_exists_2jqW2s">"recipes already exists"</string>
|
||||
<string name="_recipes_imported_1NGeRw">"recipes imported"</string>
|
||||
<string name="_recipes_found_ZDdUgV">"recipes found"</string>
|
||||
<string name="_Import_summary_244SkL">"Import summary"</string>
|
||||
<string name="_separate_with_spaces_ZHKOfw">"separate with spaces"</string>
|
||||
<string name="Tags">"Tags"</string>
|
||||
<string name="_No_tags_available_Z1C5GqD">"No tags available"</string>
|
||||
<string name="_All_Tags_28gMyY">"All Tags"</string>
|
||||
<string name="_All_Categories_Z23JSTS">"All Categories"</string>
|
||||
<string name="Vietnamese">"Vietnamese"</string>
|
||||
<string name="Turkish">"Turkish"</string>
|
||||
<string name="Thai">"Thai"</string>
|
||||
<string name="Swedish">"Swedish"</string>
|
||||
<string name="_Sri_Lankan_Z7GfBa">"Sri Lankan"</string>
|
||||
<string name="Spanish">"Spanish"</string>
|
||||
<string name="Scottish">"Scottish"</string>
|
||||
<string name="Russian">"Russian"</string>
|
||||
<string name="Portuguese">"Portuguese"</string>
|
||||
<string name="Nigerian">"Nigerian"</string>
|
||||
<string name="Mexican">"Mexican"</string>
|
||||
<string name="Korean">"Korean"</string>
|
||||
<string name="Kenyan">"Kenyan"</string>
|
||||
<string name="Jewish">"Jewish"</string>
|
||||
<string name="Japanese">"Japanese"</string>
|
||||
<string name="Jamaican">"Jamaican"</string>
|
||||
<string name="Italian">"Italian"</string>
|
||||
<string name="Irish">"Irish"</string>
|
||||
<string name="Indian">"Indian"</string>
|
||||
<string name="Greek">"Greek"</string>
|
||||
<string name="German">"German"</string>
|
||||
<string name="French">"French"</string>
|
||||
<string name="Filipino">"Filipino"</string>
|
||||
<string name="English">"English"</string>
|
||||
<string name="Egyptian">"Egyptian"</string>
|
||||
<string name="Danish">"Danish"</string>
|
||||
<string name="Chinese">"Chinese"</string>
|
||||
<string name="British">"British"</string>
|
||||
<string name="Brazilian">"Brazilian"</string>
|
||||
<string name="American">"American"</string>
|
||||
<string name="_All_Cuisines_2hjCp9">"All Cuisines"</string>
|
||||
<string name="Cuisines">"Cuisines"</string>
|
||||
<string name="Cuisine">"Cuisine"</string>
|
||||
<string name="_Are_you_sure_you_want_to_remove_ZOnf22">"Are you sure you want to remove"</string>
|
||||
<string name="Units">"Units"</string>
|
||||
<string name="_Remove_unit__2x26yq">"Remove unit?"</string>
|
||||
<string name="_Remove_yield_unit__Z1duBWR">"Remove yield unit?"</string>
|
||||
<string name="_Remove_category__2reaxz">"Remove category?"</string>
|
||||
<string name="_Remove_cuisine__22ftcL">"Remove cuisine?"</string>
|
||||
<string name="_New_unit_1CVEEA">"New unit"</string>
|
||||
<string name="_New_cuisine_Zrvs3z">"New cuisine"</string>
|
||||
<string name="Challenging">"Challenging"</string>
|
||||
<string name="Moderate">"Moderate"</string>
|
||||
<string name="Easy">"Easy"</string>
|
||||
<string name="_Oldest_first_Z6cq4h">"Oldest first"</string>
|
||||
<string name="_Newest_first_2Sb3c">"Newest first"</string>
|
||||
<string name="_Last_updated_Z2gEbLD">"Last updated"</string>
|
||||
<string name="_Difficulty_level_cSL5d">"Difficulty level"</string>
|
||||
<string name="Rating">"Rating"</string>
|
||||
<string name="_Slowest_first_hHjY6">"Slowest first"</string>
|
||||
<string name="_Quickest_first_Z1CpP7N">"Quickest first"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_the_filtered_result_1TV6QQ">"Your search did not match any recipes in the filtered result"</string>
|
||||
<string name="_Recipe_not_found_2qGveM">"Recipe not found"</string>
|
||||
<string name="_Reset_successful_YxqWK">"Reset successful"</string>
|
||||
<string name="_Reset_units_list_msRS3">"Reset units list"</string>
|
||||
<string name="_Reset_yield_units_list_ZjouMk">"Reset yield units list"</string>
|
||||
<string name="_Reset_categories_list_Z1JmKra">"Reset categories list"</string>
|
||||
<string name="_Reset_cuisines_list_1kWL8I">"Reset cuisines list"</string>
|
||||
<string name="_Resetting_a_list_will_NOT_delete_your_existing_entries_but_only_restores_the_deleted_default_entries__Z28mk0h">"Resetting a list will NOT delete your existing entries but only restores the deleted default entries."</string>
|
||||
<string name="Reset">"Reset"</string>
|
||||
<string name="_Helps_you_choose_what_to_cook_when_you_can_t_decide_muiMv">"Helps you choose what to cook when you can\'t decide"</string>
|
||||
<string name="_Shake_to_view_random_recipe_ZTK9F2">"Shake to view random recipe"</string>
|
||||
<string name="Options">"Options"</string>
|
||||
<string name="_User_guide_2uDJCF">"User guide"</string>
|
||||
<string name="_Privacy_policy_Zb4ht5">"Privacy policy"</string>
|
||||
<string name="_View_on_GitHub_Z2qOqmx">"View on GitHub"</string>
|
||||
<string name="Translator">"Translator"</string>
|
||||
<string name="Contributors">"Bidragyder"</string>
|
||||
<string name="_Shared_via_EnRecipes__Get_it_on_Play_Store_or_F_Droid__Z2oTOK1">"Deles via EnRecipes. Få det på Play Butik eller fra F-Droid."</string>
|
||||
<string name="_Permission_denied_Z7wlWK">"Tilladelse nægtet"</string>
|
||||
<string name="_Import_successful_2bLM3e">"Import vellykket"</string>
|
||||
<string name="_Verifying____cS102">"Check..."</string>
|
||||
<string name="_long_time_ago_1nwlFA">"lang tid siden"</string>
|
||||
<string name="_months_ago_Z1TsskA">"Måneder før"</string>
|
||||
<string name="_weeks_ago_Z2sT1GA">"Uger før"</string>
|
||||
<string name="_days_ago_2iCYkm">"Dage før"</string>
|
||||
<string name="yesterday">"i går"</string>
|
||||
<string name="today">"dag"</string>
|
||||
<string name="_You_tried_this_recipe__ZUJOl3">"Du har prøvet denne opskrift:"</string>
|
||||
<string name="snacks">"Snackbar"</string>
|
||||
<string name="dinner">"Aftensmad"</string>
|
||||
<string name="lunch">"Frokost"</string>
|
||||
<string name="breakfast">"Morgenmad"</string>
|
||||
<string name="_Crop_photo_1VL04J">"Beskæring af et foto"</string>
|
||||
<string name="_REPLACE_PHOTO_ZLHhwH">"UDSKIFT FOTO"</string>
|
||||
<string name="_Recipe_photo_eqm9B">"Opskrift Foto"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_set_recipe_photo__23OnNT">"EnRecipes kræver opbevaring tilladelse til at sætte opskriften fotos."</string>
|
||||
<string name="Required">"Nødvendig"</string>
|
||||
<string name="_New_category_Weg73">"Neue-kategori"</string>
|
||||
<string name="_New_yield_unit_1Oevd2">"Nyt Udbytte Enhed"</string>
|
||||
<string name="_Remove_note__2wyMVE">"Bemærk fjerne?"</string>
|
||||
<string name="_Remove_combination__1dr2LS">"Kombination fjerne?"</string>
|
||||
<string name="_Remove_instruction__vkJfi">"Forberedelse fjerne?"</string>
|
||||
<string name="_Remove_ingredient__2puvMO">"Ingredienser fjerne?"</string>
|
||||
<string name="_KEEP_EDITING_1o9uy3">"KASSERE"</string>
|
||||
<string name="DISCARD">"KASSERE"</string>
|
||||
<string name="_Are_you_sure_you_want_to_discard_unsaved_changes_to_this_recipe__Z1G7sVC">"Vil du kassere ikke-gemte ændringer i denne opskrift?"</string>
|
||||
<string name="_Unsaved_changes_9fqb4">"Ikke-Gemte Ændringer"</string>
|
||||
<string name="Search">"Søge"</string>
|
||||
<string name="_Are_you_sure_you_want_to_delete_the_recipe_29DH9w">"Vil du virkelig slette opskriften"</string>
|
||||
<string name="DELETE">"SLETTE"</string>
|
||||
<string name="_Delete_recipe__Z2tMYtE">"Slet opskrift?"</string>
|
||||
<string name="_Removed_from_Try_Later_1h5Bkp">"Fjernet fra senere prøve"</string>
|
||||
<string name="_Added_to_Try_Later_Z1gaF37">"Tilføjet i prøve senere"</string>
|
||||
<string name="_Removed_from_Favourites_Z5k7LR">"Fjernet fra favoritter"</string>
|
||||
<string name="_Added_to_Favourites_2mzllO">"Tilføjet Til Favoritter"</string>
|
||||
<string name="_Add_at_least_one_recipe_to_perform_a_backup_17xYaH">"Tilføj mindst en opskrift for at udføre en sikkerhedskopi"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_backup_your_data_to_this_device__2cbvIq">"EnRecipes kræver tilladelse til opbevaring for at sikkerhedskopiere dine data på denne enhed."</string>
|
||||
<string name="CONTINUE">"FORTSÆTTE"</string>
|
||||
<string name="_NOT_NOW_Z1HD7qX">"IKKE NU"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_import_your_data_from_a_previous_backup__1CKjb7">"EnRecipes hukommelse krævede tilladelse til at importere dine data fra en tidligere sikkerhedskopi."</string>
|
||||
<string name="_Grant_permission_Z1UQBuh">"Give tilladelse"</string>
|
||||
<string name="_EnRecipes_needs_to_be_restarted_for_the_app_language_to_take_effect__ZWGUtY">"EnRecipes skal genstartes, for at det nyligt indstillede sprog ændres"</string>
|
||||
<string name="_EnRecipes_needs_to_be_restarted_for_the_theme_change_to_take_effect__2kU319">"EnRecipes skal genstartes for at emneændringen kan træde i kraft."</string>
|
||||
<string name="RESTART">"GENSTARTE"</string>
|
||||
<string name="_Restart_required_Z22YINL">"En genstart er påkrævet"</string>
|
||||
<string name="SET">"INDSTILLE"</string>
|
||||
<string name="_ADD_NEW_Zv8FjM">"OPRET NYE"</string>
|
||||
<string name="Share">"Dele"</string>
|
||||
<string name="Overview">"Oversigt"</string>
|
||||
<string name="Recipe">"Opskrift"</string>
|
||||
<string name="Photo">"Foto"</string>
|
||||
<string name="min">"min"</string>
|
||||
<string name="hr">"h"</string>
|
||||
<string name="_My_Healthy_Recipe_Z1EqB8f">"Min Sunde Opskrift"</string>
|
||||
<string name="_Nothing_here__Add_some_recipes_and_try_again__Z25A7Q">"Der er intet her! Tilføj nogle opskrifter og prøv igen."</string>
|
||||
<string name="_Select_a_recipe_2lL8x2">"Opskrift vælg"</string>
|
||||
<string name="ADD">"TILFØJE"</string>
|
||||
<string name="REMOVE">"FJERNE"</string>
|
||||
<string name="CANCEL">"ANNULLERE"</string>
|
||||
<string name="_Sort_by_Zq01TF">"Sorter efter"</string>
|
||||
<string name="Step">"Trin"</string>
|
||||
<string name="Item">"Element"</string>
|
||||
<string name="_ADD_NOTE_ZyNw1r">"TILFØJ NOTER"</string>
|
||||
<string name="Notes">"Noter"</string>
|
||||
<string name="Note">"Note"</string>
|
||||
<string name="_ADD_COMBINATION_2q9HWq">"TILFØJE KOMBINATION"</string>
|
||||
<string name="Combinations">"Kombinationer"</string>
|
||||
<string name="_ADD_STEP_ZyMPOe">"TILFØJ TRIN"</string>
|
||||
<string name="Instructions">"Forberedelser"</string>
|
||||
<string name="Instruction">"Forberedelse"</string>
|
||||
<string name="_ADD_INGREDIENT_29sSLU">"TILFØJE INGREDIENS"</string>
|
||||
<string name="Ingredients">"Ingredienser"</string>
|
||||
<string name="Ingredient">"Ingrediens"</string>
|
||||
<string name="_Yield_measured_in_2OoRT">"Udbytte målt i"</string>
|
||||
<string name="_Yield_quantity_ZHx3jw">"Udbyttebeløb"</string>
|
||||
<string name="_Cooking_time_2w2fEw">"Tilberedningstid"</string>
|
||||
<string name="_Preparation_time_15BfxT">"Forberedelsestid"</string>
|
||||
<string name="Category">"kategori"</string>
|
||||
<string name="Title">"Titel"</string>
|
||||
<string name="_Edit_recipe_ZPvwDP">"Opskrift Rediger"</string>
|
||||
<string name="_New_recipe_Z1Y2YKJ">"Ny Opskrift"</string>
|
||||
<string name="_Vishnu_Raghav_B_1qnRnC">"Vishnu Raghav B"</string>
|
||||
<string name="Author">"Forfatter"</string>
|
||||
<string name="_for_reporting_issues__suggestions_and_feedback_Z1JUmyE">"til rapportering af problemer, forslag og Feedback"</string>
|
||||
<string name="_Join_the_Telegram_group_ZAXQgc">"Deltag i telegram-gruppen"</string>
|
||||
<string name="Version">"version"</string>
|
||||
<string name="_Supports_full_backups_exported_by_this_app_ZYs4f2">"Understøtter fuld sikkerhedskopier eksporteret af denne App"</string>
|
||||
<string name="_Import_from_backup_Z28HsC0">"Import fra Backup"</string>
|
||||
<string name="_Generates_a_zip_file_that_contains_all_your_data__This_file_can_be_imported_back__Z19m3xY">"Opretter en fileip-fil, der indeholder alle data. Denne fil kan importeres igen."</string>
|
||||
<string name="_Export_a_full_backup_TJfra">"Eksporter til en sikkerhedskopi"</string>
|
||||
<string name="Database">"Database"</string>
|
||||
<string name="Dark">"Mørk"</string>
|
||||
<string name="Light">"Lyst"</string>
|
||||
<string name="Theme">"Emne"</string>
|
||||
<string name="_System_default_Z1jruVS">"Systemstandard"</string>
|
||||
<string name="_App_language_DzFsk">"App Sprog"</string>
|
||||
<string name="Interface">"Interface"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_try_later_list_Z2wWbA1">"Din søgning matchede ikke Opskrifter i din senere prøveliste"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_favourites_1ylvHN">"Din søgning matchede ikke Opskrifter i dine favoritter"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_this_category_P7J4V">"Din søgning stemte ikke overens med opskrifter i denne kategori"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_Z1eppHH">"Din søgning stemte ikke overens med opskrifter"</string>
|
||||
<string name="_No_recipes_found_Z125IxD">"Ingen opskrifter fundet"</string>
|
||||
<string name="_Category_looks_empty_ZAK5qU">"Kategori er tom"</string>
|
||||
<string name="_Recipes_you_mark_as_favourite_will_be_listed_here_Z1iIHgY">"Opskrifter, som du markerer som favoritter, er vist her"</string>
|
||||
<string name="_No_favourites_yet_aPSoG">"Ingen favoritter endnu"</string>
|
||||
<string name="_Recipes_you_mark_as_try_later_will_be_listed_here_Z1ITwPV">"Opskrifter, der er markeret med try later, vises her"</string>
|
||||
<string name="_All_done__72KYl">"Alle gjort!"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_notes_Z1wyyeb">"Brug pen-ikonet til at tilføje nogle noter"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_combinations_6NhFS">"Brug pennikonet til at tilføje nogle kombinationer"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_instructions_ZAi0PH">"Brug penikonet til at tilføje nogle forberedelser"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_ingredients_Z1xOX8S">"Brug pen-ikonet til at tilføje nogle ingredienser"</string>
|
||||
<string name="_Use_the_plus_button_to_add_one_1h20ms">"Brug plusknappen til at tilføje en"</string>
|
||||
<string name="_Start_adding_your_recipes__rwnVV">"Begynd at tilføje dine opskrifter!"</string>
|
||||
<string name="large">"stor"</string>
|
||||
<string name="medium">"medium"</string>
|
||||
<string name="small">"lille"</string>
|
||||
<string name="stick">"stok"</string>
|
||||
<string name="dozen">"dusin"</string>
|
||||
<string name="drop">"dråbe"</string>
|
||||
<string name="pinch">"klemme"</string>
|
||||
<string name="piece">"stykke"</string>
|
||||
<string name="clove">"spaltes"</string>
|
||||
<string name="leaf">"blad"</string>
|
||||
<string name="in">"in"</string>
|
||||
<string name="cm">"cm"</string>
|
||||
<string name="kg">"kg"</string>
|
||||
<string name="g">"g"</string>
|
||||
<string name="mg">"mg"</string>
|
||||
<string name="lb">"Pf"</string>
|
||||
<string name="oz">"oz"</string>
|
||||
<string name="l">"l"</string>
|
||||
<string name="ml">"ml"</string>
|
||||
<string name="gal">"gal"</string>
|
||||
<string name="qt">"qt"</string>
|
||||
<string name="pt">"pt"</string>
|
||||
<string name="cup">"Kop"</string>
|
||||
<string name="_fl_oz_72kqu">"fl"</string>
|
||||
<string name="tbsp">"EL"</string>
|
||||
<string name="dsp">"SL"</string>
|
||||
<string name="tsp">"TL"</string>
|
||||
<string name="Unit">"Enhed"</string>
|
||||
<string name="unit">"enhed"</string>
|
||||
<string name="Loaf">"Brød"</string>
|
||||
<string name="Patty">"Patty"</string>
|
||||
<string name="Roll">"Roller"</string>
|
||||
<string name="Litre">"Liter"</string>
|
||||
<string name="Millilitre">"Ml"</string>
|
||||
<string name="Gallon">"Gallon"</string>
|
||||
<string name="Cup">"Kop"</string>
|
||||
<string name="Kilogram">"Kilo"</string>
|
||||
<string name="Gram">"Gram"</string>
|
||||
<string name="Pound">"Pund"</string>
|
||||
<string name="Ounce">"Ounce"</string>
|
||||
<string name="_Fluid_Ounce_bd10L">"Flydende Ounce"</string>
|
||||
<string name="Tablespoon">"EL"</string>
|
||||
<string name="Teaspoon">"TL"</string>
|
||||
<string name="Piece">"Stykke"</string>
|
||||
<string name="Serving">"Serverer"</string>
|
||||
<string name="Vegetarian">"Vegetarisk"</string>
|
||||
<string name="Vegan">"Vegetarisk"</string>
|
||||
<string name="Undefined">"Ikke defineret"</string>
|
||||
<string name="Soups">"Suppe"</string>
|
||||
<string name="Snacks">"Snackbar"</string>
|
||||
<string name="_Side_dishes_Z1Et4Vg">"Side retter"</string>
|
||||
<string name="Seafood">"Skaldyr"</string>
|
||||
<string name="Sauces">"Sauce"</string>
|
||||
<string name="Salads">"Salater"</string>
|
||||
<string name="Rice">"Ris"</string>
|
||||
<string name="Poultry">"Fjerkræ"</string>
|
||||
<string name="Pasta">"Pasta"</string>
|
||||
<string name="Noodles">"Noodle"</string>
|
||||
<string name="Meat">"Kød"</string>
|
||||
<string name="_Main_dishes_u6RGQ">"Hovedret"</string>
|
||||
<string name="Lunch">"Mittag"</string>
|
||||
<string name="Healthy">"Sund"</string>
|
||||
<string name="Drinks">"Drink"</string>
|
||||
<string name="Dinner">"Abendessen"</string>
|
||||
<string name="Desserts">"Dessertbuffet"</string>
|
||||
<string name="Breakfast">"Morgenmad"</string>
|
||||
<string name="Breads">"Brød"</string>
|
||||
<string name="Beverages">"Drink"</string>
|
||||
<string name="Barbecue">"Grill"</string>
|
||||
<string name="Appetizers">"Forret"</string>
|
||||
<string name="About">"Om"</string>
|
||||
<string name="Settings">"Indstilling"</string>
|
||||
<string name="Categories">"Kategori"</string>
|
||||
<string name="_Meal_Planner_2aq4oj">"Måltid planner"</string>
|
||||
<string name="Favourites">"Favorit"</string>
|
||||
<string name="_Try_Later_If7PG">"Prøv senere"</string>
|
||||
<string name="EnRecipes">"EnRecipes"</string>
|
||||
<string name="_app_name_1k3Sbz">"EnRecipes"</string>
|
||||
<string name="app_name">"EnRecipes"</string>
|
||||
<string name="title_activity_kimera">"EnRecipes"</string>
|
||||
<string name="_Import_failed_Z1dbs6t">"Import failed"</string>
|
||||
</resources>
|
|
@ -1,8 +1,97 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="_Translations__1IFwAu">"Übersetzungen:"</string>
|
||||
<string name="_Invalid_file__Z2bRAst">"Invalid file:"</string>
|
||||
<string name="_Backup_file_has_been_modified_externally__Wjiqq">"Backup file has been modified externally."</string>
|
||||
<string name="_Backup_file_seems_empty__Zd7qfR">"Backup file seems empty."</string>
|
||||
<string name="_Backup_file_is_incorrect_or_corrupt__1jXb8N">"Backup file is incorrect or corrupt."</string>
|
||||
<string name="_Remove_recipe_from_snacks__MNnCU">"Entferne Rezept von Imbiss?"</string>
|
||||
<string name="_Remove_recipe_from_dinner__8sWfY">"Entferne Rezept von Abendessen?"</string>
|
||||
<string name="_Remove_recipe_from_lunch__Zwpsg2">"Entferne Rezept von Mittagessen?"</string>
|
||||
<string name="_Remove_recipe_from_breakfast__ZvYyFG">"Entferne Rezept von Frühstück?"</string>
|
||||
<string name="_Untitled_Recipe_Zv0UxP">"Unbenanntes Rezept"</string>
|
||||
<string name="_Star_rating_Z11p4Kw">"Sternebewertung"</string>
|
||||
<string name="Created">"Erstellt"</string>
|
||||
<string name="_Filtered_result_1AMEXe">"gefiltertes Ergebnis"</string>
|
||||
<string name="OK">"OK"</string>
|
||||
<string name="_recipes_updated_Z2arFrR">"Rezepte aktualisiert"</string>
|
||||
<string name="_recipes_already_exists_2jqW2s">"Rezept existiert bereits"</string>
|
||||
<string name="_recipes_imported_1NGeRw">"Rezepte importiert"</string>
|
||||
<string name="_recipes_found_ZDdUgV">"Rezepte gefunden"</string>
|
||||
<string name="_Import_summary_244SkL">"Import Zusammenfassung"</string>
|
||||
<string name="_separate_with_spaces_ZHKOfw">"trennen mit Leerzeichen"</string>
|
||||
<string name="Tags">"Tags"</string>
|
||||
<string name="_No_tags_available_Z1C5GqD">"Keine Tags vorhanden"</string>
|
||||
<string name="_All_Tags_28gMyY">"Alle Tags"</string>
|
||||
<string name="_All_Categories_Z23JSTS">"Alle Kategorien"</string>
|
||||
<string name="Vietnamese">"Vietnamesisch"</string>
|
||||
<string name="Turkish">"Türkisch"</string>
|
||||
<string name="Thai">"Thailändisch"</string>
|
||||
<string name="Swedish">"Swedisch"</string>
|
||||
<string name="_Sri_Lankan_Z7GfBa">"Sri Lankisch"</string>
|
||||
<string name="Spanish">"Spanisch"</string>
|
||||
<string name="Scottish">"Schottisch"</string>
|
||||
<string name="Russian">"Russisch"</string>
|
||||
<string name="Portuguese">"Portugiesisch"</string>
|
||||
<string name="Nigerian">"Nigerianisch"</string>
|
||||
<string name="Mexican">"Mexikanisch"</string>
|
||||
<string name="Korean">"Koreanisch"</string>
|
||||
<string name="Kenyan">"Kenianisch"</string>
|
||||
<string name="Jewish">"Jüdisch"</string>
|
||||
<string name="Japanese">"Japanisch"</string>
|
||||
<string name="Jamaican">"Jamaikanisch"</string>
|
||||
<string name="Italian">"Italienisch"</string>
|
||||
<string name="Irish">"Irisch"</string>
|
||||
<string name="Indian">"Indisch"</string>
|
||||
<string name="Greek">"Griechisch"</string>
|
||||
<string name="German">"Deutsch"</string>
|
||||
<string name="French">"Französisch"</string>
|
||||
<string name="Filipino">"Philipinisch"</string>
|
||||
<string name="English">"English"</string>
|
||||
<string name="Egyptian">"Ägyptisch"</string>
|
||||
<string name="Danish">"Dänisch"</string>
|
||||
<string name="Chinese">"Chinesisch"</string>
|
||||
<string name="British">"Britisch"</string>
|
||||
<string name="Brazilian">"Brazilianisch"</string>
|
||||
<string name="American">"Amerikanisch"</string>
|
||||
<string name="_All_Cuisines_2hjCp9">"Alle Küchen"</string>
|
||||
<string name="Cuisines">"Küchen"</string>
|
||||
<string name="Cuisine">"Küche"</string>
|
||||
<string name="_Are_you_sure_you_want_to_remove_ZOnf22">"Bist du sicher, dass du löschen möchtest"</string>
|
||||
<string name="Units">"Einheiten"</string>
|
||||
<string name="_Remove_unit__2x26yq">"Einheit löschen?"</string>
|
||||
<string name="_Remove_yield_unit__Z1duBWR">"Ertragseinheit löschen?"</string>
|
||||
<string name="_Remove_category__2reaxz">"Kategorie löschen?"</string>
|
||||
<string name="_Remove_cuisine__22ftcL">"Küche löschen?"</string>
|
||||
<string name="_New_unit_1CVEEA">"Neue Einheit"</string>
|
||||
<string name="_New_cuisine_Zrvs3z">"Neue Küche"</string>
|
||||
<string name="Challenging">"Herausfordernd"</string>
|
||||
<string name="Moderate">"Moderat"</string>
|
||||
<string name="Easy">"Einfach"</string>
|
||||
<string name="_Oldest_first_Z6cq4h">"Älteste zuerst"</string>
|
||||
<string name="_Newest_first_2Sb3c">"Neueste zuerst"</string>
|
||||
<string name="_Last_updated_Z2gEbLD">"Zuletzt aktualisiert"</string>
|
||||
<string name="_Difficulty_level_cSL5d">"Schwierigkeitsgrad"</string>
|
||||
<string name="Rating">"Bewertung"</string>
|
||||
<string name="_Slowest_first_hHjY6">"Langsamste zuerst"</string>
|
||||
<string name="_Quickest_first_Z1CpP7N">"Schnellste zuerst"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_the_filtered_result_1TV6QQ">"Deine Suche ergab keine Übereinstimmung mit den Rezepten im gefilterten Ergebnis"</string>
|
||||
<string name="_Recipe_not_found_2qGveM">"Rezept nicht gefunden"</string>
|
||||
<string name="_Reset_successful_YxqWK">"Zurücksetzen erfolgreich"</string>
|
||||
<string name="_Reset_units_list_msRS3">"Einheiten Liste zurücksetzen"</string>
|
||||
<string name="_Reset_yield_units_list_ZjouMk">"Ertragseinheiten Liste zurücksetzen"</string>
|
||||
<string name="_Reset_categories_list_Z1JmKra">"Kategorien Liste zurücksetzen"</string>
|
||||
<string name="_Reset_cuisines_list_1kWL8I">"Küchen Liste zurücksetzen"</string>
|
||||
<string name="_Resetting_a_list_will_NOT_delete_your_existing_entries_but_only_restores_the_deleted_default_entries__Z28mk0h">"Das Zurücksetzen einer Liste löscht NICHT deine vorhandenen Einträge, sondern stellt nur die gelöschten Standardeinträge wieder her"</string>
|
||||
<string name="Reset">"Zurücksetzen"</string>
|
||||
<string name="_Helps_you_choose_what_to_cook_when_you_can_t_decide_muiMv">"Hilft dir wenn du dich nicht entscheiden kannst, was gekocht werden soll"</string>
|
||||
<string name="_Shake_to_view_random_recipe_ZTK9F2">"Schütteln um zufälliges Rezept anzuzeigen"</string>
|
||||
<string name="Options">"Optionen"</string>
|
||||
<string name="_User_guide_2uDJCF">"Anleitung"</string>
|
||||
<string name="_Privacy_policy_Zb4ht5">"Datenschutz"</string>
|
||||
<string name="_View_on_GitHub_Z2qOqmx">"Auf GitHub ansehen"</string>
|
||||
<string name="Translator">"Übersetzer"</string>
|
||||
<string name="Contributors">"Mitwirkende"</string>
|
||||
<string name="_Shared_via_EnRecipes__Get_it_on_Play_Store_or_F_Droid__Z2oTOK1">"Geteilt über EnRecipes. Hole es Dir auf dem Play Store oder von F-Droid."</string>
|
||||
<string name="_Shared_via_EnRecipes__Get_it_on_Play_Store_or_F_Droid__Z2oTOK1">"Geteilt über EnRecipes. Hole es Dir aus dem Play Store oder von F-Droid."</string>
|
||||
<string name="_Permission_denied_Z7wlWK">"Berechtigung verweigert"</string>
|
||||
<string name="_Import_successful_2bLM3e">"Import erfolgreich"</string>
|
||||
<string name="_Verifying____cS102">"Überprüfen..."</string>
|
||||
|
@ -32,7 +121,6 @@
|
|||
<string name="DISCARD">"VERWERFEN"</string>
|
||||
<string name="_Are_you_sure_you_want_to_discard_unsaved_changes_to_this_recipe__Z1G7sVC">"Möchtest Du nicht gespeicherte Änderungen an diesem Rezept verwerfen?"</string>
|
||||
<string name="_Unsaved_changes_9fqb4">"Nicht gespeicherte Änderungen"</string>
|
||||
<string name="_Rename_category_Z1WzCco">"Kategorie umbenennen"</string>
|
||||
<string name="Search">"Suche"</string>
|
||||
<string name="_Are_you_sure_you_want_to_delete_the_recipe_29DH9w">"Möchtest Du das Rezept wirklich löschen"</string>
|
||||
<string name="DELETE">"LÖSCHEN"</string>
|
||||
|
@ -65,9 +153,6 @@
|
|||
<string name="ADD">"HINZUFÜGEN"</string>
|
||||
<string name="REMOVE">"ENTFERNEN"</string>
|
||||
<string name="CANCEL">"ABBRECHEN"</string>
|
||||
<string name="_Last_modified_Z1yBAS3">"Zuletzt geändert"</string>
|
||||
<string name="Duration">"Dauer"</string>
|
||||
<string name="_Natural_order_Z1O8On5">"Reihenfolge"</string>
|
||||
<string name="_Sort_by_Zq01TF">"Sortieren nach"</string>
|
||||
<string name="Step">"Schritt"</string>
|
||||
<string name="Item">"Posten"</string>
|
||||
|
@ -88,15 +173,12 @@
|
|||
<string name="_Preparation_time_15BfxT">"Vorbereitungszeit"</string>
|
||||
<string name="Category">"Kategorie"</string>
|
||||
<string name="Title">"Titel"</string>
|
||||
<string name="_Edit_recipe_ZPvwDP">"Rezept Bearbeiten"</string>
|
||||
<string name="_Edit_recipe_ZPvwDP">"Rezept bearbeiten"</string>
|
||||
<string name="_New_recipe_Z1Y2YKJ">"Neues Rezept"</string>
|
||||
<string name="_Follow_on_Mastodon_Z1v6e4V">"Folge auf Mastodon"</string>
|
||||
<string name="_Follow_on_GitHub_Z1GjptH">"Folge auf GitHub"</string>
|
||||
<string name="_Vishnu_Raghav_B_1qnRnC">"Vishnu Raghav B"</string>
|
||||
<string name="Author">"Autor"</string>
|
||||
<string name="_for_reporting_issues__suggestions_and_feedback_Z1JUmyE">"für die Meldung von Problemen, Anregungen und Feedback"</string>
|
||||
<string name="_Join_the_Telegram_group_ZAXQgc">"Tritt der Telegrammgruppe bei"</string>
|
||||
<string name="_View_project_on_GitHub_1hrJ0U">"Projekt auf GitHub anzeigen"</string>
|
||||
<string name="Version">"Version"</string>
|
||||
<string name="_Supports_full_backups_exported_by_this_app_ZYs4f2">"Unterstützt vollständige Backups, die von dieser App exportiert werden"</string>
|
||||
<string name="_Import_from_backup_Z28HsC0">"Importieren vom Backup"</string>
|
||||
|
@ -124,11 +206,11 @@
|
|||
<string name="_Use_the_pencil_button_to_add_some_instructions_ZAi0PH">"Verwende das Stift-Symbol, um einige Zubereitungen hinzuzufügen"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_ingredients_Z1xOX8S">"Verwende das Stift-Symbol, um einige Zutaten hinzuzufügen"</string>
|
||||
<string name="_Use_the_plus_button_to_add_one_1h20ms">"Verwende das Plus-Symbol, um eins hinzuzufügen"</string>
|
||||
<string name="_Start_adding_your_recipes__rwnVV">"Beginne deine Rezepte hinzuzufpgen!"</string>
|
||||
<string name="_Start_adding_your_recipes__rwnVV">"Beginne deine Rezepte hinzuzufügen!"</string>
|
||||
<string name="large">"groß"</string>
|
||||
<string name="medium">"mittel"</string>
|
||||
<string name="medium">"medium"</string>
|
||||
<string name="small">"klein"</string>
|
||||
<string name="stick">"Stab"</string>
|
||||
<string name="stick">"Stange"</string>
|
||||
<string name="dozen">"Dutzend"</string>
|
||||
<string name="drop">"Tropfen"</string>
|
||||
<string name="pinch">"Prise"</string>
|
||||
|
@ -147,7 +229,7 @@
|
|||
<string name="gal">"gal"</string>
|
||||
<string name="qt">"qt"</string>
|
||||
<string name="pt">"pt"</string>
|
||||
<string name="cup">"Becher"</string>
|
||||
<string name="cup">"Tasse"</string>
|
||||
<string name="_fl_oz_72kqu">"fl"</string>
|
||||
<string name="tbsp">"EL"</string>
|
||||
<string name="dsp">"SL"</string>
|
||||
|
@ -160,7 +242,7 @@
|
|||
<string name="Litre">"Liter"</string>
|
||||
<string name="Millilitre">"Milliliter"</string>
|
||||
<string name="Gallon">"Gallone"</string>
|
||||
<string name="Cup">"Becher"</string>
|
||||
<string name="Cup">"Tasse"</string>
|
||||
<string name="Kilogram">"Kilogramm"</string>
|
||||
<string name="Gram">"Gramm"</string>
|
||||
<string name="Pound">"Pfund"</string>
|
||||
|
@ -172,7 +254,7 @@
|
|||
<string name="Serving">"Portion"</string>
|
||||
<string name="Vegetarian">"Vegetarisch"</string>
|
||||
<string name="Vegan">"Vegan"</string>
|
||||
<string name="Undefined">"Undefiniert"</string>
|
||||
<string name="Undefined">"Unsortiert"</string>
|
||||
<string name="Soups">"Suppen"</string>
|
||||
<string name="Snacks">"Snacks"</string>
|
||||
<string name="_Side_dishes_Z1Et4Vg">"Beilagen"</string>
|
||||
|
@ -197,8 +279,6 @@
|
|||
<string name="Appetizers">"Vorspeisen"</string>
|
||||
<string name="About">"Über"</string>
|
||||
<string name="Settings">"Einstellungen"</string>
|
||||
<string name="RENAME">"UMBENENNEN"</string>
|
||||
<string name="DONE">"FERTIG"</string>
|
||||
<string name="Categories">"Kategorien"</string>
|
||||
<string name="_Meal_Planner_2aq4oj">"Essensplaner"</string>
|
||||
<string name="Favourites">"Favoriten"</string>
|
||||
|
@ -207,4 +287,5 @@
|
|||
<string name="_app_name_1k3Sbz">"EnRecipes"</string>
|
||||
<string name="app_name">"EnRecipes"</string>
|
||||
<string name="title_activity_kimera">"EnRecipes"</string>
|
||||
<string name="_Import_failed_Z1dbs6t">"Import failed"</string>
|
||||
</resources>
|
||||
|
|
291
app/resources/Android/src/main/res/values-es/strings.xml
Normal file
291
app/resources/Android/src/main/res/values-es/strings.xml
Normal file
|
@ -0,0 +1,291 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="_Invalid_file__Z2bRAst">"Invalid file:"</string>
|
||||
<string name="_Backup_file_has_been_modified_externally__Wjiqq">"Backup file has been modified externally."</string>
|
||||
<string name="_Backup_file_seems_empty__Zd7qfR">"Backup file seems empty."</string>
|
||||
<string name="_Backup_file_is_incorrect_or_corrupt__1jXb8N">"Backup file is incorrect or corrupt."</string>
|
||||
<string name="_Remove_recipe_from_snacks__MNnCU">"Remove recipe from snacks?"</string>
|
||||
<string name="_Remove_recipe_from_dinner__8sWfY">"Remove recipe from dinner?"</string>
|
||||
<string name="_Remove_recipe_from_lunch__Zwpsg2">"Remove recipe from lunch?"</string>
|
||||
<string name="_Remove_recipe_from_breakfast__ZvYyFG">"Remove recipe from breakfast?"</string>
|
||||
<string name="_Untitled_Recipe_Zv0UxP">"Receta sin título"</string>
|
||||
<string name="_Star_rating_Z11p4Kw">"Valoración por estrellas"</string>
|
||||
<string name="Created">"Creado"</string>
|
||||
<string name="_Filtered_result_1AMEXe">"Resultados filtrados"</string>
|
||||
<string name="OK">"OK"</string>
|
||||
<string name="_recipes_updated_Z2arFrR">"recetas actualizadas"</string>
|
||||
<string name="_recipes_already_exists_2jqW2s">"la receta ya existe"</string>
|
||||
<string name="_recipes_imported_1NGeRw">"recetas importadas"</string>
|
||||
<string name="_recipes_found_ZDdUgV">"recetas encontradas"</string>
|
||||
<string name="_Import_summary_244SkL">"Resumen de importación"</string>
|
||||
<string name="_separate_with_spaces_ZHKOfw">"separar con espacios"</string>
|
||||
<string name="Tags">"Etiquetas"</string>
|
||||
<string name="_No_tags_available_Z1C5GqD">"No hay etiquetas disponibles"</string>
|
||||
<string name="_All_Tags_28gMyY">"Todas las etiquetas"</string>
|
||||
<string name="_All_Categories_Z23JSTS">"Todas las categorías"</string>
|
||||
<string name="Vietnamese">"Vietnamita"</string>
|
||||
<string name="Turkish">"Turca"</string>
|
||||
<string name="Thai">"Thai"</string>
|
||||
<string name="Swedish">"Sueca"</string>
|
||||
<string name="_Sri_Lankan_Z7GfBa">"Sri Lankiana"</string>
|
||||
<string name="Spanish">"Española"</string>
|
||||
<string name="Scottish">"Escocesa"</string>
|
||||
<string name="Russian">"Rusa"</string>
|
||||
<string name="Portuguese">"Portuguesa"</string>
|
||||
<string name="Nigerian">"Nigeriana"</string>
|
||||
<string name="Mexican">"Mejicana"</string>
|
||||
<string name="Korean">"Coreana"</string>
|
||||
<string name="Kenyan">"Keniata"</string>
|
||||
<string name="Jewish">"Judía"</string>
|
||||
<string name="Japanese">"Japonés"</string>
|
||||
<string name="Jamaican">"Jamaiquino"</string>
|
||||
<string name="Italian">"Italiano"</string>
|
||||
<string name="Irish">"Irlandés"</string>
|
||||
<string name="Indian">"Hindú"</string>
|
||||
<string name="Greek">"Griega"</string>
|
||||
<string name="German">"Alemana"</string>
|
||||
<string name="French">"Francesa"</string>
|
||||
<string name="Filipino">"Filipina"</string>
|
||||
<string name="English">"Inglesa"</string>
|
||||
<string name="Egyptian">"Egipcia"</string>
|
||||
<string name="Danish">"Danesa"</string>
|
||||
<string name="Chinese">"China"</string>
|
||||
<string name="British">"Británica"</string>
|
||||
<string name="Brazilian">"Brasileña"</string>
|
||||
<string name="American">"Americana"</string>
|
||||
<string name="_All_Cuisines_2hjCp9">"Todas las cocinas"</string>
|
||||
<string name="Cuisines">"Comidas"</string>
|
||||
<string name="Cuisine">"Comida"</string>
|
||||
<string name="_Are_you_sure_you_want_to_remove_ZOnf22">"Seguro deseas eliminar"</string>
|
||||
<string name="Units">"Unidades"</string>
|
||||
<string name="_Remove_unit__2x26yq">"¿Remover unidad?"</string>
|
||||
<string name="_Remove_yield_unit__Z1duBWR">"¿Remover unidad de medida?"</string>
|
||||
<string name="_Remove_category__2reaxz">"¿Remover categoría?"</string>
|
||||
<string name="_Remove_cuisine__22ftcL">"¿Remover comida?"</string>
|
||||
<string name="_New_unit_1CVEEA">"Nueva unidad"</string>
|
||||
<string name="_New_cuisine_Zrvs3z">"Nueva comida"</string>
|
||||
<string name="Challenging">"Desafiante"</string>
|
||||
<string name="Moderate">"Moderada"</string>
|
||||
<string name="Easy">"Fácil"</string>
|
||||
<string name="_Oldest_first_Z6cq4h">"Más antiguas primero"</string>
|
||||
<string name="_Newest_first_2Sb3c">"Más nuevas primero"</string>
|
||||
<string name="_Last_updated_Z2gEbLD">"Última actualización"</string>
|
||||
<string name="_Difficulty_level_cSL5d">"Nivel de dificultad"</string>
|
||||
<string name="Rating">"Rating"</string>
|
||||
<string name="_Slowest_first_hHjY6">"La más lenta primero"</string>
|
||||
<string name="_Quickest_first_Z1CpP7N">"La más rápida primero"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_the_filtered_result_1TV6QQ">"Tu búsqueda no encajó con ninguna receta de los resultados filtrados"</string>
|
||||
<string name="_Recipe_not_found_2qGveM">"Receta no encontrada"</string>
|
||||
<string name="_Reset_successful_YxqWK">"Reseteo satisfactorio"</string>
|
||||
<string name="_Reset_units_list_msRS3">"Resetea el listado de unidades"</string>
|
||||
<string name="_Reset_yield_units_list_ZjouMk">"Resetea el listado de unidad de medidas"</string>
|
||||
<string name="_Reset_categories_list_Z1JmKra">"Resetea el listado de categorías"</string>
|
||||
<string name="_Reset_cuisines_list_1kWL8I">"Resetea el listado de comidas"</string>
|
||||
<string name="_Resetting_a_list_will_NOT_delete_your_existing_entries_but_only_restores_the_deleted_default_entries__Z28mk0h">"Resetear un listado NO borrará tus entradas existentes pero restaurará las eliminadas por default."</string>
|
||||
<string name="Reset">"Reiniciar"</string>
|
||||
<string name="_Helps_you_choose_what_to_cook_when_you_can_t_decide_muiMv">"Ayuda a decidir que cocinar cuando no sabes que cocinar"</string>
|
||||
<string name="_Shake_to_view_random_recipe_ZTK9F2">"Sacude para ver una receta aleatoria"</string>
|
||||
<string name="Options">"Opciones"</string>
|
||||
<string name="_User_guide_2uDJCF">"Guía de usuario"</string>
|
||||
<string name="_Privacy_policy_Zb4ht5">"Política de privacidad"</string>
|
||||
<string name="_View_on_GitHub_Z2qOqmx">"Visita en GitHub"</string>
|
||||
<string name="Translator">"Traductor"</string>
|
||||
<string name="Contributors">"Contribuyentes"</string>
|
||||
<string name="_Shared_via_EnRecipes__Get_it_on_Play_Store_or_F_Droid__Z2oTOK1">"Compartido via EnRecipes. Consíguela en Play Store o F-Droid."</string>
|
||||
<string name="_Permission_denied_Z7wlWK">"Permiso denegado"</string>
|
||||
<string name="_Import_successful_2bLM3e">"Importado satisfactoriamente"</string>
|
||||
<string name="_Verifying____cS102">"Verificando..."</string>
|
||||
<string name="_long_time_ago_1nwlFA">"hace mucho tiempo"</string>
|
||||
<string name="_months_ago_Z1TsskA">"hace meses"</string>
|
||||
<string name="_weeks_ago_Z2sT1GA">"semanas atrás"</string>
|
||||
<string name="_days_ago_2iCYkm">"algunos dias atrás"</string>
|
||||
<string name="yesterday">"ayer"</string>
|
||||
<string name="today">"hoy"</string>
|
||||
<string name="_You_tried_this_recipe__ZUJOl3">"Haz intentado esta receta:"</string>
|
||||
<string name="snacks">"bocadillos"</string>
|
||||
<string name="dinner">"cena"</string>
|
||||
<string name="lunch">"almuerzo"</string>
|
||||
<string name="breakfast">"desayuno"</string>
|
||||
<string name="_Crop_photo_1VL04J">"Recortar foto"</string>
|
||||
<string name="_REPLACE_PHOTO_ZLHhwH">"REEMPLAZAR FOTO"</string>
|
||||
<string name="_Recipe_photo_eqm9B">"Foto de receta"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_set_recipe_photo__23OnNT">"EnRecipes requiere el permiso de almacenamiento para colocar la foto de receta."</string>
|
||||
<string name="Required">"Requerido"</string>
|
||||
<string name="_New_category_Weg73">"Nueva categoría"</string>
|
||||
<string name="_New_yield_unit_1Oevd2">"Nueva unidad de medida"</string>
|
||||
<string name="_Remove_note__2wyMVE">"¿Remover nota?"</string>
|
||||
<string name="_Remove_combination__1dr2LS">"¿Remover combinación?"</string>
|
||||
<string name="_Remove_instruction__vkJfi">"¿Remover instrucción?"</string>
|
||||
<string name="_Remove_ingredient__2puvMO">"¿Remover ingrediente?"</string>
|
||||
<string name="_KEEP_EDITING_1o9uy3">"CONTINUAR EDITANDO"</string>
|
||||
<string name="DISCARD">"DESCARTAR"</string>
|
||||
<string name="_Are_you_sure_you_want_to_discard_unsaved_changes_to_this_recipe__Z1G7sVC">"¿Seguro que quieres descartar los cambios no guardados de esta receta?"</string>
|
||||
<string name="_Unsaved_changes_9fqb4">"Cambios no guardados"</string>
|
||||
<string name="Search">"Buscar"</string>
|
||||
<string name="_Are_you_sure_you_want_to_delete_the_recipe_29DH9w">"Seguro que quieres borrar la receta"</string>
|
||||
<string name="DELETE">"BORRAR"</string>
|
||||
<string name="_Delete_recipe__Z2tMYtE">"¿Borrar receta?"</string>
|
||||
<string name="_Removed_from_Try_Later_1h5Bkp">"Remueve de Intentar luego"</string>
|
||||
<string name="_Added_to_Try_Later_Z1gaF37">"Agrega a Intentar luego"</string>
|
||||
<string name="_Removed_from_Favourites_Z5k7LR">"Remover de favoritos"</string>
|
||||
<string name="_Added_to_Favourites_2mzllO">"Agregar a favoritos"</string>
|
||||
<string name="_Add_at_least_one_recipe_to_perform_a_backup_17xYaH">"Agrega al menos una receta para realizar un respaldo"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_backup_your_data_to_this_device__2cbvIq">"EnRecipes requiere el permiso de almacenamiento para respaldar los datos en este dispositivo"</string>
|
||||
<string name="CONTINUE">"CONTINUAR"</string>
|
||||
<string name="_NOT_NOW_Z1HD7qX">"NO AHORA"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_import_your_data_from_a_previous_backup__1CKjb7">"EnRecipes requiere el permiso de almacenamiento para importar tus datos de un respaldo previo."</string>
|
||||
<string name="_Grant_permission_Z1UQBuh">"Dar permmiso"</string>
|
||||
<string name="_EnRecipes_needs_to_be_restarted_for_the_app_language_to_take_effect__ZWGUtY">"EnRecipes debe reiniciarse para que el cambio de lenguaje surta efecto."</string>
|
||||
<string name="_EnRecipes_needs_to_be_restarted_for_the_theme_change_to_take_effect__2kU319">"EnRecipes debe reiniciarse para que el cambio de tema surta efecto."</string>
|
||||
<string name="RESTART">"REINICIAR"</string>
|
||||
<string name="_Restart_required_Z22YINL">"Reinicio requerido"</string>
|
||||
<string name="SET">"ESTABLECER"</string>
|
||||
<string name="_ADD_NEW_Zv8FjM">"AGREGAR NUEVA"</string>
|
||||
<string name="Share">"Compartir"</string>
|
||||
<string name="Overview">"Resumen"</string>
|
||||
<string name="Recipe">"Receta"</string>
|
||||
<string name="Photo">"Foto"</string>
|
||||
<string name="min">"min"</string>
|
||||
<string name="hr">"hr"</string>
|
||||
<string name="_My_Healthy_Recipe_Z1EqB8f">"Mi receta saludable"</string>
|
||||
<string name="_Nothing_here__Add_some_recipes_and_try_again__Z25A7Q">"¡Nada por aquí! Agregar algunas recetas e intenta nuevamente."</string>
|
||||
<string name="_Select_a_recipe_2lL8x2">"Elegir una receta"</string>
|
||||
<string name="ADD">"AGREGAR"</string>
|
||||
<string name="REMOVE">"REMOVER"</string>
|
||||
<string name="CANCEL">"CANCELAR"</string>
|
||||
<string name="_Sort_by_Zq01TF">"Ordenada por"</string>
|
||||
<string name="Step">"Paso"</string>
|
||||
<string name="Item">"Item"</string>
|
||||
<string name="_ADD_NOTE_ZyNw1r">"AGREGAR NOTA"</string>
|
||||
<string name="Notes">"Notas"</string>
|
||||
<string name="Note">"Nota"</string>
|
||||
<string name="_ADD_COMBINATION_2q9HWq">"AGREGA COMBINACIÓN"</string>
|
||||
<string name="Combinations">"Combinaciones"</string>
|
||||
<string name="_ADD_STEP_ZyMPOe">"AGREGAR PASO"</string>
|
||||
<string name="Instructions">"Instrucciones"</string>
|
||||
<string name="Instruction">"Instrucción"</string>
|
||||
<string name="_ADD_INGREDIENT_29sSLU">"AGREGAR INGREDIENTE"</string>
|
||||
<string name="Ingredients">"Ingredientes"</string>
|
||||
<string name="Ingredient">"Ingrediente"</string>
|
||||
<string name="_Yield_measured_in_2OoRT">"Cantidad medida en"</string>
|
||||
<string name="_Yield_quantity_ZHx3jw">"Cantidad"</string>
|
||||
<string name="_Cooking_time_2w2fEw">"Tiempo de cocción"</string>
|
||||
<string name="_Preparation_time_15BfxT">"Tiempo de preparación"</string>
|
||||
<string name="Category">"Categoria"</string>
|
||||
<string name="Title">"Titulo"</string>
|
||||
<string name="_Edit_recipe_ZPvwDP">"Editar receta"</string>
|
||||
<string name="_New_recipe_Z1Y2YKJ">"Nueva receta"</string>
|
||||
<string name="_Vishnu_Raghav_B_1qnRnC">"Vishnu Raghav B"</string>
|
||||
<string name="Author">"Autor"</string>
|
||||
<string name="_for_reporting_issues__suggestions_and_feedback_Z1JUmyE">"para reportar problemas, sugerencias y devoluciones"</string>
|
||||
<string name="_Join_the_Telegram_group_ZAXQgc">"Únete al grupo de Telegram"</string>
|
||||
<string name="Version">"Version"</string>
|
||||
<string name="_Supports_full_backups_exported_by_this_app_ZYs4f2">"Soporta respaldos completos exportados por esta app"</string>
|
||||
<string name="_Import_from_backup_Z28HsC0">"Importar de un respaldo"</string>
|
||||
<string name="_Generates_a_zip_file_that_contains_all_your_data__This_file_can_be_imported_back__Z19m3xY">"Generar un archivo zip con tus datos. Este puede ser importado nuevamente."</string>
|
||||
<string name="_Export_a_full_backup_TJfra">"Exportar un respaldo completo"</string>
|
||||
<string name="Database">"Base de datos"</string>
|
||||
<string name="Dark">"Oscuro"</string>
|
||||
<string name="Light">"Claro"</string>
|
||||
<string name="Theme">"Tema"</string>
|
||||
<string name="_System_default_Z1jruVS">"Default del sistema"</string>
|
||||
<string name="_App_language_DzFsk">"Lenguaje"</string>
|
||||
<string name="Interface">"Interfaz"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_try_later_list_Z2wWbA1">"Tu búsqueda no concuerda con recetas en tu listado de intentar luego"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_favourites_1ylvHN">"Tu búsqueda no concuerda con recetas en tus favoritos"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_this_category_P7J4V">"Tu búsqueda no concuerda con recetas de esta categoría"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_Z1eppHH">"Tu búsqueda no concuerda con recetas"</string>
|
||||
<string name="_No_recipes_found_Z125IxD">"No se encontraron recetas"</string>
|
||||
<string name="_Category_looks_empty_ZAK5qU">"Categoría vacía"</string>
|
||||
<string name="_Recipes_you_mark_as_favourite_will_be_listed_here_Z1iIHgY">"Las recetas que marques como favoritas serán listadas aquí"</string>
|
||||
<string name="_No_favourites_yet_aPSoG">"No tienes favoritos todavía"</string>
|
||||
<string name="_Recipes_you_mark_as_try_later_will_be_listed_here_Z1ITwPV">"Las recetas que marques como intentar luego serán listadas aquí"</string>
|
||||
<string name="_All_done__72KYl">"¡Listo!"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_notes_Z1wyyeb">"Usa el botón del lapiz para agregar notas"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_combinations_6NhFS">"Usa el botón del lapiz para agregar mezclas"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_instructions_ZAi0PH">"Usa el boton del lapiz para agregar instrucciones"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_ingredients_Z1xOX8S">"Usa el lapiz para agregar ingredientes"</string>
|
||||
<string name="_Use_the_plus_button_to_add_one_1h20ms">"Usa el botón más para agregar una"</string>
|
||||
<string name="_Start_adding_your_recipes__rwnVV">"¡Comienza a agregar tus recetas!"</string>
|
||||
<string name="large">"grande"</string>
|
||||
<string name="medium">"mediano"</string>
|
||||
<string name="small">"pequeño"</string>
|
||||
<string name="stick">"rama"</string>
|
||||
<string name="dozen">"docena"</string>
|
||||
<string name="drop">"gota"</string>
|
||||
<string name="pinch">"pizca"</string>
|
||||
<string name="piece">"porción"</string>
|
||||
<string name="clove">"clavo"</string>
|
||||
<string name="leaf">"hoja"</string>
|
||||
<string name="in">"pulg"</string>
|
||||
<string name="cm">"cm"</string>
|
||||
<string name="kg">"kg"</string>
|
||||
<string name="g">"g"</string>
|
||||
<string name="mg">"mg"</string>
|
||||
<string name="lb">"lb"</string>
|
||||
<string name="oz">"onz"</string>
|
||||
<string name="l">"l"</string>
|
||||
<string name="ml">"ml"</string>
|
||||
<string name="gal">"gal"</string>
|
||||
<string name="qt">"cuarto"</string>
|
||||
<string name="pt">"parte"</string>
|
||||
<string name="cup">"taza"</string>
|
||||
<string name="_fl_oz_72kqu">"oz liq"</string>
|
||||
<string name="tbsp">"tbsp"</string>
|
||||
<string name="dsp">"dsp"</string>
|
||||
<string name="tsp">"tsp"</string>
|
||||
<string name="Unit">"Unidad"</string>
|
||||
<string name="unit">"unidad"</string>
|
||||
<string name="Loaf">"Hogaza"</string>
|
||||
<string name="Patty">"Empanada"</string>
|
||||
<string name="Roll">"Enrollar"</string>
|
||||
<string name="Litre">"Litro"</string>
|
||||
<string name="Millilitre">"Mililitro"</string>
|
||||
<string name="Gallon">"Galon"</string>
|
||||
<string name="Cup">"Taza"</string>
|
||||
<string name="Kilogram">"Kilogramo"</string>
|
||||
<string name="Gram">"Gramo"</string>
|
||||
<string name="Pound">"Libra"</string>
|
||||
<string name="Ounce">"Onza"</string>
|
||||
<string name="_Fluid_Ounce_bd10L">"Onza líquida"</string>
|
||||
<string name="Tablespoon">"Cucharada"</string>
|
||||
<string name="Teaspoon">"Cucharadita"</string>
|
||||
<string name="Piece">"Pieza"</string>
|
||||
<string name="Serving">"Servicio"</string>
|
||||
<string name="Vegetarian">"Vegetariano"</string>
|
||||
<string name="Vegan">"Vegano"</string>
|
||||
<string name="Undefined">"Indefinido"</string>
|
||||
<string name="Soups">"Sopas"</string>
|
||||
<string name="Snacks">"Bocadillo"</string>
|
||||
<string name="_Side_dishes_Z1Et4Vg">"Platos de acompañamiento"</string>
|
||||
<string name="Seafood">"Comida del mar"</string>
|
||||
<string name="Sauces">"Salsas"</string>
|
||||
<string name="Salads">"Ensaladas"</string>
|
||||
<string name="Rice">"Arroz"</string>
|
||||
<string name="Poultry">"Pollería"</string>
|
||||
<string name="Pasta">"Pasta"</string>
|
||||
<string name="Noodles">"Fideos"</string>
|
||||
<string name="Meat">"Carnes"</string>
|
||||
<string name="_Main_dishes_u6RGQ">"Platos principales"</string>
|
||||
<string name="Lunch">"Almuerzo"</string>
|
||||
<string name="Healthy">"Saludable"</string>
|
||||
<string name="Drinks">"Drinks"</string>
|
||||
<string name="Dinner">"Cena"</string>
|
||||
<string name="Desserts">"Postres"</string>
|
||||
<string name="Breakfast">"Desayuno"</string>
|
||||
<string name="Breads">"Panes"</string>
|
||||
<string name="Beverages">"Bebidas"</string>
|
||||
<string name="Barbecue">"Barbacoa"</string>
|
||||
<string name="Appetizers">"Aperitivos"</string>
|
||||
<string name="About">"Acerca de"</string>
|
||||
<string name="Settings">"Ajustes"</string>
|
||||
<string name="Categories">"Categorías"</string>
|
||||
<string name="_Meal_Planner_2aq4oj">"Planificador de comida"</string>
|
||||
<string name="Favourites">"Favoritos"</string>
|
||||
<string name="_Try_Later_If7PG">"Probar luego"</string>
|
||||
<string name="EnRecipes">"EnRecipes"</string>
|
||||
<string name="_app_name_1k3Sbz">"EnRecipes"</string>
|
||||
<string name="app_name">"EnRecipes"</string>
|
||||
<string name="title_activity_kimera">"EnRecipes"</string>
|
||||
<string name="_Import_failed_Z1dbs6t">"Import failed"</string>
|
||||
</resources>
|
291
app/resources/Android/src/main/res/values-nl/strings.xml
Normal file
291
app/resources/Android/src/main/res/values-nl/strings.xml
Normal file
|
@ -0,0 +1,291 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="_Invalid_file__Z2bRAst">"Invalid file:"</string>
|
||||
<string name="_Backup_file_has_been_modified_externally__Wjiqq">"Backup file has been modified externally."</string>
|
||||
<string name="_Backup_file_seems_empty__Zd7qfR">"Backup file seems empty."</string>
|
||||
<string name="_Backup_file_is_incorrect_or_corrupt__1jXb8N">"Backup file is incorrect or corrupt."</string>
|
||||
<string name="_Remove_recipe_from_snacks__MNnCU">"Remove recipe from snacks?"</string>
|
||||
<string name="_Remove_recipe_from_dinner__8sWfY">"Remove recipe from dinner?"</string>
|
||||
<string name="_Remove_recipe_from_lunch__Zwpsg2">"Remove recipe from lunch?"</string>
|
||||
<string name="_Remove_recipe_from_breakfast__ZvYyFG">"Remove recipe from breakfast?"</string>
|
||||
<string name="_Untitled_Recipe_Zv0UxP">"Untitled Recipe"</string>
|
||||
<string name="_Star_rating_Z11p4Kw">"Star rating"</string>
|
||||
<string name="Created">"Created"</string>
|
||||
<string name="_Filtered_result_1AMEXe">"Filtered result"</string>
|
||||
<string name="OK">"OK"</string>
|
||||
<string name="_recipes_updated_Z2arFrR">"recipes updated"</string>
|
||||
<string name="_recipes_already_exists_2jqW2s">"recipes already exists"</string>
|
||||
<string name="_recipes_imported_1NGeRw">"recipes imported"</string>
|
||||
<string name="_recipes_found_ZDdUgV">"recipes found"</string>
|
||||
<string name="_Import_summary_244SkL">"Import summary"</string>
|
||||
<string name="_separate_with_spaces_ZHKOfw">"separate with spaces"</string>
|
||||
<string name="Tags">"Tags"</string>
|
||||
<string name="_No_tags_available_Z1C5GqD">"No tags available"</string>
|
||||
<string name="_All_Tags_28gMyY">"All Tags"</string>
|
||||
<string name="_All_Categories_Z23JSTS">"All Categories"</string>
|
||||
<string name="Vietnamese">"Vietnamese"</string>
|
||||
<string name="Turkish">"Turkish"</string>
|
||||
<string name="Thai">"Thai"</string>
|
||||
<string name="Swedish">"Swedish"</string>
|
||||
<string name="_Sri_Lankan_Z7GfBa">"Sri Lankan"</string>
|
||||
<string name="Spanish">"Spanish"</string>
|
||||
<string name="Scottish">"Scottish"</string>
|
||||
<string name="Russian">"Russian"</string>
|
||||
<string name="Portuguese">"Portuguese"</string>
|
||||
<string name="Nigerian">"Nigerian"</string>
|
||||
<string name="Mexican">"Mexican"</string>
|
||||
<string name="Korean">"Korean"</string>
|
||||
<string name="Kenyan">"Kenyan"</string>
|
||||
<string name="Jewish">"Jewish"</string>
|
||||
<string name="Japanese">"Japanese"</string>
|
||||
<string name="Jamaican">"Jamaican"</string>
|
||||
<string name="Italian">"Italian"</string>
|
||||
<string name="Irish">"Irish"</string>
|
||||
<string name="Indian">"Indian"</string>
|
||||
<string name="Greek">"Greek"</string>
|
||||
<string name="German">"German"</string>
|
||||
<string name="French">"French"</string>
|
||||
<string name="Filipino">"Filipino"</string>
|
||||
<string name="English">"English"</string>
|
||||
<string name="Egyptian">"Egyptian"</string>
|
||||
<string name="Danish">"Danish"</string>
|
||||
<string name="Chinese">"Chinese"</string>
|
||||
<string name="British">"British"</string>
|
||||
<string name="Brazilian">"Brazilian"</string>
|
||||
<string name="American">"American"</string>
|
||||
<string name="_All_Cuisines_2hjCp9">"All Cuisines"</string>
|
||||
<string name="Cuisines">"Cuisines"</string>
|
||||
<string name="Cuisine">"Cuisine"</string>
|
||||
<string name="_Are_you_sure_you_want_to_remove_ZOnf22">"Are you sure you want to remove"</string>
|
||||
<string name="Units">"Units"</string>
|
||||
<string name="_Remove_unit__2x26yq">"Remove unit?"</string>
|
||||
<string name="_Remove_yield_unit__Z1duBWR">"Remove yield unit?"</string>
|
||||
<string name="_Remove_category__2reaxz">"Remove category?"</string>
|
||||
<string name="_Remove_cuisine__22ftcL">"Remove cuisine?"</string>
|
||||
<string name="_New_unit_1CVEEA">"New unit"</string>
|
||||
<string name="_New_cuisine_Zrvs3z">"New cuisine"</string>
|
||||
<string name="Challenging">"Challenging"</string>
|
||||
<string name="Moderate">"Moderate"</string>
|
||||
<string name="Easy">"Easy"</string>
|
||||
<string name="_Oldest_first_Z6cq4h">"Oldest first"</string>
|
||||
<string name="_Newest_first_2Sb3c">"Newest first"</string>
|
||||
<string name="_Last_updated_Z2gEbLD">"Last updated"</string>
|
||||
<string name="_Difficulty_level_cSL5d">"Difficulty level"</string>
|
||||
<string name="Rating">"Rating"</string>
|
||||
<string name="_Slowest_first_hHjY6">"Slowest first"</string>
|
||||
<string name="_Quickest_first_Z1CpP7N">"Quickest first"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_the_filtered_result_1TV6QQ">"Your search did not match any recipes in the filtered result"</string>
|
||||
<string name="_Recipe_not_found_2qGveM">"Recipe not found"</string>
|
||||
<string name="_Reset_successful_YxqWK">"Reset successful"</string>
|
||||
<string name="_Reset_units_list_msRS3">"Reset units list"</string>
|
||||
<string name="_Reset_yield_units_list_ZjouMk">"Reset yield units list"</string>
|
||||
<string name="_Reset_categories_list_Z1JmKra">"Reset categories list"</string>
|
||||
<string name="_Reset_cuisines_list_1kWL8I">"Reset cuisines list"</string>
|
||||
<string name="_Resetting_a_list_will_NOT_delete_your_existing_entries_but_only_restores_the_deleted_default_entries__Z28mk0h">"Resetting a list will NOT delete your existing entries but only restores the deleted default entries."</string>
|
||||
<string name="Reset">"Reset"</string>
|
||||
<string name="_Helps_you_choose_what_to_cook_when_you_can_t_decide_muiMv">"Helps you choose what to cook when you can\'t decide"</string>
|
||||
<string name="_Shake_to_view_random_recipe_ZTK9F2">"Shake to view random recipe"</string>
|
||||
<string name="Options">"Options"</string>
|
||||
<string name="_User_guide_2uDJCF">"User guide"</string>
|
||||
<string name="_Privacy_policy_Zb4ht5">"Privacy policy"</string>
|
||||
<string name="_View_on_GitHub_Z2qOqmx">"View on GitHub"</string>
|
||||
<string name="Translator">"Translator"</string>
|
||||
<string name="Contributors">"Medewerkers"</string>
|
||||
<string name="_Shared_via_EnRecipes__Get_it_on_Play_Store_or_F_Droid__Z2oTOK1">"Gedeeld via EnRecipes. Haal het in de Play Store of bij F-Droid."</string>
|
||||
<string name="_Permission_denied_Z7wlWK">"toestemming geweigerd"</string>
|
||||
<string name="_Import_successful_2bLM3e">"Succesvol importeren"</string>
|
||||
<string name="_Verifying____cS102">"Het controleren..."</string>
|
||||
<string name="_long_time_ago_1nwlFA">"lang geleden"</string>
|
||||
<string name="_months_ago_Z1TsskA">"voorgaande maanden"</string>
|
||||
<string name="_weeks_ago_Z2sT1GA">"voorgaande weken"</string>
|
||||
<string name="_days_ago_2iCYkm">"voorgaande dagen"</string>
|
||||
<string name="yesterday">"Gisteren"</string>
|
||||
<string name="today">"vandaag"</string>
|
||||
<string name="_You_tried_this_recipe__ZUJOl3">"Je probeerde dit recept:"</string>
|
||||
<string name="snacks">"Hapje"</string>
|
||||
<string name="dinner">"Diner"</string>
|
||||
<string name="lunch">"Middag"</string>
|
||||
<string name="breakfast">"Ontbijt"</string>
|
||||
<string name="_Crop_photo_1VL04J">"Een foto afknippen"</string>
|
||||
<string name="_REPLACE_PHOTO_ZLHhwH">"FOTO REPLAATSEN"</string>
|
||||
<string name="_Recipe_photo_eqm9B">"Receptfoto"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_set_recipe_photo__23OnNT">"EnRecipes heeft toestemming nodig om receptfoto\'s in te stellen."</string>
|
||||
<string name="Required">"Benodigd"</string>
|
||||
<string name="_New_category_Weg73">"Nieuwe categorie"</string>
|
||||
<string name="_New_yield_unit_1Oevd2">"Nieuwe opbrengsteenheid"</string>
|
||||
<string name="_Remove_note__2wyMVE">"Noot verwijderen?"</string>
|
||||
<string name="_Remove_combination__1dr2LS">"Combinatie verwijderen?"</string>
|
||||
<string name="_Remove_instruction__vkJfi">"Voorbereiding verwijderen?"</string>
|
||||
<string name="_Remove_ingredient__2puvMO">"Ingrediënten verwijderen?"</string>
|
||||
<string name="_KEEP_EDITING_1o9uy3">"VERDERE VERWERKING"</string>
|
||||
<string name="DISCARD">"AFBREKENING"</string>
|
||||
<string name="_Are_you_sure_you_want_to_discard_unsaved_changes_to_this_recipe__Z1G7sVC">"Wilt u niet opgeslagen wijzigingen in dit recept weggooien?"</string>
|
||||
<string name="_Unsaved_changes_9fqb4">"Onopgeslagen veranderingen"</string>
|
||||
<string name="Search">"Zoeken"</string>
|
||||
<string name="_Are_you_sure_you_want_to_delete_the_recipe_29DH9w">"Wil je echt het recept verwijderen"</string>
|
||||
<string name="DELETE">"VERWIJDEREN"</string>
|
||||
<string name="_Delete_recipe__Z2tMYtE">"Recept verwijderen?"</string>
|
||||
<string name="_Removed_from_Try_Later_1h5Bkp">"Verwijderd uit Probeer Later"</string>
|
||||
<string name="_Added_to_Try_Later_Z1gaF37">"Toegevoegd in Later proberen"</string>
|
||||
<string name="_Removed_from_Favourites_Z5k7LR">"Uit favorieten verwijderd"</string>
|
||||
<string name="_Added_to_Favourites_2mzllO">"Toegevoegd aan favorieten"</string>
|
||||
<string name="_Add_at_least_one_recipe_to_perform_a_backup_17xYaH">"Voeg ten minste één recept toe om een back-up te maken"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_backup_your_data_to_this_device__2cbvIq">"EnRecipes heeft toestemming nodig om uw gegevens op dit apparaat op te slaan."</string>
|
||||
<string name="CONTINUE">"CONTINUE"</string>
|
||||
<string name="_NOT_NOW_Z1HD7qX">"NIET NU"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_import_your_data_from_a_previous_backup__1CKjb7">"EnRecipes heeft toestemming nodig om uw gegevens uit een eerdere back-up te importeren."</string>
|
||||
<string name="_Grant_permission_Z1UQBuh">"Toestemming"</string>
|
||||
<string name="_EnRecipes_needs_to_be_restarted_for_the_app_language_to_take_effect__ZWGUtY">"EnRecipes moeten opnieuw worden opgestart om de nieuw ingestelde taal te wijzigen"</string>
|
||||
<string name="_EnRecipes_needs_to_be_restarted_for_the_theme_change_to_take_effect__2kU319">"EnRecipes moeten opnieuw worden opgestart om de wijziging van het onderwerp in werking te laten treden."</string>
|
||||
<string name="RESTART">"HERSTART"</string>
|
||||
<string name="_Restart_required_Z22YINL">"Herstart nodig"</string>
|
||||
<string name="SET">"SETUP"</string>
|
||||
<string name="_ADD_NEW_Zv8FjM">"NIEUW BIJLAGE"</string>
|
||||
<string name="Share">"Deel"</string>
|
||||
<string name="Overview">"Overzicht"</string>
|
||||
<string name="Recipe">"Recept"</string>
|
||||
<string name="Photo">"FOTO"</string>
|
||||
<string name="min">"min"</string>
|
||||
<string name="hr">"h"</string>
|
||||
<string name="_My_Healthy_Recipe_Z1EqB8f">"Mijn Gezond Recept"</string>
|
||||
<string name="_Nothing_here__Add_some_recipes_and_try_again__Z25A7Q">"Niets hier! Voeg wat recepten toe en probeer het opnieuw."</string>
|
||||
<string name="_Select_a_recipe_2lL8x2">"Recept selecteren"</string>
|
||||
<string name="ADD">"TOEVOEGEN"</string>
|
||||
<string name="REMOVE">"VERWIJDEREN"</string>
|
||||
<string name="CANCEL">"ANNULEREN"</string>
|
||||
<string name="_Sort_by_Zq01TF">"Sorteren op"</string>
|
||||
<string name="Step">"Stap"</string>
|
||||
<string name="Item">"Artikel"</string>
|
||||
<string name="_ADD_NOTE_ZyNw1r">"OPMERKINGEN TOEVOEGEN"</string>
|
||||
<string name="Notes">"Opmerkingen"</string>
|
||||
<string name="Note">"Opmerking"</string>
|
||||
<string name="_ADD_COMBINATION_2q9HWq">"COMBINATIE TOEVOEGEN"</string>
|
||||
<string name="Combinations">"Combinaties"</string>
|
||||
<string name="_ADD_STEP_ZyMPOe">"STAPPEN TOEVOEGEN"</string>
|
||||
<string name="Instructions">"Voorbereidingen"</string>
|
||||
<string name="Instruction">"Voorbereiding"</string>
|
||||
<string name="_ADD_INGREDIENT_29sSLU">"INGREDIENTE TOEVOEGEN"</string>
|
||||
<string name="Ingredients">"Ingrediënten"</string>
|
||||
<string name="Ingredient">"Ingrediënt"</string>
|
||||
<string name="_Yield_measured_in_2OoRT">"Opbrengst gemeten in"</string>
|
||||
<string name="_Yield_quantity_ZHx3jw">"Opbrengstbedrag"</string>
|
||||
<string name="_Cooking_time_2w2fEw">"Kooktijd"</string>
|
||||
<string name="_Preparation_time_15BfxT">"Voorbereidingstijd"</string>
|
||||
<string name="Category">"Categorie"</string>
|
||||
<string name="Title">"Titel"</string>
|
||||
<string name="_Edit_recipe_ZPvwDP">"Recept aanpassen"</string>
|
||||
<string name="_New_recipe_Z1Y2YKJ">"Nieuw recept"</string>
|
||||
<string name="_Vishnu_Raghav_B_1qnRnC">"Vishnu Raghav B"</string>
|
||||
<string name="Author">"Auteur"</string>
|
||||
<string name="_for_reporting_issues__suggestions_and_feedback_Z1JUmyE">"voor het melden van problemen, suggesties en feedback"</string>
|
||||
<string name="_Join_the_Telegram_group_ZAXQgc">"Sluit zich aan bij de telegrammengroep"</string>
|
||||
<string name="Version">"Versie"</string>
|
||||
<string name="_Supports_full_backups_exported_by_this_app_ZYs4f2">"Ondersteunt volledige back-ups die vanuit deze app worden geëxporteerd"</string>
|
||||
<string name="_Import_from_backup_Z28HsC0">"Importieren vom Backup"</string>
|
||||
<string name="_Generates_a_zip_file_that_contains_all_your_data__This_file_can_be_imported_back__Z19m3xY">"Maakt een zip-bestand aan met alle gegevens. Dit bestand kan opnieuw worden geïmporteerd."</string>
|
||||
<string name="_Export_a_full_backup_TJfra">"Exporteren naar backup"</string>
|
||||
<string name="Database">"Databank"</string>
|
||||
<string name="Dark">"Donker"</string>
|
||||
<string name="Light">"Helder"</string>
|
||||
<string name="Theme">"Thema"</string>
|
||||
<string name="_System_default_Z1jruVS">"Systeem Standaard"</string>
|
||||
<string name="_App_language_DzFsk">"App taal"</string>
|
||||
<string name="Interface">"Gebruikersinterface"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_try_later_list_Z2wWbA1">"Uw zoekopdracht kwam niet overeen met de recepten in uw Try Later-lijst"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_favourites_1ylvHN">"Uw zoekopdracht kwam niet overeen met de recepten in uw favorieten"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_this_category_P7J4V">"Uw zoekopdracht kwam niet overeen met recepten in deze categorie"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_Z1eppHH">"Uw zoekopdracht kwam niet overeen met recepten"</string>
|
||||
<string name="_No_recipes_found_Z125IxD">"Geen recepten gevonden"</string>
|
||||
<string name="_Category_looks_empty_ZAK5qU">"Categorie is leeg"</string>
|
||||
<string name="_Recipes_you_mark_as_favourite_will_be_listed_here_Z1iIHgY">"Recepten die u als favoriet markeert staan hier vermeld"</string>
|
||||
<string name="_No_favourites_yet_aPSoG">"Nog geen favorieten"</string>
|
||||
<string name="_Recipes_you_mark_as_try_later_will_be_listed_here_Z1ITwPV">"Recepten die gemarkeerd zijn met \'Try later\' staan hier vermeld."</string>
|
||||
<string name="_All_done__72KYl">"Alles klaar!"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_notes_Z1wyyeb">"Gebruik het potloodicoon om wat aantekeningen toe te voegen"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_combinations_6NhFS">"Gebruik het potloodicoon om enkele combinaties toe te voegen"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_instructions_ZAi0PH">"Gebruik het potloodicoon om wat voorbereidingen toe te voegen"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_ingredients_Z1xOX8S">"Gebruik het potloodicoon om wat ingrediënten toe te voegen"</string>
|
||||
<string name="_Use_the_plus_button_to_add_one_1h20ms">"Gebruik het plusteken om er een toe te voegen"</string>
|
||||
<string name="_Start_adding_your_recipes__rwnVV">"Begin met het toevoegen van uw recepten!"</string>
|
||||
<string name="large">"groot"</string>
|
||||
<string name="medium">"middelgroot"</string>
|
||||
<string name="small">"kleine"</string>
|
||||
<string name="stick">"stiksel"</string>
|
||||
<string name="dozen">"tientallen"</string>
|
||||
<string name="drop">"druppel"</string>
|
||||
<string name="pinch">"knijpen"</string>
|
||||
<string name="piece">"deel"</string>
|
||||
<string name="clove">"kruidnagel"</string>
|
||||
<string name="leaf">"blad"</string>
|
||||
<string name="in">"in"</string>
|
||||
<string name="cm">"cm"</string>
|
||||
<string name="kg">"kg"</string>
|
||||
<string name="g">"g"</string>
|
||||
<string name="mg">"mg"</string>
|
||||
<string name="lb">"Pf"</string>
|
||||
<string name="oz">"oz"</string>
|
||||
<string name="l">"l"</string>
|
||||
<string name="ml">"ml"</string>
|
||||
<string name="gal">"gal"</string>
|
||||
<string name="qt">"qt"</string>
|
||||
<string name="pt">"pt"</string>
|
||||
<string name="cup">"Beker"</string>
|
||||
<string name="_fl_oz_72kqu">"fl"</string>
|
||||
<string name="tbsp">"EL"</string>
|
||||
<string name="dsp">"SL"</string>
|
||||
<string name="tsp">"TL"</string>
|
||||
<string name="Unit">"Eenheid"</string>
|
||||
<string name="unit">"eenheid"</string>
|
||||
<string name="Loaf">"Brood"</string>
|
||||
<string name="Patty">"Pasteitje"</string>
|
||||
<string name="Roll">"Rol"</string>
|
||||
<string name="Litre">"Liter"</string>
|
||||
<string name="Millilitre">"Milliliter"</string>
|
||||
<string name="Gallon">"Galon"</string>
|
||||
<string name="Cup">"Beker"</string>
|
||||
<string name="Kilogram">"Kilogram"</string>
|
||||
<string name="Gram">"Oproep"</string>
|
||||
<string name="Pound">"Pond"</string>
|
||||
<string name="Ounce">"Ounce"</string>
|
||||
<string name="_Fluid_Ounce_bd10L">"Vloeibare Ounce"</string>
|
||||
<string name="Tablespoon">"EL"</string>
|
||||
<string name="Teaspoon">"TL"</string>
|
||||
<string name="Piece">"Stukje"</string>
|
||||
<string name="Serving">"Portie"</string>
|
||||
<string name="Vegetarian">"Vegetarisch"</string>
|
||||
<string name="Vegan">"Veganistisch"</string>
|
||||
<string name="Undefined">"Onbekend"</string>
|
||||
<string name="Soups">"Soepen"</string>
|
||||
<string name="Snacks">"Hapje"</string>
|
||||
<string name="_Side_dishes_Z1Et4Vg">"Bijgerechten"</string>
|
||||
<string name="Seafood">"Zeevruchten"</string>
|
||||
<string name="Sauces">"Sausen"</string>
|
||||
<string name="Salads">"Salades"</string>
|
||||
<string name="Rice">"Rijst"</string>
|
||||
<string name="Poultry">"Gevogelte"</string>
|
||||
<string name="Pasta">"Deegwaren"</string>
|
||||
<string name="Noodles">"Noedels"</string>
|
||||
<string name="Meat">"Vlees"</string>
|
||||
<string name="_Main_dishes_u6RGQ">"Hoofdgerechten"</string>
|
||||
<string name="Lunch">"Lunchen"</string>
|
||||
<string name="Healthy">"Gezond"</string>
|
||||
<string name="Drinks">"Drankjes"</string>
|
||||
<string name="Dinner">"Diner"</string>
|
||||
<string name="Desserts">"Toetsen"</string>
|
||||
<string name="Breakfast">"Ontbijt"</string>
|
||||
<string name="Breads">"Broodjes"</string>
|
||||
<string name="Beverages">"Drankjes"</string>
|
||||
<string name="Barbecue">"Barbecue"</string>
|
||||
<string name="Appetizers">"Voorgerechten"</string>
|
||||
<string name="About">"Over"</string>
|
||||
<string name="Settings">"Instellingen"</string>
|
||||
<string name="Categories">"Categorieën"</string>
|
||||
<string name="_Meal_Planner_2aq4oj">"Maaltijdenplanner"</string>
|
||||
<string name="Favourites">"Favoriten"</string>
|
||||
<string name="_Try_Later_If7PG">"Later proberen"</string>
|
||||
<string name="EnRecipes">"EnRecipes"</string>
|
||||
<string name="_app_name_1k3Sbz">"EnRecipes"</string>
|
||||
<string name="app_name">"EnRecipes"</string>
|
||||
<string name="title_activity_kimera">"EnRecipes"</string>
|
||||
<string name="_Import_failed_Z1dbs6t">"Import failed"</string>
|
||||
</resources>
|
291
app/resources/Android/src/main/res/values-pt/strings.xml
Normal file
291
app/resources/Android/src/main/res/values-pt/strings.xml
Normal file
|
@ -0,0 +1,291 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="_Invalid_file__Z2bRAst">"Invalid file:"</string>
|
||||
<string name="_Backup_file_has_been_modified_externally__Wjiqq">"Backup file has been modified externally."</string>
|
||||
<string name="_Backup_file_seems_empty__Zd7qfR">"Backup file seems empty."</string>
|
||||
<string name="_Backup_file_is_incorrect_or_corrupt__1jXb8N">"Backup file is incorrect or corrupt."</string>
|
||||
<string name="_Remove_recipe_from_snacks__MNnCU">"Remove recipe from snacks?"</string>
|
||||
<string name="_Remove_recipe_from_dinner__8sWfY">"Remove recipe from dinner?"</string>
|
||||
<string name="_Remove_recipe_from_lunch__Zwpsg2">"Remove recipe from lunch?"</string>
|
||||
<string name="_Remove_recipe_from_breakfast__ZvYyFG">"Remove recipe from breakfast?"</string>
|
||||
<string name="_Untitled_Recipe_Zv0UxP">"Receita Sem Título"</string>
|
||||
<string name="_Star_rating_Z11p4Kw">"Classificação por estrelas"</string>
|
||||
<string name="Created">"Criado"</string>
|
||||
<string name="_Filtered_result_1AMEXe">"Resultados filtrados"</string>
|
||||
<string name="OK">"OK"</string>
|
||||
<string name="_recipes_updated_Z2arFrR">"receitas atualizadas"</string>
|
||||
<string name="_recipes_already_exists_2jqW2s">"receita já existe"</string>
|
||||
<string name="_recipes_imported_1NGeRw">"receitas importadas"</string>
|
||||
<string name="_recipes_found_ZDdUgV">"receitas encontradas"</string>
|
||||
<string name="_Import_summary_244SkL">"Importar sumário"</string>
|
||||
<string name="_separate_with_spaces_ZHKOfw">"separa com espaços"</string>
|
||||
<string name="Tags">"Etiquetas"</string>
|
||||
<string name="_No_tags_available_Z1C5GqD">"Sem etiquetas disponíveis"</string>
|
||||
<string name="_All_Tags_28gMyY">"Todas as Etiquetas"</string>
|
||||
<string name="_All_Categories_Z23JSTS">"Todas as Categorias"</string>
|
||||
<string name="Vietnamese">"Vietnamita"</string>
|
||||
<string name="Turkish">"Turca"</string>
|
||||
<string name="Thai">"Tailandesa"</string>
|
||||
<string name="Swedish">"Sueca"</string>
|
||||
<string name="_Sri_Lankan_Z7GfBa">"Cingalês"</string>
|
||||
<string name="Spanish">"Espanhola"</string>
|
||||
<string name="Scottish">"Escocêsa"</string>
|
||||
<string name="Russian">"Russa"</string>
|
||||
<string name="Portuguese">"Portuguesa"</string>
|
||||
<string name="Nigerian">"Nigeriana"</string>
|
||||
<string name="Mexican">"Mexicana"</string>
|
||||
<string name="Korean">"Coreana"</string>
|
||||
<string name="Kenyan">"Queniana"</string>
|
||||
<string name="Jewish">"Judaica"</string>
|
||||
<string name="Japanese">"Japonêsa"</string>
|
||||
<string name="Jamaican">"Jamaicana"</string>
|
||||
<string name="Italian">"Italiana"</string>
|
||||
<string name="Irish">"Irlândesa"</string>
|
||||
<string name="Indian">"Indiana"</string>
|
||||
<string name="Greek">"Grega"</string>
|
||||
<string name="German">"Alemã"</string>
|
||||
<string name="French">"Francesa"</string>
|
||||
<string name="Filipino">"Filipina"</string>
|
||||
<string name="English">"Inglêsa"</string>
|
||||
<string name="Egyptian">"Egípcia"</string>
|
||||
<string name="Danish">"Dinamarquêsa"</string>
|
||||
<string name="Chinese">"Chinesa"</string>
|
||||
<string name="British">"Britânica"</string>
|
||||
<string name="Brazilian">"Brasileira"</string>
|
||||
<string name="American">"Americana"</string>
|
||||
<string name="_All_Cuisines_2hjCp9">"Todas as Cozinhas"</string>
|
||||
<string name="Cuisines">"Cozinhas"</string>
|
||||
<string name="Cuisine">"Cozinha"</string>
|
||||
<string name="_Are_you_sure_you_want_to_remove_ZOnf22">"Tem certeza que pretende remover"</string>
|
||||
<string name="Units">"Unidades"</string>
|
||||
<string name="_Remove_unit__2x26yq">"Remover unidade?"</string>
|
||||
<string name="_Remove_yield_unit__Z1duBWR">"Remover unidade de porção?"</string>
|
||||
<string name="_Remove_category__2reaxz">"Remover categoria?"</string>
|
||||
<string name="_Remove_cuisine__22ftcL">"Remover cozinha?"</string>
|
||||
<string name="_New_unit_1CVEEA">"Nova unidade"</string>
|
||||
<string name="_New_cuisine_Zrvs3z">"Nova cozinha"</string>
|
||||
<string name="Challenging">"Desafiadora"</string>
|
||||
<string name="Moderate">"Moderada"</string>
|
||||
<string name="Easy">"Fácil"</string>
|
||||
<string name="_Oldest_first_Z6cq4h">"Mais antiga primeiro"</string>
|
||||
<string name="_Newest_first_2Sb3c">"Mais recente primeiro"</string>
|
||||
<string name="_Last_updated_Z2gEbLD">"Ultima atualização"</string>
|
||||
<string name="_Difficulty_level_cSL5d">"Nível de dificuldade"</string>
|
||||
<string name="Rating">"Avaliação"</string>
|
||||
<string name="_Slowest_first_hHjY6">"Mais lentas primeiro"</string>
|
||||
<string name="_Quickest_first_Z1CpP7N">"Mais rápidas primeiro"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_the_filtered_result_1TV6QQ">"A sua pesquisa não encontrou nenhuma receita no resultado filtrado"</string>
|
||||
<string name="_Recipe_not_found_2qGveM">"Receita não encontrada"</string>
|
||||
<string name="_Reset_successful_YxqWK">"Redefinição com sucesso"</string>
|
||||
<string name="_Reset_units_list_msRS3">"Redefinir lista de unidades"</string>
|
||||
<string name="_Reset_yield_units_list_ZjouMk">"Redefinir lista de porções"</string>
|
||||
<string name="_Reset_categories_list_Z1JmKra">"Redefinir lista de categorias"</string>
|
||||
<string name="_Reset_cuisines_list_1kWL8I">"Redefinir lista de cozinhas"</string>
|
||||
<string name="_Resetting_a_list_will_NOT_delete_your_existing_entries_but_only_restores_the_deleted_default_entries__Z28mk0h">"A redefinição de uma lista NÃO excluirá as entradas existentes, mas apenas restaurará as entradas padrão excluídas."</string>
|
||||
<string name="Reset">"Redefinir"</string>
|
||||
<string name="_Helps_you_choose_what_to_cook_when_you_can_t_decide_muiMv">"Ajuda a escolher o que cozinhar quando não consegue decidir"</string>
|
||||
<string name="_Shake_to_view_random_recipe_ZTK9F2">"Agite para ver receita aleatória"</string>
|
||||
<string name="Options">"Opções"</string>
|
||||
<string name="_User_guide_2uDJCF">"Guia de Utilização"</string>
|
||||
<string name="_Privacy_policy_Zb4ht5">"Política de Privacidade"</string>
|
||||
<string name="_View_on_GitHub_Z2qOqmx">"Ver no GitHub"</string>
|
||||
<string name="Translator">"Tradutor"</string>
|
||||
<string name="Contributors">"Contribuidores"</string>
|
||||
<string name="_Shared_via_EnRecipes__Get_it_on_Play_Store_or_F_Droid__Z2oTOK1">"Partilhado via EnRecipes. Download na Play Store ou F-Droid."</string>
|
||||
<string name="_Permission_denied_Z7wlWK">"Permissão recusada"</string>
|
||||
<string name="_Import_successful_2bLM3e">"Importado com sucesso"</string>
|
||||
<string name="_Verifying____cS102">"A Verificar..."</string>
|
||||
<string name="_long_time_ago_1nwlFA">"há muito tempo"</string>
|
||||
<string name="_months_ago_Z1TsskA">"meses atrás"</string>
|
||||
<string name="_weeks_ago_Z2sT1GA">"semanas atrás"</string>
|
||||
<string name="_days_ago_2iCYkm">"dias atrás"</string>
|
||||
<string name="yesterday">"ontem"</string>
|
||||
<string name="today">"hoje"</string>
|
||||
<string name="_You_tried_this_recipe__ZUJOl3">"Tentou esta receita:"</string>
|
||||
<string name="snacks">"lanches"</string>
|
||||
<string name="dinner">"jantar"</string>
|
||||
<string name="lunch">"almoço"</string>
|
||||
<string name="breakfast">"café da manhã"</string>
|
||||
<string name="_Crop_photo_1VL04J">"Cortar foto"</string>
|
||||
<string name="_REPLACE_PHOTO_ZLHhwH">"SUBSTITUIR FOTO"</string>
|
||||
<string name="_Recipe_photo_eqm9B">"Foto da receita"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_set_recipe_photo__23OnNT">"EnRecipes requer permissão de armazenamento para definir a foto da receita."</string>
|
||||
<string name="Required">"Requerido"</string>
|
||||
<string name="_New_category_Weg73">"Nova categoria"</string>
|
||||
<string name="_New_yield_unit_1Oevd2">"Nova unidade de porção"</string>
|
||||
<string name="_Remove_note__2wyMVE">"Remover nota?"</string>
|
||||
<string name="_Remove_combination__1dr2LS">"Remover combinação?"</string>
|
||||
<string name="_Remove_instruction__vkJfi">"Remover instrução?"</string>
|
||||
<string name="_Remove_ingredient__2puvMO">"Remover ingrediente?"</string>
|
||||
<string name="_KEEP_EDITING_1o9uy3">"CONTINUAR EDIÇÃO"</string>
|
||||
<string name="DISCARD">"DESCARTAR"</string>
|
||||
<string name="_Are_you_sure_you_want_to_discard_unsaved_changes_to_this_recipe__Z1G7sVC">"Tem certeza que deseja descartar as alterações não salvas nesta receita?"</string>
|
||||
<string name="_Unsaved_changes_9fqb4">"Alterações não salvas"</string>
|
||||
<string name="Search">"Procurar"</string>
|
||||
<string name="_Are_you_sure_you_want_to_delete_the_recipe_29DH9w">"Tem certeza que deseja eliminar a receita"</string>
|
||||
<string name="DELETE">"APAGAR"</string>
|
||||
<string name="_Delete_recipe__Z2tMYtE">"Eliminar Receita?"</string>
|
||||
<string name="_Removed_from_Try_Later_1h5Bkp">"Removida de Tentar Mais Tarde"</string>
|
||||
<string name="_Added_to_Try_Later_Z1gaF37">"Adicionada a Tentar Mais Tarde"</string>
|
||||
<string name="_Removed_from_Favourites_Z5k7LR">"Removido dos Favoritos"</string>
|
||||
<string name="_Added_to_Favourites_2mzllO">"Adicionado aos Favoritos"</string>
|
||||
<string name="_Add_at_least_one_recipe_to_perform_a_backup_17xYaH">"Adicione pelo menos uma receita para fazer um backup"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_backup_your_data_to_this_device__2cbvIq">"EnRecipes requer permissão de armazenamento para fazer backup de seus dados neste dispositivo."</string>
|
||||
<string name="CONTINUE">"CONTINUAR"</string>
|
||||
<string name="_NOT_NOW_Z1HD7qX">"AGORA NÃO"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_import_your_data_from_a_previous_backup__1CKjb7">"EnRecipes requer permissão de armazenamento para importar seus dados de um backup anterior."</string>
|
||||
<string name="_Grant_permission_Z1UQBuh">"Garantir permissão"</string>
|
||||
<string name="_EnRecipes_needs_to_be_restarted_for_the_app_language_to_take_effect__ZWGUtY">"EnRecipes precisa ser reiniciada para que a alteração da lingua tenha efeito."</string>
|
||||
<string name="_EnRecipes_needs_to_be_restarted_for_the_theme_change_to_take_effect__2kU319">"EnRecipes precisa ser reiniciada para que a alteração do tema tenha efeito."</string>
|
||||
<string name="RESTART">"REINICIAR"</string>
|
||||
<string name="_Restart_required_Z22YINL">"É necessário reiniciar"</string>
|
||||
<string name="SET">"SET"</string>
|
||||
<string name="_ADD_NEW_Zv8FjM">"ADICIONAR NOVA"</string>
|
||||
<string name="Share">"Partilhar"</string>
|
||||
<string name="Overview">"Visão Global"</string>
|
||||
<string name="Recipe">"Receita"</string>
|
||||
<string name="Photo">"Foto"</string>
|
||||
<string name="min">"min"</string>
|
||||
<string name="hr">"hr"</string>
|
||||
<string name="_My_Healthy_Recipe_Z1EqB8f">"A Minha Receita Saudável"</string>
|
||||
<string name="_Nothing_here__Add_some_recipes_and_try_again__Z25A7Q">"Nada aqui! Adicione algumas receitas e tente novamente."</string>
|
||||
<string name="_Select_a_recipe_2lL8x2">"Selecionar a receita"</string>
|
||||
<string name="ADD">"ADICIONAR"</string>
|
||||
<string name="REMOVE">"REMOVER"</string>
|
||||
<string name="CANCEL">"CANCELAR"</string>
|
||||
<string name="_Sort_by_Zq01TF">"Ordenar por"</string>
|
||||
<string name="Step">"Passo"</string>
|
||||
<string name="Item">"Item"</string>
|
||||
<string name="_ADD_NOTE_ZyNw1r">"ADICIONAR NOTA"</string>
|
||||
<string name="Notes">"Notas"</string>
|
||||
<string name="Note">"Nota"</string>
|
||||
<string name="_ADD_COMBINATION_2q9HWq">"ADICIONAR COMBINAÇÕES"</string>
|
||||
<string name="Combinations">"Combinações"</string>
|
||||
<string name="_ADD_STEP_ZyMPOe">"ADICIONAR PASSO"</string>
|
||||
<string name="Instructions">"Instruções"</string>
|
||||
<string name="Instruction">"Instrução"</string>
|
||||
<string name="_ADD_INGREDIENT_29sSLU">"ADICIONAR INGREDIENTE"</string>
|
||||
<string name="Ingredients">"Ingredientes"</string>
|
||||
<string name="Ingredient">"Ingredientes"</string>
|
||||
<string name="_Yield_measured_in_2OoRT">"Porções medidas em"</string>
|
||||
<string name="_Yield_quantity_ZHx3jw">"Quantidade de porções"</string>
|
||||
<string name="_Cooking_time_2w2fEw">"Tempo de cozimento"</string>
|
||||
<string name="_Preparation_time_15BfxT">"Tempo de preparação"</string>
|
||||
<string name="Category">"Categoria"</string>
|
||||
<string name="Title">"Título"</string>
|
||||
<string name="_Edit_recipe_ZPvwDP">"Editar receita"</string>
|
||||
<string name="_New_recipe_Z1Y2YKJ">"Nova receita"</string>
|
||||
<string name="_Vishnu_Raghav_B_1qnRnC">"Vishnu Raghav B"</string>
|
||||
<string name="Author">"Autor"</string>
|
||||
<string name="_for_reporting_issues__suggestions_and_feedback_Z1JUmyE">"para reportar problemas, sugestões e feedback"</string>
|
||||
<string name="_Join_the_Telegram_group_ZAXQgc">"Entrar no grupo do Telegram"</string>
|
||||
<string name="Version">"Versão"</string>
|
||||
<string name="_Supports_full_backups_exported_by_this_app_ZYs4f2">"Suporta backups completos exportados por este aplicativo"</string>
|
||||
<string name="_Import_from_backup_Z28HsC0">"Importar do backup"</string>
|
||||
<string name="_Generates_a_zip_file_that_contains_all_your_data__This_file_can_be_imported_back__Z19m3xY">"Gera um arquivo zip que contém todos os seus dados. Este arquivo pode ser importado de volta."</string>
|
||||
<string name="_Export_a_full_backup_TJfra">"Exportar um backup completo"</string>
|
||||
<string name="Database">"Base de Dados"</string>
|
||||
<string name="Dark">"Escuro"</string>
|
||||
<string name="Light">"Claro"</string>
|
||||
<string name="Theme">"Tema"</string>
|
||||
<string name="_System_default_Z1jruVS">"Padrão do sistema"</string>
|
||||
<string name="_App_language_DzFsk">"Linguagem da App"</string>
|
||||
<string name="Interface">"Interface"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_try_later_list_Z2wWbA1">"A sua pesquisa não encontrou nenhuma receita na sua lista tentar mais tarde"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_favourites_1ylvHN">"A sua pesquisa não encontrou nenhuma receita em seus favoritos"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_this_category_P7J4V">"A sua pesquisa não encontrou nenhuma receita nesta categoria"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_Z1eppHH">"A sua pesquisa não encontrou nenhuma receita"</string>
|
||||
<string name="_No_recipes_found_Z125IxD">"Nenhuma receita encontrada"</string>
|
||||
<string name="_Category_looks_empty_ZAK5qU">"Categoria parece vazia"</string>
|
||||
<string name="_Recipes_you_mark_as_favourite_will_be_listed_here_Z1iIHgY">"As receitas que marcar como favoritas serão listadas aqui"</string>
|
||||
<string name="_No_favourites_yet_aPSoG">"Ainda não há favoritos"</string>
|
||||
<string name="_Recipes_you_mark_as_try_later_will_be_listed_here_Z1ITwPV">"As receitas que você marcar como tentativa mais tarde serão listadas aqui"</string>
|
||||
<string name="_All_done__72KYl">"Tudo feito!"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_notes_Z1wyyeb">"Use o botão lápis para adicionar algumas notas"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_combinations_6NhFS">"Use o botão lápis para adicionar algumas combinações"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_instructions_ZAi0PH">"Use o botão lápis para adicionar algumas instruções"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_ingredients_Z1xOX8S">"Use o botão lápis para adicionar alguns ingredientes"</string>
|
||||
<string name="_Use_the_plus_button_to_add_one_1h20ms">"Use o botão de adição para adicionar uma"</string>
|
||||
<string name="_Start_adding_your_recipes__rwnVV">"Comece a adicionar suas receitas!"</string>
|
||||
<string name="large">"grande"</string>
|
||||
<string name="medium">"médio"</string>
|
||||
<string name="small">"pequeno"</string>
|
||||
<string name="stick">"galho"</string>
|
||||
<string name="dozen">"dúzia"</string>
|
||||
<string name="drop">"solta"</string>
|
||||
<string name="pinch">"pitada"</string>
|
||||
<string name="piece">"peça"</string>
|
||||
<string name="clove">"bulbo"</string>
|
||||
<string name="leaf">"folha"</string>
|
||||
<string name="in">"in"</string>
|
||||
<string name="cm">"cm"</string>
|
||||
<string name="kg">"kg"</string>
|
||||
<string name="g">"g"</string>
|
||||
<string name="mg">"mg"</string>
|
||||
<string name="lb">"lb"</string>
|
||||
<string name="oz">"oz"</string>
|
||||
<string name="l">"l"</string>
|
||||
<string name="ml">"ml"</string>
|
||||
<string name="gal">"gal"</string>
|
||||
<string name="qt">"qt"</string>
|
||||
<string name="pt">"pt"</string>
|
||||
<string name="cup">"copo"</string>
|
||||
<string name="_fl_oz_72kqu">"fl oz"</string>
|
||||
<string name="tbsp">"colher de sopa"</string>
|
||||
<string name="dsp">"colher de sobremesa"</string>
|
||||
<string name="tsp">"colher de chá"</string>
|
||||
<string name="Unit">"Unidade"</string>
|
||||
<string name="unit">"unidade"</string>
|
||||
<string name="Loaf">"Loaf"</string>
|
||||
<string name="Patty">"Empada"</string>
|
||||
<string name="Roll">"Rolo"</string>
|
||||
<string name="Litre">"Litro"</string>
|
||||
<string name="Millilitre">"Mililitro"</string>
|
||||
<string name="Gallon">"Gallon"</string>
|
||||
<string name="Cup">"Copo"</string>
|
||||
<string name="Kilogram">"Quilograma"</string>
|
||||
<string name="Gram">"Grama"</string>
|
||||
<string name="Pound">"Pound"</string>
|
||||
<string name="Ounce">"Ounce"</string>
|
||||
<string name="_Fluid_Ounce_bd10L">"Fluid Ounce"</string>
|
||||
<string name="Tablespoon">"Colher de sopa"</string>
|
||||
<string name="Teaspoon">"Colher de chá"</string>
|
||||
<string name="Piece">"Peça"</string>
|
||||
<string name="Serving">"Porção"</string>
|
||||
<string name="Vegetarian">"Vegetariano"</string>
|
||||
<string name="Vegan">"Vegan"</string>
|
||||
<string name="Undefined">"Indefinido"</string>
|
||||
<string name="Soups">"Sopas"</string>
|
||||
<string name="Snacks">"Lanches"</string>
|
||||
<string name="_Side_dishes_Z1Et4Vg">"Acompanhamentos"</string>
|
||||
<string name="Seafood">"Marisco"</string>
|
||||
<string name="Sauces">"Molhos"</string>
|
||||
<string name="Salads">"Saladas"</string>
|
||||
<string name="Rice">"Arroz"</string>
|
||||
<string name="Poultry">"Aves"</string>
|
||||
<string name="Pasta">"Massa"</string>
|
||||
<string name="Noodles">"Macarrão"</string>
|
||||
<string name="Meat">"Carne"</string>
|
||||
<string name="_Main_dishes_u6RGQ">"Pratos principais"</string>
|
||||
<string name="Lunch">"Almoço"</string>
|
||||
<string name="Healthy">"Saudável"</string>
|
||||
<string name="Drinks">"Bebidas"</string>
|
||||
<string name="Dinner">"Jantar"</string>
|
||||
<string name="Desserts">"Sobremesas"</string>
|
||||
<string name="Breakfast">"Café da manhã"</string>
|
||||
<string name="Breads">"Pães"</string>
|
||||
<string name="Beverages">"Bebidas"</string>
|
||||
<string name="Barbecue">"Churrasco"</string>
|
||||
<string name="Appetizers">"Aperitivos"</string>
|
||||
<string name="About">"Sobre"</string>
|
||||
<string name="Settings">"Definições"</string>
|
||||
<string name="Categories">"Categorias"</string>
|
||||
<string name="_Meal_Planner_2aq4oj">"Planeador de Refeições"</string>
|
||||
<string name="Favourites">"Favoritos"</string>
|
||||
<string name="_Try_Later_If7PG">"Tente Depois"</string>
|
||||
<string name="EnRecipes">"EnRecipes"</string>
|
||||
<string name="_app_name_1k3Sbz">"EnRecipes"</string>
|
||||
<string name="app_name">"EnRecipes"</string>
|
||||
<string name="title_activity_kimera">"EnRecipes"</string>
|
||||
<string name="_Import_failed_Z1dbs6t">"Import failed"</string>
|
||||
</resources>
|
291
app/resources/Android/src/main/res/values-ru/strings.xml
Normal file
291
app/resources/Android/src/main/res/values-ru/strings.xml
Normal file
|
@ -0,0 +1,291 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="_Invalid_file__Z2bRAst">"Invalid file:"</string>
|
||||
<string name="_Backup_file_has_been_modified_externally__Wjiqq">"Backup file has been modified externally."</string>
|
||||
<string name="_Backup_file_seems_empty__Zd7qfR">"Backup file seems empty."</string>
|
||||
<string name="_Backup_file_is_incorrect_or_corrupt__1jXb8N">"Backup file is incorrect or corrupt."</string>
|
||||
<string name="_Remove_recipe_from_snacks__MNnCU">"Убрать рецепт из закусок?"</string>
|
||||
<string name="_Remove_recipe_from_dinner__8sWfY">"Убрать рецепт из ужиныов?"</string>
|
||||
<string name="_Remove_recipe_from_lunch__Zwpsg2">"Убрать рецепт из обедов?"</string>
|
||||
<string name="_Remove_recipe_from_breakfast__ZvYyFG">"Убрать рецепт из завтраков?"</string>
|
||||
<string name="_Untitled_Recipe_Zv0UxP">"Рецепт без названия"</string>
|
||||
<string name="_Star_rating_Z11p4Kw">"Оценка"</string>
|
||||
<string name="Created">"Создано"</string>
|
||||
<string name="_Filtered_result_1AMEXe">"Отфильтрованный результат"</string>
|
||||
<string name="OK">"ОК"</string>
|
||||
<string name="_recipes_updated_Z2arFrR">"рецепты обновлены"</string>
|
||||
<string name="_recipes_already_exists_2jqW2s">"рецепты уже существуют"</string>
|
||||
<string name="_recipes_imported_1NGeRw">"рецепты импортированы"</string>
|
||||
<string name="_recipes_found_ZDdUgV">"рецепты найдены"</string>
|
||||
<string name="_Import_summary_244SkL">"Общая информация про импорт"</string>
|
||||
<string name="_separate_with_spaces_ZHKOfw">"разделяйте пробелами"</string>
|
||||
<string name="Tags">"Теги"</string>
|
||||
<string name="_No_tags_available_Z1C5GqD">"Нету доступных тегов"</string>
|
||||
<string name="_All_Tags_28gMyY">"Все теги"</string>
|
||||
<string name="_All_Categories_Z23JSTS">"Все категории"</string>
|
||||
<string name="Vietnamese">"Вьетнамская"</string>
|
||||
<string name="Turkish">"Турецкая"</string>
|
||||
<string name="Thai">"Тайская"</string>
|
||||
<string name="Swedish">"Шведская"</string>
|
||||
<string name="_Sri_Lankan_Z7GfBa">"Шри-ланкийская"</string>
|
||||
<string name="Spanish">"Испанская"</string>
|
||||
<string name="Scottish">"Шотландская"</string>
|
||||
<string name="Russian">"Русская"</string>
|
||||
<string name="Portuguese">"Нигерийская"</string>
|
||||
<string name="Nigerian">"Нигерийская"</string>
|
||||
<string name="Mexican">"Мексиканская"</string>
|
||||
<string name="Korean">"Корейская"</string>
|
||||
<string name="Kenyan">"Кенийская"</string>
|
||||
<string name="Jewish">"Еврейская"</string>
|
||||
<string name="Japanese">"Японская"</string>
|
||||
<string name="Jamaican">"Ямайская"</string>
|
||||
<string name="Italian">"Итальянская"</string>
|
||||
<string name="Irish">"Ирландская"</string>
|
||||
<string name="Indian">"Индийская"</string>
|
||||
<string name="Greek">"Греческая"</string>
|
||||
<string name="German">"Немецкая"</string>
|
||||
<string name="French">"Французская"</string>
|
||||
<string name="Filipino">"Филиппинская"</string>
|
||||
<string name="English">"Английская"</string>
|
||||
<string name="Egyptian">"Египетская"</string>
|
||||
<string name="Danish">"Датская"</string>
|
||||
<string name="Chinese">"Китайская"</string>
|
||||
<string name="British">"Британская"</string>
|
||||
<string name="Brazilian">"Бразильская кухня"</string>
|
||||
<string name="American">"Американская"</string>
|
||||
<string name="_All_Cuisines_2hjCp9">"Все кухни"</string>
|
||||
<string name="Cuisines">"Кухни"</string>
|
||||
<string name="Cuisine">"Кухня"</string>
|
||||
<string name="_Are_you_sure_you_want_to_remove_ZOnf22">"Вы уверены что хотите удалить"</string>
|
||||
<string name="Units">"Единицы измерения"</string>
|
||||
<string name="_Remove_unit__2x26yq">"Удалить единицу измерения?"</string>
|
||||
<string name="_Remove_yield_unit__Z1duBWR">"Удалить единицу измерения подачи?"</string>
|
||||
<string name="_Remove_category__2reaxz">"Удалить категорию?"</string>
|
||||
<string name="_Remove_cuisine__22ftcL">"Удалить кухню?"</string>
|
||||
<string name="_New_unit_1CVEEA">"Новая единица измерения"</string>
|
||||
<string name="_New_cuisine_Zrvs3z">"Новая кухня"</string>
|
||||
<string name="Challenging">"Сложный"</string>
|
||||
<string name="Moderate">"Средний"</string>
|
||||
<string name="Easy">"Легкий"</string>
|
||||
<string name="_Oldest_first_Z6cq4h">"Сначала старые"</string>
|
||||
<string name="_Newest_first_2Sb3c">"Сначала новое"</string>
|
||||
<string name="_Last_updated_Z2gEbLD">"Последнее обновление"</string>
|
||||
<string name="_Difficulty_level_cSL5d">"Уровень сложности"</string>
|
||||
<string name="Rating">"Рейтинг"</string>
|
||||
<string name="_Slowest_first_hHjY6">"Сначала самые медленные"</string>
|
||||
<string name="_Quickest_first_Z1CpP7N">"Самый быстрый сначала"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_the_filtered_result_1TV6QQ">"По вашему запросу не найдено ни одного рецепта в отфильтрованном результате"</string>
|
||||
<string name="_Recipe_not_found_2qGveM">"Рецепт не найден"</string>
|
||||
<string name="_Reset_successful_YxqWK">"Сброс выполнен успешно"</string>
|
||||
<string name="_Reset_units_list_msRS3">"Сбросить список единиц измерения"</string>
|
||||
<string name="_Reset_yield_units_list_ZjouMk">"Сбросить список единиц измерения подачи"</string>
|
||||
<string name="_Reset_categories_list_Z1JmKra">"Сбросить список категорий"</string>
|
||||
<string name="_Reset_cuisines_list_1kWL8I">"Сбросить список кухонь"</string>
|
||||
<string name="_Resetting_a_list_will_NOT_delete_your_existing_entries_but_only_restores_the_deleted_default_entries__Z28mk0h">"Сброс списка НЕ удалит ваши существующие записи, а только восстановит удаленные записи по умолчанию."</string>
|
||||
<string name="Reset">"Сброс"</string>
|
||||
<string name="_Helps_you_choose_what_to_cook_when_you_can_t_decide_muiMv">"Помогает выбрать, что приготовить, когда вы не можете решить"</string>
|
||||
<string name="_Shake_to_view_random_recipe_ZTK9F2">"Встряхнуть, чтобы показать случайный рецепт"</string>
|
||||
<string name="Options">"Параметры"</string>
|
||||
<string name="_User_guide_2uDJCF">"Руководство пользователя"</string>
|
||||
<string name="_Privacy_policy_Zb4ht5">"Политика конфиденциальности"</string>
|
||||
<string name="_View_on_GitHub_Z2qOqmx">"Проект на GitHub"</string>
|
||||
<string name="Translator">"Переводчик"</string>
|
||||
<string name="Contributors">"Участники"</string>
|
||||
<string name="_Shared_via_EnRecipes__Get_it_on_Play_Store_or_F_Droid__Z2oTOK1">"Отправлено через EnRecipes. Скачайте его в Play Store или F-Droid."</string>
|
||||
<string name="_Permission_denied_Z7wlWK">"В доступе отказано"</string>
|
||||
<string name="_Import_successful_2bLM3e">"Импортировано успешно"</string>
|
||||
<string name="_Verifying____cS102">"Проверка ..."</string>
|
||||
<string name="_long_time_ago_1nwlFA">"давно"</string>
|
||||
<string name="_months_ago_Z1TsskA">"несколько месяцев назад"</string>
|
||||
<string name="_weeks_ago_Z2sT1GA">"несколько недель назад"</string>
|
||||
<string name="_days_ago_2iCYkm">"несколько дней назад"</string>
|
||||
<string name="yesterday">"вчера"</string>
|
||||
<string name="today">"сегодня"</string>
|
||||
<string name="_You_tried_this_recipe__ZUJOl3">"Вы пробовали этот рецепт:"</string>
|
||||
<string name="snacks">"закуски"</string>
|
||||
<string name="dinner">"ужин"</string>
|
||||
<string name="lunch">"обед"</string>
|
||||
<string name="breakfast">"завтрак"</string>
|
||||
<string name="_Crop_photo_1VL04J">"Обрезать фотографию"</string>
|
||||
<string name="_REPLACE_PHOTO_ZLHhwH">"ЗАМЕНИТЬ ФОТО"</string>
|
||||
<string name="_Recipe_photo_eqm9B">"Фото для рецепта"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_set_recipe_photo__23OnNT">"EnRecipes требует доступ к файлам, чтобы установить фото для рецепта."</string>
|
||||
<string name="Required">"Требуется"</string>
|
||||
<string name="_New_category_Weg73">"Новая категория"</string>
|
||||
<string name="_New_yield_unit_1Oevd2">"Новая единица измерения подачи"</string>
|
||||
<string name="_Remove_note__2wyMVE">"Удалить заметку?"</string>
|
||||
<string name="_Remove_combination__1dr2LS">"Удалить комбинацию?"</string>
|
||||
<string name="_Remove_instruction__vkJfi">"Удалить инструкцию?"</string>
|
||||
<string name="_Remove_ingredient__2puvMO">"Удалить ингредиент?"</string>
|
||||
<string name="_KEEP_EDITING_1o9uy3">"ПРОДОЛЖИТЬ РЕДАКТИРОВАНИЕ"</string>
|
||||
<string name="DISCARD">"ОТМЕНИТЬ"</string>
|
||||
<string name="_Are_you_sure_you_want_to_discard_unsaved_changes_to_this_recipe__Z1G7sVC">"Вы уверены, что хотите отменить несохраненные изменения этого рецепта?"</string>
|
||||
<string name="_Unsaved_changes_9fqb4">"Несохраненные изменения"</string>
|
||||
<string name="Search">"Поиск"</string>
|
||||
<string name="_Are_you_sure_you_want_to_delete_the_recipe_29DH9w">"Вы уверены, что хотите удалить рецепт"</string>
|
||||
<string name="DELETE">"УДАЛИТЬ"</string>
|
||||
<string name="_Delete_recipe__Z2tMYtE">"Удалить рецепт?"</string>
|
||||
<string name="_Removed_from_Try_Later_1h5Bkp">"Удалено из \"Попробовать позже\""</string>
|
||||
<string name="_Added_to_Try_Later_Z1gaF37">"Добавлено в \"Попробовать позже\""</string>
|
||||
<string name="_Removed_from_Favourites_Z5k7LR">"Удалено из избранного"</string>
|
||||
<string name="_Added_to_Favourites_2mzllO">"Добавлено в избранное"</string>
|
||||
<string name="_Add_at_least_one_recipe_to_perform_a_backup_17xYaH">"Добавьте хотя бы один рецепт для резервного копирования"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_backup_your_data_to_this_device__2cbvIq">"EnRecipes требует доступ к файлам для резервного копирования ваших данных на это устройство."</string>
|
||||
<string name="CONTINUE">"ПРОДОЛЖИТЬ"</string>
|
||||
<string name="_NOT_NOW_Z1HD7qX">"НЕ СЕЙЧАС"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_import_your_data_from_a_previous_backup__1CKjb7">"EnRecipes требует доступ к файлам, чтобы импортировать ваши данные из предыдущей резервной копии."</string>
|
||||
<string name="_Grant_permission_Z1UQBuh">"Предоставить разрешение"</string>
|
||||
<string name="_EnRecipes_needs_to_be_restarted_for_the_app_language_to_take_effect__ZWGUtY">"Необходимо перезапустить приложение, чтобы изменение языка вступило в силу."</string>
|
||||
<string name="_EnRecipes_needs_to_be_restarted_for_the_theme_change_to_take_effect__2kU319">"Необходимо перезапустить приложение, чтобы изменение темы вступило в силу."</string>
|
||||
<string name="RESTART">"ПЕРЕЗАПУСТИТЬ"</string>
|
||||
<string name="_Restart_required_Z22YINL">"Требуется перезапуск"</string>
|
||||
<string name="SET">"УСТАНОВИТЬ"</string>
|
||||
<string name="_ADD_NEW_Zv8FjM">"ДОБАВИТЬ НОВОЕ"</string>
|
||||
<string name="Share">"Поделиться"</string>
|
||||
<string name="Overview">"Краткое описание"</string>
|
||||
<string name="Recipe">"Рецепт"</string>
|
||||
<string name="Photo">"Фото"</string>
|
||||
<string name="min">"мин"</string>
|
||||
<string name="hr">"ч"</string>
|
||||
<string name="_My_Healthy_Recipe_Z1EqB8f">"Мой полезный рецепт"</string>
|
||||
<string name="_Nothing_here__Add_some_recipes_and_try_again__Z25A7Q">"Здесь ничего! Добавьте рецепты и попробуйте еще раз."</string>
|
||||
<string name="_Select_a_recipe_2lL8x2">"Выберите рецепт"</string>
|
||||
<string name="ADD">"ДОБАВИТЬ"</string>
|
||||
<string name="REMOVE">"УДАЛИТЬ"</string>
|
||||
<string name="CANCEL">"ОТМЕНИТЬ"</string>
|
||||
<string name="_Sort_by_Zq01TF">"Сортировать по"</string>
|
||||
<string name="Step">"Шаг"</string>
|
||||
<string name="Item">"Ингредиент"</string>
|
||||
<string name="_ADD_NOTE_ZyNw1r">"ДОБАВИТЬ ЗАМЕТКУ"</string>
|
||||
<string name="Notes">"Заметки"</string>
|
||||
<string name="Note">"Заметка"</string>
|
||||
<string name="_ADD_COMBINATION_2q9HWq">"ДОБАВИТЬ КОМБИНАЦИЮ"</string>
|
||||
<string name="Combinations">"Комбинации"</string>
|
||||
<string name="_ADD_STEP_ZyMPOe">"ДОБАВИТЬ ШАГ"</string>
|
||||
<string name="Instructions">"Инструкции"</string>
|
||||
<string name="Instruction">"Инструкция"</string>
|
||||
<string name="_ADD_INGREDIENT_29sSLU">"ДОБАВИТЬ ИНГРЕДИЕНТ"</string>
|
||||
<string name="Ingredients">"Ингредиенты"</string>
|
||||
<string name="Ingredient">"Ингредиент"</string>
|
||||
<string name="_Yield_measured_in_2OoRT">"Подавать в"</string>
|
||||
<string name="_Yield_quantity_ZHx3jw">"Подавать в количестве"</string>
|
||||
<string name="_Cooking_time_2w2fEw">"Время готовки"</string>
|
||||
<string name="_Preparation_time_15BfxT">"Время подготовки"</string>
|
||||
<string name="Category">"Категория"</string>
|
||||
<string name="Title">"Заголовок"</string>
|
||||
<string name="_Edit_recipe_ZPvwDP">"Редактировать рецепт"</string>
|
||||
<string name="_New_recipe_Z1Y2YKJ">"Новый рецепт"</string>
|
||||
<string name="_Vishnu_Raghav_B_1qnRnC">"Vishnu Raghav B"</string>
|
||||
<string name="Author">"Автор"</string>
|
||||
<string name="_for_reporting_issues__suggestions_and_feedback_Z1JUmyE">"для сообщения о проблемах, предложений и отзывов"</string>
|
||||
<string name="_Join_the_Telegram_group_ZAXQgc">"Присоединяйтесь к группе в Telegram"</string>
|
||||
<string name="Version">"Версия"</string>
|
||||
<string name="_Supports_full_backups_exported_by_this_app_ZYs4f2">"Поддерживает полные резервные копии, созданные этим приложением"</string>
|
||||
<string name="_Import_from_backup_Z28HsC0">"Импорт из резервной копии"</string>
|
||||
<string name="_Generates_a_zip_file_that_contains_all_your_data__This_file_can_be_imported_back__Z19m3xY">"Создает zip-файл, содержащий все ваши данные. Этот файл можно импортировать обратно."</string>
|
||||
<string name="_Export_a_full_backup_TJfra">"Экспорт полной резервной копии"</string>
|
||||
<string name="Database">"База данных"</string>
|
||||
<string name="Dark">"Темная"</string>
|
||||
<string name="Light">"Светлая"</string>
|
||||
<string name="Theme">"Тема"</string>
|
||||
<string name="_System_default_Z1jruVS">"По умолчанию"</string>
|
||||
<string name="_App_language_DzFsk">"Язык приложения"</string>
|
||||
<string name="Interface">"Интерфейс"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_try_later_list_Z2wWbA1">"В списке \"Попробовать позже\" по вашему запросу ничего не найдено"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_favourites_1ylvHN">"В избранном по вашему запросу ничего не найдено "</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_this_category_P7J4V">"По вашему запросу ничего не найдено в этой категории"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_Z1eppHH">"По вашему запросу ничего не найдено"</string>
|
||||
<string name="_No_recipes_found_Z125IxD">"Рецептов не найдено"</string>
|
||||
<string name="_Category_looks_empty_ZAK5qU">"Похоже что в категории нет рецептов"</string>
|
||||
<string name="_Recipes_you_mark_as_favourite_will_be_listed_here_Z1iIHgY">"Здесь будут перечислены рецепты, которые вы отметили как любимые."</string>
|
||||
<string name="_No_favourites_yet_aPSoG">"Пока что нет любимых рецептов"</string>
|
||||
<string name="_Recipes_you_mark_as_try_later_will_be_listed_here_Z1ITwPV">"Здесь будут перечислены рецепты, которые вы хотите попробовать позже"</string>
|
||||
<string name="_All_done__72KYl">"Все сделано!"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_notes_Z1wyyeb">"Используйте кнопку карандаша, чтобы добавить заметки"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_combinations_6NhFS">"Используйте кнопку карандаша, чтобы добавить несколько комбинаций"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_instructions_ZAi0PH">"Используйте кнопку карандаша, чтобы добавить инструкции"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_ingredients_Z1xOX8S">"Используйте кнопку карандаша, чтобы добавить ингредиенты"</string>
|
||||
<string name="_Use_the_plus_button_to_add_one_1h20ms">"Используйте кнопку плюса, чтобы добавить рецепт"</string>
|
||||
<string name="_Start_adding_your_recipes__rwnVV">"Начните добавлять свои рецепты!"</string>
|
||||
<string name="large">"большой"</string>
|
||||
<string name="medium">"средний"</string>
|
||||
<string name="small">"маленький"</string>
|
||||
<string name="stick">"палочка"</string>
|
||||
<string name="dozen">"дюжина"</string>
|
||||
<string name="drop">"капля"</string>
|
||||
<string name="pinch">"щепотка"</string>
|
||||
<string name="piece">"кусок"</string>
|
||||
<string name="clove">"долька"</string>
|
||||
<string name="leaf">"лист"</string>
|
||||
<string name="in">"дюйм"</string>
|
||||
<string name="cm">"см"</string>
|
||||
<string name="kg">"кг"</string>
|
||||
<string name="g">"г"</string>
|
||||
<string name="mg">"мг"</string>
|
||||
<string name="lb">"фунт"</string>
|
||||
<string name="oz">"унция"</string>
|
||||
<string name="l">"л"</string>
|
||||
<string name="ml">"мл"</string>
|
||||
<string name="gal">"галлон"</string>
|
||||
<string name="qt">"кварта"</string>
|
||||
<string name="pt">"пинта"</string>
|
||||
<string name="cup">"чашка"</string>
|
||||
<string name="_fl_oz_72kqu">"жидкая унция"</string>
|
||||
<string name="tbsp">"ст.л."</string>
|
||||
<string name="dsp">"д.л."</string>
|
||||
<string name="tsp">"ч.л.."</string>
|
||||
<string name="Unit">"Единица измерения"</string>
|
||||
<string name="unit">"единица измерения"</string>
|
||||
<string name="Loaf">"Буханка"</string>
|
||||
<string name="Patty">"Лепешка"</string>
|
||||
<string name="Roll">"Рулет"</string>
|
||||
<string name="Litre">"Литр"</string>
|
||||
<string name="Millilitre">"Миллилитр"</string>
|
||||
<string name="Gallon">"Галлон"</string>
|
||||
<string name="Cup">"Чашка"</string>
|
||||
<string name="Kilogram">"Килограмм"</string>
|
||||
<string name="Gram">"Грамм"</string>
|
||||
<string name="Pound">"Фунт"</string>
|
||||
<string name="Ounce">"Унция"</string>
|
||||
<string name="_Fluid_Ounce_bd10L">"Жидкая унция"</string>
|
||||
<string name="Tablespoon">"Столовая ложка"</string>
|
||||
<string name="Teaspoon">"Чайная ложка"</string>
|
||||
<string name="Piece">"Кусок"</string>
|
||||
<string name="Serving">"Порция"</string>
|
||||
<string name="Vegetarian">"Вегетарианский"</string>
|
||||
<string name="Vegan">"Веганский"</string>
|
||||
<string name="Undefined">"Не указано"</string>
|
||||
<string name="Soups">"Супы"</string>
|
||||
<string name="Snacks">"Закуски"</string>
|
||||
<string name="_Side_dishes_Z1Et4Vg">"Гарнир"</string>
|
||||
<string name="Seafood">"Морепродукты"</string>
|
||||
<string name="Sauces">"Соусы"</string>
|
||||
<string name="Salads">"Салаты"</string>
|
||||
<string name="Rice">"Рис"</string>
|
||||
<string name="Poultry">"Птица"</string>
|
||||
<string name="Pasta">"Макаронные изделия"</string>
|
||||
<string name="Noodles">"Лапша"</string>
|
||||
<string name="Meat">"Мясо"</string>
|
||||
<string name="_Main_dishes_u6RGQ">"Основные блюда"</string>
|
||||
<string name="Lunch">"Обед"</string>
|
||||
<string name="Healthy">"Здоровая пища"</string>
|
||||
<string name="Drinks">"Напитки"</string>
|
||||
<string name="Dinner">"Ужин"</string>
|
||||
<string name="Desserts">"Десерты"</string>
|
||||
<string name="Breakfast">"Завтрак"</string>
|
||||
<string name="Breads">"Выпечка"</string>
|
||||
<string name="Beverages">"Напитки"</string>
|
||||
<string name="Barbecue">"Барбекю"</string>
|
||||
<string name="Appetizers">"Закуски"</string>
|
||||
<string name="About">"О приложении"</string>
|
||||
<string name="Settings">"Настройки"</string>
|
||||
<string name="Categories">"Категории"</string>
|
||||
<string name="_Meal_Planner_2aq4oj">"Планировщик питания"</string>
|
||||
<string name="Favourites">"Избранное"</string>
|
||||
<string name="_Try_Later_If7PG">"Попробовать позже"</string>
|
||||
<string name="EnRecipes">"EnRecipes"</string>
|
||||
<string name="_app_name_1k3Sbz">"EnRecipes"</string>
|
||||
<string name="app_name">"EnRecipes"</string>
|
||||
<string name="title_activity_kimera">"EnRecipes"</string>
|
||||
<string name="_Import_failed_Z1dbs6t">"Import failed"</string>
|
||||
</resources>
|
|
@ -1,6 +1,96 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="_Translations__1IFwAu">"மொழிபெயர்ப்புகள்:"</string>
|
||||
<string name="_Invalid_file__Z2bRAst">"தவறான கோப்பு:"</string>
|
||||
<string name="_Backup_file_has_been_modified_externally__Wjiqq">"காப்பு கோப்பு வெளிப்புறமாக மாற்றப்பட்டுள்ளது."</string>
|
||||
<string name="_Backup_file_seems_empty__Zd7qfR">"காப்பு கோப்பு காலியாக உள்ளது."</string>
|
||||
<string name="_Backup_file_is_incorrect_or_corrupt__1jXb8N">"காப்பு கோப்பு தவறானது அல்லது சிதைந்துள்ளது."</string>
|
||||
<string name="_Import_failed_Z1dbs6t">"இறக்குமதி தோல்வியுற்றது"</string>
|
||||
<string name="_Remove_recipe_from_snacks__MNnCU">"தின்பண்டங்களிலிருந்து சமையல் குறிப்பை அகற்றவா?"</string>
|
||||
<string name="_Remove_recipe_from_dinner__8sWfY">"இரவு உணவில் இருந்து சமையல் குறிப்பை அகற்றவா?"</string>
|
||||
<string name="_Remove_recipe_from_lunch__Zwpsg2">"மதிய உணவில் இருந்து சமையல் குறிப்பை அகற்றவா?"</string>
|
||||
<string name="_Remove_recipe_from_breakfast__ZvYyFG">"காலை உணவில் இருந்து சமையல் குறிப்பை அகற்றவா?"</string>
|
||||
<string name="_Untitled_Recipe_Zv0UxP">"பெயரிடப்படாத சமையல் குறிப்பு"</string>
|
||||
<string name="_Star_rating_Z11p4Kw">"நட்சத்திர மதிப்பீடு"</string>
|
||||
<string name="Created">"உருவாக்கப்பட்டது"</string>
|
||||
<string name="_Filtered_result_1AMEXe">"வடிகட்டப்பட்ட முடிவு"</string>
|
||||
<string name="OK">"சரி"</string>
|
||||
<string name="_recipes_updated_Z2arFrR">"சமையல் குறிப்புகள் புதுப்பிக்கப்பட்டது"</string>
|
||||
<string name="_recipes_already_exists_2jqW2s">"சமையல் குறிப்புகள் ஏற்கனவே உள்ளது"</string>
|
||||
<string name="_recipes_imported_1NGeRw">"சமையல் குறிப்புகள் இறக்குமதி செய்யப்பட்டது"</string>
|
||||
<string name="_recipes_found_ZDdUgV">"சமையல் குறிப்புகள் கண்டறியப்பட்டது"</string>
|
||||
<string name="_Import_summary_244SkL">"இறக்குமதி சுருக்கம்"</string>
|
||||
<string name="_separate_with_spaces_ZHKOfw">"இடைவெளிகளுடன் பிரிக்கவும்"</string>
|
||||
<string name="Tags">"குறிச்சொற்கள்"</string>
|
||||
<string name="_No_tags_available_Z1C5GqD">"குறிச்சொற்கள் எதுவுமில்லை"</string>
|
||||
<string name="_All_Tags_28gMyY">"அனைத்து குறிச்சொற்கள்"</string>
|
||||
<string name="_All_Categories_Z23JSTS">"அனைத்து பகுப்புகள்"</string>
|
||||
<string name="Vietnamese">"வியட்நாமிய"</string>
|
||||
<string name="Turkish">"துருக்கிய"</string>
|
||||
<string name="Thai">"தாய்"</string>
|
||||
<string name="Swedish">"ஸ்வீடிஷ்"</string>
|
||||
<string name="_Sri_Lankan_Z7GfBa">"இலங்கை"</string>
|
||||
<string name="Spanish">"ஸ்பானிஷ்"</string>
|
||||
<string name="Scottish">"ஸ்காட்டிஷ்"</string>
|
||||
<string name="Russian">"ரஷ்ய"</string>
|
||||
<string name="Portuguese">"போர்த்துகீசியம்"</string>
|
||||
<string name="Nigerian">"நைஜீரிய"</string>
|
||||
<string name="Mexican">"மெக்சிகன்"</string>
|
||||
<string name="Korean">"கொரிய"</string>
|
||||
<string name="Kenyan">"கென்ய"</string>
|
||||
<string name="Jewish">"யூத"</string>
|
||||
<string name="Japanese">"ஜப்பானிய"</string>
|
||||
<string name="Jamaican">"ஜமைக்கா"</string>
|
||||
<string name="Italian">"இத்தாலிய"</string>
|
||||
<string name="Irish">"ஐரிஷ்"</string>
|
||||
<string name="Indian">"இந்திய"</string>
|
||||
<string name="Greek">"கிரேக்க"</string>
|
||||
<string name="German">"ஜெர்மன்"</string>
|
||||
<string name="French">"பிரஞ்சு"</string>
|
||||
<string name="Filipino">"பிலிப்பைன்ஸ்"</string>
|
||||
<string name="English">"ஆங்கில"</string>
|
||||
<string name="Egyptian">"எகிப்திய"</string>
|
||||
<string name="Danish">"டேனிஷ்"</string>
|
||||
<string name="Chinese">"சீன"</string>
|
||||
<string name="British">"பிரிட்டிஷ்"</string>
|
||||
<string name="Brazilian">"பிரேசிலிய"</string>
|
||||
<string name="American">"அமெரிக்க"</string>
|
||||
<string name="_All_Cuisines_2hjCp9">"அனைத்து உணவு வகைகள்"</string>
|
||||
<string name="Cuisines">"உணவு வகைகள்"</string>
|
||||
<string name="Cuisine">"உணவு வகை"</string>
|
||||
<string name="_Are_you_sure_you_want_to_remove_ZOnf22">"இதை நிச்சயமாக அகற்ற விரும்புகிறீர்களா"</string>
|
||||
<string name="Units">"அலகுகள்"</string>
|
||||
<string name="_Remove_unit__2x26yq">"அலகை அகற்றவா?"</string>
|
||||
<string name="_Remove_yield_unit__Z1duBWR">"மகசூல் அலகை அகற்றவா?"</string>
|
||||
<string name="_Remove_category__2reaxz">"பகுப்பை அகற்றவா?"</string>
|
||||
<string name="_Remove_cuisine__22ftcL">"உணவு வகையை அகற்றவா?"</string>
|
||||
<string name="_New_unit_1CVEEA">"புதிய அலகு"</string>
|
||||
<string name="_New_cuisine_Zrvs3z">"புதிய உணவு வகை"</string>
|
||||
<string name="Challenging">"சவாலானது"</string>
|
||||
<string name="Moderate">"மிதமானது"</string>
|
||||
<string name="Easy">"எளிது"</string>
|
||||
<string name="_Oldest_first_Z6cq4h">"பழையன முதலில்"</string>
|
||||
<string name="_Newest_first_2Sb3c">"புதியது முதலில்"</string>
|
||||
<string name="_Last_updated_Z2gEbLD">"கடைசியாக புதுப்பிக்கப்பட்டது"</string>
|
||||
<string name="_Difficulty_level_cSL5d">"சிரமநிலை"</string>
|
||||
<string name="Rating">"மதிப்பீடு"</string>
|
||||
<string name="_Slowest_first_hHjY6">"மெதுவானவை முதலில்"</string>
|
||||
<string name="_Quickest_first_Z1CpP7N">"விரைவானவை முதலில்"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_the_filtered_result_1TV6QQ">"உங்கள் தேடல் வடிகட்டப்பட்ட முடிவில் எந்த சமையல் குறிப்புகளுடனும் பொருந்தவில்லை"</string>
|
||||
<string name="_Recipe_not_found_2qGveM">"சமையல் குறிப்பு கிடைக்கவில்லை"</string>
|
||||
<string name="_Reset_successful_YxqWK">"வெற்றிகரமாக மீட்டமைக்கப்பட்டது"</string>
|
||||
<string name="_Reset_units_list_msRS3">"அலகுகள் பட்டியலை மீட்டமை"</string>
|
||||
<string name="_Reset_yield_units_list_ZjouMk">"மகசூல் அலகுகள் பட்டியலை மீட்டமை"</string>
|
||||
<string name="_Reset_categories_list_Z1JmKra">"பகுப்புகள் பட்டியலை மீட்டமை"</string>
|
||||
<string name="_Reset_cuisines_list_1kWL8I">"உணவு வகைகள் பட்டியலை மீட்டமை"</string>
|
||||
<string name="_Resetting_a_list_will_NOT_delete_your_existing_entries_but_only_restores_the_deleted_default_entries__Z28mk0h">"பட்டியலை மீட்டமைப்பது உங்கள் இருக்கும் உள்ளீடுகளை நீக்காது, ஆனால் நீக்கப்பட்ட இயல்புநிலை உள்ளீடுகளை மட்டுமே மீட்டமைக்கும்."</string>
|
||||
<string name="Reset">"மீட்டமை"</string>
|
||||
<string name="_Helps_you_choose_what_to_cook_when_you_can_t_decide_muiMv">"நீங்கள் தீர்மானிக்க முடியாதபோது என்ன சமைக்க வேண்டும் என்பதைத் தேர்வுசெய்ய உதவும்"</string>
|
||||
<string name="_Shake_to_view_random_recipe_ZTK9F2">"சாதனத்தை அசைத்து சீரற்ற சமையல் குறிப்பை காண்க"</string>
|
||||
<string name="Options">"விருப்பங்கள்"</string>
|
||||
<string name="_User_guide_2uDJCF">"பயனர் வழிகாட்டி"</string>
|
||||
<string name="_Privacy_policy_Zb4ht5">"தனியுரிமைக் கொள்கை"</string>
|
||||
<string name="_View_on_GitHub_Z2qOqmx">"கிட்ஹப்பில் காண்க"</string>
|
||||
<string name="Translator">"மொழிபெயர்ப்பாளர்"</string>
|
||||
<string name="Contributors">"பங்களிப்பாளர்கள்"</string>
|
||||
<string name="_Shared_via_EnRecipes__Get_it_on_Play_Store_or_F_Droid__Z2oTOK1">"என்ரெசிபீஸ் வழியாக பகிரப்பட்டது. அதை ப்ளே ஸ்டோர் அல்லது எஃப்-டிரயோடு இருந்து பெறுங்கள்."</string>
|
||||
<string name="_Permission_denied_Z7wlWK">"அனுமதி மறுக்கப்பட்டது"</string>
|
||||
|
@ -12,17 +102,17 @@
|
|||
<string name="_days_ago_2iCYkm">"நாட்களுக்கு முன்பு"</string>
|
||||
<string name="yesterday">"நேற்று"</string>
|
||||
<string name="today">"இன்று"</string>
|
||||
<string name="_You_tried_this_recipe__ZUJOl3">"இந்த செய்முறையை முயற்சித்தீர்கள்:"</string>
|
||||
<string name="_You_tried_this_recipe__ZUJOl3">"இச்சமையல் குறிப்பை முயற்சித்தீர்கள்:"</string>
|
||||
<string name="snacks">"சிற்றிடை உணவு"</string>
|
||||
<string name="dinner">"இரவு உணவு"</string>
|
||||
<string name="lunch">"மதிய உணவு"</string>
|
||||
<string name="breakfast">"காலை உணவு"</string>
|
||||
<string name="_Crop_photo_1VL04J">"படத்தை வெட்டு"</string>
|
||||
<string name="_REPLACE_PHOTO_ZLHhwH">"புகைப்படத்தை மாற்றவும்"</string>
|
||||
<string name="_Recipe_photo_eqm9B">"செய்முறை புகைப்படம்"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_set_recipe_photo__23OnNT">"செய்முறை புகைப்படத்தை அமைக்க என்ரெசிபீஸ்க்கு சேமிப்பு அனுமதி தேவை."</string>
|
||||
<string name="_REPLACE_PHOTO_ZLHhwH">"புகைப்படத்தை மாற்று"</string>
|
||||
<string name="_Recipe_photo_eqm9B">"சமையல் குறிப்பு புகைப்படம்"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_set_recipe_photo__23OnNT">"சமையல் குறிப்பு புகைப்படத்தை அமைக்க என்ரெசிபீஸ்க்கு சேமிப்பு அனுமதி தேவை."</string>
|
||||
<string name="Required">"தேவையான"</string>
|
||||
<string name="_New_category_Weg73">"புதிய வகை"</string>
|
||||
<string name="_New_category_Weg73">"புதிய பகுப்பு"</string>
|
||||
<string name="_New_yield_unit_1Oevd2">"புதிய மகசூல் அலகு"</string>
|
||||
<string name="_Remove_note__2wyMVE">"குறிப்பை அகற்றவா?"</string>
|
||||
<string name="_Remove_combination__1dr2LS">"சேர்க்கையை அகற்றவா?"</string>
|
||||
|
@ -30,18 +120,17 @@
|
|||
<string name="_Remove_ingredient__2puvMO">"பொருளை அகற்றவா?"</string>
|
||||
<string name="_KEEP_EDITING_1o9uy3">"தொடர்ந்து திருத்து"</string>
|
||||
<string name="DISCARD">"நிராகரி"</string>
|
||||
<string name="_Are_you_sure_you_want_to_discard_unsaved_changes_to_this_recipe__Z1G7sVC">"இந்த செய்முறையில் சேமிக்கப்படாத மாற்றங்களை நிராகரிக்க விரும்புகிறீர்களா?"</string>
|
||||
<string name="_Are_you_sure_you_want_to_discard_unsaved_changes_to_this_recipe__Z1G7sVC">"இந்த சமையல் குறிப்பில் சேமிக்கப்படாத மாற்றங்களை நிராகரிக்க விரும்புகிறீர்களா?"</string>
|
||||
<string name="_Unsaved_changes_9fqb4">"சேமிக்கப்படாத மாற்றங்கள்"</string>
|
||||
<string name="_Rename_category_Z1WzCco">"வகையை மறுபெயரிடுங்கள்"</string>
|
||||
<string name="Search">"தேடு"</string>
|
||||
<string name="_Are_you_sure_you_want_to_delete_the_recipe_29DH9w">"இந்த செய்முறையை நீக்க விரும்புகிறீர்களா"</string>
|
||||
<string name="_Are_you_sure_you_want_to_delete_the_recipe_29DH9w">"இந்த சமையல் குறிப்பை நீக்க விரும்புகிறீர்களா"</string>
|
||||
<string name="DELETE">"நீக்கு"</string>
|
||||
<string name="_Delete_recipe__Z2tMYtE">"செய்முறையை நீக்கவா?"</string>
|
||||
<string name="_Delete_recipe__Z2tMYtE">"சமையல் குறிப்பை நீக்கவா?"</string>
|
||||
<string name="_Removed_from_Try_Later_1h5Bkp">"பின்னர் முயற்சிப்பதில் இருந்து நீக்கப்பட்டது"</string>
|
||||
<string name="_Added_to_Try_Later_Z1gaF37">"பின்னர் முயற்சிக்க சேர்க்கப்பட்டது"</string>
|
||||
<string name="_Removed_from_Favourites_Z5k7LR">"பிடித்தவற்றிலிருந்து அகற்றப்பட்டது"</string>
|
||||
<string name="_Added_to_Favourites_2mzllO">"பிடித்தவையில் சேர்க்கப்பட்டது"</string>
|
||||
<string name="_Add_at_least_one_recipe_to_perform_a_backup_17xYaH">"காப்புப்பிரதி செய்ய குறைந்தபட்சம் ஒரு செய்முறையாவது சேர்க்கவும்"</string>
|
||||
<string name="_Add_at_least_one_recipe_to_perform_a_backup_17xYaH">"காப்புப்பிரதி செய்ய குறைந்தபட்சம் ஒரு சமையல் குறிப்பு சேர்க்கவும்"</string>
|
||||
<string name="_EnRecipes_requires_storage_permission_in_order_to_backup_your_data_to_this_device__2cbvIq">"இந்தச் சாதனத்தில் உங்கள் தரவை காப்புப் பிரதி எடுக்க என்ரெசிபீஸ்க்கு சேமிப்பக அனுமதி தேவைப்படுகிறது."</string>
|
||||
<string name="CONTINUE">"தொடர்"</string>
|
||||
<string name="_NOT_NOW_Z1HD7qX">"இப்போது இல்லை"</string>
|
||||
|
@ -55,19 +144,16 @@
|
|||
<string name="_ADD_NEW_Zv8FjM">"புதியனவற்றை சேர்"</string>
|
||||
<string name="Share">"பகிர்"</string>
|
||||
<string name="Overview">"கண்ணோட்டம்"</string>
|
||||
<string name="Recipe">"செய்முறை"</string>
|
||||
<string name="Recipe">"சமையல் குறிப்பு"</string>
|
||||
<string name="Photo">"புகைப்படம்"</string>
|
||||
<string name="min">"நிமிடம்"</string>
|
||||
<string name="hr">"மணி"</string>
|
||||
<string name="_My_Healthy_Recipe_Z1EqB8f">"எனது ஆரோக்கியமான செய்முறை"</string>
|
||||
<string name="_Nothing_here__Add_some_recipes_and_try_again__Z25A7Q">"இங்கு எதுவுமில்லை! சில சமையல் வகைகளைச் சேர்த்து மீண்டும் முயற்சிக்கவும்."</string>
|
||||
<string name="_Select_a_recipe_2lL8x2">"ஒரு செய்முறையைத் தேர்ந்தெடுக்கவும்"</string>
|
||||
<string name="_My_Healthy_Recipe_Z1EqB8f">"எனது ஆரோக்கியமான சமையல் குறிப்பு"</string>
|
||||
<string name="_Nothing_here__Add_some_recipes_and_try_again__Z25A7Q">"இங்கு எதுவுமில்லை! சில சமையல் குறிப்பிப்புகளை சேர்த்து மீண்டும் முயற்சிக்கவும்."</string>
|
||||
<string name="_Select_a_recipe_2lL8x2">"ஒரு சமையல் குறிப்பை தேர்ந்தெடுக்கவும்"</string>
|
||||
<string name="ADD">"சேர்"</string>
|
||||
<string name="REMOVE">"அகற்று"</string>
|
||||
<string name="CANCEL">"ரத்துசெய்"</string>
|
||||
<string name="_Last_modified_Z1yBAS3">"கடைசியாக மாற்றப்பட்டது"</string>
|
||||
<string name="Duration">"நேரம்"</string>
|
||||
<string name="_Natural_order_Z1O8On5">"இயற்கை வரிசை"</string>
|
||||
<string name="_Sort_by_Zq01TF">"வரிசை விதி"</string>
|
||||
<string name="Step">"செயஂமுறை"</string>
|
||||
<string name="Item">"பொருள்"</string>
|
||||
|
@ -86,17 +172,14 @@
|
|||
<string name="_Yield_quantity_ZHx3jw">"மகசூல் அளவு"</string>
|
||||
<string name="_Cooking_time_2w2fEw">"சமைக்கும் நேரம்"</string>
|
||||
<string name="_Preparation_time_15BfxT">"தயாரிப்பு நேரம்"</string>
|
||||
<string name="Category">"வகை"</string>
|
||||
<string name="Category">"பகுப்பு"</string>
|
||||
<string name="Title">"தலைப்பு"</string>
|
||||
<string name="_Edit_recipe_ZPvwDP">"செய்முறையைத் திருத்து"</string>
|
||||
<string name="_New_recipe_Z1Y2YKJ">"புதிய செய்முறை"</string>
|
||||
<string name="_Follow_on_Mastodon_Z1v6e4V">"மஸ்டோடனில் அவரைப் பின்தொடரவும்"</string>
|
||||
<string name="_Follow_on_GitHub_Z1GjptH">"கிட்ஹப்பில் அவரைப் பின்தொடரவும்"</string>
|
||||
<string name="_Vishnu_Raghav_B_1qnRnC">"விஷ்ணு ராகவ் .பா"</string>
|
||||
<string name="Author">"பயன்பாட்டு ஆசிரியர்"</string>
|
||||
<string name="_Edit_recipe_ZPvwDP">"சமையல் குறிப்பை திருத்து"</string>
|
||||
<string name="_New_recipe_Z1Y2YKJ">"புதிய சமையல் குறிப்பு"</string>
|
||||
<string name="_Vishnu_Raghav_B_1qnRnC">"பா. விஷ்ணு ராகவ்"</string>
|
||||
<string name="Author">"ஆக்கியோன்"</string>
|
||||
<string name="_for_reporting_issues__suggestions_and_feedback_Z1JUmyE">"சிக்கல்கள், பரிந்துரைகள் மற்றும் கருத்துக்களைப் புகாரளிக்க"</string>
|
||||
<string name="_Join_the_Telegram_group_ZAXQgc">"டெலிகிராம் குழுவில் சேரவும்"</string>
|
||||
<string name="_View_project_on_GitHub_1hrJ0U">"கிட்ஹப்பில் திட்டத்தைக் காண்க"</string>
|
||||
<string name="Version">"பதிப்பு"</string>
|
||||
<string name="_Supports_full_backups_exported_by_this_app_ZYs4f2">"இந்த பயன்பாட்டின் மூலம் ஏற்றுமதி செய்யப்பட்ட முழு காப்புப்பிரதிகளை ஆதரிக்கும்"</string>
|
||||
<string name="_Import_from_backup_Z28HsC0">"காப்புப்பிரதியிலிருந்து இறக்குமதி செய்க"</string>
|
||||
|
@ -109,12 +192,12 @@
|
|||
<string name="_System_default_Z1jruVS">"கணினி இயல்புநிலை"</string>
|
||||
<string name="_App_language_DzFsk">"பயன்பாட்டு மொழி"</string>
|
||||
<string name="Interface">"இடைமுகம்"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_try_later_list_Z2wWbA1">"உங்கள் தேடல் நீங்கள் முயற்சிக்க வேண்டிய பட்டியலில் உள்ள எந்த சமையல் குறிப்புகளுடன் பொருந்தவில்லைை"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_favourites_1ylvHN">"உங்கள் தேடல் உங்களுக்கு பிடித்தவற்றில் எந்த சமையல் குறிப்புகளுடன் பொருந்தவில்லைை"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_this_category_P7J4V">"உங்கள் தேடல் இந்த வகையில் எந்த சமையல் குறிப்புகளுடன் பொருந்தவில்லை"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_Z1eppHH">"உங்கள் தேடல் எந்த சமையல் குறிப்புகளுக்கும் பொருந்தவில்லை"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_try_later_list_Z2wWbA1">"உங்கள் தேடல் நீங்கள் முயற்சிக்க வேண்டிய பட்டியலில் உள்ள எந்த சமையல் குறிப்புகளுடனும் பொருந்தவில்ல"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_your_favourites_1ylvHN">"உங்கள் தேடல் உங்களுக்கு பிடித்தவற்றில் எந்த சமையல் குறிப்புகளுடனும் பொருந்தவில்லைை"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_this_category_P7J4V">"உங்கள் தேடல் இப்பகுப்பில் எந்த சமையல் குறிப்புகளுடனும் பொருந்தவில்லை"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_Z1eppHH">"உங்கள் தேடல் எந்த சமையல் குறிப்புகளுடனும் பொருந்தவில்லை"</string>
|
||||
<string name="_No_recipes_found_Z125IxD">"எந்த சமையல் குறிப்புகளும் இல்லை"</string>
|
||||
<string name="_Category_looks_empty_ZAK5qU">"இந்த பிரிவில் எந்த சமையல் குறிப்புகளும் இல்லை"</string>
|
||||
<string name="_Category_looks_empty_ZAK5qU">"இந்த பகுப்பில் எந்த சமையல் குறிப்புகளும் இல்லை"</string>
|
||||
<string name="_Recipes_you_mark_as_favourite_will_be_listed_here_Z1iIHgY">"நீங்கள் பிடித்ததாகக் குறிக்கும் சமையல் குறிப்புகள் இங்கே பட்டியலிடப்படும்"</string>
|
||||
<string name="_No_favourites_yet_aPSoG">"இன்னும் பிடித்தவை எதுவும் இல்லை"</string>
|
||||
<string name="_Recipes_you_mark_as_try_later_will_be_listed_here_Z1ITwPV">"முயற்சிக்க வேண்டும் என நீங்கள் குறிக்கும் சமையல் குறிப்புகள் இங்கே பட்டியலிடப்படும்"</string>
|
||||
|
@ -123,7 +206,7 @@
|
|||
<string name="_Use_the_pencil_button_to_add_some_combinations_6NhFS">"சில சேர்க்கைகளைச் சேர்க்க பென்சில் பொத்தானைப் பயன்படுத்தவும்"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_instructions_ZAi0PH">"செய்முறைகளைச் சேர்க்க பென்சில் பொத்தானைப் பயன்படுத்தவும்"</string>
|
||||
<string name="_Use_the_pencil_button_to_add_some_ingredients_Z1xOX8S">"தேவையான பொருட்களைச் சேர்க்க பென்சில் பொத்தானைப் பயன்படுத்தவும்"</string>
|
||||
<string name="_Use_the_plus_button_to_add_one_1h20ms">"ஒரு செய்முறையைச் சேர்க்க பிளஸ் பொத்தானைப் பயன்படுத்தவும்"</string>
|
||||
<string name="_Use_the_plus_button_to_add_one_1h20ms">"ஒரு சமையல் குறிப்பைச் சேர்க்க பிளஸ் பொத்தானைப் பயன்படுத்தவும்"</string>
|
||||
<string name="_Start_adding_your_recipes__rwnVV">"உங்கள் சமையல் குறிப்புகளைச் சேர்க்கத் தொடங்குங்கள்!"</string>
|
||||
<string name="large">"பெரிய"</string>
|
||||
<string name="medium">"நடுத்தர"</string>
|
||||
|
@ -197,9 +280,7 @@
|
|||
<string name="Appetizers">"பசித்தூண்டி"</string>
|
||||
<string name="About">"பற்றி"</string>
|
||||
<string name="Settings">"அமைப்புகள்"</string>
|
||||
<string name="RENAME">"மறுபெயரிடு"</string>
|
||||
<string name="DONE">"முடிந்தது"</string>
|
||||
<string name="Categories">"வகைகள்"</string>
|
||||
<string name="Categories">"பகுப்புகள்"</string>
|
||||
<string name="_Meal_Planner_2aq4oj">"உணவுத் திட்டம்"</string>
|
||||
<string name="Favourites">"பிடித்தவை"</string>
|
||||
<string name="_Try_Later_If7PG">"பின்னர் முயற்சிக்க"</string>
|
||||
|
|
|
@ -1,6 +1,96 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="_Translations__1IFwAu">"Translations:"</string>
|
||||
<string name="_Invalid_file__Z2bRAst">"Invalid file:"</string>
|
||||
<string name="_Backup_file_has_been_modified_externally__Wjiqq">"Backup file has been modified externally."</string>
|
||||
<string name="_Backup_file_seems_empty__Zd7qfR">"Backup file seems empty."</string>
|
||||
<string name="_Backup_file_is_incorrect_or_corrupt__1jXb8N">"Backup file is incorrect or corrupt."</string>
|
||||
<string name="_Import_failed_Z1dbs6t">"Import failed"</string>
|
||||
<string name="_Remove_recipe_from_snacks__MNnCU">"Remove recipe from snacks?"</string>
|
||||
<string name="_Remove_recipe_from_dinner__8sWfY">"Remove recipe from dinner?"</string>
|
||||
<string name="_Remove_recipe_from_lunch__Zwpsg2">"Remove recipe from lunch?"</string>
|
||||
<string name="_Remove_recipe_from_breakfast__ZvYyFG">"Remove recipe from breakfast?"</string>
|
||||
<string name="_Untitled_Recipe_Zv0UxP">"Untitled Recipe"</string>
|
||||
<string name="_Star_rating_Z11p4Kw">"Star rating"</string>
|
||||
<string name="Created">"Created"</string>
|
||||
<string name="_Filtered_result_1AMEXe">"Filtered result"</string>
|
||||
<string name="OK">"OK"</string>
|
||||
<string name="_recipes_updated_Z2arFrR">"recipes updated"</string>
|
||||
<string name="_recipes_already_exists_2jqW2s">"recipes already exists"</string>
|
||||
<string name="_recipes_imported_1NGeRw">"recipes imported"</string>
|
||||
<string name="_recipes_found_ZDdUgV">"recipes found"</string>
|
||||
<string name="_Import_summary_244SkL">"Import summary"</string>
|
||||
<string name="_separate_with_spaces_ZHKOfw">"separate with spaces"</string>
|
||||
<string name="Tags">"Tags"</string>
|
||||
<string name="_No_tags_available_Z1C5GqD">"No tags available"</string>
|
||||
<string name="_All_Tags_28gMyY">"All Tags"</string>
|
||||
<string name="_All_Categories_Z23JSTS">"All Categories"</string>
|
||||
<string name="Vietnamese">"Vietnamese"</string>
|
||||
<string name="Turkish">"Turkish"</string>
|
||||
<string name="Thai">"Thai"</string>
|
||||
<string name="Swedish">"Swedish"</string>
|
||||
<string name="_Sri_Lankan_Z7GfBa">"Sri Lankan"</string>
|
||||
<string name="Spanish">"Spanish"</string>
|
||||
<string name="Scottish">"Scottish"</string>
|
||||
<string name="Russian">"Russian"</string>
|
||||
<string name="Portuguese">"Portuguese"</string>
|
||||
<string name="Nigerian">"Nigerian"</string>
|
||||
<string name="Mexican">"Mexican"</string>
|
||||
<string name="Korean">"Korean"</string>
|
||||
<string name="Kenyan">"Kenyan"</string>
|
||||
<string name="Jewish">"Jewish"</string>
|
||||
<string name="Japanese">"Japanese"</string>
|
||||
<string name="Jamaican">"Jamaican"</string>
|
||||
<string name="Italian">"Italian"</string>
|
||||
<string name="Irish">"Irish"</string>
|
||||
<string name="Indian">"Indian"</string>
|
||||
<string name="Greek">"Greek"</string>
|
||||
<string name="German">"German"</string>
|
||||
<string name="French">"French"</string>
|
||||
<string name="Filipino">"Filipino"</string>
|
||||
<string name="English">"English"</string>
|
||||
<string name="Egyptian">"Egyptian"</string>
|
||||
<string name="Danish">"Danish"</string>
|
||||
<string name="Chinese">"Chinese"</string>
|
||||
<string name="British">"British"</string>
|
||||
<string name="Brazilian">"Brazilian"</string>
|
||||
<string name="American">"American"</string>
|
||||
<string name="_All_Cuisines_2hjCp9">"All Cuisines"</string>
|
||||
<string name="Cuisines">"Cuisines"</string>
|
||||
<string name="Cuisine">"Cuisine"</string>
|
||||
<string name="_Are_you_sure_you_want_to_remove_ZOnf22">"Are you sure you want to remove"</string>
|
||||
<string name="Units">"Units"</string>
|
||||
<string name="_Remove_unit__2x26yq">"Remove unit?"</string>
|
||||
<string name="_Remove_yield_unit__Z1duBWR">"Remove yield unit?"</string>
|
||||
<string name="_Remove_category__2reaxz">"Remove category?"</string>
|
||||
<string name="_Remove_cuisine__22ftcL">"Remove cuisine?"</string>
|
||||
<string name="_New_unit_1CVEEA">"New unit"</string>
|
||||
<string name="_New_cuisine_Zrvs3z">"New cuisine"</string>
|
||||
<string name="Challenging">"Challenging"</string>
|
||||
<string name="Moderate">"Moderate"</string>
|
||||
<string name="Easy">"Easy"</string>
|
||||
<string name="_Oldest_first_Z6cq4h">"Oldest first"</string>
|
||||
<string name="_Newest_first_2Sb3c">"Newest first"</string>
|
||||
<string name="_Last_updated_Z2gEbLD">"Last updated"</string>
|
||||
<string name="_Difficulty_level_cSL5d">"Difficulty level"</string>
|
||||
<string name="Rating">"Rating"</string>
|
||||
<string name="_Slowest_first_hHjY6">"Slowest first"</string>
|
||||
<string name="_Quickest_first_Z1CpP7N">"Quickest first"</string>
|
||||
<string name="_Your_search_did_not_match_any_recipes_in_the_filtered_result_1TV6QQ">"Your search did not match any recipes in the filtered result"</string>
|
||||
<string name="_Recipe_not_found_2qGveM">"Recipe not found"</string>
|
||||
<string name="_Reset_successful_YxqWK">"Reset successful"</string>
|
||||
<string name="_Reset_units_list_msRS3">"Reset units list"</string>
|
||||
<string name="_Reset_yield_units_list_ZjouMk">"Reset yield units list"</string>
|
||||
<string name="_Reset_categories_list_Z1JmKra">"Reset categories list"</string>
|
||||
<string name="_Reset_cuisines_list_1kWL8I">"Reset cuisines list"</string>
|
||||
<string name="_Resetting_a_list_will_NOT_delete_your_existing_entries_but_only_restores_the_deleted_default_entries__Z28mk0h">"Resetting a list will NOT delete your existing entries but only restores the deleted default entries."</string>
|
||||
<string name="Reset">"Reset"</string>
|
||||
<string name="_Helps_you_choose_what_to_cook_when_you_can_t_decide_muiMv">"Helps you choose what to cook when you can\'t decide"</string>
|
||||
<string name="_Shake_to_view_random_recipe_ZTK9F2">"Shake to view random recipe"</string>
|
||||
<string name="Options">"Options"</string>
|
||||
<string name="_User_guide_2uDJCF">"User guide"</string>
|
||||
<string name="_Privacy_policy_Zb4ht5">"Privacy policy"</string>
|
||||
<string name="_View_on_GitHub_Z2qOqmx">"View on GitHub"</string>
|
||||
<string name="Translator">"Translator"</string>
|
||||
<string name="Contributors">"Contributors"</string>
|
||||
<string name="_Shared_via_EnRecipes__Get_it_on_Play_Store_or_F_Droid__Z2oTOK1">"Shared via EnRecipes. Get it on Play Store or F-Droid."</string>
|
||||
<string name="_Permission_denied_Z7wlWK">"Permission denied"</string>
|
||||
|
@ -32,7 +122,6 @@
|
|||
<string name="DISCARD">"DISCARD"</string>
|
||||
<string name="_Are_you_sure_you_want_to_discard_unsaved_changes_to_this_recipe__Z1G7sVC">"Are you sure you want to discard unsaved changes to this recipe?"</string>
|
||||
<string name="_Unsaved_changes_9fqb4">"Unsaved changes"</string>
|
||||
<string name="_Rename_category_Z1WzCco">"Rename category"</string>
|
||||
<string name="Search">"Search"</string>
|
||||
<string name="_Are_you_sure_you_want_to_delete_the_recipe_29DH9w">"Are you sure you want to delete the recipe"</string>
|
||||
<string name="DELETE">"DELETE"</string>
|
||||
|
@ -65,9 +154,6 @@
|
|||
<string name="ADD">"ADD"</string>
|
||||
<string name="REMOVE">"REMOVE"</string>
|
||||
<string name="CANCEL">"CANCEL"</string>
|
||||
<string name="_Last_modified_Z1yBAS3">"Last modified"</string>
|
||||
<string name="Duration">"Duration"</string>
|
||||
<string name="_Natural_order_Z1O8On5">"Natural order"</string>
|
||||
<string name="_Sort_by_Zq01TF">"Sort by"</string>
|
||||
<string name="Step">"Step"</string>
|
||||
<string name="Item">"Item"</string>
|
||||
|
@ -90,13 +176,10 @@
|
|||
<string name="Title">"Title"</string>
|
||||
<string name="_Edit_recipe_ZPvwDP">"Edit recipe"</string>
|
||||
<string name="_New_recipe_Z1Y2YKJ">"New recipe"</string>
|
||||
<string name="_Follow_on_Mastodon_Z1v6e4V">"Follow on Mastodon"</string>
|
||||
<string name="_Follow_on_GitHub_Z1GjptH">"Follow on GitHub"</string>
|
||||
<string name="_Vishnu_Raghav_B_1qnRnC">"Vishnu Raghav B"</string>
|
||||
<string name="Author">"Author"</string>
|
||||
<string name="_for_reporting_issues__suggestions_and_feedback_Z1JUmyE">"for reporting issues, suggestions and feedback"</string>
|
||||
<string name="_Join_the_Telegram_group_ZAXQgc">"Join the Telegram group"</string>
|
||||
<string name="_View_project_on_GitHub_1hrJ0U">"View project on GitHub"</string>
|
||||
<string name="Version">"Version"</string>
|
||||
<string name="_Supports_full_backups_exported_by_this_app_ZYs4f2">"Supports full backups exported by this app"</string>
|
||||
<string name="_Import_from_backup_Z28HsC0">"Import from backup"</string>
|
||||
|
@ -197,8 +280,6 @@
|
|||
<string name="Appetizers">"Appetizers"</string>
|
||||
<string name="About">"About"</string>
|
||||
<string name="Settings">"Settings"</string>
|
||||
<string name="RENAME">"RENAME"</string>
|
||||
<string name="DONE">"DONE"</string>
|
||||
<string name="Categories">"Categories"</string>
|
||||
<string name="_Meal_Planner_2aq4oj">"Meal Planner"</string>
|
||||
<string name="Favourites">"Favourites"</string>
|
||||
|
|
881
app/store.js
881
app/store.js
|
@ -1,33 +1,167 @@
|
|||
import Vue from "vue"
|
||||
import Vuex from "vuex"
|
||||
import {
|
||||
Couchbase
|
||||
} from "nativescript-couchbase-plugin"
|
||||
import {
|
||||
getFileAccess
|
||||
} from "@nativescript/core"
|
||||
const EnRecipesDB = new Couchbase("EnRecipes")
|
||||
const userCategoriesDB = new Couchbase("userCategories")
|
||||
const userYieldUnitsDB = new Couchbase("userYieldUnits")
|
||||
const mealPlansDB = new Couchbase("mealPlans")
|
||||
Vue.use(Vuex)
|
||||
const defaultCategories = ["Appetizers", "Barbecue", "Beverages", "Breads", "Breakfast", "Desserts", "Dinner", "Drinks", "Healthy", "Lunch", "Main dishes", "Meat", "Noodles", "Pasta", "Poultry", "Rice", "Salads", "Sauces", "Seafood", "Side dishes", "Snacks", "Soups", "Undefined", "Vegan", "Vegetarian", ]
|
||||
const defaultYieldUnits = ["Serving", "Piece", "Teaspoon", "Tablespoon", "Fluid Ounce", "Ounce", "Pound", "Gram", "Kilogram", "Cup", "Gallon", "Millilitre", "Litre", "Roll", "Patty", "Loaf", ]
|
||||
import Vue from "vue";
|
||||
import Vuex from "vuex";
|
||||
Vue.use(Vuex);
|
||||
import {Couchbase} from "nativescript-couchbase-plugin";
|
||||
import {getFileAccess, File, ApplicationSettings} from "@nativescript/core";
|
||||
const EnRecipesDB = new Couchbase("EnRecipes");
|
||||
const userCuisinesDB = new Couchbase("userCuisines");
|
||||
const userCategoriesDB = new Couchbase("userCategories");
|
||||
const userYieldUnitsDB = new Couchbase("userYieldUnits");
|
||||
const userUnitsDB = new Couchbase("userUnits");
|
||||
const mealPlansDB = new Couchbase("mealPlans");
|
||||
const defaultCuisines = [
|
||||
"American",
|
||||
"Brazilian",
|
||||
"British",
|
||||
"Chinese",
|
||||
"Danish",
|
||||
"Egyptian",
|
||||
"Filipino",
|
||||
"French",
|
||||
"German",
|
||||
"Greek",
|
||||
"Indian",
|
||||
"Irish",
|
||||
"Italian",
|
||||
"Jamaican",
|
||||
"Japanese",
|
||||
"Jewish",
|
||||
"Kenyan",
|
||||
"Korean",
|
||||
"Mexican",
|
||||
"Nigerian",
|
||||
"Portuguese",
|
||||
"Russian",
|
||||
"Scottish",
|
||||
"Spanish",
|
||||
"Sri Lankan",
|
||||
"Swedish",
|
||||
"Thai",
|
||||
"Turkish",
|
||||
"Vietnamese"
|
||||
];
|
||||
const defaultCategories = [
|
||||
"Appetizers",
|
||||
"Barbecue",
|
||||
"Beverages",
|
||||
"Breads",
|
||||
"Breakfast",
|
||||
"Desserts",
|
||||
"Dinner",
|
||||
"Drinks",
|
||||
"Healthy",
|
||||
"Lunch",
|
||||
"Main dishes",
|
||||
"Meat",
|
||||
"Noodles",
|
||||
"Pasta",
|
||||
"Poultry",
|
||||
"Rice",
|
||||
"Salads",
|
||||
"Sauces",
|
||||
"Seafood",
|
||||
"Side dishes",
|
||||
"Snacks",
|
||||
"Soups",
|
||||
"Undefined",
|
||||
"Vegan",
|
||||
"Vegetarian"
|
||||
];
|
||||
const defaultYieldUnits = [
|
||||
"Serving",
|
||||
"Piece",
|
||||
"Teaspoon",
|
||||
"Tablespoon",
|
||||
"Fluid Ounce",
|
||||
"Ounce",
|
||||
"Pound",
|
||||
"Gram",
|
||||
"Kilogram",
|
||||
"Cup",
|
||||
"Gallon",
|
||||
"Millilitre",
|
||||
"Litre",
|
||||
"Roll",
|
||||
"Patty",
|
||||
"Loaf"
|
||||
];
|
||||
const defaultUnits = [
|
||||
"unit",
|
||||
"tsp",
|
||||
"dsp",
|
||||
"tbsp",
|
||||
"fl oz",
|
||||
"cup",
|
||||
"pt",
|
||||
"qt",
|
||||
"gal",
|
||||
"ml",
|
||||
"l",
|
||||
"oz",
|
||||
"lb",
|
||||
"mg",
|
||||
"g",
|
||||
"kg",
|
||||
"cm",
|
||||
"in",
|
||||
"leaf",
|
||||
"clove",
|
||||
"piece",
|
||||
"pinch",
|
||||
"drop",
|
||||
"dozen",
|
||||
"stick",
|
||||
"small",
|
||||
"medium",
|
||||
"large"
|
||||
];
|
||||
const listItems = {
|
||||
cuisines: {
|
||||
db: userCuisinesDB,
|
||||
key: "userCuisines",
|
||||
stateName: "cuisines",
|
||||
sort: true,
|
||||
defaultItems: defaultCuisines
|
||||
},
|
||||
categories: {
|
||||
db: userCategoriesDB,
|
||||
key: "userCategories",
|
||||
stateName: "categories",
|
||||
sort: true,
|
||||
defaultItems: defaultCategories
|
||||
},
|
||||
yieldUnits: {
|
||||
db: userYieldUnitsDB,
|
||||
key: "userYieldUnits",
|
||||
stateName: "yieldUnits",
|
||||
sort: false,
|
||||
defaultItems: defaultYieldUnits
|
||||
},
|
||||
units: {
|
||||
db: userUnitsDB,
|
||||
key: "userUnits",
|
||||
stateName: "units",
|
||||
sort: false,
|
||||
defaultItems: defaultUnits
|
||||
}
|
||||
};
|
||||
export default new Vuex.Store({
|
||||
state: {
|
||||
recipes: [],
|
||||
cuisines: [],
|
||||
categories: [],
|
||||
userCategories: [],
|
||||
units: ["unit", "tsp", "dsp", "tbsp", "fl oz", "cup", "pt", "qt", "gal", "ml", "l", "oz", "lb", "mg", "g", "kg", "cm", "in", "leaf", "clove", "piece", "pinch", "drop", "dozen", "stick", "small", "medium", "large", ],
|
||||
yieldUnits: [],
|
||||
userYieldUnits: [],
|
||||
units: [],
|
||||
mealPlans: [],
|
||||
icon: {
|
||||
home: "\ued3b",
|
||||
heart: "\ued36",
|
||||
heartOutline: "\uea6c",
|
||||
label: "\ued51",
|
||||
labelOutline: "\uea8b",
|
||||
heartLine: "\uea6c",
|
||||
cuisine: "\ueb3e",
|
||||
category: "\uec7c",
|
||||
categoryLine: "\ue99c",
|
||||
tag: "\uee12",
|
||||
tagLine: "\ueb97",
|
||||
cog: "\ueca6",
|
||||
info: "\ued49",
|
||||
menu: "\ueac1",
|
||||
|
@ -49,9 +183,9 @@ export default new Vuex.Store({
|
|||
detail: "\ue9f9",
|
||||
user: "\uee33",
|
||||
trash: "\uee26",
|
||||
donate: "\ueb4f",
|
||||
donate: "\uece2",
|
||||
trylater: "\uec31",
|
||||
trylaterOutline: "\ue94a",
|
||||
trylaterLine: "\ue94a",
|
||||
note: "\ueb04",
|
||||
copy: "\ue9e6",
|
||||
check: "\ue9a4",
|
||||
|
@ -66,397 +200,448 @@ export default new Vuex.Store({
|
|||
calendar: "\uec55",
|
||||
today: "\ue97c",
|
||||
globe: "\uea5a",
|
||||
lock: "\ued61",
|
||||
github: "\uee8b",
|
||||
gitlab: "\uee8c",
|
||||
shuffle: "\ueb6b",
|
||||
reset: "\ueb3d",
|
||||
emptyCart: "\ue999",
|
||||
cart: "\uec77",
|
||||
meter: "\ueb96",
|
||||
star: "\uee0a",
|
||||
starLine: "\ueb83",
|
||||
compass: "\uecb4",
|
||||
show: "\uedfd"
|
||||
},
|
||||
currentComponent: "EnRecipes",
|
||||
language: [{
|
||||
locale: 'en',
|
||||
title: 'English'
|
||||
}, {
|
||||
locale: 'de',
|
||||
title: 'Deutsch'
|
||||
}, {
|
||||
locale: 'ta',
|
||||
title: 'தமிழ்'
|
||||
}, ]
|
||||
sortType: "Oldest first",
|
||||
language: [
|
||||
{
|
||||
locale: "da",
|
||||
title: "Dansk"
|
||||
}, {
|
||||
locale: "de",
|
||||
title: "Deutsch"
|
||||
}, {
|
||||
locale: "en",
|
||||
title: "English"
|
||||
}, {
|
||||
locale: "es",
|
||||
title: "Español"
|
||||
}, {
|
||||
locale: "nl",
|
||||
title: "Nederlands"
|
||||
}, {
|
||||
locale: "pt",
|
||||
title: "Português"
|
||||
}, {
|
||||
locale: "ru",
|
||||
title: "Русский"
|
||||
}, {
|
||||
locale: "ta",
|
||||
title: "தமிழ்"
|
||||
}
|
||||
],
|
||||
shakeEnabled: true,
|
||||
importSummary: {
|
||||
found: 0,
|
||||
imported: 0,
|
||||
updated: 0
|
||||
}
|
||||
},
|
||||
mutations: {
|
||||
setSortType(state, sortType) {
|
||||
state.sortType = sortType
|
||||
},
|
||||
initializeRecipes(state) {
|
||||
EnRecipesDB.query({
|
||||
select: []
|
||||
}).forEach((recipe) => {
|
||||
state.recipes.push(recipe)
|
||||
})
|
||||
EnRecipesDB.query({select: []}).forEach(r => {
|
||||
if (r.timeRequired) {
|
||||
r.prepTime = "00:00";
|
||||
r.cookTime = r.timeRequired;
|
||||
delete r.timeRequired;
|
||||
}
|
||||
if (!r.hasOwnProperty("cuisine"))
|
||||
r.cuisine = "Undefined"
|
||||
if (!r.hasOwnProperty("tags"))
|
||||
r.tags = []
|
||||
if (!r.hasOwnProperty("difficulty"))
|
||||
r.difficulty = "Easy"
|
||||
if (!r.hasOwnProperty("rating"))
|
||||
r.rating = 0
|
||||
if (!r.hasOwnProperty("created"))
|
||||
r.created = r.lastModified
|
||||
state.recipes.push(r);
|
||||
});
|
||||
state.shakeEnabled = ApplicationSettings.getBoolean("shakeEnabled", true)
|
||||
state.sortType = ApplicationSettings.getString("sortType", "Oldest first")
|
||||
},
|
||||
initializeCategories(state) {
|
||||
let isCategoriesStored = userCategoriesDB.query({
|
||||
select: []
|
||||
}).length
|
||||
if (isCategoriesStored) {
|
||||
state.userCategories = userCategoriesDB.getDocument("userCategories").userCategories
|
||||
let categoriesWithRecipes = state.recipes.map((e) => e.category)
|
||||
state.userCategories = state.userCategories.filter((e) => categoriesWithRecipes.includes(e))
|
||||
} else {
|
||||
userCategoriesDB.createDocument({
|
||||
userCategories: []
|
||||
}, "userCategories")
|
||||
importRecipes(state, recipes) {
|
||||
let localRecipesIDs,
|
||||
partition
|
||||
let imported = 0
|
||||
let updated = 0
|
||||
function getUpdatedData(data) {
|
||||
return data.map(recipe => {
|
||||
let r = Object.assign({}, recipe);
|
||||
if (r.timeRequired) {
|
||||
r.prepTime = "00:00";
|
||||
r.cookTime = r.timeRequired;
|
||||
delete r.timeRequired;
|
||||
}
|
||||
if (!r.hasOwnProperty("cuisine"))
|
||||
r.cuisine = "Undefined"
|
||||
if (!r.hasOwnProperty("tags"))
|
||||
r.tags = []
|
||||
if (!r.hasOwnProperty("difficulty"))
|
||||
r.difficulty = "Easy"
|
||||
if (!r.hasOwnProperty("rating"))
|
||||
r.rating = 0
|
||||
if (!r.hasOwnProperty("created"))
|
||||
r.created = r.lastModified
|
||||
return r;
|
||||
});
|
||||
}
|
||||
state.categories = [...defaultCategories, ...state.userCategories]
|
||||
state.categories.sort()
|
||||
function createDocuments(data) {
|
||||
data = getUpdatedData(data);
|
||||
state.recipes = [
|
||||
...state.recipes,
|
||||
...data
|
||||
];
|
||||
data.forEach(recipe => {
|
||||
imported++
|
||||
EnRecipesDB.createDocument(recipe, recipe.id);
|
||||
});
|
||||
}
|
||||
function updateDocuments(data) {
|
||||
data = getUpdatedData(data);
|
||||
data.forEach(recipe => {
|
||||
let recipeIndex = state.recipes.map((e, i) => {
|
||||
let d1 = new Date(e.lastModified).getTime();
|
||||
let d2 = new Date(recipe.lastModified).getTime();
|
||||
return e.id === recipe.id && d1 < d2
|
||||
? i
|
||||
: -1;
|
||||
}).filter(e => e >= 0)[0];
|
||||
if (recipeIndex >= 0) {
|
||||
updated++
|
||||
Object.assign(state.recipes[recipeIndex], recipe);
|
||||
EnRecipesDB.updateDocument(recipe.id, recipe);
|
||||
}
|
||||
});
|
||||
}
|
||||
if (state.recipes.length) {
|
||||
localRecipesIDs = state.recipes.map(e => e.id);
|
||||
partition = recipes.reduce((result, recipe, i) => {
|
||||
localRecipesIDs.indexOf(recipe.id) < 0
|
||||
? result[0].push(recipe) // create candidates
|
||||
: result[1].push(recipe); // update candidates
|
||||
return result;
|
||||
}, [[], []]);
|
||||
if (partition[0].length)
|
||||
createDocuments(partition[0]);
|
||||
if (partition[1].length)
|
||||
updateDocuments(partition[1]);
|
||||
}
|
||||
else {
|
||||
createDocuments(recipes);
|
||||
}
|
||||
state.importSummary.found = recipes.length
|
||||
state.importSummary.imported = imported
|
||||
state.importSummary.updated = updated
|
||||
},
|
||||
initializeYieldUnits(state) {
|
||||
let isYieldUnitsStored = userYieldUnitsDB.query({
|
||||
select: []
|
||||
}).length
|
||||
if (isYieldUnitsStored) {
|
||||
state.userYieldUnits = userYieldUnitsDB.getDocument("userYieldUnits").userYieldUnits
|
||||
let yieldUnitsWithRecipes = state.recipes.map((e) => e.yield.unit)
|
||||
state.userYieldUnits = state.userYieldUnits.filter((e) => yieldUnitsWithRecipes.includes(e))
|
||||
} else {
|
||||
userYieldUnitsDB.createDocument({
|
||||
userYieldUnits: []
|
||||
}, "userYieldUnits")
|
||||
addRecipe(state, {id, recipe}) {
|
||||
state.recipes.push(recipe);
|
||||
EnRecipesDB.createDocument(recipe, id);
|
||||
},
|
||||
overwriteRecipe(state, {id, recipe}) {
|
||||
let index = state.recipes.indexOf(state.recipes.filter(e => e.id === id)[0]);
|
||||
Object.assign(state.recipes[index], recipe);
|
||||
EnRecipesDB.updateDocument(id, recipe);
|
||||
},
|
||||
deleteRecipe(state, {index, id}) {
|
||||
getFileAccess().deleteFile(state.recipes[index].imageSrc);
|
||||
state.recipes.splice(index, 1);
|
||||
EnRecipesDB.deleteDocument(id);
|
||||
state.recipes.forEach((e, i) => {
|
||||
if (e.combinations.includes(id)) {
|
||||
state.recipes[i].combinations.splice(e.combinations.indexOf(id), 1);
|
||||
EnRecipesDB.updateDocument(state.recipes[i].id, state.recipes[i]);
|
||||
}
|
||||
});
|
||||
},
|
||||
initializeListItems(state) {
|
||||
function initialize(listName) {
|
||||
let userItems;
|
||||
let db = listItems[listName].db;
|
||||
let key = listItems[listName].key;
|
||||
let stateName = listItems[listName].stateName;
|
||||
let defaultItems = listItems[listName].defaultItems;
|
||||
if (!state[stateName].length) {
|
||||
let isStored = db.query({select: []}).length;
|
||||
if (isStored) {
|
||||
userItems = db.getDocument(key)[key];
|
||||
if (userItems.some(e => defaultItems.includes(e)))
|
||||
state[stateName] = userItems;
|
||||
else
|
||||
state[stateName] = [
|
||||
...defaultItems,
|
||||
...userItems
|
||||
];
|
||||
}
|
||||
else {
|
||||
if (listItems[listName].sort) {
|
||||
state[stateName].sort();
|
||||
}
|
||||
state[stateName] = defaultItems;
|
||||
db.createDocument({
|
||||
[key]: []
|
||||
}, key);
|
||||
}
|
||||
}
|
||||
}["cuisines", "categories", "yieldUnits", "units"].forEach(item => {
|
||||
initialize(item);
|
||||
});
|
||||
},
|
||||
importListItems(state, {data, listName}) {
|
||||
let db = listItems[listName].db;
|
||||
let key = listItems[listName].key;
|
||||
let stateName = listItems[listName].stateName;
|
||||
let items = new Set([
|
||||
...state[stateName],
|
||||
...data
|
||||
]);
|
||||
state[stateName] = [...items];
|
||||
if (listItems[listName].sort)
|
||||
state[stateName].sort();
|
||||
db.updateDocument(key, {[key]: state[stateName]});
|
||||
},
|
||||
addListItem(state, {item, listName}) {
|
||||
console.log(item, listName);
|
||||
let db = listItems[listName].db;
|
||||
let key = listItems[listName].key;
|
||||
let stateName = listItems[listName].stateName;
|
||||
let lowercase = state[stateName].map(e => e.toLowerCase());
|
||||
if (lowercase.indexOf(item.toLowerCase()) == -1) {
|
||||
state[stateName].push(item);
|
||||
db.updateDocument(key, {[key]: state[stateName]});
|
||||
if (listItems[listName].sort)
|
||||
state[stateName].sort();
|
||||
}
|
||||
},
|
||||
removeListItem(state, {item, listName}) {
|
||||
let db = listItems[listName].db;
|
||||
let key = listItems[listName].key;
|
||||
let stateName = listItems[listName].stateName;
|
||||
let index = state[stateName].indexOf(item);
|
||||
state[stateName].splice(index, 1);
|
||||
db.updateDocument(key, {[key]: state[stateName]});
|
||||
if (listItems[listName].sort)
|
||||
state[stateName].sort();
|
||||
}
|
||||
,
|
||||
resetListItems(state, listName) {
|
||||
let stateName = listItems[listName].stateName;
|
||||
let defaultItems = listItems[listName].defaultItems;
|
||||
let items = new Set([
|
||||
...defaultItems,
|
||||
...state[listName]
|
||||
]);
|
||||
state[listName] = [...items];
|
||||
if (listItems[listName].sort) {
|
||||
state[stateName].sort();
|
||||
}
|
||||
state.yieldUnits = [...defaultYieldUnits, ...state.userYieldUnits]
|
||||
},
|
||||
initializeMealPlans(state) {
|
||||
let isMealPlansDBStored = mealPlansDB.query({
|
||||
select: []
|
||||
}).length
|
||||
let isMealPlansDBStored = mealPlansDB.query({select: []}).length;
|
||||
if (isMealPlansDBStored) {
|
||||
state.mealPlans = mealPlansDB.getDocument("mealPlans").mealPlans
|
||||
state.mealPlans = mealPlansDB.getDocument("mealPlans").mealPlans;
|
||||
} else {
|
||||
mealPlansDB.createDocument({
|
||||
mealPlans: []
|
||||
}, "mealPlans")
|
||||
}, "mealPlans");
|
||||
}
|
||||
},
|
||||
importRecipes(state, recipes) {
|
||||
let localRecipesIDs, partition
|
||||
if (state.recipes.length) {
|
||||
localRecipesIDs = state.recipes.map((e) => e.id)
|
||||
partition = recipes.reduce(
|
||||
(result, recipe, i) => {
|
||||
localRecipesIDs.indexOf(recipe.id) < 0 ? result[0].push(recipe) // create candidates
|
||||
: result[1].push(recipe) // update candidates
|
||||
return result
|
||||
},
|
||||
[
|
||||
[],
|
||||
[]
|
||||
])
|
||||
if (partition[0].length) createDocuments(partition[0])
|
||||
if (partition[1].length) updateDocuments(partition[1])
|
||||
} else {
|
||||
createDocuments(recipes)
|
||||
}
|
||||
|
||||
function getUpdatedData(data) {
|
||||
return data.map((recipe) => {
|
||||
let r = Object.assign({}, recipe)
|
||||
if (r.timeRequired) {
|
||||
r.prepTime = "00:00"
|
||||
r.cookTime = r.timeRequired
|
||||
delete r.timeRequired
|
||||
}
|
||||
return r
|
||||
})
|
||||
}
|
||||
|
||||
function createDocuments(data) {
|
||||
data = getUpdatedData(data)
|
||||
state.recipes = [...state.recipes, ...data]
|
||||
data.forEach((recipe) => {
|
||||
EnRecipesDB.createDocument(recipe, recipe.id)
|
||||
})
|
||||
}
|
||||
|
||||
function updateDocuments(data) {
|
||||
data = getUpdatedData(data)
|
||||
data.forEach((recipe) => {
|
||||
let recipeIndex = state.recipes.map((e, i) => {
|
||||
let d1 = new Date(e.lastModified).getTime()
|
||||
let d2 = new Date(recipe.lastModified).getTime()
|
||||
return e.id === recipe.id && d1 < d2 ? i : -1
|
||||
}).filter((e) => e >= 0)[0]
|
||||
if (recipeIndex >= 0) {
|
||||
Object.assign(state.recipes[recipeIndex], recipe)
|
||||
EnRecipesDB.updateDocument(recipe.id, recipe)
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
importCategories(state, categories) {
|
||||
state.userCategories = new Set([...state.userCategories, ...categories])
|
||||
userCategoriesDB.updateDocument("userCategories", {
|
||||
userCategories: [...state.userCategories],
|
||||
})
|
||||
state.categories = [...defaultCategories, ...state.userCategories]
|
||||
state.categories.sort()
|
||||
},
|
||||
importYieldUnits(state, yieldUnits) {
|
||||
state.userYieldUnits = new Set([...state.userYieldUnits, ...yieldUnits])
|
||||
userYieldUnitsDB.updateDocument("userYieldUnits", {
|
||||
userYieldUnits: [...state.userYieldUnits],
|
||||
})
|
||||
state.yieldUnits = [...defaultYieldUnits, ...state.userYieldUnits]
|
||||
},
|
||||
importMealPlans(state, mealPlans) {
|
||||
let newMealPlans = mealPlans.filter(
|
||||
(e) => !state.mealPlans.some(
|
||||
(f) => f.title === e.title && f.startDate === e.startDate))
|
||||
state.mealPlans = [...state.mealPlans, ...newMealPlans]
|
||||
let newMealPlans = mealPlans.filter(e => !state.mealPlans.some(f => f.title === e.title && f.startDate === e.startDate));
|
||||
state.mealPlans = [
|
||||
...state.mealPlans,
|
||||
...newMealPlans
|
||||
];
|
||||
mealPlansDB.updateDocument("mealPlans", {mealPlans: state.mealPlans});
|
||||
},
|
||||
addMealPlan(state, {event, eventColor}) {
|
||||
state.mealPlans.push({title: event.title, startDate: event.startDate, endDate: event.endDate, eventColor});
|
||||
mealPlansDB.updateDocument("mealPlans", {
|
||||
mealPlans: [...state.mealPlans],
|
||||
})
|
||||
mealPlans: [...state.mealPlans]
|
||||
});
|
||||
},
|
||||
addRecipe(state, {
|
||||
id,
|
||||
recipe
|
||||
}) {
|
||||
state.recipes.push(recipe)
|
||||
EnRecipesDB.createDocument(recipe, id)
|
||||
},
|
||||
addCategory(state, category) {
|
||||
let lowercase = state.categories.map((e) => e.toLowerCase())
|
||||
if (lowercase.indexOf(category.toLowerCase()) == -1) {
|
||||
state.userCategories.push(category)
|
||||
userCategoriesDB.updateDocument("userCategories", {
|
||||
userCategories: [...state.userCategories],
|
||||
})
|
||||
state.categories = [...defaultCategories, ...state.userCategories]
|
||||
state.categories.sort()
|
||||
}
|
||||
},
|
||||
addYieldUnit(state, yieldUnit) {
|
||||
let lowercase = state.yieldUnits.map((e) => e.toLowerCase())
|
||||
if (lowercase.indexOf(yieldUnit.toLowerCase()) == -1) {
|
||||
state.userYieldUnits.push(yieldUnit)
|
||||
userYieldUnitsDB.updateDocument("userYieldUnits", {
|
||||
userYieldUnits: [...state.userYieldUnits],
|
||||
})
|
||||
state.yieldUnits = [...defaultYieldUnits, ...state.userYieldUnits]
|
||||
}
|
||||
},
|
||||
addMealPlan(state, {
|
||||
event,
|
||||
eventColor
|
||||
}) {
|
||||
state.mealPlans.push({
|
||||
title: event.title,
|
||||
startDate: event.startDate,
|
||||
endDate: event.endDate,
|
||||
eventColor,
|
||||
})
|
||||
deleteMealPlan(state, {title, startDate}) {
|
||||
let mealPlan = state.mealPlans.filter(e => {
|
||||
let sd = new Date(e.startDate).getTime();
|
||||
return e.title === title && sd === startDate.getTime();
|
||||
})[0];
|
||||
let index = state.mealPlans.indexOf(mealPlan);
|
||||
state.mealPlans.splice(index, 1);
|
||||
state.mealPlans = [...state.mealPlans];
|
||||
let mealPlans = mealPlansDB.getDocument("mealPlans").mealPlans;
|
||||
mealPlans.splice(index, 1);
|
||||
mealPlansDB.updateDocument("mealPlans", {
|
||||
mealPlans: [...state.mealPlans],
|
||||
})
|
||||
mealPlans: [...mealPlans]
|
||||
});
|
||||
},
|
||||
deleteRecipe(state, {
|
||||
index,
|
||||
id
|
||||
}) {
|
||||
getFileAccess().deleteFile(state.recipes[index].imageSrc)
|
||||
state.recipes.splice(index, 1)
|
||||
EnRecipesDB.deleteDocument(id)
|
||||
state.recipes.forEach((e, i) => {
|
||||
if (e.combinations.includes(id)) {
|
||||
state.recipes[i].combinations.splice(e.combinations.indexOf(id), 1)
|
||||
EnRecipesDB.updateDocument(state.recipes[i].id, state.recipes[i])
|
||||
}
|
||||
})
|
||||
toggleState(state, {id, recipe, key, setDate}) {
|
||||
let index = state.recipes.indexOf(state.recipes.filter(e => e.id === id)[0]);
|
||||
state.recipes[index][key] = !state.recipes[index][key];
|
||||
if (setDate)
|
||||
state.recipes[index].lastTried = new Date();
|
||||
EnRecipesDB.updateDocument(id, recipe);
|
||||
},
|
||||
deleteMealPlan(state, {
|
||||
title,
|
||||
startDate
|
||||
}) {
|
||||
let mealPlan = state.mealPlans.filter((e) => {
|
||||
console.log(e.startDate, startDate)
|
||||
let sd = new Date(e.startDate).getTime()
|
||||
return e.title === title && sd === startDate.getTime()
|
||||
})[0]
|
||||
let index = state.mealPlans.indexOf(mealPlan)
|
||||
state.mealPlans.splice(index, 1)
|
||||
state.mealPlans = [...state.mealPlans]
|
||||
let mealPlans = mealPlansDB.getDocument("mealPlans").mealPlans
|
||||
mealPlans.splice(index, 1)
|
||||
mealPlansDB.updateDocument("mealPlans", {
|
||||
mealPlans: [...mealPlans],
|
||||
})
|
||||
},
|
||||
overwriteRecipe(state, {
|
||||
id,
|
||||
recipe
|
||||
}) {
|
||||
let index = state.recipes.indexOf(state.recipes.filter((e) => e.id === id)[0])
|
||||
Object.assign(state.recipes[index], recipe)
|
||||
EnRecipesDB.updateDocument(id, recipe)
|
||||
},
|
||||
toggleState(state, {
|
||||
id,
|
||||
recipe,
|
||||
key,
|
||||
setDate
|
||||
}) {
|
||||
let index = state.recipes.indexOf(state.recipes.filter((e) => e.id === id)[0])
|
||||
state.recipes[index][key] = !state.recipes[index][key]
|
||||
if (setDate) state.recipes[index].lastTried = new Date()
|
||||
EnRecipesDB.updateDocument(id, recipe)
|
||||
},
|
||||
setRecipeAsTried(state, {
|
||||
id,
|
||||
recipe
|
||||
}) {
|
||||
let index = state.recipes.indexOf(state.recipes.filter((e) => e.id === id)[0])
|
||||
state.recipes[index].tried = true
|
||||
state.recipes[index].lastTried = new Date()
|
||||
EnRecipesDB.updateDocument(id, recipe)
|
||||
setRecipeAsTried(state, {id, recipe}) {
|
||||
let index = state.recipes.indexOf(state.recipes.filter(e => e.id === id)[0]);
|
||||
state.recipes[index].tried = true;
|
||||
state.recipes[index].lastTried = new Date();
|
||||
EnRecipesDB.updateDocument(id, recipe);
|
||||
},
|
||||
setLastTriedDate(state, index) {
|
||||
state.recipes[index].lastTried = new Date()
|
||||
EnRecipesDB.updateDocument(state.recipes[index].id, state.recipes[index])
|
||||
},
|
||||
renameCategory(state, {
|
||||
current,
|
||||
updated
|
||||
}) {
|
||||
let lowercase = state.categories.map((e) => e.toLowerCase())
|
||||
if (lowercase.indexOf(updated.toLowerCase()) == -1) {
|
||||
state.userCategories.push(updated)
|
||||
userCategoriesDB.updateDocument("userCategories", {
|
||||
userCategories: [...state.userCategories],
|
||||
})
|
||||
state.categories = [...defaultCategories, ...state.userCategories]
|
||||
state.categories.sort()
|
||||
}
|
||||
state.recipes.forEach((e, i) => {
|
||||
if (e.category == current) {
|
||||
state.recipes[i].category = updated
|
||||
EnRecipesDB.inBatch(() => {
|
||||
EnRecipesDB.updateDocument(state.recipes[i].id, state.recipes[i])
|
||||
})
|
||||
}
|
||||
})
|
||||
state.recipes[index].lastTried = new Date();
|
||||
EnRecipesDB.updateDocument(state.recipes[index].id, state.recipes[index]);
|
||||
},
|
||||
setCurrentComponent(state, comp) {
|
||||
state.currentComponent = comp
|
||||
state.currentComponent = comp;
|
||||
},
|
||||
unSyncCombinations(state, {
|
||||
id,
|
||||
combinations
|
||||
}) {
|
||||
unSyncCombinations(state, {id, combinations}) {
|
||||
state.recipes.forEach((e, i) => {
|
||||
if (combinations.includes(e.id)) {
|
||||
state.recipes[i].combinations.splice(e.combinations.indexOf(id), 1)
|
||||
EnRecipesDB.updateDocument(state.recipes[i].id, state.recipes[i])
|
||||
state.recipes[i].combinations.splice(e.combinations.indexOf(id), 1);
|
||||
EnRecipesDB.updateDocument(state.recipes[i].id, state.recipes[i]);
|
||||
}
|
||||
});
|
||||
},
|
||||
setShake(state, shake) {
|
||||
state.shakeEnabled = shake;
|
||||
},
|
||||
setRating(state, {id, recipe, rating}) {
|
||||
let index = state.recipes.indexOf(state.recipes.filter(e => e.id === id)[0]);
|
||||
state.recipes[index].rating = rating
|
||||
EnRecipesDB.updateDocument(id, recipe);
|
||||
},
|
||||
unlinkBrokenImages(state) {
|
||||
state.recipes.forEach((r, i) => {
|
||||
if (r.imageSrc && !File.exists(r.imageSrc)) {
|
||||
r.imageSrc = null
|
||||
Object.assign(state.recipes[i], r);
|
||||
EnRecipesDB.updateDocument(r.id, r);
|
||||
}
|
||||
})
|
||||
},
|
||||
}
|
||||
},
|
||||
actions: {
|
||||
initializeRecipes({
|
||||
setSortTypeAction({
|
||||
commit
|
||||
}) {
|
||||
commit("initializeRecipes")
|
||||
}, sortType) {
|
||||
commit("setSortType", sortType)
|
||||
},
|
||||
initializeCategories({
|
||||
commit
|
||||
}) {
|
||||
commit("initializeCategories")
|
||||
},
|
||||
initializeYieldUnits({
|
||||
commit
|
||||
}) {
|
||||
commit("initializeYieldUnits")
|
||||
},
|
||||
initializeMealPlans({
|
||||
commit
|
||||
}) {
|
||||
commit("initializeMealPlans")
|
||||
initializeRecipes({commit}) {
|
||||
commit("initializeRecipes");
|
||||
},
|
||||
importRecipesAction({
|
||||
commit
|
||||
}, recipes) {
|
||||
commit("importRecipes", recipes)
|
||||
},
|
||||
importCategoriesAction({
|
||||
commit
|
||||
}, categories) {
|
||||
commit("importCategories", categories)
|
||||
},
|
||||
importYieldUnitsAction({
|
||||
commit
|
||||
}, yieldUnits) {
|
||||
commit("importYieldUnits", yieldUnits)
|
||||
},
|
||||
importMealPlansAction({
|
||||
commit
|
||||
}, mealPlans) {
|
||||
commit("importMealPlans", mealPlans)
|
||||
commit("importRecipes", recipes);
|
||||
},
|
||||
addRecipeAction({
|
||||
commit
|
||||
}, recipe) {
|
||||
commit("addRecipe", recipe)
|
||||
},
|
||||
addYieldUnitAction({
|
||||
commit
|
||||
}, yieldUnit) {
|
||||
commit("addYieldUnit", yieldUnit)
|
||||
},
|
||||
addCategoryAction({
|
||||
commit
|
||||
}, category) {
|
||||
commit("addCategory", category)
|
||||
},
|
||||
addMealPlanAction({
|
||||
commit
|
||||
}, mealPlan) {
|
||||
commit("addMealPlan", mealPlan)
|
||||
},
|
||||
deleteMealPlanAction({
|
||||
commit
|
||||
}, mealPlan) {
|
||||
commit("deleteMealPlan", mealPlan)
|
||||
},
|
||||
deleteRecipeAction({
|
||||
commit
|
||||
}, recipe) {
|
||||
commit("deleteRecipe", recipe)
|
||||
commit("addRecipe", recipe);
|
||||
},
|
||||
overwriteRecipeAction({
|
||||
commit
|
||||
}, updatedRecipe) {
|
||||
commit("overwriteRecipe", updatedRecipe)
|
||||
commit("overwriteRecipe", updatedRecipe);
|
||||
},
|
||||
deleteRecipeAction({
|
||||
commit
|
||||
}, recipe) {
|
||||
commit("deleteRecipe", recipe);
|
||||
},
|
||||
initializeListItems({commit}) {
|
||||
commit("initializeListItems");
|
||||
},
|
||||
importListItemsAction({
|
||||
commit
|
||||
}, data) {
|
||||
commit("importListItems", data);
|
||||
},
|
||||
addListItemAction({
|
||||
commit
|
||||
}, item) {
|
||||
commit("addListItem", item);
|
||||
},
|
||||
removeListItemAction({
|
||||
commit
|
||||
}, item) {
|
||||
commit("removeListItem", item);
|
||||
},
|
||||
resetListItemsAction({
|
||||
commit
|
||||
}, listName) {
|
||||
commit("resetListItems", listName);
|
||||
},
|
||||
initializeMealPlans({commit}) {
|
||||
commit("initializeMealPlans");
|
||||
},
|
||||
importMealPlansAction({
|
||||
commit
|
||||
}, mealPlans) {
|
||||
commit("importMealPlans", mealPlans);
|
||||
},
|
||||
addMealPlanAction({
|
||||
commit
|
||||
}, mealPlan) {
|
||||
commit("addMealPlan", mealPlan);
|
||||
},
|
||||
deleteMealPlanAction({
|
||||
commit
|
||||
}, mealPlan) {
|
||||
commit("deleteMealPlan", mealPlan);
|
||||
},
|
||||
toggleStateAction({
|
||||
commit
|
||||
}, toggledRecipe) {
|
||||
commit("toggleState", toggledRecipe)
|
||||
commit("toggleState", toggledRecipe);
|
||||
},
|
||||
setRecipeAsTriedAction({
|
||||
commit
|
||||
}, recipe) {
|
||||
commit("setRecipeAsTried", recipe)
|
||||
commit("setRecipeAsTried", recipe);
|
||||
},
|
||||
setLastTriedDateAction({
|
||||
commit
|
||||
}, index) {
|
||||
commit("setLastTriedDate", index)
|
||||
},
|
||||
renameCategoryAction({
|
||||
commit
|
||||
}, category) {
|
||||
commit("renameCategory", category)
|
||||
commit("setLastTriedDate", index);
|
||||
},
|
||||
setCurrentComponentAction({
|
||||
commit
|
||||
}, comp) {
|
||||
commit("setCurrentComponent", comp)
|
||||
commit("setCurrentComponent", comp);
|
||||
},
|
||||
unSyncCombinationsAction({
|
||||
commit
|
||||
}, combinations) {
|
||||
commit("unSyncCombinations", combinations)
|
||||
commit("unSyncCombinations", combinations);
|
||||
},
|
||||
},
|
||||
})
|
||||
setShakeAction({
|
||||
commit
|
||||
}, shake) {
|
||||
commit("setShake", shake);
|
||||
},
|
||||
setRatingAction({
|
||||
commit
|
||||
}, rating) {
|
||||
commit("setRating", rating);
|
||||
},
|
||||
unlinkBrokenImages({commit}) {
|
||||
commit("unlinkBrokenImages");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
|
@ -1,166 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<defs>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="scale(-237.34) rotate(45 1.43 -2.487)" spreadMethod="pad" id="b">
|
||||
<stop offset="0" stop-color="#00a0ff" />
|
||||
<stop offset=".007" stop-color="#00a1ff" />
|
||||
<stop offset=".26" stop-color="#00beff" />
|
||||
<stop offset=".512" stop-color="#00d2ff" />
|
||||
<stop offset=".76" stop-color="#00dfff" />
|
||||
<stop offset="1" stop-color="#00e3ff" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(180 219.172 149.993) scale(241.97)" spreadMethod="pad" id="d">
|
||||
<stop offset="0" stop-color="#ffe000" />
|
||||
<stop offset=".409" stop-color="#ffbd00" />
|
||||
<stop offset=".775" stop-color="orange" />
|
||||
<stop offset="1" stop-color="#ff9c00" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(-135 231.512 66.39) scale(321.851)" spreadMethod="pad" id="f">
|
||||
<stop offset="0" stop-color="#ff3a44" />
|
||||
<stop offset="1" stop-color="#c31162" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="scale(143.72) rotate(-45 4.786 .28)" spreadMethod="pad" id="h">
|
||||
<stop offset="0" stop-color="#32a071" />
|
||||
<stop offset=".069" stop-color="#2da771" />
|
||||
<stop offset=".476" stop-color="#15cf74" />
|
||||
<stop offset=".801" stop-color="#06e775" />
|
||||
<stop offset="1" stop-color="#00f076" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(180 219.172 149.993) scale(241.97)" spreadMethod="pad" id="j">
|
||||
<stop offset="0" stop-color="#ccb300" />
|
||||
<stop offset=".409" stop-color="#cc9700" />
|
||||
<stop offset=".775" stop-color="#cc8400" />
|
||||
<stop offset="1" stop-color="#cc7d00" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(-135 231.512 66.39) scale(321.851)" spreadMethod="pad" id="l">
|
||||
<stop offset="0" stop-color="#cc2e36" />
|
||||
<stop offset="1" stop-color="#9c0e4e" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="scale(-237.34) rotate(45 1.43 -2.487)" spreadMethod="pad" id="n">
|
||||
<stop offset="0" stop-color="#008de0" />
|
||||
<stop offset=".007" stop-color="#008de0" />
|
||||
<stop offset=".26" stop-color="#00a7e0" />
|
||||
<stop offset=".512" stop-color="#00b8e0" />
|
||||
<stop offset=".76" stop-color="#00c4e0" />
|
||||
<stop offset="1" stop-color="#00c7e0" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(-135 231.512 66.39) scale(321.851)" spreadMethod="pad" id="p">
|
||||
<stop offset="0" stop-color="#e0333c" />
|
||||
<stop offset="1" stop-color="#ab0f56" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(180 219.172 149.993) scale(241.97)" spreadMethod="pad" id="r">
|
||||
<stop offset="0" stop-color="#e0c500" />
|
||||
<stop offset=".409" stop-color="#e0a600" />
|
||||
<stop offset=".775" stop-color="#e09100" />
|
||||
<stop offset="1" stop-color="#e08900" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="rotate(180 219.172 149.993) scale(241.97)" spreadMethod="pad" id="t">
|
||||
<stop offset="0" stop-color="#ffe840" />
|
||||
<stop offset=".409" stop-color="#ffce40" />
|
||||
<stop offset=".775" stop-color="#ffbc40" />
|
||||
<stop offset="1" stop-color="#ffb540" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="scale(-237.34) rotate(45 1.43 -2.487)" spreadMethod="pad" id="v">
|
||||
<stop offset="0" stop-color="#40b8ff" />
|
||||
<stop offset=".007" stop-color="#40b9ff" />
|
||||
<stop offset=".26" stop-color="#40ceff" />
|
||||
<stop offset=".512" stop-color="#40ddff" />
|
||||
<stop offset=".76" stop-color="#40e7ff" />
|
||||
<stop offset="1" stop-color="#40eaff" />
|
||||
</linearGradient>
|
||||
<linearGradient x1="0" y1="0" x2="1" y2="0" gradientUnits="userSpaceOnUse" gradientTransform="scale(143.72) rotate(-45 4.786 .28)" spreadMethod="pad" id="x">
|
||||
<stop offset="0" stop-color="#65b895" />
|
||||
<stop offset=".069" stop-color="#62bd95" />
|
||||
<stop offset=".476" stop-color="#50db97" />
|
||||
<stop offset=".801" stop-color="#44ed98" />
|
||||
<stop offset="1" stop-color="#40f498" />
|
||||
</linearGradient>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="a">
|
||||
<path d="M205.098 176.105l-.743.711c-2.91 3.079-4.628 7.86-4.628 14.051v-1.457V410.566v-1.461c0 6.704 2.003 11.754 5.359 14.782l123.898-123.895-123.886-123.887M199.77 412.27c0 .007 0 .015.003.023-.003-.008-.003-.016-.003-.023m.003.07v0" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="c">
|
||||
<path d="M370.277 257.215l.942.535 48.929 27.801c4.665 2.652 7.774 5.867 9.325 9.269-1.547-3.402-4.657-6.621-9.325-9.273l-48.929-27.801-.942-.531m.012 1.465l-41.305 41.312 41.301 41.305 49.863-28.328c6.332-3.598 9.887-8.235 10.481-12.973v-.019c-.594-4.727-4.149-9.368-10.481-12.965l-49.859-28.332" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="e">
|
||||
<path d="M213.93 171.387c-3.461 0-6.481 1.125-8.836 3.25l.004.004c2.355-2.125 5.379-3.254 8.84-3.254a18.869 18.869 0 01-.008 0m.004 1.465c-3.461-.004-6.481 1.125-8.836 3.25v.003l123.886 123.887 41.305-41.312-145.152-82.473c-4.016-2.277-7.821-3.355-11.203-3.355m-8.871 1.812c-.219.199-.434.41-.645.629l.645-.629" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="g">
|
||||
<path d="M328.984 299.992L205.086 423.887c2.355 2.121 5.371 3.246 8.828 3.246 3.391 0 7.199-1.082 11.223-3.363l145.148-82.473-41.301-41.305m42.235 42.238l-146.082 83c-4.024 2.282-7.832 3.364-11.223 3.364h-.043.059c3.383 0 7.187-1.078 11.207-3.36l146.082-83.004M213.84 428.594" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="i">
|
||||
<path d="M370.277 257.215l.942.535-.942-.535" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="k">
|
||||
<path d="M213.938 171.387c-3.461 0-6.485 1.129-8.84 3.254l-.004-.004a.286.286 0 01-.031.027l-.645.629c-.02.02-.039.043-.063.066l.743.743c2.355-2.125 5.375-3.254 8.836-3.25 3.382 0 7.187 1.078 11.203 3.355l145.152 82.473.93-.93-.942-.535-145.14-82.469c-3.66-2.074-7.141-3.156-10.285-3.336a18.869 18.869 0 00-.914-.023" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="m">
|
||||
<path d="M204.355 175.359c-2.91 3.079-4.628 7.856-4.628 14.051v1.457c0-6.191 1.718-10.972 4.628-14.051l.743-.711-.743-.746" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="o">
|
||||
<path d="M204.355 175.359l.743.746v-.003l-.743-.743" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="q">
|
||||
<path d="M371.219 257.75l-.93.93 49.859 28.332c6.332 3.597 9.887 8.238 10.481 12.965 0-1.735-.387-3.469-1.156-5.157-1.551-3.402-4.66-6.617-9.325-9.269l-48.929-27.801" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="s">
|
||||
<path d="M430.629 299.996c-.594 4.738-4.149 9.375-10.481 12.973l-49.863 28.328.93.93h.004l48.929-27.801c6.981-3.969 10.477-9.199 10.481-14.43" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="u">
|
||||
<path d="M199.727 409.105v1.528c0 .551.015 1.09.043 1.613v.024c0 .007 0 .015.003.023v.059c.301 5.332 1.957 9.492 4.582 12.269l.731-.734c-3.356-3.028-5.359-8.078-5.359-14.782m5.339 16.215l.028.028c-.008-.012-.02-.02-.028-.028" />
|
||||
</clipPath>
|
||||
<clipPath clipPathUnits="userSpaceOnUse" id="w">
|
||||
<path d="M370.285 341.297L225.137 423.77c-4.024 2.281-7.832 3.363-11.223 3.363-3.457 0-6.473-1.125-8.828-3.246l-.731.734c.231.242.465.477.711.699l.028.024c2.336 2.105 5.32 3.23 8.746 3.25h.074c3.391 0 7.199-1.082 11.223-3.364l146.082-83-.004-.003-.93-.93" />
|
||||
</clipPath>
|
||||
</defs>
|
||||
<path d="M186.667 66.667H20c-3.667 0-6.667-3-6.667-6.667V20c0-3.667 3-6.667 6.667-6.667h166.667c3.666 0 6.666 3 6.666 6.667v40c0 3.667-3 6.667-6.666 6.667" />
|
||||
<path d="M186.667 13.333H20c-3.667 0-6.667 3-6.667 6.667v40c0 3.667 3 6.667 6.667 6.667h166.667c3.666 0 6.666-3 6.666-6.667V20c0-3.667-3-6.667-6.666-6.667m0 1.067c3.088 0 5.6 2.513 5.6 5.6v40c0 3.088-2.512 5.6-5.6 5.6H20a5.607 5.607 0 01-5.6-5.6V20c0-3.087 2.513-5.6 5.6-5.6h166.667" fill="#a6a6a6" />
|
||||
<path d="M76.558 26.991c0 1.117-.33 2.007-.993 2.67-.753.79-1.734 1.184-2.94 1.184-1.154 0-2.136-.4-2.943-1.2-.81-.801-1.213-1.794-1.213-2.978 0-1.185.404-2.177 1.213-2.978.807-.801 1.789-1.202 2.943-1.202.573 0 1.122.112 1.643.336.52.224.938.521 1.25.894l-.702.703c-.53-.633-1.26-.949-2.19-.949-.843 0-1.57.296-2.185.888-.615.593-.922 1.362-.922 2.308 0 .946.307 1.714.922 2.307a3.042 3.042 0 002.184.888c.894 0 1.639-.297 2.235-.893.387-.388.61-.928.67-1.62h-2.905v-.962h3.877c.038.21.056.41.056.604" fill="#fff" />
|
||||
<path d="M76.558 26.991h-.133c-.002 1.092-.32 1.94-.955 2.576l-.001.001v.001c-.73.762-1.666 1.141-2.844 1.143-1.123-.002-2.064-.385-2.85-1.162-.783-.779-1.17-1.73-1.172-2.883.001-1.155.389-2.105 1.172-2.883.786-.778 1.727-1.162 2.85-1.163.556 0 1.085.108 1.59.324.505.218.904.503 1.202.858l.102-.086-.094-.095-.704.705.095.093.102-.085c-.554-.664-1.332-.999-2.293-.997a3.175 3.175 0 00-2.277.926c-.641.616-.964 1.428-.963 2.403 0 .974.322 1.786.963 2.403a3.175 3.175 0 002.277.925c.923.002 1.71-.311 2.33-.932.413-.415.647-.989.709-1.703l.012-.145h-2.917v-.694h3.743v-.134l-.131.024c.036.202.054.394.054.58h.266c0-.202-.019-.41-.058-.627l-.02-.11h-4.12V27.482h3.038v-.134l-.133-.011c-.059.67-.273 1.176-.632 1.538-.573.57-1.276.852-2.14.854-.811-.001-1.5-.28-2.093-.85-.587-.57-.88-1.295-.88-2.212 0-.918.293-1.644.88-2.212.594-.57 1.282-.85 2.092-.85.902.002 1.583.3 2.089.901l.093.112.806-.807.086-.086-.078-.094c-.328-.39-.764-.7-1.3-.93a4.259 4.259 0 00-1.696-.347c-1.185 0-2.208.416-3.038 1.24-.832.823-1.252 1.858-1.251 3.073-.001 1.214.419 2.25 1.252 3.073.83.824 1.852 1.24 3.037 1.239 1.235 0 2.259-.41 3.036-1.225l-.096-.093.094.095c.69-.69 1.033-1.623 1.032-2.765h-.133M82.704 23.65H79.06v2.536h3.286v.961H79.06v2.537h3.644v.983h-4.67v-8h4.67v.982" fill="#fff" />
|
||||
<path d="M82.704 23.65v-.134h-3.777v2.803h3.286v.695h-3.286v2.803h3.643v.716h-4.403V22.8h4.403v.85h.134v-.134.133h.133v-1.116H77.9V30.8h4.937v-1.249h-3.643v-2.27h3.285v-1.228h-3.285v-2.27h3.643v-.134h-.133M87.039 30.667h-1.03v-7.018h-2.234v-.982h5.498v.982h-2.234v7.018" fill="#fff" />
|
||||
<path d="M87.039 30.667v-.134h-.896v-7.017H83.91V22.8h5.23v.716h-2.234v7.15h.134v-.133.134h.133v-6.884h2.234v-1.25h-5.764v1.25h2.235V30.8h1.295v-.133h-.133M93.25 30.667v-8h1.028v8h-1.027" fill="#fff" />
|
||||
<path d="M93.25 30.667h.134V22.8h.76v7.733h-.893v.134h.133-.133v.133h1.16v-8.267h-1.294V30.8h.134v-.133M98.838 30.667h-1.029v-7.018h-2.234v-.982h5.497v.982h-2.234v7.018" fill="#fff" />
|
||||
<path d="M98.838 30.667v-.134h-.895v-7.017h-2.235V22.8h5.231v.716h-2.234v7.15h.133v-.133.134h.133v-6.884h2.235v-1.25h-5.764v1.25h2.234V30.8h1.295v-.133h-.133M106.372 28.963c.593.6 1.317.899 2.174.899s1.582-.3 2.173-.899c.592-.6.89-1.366.89-2.296 0-.931-.298-1.697-.89-2.297-.591-.6-1.316-.899-2.173-.899s-1.581.3-2.174.9c-.59.599-.888 1.365-.888 2.296 0 .93.297 1.697.888 2.296zm5.107.67c-.786.809-1.764 1.212-2.933 1.212-1.17 0-2.148-.403-2.932-1.212-.787-.808-1.18-1.797-1.18-2.966 0-1.17.393-2.159 1.18-2.966.784-.81 1.762-1.214 2.932-1.214 1.162 0 2.138.407 2.928 1.219s1.184 1.799 1.184 2.96c0 1.17-.394 2.159-1.179 2.967" fill="#fff" />
|
||||
<path d="M106.372 28.963l-.094.094c.614.623 1.38.94 2.268.938.887.002 1.655-.315 2.268-.938.618-.624.929-1.432.928-2.39 0-.96-.31-1.766-.928-2.39-.613-.624-1.38-.94-2.268-.939-.888-.002-1.654.315-2.268.939-.617.624-.929 1.43-.927 2.39-.002.958.31 1.766.927 2.39l.094-.094.095-.094c-.565-.575-.848-1.3-.85-2.202.002-.903.285-1.627.85-2.203.571-.575 1.253-.858 2.079-.86.825.002 1.509.285 2.078.86.567.576.85 1.3.85 2.203 0 .903-.283 1.627-.85 2.202-.57.576-1.253.858-2.078.86-.826-.002-1.508-.284-2.079-.86zm5.107.67l-.095-.093c-.765.783-1.7 1.17-2.838 1.172-1.14-.002-2.074-.389-2.837-1.172l-.004-.004.004.004c-.763-.786-1.14-1.734-1.14-2.873 0-1.14.377-2.088 1.14-2.874.763-.783 1.698-1.17 2.837-1.172 1.131.001 2.064.39 2.833 1.178.765.79 1.144 1.736 1.146 2.868-.002 1.14-.38 2.087-1.141 2.873l.095.093.096.092c.808-.83 1.217-1.86 1.216-3.058.001-1.192-.41-2.22-1.221-3.054-.813-.837-1.83-1.26-3.024-1.259-1.2-.001-2.22.42-3.028 1.254-.81.83-1.217 1.86-1.216 3.059-.001 1.199.406 2.228 1.216 3.059l.003.004-.003-.005c.807.834 1.828 1.255 3.028 1.254 1.2 0 2.22-.42 3.03-1.254l-.097-.092M114.1 30.667v-8h1.252l3.888 6.223h.044l-.044-1.542v-4.681h1.028v8h-1.073l-4.067-6.525h-.045l.045 1.542v4.983H114.1" fill="#fff" />
|
||||
<path d="M114.1 30.667h.134V22.8h1.044l3.888 6.223h.255l-.048-1.677V22.8h.762v7.733h-.866l-4.067-6.525h-.256l.048 1.678v4.847h-.893v.134h.133-.133v.133h1.16v-5.118l-.044-1.544-.134.004v.133h.045v-.133l-.113.07 4.106 6.588H120.402v-8.267H119.106v4.817l.045 1.544.133-.004v-.133h-.044v.133l.113-.07-3.928-6.287H113.967V30.8h.134v-.133M155.915 53.333h2.488V36.665h-2.488zm22.409-10.664l-2.852 7.227h-.085l-2.96-7.227h-2.68l4.438 10.1-2.53 5.619h2.596l6.84-15.719zm-14.11 8.771c-.815 0-1.951-.407-1.951-1.415 0-1.287 1.416-1.78 2.637-1.78 1.095 0 1.608.236 2.273.558-.193 1.543-1.522 2.637-2.958 2.637zm.3-9.135c-1.8 0-3.666.793-4.438 2.552l2.208.922c.472-.922 1.35-1.223 2.273-1.223 1.287 0 2.595.773 2.616 2.145v.171c-.45-.257-1.414-.643-2.594-.643-2.38 0-4.804 1.308-4.804 3.753 0 2.23 1.952 3.667 4.138 3.667 1.674 0 2.595-.75 3.175-1.63h.085v1.287h2.402v-6.39c0-2.96-2.208-4.611-5.06-4.611zm-15.375 2.393H145.6v-5.713h3.539c1.86 0 2.916 1.54 2.916 2.857 0 1.291-1.056 2.856-2.916 2.856zm-.064-8.033h-5.962v16.668h2.487v-6.315h3.475c2.757 0 5.468-1.996 5.468-5.176s-2.711-5.177-5.468-5.177zm-32.508 14.778c-1.72 0-3.158-1.439-3.158-3.415 0-1.998 1.439-3.459 3.158-3.459 1.697 0 3.028 1.461 3.028 3.459 0 1.976-1.331 3.415-3.028 3.415zm2.856-7.84h-.086c-.558-.666-1.632-1.268-2.985-1.268-2.836 0-5.435 2.492-5.435 5.693 0 3.179 2.6 5.65 5.435 5.65 1.353 0 2.427-.603 2.985-1.29h.086v.817c0 2.17-1.16 3.33-3.028 3.33-1.525 0-2.47-1.096-2.858-2.02l-2.169.902c.623 1.504 2.277 3.351 5.027 3.351 2.921 0 5.391-1.719 5.391-5.907V42.679h-2.363zm4.082 9.73h2.491V36.665h-2.491zm6.165-5.499c-.065-2.19 1.697-3.307 2.964-3.307.989 0 1.826.493 2.105 1.203zm7.733-1.89c-.472-1.267-1.912-3.609-4.855-3.609-2.921 0-5.349 2.299-5.349 5.671 0 3.18 2.406 5.671 5.628 5.671 2.6 0 4.104-1.59 4.726-2.513l-1.933-1.29c-.644.946-1.525 1.57-2.793 1.57-1.267 0-2.17-.58-2.75-1.72l7.583-3.135zm-60.411-1.869v2.406h5.756c-.171 1.353-.623 2.341-1.31 3.029-.837.838-2.148 1.761-4.446 1.761-3.545 0-6.315-2.856-6.315-6.4 0-3.545 2.77-6.402 6.315-6.402 1.912 0 3.307.752 4.339 1.718l1.697-1.696c-1.44-1.375-3.351-2.428-6.036-2.428-4.855 0-8.936 3.953-8.936 8.807 0 4.855 4.08 8.807 8.936 8.807 2.62 0 4.597-.859 6.143-2.47 1.59-1.59 2.084-3.824 2.084-5.628 0-.559-.043-1.074-.13-1.504zm14.772 7.368c-1.72 0-3.201-1.418-3.201-3.437 0-2.04 1.482-3.437 3.2-3.437 1.719 0 3.201 1.397 3.201 3.437 0 2.02-1.482 3.437-3.2 3.437zm0-9.108c-3.137 0-5.693 2.385-5.693 5.671 0 3.265 2.556 5.671 5.693 5.671 3.135 0 5.692-2.406 5.692-5.67 0-3.287-2.557-5.672-5.692-5.672zm12.417 9.108c-1.718 0-3.2-1.418-3.2-3.437 0-2.04 1.482-3.437 3.2-3.437 1.718 0 3.2 1.397 3.2 3.437 0 2.02-1.482 3.437-3.2 3.437zm0-9.108c-3.136 0-5.692 2.385-5.692 5.671 0 3.265 2.556 5.671 5.692 5.671s5.692-2.406 5.692-5.67c0-3.287-2.556-5.672-5.692-5.672" fill="#fff" />
|
||||
<g clip-path="url(#a)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M205.098 176.105l-.743.711c-2.91 3.079-4.628 7.86-4.628 14.051v-1.457V410.566v-1.461c0 6.704 2.003 11.754 5.359 14.782l123.898-123.895-123.886-123.887M199.77 412.27c0 .007 0 .015.003.023-.003-.008-.003-.016-.003-.023m.003.07v0" fill="url(#b)" />
|
||||
</g>
|
||||
<g clip-path="url(#c)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M370.277 257.215l.942.535 48.929 27.801c4.665 2.652 7.774 5.867 9.325 9.269-1.547-3.402-4.657-6.621-9.325-9.273l-48.929-27.801-.942-.531m.012 1.465l-41.305 41.312 41.301 41.305 49.863-28.328c6.332-3.598 9.887-8.235 10.481-12.973v-.019c-.594-4.727-4.149-9.368-10.481-12.965l-49.859-28.332" fill="url(#d)" />
|
||||
</g>
|
||||
<g clip-path="url(#e)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M213.93 171.387c-3.461 0-6.481 1.125-8.836 3.25l.004.004c2.355-2.125 5.379-3.254 8.84-3.254a18.869 18.869 0 01-.008 0m.004 1.465c-3.461-.004-6.481 1.125-8.836 3.25v.003l123.886 123.887 41.305-41.312-145.152-82.473c-4.016-2.277-7.821-3.355-11.203-3.355m-8.871 1.812c-.219.199-.434.41-.645.629l.645-.629" fill="url(#f)" />
|
||||
</g>
|
||||
<g clip-path="url(#g)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M328.984 299.992L205.086 423.887c2.355 2.121 5.371 3.246 8.828 3.246 3.391 0 7.199-1.082 11.223-3.363l145.148-82.473-41.301-41.305m42.235 42.238l-146.082 83c-4.024 2.282-7.832 3.364-11.223 3.364h-.043.059c3.383 0 7.187-1.078 11.207-3.36l146.082-83.004M213.84 428.594" fill="url(#h)" />
|
||||
</g>
|
||||
<path d="M28.647 57.145c.42-.024.883-.168 1.371-.444L49.37 45.705 30.018 56.7c-.487.277-.952.42-1.371.444m-1.301-.43l-.004-.004a.038.038 0 01.004.004m-.09-.087l-.009-.009.009.009" />
|
||||
<g clip-path="url(#i)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M370.277 257.215l.942.535-.942-.535" fill="url(#j)" />
|
||||
</g>
|
||||
<g clip-path="url(#k)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M213.938 171.387c-3.461 0-6.485 1.129-8.84 3.254l-.004-.004a.286.286 0 01-.031.027l-.645.629c-.02.02-.039.043-.063.066l.743.743c2.355-2.125 5.375-3.254 8.836-3.25 3.382 0 7.187 1.078 11.203 3.355l145.152 82.473.93-.93-.942-.535-145.14-82.469c-3.66-2.074-7.141-3.156-10.285-3.336a18.869 18.869 0 00-.914-.023" fill="url(#l)" />
|
||||
</g>
|
||||
<path d="M27.247 56.62c-.388-.411-.617-1.049-.617-1.874 0 .825.23 1.462.617 1.873" />
|
||||
<g clip-path="url(#m)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M204.355 175.359c-2.91 3.079-4.628 7.856-4.628 14.051v1.457c0-6.191 1.718-10.972 4.628-14.051l.743-.711-.743-.746" fill="url(#n)" />
|
||||
</g>
|
||||
<g clip-path="url(#o)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M204.355 175.359l.743.746v-.003l-.743-.743" fill="url(#p)" />
|
||||
</g>
|
||||
<path d="M57.263 40.69a1.655 1.655 0 010 0" />
|
||||
<g clip-path="url(#q)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M371.219 257.75l-.93.93 49.859 28.332c6.332 3.597 9.887 8.238 10.481 12.965 0-1.735-.387-3.469-1.156-5.157-1.551-3.402-4.66-6.617-9.325-9.269l-48.929-27.801" fill="url(#r)" />
|
||||
</g>
|
||||
<path d="M57.417 40.001c0-.698-.466-1.395-1.397-1.924l-6.524-3.707 6.524 3.706c.932.53 1.398 1.228 1.397 1.925" fill="#404040" />
|
||||
<g clip-path="url(#s)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M430.629 299.996c-.594 4.738-4.149 9.375-10.481 12.973l-49.863 28.328.93.93h.004l48.929-27.801c6.981-3.969 10.477-9.199 10.481-14.43" fill="url(#t)" />
|
||||
</g>
|
||||
<path d="M26.63 25.25v-.001.002m.006-.217v-.003.003m0-.006v-.007.007m0-.008c.078-1.37.822-2.161 1.876-2.166a1.715 1.715 0 00-1.166.433l-.004.004c-.033.03-.064.06-.095.093-.35.37-.57.925-.61 1.636" fill="#404040" />
|
||||
<g clip-path="url(#u)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M199.727 409.105v1.528c0 .551.015 1.09.043 1.613v.024c0 .007 0 .015.003.023v.059c.301 5.332 1.957 9.492 4.582 12.269l.731-.734c-3.356-3.028-5.359-8.078-5.359-14.782m5.339 16.215l.028.028c-.008-.012-.02-.02-.028-.028" fill="url(#v)" />
|
||||
</g>
|
||||
<path d="M28.512 22.854h.004-.004" fill="#404040" />
|
||||
<g clip-path="url(#w)" transform="matrix(.13333 0 0 -.13333 0 80)">
|
||||
<path d="M370.285 341.297L225.137 423.77c-4.024 2.281-7.832 3.363-11.223 3.363-3.457 0-6.473-1.125-8.828-3.246l-.731.734c.231.242.465.477.711.699l.028.024c2.336 2.105 5.32 3.23 8.746 3.25h.074c3.391 0 7.199-1.082 11.223-3.364l146.082-83-.004-.003-.93-.93" fill="url(#x)" />
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 19 KiB |
|
@ -1,2 +1,2 @@
|
|||
- Fixed: Ingredients unit getting reset on save
|
||||
- Added app language: Deutsch
|
||||
- Added app language: German
|
||||
|
|
12
fastlane/metadata/android/en-US/changelogs/5.txt
Normal file
12
fastlane/metadata/android/en-US/changelogs/5.txt
Normal file
|
@ -0,0 +1,12 @@
|
|||
- New: Add cuisine and tags to your recipes along with category
|
||||
- New: Rate and set difficulty level to your recipes
|
||||
- New: Shake device to view random recipe (can be disabled under settings)
|
||||
- Improvement: Search your recipes by name, ingredient or tag
|
||||
- Improvement: Add or delete cuisines, categories, yield units, units
|
||||
- Improvement: More sorting options
|
||||
- Improvement: Now you can see the created and last updated time of a recipe
|
||||
- Added app languages: Danish, Dutch, Portuguese, Russian and Spanish
|
||||
- Removed: Categories rename feature
|
||||
- Updated translations
|
||||
- Several UI improvements and bug fixes
|
||||
- Note: Recipes created with previous versions of this app will not display accurate created date, my apologies for that
|
|
@ -5,7 +5,7 @@ EnRecipes is an easy to use, privacy-friendly digital cookbook that lets you cre
|
|||
* Create recipes quickly
|
||||
* Add photo, notes and combinations to your recipes
|
||||
* Organise your recipes by category
|
||||
* Quickly search for your recipes
|
||||
* Quickly search for your recipes either by name or ingredient
|
||||
* Mark recipes as favourites and add them to your Try Later list
|
||||
* Scale your recipe ingredients to serve more or less people
|
||||
* Get notified of when you last tried a recipe
|
||||
|
|
491
package-lock.json
generated
491
package-lock.json
generated
|
@ -35,31 +35,30 @@
|
|||
}
|
||||
},
|
||||
"@babel/compat-data": {
|
||||
"version": "7.12.5",
|
||||
"resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.5.tgz",
|
||||
"integrity": "sha512-DTsS7cxrsH3by8nqQSpFSyjSfSYl57D6Cf4q8dW3LK83tBKBDCkfcay1nYkXq1nIHXnpX8WMMb/O25HOy3h1zg==",
|
||||
"version": "7.12.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.7.tgz",
|
||||
"integrity": "sha512-YaxPMGs/XIWtYqrdEOZOCPsVWfEoriXopnsz3/i7apYPXQ3698UFhS6dVT1KN5qOsWmVgw/FOrmQgpRaZayGsw==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/core": {
|
||||
"version": "7.12.3",
|
||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.3.tgz",
|
||||
"integrity": "sha512-0qXcZYKZp3/6N2jKYVxZv0aNCsxTSVCiK72DTiTYZAu7sjg73W0/aynWjMbiGd87EQL4WyA8reiJVh92AVla9g==",
|
||||
"version": "7.12.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.10.tgz",
|
||||
"integrity": "sha512-eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.10.4",
|
||||
"@babel/generator": "^7.12.1",
|
||||
"@babel/generator": "^7.12.10",
|
||||
"@babel/helper-module-transforms": "^7.12.1",
|
||||
"@babel/helpers": "^7.12.1",
|
||||
"@babel/parser": "^7.12.3",
|
||||
"@babel/template": "^7.10.4",
|
||||
"@babel/traverse": "^7.12.1",
|
||||
"@babel/types": "^7.12.1",
|
||||
"@babel/helpers": "^7.12.5",
|
||||
"@babel/parser": "^7.12.10",
|
||||
"@babel/template": "^7.12.7",
|
||||
"@babel/traverse": "^7.12.10",
|
||||
"@babel/types": "^7.12.10",
|
||||
"convert-source-map": "^1.7.0",
|
||||
"debug": "^4.1.0",
|
||||
"gensync": "^1.0.0-beta.1",
|
||||
"json5": "^2.1.2",
|
||||
"lodash": "^4.17.19",
|
||||
"resolve": "^1.3.2",
|
||||
"semver": "^5.4.1",
|
||||
"source-map": "^0.5.0"
|
||||
},
|
||||
|
@ -73,12 +72,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/generator": {
|
||||
"version": "7.12.5",
|
||||
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.5.tgz",
|
||||
"integrity": "sha512-m16TQQJ8hPt7E+OS/XVQg/7U184MLXtvuGbCdA7na61vha+ImkyyNM/9DDA0unYCVZn3ZOhng+qz48/KBOT96A==",
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.11.tgz",
|
||||
"integrity": "sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/types": "^7.12.5",
|
||||
"@babel/types": "^7.12.11",
|
||||
"jsesc": "^2.5.1",
|
||||
"source-map": "^0.5.0"
|
||||
},
|
||||
|
@ -92,12 +91,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/helper-annotate-as-pure": {
|
||||
"version": "7.10.4",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.4.tgz",
|
||||
"integrity": "sha512-XQlqKQP4vXFB7BN8fEEerrmYvHp3fK/rBkRFz9jaJbzK0B1DSfej9Kc7ZzE8Z/OnId1jpJdNAZ3BFQjWG68rcA==",
|
||||
"version": "7.12.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.10.tgz",
|
||||
"integrity": "sha512-XplmVbC1n+KY6jL8/fgLVXXUauDIB+lD5+GsQEh6F6GBF1dq1qy4DP4yXWzDKcoqXB3X58t61e85Fitoww4JVQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/types": "^7.10.4"
|
||||
"@babel/types": "^7.12.10"
|
||||
}
|
||||
},
|
||||
"@babel/helper-builder-binary-assignment-operator-visitor": {
|
||||
|
@ -136,13 +135,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/helper-create-regexp-features-plugin": {
|
||||
"version": "7.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.1.tgz",
|
||||
"integrity": "sha512-rsZ4LGvFTZnzdNZR5HZdmJVuXK8834R5QkF3WvcnBhrlVtF0HSIUC6zbreL9MgjTywhKokn8RIYRiq99+DLAxA==",
|
||||
"version": "7.12.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.7.tgz",
|
||||
"integrity": "sha512-idnutvQPdpbduutvi3JVfEgcVIHooQnhvhx0Nk9isOINOIGYkZea1Pk2JlJRiUnMefrlvr0vkByATBY/mB4vjQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-annotate-as-pure": "^7.10.4",
|
||||
"@babel/helper-regex": "^7.10.4",
|
||||
"regexpu-core": "^4.7.1"
|
||||
}
|
||||
},
|
||||
|
@ -167,23 +165,23 @@
|
|||
}
|
||||
},
|
||||
"@babel/helper-function-name": {
|
||||
"version": "7.10.4",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.10.4.tgz",
|
||||
"integrity": "sha512-YdaSyz1n8gY44EmN7x44zBn9zQ1Ry2Y+3GTA+3vH6Mizke1Vw0aWDM66FOYEPw8//qKkmqOckrGgTYa+6sceqQ==",
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz",
|
||||
"integrity": "sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-get-function-arity": "^7.10.4",
|
||||
"@babel/template": "^7.10.4",
|
||||
"@babel/types": "^7.10.4"
|
||||
"@babel/helper-get-function-arity": "^7.12.10",
|
||||
"@babel/template": "^7.12.7",
|
||||
"@babel/types": "^7.12.11"
|
||||
}
|
||||
},
|
||||
"@babel/helper-get-function-arity": {
|
||||
"version": "7.10.4",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.4.tgz",
|
||||
"integrity": "sha512-EkN3YDB+SRDgiIUnNgcmiD361ti+AVbL3f3Henf6dqqUyr5dMsorno0lJWJuLhDhkI5sYEpgj6y9kB8AOU1I2A==",
|
||||
"version": "7.12.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz",
|
||||
"integrity": "sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/types": "^7.10.4"
|
||||
"@babel/types": "^7.12.10"
|
||||
}
|
||||
},
|
||||
"@babel/helper-hoist-variables": {
|
||||
|
@ -196,12 +194,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/helper-member-expression-to-functions": {
|
||||
"version": "7.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.1.tgz",
|
||||
"integrity": "sha512-k0CIe3tXUKTRSoEx1LQEPFU9vRQfqHtl+kf8eNnDqb4AUJEy5pz6aIiog+YWtVm2jpggjS1laH68bPsR+KWWPQ==",
|
||||
"version": "7.12.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.7.tgz",
|
||||
"integrity": "sha512-DCsuPyeWxeHgh1Dus7APn7iza42i/qXqiFPWyBDdOFtvS581JQePsc1F/nD+fHrcswhLlRc2UpYS1NwERxZhHw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/types": "^7.12.1"
|
||||
"@babel/types": "^7.12.7"
|
||||
}
|
||||
},
|
||||
"@babel/helper-module-imports": {
|
||||
|
@ -231,12 +229,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/helper-optimise-call-expression": {
|
||||
"version": "7.10.4",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.4.tgz",
|
||||
"integrity": "sha512-n3UGKY4VXwXThEiKrgRAoVPBMqeoPgHVqiHZOanAJCG9nQUL2pLRQirUzl0ioKclHGpGqRgIOkgcIJaIWLpygg==",
|
||||
"version": "7.12.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.10.tgz",
|
||||
"integrity": "sha512-4tpbU0SrSTjjt65UMWSrUOPZTsgvPgGG4S8QSTNHacKzpS51IVWGDj0yCwyeZND/i+LSN2g/O63jEXEWm49sYQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/types": "^7.10.4"
|
||||
"@babel/types": "^7.12.10"
|
||||
}
|
||||
},
|
||||
"@babel/helper-plugin-utils": {
|
||||
|
@ -245,15 +243,6 @@
|
|||
"integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/helper-regex": {
|
||||
"version": "7.10.5",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.10.5.tgz",
|
||||
"integrity": "sha512-68kdUAzDrljqBrio7DYAEgCoJHxppJOERHOgOrDN7WjOzP0ZQ1LsSDRXcemzVZaLvjaJsJEESb6qt+znNuENDg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"lodash": "^4.17.19"
|
||||
}
|
||||
},
|
||||
"@babel/helper-remap-async-to-generator": {
|
||||
"version": "7.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.12.1.tgz",
|
||||
|
@ -266,15 +255,15 @@
|
|||
}
|
||||
},
|
||||
"@babel/helper-replace-supers": {
|
||||
"version": "7.12.5",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.5.tgz",
|
||||
"integrity": "sha512-5YILoed0ZyIpF4gKcpZitEnXEJ9UoDRki1Ey6xz46rxOzfNMAhVIJMoune1hmPVxh40LRv1+oafz7UsWX+vyWA==",
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.11.tgz",
|
||||
"integrity": "sha512-q+w1cqmhL7R0FNzth/PLLp2N+scXEK/L2AHbXUyydxp828F4FEa5WcVoqui9vFRiHDQErj9Zof8azP32uGVTRA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-member-expression-to-functions": "^7.12.1",
|
||||
"@babel/helper-optimise-call-expression": "^7.10.4",
|
||||
"@babel/traverse": "^7.12.5",
|
||||
"@babel/types": "^7.12.5"
|
||||
"@babel/helper-member-expression-to-functions": "^7.12.7",
|
||||
"@babel/helper-optimise-call-expression": "^7.12.10",
|
||||
"@babel/traverse": "^7.12.10",
|
||||
"@babel/types": "^7.12.11"
|
||||
}
|
||||
},
|
||||
"@babel/helper-simple-access": {
|
||||
|
@ -296,12 +285,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/helper-split-export-declaration": {
|
||||
"version": "7.11.0",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.11.0.tgz",
|
||||
"integrity": "sha512-74Vejvp6mHkGE+m+k5vHY93FX2cAtrw1zXrZXRlG4l410Nm9PxfEiVTn1PjDPV5SnmieiueY4AFg2xqhNFuuZg==",
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz",
|
||||
"integrity": "sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/types": "^7.11.0"
|
||||
"@babel/types": "^7.12.11"
|
||||
}
|
||||
},
|
||||
"@babel/helper-validator-identifier": {
|
||||
|
@ -311,9 +300,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"@babel/helper-validator-option": {
|
||||
"version": "7.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.1.tgz",
|
||||
"integrity": "sha512-YpJabsXlJVWP0USHjnC/AQDTLlZERbON577YUVO/wLpqyj6HAtVYnWaQaN0iUN+1/tWn3c+uKKXjRut5115Y2A==",
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.11.tgz",
|
||||
"integrity": "sha512-TBFCyj939mFSdeX7U7DDj32WtzYY7fDcalgq8v3fBZMNOJQNn7nOYzMaUCiPxPYfCup69mtIpqlKgMZLvQ8Xhw==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/helper-wrap-function": {
|
||||
|
@ -351,15 +340,15 @@
|
|||
}
|
||||
},
|
||||
"@babel/parser": {
|
||||
"version": "7.12.5",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.5.tgz",
|
||||
"integrity": "sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ==",
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.11.tgz",
|
||||
"integrity": "sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==",
|
||||
"dev": true
|
||||
},
|
||||
"@babel/plugin-proposal-async-generator-functions": {
|
||||
"version": "7.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.12.1.tgz",
|
||||
"integrity": "sha512-d+/o30tJxFxrA1lhzJqiUcEJdI6jKlNregCv5bASeGf2Q4MXmnwH7viDo7nhx1/ohf09oaH8j1GVYG/e3Yqk6A==",
|
||||
"version": "7.12.12",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.12.12.tgz",
|
||||
"integrity": "sha512-nrz9y0a4xmUrRq51bYkWJIO5SBZyG2ys2qinHsN0zHDHVsUaModrkpyWWWXfGqYQmOL3x9sQIcTNN/pBGpo09A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-plugin-utils": "^7.10.4",
|
||||
|
@ -428,9 +417,9 @@
|
|||
}
|
||||
},
|
||||
"@babel/plugin-proposal-numeric-separator": {
|
||||
"version": "7.12.5",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.5.tgz",
|
||||
"integrity": "sha512-UiAnkKuOrCyjZ3sYNHlRlfuZJbBHknMQ9VMwVeX97Ofwx7RpD6gS2HfqTCh8KNUQgcOm8IKt103oR4KIjh7Q8g==",
|
||||
"version": "7.12.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.7.tgz",
|
||||
"integrity": "sha512-8c+uy0qmnRTeukiGsjLGy6uVs/TFjJchGXUeBqlG4VWYOdJWkhhVPdQ3uHwbmalfJwv2JsV0qffXP4asRfL2SQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-plugin-utils": "^7.10.4",
|
||||
|
@ -459,9 +448,9 @@
|
|||
}
|
||||
},
|
||||
"@babel/plugin-proposal-optional-chaining": {
|
||||
"version": "7.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.1.tgz",
|
||||
"integrity": "sha512-c2uRpY6WzaVDzynVY9liyykS+kVU+WRZPMPYpkelXH8KBt1oXoI89kPbZKKG/jDT5UK92FTW2fZkZaJhdiBabw==",
|
||||
"version": "7.12.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.7.tgz",
|
||||
"integrity": "sha512-4ovylXZ0PWmwoOvhU2vhnzVNnm88/Sm9nx7V8BPgMvAzn5zDou3/Awy0EjglyubVHasJj+XCEkr/r1X3P5elCA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-plugin-utils": "^7.10.4",
|
||||
|
@ -627,9 +616,9 @@
|
|||
}
|
||||
},
|
||||
"@babel/plugin-transform-block-scoping": {
|
||||
"version": "7.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.1.tgz",
|
||||
"integrity": "sha512-zJyAC9sZdE60r1nVQHblcfCj29Dh2Y0DOvlMkcqSo0ckqjiCwNiUezUKw+RjOCwGfpLRwnAeQ2XlLpsnGkvv9w==",
|
||||
"version": "7.12.12",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.12.tgz",
|
||||
"integrity": "sha512-VOEPQ/ExOVqbukuP7BYJtI5ZxxsmegTwzZ04j1aF0dkSypGo9XpDHuOrABsJu+ie+penpSJheDJ11x1BEZNiyQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-plugin-utils": "^7.10.4"
|
||||
|
@ -865,13 +854,12 @@
|
|||
}
|
||||
},
|
||||
"@babel/plugin-transform-sticky-regex": {
|
||||
"version": "7.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.1.tgz",
|
||||
"integrity": "sha512-CiUgKQ3AGVk7kveIaPEET1jNDhZZEl1RPMWdTBE1799bdz++SwqDHStmxfCtDfBhQgCl38YRiSnrMuUMZIWSUQ==",
|
||||
"version": "7.12.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.7.tgz",
|
||||
"integrity": "sha512-VEiqZL5N/QvDbdjfYQBhruN0HYjSPjC4XkeqW4ny/jNtH9gcbgaqBIXYEZCNnESMAGs0/K/R7oFGMhOyu/eIxg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-plugin-utils": "^7.10.4",
|
||||
"@babel/helper-regex": "^7.10.4"
|
||||
"@babel/helper-plugin-utils": "^7.10.4"
|
||||
}
|
||||
},
|
||||
"@babel/plugin-transform-template-literals": {
|
||||
|
@ -884,9 +872,9 @@
|
|||
}
|
||||
},
|
||||
"@babel/plugin-transform-typeof-symbol": {
|
||||
"version": "7.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.1.tgz",
|
||||
"integrity": "sha512-EPGgpGy+O5Kg5pJFNDKuxt9RdmTgj5sgrus2XVeMp/ZIbOESadgILUbm50SNpghOh3/6yrbsH+NB5+WJTmsA7Q==",
|
||||
"version": "7.12.10",
|
||||
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.10.tgz",
|
||||
"integrity": "sha512-JQ6H8Rnsogh//ijxspCjc21YPd3VLVoYtAwv3zQmqAt8YGYUtdo5usNhdl4b9/Vir2kPFZl6n1h0PfUz4hJhaA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-plugin-utils": "^7.10.4"
|
||||
|
@ -912,16 +900,16 @@
|
|||
}
|
||||
},
|
||||
"@babel/preset-env": {
|
||||
"version": "7.12.1",
|
||||
"resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.12.1.tgz",
|
||||
"integrity": "sha512-H8kxXmtPaAGT7TyBvSSkoSTUK6RHh61So05SyEbpmr0MCZrsNYn7mGMzzeYoOUCdHzww61k8XBft2TaES+xPLg==",
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.12.11.tgz",
|
||||
"integrity": "sha512-j8Tb+KKIXKYlDBQyIOy4BLxzv1NUOwlHfZ74rvW+Z0Gp4/cI2IMDPBWAgWceGcE7aep9oL/0K9mlzlMGxA8yNw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/compat-data": "^7.12.1",
|
||||
"@babel/helper-compilation-targets": "^7.12.1",
|
||||
"@babel/helper-module-imports": "^7.12.1",
|
||||
"@babel/compat-data": "^7.12.7",
|
||||
"@babel/helper-compilation-targets": "^7.12.5",
|
||||
"@babel/helper-module-imports": "^7.12.5",
|
||||
"@babel/helper-plugin-utils": "^7.10.4",
|
||||
"@babel/helper-validator-option": "^7.12.1",
|
||||
"@babel/helper-validator-option": "^7.12.11",
|
||||
"@babel/plugin-proposal-async-generator-functions": "^7.12.1",
|
||||
"@babel/plugin-proposal-class-properties": "^7.12.1",
|
||||
"@babel/plugin-proposal-dynamic-import": "^7.12.1",
|
||||
|
@ -929,10 +917,10 @@
|
|||
"@babel/plugin-proposal-json-strings": "^7.12.1",
|
||||
"@babel/plugin-proposal-logical-assignment-operators": "^7.12.1",
|
||||
"@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.1",
|
||||
"@babel/plugin-proposal-numeric-separator": "^7.12.1",
|
||||
"@babel/plugin-proposal-numeric-separator": "^7.12.7",
|
||||
"@babel/plugin-proposal-object-rest-spread": "^7.12.1",
|
||||
"@babel/plugin-proposal-optional-catch-binding": "^7.12.1",
|
||||
"@babel/plugin-proposal-optional-chaining": "^7.12.1",
|
||||
"@babel/plugin-proposal-optional-chaining": "^7.12.7",
|
||||
"@babel/plugin-proposal-private-methods": "^7.12.1",
|
||||
"@babel/plugin-proposal-unicode-property-regex": "^7.12.1",
|
||||
"@babel/plugin-syntax-async-generators": "^7.8.0",
|
||||
|
@ -950,7 +938,7 @@
|
|||
"@babel/plugin-transform-arrow-functions": "^7.12.1",
|
||||
"@babel/plugin-transform-async-to-generator": "^7.12.1",
|
||||
"@babel/plugin-transform-block-scoped-functions": "^7.12.1",
|
||||
"@babel/plugin-transform-block-scoping": "^7.12.1",
|
||||
"@babel/plugin-transform-block-scoping": "^7.12.11",
|
||||
"@babel/plugin-transform-classes": "^7.12.1",
|
||||
"@babel/plugin-transform-computed-properties": "^7.12.1",
|
||||
"@babel/plugin-transform-destructuring": "^7.12.1",
|
||||
|
@ -974,14 +962,14 @@
|
|||
"@babel/plugin-transform-reserved-words": "^7.12.1",
|
||||
"@babel/plugin-transform-shorthand-properties": "^7.12.1",
|
||||
"@babel/plugin-transform-spread": "^7.12.1",
|
||||
"@babel/plugin-transform-sticky-regex": "^7.12.1",
|
||||
"@babel/plugin-transform-sticky-regex": "^7.12.7",
|
||||
"@babel/plugin-transform-template-literals": "^7.12.1",
|
||||
"@babel/plugin-transform-typeof-symbol": "^7.12.1",
|
||||
"@babel/plugin-transform-typeof-symbol": "^7.12.10",
|
||||
"@babel/plugin-transform-unicode-escapes": "^7.12.1",
|
||||
"@babel/plugin-transform-unicode-regex": "^7.12.1",
|
||||
"@babel/preset-modules": "^0.1.3",
|
||||
"@babel/types": "^7.12.1",
|
||||
"core-js-compat": "^3.6.2",
|
||||
"@babel/types": "^7.12.11",
|
||||
"core-js-compat": "^3.8.0",
|
||||
"semver": "^5.5.0"
|
||||
}
|
||||
},
|
||||
|
@ -1008,101 +996,120 @@
|
|||
}
|
||||
},
|
||||
"@babel/template": {
|
||||
"version": "7.10.4",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.10.4.tgz",
|
||||
"integrity": "sha512-ZCjD27cGJFUB6nmCB1Enki3r+L5kJveX9pq1SvAUKoICy6CZ9yD8xO086YXdYhvNjBdnekm4ZnaP5yC8Cs/1tA==",
|
||||
"version": "7.12.7",
|
||||
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz",
|
||||
"integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.10.4",
|
||||
"@babel/parser": "^7.10.4",
|
||||
"@babel/types": "^7.10.4"
|
||||
"@babel/parser": "^7.12.7",
|
||||
"@babel/types": "^7.12.7"
|
||||
}
|
||||
},
|
||||
"@babel/traverse": {
|
||||
"version": "7.12.5",
|
||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.5.tgz",
|
||||
"integrity": "sha512-xa15FbQnias7z9a62LwYAA5SZZPkHIXpd42C6uW68o8uTuua96FHZy1y61Va5P/i83FAAcMpW8+A/QayntzuqA==",
|
||||
"version": "7.12.12",
|
||||
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.12.tgz",
|
||||
"integrity": "sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/code-frame": "^7.10.4",
|
||||
"@babel/generator": "^7.12.5",
|
||||
"@babel/helper-function-name": "^7.10.4",
|
||||
"@babel/helper-split-export-declaration": "^7.11.0",
|
||||
"@babel/parser": "^7.12.5",
|
||||
"@babel/types": "^7.12.5",
|
||||
"@babel/code-frame": "^7.12.11",
|
||||
"@babel/generator": "^7.12.11",
|
||||
"@babel/helper-function-name": "^7.12.11",
|
||||
"@babel/helper-split-export-declaration": "^7.12.11",
|
||||
"@babel/parser": "^7.12.11",
|
||||
"@babel/types": "^7.12.12",
|
||||
"debug": "^4.1.0",
|
||||
"globals": "^11.1.0",
|
||||
"lodash": "^4.17.19"
|
||||
},
|
||||
"dependencies": {
|
||||
"@babel/code-frame": {
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz",
|
||||
"integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/highlight": "^7.10.4"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"@babel/types": {
|
||||
"version": "7.12.6",
|
||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.6.tgz",
|
||||
"integrity": "sha512-hwyjw6GvjBLiyy3W0YQf0Z5Zf4NpYejUnKFcfcUhZCSffoBBp30w6wP2Wn6pk31jMYZvcOrB/1b7cGXvEoKogA==",
|
||||
"version": "7.12.12",
|
||||
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.12.tgz",
|
||||
"integrity": "sha512-lnIX7piTxOH22xE7fDXDbSHg9MM1/6ORnafpJmov5rs0kX5g4BZxeXNJLXsMRiO0U5Rb8/FvMS6xlTnTHvxonQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/helper-validator-identifier": "^7.10.4",
|
||||
"@babel/helper-validator-identifier": "^7.12.11",
|
||||
"lodash": "^4.17.19",
|
||||
"to-fast-properties": "^2.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@babel/helper-validator-identifier": {
|
||||
"version": "7.12.11",
|
||||
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
|
||||
"integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"@nativescript-community/perms": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/perms/-/perms-2.1.1.tgz",
|
||||
"integrity": "sha512-Ay4v1lEGTQ5rYYlYA8CKcCXuxOuyU4633r/JXi9aRG8MgxfOT+rDuQLgSz+LLCYmBK1ndfHHfyUTilkaUj1H8Q=="
|
||||
"version": "2.1.4",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/perms/-/perms-2.1.4.tgz",
|
||||
"integrity": "sha512-5SeHHRAklrzy2FdUdpM1lr/uceIBrHFzciaRhoeBW54jHzs5ImbR541pvUE/uM5+AYok+Dy8wbr8kvCT4f4Ecg=="
|
||||
},
|
||||
"@nativescript-community/text": {
|
||||
"version": "1.3.6",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/text/-/text-1.3.6.tgz",
|
||||
"integrity": "sha512-SVTfg+Pp7wqBLoIBpzPOJQXLc8I47dGQrtA5QRxu2FJ0GGpnD1FyAxyDW6K5Fek7U3Bw0/KGVAmiwBPA/yhHHg=="
|
||||
"version": "1.3.11",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/text/-/text-1.3.11.tgz",
|
||||
"integrity": "sha512-slK3Wr6eBwkyGdeelanwI8Y8gkaaWXBGxUfLjb8HgTxlHMvRkBJjXKZcAZ0EFTsC+oGKIGwaJWm+wWrqdm1MLw=="
|
||||
},
|
||||
"@nativescript-community/ui-material-activityindicator": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-activityindicator/-/ui-material-activityindicator-5.1.1.tgz",
|
||||
"integrity": "sha512-V/xm/Mgq//0gTg723YJIwWzNbcajphesSpCHEzClVfQzhHwspo/UbLRHfCPKnSEyQN0btn3RxA1gsPpyANVy2Q==",
|
||||
"version": "5.1.16",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-activityindicator/-/ui-material-activityindicator-5.1.16.tgz",
|
||||
"integrity": "sha512-G4AFYqIltz+uagiHgR82U9hnTURPd+7P9Ja/UCeq1zEpziu31dMbBsaQ7qzYR8t80kDogxarwRSrO+IYTMRNCw==",
|
||||
"requires": {
|
||||
"@nativescript-community/ui-material-core": "^5.1.1"
|
||||
"@nativescript-community/ui-material-core": "^5.1.16"
|
||||
}
|
||||
},
|
||||
"@nativescript-community/ui-material-button": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-button/-/ui-material-button-5.1.1.tgz",
|
||||
"integrity": "sha512-h732SkqZFiu4T58e8BbXuHazeDTlU/cwstINCn97rSHon81tzsYHgpPSii5GxE3AVq/CBmKfU0LXLwodNnH0mQ==",
|
||||
"version": "5.1.16",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-button/-/ui-material-button-5.1.16.tgz",
|
||||
"integrity": "sha512-rT7qXDUQ4mdZx7Ove095OhyoNv1CaawsxC7XlhDzeYg137owp84927u0tRDIH+kv7E0Gp8IEM43+ulY9kAFDdQ==",
|
||||
"requires": {
|
||||
"@nativescript-community/text": "^1.2.5",
|
||||
"@nativescript-community/ui-material-core": "^5.1.1"
|
||||
"@nativescript-community/text": "^1.3.10",
|
||||
"@nativescript-community/ui-material-core": "^5.1.16"
|
||||
}
|
||||
},
|
||||
"@nativescript-community/ui-material-core": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-core/-/ui-material-core-5.1.1.tgz",
|
||||
"integrity": "sha512-3Ozc5NLRcHoXIxlooCfPj0F24Nqef37N1bsjQh+7oHBcBEYuOACcsd3lIkKp0MzVFTLja1nDwElxoml9PU9YDQ==",
|
||||
"version": "5.1.16",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-core/-/ui-material-core-5.1.16.tgz",
|
||||
"integrity": "sha512-RtuVFgC3NmtIyjkpHf5knYTsvcm/LvEfoEqjFlHPl5HxT/x1MuRerZs38FFtuwmbJVYpTQ6mxeDxTHiwC4jurQ==",
|
||||
"requires": {
|
||||
"@nativescript/hook": "~2.0.0"
|
||||
}
|
||||
},
|
||||
"@nativescript-community/ui-material-floatingactionbutton": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-floatingactionbutton/-/ui-material-floatingactionbutton-5.1.1.tgz",
|
||||
"integrity": "sha512-fdkqr7UfJFRo3feynNCOFgBazykBuIpD5unuKawrt4wh0oNeApPD9BMV7ngS57vWkwP1+JYGDR6/symFvkfgLw==",
|
||||
"version": "5.1.16",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-floatingactionbutton/-/ui-material-floatingactionbutton-5.1.16.tgz",
|
||||
"integrity": "sha512-VpGVzLvO7A8YFZ5fVGBfeusu+xUjgA2c2qH0Ez4SBJJama4Q/5T8DgQUHxulKConUA6vguNMRuB1yfSZ/4AtFA==",
|
||||
"requires": {
|
||||
"@nativescript-community/ui-material-core": "^5.1.1"
|
||||
"@nativescript-community/ui-material-core": "^5.1.16"
|
||||
}
|
||||
},
|
||||
"@nativescript-community/ui-material-progress": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-progress/-/ui-material-progress-5.1.1.tgz",
|
||||
"integrity": "sha512-ejItPEyxCj27i4xQfrMOLEF0jafT2ZMqY6l39d6bNMW0ggP7pEIP07ocRd0eIsXy9lqFMryEekBqlpEnKVjrsQ==",
|
||||
"version": "5.1.16",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-progress/-/ui-material-progress-5.1.16.tgz",
|
||||
"integrity": "sha512-v7L8bkTurF4F4Bn8+V4UeNTR3Q7VQkOrplmHeeZePAR/4a55z5BI6WaWgvO22yrMQ8InWAUsKQvu3S2JXNSFYw==",
|
||||
"requires": {
|
||||
"@nativescript-community/ui-material-core": "^5.1.1"
|
||||
"@nativescript-community/ui-material-core": "^5.1.16"
|
||||
}
|
||||
},
|
||||
"@nativescript-community/ui-material-ripple": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-ripple/-/ui-material-ripple-5.1.1.tgz",
|
||||
"integrity": "sha512-BKFTFGb7Yve5Kp0uVw24kcW6xUGG5SzqpHdtAL3ZMsmedhZytDLtGqb/olWH8tQbJu5JiUW/I6/ot/7VH7ZQSA==",
|
||||
"version": "5.1.16",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript-community/ui-material-ripple/-/ui-material-ripple-5.1.16.tgz",
|
||||
"integrity": "sha512-TOiF+MXZlDFbxgr/wsXA6WsYB4bg7k0eoQWK8GFhiSlFiQxRxqlch1uXwVj8aVRvULPJH65/Qc9LaNQjWT90hQ==",
|
||||
"requires": {
|
||||
"@nativescript-community/ui-material-core": "^5.1.1"
|
||||
"@nativescript-community/ui-material-core": "^5.1.16"
|
||||
}
|
||||
},
|
||||
"@nativescript/android": {
|
||||
|
@ -1148,9 +1155,9 @@
|
|||
"integrity": "sha512-I9ue8S0jJ4V1h0aJLO6ZrSoxqqlUaVXWAnNu+EHsJ70WHujPp0yslYrmIYsKfzlNoZVEIMA5Fjx/sW7UWIwL9g=="
|
||||
},
|
||||
"@nativescript/theme": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript/theme/-/theme-3.0.0.tgz",
|
||||
"integrity": "sha512-7oxHRF9R36oMie//rvZAI1kdizGJwZcRISlSiA3pAoCiqHMRpuM4tb3V+nTS2waSVA1tmUtU50oHcG7NEcEv7A=="
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@nativescript/theme/-/theme-3.0.1.tgz",
|
||||
"integrity": "sha512-5rduFdEjjGyUgK+jaJ/2EHxi+qAgTZuK9XgfxHw0KJAIIWP9HNL8JV8IVUBeIodRPHhSJZJVQT7t+8peH/4dVQ=="
|
||||
},
|
||||
"@nativescript/webpack": {
|
||||
"version": "3.0.8",
|
||||
|
@ -1277,9 +1284,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"@types/node": {
|
||||
"version": "14.14.8",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.8.tgz",
|
||||
"integrity": "sha512-z/5Yd59dCKI5kbxauAJgw6dLPzW+TNOItNE00PkpzNwUIEwdj/Lsqwq94H5DdYBX7C13aRA0CY32BK76+neEUA==",
|
||||
"version": "14.14.16",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.16.tgz",
|
||||
"integrity": "sha512-naXYePhweTi+BMv11TgioE2/FXU4fSl29HAH1ffxVciNsH3rYXjNP2yM8wqmSm7jS20gM8TIklKiTen+1iVncw==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/parse-json": {
|
||||
|
@ -1864,38 +1871,17 @@
|
|||
"dev": true
|
||||
},
|
||||
"babel-loader": {
|
||||
"version": "8.2.1",
|
||||
"resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.1.tgz",
|
||||
"integrity": "sha512-dMF8sb2KQ8kJl21GUjkW1HWmcsL39GOV5vnzjqrCzEPNY0S0UfMLnumidiwIajDSBmKhYf5iRW+HXaM4cvCKBw==",
|
||||
"version": "8.2.2",
|
||||
"resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.2.tgz",
|
||||
"integrity": "sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"find-cache-dir": "^2.1.0",
|
||||
"find-cache-dir": "^3.3.1",
|
||||
"loader-utils": "^1.4.0",
|
||||
"make-dir": "^2.1.0",
|
||||
"pify": "^4.0.1",
|
||||
"make-dir": "^3.1.0",
|
||||
"schema-utils": "^2.6.5"
|
||||
},
|
||||
"dependencies": {
|
||||
"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"
|
||||
}
|
||||
},
|
||||
"json5": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
|
||||
|
@ -1915,59 +1901,6 @@
|
|||
"emojis-list": "^3.0.0",
|
||||
"json5": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"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-limit": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
|
||||
"integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"p-try": "^2.0.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"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -2283,16 +2216,16 @@
|
|||
}
|
||||
},
|
||||
"browserslist": {
|
||||
"version": "4.14.7",
|
||||
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.7.tgz",
|
||||
"integrity": "sha512-BSVRLCeG3Xt/j/1cCGj1019Wbty0H+Yvu2AOuZSuoaUWn3RatbL33Cxk+Q4jRMRAbOm0p7SLravLjpnT6s0vzQ==",
|
||||
"version": "4.16.0",
|
||||
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.0.tgz",
|
||||
"integrity": "sha512-/j6k8R0p3nxOC6kx5JGAxsnhc9ixaWJfYc+TNTzxg6+ARaESAvQGV7h0uNOB4t+pLQJZWzcrMxXOxjgsCj3dqQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"caniuse-lite": "^1.0.30001157",
|
||||
"caniuse-lite": "^1.0.30001165",
|
||||
"colorette": "^1.2.1",
|
||||
"electron-to-chromium": "^1.3.591",
|
||||
"electron-to-chromium": "^1.3.621",
|
||||
"escalade": "^3.1.1",
|
||||
"node-releases": "^1.1.66"
|
||||
"node-releases": "^1.1.67"
|
||||
}
|
||||
},
|
||||
"buffer": {
|
||||
|
@ -2432,9 +2365,9 @@
|
|||
}
|
||||
},
|
||||
"caniuse-lite": {
|
||||
"version": "1.0.30001159",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001159.tgz",
|
||||
"integrity": "sha512-w9Ph56jOsS8RL20K9cLND3u/+5WASWdhC/PPrf+V3/HsM3uHOavWOR1Xzakbv4Puo/srmPHudkmCRWM7Aq+/UA==",
|
||||
"version": "1.0.30001170",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001170.tgz",
|
||||
"integrity": "sha512-Dd4d/+0tsK0UNLrZs3CvNukqalnVTRrxb5mcQm8rHL49t7V5ZaTygwXkrq+FB+dVDf++4ri8eJnFEJAB8332PA==",
|
||||
"dev": true
|
||||
},
|
||||
"caseless": {
|
||||
|
@ -2786,12 +2719,12 @@
|
|||
}
|
||||
},
|
||||
"core-js-compat": {
|
||||
"version": "3.7.0",
|
||||
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.7.0.tgz",
|
||||
"integrity": "sha512-V8yBI3+ZLDVomoWICO6kq/CD28Y4r1M7CWeO4AGpMdMfseu8bkSubBmUPySMGKRTS+su4XQ07zUkAsiu9FCWTg==",
|
||||
"version": "3.8.1",
|
||||
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.8.1.tgz",
|
||||
"integrity": "sha512-a16TLmy9NVD1rkjUGbwuyWkiDoN0FDpAwrfLONvHFQx0D9k7J9y0srwMT8QP/Z6HE3MIFaVynEeYwZwPX1o5RQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"browserslist": "^4.14.6",
|
||||
"browserslist": "^4.15.0",
|
||||
"semver": "7.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
|
@ -3005,9 +2938,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"debug": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz",
|
||||
"integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==",
|
||||
"version": "4.3.1",
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz",
|
||||
"integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ms": "2.1.2"
|
||||
|
@ -3216,9 +3149,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"electron-to-chromium": {
|
||||
"version": "1.3.598",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.598.tgz",
|
||||
"integrity": "sha512-G5Ztk23/ubLYVPxPXnB1uu105uzIPd4xB/D8ld8x1GaSC9+vU9NZL16nYZya8H77/7CCKKN7dArzJL3pBs8N7A==",
|
||||
"version": "1.3.633",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.633.tgz",
|
||||
"integrity": "sha512-bsVCsONiVX1abkWdH7KtpuDAhsQ3N3bjPYhROSAXE78roJKet0Y5wznA14JE9pzbwSZmSMAW6KiKYf1RvbTJkA==",
|
||||
"dev": true
|
||||
},
|
||||
"elliptic": {
|
||||
|
@ -4179,9 +4112,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"get-intrinsic": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.1.tgz",
|
||||
"integrity": "sha512-ZnWP+AmS1VUaLgTRy47+zKtjTxz+0xMpx3I52i+aalBK1QP19ggLF3Db89KJX7kjfOfP2eoa01qc++GwPgufPg==",
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.2.tgz",
|
||||
"integrity": "sha512-aeX0vrFm21ILl3+JpFFRNe9aUvp6VFZb2/CTbgLb8j75kOhvoNYjt9d8KA/tJG4gSo8nzEDedRl0h7vDmBYRVg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"function-bind": "^1.1.1",
|
||||
|
@ -5528,6 +5461,11 @@
|
|||
"to-regex": "^3.0.1"
|
||||
}
|
||||
},
|
||||
"nativescript-accelerometer": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/nativescript-accelerometer/-/nativescript-accelerometer-3.0.0.tgz",
|
||||
"integrity": "sha512-2sEfxTzzeXae6sDvW2dymgsNb8Z6qgNQOCUKJz+G8GI00w807R+EK9+zOwQcaW6jne741D0laAwzTW+ofg9HqA=="
|
||||
},
|
||||
"nativescript-couchbase-plugin": {
|
||||
"version": "0.9.6",
|
||||
"resolved": "https://registry.npmjs.org/nativescript-couchbase-plugin/-/nativescript-couchbase-plugin-0.9.6.tgz",
|
||||
|
@ -5560,6 +5498,11 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"nativescript-intl": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/nativescript-intl/-/nativescript-intl-4.0.2.tgz",
|
||||
"integrity": "sha512-a8VGIFhLYCMtdTuZpiE2d9NcxLkkHGYt2EeG37aRTG4TjlMrUhV0IxfoTzj9zDGk1p1xAPSIo6yGPb2Z9hay2A=="
|
||||
},
|
||||
"nativescript-permissions": {
|
||||
"version": "1.3.11",
|
||||
"resolved": "https://registry.npmjs.org/nativescript-permissions/-/nativescript-permissions-1.3.11.tgz",
|
||||
|
@ -5610,18 +5553,20 @@
|
|||
"ts-node": "^8.10.2"
|
||||
}
|
||||
},
|
||||
"nativescript-vibrate": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/nativescript-vibrate/-/nativescript-vibrate-4.0.1.tgz",
|
||||
"integrity": "sha512-T9VspAu+pgYM/AWLradA4HPv/tdfx8jrhIOD02PZs09KhJyjQE3BoubnHcmg0neeQAhgxHiuXGdit8QOAyKaBA=="
|
||||
},
|
||||
"nativescript-vue": {
|
||||
"version": "2.8.1",
|
||||
"resolved": "https://registry.npmjs.org/nativescript-vue/-/nativescript-vue-2.8.1.tgz",
|
||||
"integrity": "sha512-mJuEetMZ+YjmxbqD9H3y2oWWAUUDxpGS4fniL8NM9QVSQZJLZbE9ATWQcFR2ZqvCIsvv7nS3bZfXUy+YbRP/Sw==",
|
||||
"requires": {
|
||||
"@nativescript/hook": "2.0.0"
|
||||
}
|
||||
"version": "2.8.3",
|
||||
"resolved": "https://registry.npmjs.org/nativescript-vue/-/nativescript-vue-2.8.3.tgz",
|
||||
"integrity": "sha512-2F3Jv0Y1gzATjcVnFn7RaJm9QDAINOJNtQ4Wh0B3lGiC5qsmQy91IjF2wxVOzGk5QNA2v4shSG+Emco53n0+6w=="
|
||||
},
|
||||
"nativescript-vue-template-compiler": {
|
||||
"version": "2.8.1",
|
||||
"resolved": "https://registry.npmjs.org/nativescript-vue-template-compiler/-/nativescript-vue-template-compiler-2.8.1.tgz",
|
||||
"integrity": "sha512-0W2Ub1LyI879CGNB09WiHxrGw2fJIKii3G1K4egDzBbQ7sKqsED2vy2GT1lx1ybjUM3bkiz8gq8LsOc1EDHUig==",
|
||||
"version": "2.8.3",
|
||||
"resolved": "https://registry.npmjs.org/nativescript-vue-template-compiler/-/nativescript-vue-template-compiler-2.8.3.tgz",
|
||||
"integrity": "sha512-xePEXKdQ1nLJbj4LF3VEyluz6SOL0dSonNb3gKGJ7nfGEgBywm8nUZdwmwGcy2/1JL4CWtRs9f9wz431McXBTg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"de-indent": "^1.0.2",
|
||||
|
@ -8306,9 +8251,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"vue-loader": {
|
||||
"version": "15.9.5",
|
||||
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.5.tgz",
|
||||
"integrity": "sha512-oeMOs2b5o5gRqkxfds10bCx6JeXYTwivRgbb8hzOrcThD2z1+GqEKE3EX9A2SGbsYDf4rXwRg6D5n1w0jO5SwA==",
|
||||
"version": "15.9.6",
|
||||
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.6.tgz",
|
||||
"integrity": "sha512-j0cqiLzwbeImIC6nVIby2o/ABAWhlppyL/m5oJ67R5MloP0hj/DtFgb0Zmq3J9CG7AJ+AXIvHVnJAPBvrLyuDg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@vue/component-compiler-utils": "^3.1.0",
|
||||
|
@ -8379,9 +8324,9 @@
|
|||
"dev": true
|
||||
},
|
||||
"vuex": {
|
||||
"version": "3.5.1",
|
||||
"resolved": "https://registry.npmjs.org/vuex/-/vuex-3.5.1.tgz",
|
||||
"integrity": "sha512-w7oJzmHQs0FM9LXodfskhw9wgKBiaB+totOdb8sNzbTB2KDCEEwEs29NzBZFh/lmEK1t5tDmM1vtsO7ubG1DFw=="
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/vuex/-/vuex-3.6.0.tgz",
|
||||
"integrity": "sha512-W74OO2vCJPs9/YjNjW8lLbj+jzT24waTo2KShI8jLvJW8OaIkgb3wuAMA7D+ZiUxDOx3ubwSZTaJBip9G8a3aQ=="
|
||||
},
|
||||
"watchpack": {
|
||||
"version": "1.7.5",
|
||||
|
|
33
package.json
33
package.json
|
@ -5,39 +5,42 @@
|
|||
"author": "Vishnu Raghav <design@vishnuraghav.com>",
|
||||
"license": "GPL",
|
||||
"dependencies": {
|
||||
"@nativescript-community/perms": "^2.1.1",
|
||||
"@nativescript-community/ui-material-activityindicator": "^5.0.30",
|
||||
"@nativescript-community/ui-material-button": "^5.1.0",
|
||||
"@nativescript-community/ui-material-floatingactionbutton": "^5.0.30",
|
||||
"@nativescript-community/ui-material-progress": "^5.0.30",
|
||||
"@nativescript-community/ui-material-ripple": "^5.0.30",
|
||||
"@nativescript-community/perms": "^2.1.4",
|
||||
"@nativescript-community/ui-material-activityindicator": "^5.1.16",
|
||||
"@nativescript-community/ui-material-button": "^5.1.16",
|
||||
"@nativescript-community/ui-material-floatingactionbutton": "^5.1.16",
|
||||
"@nativescript-community/ui-material-progress": "^5.1.16",
|
||||
"@nativescript-community/ui-material-ripple": "^5.1.16",
|
||||
"@nativescript/core": "~7.0.0",
|
||||
"@nativescript/localize": "^5.0.2",
|
||||
"@nativescript/social-share": "^2.0.1",
|
||||
"@nativescript/theme": "^3.0.0",
|
||||
"@nativescript/theme": "^3.0.1",
|
||||
"@nativescript/zip": "^5.0.0",
|
||||
"@nstudio/nativescript-checkbox": "^2.0.4",
|
||||
"nativescript-accelerometer": "^3.0.0",
|
||||
"nativescript-couchbase-plugin": "^0.9.6",
|
||||
"nativescript-feedback": "^2.0.0",
|
||||
"nativescript-imagecropper": "^4.0.1",
|
||||
"nativescript-intl": "^4.0.2",
|
||||
"nativescript-plugin-filepicker": "^1.0.0",
|
||||
"nativescript-toast": "^2.0.0",
|
||||
"nativescript-ui-calendar": "^7.0.2",
|
||||
"nativescript-ui-listview": "^9.0.4",
|
||||
"nativescript-ui-sidedrawer": "^9.0.3",
|
||||
"nativescript-vue": "^2.8.1",
|
||||
"vuex": "^3.5.1"
|
||||
"nativescript-vibrate": "^4.0.1",
|
||||
"nativescript-vue": "^2.8.3",
|
||||
"vuex": "^3.6.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.12.3",
|
||||
"@babel/preset-env": "^7.12.1",
|
||||
"@babel/core": "^7.12.10",
|
||||
"@babel/preset-env": "^7.12.11",
|
||||
"@nativescript/android": "7.0.1",
|
||||
"@nativescript/webpack": "^3.0.8",
|
||||
"@types/node": "^14.14.8",
|
||||
"babel-loader": "^8.2.1",
|
||||
"nativescript-vue-template-compiler": "^2.8.1",
|
||||
"@types/node": "^14.14.16",
|
||||
"babel-loader": "^8.2.2",
|
||||
"nativescript-vue-template-compiler": "^2.8.3",
|
||||
"node-sass": "^4.14.1",
|
||||
"vue-loader": "^15.9.5"
|
||||
"vue-loader": "^15.9.6"
|
||||
},
|
||||
"main": "main"
|
||||
}
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,2 +1,2 @@
|
|||
#Sat Dec 12 23:32:21 IST 2020
|
||||
#Tue Dec 29 00:27:03 IST 2020
|
||||
gradle.version=6.4
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -18,8 +18,7 @@
|
|||
},
|
||||
"@nativescript/social-share": {
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript/social-share/platforms/android/AndroidManifest.xml": "ca6e2ceca22448641563fa6f6c773ef10b292e10",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript/social-share/platforms/android/res/xml/provider_paths.xml": "dbe562dfa44616ea40d88a3cbd74b3e8f44c54f3",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript/social-share/platforms/android/social_share.aar": "3d89f16bd7f2490c09bb8eab1d74e9f88033ffe5"
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript/social-share/platforms/android/res/xml/provider_paths.xml": "dbe562dfa44616ea40d88a3cbd74b3e8f44c54f3"
|
||||
},
|
||||
"@nativescript/zip": {
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript/zip/platforms/android/include.gradle": "81c5f85b571d2665da42be015e2d1dfd271ee4e6"
|
||||
|
@ -55,10 +54,17 @@
|
|||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/nativescript-ui-sidedrawer/platforms/android/TNSSideDrawer-release.aar": "ae03340e741bdf430de4849d4dd117bf07197851",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/nativescript-ui-sidedrawer/platforms/android/typings/sidedrawer.d.ts": "8256a2295125597755fe6a6faee866b0750e65f2"
|
||||
},
|
||||
"nativescript-vibrate": {
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/nativescript-vibrate/platforms/android/README.md": "45f2f63427be0a461a7e2dfd5ff0ad5bab64068f",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/nativescript-vibrate/platforms/android/include.gradle": "06e7e1be49eb6d614094596003280aa7eea789f3",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/nativescript-vibrate/platforms/android/nativescript_vibrate.aar": "a60d480c8553e72412f49655a113759fe3321ccb"
|
||||
},
|
||||
"@nativescript-community/ui-material-core": {
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/ui-material-core/platforms/android/AndroidManifest.xml": "9b6f49aa9c71e8a45ec570027e025274ffcadc96",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/ui-material-core/platforms/android/include.gradle": "ec90dc697edab3c184ec95b0a42c9f206900f048",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/ui-material-core/platforms/android/java/com/nativescript/material/core/Utils.java": "3813226945705be3d52cf19dc945ea9bf2c77e12",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/ui-material-core/platforms/android/res/layout/material_page.xml": "29f912255e893697d6abd438f67a854149136292",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/ui-material-core/platforms/android/ui_material_core.aar": "3fe79b5007be09ca25466ea2c7021d86fd664dca"
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/ui-material-core/platforms/android/ui_material_core.aar": "16ba6c7b1ca76423844a6e8a94bdbeed395c1432"
|
||||
},
|
||||
"@nativescript-community/text": {
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/text/platforms/android/AndroidManifest.xml": "b80912f909195692d3bd071566274feba0b37660",
|
||||
|
@ -66,11 +72,11 @@
|
|||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/text/platforms/android/java/com/nativescript/text/CustomTypefaceSpan.java": "421f984280aa806183057f2ddd53febdbc32d2b1",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/text/platforms/android/java/com/nativescript/text/Font.java": "fb4d246ad367d178e11ef08c34ec182418d30890",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/text/platforms/android/java/com/nativescript/text/HtmlToSpannedConverter.java": "38643430e4b8cac690b89a07adc3a86f7060f93d",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/text/platforms/android/java/com/nativescript/text/URLSpanNoUnderline.java": "f1535d3e8cdd10b6d25a906a658fd4b77a836b20",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/text/platforms/android/text.aar": "da95e8963059120f05961c45e7774f63b62a697d"
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/text/platforms/android/java/com/nativescript/text/URLSpanNoUnderline.java": "b3da85c1d16eff30c54fb5725e1e46fea265d7ce",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/@nativescript-community/text/platforms/android/text.aar": "77d471b2127e5f1f2b78b89656e7287bcf488b22"
|
||||
},
|
||||
"nativescript-ui-core": {
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/nativescript-ui-core/platforms/android/TNSCore-release.aar": "0e2fe0b867821ad56b8f0b9c8ac4c90f4c399e3c",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/nativescript-ui-core/platforms/android/typings/core.d.ts": "5c032652edfa1719ef8c8190fc0f66d3b1c313c2"
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/nativescript-ui-core/platforms/android/typings/core.d.ts": "5c032652edfa1719ef8c8190fc0f66d3b1c313c2",
|
||||
"/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/node_modules/nativescript-ui-core/platforms/android/TNSCore-release.aar": "0e2fe0b867821ad56b8f0b9c8ac4c90f4c399e3c"
|
||||
}
|
||||
}
|
|
@ -1,8 +1,7 @@
|
|||
{
|
||||
"time": "Sat Dec 12 2020 23:32:03 GMT+0530 (India Standard Time)",
|
||||
"time": "Tue Dec 29 2020 11:28:21 GMT+0530 (India Standard Time)",
|
||||
"nativePlatformStatus": "3",
|
||||
"release": true,
|
||||
"changesRequireBuild": true,
|
||||
"projectFileHash": "fb9e88d4de45c25d11cdb213099296c37ead4f86feca0660ea574579198bbb2d",
|
||||
"changesRequireBuildTime": "Sat Dec 12 2020 23:32:03 GMT+0530 (India Standard Time)"
|
||||
"projectFileHash": "de8936b04a8811e04d93e9717fc4448bf88e2e84157623dd6556d8a57dadf3a1",
|
||||
"changesRequireBuildTime": "Tue Dec 29 2020 11:28:21 GMT+0530 (India Standard Time)"
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,13 +0,0 @@
|
|||
/**
|
||||
* Automatically generated file. DO NOT MODIFY
|
||||
*/
|
||||
package com.vishnuraghav.enrecipes;
|
||||
|
||||
public final class BuildConfig {
|
||||
public static final boolean DEBUG = false;
|
||||
public static final String APPLICATION_ID = "com.vishnuraghav.enrecipes";
|
||||
public static final String BUILD_TYPE = "release";
|
||||
public static final String FLAVOR = "";
|
||||
public static final int VERSION_CODE = 4;
|
||||
public static final String VERSION_NAME = "1.1.3";
|
||||
}
|
|
@ -1 +0,0 @@
|
|||
{}
|
|
@ -1 +0,0 @@
|
|||
[{"type":"MAIN","splits":[],"versionCode":4,"versionName":"1.1.3","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release","dirName":""}]
|
File diff suppressed because one or more lines are too long
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-af/values-af.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-af/values-af.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,213,309,415,500,603,721,798,874,965,1058,1153,1247,1346,1439,1534,1633,1728,1822,1903,2010,2115,2212,2320,2423,2525,2679,2777",
|
||||
"endColumns": "107,95,105,84,102,117,76,75,90,92,94,93,98,92,94,98,94,93,80,106,104,96,107,102,101,153,97,80",
|
||||
"endOffsets": "208,304,410,495,598,716,793,869,960,1053,1148,1242,1341,1434,1529,1628,1723,1817,1898,2005,2110,2207,2315,2418,2520,2674,2772,2853"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-af/values-af.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2858",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2954"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-am/values-am.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-am/values-am.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,203,301,407,493,596,713,791,867,958,1051,1143,1237,1337,1430,1525,1618,1709,1800,1880,1980,2080,2176,2278,2378,2477,2627,2723",
|
||||
"endColumns": "97,97,105,85,102,116,77,75,90,92,91,93,99,92,94,92,90,90,79,99,99,95,101,99,98,149,95,79",
|
||||
"endOffsets": "198,296,402,488,591,708,786,862,953,1046,1138,1232,1332,1425,1520,1613,1704,1795,1875,1975,2075,2171,2273,2373,2472,2622,2718,2798"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-am/values-am.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2803",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2899"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-ar/values-ar.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-ar/values-ar.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,213,317,424,506,607,721,801,879,970,1063,1155,1249,1349,1442,1537,1630,1721,1815,1894,1999,2097,2195,2303,2403,2506,2661,2758",
|
||||
"endColumns": "107,103,106,81,100,113,79,77,90,92,91,93,99,92,94,92,90,93,78,104,97,97,107,99,102,154,96,81",
|
||||
"endOffsets": "208,312,419,501,602,716,796,874,965,1058,1150,1244,1344,1437,1532,1625,1716,1810,1889,1994,2092,2190,2298,2398,2501,2656,2753,2835"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-ar/values-ar.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2840",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2936"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-as/values-as.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-as/values-as.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2924",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3020"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-as/values-as.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,213,312,419,510,612,732,809,884,975,1068,1163,1257,1357,1450,1545,1639,1730,1821,1907,2020,2128,2227,2336,2452,2572,2739,2841",
|
||||
"endColumns": "107,98,106,90,101,119,76,74,90,92,94,93,99,92,94,93,90,90,85,112,107,98,108,115,119,166,101,82",
|
||||
"endOffsets": "208,307,414,505,607,727,804,879,970,1063,1158,1252,1352,1445,1540,1634,1725,1816,1902,2015,2123,2222,2331,2447,2567,2734,2836,2919"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-az/values-az.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-az/values-az.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2897",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2993"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-az/values-az.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,215,316,426,514,621,735,817,895,986,1079,1173,1272,1372,1465,1560,1654,1745,1837,1922,2027,2133,2233,2342,2447,2549,2707,2813",
|
||||
"endColumns": "109,100,109,87,106,113,81,77,90,92,93,98,99,92,94,93,90,91,84,104,105,99,108,104,101,157,105,83",
|
||||
"endOffsets": "210,311,421,509,616,730,812,890,981,1074,1168,1267,1367,1460,1555,1649,1740,1832,1917,2022,2128,2228,2337,2442,2544,2702,2808,2892"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-b+sr+Latn/values-b+sr+Latn.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-b+sr+Latn/values-b+sr+Latn.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,212,313,419,505,609,731,816,898,989,1082,1177,1271,1371,1464,1559,1664,1755,1846,1932,2037,2143,2246,2353,2462,2569,2739,2836",
|
||||
"endColumns": "106,100,105,85,103,121,84,81,90,92,94,93,99,92,94,104,90,90,85,104,105,102,106,108,106,169,96,86",
|
||||
"endOffsets": "207,308,414,500,604,726,811,893,984,1077,1172,1266,1366,1459,1554,1659,1750,1841,1927,2032,2138,2241,2348,2457,2564,2734,2831,2918"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-b+sr+Latn/values-b+sr+Latn.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2923",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3019"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-be/values-be.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-be/values-be.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2917",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3013"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-be/values-be.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,225,328,444,530,635,754,834,911,1003,1097,1192,1286,1381,1475,1571,1666,1758,1850,1931,2037,2142,2240,2348,2454,2562,2735,2835",
|
||||
"endColumns": "119,102,115,85,104,118,79,76,91,93,94,93,94,93,95,94,91,91,80,105,104,97,107,105,107,172,99,81",
|
||||
"endOffsets": "220,323,439,525,630,749,829,906,998,1092,1187,1281,1376,1470,1566,1661,1753,1845,1926,2032,2137,2235,2343,2449,2557,2730,2830,2912"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-bg/values-bg.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-bg/values-bg.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,225,331,436,522,632,753,833,910,1001,1094,1189,1283,1383,1476,1571,1679,1770,1861,1944,2058,2166,2266,2380,2487,2595,2755,2854",
|
||||
"endColumns": "119,105,104,85,109,120,79,76,90,92,94,93,99,92,94,107,90,90,82,113,107,99,113,106,107,159,98,83",
|
||||
"endOffsets": "220,326,431,517,627,748,828,905,996,1089,1184,1278,1378,1471,1566,1674,1765,1856,1939,2053,2161,2261,2375,2482,2590,2750,2849,2933"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-bg/values-bg.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2938",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3034"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-bn/values-bn.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-bn/values-bn.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2922",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3018"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-bn/values-bn.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,213,319,425,514,619,740,823,905,996,1089,1183,1277,1377,1470,1565,1659,1750,1841,1927,2037,2141,2244,2352,2460,2565,2730,2835",
|
||||
"endColumns": "107,105,105,88,104,120,82,81,90,92,93,93,99,92,94,93,90,90,85,109,103,102,107,107,104,164,104,86",
|
||||
"endOffsets": "208,314,420,509,614,735,818,900,991,1084,1178,1272,1372,1465,1560,1654,1745,1836,1922,2032,2136,2239,2347,2455,2560,2725,2830,2917"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-bs/values-bs.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-bs/values-bs.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,226,323,430,516,620,742,827,909,1000,1093,1188,1282,1382,1475,1570,1665,1756,1847,1935,2038,2142,2243,2348,2462,2565,2734,2830",
|
||||
"endColumns": "120,96,106,85,103,121,84,81,90,92,94,93,99,92,94,94,90,90,87,102,103,100,104,113,102,168,95,86",
|
||||
"endOffsets": "221,318,425,511,615,737,822,904,995,1088,1183,1277,1377,1470,1565,1660,1751,1842,1930,2033,2137,2238,2343,2457,2560,2729,2825,2912"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-bs/values-bs.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2917",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3013"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-ca/values-ca.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-ca/values-ca.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2912",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3008"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-ca/values-ca.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,228,333,440,523,629,755,839,918,1009,1102,1195,1290,1388,1481,1574,1668,1759,1850,1931,2042,2150,2248,2358,2463,2571,2731,2830",
|
||||
"endColumns": "122,104,106,82,105,125,83,78,90,92,92,94,97,92,92,93,90,90,80,110,107,97,109,104,107,159,98,81",
|
||||
"endOffsets": "223,328,435,518,624,750,834,913,1004,1097,1190,1285,1383,1476,1569,1663,1754,1845,1926,2037,2145,2243,2353,2458,2566,2726,2825,2907"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-cs/values-cs.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-cs/values-cs.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,212,314,423,509,614,731,809,885,976,1069,1164,1258,1352,1445,1540,1637,1728,1819,1903,2007,2119,2218,2324,2435,2537,2700,2798",
|
||||
"endColumns": "106,101,108,85,104,116,77,75,90,92,94,93,93,92,94,96,90,90,83,103,111,98,105,110,101,162,97,82",
|
||||
"endOffsets": "207,309,418,504,609,726,804,880,971,1064,1159,1253,1347,1440,1535,1632,1723,1814,1898,2002,2114,2213,2319,2430,2532,2695,2793,2876"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-cs/values-cs.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2881",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2977"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-da/values-da.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-da/values-da.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,205,299,415,500,600,713,791,867,958,1051,1144,1238,1332,1425,1520,1618,1709,1800,1879,1987,2094,2190,2303,2406,2507,2660,2757",
|
||||
"endColumns": "99,93,115,84,99,112,77,75,90,92,92,93,93,92,94,97,90,90,78,107,106,95,112,102,100,152,96,79",
|
||||
"endOffsets": "200,294,410,495,595,708,786,862,953,1046,1139,1233,1327,1420,1515,1613,1704,1795,1874,1982,2089,2185,2298,2401,2502,2655,2752,2832"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-da/values-da.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2837",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2933"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,77 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-de/values-de.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/src/main/res/values-de/strings.xml",
|
||||
"from": {
|
||||
"startLines": "64,197,196,95,195,194,193,192,66,45,201,88,77,3,162,37,31,200,105,104,191,190,189,68,205,203,161,164,188,83,82,80,79,110,72,163,106,159,156,187,185,160,184,75,74,166,56,183,157,58,170,182,165,65,199,51,57,23,181,158,53,180,179,178,35,171,198,55,176,175,71,168,169,107,89,174,154,173,172,99,76,81,54,73,78,43,42,40,120,109,36,32,116,86,19,38,90,49,50,44,47,22,103,167,93,92,102,48,101,6,97,30,67,186,202,61,46,69,24,91,25,118,115,62,5,87,20,21,117,119,27,29,28,26,41,39,34,52,63,4,177,70,126,100,108,2,204,33,122,124,123,121,125,7,98,94,84,85,14,114,113,112,111,206,11,150,96,8,9,10,207,18,135,138,149,16,131,132,152,140,146,60,137,139,144,127,142,136,17,128,141,59,145,143,134,133,148,147,129,15,130,151,208,13,153,155,12",
|
||||
"startColumns": "2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2",
|
||||
"startOffsets": "4930,12843,12793,6677,12750,12703,12662,12614,5018,3399,13019,6249,5597,118,11278,2591,2058,12979,7646,7599,12565,12519,12475,5131,13242,13131,11235,11364,12432,5939,5891,5771,5716,7893,5337,11317,7686,11145,11026,12391,12290,11185,12247,5483,5441,11443,4439,12207,11064,4528,11625,12162,11403,4973,12933,4176,4486,1510,12124,11106,4299,12082,12041,11991,2431,11665,12882,4398,11891,11850,5296,11543,11585,7725,6296,11800,10944,11760,11709,7034,5522,5823,4342,5377,5652,3049,2968,2794,9107,7833,2472,2104,8644,6120,1149,2634,6336,3805,3996,3195,3504,1337,7517,11482,6538,6463,7307,3732,7228,414,6857,1991,5063,12331,13069,4636,3447,5174,1560,6402,1623,8870,8567,4712,336,6178,1213,1277,8720,8944,1760,1917,1839,1694,2885,2702,2357,4223,4861,171,11933,5237,9849,7078,7765,53,13180,2276,9301,9594,9447,9166,9735,487,6947,6609,5984,6056,878,8445,8288,8128,7950,13290,736,10794,6718,549,615,676,13345,1101,10270,10383,10755,1014,10107,10149,10874,10451,10651,4603,10349,10417,10585,9947,10517,10310,1060,9986,10483,4567,10617,10551,10230,10190,10721,10687,10028,972,10068,10838,13392,838,10909,10985,792",
|
||||
"endColumns": "42,38,49,40,42,46,40,47,44,47,49,46,54,52,38,42,45,39,39,46,48,45,43,42,47,48,42,38,42,44,47,51,54,56,39,46,38,39,37,40,40,49,42,38,41,38,46,39,41,38,39,44,39,44,45,46,41,49,37,38,42,41,40,49,40,43,50,40,41,40,40,41,39,39,39,49,40,39,50,43,74,67,55,63,63,145,80,90,58,59,118,171,75,57,63,67,65,190,179,203,227,172,81,60,70,74,209,72,78,72,89,66,67,59,61,75,56,62,62,60,70,73,76,148,77,70,63,59,149,162,78,73,77,65,82,91,73,75,68,164,57,58,97,149,67,64,61,80,145,140,146,134,113,61,86,67,71,63,93,121,156,159,177,54,55,43,138,65,60,59,46,47,39,33,38,45,41,40,34,31,35,32,33,33,31,38,33,38,40,41,33,35,33,33,39,39,33,33,39,41,38,35,59,39,34,40,45",
|
||||
"endOffsets": "4970,12879,12840,6715,12790,12747,12700,12659,5060,3444,13066,6293,5649,168,11314,2631,2101,13016,7683,7643,12611,12562,12516,5171,13287,13177,11275,11400,12472,5981,5936,5820,5768,7947,5374,11361,7722,11182,11061,12429,12328,11232,12287,5519,5480,11479,4483,12244,11103,4564,11662,12204,11440,5015,12976,4220,4525,1557,12159,11142,4339,12121,12079,12038,2469,11706,12930,4436,11930,11888,5334,11582,11622,7762,6333,11847,10982,11797,11757,7075,5594,5888,4395,5438,5713,3192,3046,2882,9163,7890,2588,2273,8717,6175,1210,2699,6399,3993,4173,3396,3729,1507,7596,11540,6606,6535,7514,3802,7304,484,6944,2055,5128,12388,13128,4709,3501,5234,1620,6460,1691,8941,8641,4858,411,6246,1274,1334,8867,9104,1836,1988,1914,1757,2965,2791,2428,4296,4927,333,11988,5293,9944,7225,7830,115,13239,2354,9444,9732,9591,9298,9846,546,7031,6674,6053,6117,969,8564,8442,8285,8125,13342,789,10835,6854,612,673,733,13389,1146,10307,10414,10791,1057,10146,10187,10906,10480,10684,4633,10380,10448,10614,9983,10548,10346,1098,10025,10514,4600,10648,10582,10267,10227,10752,10718,10065,1011,10104,10871,13449,875,10941,11023,835"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,228,229,231,232,233,234,235,239,240",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,150,191,243,286,331,380,423,473,520,570,622,671,728,783,824,869,917,959,1001,1050,1101,1149,1195,1240,1290,1341,1386,1427,1472,1519,1569,1623,1680,1739,1781,1830,1871,1913,1953,1996,2039,2091,2136,2177,2221,2262,2311,2353,2397,2438,2480,2527,2569,2616,2664,2713,2757,2809,2849,2890,2935,2979,3022,3074,3117,3163,3216,3259,3303,3346,3389,3433,3475,3517,3559,3611,3654,3696,3749,3795,3872,3942,4000,4066,4132,4280,4363,4456,4517,4579,4700,4874,4952,5012,5078,5148,5216,5409,5591,5797,6027,6202,6286,6349,6422,6499,6711,6786,6867,6942,7034,7103,7173,7235,7299,7377,7436,7501,7566,7629,7702,7778,7857,8008,8088,8161,8227,8289,8441,8606,8687,8763,8843,8911,8996,9090,9166,9244,9315,9482,9542,9603,9703,9855,9925,9992,10056,10139,10287,10430,10579,10716,10832,10896,10985,11055,11129,11195,11291,11415,11574,11736,11916,11973,12031,12077,12218,12286,12349,15138,15187,15237,15279,15315,15356,15404,15448,15491,15528,15562,15600,15635,15671,15707,15741,15782,15818,15859,15902,15946,15982,16020,16056,16092,16134,16176,16212,16330,16372,16517,16558,16596,16658,16700,16917,16960",
|
||||
"endColumns": "44,40,51,42,44,48,42,49,46,49,51,48,56,54,40,44,47,41,41,48,50,47,45,44,49,50,44,40,44,46,49,53,56,58,41,48,40,41,39,42,42,51,44,40,43,40,48,41,43,40,41,46,41,46,47,48,43,51,39,40,44,43,42,51,42,45,52,42,43,42,42,43,41,41,41,51,42,41,52,45,76,69,57,65,65,147,82,92,60,61,120,173,77,59,65,69,67,192,181,205,229,174,83,62,72,76,211,74,80,74,91,68,69,61,63,77,58,64,64,62,72,75,78,150,79,72,65,61,151,164,80,75,79,67,84,93,75,77,70,166,59,60,99,151,69,66,63,82,147,142,148,136,115,63,88,69,73,65,95,123,158,161,179,56,57,45,140,67,62,61,48,49,41,35,40,47,43,42,36,33,37,34,35,35,33,40,35,40,42,43,35,37,35,35,41,41,35,35,41,43,40,37,61,41,36,42,47",
|
||||
"endOffsets": "145,186,238,281,326,375,418,468,515,565,617,666,723,778,819,864,912,954,996,1045,1096,1144,1190,1235,1285,1336,1381,1422,1467,1514,1564,1618,1675,1734,1776,1825,1866,1908,1948,1991,2034,2086,2131,2172,2216,2257,2306,2348,2392,2433,2475,2522,2564,2611,2659,2708,2752,2804,2844,2885,2930,2974,3017,3069,3112,3158,3211,3254,3298,3341,3384,3428,3470,3512,3554,3606,3649,3691,3744,3790,3867,3937,3995,4061,4127,4275,4358,4451,4512,4574,4695,4869,4947,5007,5073,5143,5211,5404,5586,5792,6022,6197,6281,6344,6417,6494,6706,6781,6862,6937,7029,7098,7168,7230,7294,7372,7431,7496,7561,7624,7697,7773,7852,8003,8083,8156,8222,8284,8436,8601,8682,8758,8838,8906,8991,9085,9161,9239,9310,9477,9537,9598,9698,9850,9920,9987,10051,10134,10282,10425,10574,10711,10827,10891,10980,11050,11124,11190,11286,11410,11569,11731,11911,11968,12026,12072,12213,12281,12344,12406,15182,15232,15274,15310,15351,15399,15443,15486,15523,15557,15595,15630,15666,15702,15736,15777,15813,15854,15897,15941,15977,16015,16051,16087,16129,16171,16207,16243,16367,16411,16553,16591,16653,16695,16732,16955,17003"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/a1ac0e418c7c22501d8d66a2f6fbfb08/jetified-ucrop-2.2.3/res/values-de/values-de.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4",
|
||||
"startColumns": "4,4,4",
|
||||
"startOffsets": "55,121,179",
|
||||
"endColumns": "65,57,55",
|
||||
"endOffsets": "116,174,230"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "236,237,238",
|
||||
"startColumns": "4,4,4",
|
||||
"startOffsets": "16737,16803,16861",
|
||||
"endColumns": "65,57,55",
|
||||
"endOffsets": "16798,16856,16912"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-de/values-de.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,210,308,420,506,612,727,805,880,972,1066,1162,1263,1370,1470,1574,1672,1770,1867,1949,2060,2162,2260,2367,2470,2574,2730,2832",
|
||||
"endColumns": "104,97,111,85,105,114,77,74,91,93,95,100,106,99,103,97,97,96,81,110,101,97,106,102,103,155,101,81",
|
||||
"endOffsets": "205,303,415,501,607,722,800,875,967,1061,1157,1258,1365,1465,1569,1667,1765,1862,1944,2055,2157,2255,2362,2465,2569,2725,2827,2909"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,227",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "12411,12516,12614,12726,12812,12918,13033,13111,13186,13278,13372,13468,13569,13676,13776,13880,13978,14076,14173,14255,14366,14468,14566,14673,14776,14880,15036,16248",
|
||||
"endColumns": "104,97,111,85,105,114,77,74,91,93,95,100,106,99,103,97,97,96,81,110,101,97,106,102,103,155,101,81",
|
||||
"endOffsets": "12511,12609,12721,12807,12913,13028,13106,13181,13273,13367,13463,13564,13671,13771,13875,13973,14071,14168,14250,14361,14463,14561,14668,14771,14875,15031,15133,16325"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-de/values-de.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "230",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "16416",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "16512"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-el/values-el.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-el/values-el.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,223,334,451,536,642,765,854,939,1030,1123,1218,1312,1412,1505,1600,1697,1788,1879,1964,2075,2184,2286,2397,2507,2615,2786,2886",
|
||||
"endColumns": "117,110,116,84,105,122,88,84,90,92,94,93,99,92,94,96,90,90,84,110,108,101,110,109,107,170,99,85",
|
||||
"endOffsets": "218,329,446,531,637,760,849,934,1025,1118,1213,1307,1407,1500,1595,1692,1783,1874,1959,2070,2179,2281,2392,2502,2610,2781,2881,2967"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-el/values-el.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2972",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3068"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-en-rAU/values-en-rAU.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-en-rAU/values-en-rAU.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2845",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2941"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-en-rAU/values-en-rAU.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,209,309,417,501,601,716,794,869,960,1053,1148,1242,1342,1435,1530,1624,1715,1806,1888,1991,2094,2193,2298,2402,2506,2662,2762",
|
||||
"endColumns": "103,99,107,83,99,114,77,74,90,92,94,93,99,92,94,93,90,90,81,102,102,98,104,103,103,155,99,82",
|
||||
"endOffsets": "204,304,412,496,596,711,789,864,955,1048,1143,1237,1337,1430,1525,1619,1710,1801,1883,1986,2089,2188,2293,2397,2501,2657,2757,2840"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-en-rCA/values-en-rCA.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-en-rCA/values-en-rCA.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,209,309,417,501,601,716,794,869,960,1053,1148,1242,1342,1435,1530,1624,1715,1806,1888,1991,2094,2193,2298,2402,2506,2662,2762",
|
||||
"endColumns": "103,99,107,83,99,114,77,74,90,92,94,93,99,92,94,93,90,90,81,102,102,98,104,103,103,155,99,82",
|
||||
"endOffsets": "204,304,412,496,596,711,789,864,955,1048,1143,1237,1337,1430,1525,1619,1710,1801,1883,1986,2089,2188,2293,2397,2501,2657,2757,2840"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-en-rCA/values-en-rCA.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2845",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2941"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-en-rGB/values-en-rGB.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-en-rGB/values-en-rGB.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2845",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2941"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-en-rGB/values-en-rGB.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,209,309,417,501,601,716,794,869,960,1053,1148,1242,1342,1435,1530,1624,1715,1806,1888,1991,2094,2193,2298,2402,2506,2662,2762",
|
||||
"endColumns": "103,99,107,83,99,114,77,74,90,92,94,93,99,92,94,93,90,90,81,102,102,98,104,103,103,155,99,82",
|
||||
"endOffsets": "204,304,412,496,596,711,789,864,955,1048,1143,1237,1337,1430,1525,1619,1710,1801,1883,1986,2089,2188,2293,2397,2501,2657,2757,2840"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-en-rIN/values-en-rIN.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-en-rIN/values-en-rIN.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,209,309,417,501,601,716,794,869,960,1053,1148,1242,1342,1435,1530,1624,1715,1806,1888,1991,2094,2193,2298,2402,2506,2662,2762",
|
||||
"endColumns": "103,99,107,83,99,114,77,74,90,92,94,93,99,92,94,93,90,90,81,102,102,98,104,103,103,155,99,82",
|
||||
"endOffsets": "204,304,412,496,596,711,789,864,955,1048,1143,1237,1337,1430,1525,1619,1710,1801,1883,1986,2089,2188,2293,2397,2501,2657,2757,2840"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-en-rIN/values-en-rIN.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2845",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2941"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-en-rXC/values-en-rXC.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-en-rXC/values-en-rXC.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,312,515,725,912,1113,1329,1509,1684,1878,2072,2267,2464,2663,2858,3056,3253,3447,3641,3826,4031,4234,4435,4641,4846,5053,5327,5528",
|
||||
"endColumns": "206,202,209,186,200,215,179,174,193,193,194,196,198,194,197,196,193,193,184,204,202,200,205,204,206,273,200,185",
|
||||
"endOffsets": "307,510,720,907,1108,1324,1504,1679,1873,2067,2262,2459,2658,2853,3051,3248,3442,3636,3821,4026,4229,4430,4636,4841,5048,5322,5523,5709"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-en-rXC/values-en-rXC.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "203",
|
||||
"endOffsets": "254"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "5714",
|
||||
"endColumns": "203",
|
||||
"endOffsets": "5913"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-es-rUS/values-es-rUS.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-es-rUS/values-es-rUS.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,225,334,442,527,629,745,830,910,1001,1094,1189,1283,1382,1475,1574,1670,1761,1852,1934,2041,2140,2239,2347,2455,2562,2721,2821",
|
||||
"endColumns": "119,108,107,84,101,115,84,79,90,92,94,93,98,92,98,95,90,90,81,106,98,98,107,107,106,158,99,82",
|
||||
"endOffsets": "220,329,437,522,624,740,825,905,996,1089,1184,1278,1377,1470,1569,1665,1756,1847,1929,2036,2135,2234,2342,2450,2557,2716,2816,2899"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-es-rUS/values-es-rUS.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2904",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3000"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-es/values-es.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-es/values-es.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,207,320,428,513,614,742,828,909,1001,1095,1192,1286,1386,1480,1576,1672,1764,1856,1938,2045,2156,2255,2363,2471,2578,2737,2836",
|
||||
"endColumns": "101,112,107,84,100,127,85,80,91,93,96,93,99,93,95,95,91,91,81,106,110,98,107,107,106,158,98,82",
|
||||
"endOffsets": "202,315,423,508,609,737,823,904,996,1090,1187,1281,1381,1475,1571,1667,1759,1851,1933,2040,2151,2250,2358,2466,2573,2732,2831,2914"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-es/values-es.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2919",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3015"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-et/values-et.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-et/values-et.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2910",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3006"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-et/values-et.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,211,310,421,507,609,726,807,884,976,1070,1166,1268,1377,1471,1572,1666,1758,1851,1934,2045,2149,2248,2358,2460,2559,2725,2827",
|
||||
"endColumns": "105,98,110,85,101,116,80,76,91,93,95,101,108,93,100,93,91,92,82,110,103,98,109,101,98,165,101,82",
|
||||
"endOffsets": "206,305,416,502,604,721,802,879,971,1065,1161,1263,1372,1466,1567,1661,1753,1846,1929,2040,2144,2243,2353,2455,2554,2720,2822,2905"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-eu/values-eu.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-eu/values-eu.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2933",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3029"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-eu/values-eu.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,214,312,422,508,614,738,824,905,997,1091,1187,1281,1382,1476,1572,1669,1761,1854,1936,2045,2154,2253,2362,2469,2580,2751,2850",
|
||||
"endColumns": "108,97,109,85,105,123,85,80,91,93,95,93,100,93,95,96,91,92,81,108,108,98,108,106,110,170,98,82",
|
||||
"endOffsets": "209,307,417,503,609,733,819,900,992,1086,1182,1276,1377,1471,1567,1664,1756,1849,1931,2040,2149,2248,2357,2464,2575,2746,2845,2928"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-fa/values-fa.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-fa/values-fa.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,215,316,427,511,612,727,807,884,977,1072,1164,1258,1360,1455,1552,1646,1739,1829,1911,2019,2123,2221,2327,2432,2537,2694,2795",
|
||||
"endColumns": "109,100,110,83,100,114,79,76,92,94,91,93,101,94,96,93,92,89,81,107,103,97,105,104,104,156,100,81",
|
||||
"endOffsets": "210,311,422,506,607,722,802,879,972,1067,1159,1253,1355,1450,1547,1641,1734,1824,1906,2014,2118,2216,2322,2427,2532,2689,2790,2872"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-fa/values-fa.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2877",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2973"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,53 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-fi/values-fi.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-fi/values-fi.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2856",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2952"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-fi/values-fi.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,213,313,422,508,613,731,817,896,987,1080,1175,1269,1363,1456,1552,1651,1742,1836,1916,2023,2124,2221,2327,2427,2525,2675,2775",
|
||||
"endColumns": "107,99,108,85,104,117,85,78,90,92,94,93,93,92,95,98,90,93,79,106,100,96,105,99,97,149,99,80",
|
||||
"endOffsets": "208,308,417,503,608,726,812,891,982,1075,1170,1264,1358,1451,1547,1646,1737,1831,1911,2018,2119,2216,2322,2422,2520,2670,2770,2851"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/a1ac0e418c7c22501d8d66a2f6fbfb08/jetified-ucrop-2.2.3/res/values-fi/values-fi.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5",
|
||||
"startColumns": "4,4,4,4",
|
||||
"startOffsets": "55,178,243,293",
|
||||
"endColumns": "122,64,49,48",
|
||||
"endOffsets": "173,238,288,337"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "31,32,33,34",
|
||||
"startColumns": "4,4,4,4",
|
||||
"startOffsets": "2957,3080,3145,3195",
|
||||
"endColumns": "122,64,49,48",
|
||||
"endOffsets": "3075,3140,3190,3239"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-fr-rCA/values-fr-rCA.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-fr-rCA/values-fr-rCA.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2942",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3038"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-fr-rCA/values-fr-rCA.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,216,323,433,520,626,756,841,921,1012,1105,1203,1298,1398,1491,1584,1679,1770,1861,1947,2057,2168,2271,2382,2490,2597,2756,2855",
|
||||
"endColumns": "110,106,109,86,105,129,84,79,90,92,97,94,99,92,92,94,90,90,85,109,110,102,110,107,106,158,98,86",
|
||||
"endOffsets": "211,318,428,515,621,751,836,916,1007,1100,1198,1293,1393,1486,1579,1674,1765,1856,1942,2052,2163,2266,2377,2485,2592,2751,2850,2937"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,53 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-fr/values-fr.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/a1ac0e418c7c22501d8d66a2f6fbfb08/jetified-ucrop-2.2.3/res/values-fr/values-fr.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4",
|
||||
"startColumns": "4,4,4",
|
||||
"startOffsets": "55,124,182",
|
||||
"endColumns": "68,57,52",
|
||||
"endOffsets": "119,177,230"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "31,32,33",
|
||||
"startColumns": "4,4,4",
|
||||
"startOffsets": "3035,3104,3162",
|
||||
"endColumns": "68,57,52",
|
||||
"endOffsets": "3099,3157,3210"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-fr/values-fr.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,216,331,441,523,629,759,837,913,1004,1097,1195,1290,1390,1483,1576,1671,1762,1853,1939,2049,2160,2263,2374,2482,2589,2748,2847",
|
||||
"endColumns": "110,114,109,81,105,129,77,75,90,92,97,94,99,92,92,94,90,90,85,109,110,102,110,107,106,158,98,86",
|
||||
"endOffsets": "211,326,436,518,624,754,832,908,999,1092,1190,1285,1385,1478,1571,1666,1757,1848,1934,2044,2155,2258,2369,2477,2584,2743,2842,2929"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-fr/values-fr.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2934",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3030"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-gl/values-gl.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-gl/values-gl.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,209,313,421,506,607,735,820,900,992,1086,1183,1277,1377,1471,1567,1662,1754,1846,1927,2035,2142,2249,2358,2463,2577,2754,2853",
|
||||
"endColumns": "103,103,107,84,100,127,84,79,91,93,96,93,99,93,95,94,91,91,80,107,106,106,108,104,113,176,98,82",
|
||||
"endOffsets": "204,308,416,501,602,730,815,895,987,1081,1178,1272,1372,1466,1562,1657,1749,1841,1922,2030,2137,2244,2353,2458,2572,2749,2848,2931"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-gl/values-gl.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2936",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3032"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-gu/values-gu.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-gu/values-gu.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,212,316,423,510,610,730,808,885,976,1069,1164,1258,1358,1451,1546,1640,1731,1822,1902,2008,2109,2206,2315,2415,2525,2685,2788",
|
||||
"endColumns": "106,103,106,86,99,119,77,76,90,92,94,93,99,92,94,93,90,90,79,105,100,96,108,99,109,159,102,80",
|
||||
"endOffsets": "207,311,418,505,605,725,803,880,971,1064,1159,1253,1353,1446,1541,1635,1726,1817,1897,2003,2104,2201,2310,2410,2520,2680,2783,2864"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-gu/values-gu.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2869",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2965"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-h360dp-land-v13/values-h360dp-land-v13.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/42dea8ecc581c81857f6fd9072fdd732/material-1.2.1/res/values-h360dp-land-v13/values-h360dp-land-v13.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "55,114,170,226,293,358,413,478,547",
|
||||
"endColumns": "58,55,55,66,64,54,64,68,68",
|
||||
"endOffsets": "109,165,221,288,353,408,473,542,611"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-h480dp-land-v13/values-h480dp-land-v13.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/42dea8ecc581c81857f6fd9072fdd732/material-1.2.1/res/values-h480dp-land-v13/values-h480dp-land-v13.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "55,114,170,226,293,358,413,478,547",
|
||||
"endColumns": "58,55,55,66,64,54,64,68,68",
|
||||
"endOffsets": "109,165,221,288,353,408,473,542,611"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-h720dp-v13/values-h720dp-v13.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-h720dp-v13/values-h720dp-v13.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "66",
|
||||
"endOffsets": "117"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-hdpi-v4/values-hdpi-v4.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-hdpi-v4/values-hdpi-v4.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endLines": "6",
|
||||
"endColumns": "13",
|
||||
"endOffsets": "327"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-hi/values-hi.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-hi/values-hi.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2869",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2965"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-hi/values-hi.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,211,309,419,505,607,728,806,883,974,1067,1162,1256,1356,1449,1544,1638,1729,1820,1901,2006,2108,2206,2316,2419,2528,2686,2787",
|
||||
"endColumns": "105,97,109,85,101,120,77,76,90,92,94,93,99,92,94,93,90,90,80,104,101,97,109,102,108,157,100,81",
|
||||
"endOffsets": "206,304,414,500,602,723,801,878,969,1062,1157,1251,1351,1444,1539,1633,1724,1815,1896,2001,2103,2201,2311,2414,2523,2681,2782,2864"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-hr/values-hr.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-hr/values-hr.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,210,305,412,498,602,721,806,888,979,1072,1167,1261,1361,1454,1549,1644,1735,1826,1912,2016,2128,2229,2334,2448,2550,2719,2816",
|
||||
"endColumns": "104,94,106,85,103,118,84,81,90,92,94,93,99,92,94,94,90,90,85,103,111,100,104,113,101,168,96,84",
|
||||
"endOffsets": "205,300,407,493,597,716,801,883,974,1067,1162,1256,1356,1449,1544,1639,1730,1821,1907,2011,2123,2224,2329,2443,2545,2714,2811,2896"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-hr/values-hr.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2901",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2997"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-hu/values-hu.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-hu/values-hu.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2943",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "3039"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-hu/values-hu.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,213,305,420,504,619,742,819,894,985,1078,1173,1267,1367,1460,1555,1650,1741,1832,1915,2025,2135,2235,2346,2455,2574,2756,2859",
|
||||
"endColumns": "107,91,114,83,114,122,76,74,90,92,94,93,99,92,94,94,90,90,82,109,109,99,110,108,118,181,102,83",
|
||||
"endOffsets": "208,300,415,499,614,737,814,889,980,1073,1168,1262,1362,1455,1550,1645,1736,1827,1910,2020,2130,2230,2341,2450,2569,2751,2854,2938"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-hy/values-hy.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-hy/values-hy.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,213,313,423,512,618,735,817,897,988,1081,1176,1270,1370,1463,1558,1652,1743,1834,1917,2023,2129,2228,2338,2446,2547,2717,2814",
|
||||
"endColumns": "107,99,109,88,105,116,81,79,90,92,94,93,99,92,94,93,90,90,82,105,105,98,109,107,100,169,96,82",
|
||||
"endOffsets": "208,308,418,507,613,730,812,892,983,1076,1171,1265,1365,1458,1553,1647,1738,1829,1912,2018,2124,2223,2333,2441,2542,2712,2809,2892"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-hy/values-hy.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2897",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2993"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-in/values-in.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-in/values-in.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,220,324,429,516,620,736,819,897,988,1081,1176,1270,1370,1463,1558,1652,1743,1834,1920,2023,2128,2229,2333,2442,2550,2710,2809",
|
||||
"endColumns": "114,103,104,86,103,115,82,77,90,92,94,93,99,92,94,93,90,90,85,102,104,100,103,108,107,159,98,84",
|
||||
"endOffsets": "215,319,424,511,615,731,814,892,983,1076,1171,1265,1365,1458,1553,1647,1738,1829,1915,2018,2123,2224,2328,2437,2545,2705,2804,2889"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-in/values-in.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2894",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2990"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-is/values-is.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-is/values-is.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2860",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2956"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-is/values-is.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,205,302,414,499,600,714,795,874,965,1058,1151,1245,1351,1444,1539,1634,1725,1819,1900,2010,2117,2214,2323,2423,2526,2681,2779",
|
||||
"endColumns": "99,96,111,84,100,113,80,78,90,92,92,93,105,92,94,94,90,93,80,109,106,96,108,99,102,154,97,80",
|
||||
"endOffsets": "200,297,409,494,595,709,790,869,960,1053,1146,1240,1346,1439,1534,1629,1720,1814,1895,2005,2112,2209,2318,2418,2521,2676,2774,2855"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,53 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-it/values-it.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-it/values-it.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,210,313,422,506,611,730,808,883,975,1069,1162,1256,1357,1451,1548,1643,1735,1827,1908,2014,2121,2219,2323,2429,2536,2699,2799",
|
||||
"endColumns": "104,102,108,83,104,118,77,74,91,93,92,93,100,93,96,94,91,91,80,105,106,97,103,105,106,162,99,81",
|
||||
"endOffsets": "205,308,417,501,606,725,803,878,970,1064,1157,1251,1352,1446,1543,1638,1730,1822,1903,2009,2116,2214,2318,2424,2531,2694,2794,2876"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-it/values-it.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2881",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2977"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/a1ac0e418c7c22501d8d66a2f6fbfb08/jetified-ucrop-2.2.3/res/values-it/values-it.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4",
|
||||
"startColumns": "4,4,4",
|
||||
"startOffsets": "55,120,179",
|
||||
"endColumns": "64,58,50",
|
||||
"endOffsets": "115,174,225"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "31,32,33",
|
||||
"startColumns": "4,4,4",
|
||||
"startOffsets": "2982,3047,3106",
|
||||
"endColumns": "64,58,50",
|
||||
"endOffsets": "3042,3101,3152"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-iw/values-iw.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-iw/values-iw.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,210,310,418,502,604,720,799,877,968,1062,1156,1250,1350,1443,1538,1631,1722,1814,1895,2000,2103,2201,2306,2408,2510,2664,2761",
|
||||
"endColumns": "104,99,107,83,101,115,78,77,90,93,93,93,99,92,94,92,90,91,80,104,102,97,104,101,101,153,96,81",
|
||||
"endOffsets": "205,305,413,497,599,715,794,872,963,1057,1151,1245,1345,1438,1533,1626,1717,1809,1890,1995,2098,2196,2301,2403,2505,2659,2756,2838"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-iw/values-iw.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2843",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2939"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-ja/values-ja.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-ja/values-ja.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2770",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2866"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-ja/values-ja.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,202,295,400,482,580,688,766,841,932,1025,1120,1214,1314,1407,1502,1596,1687,1778,1856,1958,2056,2151,2254,2350,2446,2594,2691",
|
||||
"endColumns": "96,92,104,81,97,107,77,74,90,92,94,93,99,92,94,93,90,90,77,101,97,94,102,95,95,147,96,78",
|
||||
"endOffsets": "197,290,395,477,575,683,761,836,927,1020,1115,1209,1309,1402,1497,1591,1682,1773,1851,1953,2051,2146,2249,2345,2441,2589,2686,2765"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-ka/values-ka.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-ka/values-ka.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2890",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2986"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-ka/values-ka.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,213,316,427,513,618,731,814,893,984,1077,1172,1266,1366,1459,1554,1649,1740,1831,1912,2025,2131,2229,2342,2447,2551,2709,2808",
|
||||
"endColumns": "107,102,110,85,104,112,82,78,90,92,94,93,99,92,94,94,90,90,80,112,105,97,112,104,103,157,98,81",
|
||||
"endOffsets": "208,311,422,508,613,726,809,888,979,1072,1167,1261,1361,1454,1549,1644,1735,1826,1907,2020,2126,2224,2337,2442,2546,2704,2803,2885"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
{
|
||||
"logs": [
|
||||
{
|
||||
"outputFile": "/mnt/82e5ff15-70b8-44a5-bb66-55688fc2381f/Freelance/Projects/WIP/EnRecipes/Developement/EnRecipes-App/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values-kk/values-kk.xml",
|
||||
"map": [
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/1dc5cba16eb2c928c676e9d5f11f544c/core-1.3.0/res/values-kk/values-kk.xml",
|
||||
"from": {
|
||||
"startLines": "2",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "55",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "151"
|
||||
},
|
||||
"to": {
|
||||
"startLines": "30",
|
||||
"startColumns": "4",
|
||||
"startOffsets": "2878",
|
||||
"endColumns": "100",
|
||||
"endOffsets": "2974"
|
||||
}
|
||||
},
|
||||
{
|
||||
"source": "/home/vrb/.gradle/caches/transforms-2/files-2.1/be4c35a38818aae510fb57719aacbd93/appcompat-1.2.0/res/values-kk/values-kk.xml",
|
||||
"from": {
|
||||
"startLines": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29",
|
||||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4",
|
||||
"startOffsets": "105,213,318,428,513,619,738,818,895,986,1079,1174,1268,1368,1461,1556,1653,1744,1835,1916,2021,2124,2222,2329,2435,2535,2701,2796",
|
||||
"endColumns": "107,104,109,84,105,118,79,76,90,92,94,93,99,92,94,96,90,90,80,104,102,97,106,105,99,165,94,81",
|
||||
"endOffsets": "208,313,423,508,614,733,813,890,981,1074,1169,1263,1363,1456,1551,1648,1739,1830,1911,2016,2119,2217,2324,2430,2530,2696,2791,2873"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue