Frontend: Fix and update translation

This commit is contained in:
Theresa Gresch 2020-06-16 10:39:00 +02:00
parent 8f44d96ad8
commit d65c3e5ebb
10 changed files with 73 additions and 107 deletions

1
.gitignore vendored
View file

@ -12,6 +12,7 @@
/assets/nasnet
/assets/nsfw
/package-lock.json
/frontend/tests_output
*.log
*.db
*.db-journal

View file

@ -6246,9 +6246,9 @@
}
},
"eslint-plugin-import": {
"version": "2.21.1",
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.21.1.tgz",
"integrity": "sha512-qYOOsgUv63vHof7BqbzuD+Ud34bXHxFJxntuAC1ZappFZXYbRIek3aJ7jc9i2dHDGDyZ/0zlO0cpioES265Lsw==",
"version": "2.21.2",
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.21.2.tgz",
"integrity": "sha512-FEmxeGI6yaz+SnEB6YgNHlQK1Bs2DKLM+YF+vuTk5H8J9CLbJLtlPvRFgZZ2+sXiKAlN5dpdlrWOjK8ZoZJpQA==",
"requires": {
"array-includes": "^3.1.1",
"array.prototype.flat": "^1.2.3",
@ -7008,8 +7008,7 @@
},
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
"optional": true
"bundled": true
},
"aproba": {
"version": "1.2.0",
@ -7027,13 +7026,11 @@
},
"balanced-match": {
"version": "1.0.0",
"bundled": true,
"optional": true
"bundled": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@ -7046,18 +7043,15 @@
},
"code-point-at": {
"version": "1.1.0",
"bundled": true,
"optional": true
"bundled": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
"optional": true
"bundled": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
"optional": true
"bundled": true
},
"core-util-is": {
"version": "1.0.2",
@ -7160,8 +7154,7 @@
},
"inherits": {
"version": "2.0.4",
"bundled": true,
"optional": true
"bundled": true
},
"ini": {
"version": "1.3.5",
@ -7171,7 +7164,6 @@
"is-fullwidth-code-point": {
"version": "1.0.0",
"bundled": true,
"optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@ -7184,20 +7176,17 @@
"minimatch": {
"version": "3.0.4",
"bundled": true,
"optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
},
"minimist": {
"version": "0.0.8",
"bundled": true,
"optional": true
"bundled": true
},
"minipass": {
"version": "2.9.0",
"bundled": true,
"optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@ -7214,7 +7203,6 @@
"mkdirp": {
"version": "0.5.1",
"bundled": true,
"optional": true,
"requires": {
"minimist": "0.0.8"
}
@ -7295,8 +7283,7 @@
},
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
"optional": true
"bundled": true
},
"object-assign": {
"version": "4.1.1",
@ -7306,7 +7293,6 @@
"once": {
"version": "1.4.0",
"bundled": true,
"optional": true,
"requires": {
"wrappy": "1"
}
@ -7382,8 +7368,7 @@
},
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
"optional": true
"bundled": true
},
"safer-buffer": {
"version": "2.1.2",
@ -7413,7 +7398,6 @@
"string-width": {
"version": "1.0.2",
"bundled": true,
"optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@ -7431,7 +7415,6 @@
"strip-ansi": {
"version": "3.0.1",
"bundled": true,
"optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@ -7470,13 +7453,11 @@
},
"wrappy": {
"version": "1.0.2",
"bundled": true,
"optional": true
"bundled": true
},
"yallist": {
"version": "3.1.1",
"bundled": true,
"optional": true
"bundled": true
}
}
},
@ -8751,9 +8732,9 @@
"integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA=="
},
"karma": {
"version": "5.0.9",
"resolved": "https://registry.npmjs.org/karma/-/karma-5.0.9.tgz",
"integrity": "sha512-dUA5z7Lo7G4FRSe1ZAXqOINEEWxmCjDBbfRBmU/wYlSMwxUQJP/tEEP90yJt3Uqo03s9rCgVnxtlfq+uDhxSPg==",
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/karma/-/karma-5.1.0.tgz",
"integrity": "sha512-I3aPbkuIbwuBo6wSog97P5WnnhCgUTsWTu/bEw1vZVQFbXmKO3PK+cfFhZioOgVtJAuQxoyauGNjnwXNHMCxbw==",
"requires": {
"body-parser": "^1.19.0",
"braces": "^3.0.2",
@ -8881,11 +8862,6 @@
"is-glob": "^4.0.1"
}
},
"graceful-fs": {
"version": "4.2.4",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz",
"integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw=="
},
"is-binary-path": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
@ -8912,11 +8888,6 @@
"p-locate": "^4.1.0"
}
},
"mime": {
"version": "2.4.6",
"resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz",
"integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA=="
},
"p-locate": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
@ -9441,9 +9412,9 @@
}
},
"mapbox-gl": {
"version": "1.10.1",
"resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.10.1.tgz",
"integrity": "sha512-0aHt+lFUpYfvh0kMIqXqNXqoYMuhuAsMlw87TbhWrw78Tx2zfuPI0Lx31/YPUgJ+Ire0tzQ4JnuBL7acDNXmMg==",
"version": "1.11.0",
"resolved": "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.11.0.tgz",
"integrity": "sha512-opIQf3C5RoKU5r9bHttTMhGAPcJet1/Cj2mdP7Ma2ylrAHjNPRc1i7KPyq8wjEZdJBMhd5qkIDlzUPM0TSncCQ==",
"requires": {
"@mapbox/geojson-rewind": "^0.5.0",
"@mapbox/geojson-types": "^1.0.2",
@ -9465,7 +9436,7 @@
"potpack": "^1.0.1",
"quickselect": "^2.0.0",
"rw": "^1.3.3",
"supercluster": "^7.0.0",
"supercluster": "^7.1.0",
"tinyqueue": "^2.0.3",
"vt-pbf": "^3.1.1"
}
@ -14333,9 +14304,9 @@
}
},
"vue-router": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.3.2.tgz",
"integrity": "sha512-5sEbcfb7MW8mY8lbUVbF4kgcipGXsagkM/X+pb6n0MhjP+RorWIUTPAPSqgPaiPOxVCXgAItBl8Vwz8vq78faA=="
"version": "3.3.4",
"resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.3.4.tgz",
"integrity": "sha512-SdKRBeoXUjaZ9R/8AyxsdTqkOfMcI5tWxPZOUX5Ie1BTL5rPSZ0O++pbiZCeYeythiZIdLEfkDiQPKIaWk5hDg=="
},
"vue-style-loader": {
"version": "4.1.2",

View file

@ -7,7 +7,7 @@
<v-icon>close</v-icon>
</v-btn>
<v-toolbar-title>
<translate>Upload</translate>
<translate key="Upload">Upload</translate>
</v-toolbar-title>
</v-toolbar>
<v-container grid-list-xs text-xs-left fluid>
@ -30,7 +30,7 @@
<v-list-tile>
<v-list-tile-content>
<v-list-tile-title>
<translate>Press</translate> <kbd>enter</kbd> <translate>to create a new album.</translate>
<translate key="Press enter">Press enter to create a new album.</translate>
</v-list-tile-title>
</v-list-tile-content>
</v-list-tile>
@ -48,12 +48,12 @@
</v-chip>
</template>
</v-combobox>
<span v-else-if="failed"><translate>Upload failed</translate></span>
<span v-else-if="failed"><translate key="Upload failed">Upload failed</translate></span>
<span v-else-if="total > 0 && completed < 100">
<translate>Uploading</translate> {{current}} <translate>of</translate> {{total}}...
<translate key="Uploading">Uploading</translate> {{current}} <translate key="of">of</translate> {{total}}...
</span>
<span v-else-if="indexing"><translate>Upload complete. Indexing...</translate></span>
<span v-else-if="completed === 100"><translate>Done.</translate></span>
<span v-else-if="indexing"><translate key="Upload complete. Indexing...">Upload complete. Indexing...</translate></span>
<span v-else-if="completed === 100"><translate key="Done.">Done.</translate></span>
</p>
@ -62,12 +62,12 @@
<p class="body-1" v-if="safe">
<translate>Please don't upload photos containing offensive content. Uploads
<translate key="offensive">Please don't upload photos containing offensive content. Uploads
that may contain such images will be rejected automatically.</translate>
</p>
<p class="body-1" v-if="review">
<translate>Low-quality photos require a review before they appear in search results.</translate>
<translate key="review">Low-quality photos require a review before they appear in search results.</translate>
</p>
<v-btn
@ -77,7 +77,7 @@
depressed
@click.stop="uploadDialog()"
>
<translate>Upload</translate>
<translate key="Upload">Upload</translate>
<v-icon right dark>cloud_upload</v-icon>
</v-btn>
</v-container>

View file

@ -378,16 +378,16 @@
<v-flex xs12 text-xs-right class="pt-3" v-if="!disabled">
<v-btn @click.stop="close" depressed color="secondary-light"
class="p-photo-dialog-close">
<translate>Close</translate>
<translate key="Close">Close</translate>
</v-btn>
<v-btn color="secondary-dark" depressed dark @click.stop="save(false)"
class="p-photo-dialog-confirm action-approve">
<span v-if="$config.feature('review') && model.Quality < 3">Approve</span>
<span v-else><translate>Apply</translate></span>
<span v-else><translate key="Apply">Apply</translate></span>
</v-btn>
<v-btn color="secondary-dark" depressed dark @click.stop="save(true)"
class="p-photo-dialog-confirm hidden-xs-only action-ok">
<span><translate>OK</translate></span>
<span><translate key="OK">OK</translate></span>
<v-icon right dark>done</v-icon>
</v-btn>
</v-flex>

View file

@ -4,27 +4,27 @@
<table class="v-datatable v-table theme--light">
<tbody>
<tr>
<td><translate>UID</translate></td>
<td><translate key="UID">UID</translate></td>
<td>{{ model.UID | uppercase }}</td>
</tr>
<tr v-if="model.DocumentID">
<td><translate>Document ID</translate></td>
<td><translate key="Document ID">Document ID</translate></td>
<td>{{ model.DocumentID | uppercase }}</td>
</tr>
<tr>
<td><translate>Type</translate></td>
<td><translate key="Type">Type</translate></td>
<td>{{ model.Type | capitalize }}</td>
</tr>
<tr v-if="model.Path">
<td><translate>Path</translate></td>
<td><translate key="Path">Path</translate></td>
<td>{{ model.Path }}</td>
</tr>
<tr>
<td><translate>Name</translate></td>
<td><translate key="Name">Name</translate></td>
<td>{{ model.Name }}</td>
</tr>
<tr v-if="model.OriginalName">
<td><translate>Original Name</translate></td>
<td><translate key="Original Name">Original Name</translate></td>
<td>
<v-text-field
@change="save"
@ -35,15 +35,15 @@
</td>
</tr>
<tr>
<td><translate>Title</translate></td>
<td><translate key="Title">Title</translate></td>
<td>{{ model.Title }}</td>
</tr>
<tr v-if="model.TitleSrc">
<td><translate>Title Source</translate></td>
<td><translate key="Title Source">Title Source</translate></td>
<td>{{ model.TitleSrc | capitalize }}</td>
</tr>
<tr v-if="model.TakenAcc">
<td><translate>Year</translate></td>
<td><translate key="Year">Year</translate></td>
<td>
<v-text-field
flat solo dense hide-details v-model="model.Year"
@ -53,7 +53,7 @@
</td>
</tr>
<tr v-if="model.TakenAcc">
<td><translate>Month</translate></td>
<td><translate key="Month">Month</translate></td>
<td>
<v-select
label="Month"
@ -68,22 +68,22 @@
</td>
</tr>
<tr>
<td><translate>Quality Score</translate></td>
<td><translate key="Quality Score">Quality Score</translate></td>
<td>
<v-rating v-model="model.Quality" :length="7" readonly small></v-rating>
</td>
</tr>
<tr>
<td><translate>Resolution</translate></td>
<td><translate key="Resolution">Resolution</translate></td>
<td>{{ model.Resolution }} MP</td>
</tr>
<tr v-if="model.CameraSerial">
<td><translate>Camera Serial</translate></td>
<td><translate key="Camera Serial">Camera Serial</translate></td>
<td>{{ model.CameraSerial }}
</td>
</tr>
<tr>
<td><translate>Favorite</translate></td>
<td><translate key="Favorite">Favorite</translate></td>
<td>
<v-switch
@change="save"
@ -94,7 +94,7 @@
</td>
</tr>
<tr>
<td><translate>Private</translate></td>
<td><translate key="Private">Private</translate></td>
<td>
<v-switch
@change="save"
@ -105,31 +105,31 @@
</td>
</tr>
<tr>
<td><translate>Created</translate></td>
<td><translate key="Created">Created</translate></td>
<td>
{{ model.CreatedAt | luxon:format('http') }}
</td>
</tr>
<tr>
<td><translate>Updated</translate></td>
<td><translate key="Updated">Updated</translate></td>
<td>
{{ model.UpdatedAt | luxon:format('http') }}
</td>
</tr>
<tr v-if="model.EditedAt">
<td><translate>Edited</translate></td>
<td><translate key="Edited">Edited</translate></td>
<td>
{{ model.EditedAt | luxon:format('http') }}
</td>
</tr>
<tr v-if="model.MaintainedAt">
<td><translate>Maintained</translate></td>
<td><translate key="Maintained">Maintained</translate></td>
<td>
{{ model.MaintainedAt | luxon:format('http') }}
</td>
</tr>
<tr v-if="model.DeletedAt">
<td><translate>Archived</translate></td>
<td><translate key="Archived">Archived</translate></td>
<td>
{{ model.DeletedAt | luxon:format('http') }}
</td>

View file

@ -5,7 +5,7 @@
@submit.prevent="onChange">
<v-card flat tile class="mt-0 px-1 application">
<v-card-title primary-title class="pb-0">
<h3 class="body-2 mb-0"><translate>Library</translate></h3>
<h3 class="body-2 mb-0"><translate key="Library">Library</translate></h3>
</v-card-title>
<v-card-actions>
@ -75,7 +75,7 @@
<v-card flat tile class="mt-0 px-1 application">
<v-card-title primary-title class="pb-2">
<h3 class="body-2 mb-0"><translate>User Interface</translate></h3>
<h3 class="body-2 mb-0"><translate key="User Interface">User Interface</translate></h3>
</v-card-title>
<v-card-actions>
@ -299,7 +299,7 @@
<v-card flat tile class="mt-0 px-1 application" v-if="settings.features.places">
<v-card-title primary-title class="pb-2">
<h3 class="body-2 mb-0"><translate>Places</translate></h3>
<h3 class="body-2 mb-0"><translate key="Places">Places</translate></h3>
</v-card-title>
<v-card-actions>

Binary file not shown.

View file

@ -841,10 +841,6 @@ msgstr "Wenn du eine Datei vermisst, indexiere deine Originals erneut."
msgid "Preserve filenames"
msgstr "Dateinamen beibehalten"
#: src//dialog/p-upload-dialog.vue:22 src//dialog/p-upload-dialog.vue:4
msgid "Press"
msgstr "Drücke"
#: src//pages/library/import.vue:53
msgid "Press button to start copying..."
msgstr "Klicke “Import” um den Kopiervorgang zu starten"
@ -857,6 +853,10 @@ msgstr "Klicke “Indexieren” um das Indexieren zu starten"
msgid "Press button to start moving..."
msgstr "Klicke “Import” um den Importvorgang zu starten"
#: src//dialog/p-upload-dialog.vue:22 src//dialog/p-upload-dialog.vue:4
msgid "Press enter to create a new album."
msgstr "Drücke Enter um ein neues Album zu erstellen."
#: src//dialog/photo/files.vue:53
msgid "Primary"
msgstr "Hauptdatei"
@ -1088,10 +1088,6 @@ msgstr "Herkunft des Titels"
msgid "Title too long"
msgstr "Titel zu lang"
#: src//dialog/p-upload-dialog.vue:22 src//dialog/p-upload-dialog.vue:4
msgid "to create a new album."
msgstr "um ein neues Album zu erstellen."
#: src//pages/albums.vue:52
msgid ""
"Try again using a different term or create a new album from a\n"
@ -1218,6 +1214,9 @@ msgstr "Du kannst nur ein Album gleichzeitig downloaden"
msgid "You can only download one label"
msgstr "Du kannst nur ein Label gleichzeitig downloaden"
#~ msgid "Press"
#~ msgstr "Drücke"
#~ msgid "4 Day"
#~ msgstr "4 Tage"

File diff suppressed because one or more lines are too long

View file

@ -854,11 +854,6 @@ msgstr ""
msgid "Preserve filenames"
msgstr ""
#: src//dialog/p-upload-dialog.vue:22
#: src//dialog/p-upload-dialog.vue:4
msgid "Press"
msgstr ""
#: src//pages/library/import.vue:53
msgid "Press button to start copying..."
msgstr ""
@ -871,6 +866,11 @@ msgstr ""
msgid "Press button to start moving..."
msgstr ""
#: src//dialog/p-upload-dialog.vue:22
#: src//dialog/p-upload-dialog.vue:4
msgid "Press enter to create a new album."
msgstr ""
#: src//dialog/photo/files.vue:53
msgid "Primary"
msgstr ""
@ -1106,11 +1106,6 @@ msgstr ""
msgid "Title too long"
msgstr ""
#: src//dialog/p-upload-dialog.vue:22
#: src//dialog/p-upload-dialog.vue:4
msgid "to create a new album."
msgstr ""
#: src//pages/albums.vue:52
msgid ""
"Try again using a different term or create a new album from a\n"