Merge branch 'master' into feat/doc
This commit is contained in:
50
TRANSLATIONS.md
Normal file
50
TRANSLATIONS.md
Normal file
@@ -0,0 +1,50 @@
|
||||
# Translations
|
||||
|
||||
Thanks for your interest in helping translating the software!
|
||||
|
||||
## Starting a translation
|
||||
|
||||
Before you start working on a translation, look through the [open pull requests](https://github.com/liyasthomas/postwoman/pulls) to see if anyone else is already working on one for your language.
|
||||
|
||||
If there's not, then today is your day to lead this effort! Here's how to start:
|
||||
|
||||
1. [Fork this repository](https://github.com/liyasthomas/postwoman/fork)
|
||||
2. Create a new branch for your translation work e.g. `es`.
|
||||
3. Copy `lang/en-US.json` to your target language file e.g. `lang/es-ES.json` and translate all the strings.
|
||||
4. Add your language entry to `nuxt.config.js`.
|
||||
|
||||
e.g.
|
||||
|
||||
```
|
||||
i18n: {
|
||||
locales: [
|
||||
{
|
||||
code: "en",
|
||||
name: "English",
|
||||
iso: "en-US",
|
||||
file: "en-US.json",
|
||||
},
|
||||
{
|
||||
code: 'es',
|
||||
name: 'Español',
|
||||
iso: 'es-ES',
|
||||
file: 'es-ES.js'
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
5. Save & commit changes.
|
||||
6. Send a pull request. (You may send a pull request before all steps above are complete: e.g., you may want to ask for help with translations, or getting tests to pass. However your pull request will not be merged until all steps above are complete.)
|
||||
|
||||
Completing an initial translation of the whole site is a fairly large task. One way to break that task up is to work with other translators through pull requests on your fork. You can also [add collaborators to your fork](https://help.github.com/en/github/setting-up-and-managing-your-github-user-account/inviting-collaborators-to-a-personal-repository) if you'd like to inivte other translators to commit directly to your fork and share responsibility for merging pull requests.
|
||||
|
||||
## Updating a translation
|
||||
|
||||
### Corrections
|
||||
|
||||
If you notice spelling or grammar errors, typos, or opportunities for better phrasing, open a pull request with your suggested fix. If you see a problem that you aren't sure of or don't have time to fix, open an issue.
|
||||
|
||||
### Broken links
|
||||
|
||||
When tests find broken links, try to fix them across all translations. Ideally, only update the linked URLs, so that translation changes will definitely not be necessary.
|
||||
@@ -7,6 +7,14 @@
|
||||
</nuxt-link>
|
||||
</span>
|
||||
<span>
|
||||
<button
|
||||
class="icon"
|
||||
id="installPWA"
|
||||
@click.prevent="showInstallPrompt()"
|
||||
v-tooltip="$t('install_pwa')"
|
||||
>
|
||||
<i class="material-icons">offline_bolt</i>
|
||||
</button>
|
||||
<a
|
||||
href="https://github.com/liyasthomas/postwoman"
|
||||
target="_blank"
|
||||
@@ -63,14 +71,6 @@
|
||||
</div>
|
||||
</template>
|
||||
</v-popover>
|
||||
<button
|
||||
class="icon"
|
||||
id="installPWA"
|
||||
@click.prevent="showInstallPrompt()"
|
||||
v-tooltip="$t('install_pwa')"
|
||||
>
|
||||
<i class="material-icons">offline_bolt</i>
|
||||
</button>
|
||||
<v-popover>
|
||||
<button class="icon" v-tooltip="$t('more')">
|
||||
<i class="material-icons">drag_indicator</i>
|
||||
|
||||
6
functions/package-lock.json
generated
6
functions/package-lock.json
generated
@@ -1233,9 +1233,9 @@
|
||||
}
|
||||
},
|
||||
"lodash": {
|
||||
"version": "4.17.15",
|
||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
|
||||
"integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="
|
||||
"version": "4.17.19",
|
||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
|
||||
"integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ=="
|
||||
},
|
||||
"lodash.at": {
|
||||
"version": "4.6.0",
|
||||
|
||||
88
package-lock.json
generated
88
package-lock.json
generated
@@ -1275,9 +1275,9 @@
|
||||
"integrity": "sha512-L/ZnJRAq7F++utfuoTKX4CLBG5YR7tFO3PLzG1/oXXKEezJ0kRL3CMRoueBEmTCzVb/6SIs2Qlaw++uDgi5Xyg=="
|
||||
},
|
||||
"@firebase/auth": {
|
||||
"version": "0.14.8",
|
||||
"resolved": "https://registry.npmjs.org/@firebase/auth/-/auth-0.14.8.tgz",
|
||||
"integrity": "sha512-LufoWcFpYAoCUkFDKSELH69xI8NdOjNTUFKvWfADZN7ysr4dpPdDs2ZYnH67FqcMb0tX+Jdx6vWrF6VZ37AAJQ==",
|
||||
"version": "0.14.9",
|
||||
"resolved": "https://registry.npmjs.org/@firebase/auth/-/auth-0.14.9.tgz",
|
||||
"integrity": "sha512-PxYa2r5qUEdheXTvqROFrMstK8W4uPiP7NVfp+2Bec+AjY5PxZapCx/YFDLkU0D7YBI82H74PtZrzdJZw7TJ4w==",
|
||||
"requires": {
|
||||
"@firebase/auth-types": "0.10.1"
|
||||
}
|
||||
@@ -1309,9 +1309,9 @@
|
||||
}
|
||||
},
|
||||
"@firebase/database": {
|
||||
"version": "0.6.7",
|
||||
"resolved": "https://registry.npmjs.org/@firebase/database/-/database-0.6.7.tgz",
|
||||
"integrity": "sha512-vm0ch2zNSoHfXWnDG6WVjf0p/BdXOMBL1lAfkGu3DYH/Rkl4p97x57w0WNOURNfL4GY2LIqScSYKCidV7jqTog==",
|
||||
"version": "0.6.8",
|
||||
"resolved": "https://registry.npmjs.org/@firebase/database/-/database-0.6.8.tgz",
|
||||
"integrity": "sha512-Psibz/LD9WBvZRS7A/kkYd5i5l6tBw49adSFmCM2ZJlKE9fxZhxay02AerwfXHiq3gPKVeqXUjBIRuHOWdEXmw==",
|
||||
"requires": {
|
||||
"@firebase/auth-interop-types": "0.1.5",
|
||||
"@firebase/component": "0.1.16",
|
||||
@@ -1338,9 +1338,9 @@
|
||||
}
|
||||
},
|
||||
"@firebase/firestore": {
|
||||
"version": "1.16.0",
|
||||
"resolved": "https://registry.npmjs.org/@firebase/firestore/-/firestore-1.16.0.tgz",
|
||||
"integrity": "sha512-RsgGIP9e6HW5soEHIuo0CGVFpeTKe0hqjrgOLk92W0mjL6irzBlqmd5HcGMY4F5QiZryc2vMT1/3LvRhkUyf8g==",
|
||||
"version": "1.16.1",
|
||||
"resolved": "https://registry.npmjs.org/@firebase/firestore/-/firestore-1.16.1.tgz",
|
||||
"integrity": "sha512-TGtvNIGHMEFFEuOSsRswou576GPZY39vXIsenn0B1Dqz9ACpyDtvAT9YdbG38srlPq7ZKwsP5x04LB43zZ6eAg==",
|
||||
"requires": {
|
||||
"@firebase/component": "0.1.16",
|
||||
"@firebase/firestore-types": "1.12.0",
|
||||
@@ -1515,12 +1515,12 @@
|
||||
"integrity": "sha512-G96qnF3RYGbZsTRut7NBX0sxyczxt1uyCgXQuH/eAfUCngxjEGcZQnBdy6mvSdqdJh5mC31rWPO4v9/s7HwtzA=="
|
||||
},
|
||||
"@firebase/storage": {
|
||||
"version": "0.3.38",
|
||||
"resolved": "https://registry.npmjs.org/@firebase/storage/-/storage-0.3.38.tgz",
|
||||
"integrity": "sha512-gWVQr5xqrU3cfhhwbAE+9iJ0XMvzbxWMvteKurn5cRNaGbmSob/O/ISOAvsQgPnk+K9zPMd2OwyzaTOl9PEMrw==",
|
||||
"version": "0.3.39",
|
||||
"resolved": "https://registry.npmjs.org/@firebase/storage/-/storage-0.3.39.tgz",
|
||||
"integrity": "sha512-uTE8kROU/NMas+0i2oK0U9LuAlDzt+Cis0ErmYPlbCvmFqpFdyu3TtlO5MYNoxGLaBjEyxb18NJZai9lNMXFlQ==",
|
||||
"requires": {
|
||||
"@firebase/component": "0.1.16",
|
||||
"@firebase/storage-types": "0.3.12",
|
||||
"@firebase/storage-types": "0.3.13",
|
||||
"@firebase/util": "0.2.50",
|
||||
"tslib": "^1.11.1"
|
||||
},
|
||||
@@ -1533,9 +1533,9 @@
|
||||
}
|
||||
},
|
||||
"@firebase/storage-types": {
|
||||
"version": "0.3.12",
|
||||
"resolved": "https://registry.npmjs.org/@firebase/storage-types/-/storage-types-0.3.12.tgz",
|
||||
"integrity": "sha512-DDV6Fs6aYoGw3w/zZZTkqiipxihnsvHf6znbeZYjIIHit3tr1uLJdGPDPiCTfZcTGPpg2ux6ZmvNDvVgJdHALw=="
|
||||
"version": "0.3.13",
|
||||
"resolved": "https://registry.npmjs.org/@firebase/storage-types/-/storage-types-0.3.13.tgz",
|
||||
"integrity": "sha512-pL7b8d5kMNCCL0w9hF7pr16POyKkb3imOW7w0qYrhBnbyJTdVxMWZhb0HxCFyQWC0w3EiIFFmxoz8NTFZDEFog=="
|
||||
},
|
||||
"@firebase/util": {
|
||||
"version": "0.2.50",
|
||||
@@ -1573,9 +1573,9 @@
|
||||
}
|
||||
},
|
||||
"@grpc/proto-loader": {
|
||||
"version": "0.5.4",
|
||||
"resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.5.4.tgz",
|
||||
"integrity": "sha512-HTM4QpI9B2XFkPz7pjwMyMgZchJ93TVkL3kWPW8GDMDKYxsMnmf4w2TNMJK7+KNiYHS5cJrCEAFlF+AwtXWVPA==",
|
||||
"version": "0.5.5",
|
||||
"resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.5.5.tgz",
|
||||
"integrity": "sha512-WwN9jVNdHRQoOBo9FDH7qU+mgfjPc8GygPYms3M+y3fbQLfnCe/Kv/E01t7JRgnrsOHH8euvSbed3mIalXhwqQ==",
|
||||
"requires": {
|
||||
"lodash.camelcase": "^4.3.0",
|
||||
"protobufjs": "^6.8.6"
|
||||
@@ -2222,9 +2222,9 @@
|
||||
}
|
||||
},
|
||||
"@nuxtjs/google-analytics": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@nuxtjs/google-analytics/-/google-analytics-2.3.0.tgz",
|
||||
"integrity": "sha512-TBRWCZJJBywNU4Sxbe03w5uy76O9JiOJz5ZgFDAmU06IUhwMELWOoQFWTqgROmvhqzoZrXMPR5JiaEnvaCRuDA==",
|
||||
"version": "2.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@nuxtjs/google-analytics/-/google-analytics-2.4.0.tgz",
|
||||
"integrity": "sha512-rDQTwHIjyjVrx8GywHPuWykJ3jRFGaHl5Iqji/y8tQWUc0yGEeHxOoR0yimzxnTS1Ph2/PubQYpgnVeEPEdL/A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"vue-analytics": "^5.22.1"
|
||||
@@ -5296,11 +5296,21 @@
|
||||
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
|
||||
},
|
||||
"encoding": {
|
||||
"version": "0.1.12",
|
||||
"resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz",
|
||||
"integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=",
|
||||
"version": "0.1.13",
|
||||
"resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
|
||||
"integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
|
||||
"requires": {
|
||||
"iconv-lite": "~0.4.13"
|
||||
"iconv-lite": "^0.6.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"iconv-lite": {
|
||||
"version": "0.6.2",
|
||||
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.2.tgz",
|
||||
"integrity": "sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ==",
|
||||
"requires": {
|
||||
"safer-buffer": ">= 2.1.2 < 3.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"end-of-stream": {
|
||||
@@ -6301,23 +6311,23 @@
|
||||
}
|
||||
},
|
||||
"firebase": {
|
||||
"version": "7.16.0",
|
||||
"resolved": "https://registry.npmjs.org/firebase/-/firebase-7.16.0.tgz",
|
||||
"integrity": "sha512-fYimLYkY0SS/jv4+ZnSp5u2+QdtwsTtLwPUfmWiKQnjqas1M5mqhQr3QB7vPQuSANhC3UJZZ5KPxLbFomMJLcA==",
|
||||
"version": "7.16.1",
|
||||
"resolved": "https://registry.npmjs.org/firebase/-/firebase-7.16.1.tgz",
|
||||
"integrity": "sha512-mcvFh617lWPYnx6SmwgtwmliY8P3XBi8pm0LDY4a8WPD049goCMgmIEpKkX4R3gZ2noz2rVrxSUfodENPpttLg==",
|
||||
"requires": {
|
||||
"@firebase/analytics": "0.3.9",
|
||||
"@firebase/app": "0.6.8",
|
||||
"@firebase/app-types": "0.6.1",
|
||||
"@firebase/auth": "0.14.8",
|
||||
"@firebase/database": "0.6.7",
|
||||
"@firebase/firestore": "1.16.0",
|
||||
"@firebase/auth": "0.14.9",
|
||||
"@firebase/database": "0.6.8",
|
||||
"@firebase/firestore": "1.16.1",
|
||||
"@firebase/functions": "0.4.48",
|
||||
"@firebase/installations": "0.4.14",
|
||||
"@firebase/messaging": "0.6.20",
|
||||
"@firebase/performance": "0.3.9",
|
||||
"@firebase/polyfill": "0.3.36",
|
||||
"@firebase/remote-config": "0.1.25",
|
||||
"@firebase/storage": "0.3.38",
|
||||
"@firebase/storage": "0.3.39",
|
||||
"@firebase/util": "0.2.50"
|
||||
}
|
||||
},
|
||||
@@ -11275,9 +11285,9 @@
|
||||
}
|
||||
},
|
||||
"protobufjs": {
|
||||
"version": "6.9.0",
|
||||
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.9.0.tgz",
|
||||
"integrity": "sha512-LlGVfEWDXoI/STstRDdZZKb/qusoAWUnmLg9R8OLSO473mBLWHowx8clbX5/+mKDEI+v7GzjoK9tRPZMMcoTrg==",
|
||||
"version": "6.10.1",
|
||||
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.10.1.tgz",
|
||||
"integrity": "sha512-pb8kTchL+1Ceg4lFd5XUpK8PdWacbvV5SK2ULH2ebrYtl4GjJmS24m6CKME67jzV53tbJxHlnNOSqQHbTsR9JQ==",
|
||||
"requires": {
|
||||
"@protobufjs/aspromise": "^1.1.2",
|
||||
"@protobufjs/base64": "^1.1.2",
|
||||
@@ -11295,9 +11305,9 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@types/node": {
|
||||
"version": "13.13.13",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.13.tgz",
|
||||
"integrity": "sha512-UfvBE9oRCAJVzfR+3eWm/sdLFe/qroAPEXP3GPJ1SehQiEVgZT6NQZWYbPMiJ3UdcKM06v4j+S1lTcdWCmw+3g=="
|
||||
"version": "13.13.14",
|
||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.14.tgz",
|
||||
"integrity": "sha512-Az3QsOt1U/K1pbCQ0TXGELTuTkPLOiFIQf3ILzbOyo0FqgV9SxRnxbxM5QlAveERZMHpZY+7u3Jz2tKyl+yg6g=="
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"@nuxtjs/sitemap": "^2.4.0",
|
||||
"@nuxtjs/toast": "^3.3.1",
|
||||
"ace-builds": "^1.4.12",
|
||||
"firebase": "^7.16.0",
|
||||
"firebase": "^7.16.1",
|
||||
"graphql": "^15.3.0",
|
||||
"graphql-language-service-interface": "^2.4.0",
|
||||
"nuxt": "^2.12.2",
|
||||
@@ -51,7 +51,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@nuxtjs/dotenv": "^1.4.1",
|
||||
"@nuxtjs/google-analytics": "^2.3.0",
|
||||
"@nuxtjs/google-analytics": "^2.4.0",
|
||||
"@nuxtjs/pwa": "^3.0.0-beta.20",
|
||||
"cypress": "^4.10.0",
|
||||
"eslint": "^7.4.0",
|
||||
|
||||
Reference in New Issue
Block a user