Compare commits
230 Commits
Author | SHA1 | Date |
---|---|---|
Rongjian Zhang | c30895ab1e | |
Rongjian Zhang | 504ee9c863 | |
Rongjian Zhang | 0f4192f0be | |
Shreyas Thirumalai | 19a87870bb | |
Shreyas Thirumalai | 88ca58d62b | |
Rongjian Zhang | ade30dec99 | |
Rongjian Zhang | 51bd138951 | |
Rongjian Zhang | 4595f61961 | |
Rongjian Zhang | 7d70886d52 | |
Rongjian Zhang | 1edc61edef | |
Rongjian Zhang | 65e43dc633 | |
Rongjian Zhang | 06a96a14be | |
Rongjian Zhang | e2de7feec2 | |
Rongjian Zhang | 56402d789c | |
Rongjian Zhang | 29242aa45d | |
Rongjian Zhang | ad44495236 | |
Rongjian Zhang | 3d21b6c226 | |
Rongjian Zhang | fbb524a7de | |
Rongjian Zhang | 7bd412eb2b | |
Rongjian Zhang | 7ca3fe03c5 | |
Rongjian Zhang | b65ce98077 | |
Rongjian Zhang | fddf67d518 | |
Rongjian Zhang | 5a5b20eb7e | |
Rongjian Zhang | efd74ccd86 | |
Rongjian Zhang | 7b51747576 | |
Rongjian Zhang | 61d5a3e846 | |
Rongjian Zhang | 9892d87f9b | |
Rongjian Zhang | 826664e3f1 | |
Rongjian Zhang | e6298b2363 | |
Rongjian Zhang | 3953544d55 | |
Rongjian Zhang | f7eb0e6f62 | |
Rongjian Zhang | 830441ba05 | |
Rongjian Zhang | d86229e367 | |
Rongjian Zhang | a1182ed6a5 | |
Rongjian Zhang | 633b58d36f | |
Rongjian Zhang | 4c2a7177eb | |
Rongjian Zhang | 057bad71fe | |
Rongjian Zhang | 9b339c6cdf | |
Rongjian Zhang | 7a71d13f7d | |
Rongjian Zhang | 36e505d511 | |
Rongjian Zhang | 775b2cef49 | |
Rongjian Zhang | e872b4753d | |
Rongjian Zhang | df946c514a | |
Rongjian Zhang | e45b8fa134 | |
Rongjian Zhang | 2d28eb7b41 | |
Rongjian Zhang | 55f3f6a713 | |
Rongjian Zhang | 0a28311797 | |
Rongjian Zhang | b7dcf933a3 | |
Rongjian Zhang | 26b78a31a6 | |
Rongjian Zhang | 0e952a6ef7 | |
Rongjian Zhang | 9e2850558d | |
Rongjian Zhang | 206cd1244c | |
Rongjian Zhang | 4fe46b274a | |
Rongjian Zhang | 048d35112b | |
Rongjian Zhang | 3474d931ac | |
Rongjian Zhang | 706d456c46 | |
Rongjian Zhang | efc2359f27 | |
Rongjian Zhang | ba34337b07 | |
Rongjian Zhang | 89966a95e6 | |
Rongjian Zhang | 9df896a0db | |
Rongjian Zhang | 7b08f4cc07 | |
Rongjian Zhang | d5f3bd9f24 | |
Rongjian Zhang | a30385a414 | |
Rongjian Zhang | 8d1e3fa596 | |
Rongjian Zhang | d7972c4084 | |
Rongjian Zhang | 6df89e771e | |
Rongjian Zhang | 536b031655 | |
Rongjian Zhang | 15a57899fd | |
Rongjian Zhang | fee559ba9a | |
Rongjian Zhang | 073af6f492 | |
Rongjian Zhang | d8f38d34aa | |
Rongjian Zhang | 9b914ff1f1 | |
Rongjian Zhang | 20b7addf51 | |
Rongjian Zhang | 5214a404b1 | |
Rongjian Zhang | cf6871ce20 | |
Rongjian Zhang | 988cdbfe45 | |
Rongjian Zhang | e8eb860222 | |
Rongjian Zhang | 7e79da77ee | |
Rongjian Zhang | 606370a85e | |
Rongjian Zhang | e5929aa1b8 | |
Rongjian Zhang | f0b52e82ab | |
Rongjian Zhang | 5b7b465b09 | |
Rongjian Zhang | 8eda3e36c8 | |
Rongjian Zhang | b2e7a97dab | |
Rongjian Zhang | 137af2df75 | |
Rongjian Zhang | ec99de2b6d | |
Rongjian Zhang | 66e14509de | |
Rongjian Zhang | fac17a69ef | |
Rongjian Zhang | d9c50cd0a9 | |
Rongjian Zhang | 4e715d9697 | |
Rongjian Zhang | d250f1c95c | |
Rongjian Zhang | a512e41121 | |
Rongjian Zhang | 9545b26310 | |
Rongjian Zhang | 4af23c160d | |
Rongjian Zhang | 084bc3c86a | |
Rongjian Zhang | aac5fb866b | |
Rongjian Zhang | 08f70164f4 | |
Rongjian Zhang | cac6385e6e | |
Rongjian Zhang | 9207d52cf3 | |
Rongjian Zhang | 3261db8fee | |
Rongjian Zhang | dc40206576 | |
Rongjian Zhang | f14e274d24 | |
Rongjian Zhang | c5ea37f9bd | |
Rongjian Zhang | 5635238921 | |
Rongjian Zhang | 081acbeda8 | |
Rongjian Zhang | b688dc155a | |
Rongjian Zhang | e8f3d956c3 | |
Rongjian Zhang | 854a1c9506 | |
Rongjian Zhang | f52fee752d | |
Rongjian Zhang | ff7eadc5c9 | |
Rongjian Zhang | fc7dd512e8 | |
Rongjian Zhang | 8114cff317 | |
Rongjian Zhang | bad5327928 | |
Rongjian Zhang | 126fadac76 | |
Rongjian Zhang | 594c5de972 | |
Rongjian Zhang | 7247c05817 | |
Rongjian Zhang | 112a97f0eb | |
Rongjian Zhang | d48ac1e484 | |
Shreyas Thirumalai | d6a24c257a | |
Shreyas Thirumalai | 68253e071e | |
Shreyas Thirumalai | ddfa9e469e | |
Rongjian Zhang | 64178db3db | |
Rongjian Zhang | 1f4f034c40 | |
Rongjian Zhang | 105eed467b | |
Rongjian Zhang | 36930eb8aa | |
Rongjian Zhang | b488b90f97 | |
Rongjian Zhang | 5b3bc45db5 | |
Rongjian Zhang | 442d910dbd | |
Rongjian Zhang | 97bd998491 | |
Rongjian Zhang | 242dd1200d | |
Rongjian Zhang | 70e19e9b72 | |
Rongjian Zhang | b320a8e6dd | |
Rongjian Zhang | 17df5d634c | |
Rongjian Zhang | 917a8018f3 | |
Rongjian Zhang | ac02fd705a | |
Rongjian Zhang | 17b6fd5d78 | |
Rongjian Zhang | af52d55af9 | |
Rongjian Zhang | 14369c2002 | |
Rongjian Zhang | 87dbe87095 | |
Rongjian Zhang | 9b3a6fce07 | |
Rongjian Zhang | e2f103a807 | |
Rongjian Zhang | 841a5d13cf | |
Rongjian Zhang | 445925584b | |
峡州仙士 | e2721f8877 | |
V | db86c0aee2 | |
ssantos | f2d32f89ff | |
qwerty287 | 09058db773 | |
SoftwareByRedline | cc653f8052 | |
Oliver Lew | e6e46d30ab | |
Heimen Stoffels | 9c72645e8c | |
Tealk | 031af33f37 | |
Adolfo Jayme Barrientos | 7209cd2b56 | |
kak mi | 65a604768e | |
HelaBasa | c4fc788630 | |
Rongjian Zhang | ef014c3054 | |
Rongjian Zhang | efe0126bdb | |
Rongjian Zhang | 420eca980a | |
Rongjian Zhang | c257c74b59 | |
Rongjian Zhang | 6d6e5bf195 | |
Rongjian Zhang | fa932b53ea | |
gyro永不抽风 | a5277965f1 | |
Rongjian Zhang | 4242b494b2 | |
Rongjian Zhang | 72f709f076 | |
Rongjian Zhang | 11fc186091 | |
Rongjian Zhang | 7521c40ee8 | |
Rongjian Zhang | f64c02b10b | |
Rongjian Zhang | 36a161cc3b | |
Rongjian Zhang | a90d7ddb43 | |
Rongjian Zhang | de9830af43 | |
Rongjian Zhang | 2a4e9a9dca | |
Rongjian Zhang | 702567e43a | |
Rongjian Zhang | 4dd1ddf8f9 | |
Rongjian Zhang | e413677523 | |
Rongjian Zhang | 5d799b31ac | |
Sultan Iskandar Maulana | acf088d860 | |
Sultan Iskandar Maulana | f7eea5ba70 | |
Rongjian Zhang | 2d19710f27 | |
Rongjian Zhang | 74e731af5e | |
Rongjian Zhang | 66b8177e72 | |
Artem | 3e7498fef6 | |
Ricardo | 139bea7e9e | |
Artem | 834ccc7e64 | |
Rongjian Zhang | 37ecc55485 | |
Rongjian Zhang | c80ca3e860 | |
Karim Tayie | 4a7028f525 | |
Rongjian Zhang | c4a44decf7 | |
Rongjian Zhang | 7c5077581f | |
Rongjian Zhang | d505857a4b | |
Rongjian Zhang | 020852f0ab | |
Rongjian Zhang | 07d39100d7 | |
Rongjian Zhang | d488d4b826 | |
Rongjian Zhang | 3f6955dd7f | |
Rongjian Zhang | 6fe2a6541c | |
Shreyas Thirumalai | 717b7cd336 | |
Shreyas Thirumalai | 3b88ad01f7 | |
Rongjian Zhang | a1021465a8 | |
Rongjian Zhang | 952bd20fb3 | |
Shreyas Thirumalai | 060704599f | |
Jo | 0ca5635714 | |
Ricardo | ed0bf1bf08 | |
Allan Nordhøy | 368bcc3fc7 | |
Jo | 2c7236f2f9 | |
Ricardo | 0466974c6d | |
Allan Nordhøy | b086998e30 | |
Allan Nordhøy | a3d2d1efaf | |
Rongjian Zhang | b6f79478e2 | |
Rongjian Zhang | f3dfd74578 | |
Shreyas Thirumalai | 4f3d47200e | |
Shreyas Thirumalai | af3c1655e4 | |
Rongjian Zhang | 918d0f3971 | |
Rongjian Zhang | f4e5df4068 | |
Rongjian Zhang | 1b19f1a660 | |
Shreyas Thirumalai | fba6e4cb72 | |
Rongjian Zhang | b9852e1e05 | |
Rongjian Zhang | dd6fe2b961 | |
Rongjian Zhang | 10477a7071 | |
Rongjian Zhang | 31c43eebc8 | |
Rongjian Zhang | c1b3d330e0 | |
Rongjian Zhang | 30eb0ef5b3 | |
Rongjian Zhang | fc96c5ad45 | |
Rongjian Zhang | 09edf5f04b | |
Shreyas Thirumalai | b0193a5def | |
Shreyas Thirumalai | c2cd992019 | |
Rongjian Zhang | 7a2196170e | |
Lukas Batema | 8ebb885831 | |
Rongjian Zhang | e41d235cde | |
Shreyas Thirumalai | 4f1e0441d2 | |
Shreyas Thirumalai | cb9bc89778 | |
Shreyas Thirumalai | d826107621 | |
Shreyas Thirumalai | c75288ef97 |
|
@ -1,22 +0,0 @@
|
|||
name: deploy
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: subosito/flutter-action@v1
|
||||
with:
|
||||
channel: dev
|
||||
- run: |
|
||||
flutter config --enable-web
|
||||
flutter pub get
|
||||
flutter build web
|
||||
- uses: peaceiris/actions-gh-pages@v3
|
||||
with:
|
||||
personal_token: ${{ secrets.PERSONAL_TOKEN }}
|
||||
publish_dir: ./build/web/
|
||||
external_repository: git-touch/git-touch.github.io
|
|
@ -1,14 +1,18 @@
|
|||
name: lint
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
branches: [main]
|
||||
branches:
|
||||
- main
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: google/dart:latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- run: dartfmt --dry-run --set-exit-if-changed lib/**/*.dart
|
||||
- uses: subosito/flutter-action@v1
|
||||
with:
|
||||
channel: stable
|
||||
- run: flutter analyze
|
||||
- run: flutter format --dry-run --set-exit-if-changed lib/**/*.dart
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
.buildlog/
|
||||
.history
|
||||
.svn/
|
||||
migrate_working_dir/
|
||||
|
||||
# IntelliJ related
|
||||
*.iml
|
||||
|
@ -39,3 +40,10 @@ app.*.symbols
|
|||
|
||||
# Obfuscation related
|
||||
app.*.map.json
|
||||
|
||||
# Android Studio will place build artifacts here
|
||||
/android/app/debug
|
||||
/android/app/profile
|
||||
/android/app/release
|
||||
|
||||
packages/*/pubspec.lock
|
||||
|
|
39
.metadata
|
@ -1,10 +1,45 @@
|
|||
# This file tracks properties of this Flutter project.
|
||||
# Used by Flutter tool to assess capabilities and perform upgrades etc.
|
||||
#
|
||||
# This file should be version controlled and should not be manually edited.
|
||||
# This file should be version controlled.
|
||||
|
||||
version:
|
||||
revision: d408d302e22179d598f467e11da5dd968dbdc9ec
|
||||
revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
channel: stable
|
||||
|
||||
project_type: app
|
||||
|
||||
# Tracks metadata for the flutter migrate command
|
||||
migration:
|
||||
platforms:
|
||||
- platform: root
|
||||
create_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
base_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
- platform: android
|
||||
create_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
base_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
- platform: ios
|
||||
create_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
base_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
- platform: linux
|
||||
create_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
base_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
- platform: macos
|
||||
create_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
base_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
- platform: web
|
||||
create_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
base_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
- platform: windows
|
||||
create_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
base_revision: 676cefaaff197f27424942307668886253e1ec35
|
||||
|
||||
# User provided section
|
||||
|
||||
# List of Local paths (relative to this file) that should be
|
||||
# ignored by the migrate tool.
|
||||
#
|
||||
# Files that are not part of the templates will be ignored by default.
|
||||
unmanaged_files:
|
||||
- 'lib/main.dart'
|
||||
- 'ios/Runner.xcodeproj/project.pbxproj'
|
||||
|
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
"label": "all",
|
||||
"dependsOn": ["root", "gql_github", "gql_gitlab", "github_trending"]
|
||||
},
|
||||
{
|
||||
"label": "root",
|
||||
"type": "dart",
|
||||
"command": "dart",
|
||||
"args": ["run", "build_runner", "watch"]
|
||||
},
|
||||
{
|
||||
"label": "gql_github",
|
||||
"type": "dart",
|
||||
"command": "dart",
|
||||
"cwd": "packages/gql_github",
|
||||
"args": ["run", "build_runner", "watch"]
|
||||
},
|
||||
{
|
||||
"label": "gql_gitlab",
|
||||
"type": "dart",
|
||||
"command": "dart",
|
||||
"cwd": "packages/gql_gitlab",
|
||||
"args": ["run", "build_runner", "watch"]
|
||||
},
|
||||
{
|
||||
"label": "github_trending",
|
||||
"type": "dart",
|
||||
"command": "dart",
|
||||
"cwd": "packages/github_trending",
|
||||
"args": ["run", "build_runner", "watch"]
|
||||
}
|
||||
]
|
||||
}
|
731
CHANGELOG.md
|
@ -1,16 +1,721 @@
|
|||
## 1.1.0
|
||||
# [](https://github.com/git-touch/git-touch/compare/v1.13.0...v) (2021-06-14)
|
||||
|
||||
|
||||
|
||||
# [1.13.0](https://github.com/git-touch/git-touch/compare/v1.12.4...v1.13.0) (2021-06-14)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* avatar url error fallback ([70e19e9](https://github.com/git-touch/git-touch/commit/70e19e9b7204100d5c72ec9dc14991d245c70b07))
|
||||
* bitbucket and gitlab files length ([242dd12](https://github.com/git-touch/git-touch/commit/242dd1200de034b4bf2bfbf30ea94c1a3dcd6153)), closes [#224](https://github.com/git-touch/git-touch/issues/224)
|
||||
* long list scaffold ([17b6fd5](https://github.com/git-touch/git-touch/commit/17b6fd5d783e6dbc80b00e57423c2876ac862306))
|
||||
* types ([97bd998](https://github.com/git-touch/git-touch/commit/97bd99849104bebfc3633b3c5bd96de6db35d3a1))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* check update after opening app ([36930eb](https://github.com/git-touch/git-touch/commit/36930eb8aad7ab78566324fcd1347c4e0c48166f))
|
||||
* crash report ([442d910](https://github.com/git-touch/git-touch/commit/442d910dbdcdc9d1dae519c6e44085874ddf2f76)), closes [#114](https://github.com/git-touch/git-touch/issues/114)
|
||||
|
||||
|
||||
|
||||
## [1.12.4](https://github.com/git-touch/git-touch/compare/v1.12.3...v1.12.4) (2021-05-30)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* empty accounts ([e2f103a](https://github.com/git-touch/git-touch/commit/e2f103a807291fd0cec12dcca641c70e66f3fa18))
|
||||
* nullable types ([841a5d1](https://github.com/git-touch/git-touch/commit/841a5d13cf76d7f5e0a62ad90471ab241fe06fef))
|
||||
* pagination null ([87dbe87](https://github.com/git-touch/git-touch/commit/87dbe870954139196c318698e47a90d26eb92586))
|
||||
* set locale null ([9b3a6fc](https://github.com/git-touch/git-touch/commit/9b3a6fce078690bc7474aed5b91c7d8dbe6d84b2))
|
||||
|
||||
|
||||
|
||||
## [1.12.3](https://github.com/git-touch/git-touch/compare/v1.12.2...v1.12.3) (2021-02-27)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **github:** issue screen pagination ([7521c40](https://github.com/git-touch/git-touch/commit/7521c40ee8b7e4805e6a5acdd354c7700839f150)), closes [#198](https://github.com/git-touch/git-touch/issues/198)
|
||||
* locale resolve ([74e731a](https://github.com/git-touch/git-touch/commit/74e731af5ed5242c0852c12f859d0cd16a6c3c94))
|
||||
|
||||
|
||||
|
||||
## [1.12.2](https://github.com/git-touch/git-touch/compare/v1.12.1...v1.12.2) (2021-02-19)
|
||||
|
||||
|
||||
|
||||
## [1.12.1](https://github.com/git-touch/git-touch/compare/v1.12.0...v1.12.1) (2021-02-19)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* locale fallback ([c80ca3e](https://github.com/git-touch/git-touch/commit/c80ca3e86034979ade2fb170be9a047def016395)), closes [#199](https://github.com/git-touch/git-touch/issues/199)
|
||||
* **bitbucket:** pull requests url ([#197](https://github.com/git-touch/git-touch/issues/197)) ([4a7028f](https://github.com/git-touch/git-touch/commit/4a7028f5256fde36a951f09b6c88e2f420e77e79))
|
||||
|
||||
|
||||
|
||||
# [1.12.0](https://github.com/git-touch/git-touch/compare/v1.11.1...v1.12.0) (2021-02-14)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **github:** commits screen ref ([07d3910](https://github.com/git-touch/git-touch/commit/07d39100d71ebb32c28e74a2d70a031fc0178f6b)), closes [#196](https://github.com/git-touch/git-touch/issues/196)
|
||||
* files screen error ([#184](https://github.com/git-touch/git-touch/issues/184)) ([4f3d472](https://github.com/git-touch/git-touch/commit/4f3d47200e81f8f77898004d44f8f8006b41d20d))
|
||||
* html view disposed before set state ([f4e5df4](https://github.com/git-touch/git-touch/commit/f4e5df4068847c0033c6cfed4a94128e2cee8354))
|
||||
* set locale and reload ([d488d4b](https://github.com/git-touch/git-touch/commit/d488d4b8269b2df5e9b54dace2da21262f368633))
|
||||
* **github:** comment emoji reaction ([dd6fe2b](https://github.com/git-touch/git-touch/commit/dd6fe2b96148aa25afced4b28da555289b70867c))
|
||||
* **github:** comment of deleted user ([09edf5f](https://github.com/git-touch/git-touch/commit/09edf5f04b31b36c202f2f6d76bf376f95c76d2a)), closes [#161](https://github.com/git-touch/git-touch/issues/161)
|
||||
* **github:** release screen error ([#183](https://github.com/git-touch/git-touch/issues/183)) ([af3c165](https://github.com/git-touch/git-touch/commit/af3c1655e42d4d2057e1996fc57945a46bc49709))
|
||||
* **github:** repo and user mutations ([10477a7](https://github.com/git-touch/git-touch/commit/10477a707115eb11ababb20a684b2b56b84c6e84))
|
||||
* hide contribution graph scrollbar ([#177](https://github.com/git-touch/git-touch/issues/177)) ([b0193a5](https://github.com/git-touch/git-touch/commit/b0193a5deff73b6d9efc263b89431c02a95a2455)), closes [#37](https://github.com/git-touch/git-touch/issues/37)
|
||||
* typo ([7a21961](https://github.com/git-touch/git-touch/commit/7a2196170eeacc2428d3ea8f7c2e0c01d98d3605)), closes [#172](https://github.com/git-touch/git-touch/issues/172)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* choose locale in settings ([#189](https://github.com/git-touch/git-touch/issues/189)) ([717b7cd](https://github.com/git-touch/git-touch/commit/717b7cd3369e8fddca0699b5732726cde37066d7))
|
||||
* skip login screen when logged in ([#191](https://github.com/git-touch/git-touch/issues/191)) ([3b88ad0](https://github.com/git-touch/git-touch/commit/3b88ad01f7af1c7763084d3df2c6b9de27fe602e))
|
||||
* **gitee:** watch, star a repo ([#157](https://github.com/git-touch/git-touch/issues/157)) ([c75288e](https://github.com/git-touch/git-touch/commit/c75288ef977ae84123afc6ed7a1efd2527cc859a))
|
||||
* **github:** add public repos only login option ([31c43ee](https://github.com/git-touch/git-touch/commit/31c43eebc8e3b11a60da92926b94b4c052029e9a)), closes [#133](https://github.com/git-touch/git-touch/issues/133)
|
||||
* **github:** releases, gists(graphql) ([#179](https://github.com/git-touch/git-touch/issues/179)) ([fba6e4c](https://github.com/git-touch/git-touch/commit/fba6e4cb724957357f3ab0410619e6a29d93acb9)), closes [#174](https://github.com/git-touch/git-touch/issues/174)
|
||||
* dark mode avatar placeholder ([c1b3d33](https://github.com/git-touch/git-touch/commit/c1b3d330e009fc3001793d0f1e3aa35d8ba47eb8))
|
||||
* **gitlab:** branches, issueAdd, router path fix ([#165](https://github.com/git-touch/git-touch/issues/165)) ([d826107](https://github.com/git-touch/git-touch/commit/d826107621286cf3e93e870233f070bb4ed9d797))
|
||||
* **gogs:** setup ([#170](https://github.com/git-touch/git-touch/issues/170)) ([4f1e044](https://github.com/git-touch/git-touch/commit/4f1e0441d2e16042482cdc0235a81dd7981c604e)), closes [#117](https://github.com/git-touch/git-touch/issues/117)
|
||||
|
||||
|
||||
|
||||
## [1.11.1](https://github.com/git-touch/git-touch/compare/v1.11.0...v1.11.1) (2021-01-11)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* drop app review dep to fit f-droid ([f1956db](https://github.com/git-touch/git-touch/commit/f1956dbdc31f89fc3b8fdd59404ffbcd3435ebd9))
|
||||
|
||||
|
||||
|
||||
# [1.11.0](https://github.com/git-touch/git-touch/compare/v1.10.1...v1.11.0) (2021-01-10)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* new issue link ([09ed700](https://github.com/git-touch/git-touch/commit/09ed70024ce38bf72084797884534233567eaaec))
|
||||
* **github:** proper spacing in branch creation/deletion events ([#149](https://github.com/git-touch/git-touch/issues/149)) ([efe882a](https://github.com/git-touch/git-touch/commit/efe882a0dfdc4b824fd3265464f5e92e9557ba96))
|
||||
* fallback language ([#141](https://github.com/git-touch/git-touch/issues/141)) ([8aa6604](https://github.com/git-touch/git-touch/commit/8aa660437fa3ed098ecd1fb1462a80e87a36d1fc)), closes [#140](https://github.com/git-touch/git-touch/issues/140)
|
||||
* gitee typo ([#145](https://github.com/git-touch/git-touch/issues/145)) ([4679ca1](https://github.com/git-touch/git-touch/commit/4679ca10ee1898a10798c10091445f09bfa26617))
|
||||
* UserItem assertion failure ([#135](https://github.com/git-touch/git-touch/issues/135)) ([c6757c1](https://github.com/git-touch/git-touch/commit/c6757c154890b9120848d985229f80c7c842fbfd))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **bitbucket:** update ([#147](https://github.com/git-touch/git-touch/issues/147)) ([76f9999](https://github.com/git-touch/git-touch/commit/76f999953496fa1828795fa22cf1e05148a9ea9b))
|
||||
* **gitea:** issue, issueComment, labels, refactor(GeIssueComment) ([#155](https://github.com/git-touch/git-touch/issues/155)) ([d74b141](https://github.com/git-touch/git-touch/commit/d74b1412791cf94af2ad570eb645ee19f7b9db17))
|
||||
* **gitee:** branches, labels, contributors, refactor(RouterScreen) ([#153](https://github.com/git-touch/git-touch/issues/153)) ([f723eef](https://github.com/git-touch/git-touch/commit/f723eef83af655f383f4da01c41735608777ffec))
|
||||
* **gitee:** comment actions (issue/PR) ([#150](https://github.com/git-touch/git-touch/issues/150)) ([e9454c3](https://github.com/git-touch/git-touch/commit/e9454c3dce9137931856da2775347578b45212f3))
|
||||
* **gitee:** issues, issue, pullRequests screens ([#144](https://github.com/git-touch/git-touch/issues/144)) ([1ac27f4](https://github.com/git-touch/git-touch/commit/1ac27f4853dfe8a8c9aa801bcffac57c7fce2c72))
|
||||
* **gitee:** search screen ([#146](https://github.com/git-touch/git-touch/issues/146)) ([8415a67](https://github.com/git-touch/git-touch/commit/8415a677c0425a5130b6c409a69139c98103b231))
|
||||
* **gitee:** updates ([#148](https://github.com/git-touch/git-touch/issues/148)) ([92bcdaa](https://github.com/git-touch/git-touch/commit/92bcdaa4b0924dfff3fb1b50886d510df93b9fbf))
|
||||
* add generated runner for Linux ([#134](https://github.com/git-touch/git-touch/issues/134)) ([f152c9a](https://github.com/git-touch/git-touch/commit/f152c9afdc2d27d6f3559470370cde649e0c33cc))
|
||||
* localization ([#137](https://github.com/git-touch/git-touch/issues/137)) ([0a1da29](https://github.com/git-touch/git-touch/commit/0a1da29c3eac6aa1785f7722f8da376281bb9865)), closes [#119](https://github.com/git-touch/git-touch/issues/119)
|
||||
|
||||
|
||||
|
||||
## [1.10.1](https://github.com/git-touch/git-touch/compare/v1.10.0...v1.10.1) (2020-12-13)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* android markdown webview render ([fb3ed14](https://github.com/git-touch/git-touch/commit/fb3ed14b4f9ed2752f96e119bd59ee783bdb5f68)), closes [#123](https://github.com/git-touch/git-touch/issues/123)
|
||||
* remove in-app review ([c6a8b42](https://github.com/git-touch/git-touch/commit/c6a8b42ef1c95f57d2e9439987f4546a6ea3f7c7)), closes [#129](https://github.com/git-touch/git-touch/issues/129)
|
||||
* update android launch image ([378d406](https://github.com/git-touch/git-touch/commit/378d406d379487860649bcad0ff818246ac1b4c1)), closes [#128](https://github.com/git-touch/git-touch/issues/128)
|
||||
|
||||
|
||||
|
||||
# [1.10.0](https://github.com/git-touch/git-touch/compare/v1.9.0...v1.10.0) (2020-12-12)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* launch image icon size ([15fe6db](https://github.com/git-touch/git-touch/commit/15fe6dbdb648b254e39cefbaa7f87c1787e38062))
|
||||
* **github:** trending api encoding ([9dd02e0](https://github.com/git-touch/git-touch/commit/9dd02e081672b0acc6619bff0195ba013f52c6c4)), closes [#120](https://github.com/git-touch/git-touch/issues/120)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* macos integration ([e41445c](https://github.com/git-touch/git-touch/commit/e41445cc8c4d7a40e78f9a9886d6e6113a697cd9))
|
||||
* request in-app review ([08511fb](https://github.com/git-touch/git-touch/commit/08511fb8fb854af0817eae9814e16f23c67183e1)), closes [#127](https://github.com/git-touch/git-touch/issues/127)
|
||||
* tweak dark mode contribution color ([6036849](https://github.com/git-touch/git-touch/commit/6036849e9b7a3caec51405a6cf2ece96803d64c0))
|
||||
* web deployment ([72d4d2d](https://github.com/git-touch/git-touch/commit/72d4d2d2b90edd56edfb910d95072bdc36f0dded))
|
||||
|
||||
|
||||
|
||||
# [1.9.0](https://github.com/git-touch/git-touch/compare/v1.8.0...v1.9.0) (2020-11-08)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **github:** actor link ([ee03b52](https://github.com/git-touch/git-touch/commit/ee03b52461591ad38711b2e2a31e501c4204abb4))
|
||||
* markdown webview dark mode ([979e913](https://github.com/git-touch/git-touch/commit/979e91378b2488f5db82b7e4b1bb833fcb340892))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **bitbucket:** clarify app password ([53897f6](https://github.com/git-touch/git-touch/commit/53897f6fb32633659b3a2d4b46b1b688e1af556f)), closes [#125](https://github.com/git-touch/git-touch/issues/125)
|
||||
* add markdown render engine setting ([5795413](https://github.com/git-touch/git-touch/commit/5795413f25d40febfc9bbe3d699c61f7464fac50)), closes [#124](https://github.com/git-touch/git-touch/issues/124)
|
||||
|
||||
|
||||
|
||||
# [1.8.0](https://github.com/git-touch/git-touch/compare/v1.7.0...v1.8.0) (2020-11-01)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **github:** contribution heatmap ([895f479](https://github.com/git-touch/git-touch/commit/895f4792d648d433b0a75b58a71cac59064307fb)), closes [#122](https://github.com/git-touch/git-touch/issues/122)
|
||||
* avoid hex color parse error ([5f45a54](https://github.com/git-touch/git-touch/commit/5f45a54f95e5386523f33f08a8f7d648e4120ada))
|
||||
* handle navigation in webview ([d940f3b](https://github.com/git-touch/git-touch/commit/d940f3b3e9a7d6e9f25b23064841698244925f8a))
|
||||
* **gitee:** platform type saved ([5534f96](https://github.com/git-touch/git-touch/commit/5534f96f8abbffd5cf0aba057ce00dea801f2345))
|
||||
* hide avatar of commit item if not exist ([d37a5c1](https://github.com/git-touch/git-touch/commit/d37a5c1981bb5a3b117b79128f2bfa1b61db2224))
|
||||
* **github:** head ref name ([1d1804f](https://github.com/git-touch/git-touch/commit/1d1804fa86f2e8eb572c478bd4abbd33cdffc41c)), closes [#116](https://github.com/git-touch/git-touch/issues/116)
|
||||
* **gitlab:** user and group link ([02e8d66](https://github.com/git-touch/git-touch/commit/02e8d66ae2d9271b50ad54f682703f56bb582c26)), closes [#115](https://github.com/git-touch/git-touch/issues/115)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **gitee:** add blob screen ([2bdfb3d](https://github.com/git-touch/git-touch/commit/2bdfb3dfe1295b2a40b8090f5902a7801144b042))
|
||||
* **gitee:** add token login step ([f480dc0](https://github.com/git-touch/git-touch/commit/f480dc048e8a7a6d1ec057009e19b0cf0389ca9c))
|
||||
* **gitee:** add tree screen ([6870aa6](https://github.com/git-touch/git-touch/commit/6870aa6ff1d3d42e9f8f3c482b4bad6c55b70fea))
|
||||
* **gitee:** commits screen ([d9ca01b](https://github.com/git-touch/git-touch/commit/d9ca01b99d515eb7815ba17b610714e6f25f5b58))
|
||||
* **gitee:** empty search screen ([db03560](https://github.com/git-touch/git-touch/commit/db035601de266637dd3641d2007dd24b46184887))
|
||||
* **gitee:** repo screen ([66ab665](https://github.com/git-touch/git-touch/commit/66ab665f31d41ea9c48336668787b7e828efefee))
|
||||
* **gitee:** repos screen ([2e1d869](https://github.com/git-touch/git-touch/commit/2e1d869aa18fd5e2adc890203c3c0519b94ed31a))
|
||||
* **gitee:** user screen ([b5a1948](https://github.com/git-touch/git-touch/commit/b5a19486dd9f7d637cad11dce4516ec5d91b1838))
|
||||
* **gitee:** users screen ([a5d64fd](https://github.com/git-touch/git-touch/commit/a5d64fdb866336f823caad1252af00bb0f7b58ab))
|
||||
* replace io library for web adaptation ([a4f1daa](https://github.com/git-touch/git-touch/commit/a4f1daab31b3b0b7e39ade0f07003f77ba9d5667))
|
||||
|
||||
|
||||
|
||||
# [1.7.0](https://github.com/git-touch/git-touch/compare/v1.6.0...v1.7.0) (2020-10-08)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* drop svg support to avoid readme screen frozen ([968019b](https://github.com/git-touch/git-touch/commit/968019b932188b1714ba6eae84198462b9ddcfbc)), closes [#112](https://github.com/git-touch/git-touch/issues/112)
|
||||
* use container to fix expansion of tab ([0ab0564](https://github.com/git-touch/git-touch/commit/0ab05646f083aeac177a7ffca8c52d19d783549d))
|
||||
* user item text overflow ([168dcd1](https://github.com/git-touch/git-touch/commit/168dcd1d2ea7605dddd8a6308935ac75d9773bc1))
|
||||
* **github:** cross reference event ([0d722f0](https://github.com/git-touch/git-touch/commit/0d722f062e714de105d228a6ea2683b36d6e616b))
|
||||
* **github:** issue/pr timeline assign event ([85d5cad](https://github.com/git-touch/git-touch/commit/85d5cadbeb8cfcc82ffd9a08053e9814f4c049e3)), closes [#113](https://github.com/git-touch/git-touch/issues/113)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* add button to quickly switch accounts ([#36](https://github.com/git-touch/git-touch/issues/36)) ([62b02ed](https://github.com/git-touch/git-touch/commit/62b02ed5040b1b6c7aafdbfd6fcd19ca79fd26d3))
|
||||
* add name to user list item ([70b2dd4](https://github.com/git-touch/git-touch/commit/70b2dd4bb049416be9ddee6793464840b993dfae))
|
||||
|
||||
|
||||
|
||||
# [1.6.0](https://github.com/git-touch/git-touch/compare/v1.5.1...v1.6.0) (2020-10-06)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **github:** readme loading in repo screen ([ff0104e](https://github.com/git-touch/git-touch/commit/ff0104e9bbb58c30bf4aff1d6f7851382589d0be))
|
||||
* **github:** update trending api ([36de5ec](https://github.com/git-touch/git-touch/commit/36de5ec8a207175ebbe112274d840efe2a2d9142)), closes [#110](https://github.com/git-touch/git-touch/issues/110)
|
||||
* markdown code background color ([9af1900](https://github.com/git-touch/git-touch/commit/9af190000b414f35b96dc8a77f71cb9ad409ff3e)), closes [#108](https://github.com/git-touch/git-touch/issues/108)
|
||||
* **gitea:** keep original query params as is ([aa62524](https://github.com/git-touch/git-touch/commit/aa62524c23d799b572bc54fd0778175b91baa4f9))
|
||||
* **gitea:** pagination has more and cursor ([d47ea5a](https://github.com/git-touch/git-touch/commit/d47ea5a092cbc41eaa0920affae2dc5267f436df))
|
||||
* **github:** empty repo (no ref) ([3002c07](https://github.com/git-touch/git-touch/commit/3002c0736772790d204b845e1540573764271346)), closes [#99](https://github.com/git-touch/git-touch/issues/99)
|
||||
* **github:** timeline item avatar link ([4ae8f52](https://github.com/git-touch/git-touch/commit/4ae8f52991989c05bf56e8b464c4ef9fc20d74ab)), closes [#107](https://github.com/git-touch/git-touch/issues/107)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* add status for github and gitlab ([2b68d95](https://github.com/git-touch/git-touch/commit/2b68d95a4af67c62fd8d201b690508f57f972e58))
|
||||
* avoid reloading widget on material bottom tab switch ([11d61e1](https://github.com/git-touch/git-touch/commit/11d61e163fafbf5d222a5dd4489cd5c2c2e999b9)), closes [#42](https://github.com/git-touch/git-touch/issues/42)
|
||||
* **gitea:** add orgs in user screen ([99b2b79](https://github.com/git-touch/git-touch/commit/99b2b795d12c9373b7ca7784d8cb89dfee4537bd))
|
||||
* **gitea:** add repo count in org screen ([f935153](https://github.com/git-touch/git-touch/commit/f9351533c7029ce38290acda2f8509e6870a8701))
|
||||
* **gitea:** add repo count in user screen ([2a1b9fe](https://github.com/git-touch/git-touch/commit/2a1b9fe08dc13b139286d79b0082f68d491371ab))
|
||||
* **gitea:** add status screen ([e3a4b2c](https://github.com/git-touch/git-touch/commit/e3a4b2c0917eb2e0d880ff681d36c7deaa0758ca))
|
||||
|
||||
|
||||
|
||||
## [1.5.1](https://github.com/git-touch/git-touch/compare/v1.5.0...v1.5.1) (2020-10-05)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **gt:** me screen login ([890c44c](https://github.com/git-touch/git-touch/commit/890c44c4c558649dcbade4a8c7322688a9a0d7ec))
|
||||
|
||||
|
||||
|
||||
# [1.5.0](https://github.com/git-touch/git-touch/compare/v1.4.0...v1.5.0) (2020-10-05)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* entry item count ([7d3e916](https://github.com/git-touch/git-touch/commit/7d3e916af7abc78bcf9a30abc27c606c36a9ce74))
|
||||
* **gh:** contributions data ([c950559](https://github.com/git-touch/git-touch/commit/c95055904392a9e3b89d4b6ce0bd7b457c1aa6dd))
|
||||
* **gh:** orgs screen description null ([2d96101](https://github.com/git-touch/git-touch/commit/2d9610170b9875a54c047ae5350bab30b49b42eb))
|
||||
* **gh:** text with at notation ([2248415](https://github.com/git-touch/git-touch/commit/2248415574d1499de32be116c1eed5a933f490af))
|
||||
* align contribution graph center for ipad ([#41](https://github.com/git-touch/git-touch/issues/41)) ([b3f56ad](https://github.com/git-touch/git-touch/commit/b3f56adbe988093706be48f1a4207f72eebb559e))
|
||||
* api change user to accountID ([#85](https://github.com/git-touch/git-touch/issues/85)) ([8a1180d](https://github.com/git-touch/git-touch/commit/8a1180dae8b915f8fcd3c3f02e5b74a0e5eeff65)), closes [#79](https://github.com/git-touch/git-touch/issues/79)
|
||||
* back button android, return home on tap ([#59](https://github.com/git-touch/git-touch/issues/59)) ([98f102f](https://github.com/git-touch/git-touch/commit/98f102faec38f318d38a429471a016d99e540a1b))
|
||||
* broken links ([8c4a9ee](https://github.com/git-touch/git-touch/commit/8c4a9ee3a12f90f92d991547989c7b030cde00c6))
|
||||
* commit author color ([57f2ab7](https://github.com/git-touch/git-touch/commit/57f2ab7967efb0b6d491260737884ace264ad4cc))
|
||||
* downgrade provider for compatibility ([74a175f](https://github.com/git-touch/git-touch/commit/74a175f384ef50f3b25732c6ca7636a483cf722b))
|
||||
* lint problems ([1269b66](https://github.com/git-touch/git-touch/commit/1269b66eb41930db286f6c430c0518cd1cd45ba5))
|
||||
* **gh:** subscribe permissions ([8076481](https://github.com/git-touch/git-touch/commit/80764817caae85f0143397645e91e4a62c1c2856)), closes [#47](https://github.com/git-touch/git-touch/issues/47)
|
||||
* **gh:** trending user has no repo ([a3619ba](https://github.com/git-touch/git-touch/commit/a3619ba340cfcd356906eec58ad7929a4d56e4e4))
|
||||
* commit comment event render error ([#93](https://github.com/git-touch/git-touch/issues/93)) ([db62424](https://github.com/git-touch/git-touch/commit/db624247ec0cd7d243ad4f24e3a4179b33754ecd))
|
||||
* error using same token ([#83](https://github.com/git-touch/git-touch/issues/83)) ([e173713](https://github.com/git-touch/git-touch/commit/e17371386143824f2c108942d6fb09102f4616d9)), closes [#82](https://github.com/git-touch/git-touch/issues/82)
|
||||
* event payload ref in create,delete events ([#71](https://github.com/git-touch/git-touch/issues/71)) ([561970a](https://github.com/git-touch/git-touch/commit/561970ab59b2cdb537461bbde010177996db6e2e))
|
||||
* namespace conflicts ([2ef1c0b](https://github.com/git-touch/git-touch/commit/2ef1c0b9829865961f3bcb8d6268a800396ca890))
|
||||
* transparent status bar ([#73](https://github.com/git-touch/git-touch/issues/73)) ([0063e99](https://github.com/git-touch/git-touch/commit/0063e99bbcfef81fbe0e0388289ceb40afeab40d))
|
||||
* yellow underline ([#65](https://github.com/git-touch/git-touch/issues/65)) ([d6a321d](https://github.com/git-touch/git-touch/commit/d6a321d6ca1a1958e878b9b04c4f41bf91e209a9))
|
||||
* **gh:** change branch on close ([ce4f7a1](https://github.com/git-touch/git-touch/commit/ce4f7a180995641c5eee0a0814d7f172ae175dfb))
|
||||
* **gh:** org repos language color ([c2be166](https://github.com/git-touch/git-touch/commit/c2be166a055d2547ebf87bd71008ad6a1acdfe7e))
|
||||
* **gh:** user description overflow ([a5c1d0f](https://github.com/git-touch/git-touch/commit/a5c1d0f5baee6d1c74ffafdb89a5772b340b89a1))
|
||||
* **gl:** handle statistics null ([a198430](https://github.com/git-touch/git-touch/commit/a1984309a9e11b3a1d78bb39bb2de27049634aec))
|
||||
* **gl:** project commits ([60904d7](https://github.com/git-touch/git-touch/commit/60904d763de5e728e70192ffcb72e01409d38edb))
|
||||
* replace transition ([b134bd8](https://github.com/git-touch/git-touch/commit/b134bd87d27333073873584f4dfd4dfd9f8e991a))
|
||||
* **gt:** organizations pagination ([8ee57fd](https://github.com/git-touch/git-touch/commit/8ee57fdc35613ac9c31f5ba710e01cbf28e236d3))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **gh:** add events screen ([5101b25](https://github.com/git-touch/git-touch/commit/5101b2554f0f8a6d5e5a1bfd0a6ff099eef619d4))
|
||||
* **gt:** add contribution heatmap ([d2bb3c4](https://github.com/git-touch/git-touch/commit/d2bb3c4a5ce3e0f1463e59d011a0bb5d295ad446)), closes [#104](https://github.com/git-touch/git-touch/issues/104)
|
||||
* **gt:** followers and following ([3f324b4](https://github.com/git-touch/git-touch/commit/3f324b43fd160de9afae95139e50c7fdd18277be))
|
||||
* **gt:** org members screen ([a87a504](https://github.com/git-touch/git-touch/commit/a87a504cea589d11e96863f7562cff2367e532b5))
|
||||
* **gt:** org repos ([1da8076](https://github.com/git-touch/git-touch/commit/1da807632bbb08c097210a9123958647d3f045df))
|
||||
* **gt:** stargazers, watchers and forks ([61ad3eb](https://github.com/git-touch/git-touch/commit/61ad3ebb164475ab89e5babc4adad14e3a052da7))
|
||||
* **gt:** user repos and stars ([25633b4](https://github.com/git-touch/git-touch/commit/25633b44d98a28233b69298ef043ed849bdeeb01))
|
||||
* add diff view ([aa52263](https://github.com/git-touch/git-touch/commit/aa52263fc04cd2536f8852036a794072b380a49c))
|
||||
* add material app zoom transition ([#98](https://github.com/git-touch/git-touch/issues/98)) ([34e6af2](https://github.com/git-touch/git-touch/commit/34e6af2dab954534999050b99c4f4cf177d6584a)), closes [#94](https://github.com/git-touch/git-touch/issues/94)
|
||||
* bitbucket issues, prs screens ([#91](https://github.com/git-touch/git-touch/issues/91)) ([7a97bc2](https://github.com/git-touch/git-touch/commit/7a97bc22abdef9afaf6d27bfb6fabf5408d0afec))
|
||||
* contributor screen ([#64](https://github.com/git-touch/git-touch/issues/64)) ([be30bcb](https://github.com/git-touch/git-touch/commit/be30bcb7d8ea29ca96c30b5d24e2ce87d8caad2e)), closes [#53](https://github.com/git-touch/git-touch/issues/53)
|
||||
* files screen ([#75](https://github.com/git-touch/git-touch/issues/75)) ([0749a69](https://github.com/git-touch/git-touch/commit/0749a699862bd7030bddf48d6c717b2691bbaa5f)), closes [#74](https://github.com/git-touch/git-touch/issues/74)
|
||||
* gists screen ([#80](https://github.com/git-touch/git-touch/issues/80)) ([094ad4b](https://github.com/git-touch/git-touch/commit/094ad4b1bb25ad21c1bf9d1c2ddce2aade73aa0c)), closes [#66](https://github.com/git-touch/git-touch/issues/66)
|
||||
* github compare screen ([#86](https://github.com/git-touch/git-touch/issues/86)) ([8f5dafd](https://github.com/git-touch/git-touch/commit/8f5dafd2d04c8de7a5ce1b813b73c67fb09913f1))
|
||||
* gitlab search screen ([#81](https://github.com/git-touch/git-touch/issues/81)) ([bc3a204](https://github.com/git-touch/git-touch/commit/bc3a204c2bddbc1aaee35e3540c70595077d6f3c))
|
||||
* handle svg images ([8a490ab](https://github.com/git-touch/git-touch/commit/8a490abb1050797329f455ec0bd1115d0ba88db8))
|
||||
* use cupertino loading again ([8258232](https://github.com/git-touch/git-touch/commit/8258232d48c7981fa03209e4c45f764454d6fb41))
|
||||
* user organizations, fix: create,delete event ([#72](https://github.com/git-touch/git-touch/issues/72)) ([bf5ed23](https://github.com/git-touch/git-touch/commit/bf5ed239716ae9fd29bcae24ecc3741771401f99)), closes [#58](https://github.com/git-touch/git-touch/issues/58)
|
||||
* **gl:** add starrers screen ([f8f436a](https://github.com/git-touch/git-touch/commit/f8f436a38280815e6e3b47a41f45ce645f10f885)), closes [#48](https://github.com/git-touch/git-touch/issues/48)
|
||||
* **gl:** commit screen ([4ea30d0](https://github.com/git-touch/git-touch/commit/4ea30d0132a2d54082aeb70f8ecf78c1354495fe))
|
||||
|
||||
|
||||
|
||||
# [1.4.0](https://github.com/git-touch/git-touch/compare/v1.3.0...v1.4.0) (2020-02-09)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* hide accounts info in production ([1716714](https://github.com/git-touch/git-touch/commit/171671498165524687b52c0eb93c4ad7fc1502b9))
|
||||
* **gh:** reaction active color ([97a524e](https://github.com/git-touch/git-touch/commit/97a524ecf9a956f173cf0fafd1e0018a24757eab))
|
||||
* code view tab size ([cbb3310](https://github.com/git-touch/git-touch/commit/cbb33108906791950fb74bebab85cbd9182726dc)), closes [#24](https://github.com/git-touch/git-touch/issues/24)
|
||||
* **bb:** commit url ([29902bb](https://github.com/git-touch/git-touch/commit/29902bb711680141423d2272f50ccf1fafd2a538))
|
||||
* avatar size ([12bb22b](https://github.com/git-touch/git-touch/commit/12bb22bda9f27e90415545a6d8d28046d395eca0))
|
||||
* **bb:** download url ([f9fa142](https://github.com/git-touch/git-touch/commit/f9fa142702162c17baee083effa876eb5519ed6e))
|
||||
* **bb:** username get ([376b872](https://github.com/git-touch/git-touch/commit/376b8724a48be12a913a66f3f1561a863024704f))
|
||||
* **bb:** utf8 decode text ([8f9ed54](https://github.com/git-touch/git-touch/commit/8f9ed5469d60806828d7e9daa0d60230cc6216e3))
|
||||
* avatar url null ([76a2f4b](https://github.com/git-touch/git-touch/commit/76a2f4b960eb9adfce597ac864b9d4c645a473b9))
|
||||
* **gitlab:** use default branch instead of master ([79fe174](https://github.com/git-touch/git-touch/commit/79fe174b1052dbeac5f4053bc6f4d44e9f5a2842)), closes [#28](https://github.com/git-touch/git-touch/issues/28)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **bb:** commits screen ([f856a1b](https://github.com/git-touch/git-touch/commit/f856a1bfeee99b15a7d1e106d0583b39916ff92f))
|
||||
* **bb:** explore screen ([6d35703](https://github.com/git-touch/git-touch/commit/6d3570355432ac535034ee9607d448cc5d40a8b8))
|
||||
* **bb:** object screen ([a9f9b95](https://github.com/git-touch/git-touch/commit/a9f9b957936978e702e8ded8f5ad85197c5f577b))
|
||||
* **bb:** repo screen ([7f2649c](https://github.com/git-touch/git-touch/commit/7f2649c691c662d11fbdbd16831f0d1c36890f34))
|
||||
* **bb:** team screen ([dfb74ce](https://github.com/git-touch/git-touch/commit/dfb74ce43dc09266383c9fe5eddf975ad848f5e8))
|
||||
* **bb:** teams screen ([3542c36](https://github.com/git-touch/git-touch/commit/3542c36dcce758e98dbc8bc8b667a2e8a0734e64))
|
||||
* **bb:** user screen ([830bcea](https://github.com/git-touch/git-touch/commit/830bceaa367a0f64d89204d7e183b8fb54fc8553))
|
||||
* **bitbucket:** app password login ([53ecb32](https://github.com/git-touch/git-touch/commit/53ecb3242ff3879cd3c5697194ede8a506a76abe))
|
||||
* **gh:** add watch state and action ([940ea5c](https://github.com/git-touch/git-touch/commit/940ea5c1bfc62da1b1b81711d6561c68ea466099))
|
||||
* **gh:** org repos screen ([a105eb6](https://github.com/git-touch/git-touch/commit/a105eb6e5736ccd5962cabd0e35da87b6d9d4991)), closes [#25](https://github.com/git-touch/git-touch/issues/25)
|
||||
|
||||
|
||||
|
||||
# [1.3.0](https://github.com/git-touch/git-touch/compare/v1.2.0...v1.3.0) (2020-02-01)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* cupertino picker text color ([7c7dc32](https://github.com/git-touch/git-touch/commit/7c7dc32db6345a1d1260a24b3772479a13707d26)), closes [#22](https://github.com/git-touch/git-touch/issues/22)
|
||||
* material dark mode text ([a4284d0](https://github.com/git-touch/git-touch/commit/a4284d00fb3977b87a77f1cea8d3fefa4b8e87ce))
|
||||
* reload app on account switch ([084aec4](https://github.com/git-touch/git-touch/commit/084aec4453a9951f6478bfa7a9dca9d56d1140bf))
|
||||
* repo header avatar link ([3cde09b](https://github.com/git-touch/git-touch/commit/3cde09bf237fdb25fa0f9cd06ea411583b816bc9))
|
||||
* **github:** binary files ([89c311c](https://github.com/git-touch/git-touch/commit/89c311c410dab58cbd5442bb4b08e446f6871045)), closes [#21](https://github.com/git-touch/git-touch/issues/21)
|
||||
* **github:** encode url ([16925f8](https://github.com/git-touch/git-touch/commit/16925f8e1a548ad1017e9b75619716f9dcb3fdbc))
|
||||
* **github:** pull screen router ([c3cf25b](https://github.com/git-touch/git-touch/commit/c3cf25bcf35db750104c0de771dfd42f1d5a8994))
|
||||
* **github:** throw on error ([fe8bf0a](https://github.com/git-touch/git-touch/commit/fe8bf0a800c0f7b62bc88b53f1313f923b3f139a))
|
||||
* query params already decoded in fluro ([a425902](https://github.com/git-touch/git-touch/commit/a425902756a075468610df29f38a49524ae01374)), closes [#23](https://github.com/git-touch/git-touch/issues/23)
|
||||
* **gitlab:** api pagination ([9aec397](https://github.com/git-touch/git-touch/commit/9aec397a602b895724eddad244f88f1b64f8d6b5))
|
||||
* **gitlab:** binary blob view ([d17b6a0](https://github.com/git-touch/git-touch/commit/d17b6a02a16c92ca3a78da9b955bc2160be533ac))
|
||||
* **gitlab:** error catch ([f3e5988](https://github.com/git-touch/git-touch/commit/f3e5988413771bf7dad310f340a9b88b981dbc33))
|
||||
* **gitlab:** issue and user ([92a33e8](https://github.com/git-touch/git-touch/commit/92a33e8fb81455c9f3086402dd58768fe1351fab))
|
||||
* **gitlab:** issue router ([e2e0f6b](https://github.com/git-touch/git-touch/commit/e2e0f6ba2527cd0348844774b5cd223d12954122))
|
||||
* avatar link ([9121316](https://github.com/git-touch/git-touch/commit/9121316acd3ba9b43acafe87b851b46842e0e512))
|
||||
* limit commit message to one line ([5f502ae](https://github.com/git-touch/git-touch/commit/5f502ae29e606128c49a0d12997a31a07dfeb475))
|
||||
* refresh scaffold catch error ([f5ad1ac](https://github.com/git-touch/git-touch/commit/f5ad1acd25d8f9bc74f50dc1827abf4deae723f7))
|
||||
* repo item link ([bc436d2](https://github.com/git-touch/git-touch/commit/bc436d2f9e41978f194d55c322c54cf2f9a3e807))
|
||||
* **gitlab:** mr data ([1d90a39](https://github.com/git-touch/git-touch/commit/1d90a3959ce989877e597f97d8db4ada794287a7))
|
||||
* **gitlab:** project router ([c1df100](https://github.com/git-touch/git-touch/commit/c1df10025378c07d60d1e44c8cbcb0d9e36abd2c))
|
||||
* **gitlab:** syntax highlight in dark mode ([df09ee4](https://github.com/git-touch/git-touch/commit/df09ee4c177f36022330acb9845b02796c3db9b6))
|
||||
* **gitlab:** tree and blob router ([00d6778](https://github.com/git-touch/git-touch/commit/00d67784af5186deb9998b2f64e3a19fabd25787))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* **gitea:** org screen ([f0e447f](https://github.com/git-touch/git-touch/commit/f0e447fd842f34e1cc316a5a089c14a16681a290))
|
||||
* **gitea:** orgs screen ([336ff49](https://github.com/git-touch/git-touch/commit/336ff4960e7bf6a5b2796ecd7fa2592459db7755))
|
||||
* remove account ([5aa7483](https://github.com/git-touch/git-touch/commit/5aa7483c906e67777d233554f17cd5e6e4544d97))
|
||||
* **gitea:** blob screen ([9d6985c](https://github.com/git-touch/git-touch/commit/9d6985c3913237d826c6d5fb9ac41abbabbbc13c))
|
||||
* **gitea:** commits screen ([7d1065e](https://github.com/git-touch/git-touch/commit/7d1065eaaeead8fb12bf4a025514a784d0f03e5c))
|
||||
* **gitea:** issue and pr screen ([a7af4cd](https://github.com/git-touch/git-touch/commit/a7af4cdcd01aa1a3642e87cf84a6b7e5675c3e64))
|
||||
* **gitea:** main screen ([76c6948](https://github.com/git-touch/git-touch/commit/76c6948b05dd7d361b59cc031da8bc3692b140cd))
|
||||
* **gitea:** repo screen ([1aa7f0d](https://github.com/git-touch/git-touch/commit/1aa7f0d130ae0edee5ab3ce694ed776cf2c9c426))
|
||||
* **gitea:** user screen ([7039a89](https://github.com/git-touch/git-touch/commit/7039a8905f1cde2eff5348b4c85c58863db5ae88))
|
||||
* **gitlab:** commits screen ([5d453cc](https://github.com/git-touch/git-touch/commit/5d453ccbd5607c83da84ea8b78b7074ae54bdcef))
|
||||
* **gitlab:** explore screen ([62c4c38](https://github.com/git-touch/git-touch/commit/62c4c380f882c62b125512561661657b2d865105))
|
||||
* **gitlab:** group screen ([d7d05bc](https://github.com/git-touch/git-touch/commit/d7d05bc72ba374ecb0737341738969ac0f7a1bcd))
|
||||
* **gitlab:** groups screen ([1c35b0b](https://github.com/git-touch/git-touch/commit/1c35b0b4cd29aa779599f0437915136d0064866c))
|
||||
* **gitlab:** issues screen ([2c9951b](https://github.com/git-touch/git-touch/commit/2c9951be7bbf7d8c4653fa8d555bdbcd0b646908))
|
||||
* **gitlab:** members screen ([d1d2e9e](https://github.com/git-touch/git-touch/commit/d1d2e9e0fbe60d6ba5894cc26fac141a3ec11562))
|
||||
* **gitlab:** project and group members ([b56111d](https://github.com/git-touch/git-touch/commit/b56111db6ffa3983562379d169b16c42920535b8))
|
||||
* object tree item size ([39c360f](https://github.com/git-touch/git-touch/commit/39c360f28118991a68ea629e41377fc6c19046de))
|
||||
* **gitlab:** mrs screen ([4bf049a](https://github.com/git-touch/git-touch/commit/4bf049a2e4a71695932cb304acd5d3d22e612821))
|
||||
* **gitlab:** project badges ([a021f75](https://github.com/git-touch/git-touch/commit/a021f755f343f4bae823a254c98f19bfa8c0435a))
|
||||
* **gitlab:** repo size and commits ([248212c](https://github.com/git-touch/git-touch/commit/248212c95c702432b392a971173a020649a8a761))
|
||||
* **gitlab:** settings entry ([65e45f6](https://github.com/git-touch/git-touch/commit/65e45f6b7f4fb097999764e2d7f352a8eae95316))
|
||||
|
||||
|
||||
|
||||
# [1.2.0](https://github.com/git-touch/git-touch/compare/v1.1.0...v1.2.0) (2020-01-28)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* account switch ([7bc11e0](https://github.com/git-touch/git-touch/commit/7bc11e0c84dedc814ef5148ac079e54b4bf3803d))
|
||||
* add typename for correctly resolving ([991d563](https://github.com/git-touch/git-touch/commit/991d563b2995165fc2324485576c1f14f32b826f))
|
||||
* after cursor ([172faf5](https://github.com/git-touch/git-touch/commit/172faf53f495584ba6c5d9b9857de2186d24862f))
|
||||
* analysis problems ([7c665e7](https://github.com/git-touch/git-touch/commit/7c665e7f1ab903c16b913011a8926368608c05de))
|
||||
* avatar click ([cd38d96](https://github.com/git-touch/git-touch/commit/cd38d96a91d2a2c835adff1d253f90437bbc54fd))
|
||||
* branch switch ([867f617](https://github.com/git-touch/git-touch/commit/867f617276ccdc0529544b155b892120b4bcb3b7))
|
||||
* check if issue or pull request ([980bbf9](https://github.com/git-touch/git-touch/commit/980bbf9f30f50c76e8687886e2c582d495960928))
|
||||
* code theme settings ([a9265c3](https://github.com/git-touch/git-touch/commit/a9265c3367ec6335834d57a636f0ed14c291557e))
|
||||
* commit history count ([50cfd48](https://github.com/git-touch/git-touch/commit/50cfd48e5107223c67e7b3af9194fd8f4ae2100b))
|
||||
* commit status ([bd9703e](https://github.com/git-touch/git-touch/commit/bd9703e44344746cb80e35ffe2bd68cbc80618b0))
|
||||
* contribution background ([19faf20](https://github.com/git-touch/git-touch/commit/19faf20fb126d5a464cd83449943608962ebf37f))
|
||||
* cupertino button padding ([b1181ff](https://github.com/git-touch/git-touch/commit/b1181ffc6ffe842be86c4b0e12942e72ae4a1e26))
|
||||
* dark mode for notification screen ([743d359](https://github.com/git-touch/git-touch/commit/743d359665a6949d703332fb9dd51cde17ba7e11))
|
||||
* do not wait tap callback ([4b0dae9](https://github.com/git-touch/git-touch/commit/4b0dae95911fe681f9339adc08c72ceb09b22a12))
|
||||
* empty query error ([1ef1a51](https://github.com/git-touch/git-touch/commit/1ef1a5182e4e13369b8f64b66fa031ec2a2722b4))
|
||||
* follow system brightness ([fccb79b](https://github.com/git-touch/git-touch/commit/fccb79b2cc1ab58328fcd475a0772eddb5fce2be))
|
||||
* forks url ([4f65321](https://github.com/git-touch/git-touch/commit/4f65321ef550b66924584105d7b0ed8b3850dd3f))
|
||||
* generic type ([103f05b](https://github.com/git-touch/git-touch/commit/103f05b01ce3eb0ac81af8fa2f8eb0760a976233))
|
||||
* import path ([b91db22](https://github.com/git-touch/git-touch/commit/b91db22eb4c4692778f37e25d832487842283e92))
|
||||
* issue add router ([857e49f](https://github.com/git-touch/git-touch/commit/857e49f220ad400efaadfbd9f7507afe17743598))
|
||||
* link url null ([d2ae236](https://github.com/git-touch/git-touch/commit/d2ae2363568b2440d3077c6b76f4eaec07c0a585))
|
||||
* login screen theme ([0b334f3](https://github.com/git-touch/git-touch/commit/0b334f341ef5935cfe0e2261bfa69fec97820fdd))
|
||||
* markdown dark mode ([3be1a92](https://github.com/git-touch/git-touch/commit/3be1a92ea2cb959d89e755dcb80a92f43e91bcae))
|
||||
* markdown style ([9cac22e](https://github.com/git-touch/git-touch/commit/9cac22e61639e81c6dc7ea31a0821dbfb826e879))
|
||||
* material dark mode ([80ab94d](https://github.com/git-touch/git-touch/commit/80ab94df53d2b6cb1675a9114841983a815ec186))
|
||||
* material style ([91d7a93](https://github.com/git-touch/git-touch/commit/91d7a93575a78d2796bea41f555739c377b47603))
|
||||
* minor fixes ([da48561](https://github.com/git-touch/git-touch/commit/da48561b62516344ad96b2cf97b9038d1c3f8d57))
|
||||
* organization extract ([0c315c3](https://github.com/git-touch/git-touch/commit/0c315c354c355ddcb0ab9ed178d41bbd9f37aaa5))
|
||||
* organization members query ([3586ee5](https://github.com/git-touch/git-touch/commit/3586ee5230bab0ee36635d5a00055e2f818341e3))
|
||||
* path url encode ([7b688ef](https://github.com/git-touch/git-touch/commit/7b688efcb2e77ed118c6932b39b0c512967dcd92))
|
||||
* physical pixel border ([42f67c3](https://github.com/git-touch/git-touch/commit/42f67c3ed198e2d6338bcc9be448b148af4deb40))
|
||||
* pin json_serializable version to fix build error ([21093a6](https://github.com/git-touch/git-touch/commit/21093a6ab978db4344ac3988367d4bbe02534d0c))
|
||||
* pinnable item ([e989ad9](https://github.com/git-touch/git-touch/commit/e989ad9715e7fcb29b867263c261632166f18a79))
|
||||
* pull request comment ([76cfa7a](https://github.com/git-touch/git-touch/commit/76cfa7a7726749c4bbf6985119af0abfb3a88e76))
|
||||
* refresh only if branch changes ([9c0b0f6](https://github.com/git-touch/git-touch/commit/9c0b0f64c455101d5ce826a69e122a8429554990))
|
||||
* remove duplicated users ([4bc2319](https://github.com/git-touch/git-touch/commit/4bc2319ec66a1823858fd7be86875b8b8bea5ea2))
|
||||
* remove operation name ([6b095e8](https://github.com/git-touch/git-touch/commit/6b095e8a3bc34589a7eb7c2769bc1490fd41a9c4))
|
||||
* reset gql client on change ([7b78e66](https://github.com/git-touch/git-touch/commit/7b78e660cb17fc2cd6158675448b6bb7cff89b6d))
|
||||
* review event actor ([eadac28](https://github.com/git-touch/git-touch/commit/eadac28db7da997e9d609bccdd499d2092d54472))
|
||||
* sort files ([1055517](https://github.com/git-touch/git-touch/commit/1055517650ff84c2df14c630e01681c77deaeaa4))
|
||||
* table view icon style ([ffa3ef7](https://github.com/git-touch/git-touch/commit/ffa3ef79d9a2587108ca71dd5d92bfbcf84ea51b))
|
||||
* text overflow ([765bc23](https://github.com/git-touch/git-touch/commit/765bc23b5b6dcdee606b2e46d97a5c3542cc6062))
|
||||
* text overflow ([d40b877](https://github.com/git-touch/git-touch/commit/d40b87750432502421633f5c775f0aa58f190842))
|
||||
* theme select ([20ca296](https://github.com/git-touch/git-touch/commit/20ca29657bea09b9a240c1e1f8833e54ef5d5164))
|
||||
* totalcount ([0b743ff](https://github.com/git-touch/git-touch/commit/0b743ffddb1c5141cd3cad499b69ff86142ec0d4))
|
||||
* trending data compatibale ([a9787d3](https://github.com/git-touch/git-touch/commit/a9787d38a3645b28a9b92e983e302714d4dc1377))
|
||||
* trending user data ([396fe55](https://github.com/git-touch/git-touch/commit/396fe550c40375f9eb3d10f1ff58a11946670662))
|
||||
* user name color ([46ecf2f](https://github.com/git-touch/git-touch/commit/46ecf2ff4aa997db56432bdbb87d235b77f94e5b))
|
||||
* user screen tab null ([b32a0e7](https://github.com/git-touch/git-touch/commit/b32a0e77392dc95d1153fda5391d637398b6b11c))
|
||||
* x build ([91d94a5](https://github.com/git-touch/git-touch/commit/91d94a5180a575fcb4c96e284ba0fb66b72bbd53))
|
||||
* **gitlab:** encode path ([a8faf76](https://github.com/git-touch/git-touch/commit/a8faf7622768ce9d4e41d557a4a4a07e809fe75c))
|
||||
* **gitlab:** full path ([c694b99](https://github.com/git-touch/git-touch/commit/c694b99bc7628308643dddefb804deb42ae9afc3))
|
||||
* user screen login ([f2799ca](https://github.com/git-touch/git-touch/commit/f2799cacc4df9aef5b564cb5f92ee25b32cc77d1))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* about screen ([6441f24](https://github.com/git-touch/git-touch/commit/6441f24c1cee14cec373a54851d7c0e070c37dd7))
|
||||
* add artemis ([716924d](https://github.com/git-touch/git-touch/commit/716924d27d9ff263074b1dc8eb9ad9e7b5a7406b))
|
||||
* add gitlab todos and issue ([810e1eb](https://github.com/git-touch/git-touch/commit/810e1eb4def80bc5e6c10ff0de23691373966319))
|
||||
* add graphql types for user screen ([b11d6be](https://github.com/git-touch/git-touch/commit/b11d6be74b56266f333493c6eca07e7979717f7b))
|
||||
* add web assets ([bfc41cd](https://github.com/git-touch/git-touch/commit/bfc41cd79bec9f9bffecc358301c7b0072d6736a))
|
||||
* brightness toggle button ([a7a05ba](https://github.com/git-touch/git-touch/commit/a7a05bab884db8c91ac1af08ff5e22e4f58f29c4))
|
||||
* cupertino dark mode ([1b7578f](https://github.com/git-touch/git-touch/commit/1b7578f4b48918f22a51e4b1ef9c387b95b6115c))
|
||||
* dark contributions widget ([d4efab4](https://github.com/git-touch/git-touch/commit/d4efab4af2e0a3bd22890ce55e18a18a643ab5c5))
|
||||
* dart theme style tweak ([6a872fc](https://github.com/git-touch/git-touch/commit/6a872fc977d46c4149b4598eb36ae63e98f15709))
|
||||
* event item long press ([9cd38bc](https://github.com/git-touch/git-touch/commit/9cd38bc6403c1ba2316b3a6fbe174924a922c042))
|
||||
* follow button ([6a94d55](https://github.com/git-touch/git-touch/commit/6a94d552e1bf486dd31677d9053d64def7554d67))
|
||||
* follow system option ([baf3e43](https://github.com/git-touch/git-touch/commit/baf3e4304552ead1be262e4c47af125d9646e49b))
|
||||
* force pushed event ([9f1eb49](https://github.com/git-touch/git-touch/commit/9f1eb490890c8a24727bcd2559dc78759d3a6b40))
|
||||
* gitea api ([405cc03](https://github.com/git-touch/git-touch/commit/405cc03a30bb5494799fea694d2c3ea7e995596c))
|
||||
* gitlab domain ([05ff1e4](https://github.com/git-touch/git-touch/commit/05ff1e413b7bebdfd9bb27db6ac90b6e718b9a26))
|
||||
* gitlab login by token ([2b6d45c](https://github.com/git-touch/git-touch/commit/2b6d45c457b24570dfa554fc16b9509b64e49f2b))
|
||||
* gitlab screen routers ([6bff2b4](https://github.com/git-touch/git-touch/commit/6bff2b44b6050a043dc684e909981d7f1ee8d3bf))
|
||||
* gitlab user screen ([c6c5465](https://github.com/git-touch/git-touch/commit/c6c5465ad35e77767ab5ca45d9d7099f18446866))
|
||||
* handle create event ([bb0d9d5](https://github.com/git-touch/git-touch/commit/bb0d9d5d01e0e586d7180297b555c9f4319c5ef9))
|
||||
* handle release event ([5f340e4](https://github.com/git-touch/git-touch/commit/5f340e45028c7a83ea48bc87771cfd47375d02b8))
|
||||
* languages chart ([23983fb](https://github.com/git-touch/git-touch/commit/23983fb556083c1a1aa6c8d05ebdb01c3238260c))
|
||||
* markdown view dark mode ([eac8418](https://github.com/git-touch/git-touch/commit/eac84184af62ccec910feb4dd7263ba68eae19e3))
|
||||
* open and close issue ([1b7bcdb](https://github.com/git-touch/git-touch/commit/1b7bcdb7bbc503af8fd0750a1eb8234bcf4101b0))
|
||||
* repo watch ([42c733f](https://github.com/git-touch/git-touch/commit/42c733fe4c7ae2fa6e98f89d8be6095a0e57e2ac))
|
||||
* review permissiosn ([f757c74](https://github.com/git-touch/git-touch/commit/f757c748ea691c8c1d2f65c2c3402a33a36c18c8))
|
||||
* save brightness settings ([dd093bc](https://github.com/git-touch/git-touch/commit/dd093bc7f7ee4e4f965d0d2f0628f3d7e2bd7ea0))
|
||||
* **gitlab:** blob screen ([d91ae0a](https://github.com/git-touch/git-touch/commit/d91ae0a21325330c5dd3de15aeb6ee72a1adaa85))
|
||||
* **gitlab:** project activity screen ([cb82b48](https://github.com/git-touch/git-touch/commit/cb82b48ed0d29e78a7adf59bccf0352b85e49da9))
|
||||
* **gitlab:** project icons ([956b57e](https://github.com/git-touch/git-touch/commit/956b57e869f1b80f88b753ad41d1f93a65edb0dc))
|
||||
* **gitlab:** project screen ([2636e90](https://github.com/git-touch/git-touch/commit/2636e902f29564a92ce5edc41141bfb3791fbad2))
|
||||
* **gitlab:** repository tree screen ([edd3a8d](https://github.com/git-touch/git-touch/commit/edd3a8d02efc70dcacb8a92d327ba959fa172f51))
|
||||
* handle svg files ([1b00a0a](https://github.com/git-touch/git-touch/commit/1b00a0ae693d1303215d7b1af2a349dfc1d757bf))
|
||||
* long press repo item ([e35d5df](https://github.com/git-touch/git-touch/commit/e35d5dfb3aad238fba020a7643f6b3ab7a785e24))
|
||||
* markdown view base path ([003263d](https://github.com/git-touch/git-touch/commit/003263d955b9cf5b8f1ba0110a7a0749467a2d0a))
|
||||
* open image view on avatar tap ([ed07ff0](https://github.com/git-touch/git-touch/commit/ed07ff086f9e24477587140c7beeeea7d9ca7167))
|
||||
* review comment ([c84a503](https://github.com/git-touch/git-touch/commit/c84a503299964e6e2b936a16eae8458771f94d4d))
|
||||
* use image view in object screen ([3e3e3d1](https://github.com/git-touch/git-touch/commit/3e3e3d1251cfce0c8680ef82c5b3c833805ca8f8))
|
||||
* use sliding control for cupertino ([5a35cbf](https://github.com/git-touch/git-touch/commit/5a35cbfe39112aae907992b196b2bb94498b1b0c))
|
||||
|
||||
|
||||
|
||||
# [1.1.0](https://github.com/git-touch/git-touch/compare/v1.0.0...v1.1.0) (2019-10-03)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* add gaps between languages ([7056d51](https://github.com/git-touch/git-touch/commit/7056d512374c863a9e40afcc4aea2ea6d889ebfb))
|
||||
* add missing files, remove legacy imports ([c4399a9](https://github.com/git-touch/git-touch/commit/c4399a9a72002385a8e917c24d8ef2e9454c4d85))
|
||||
* add missing links ([814b255](https://github.com/git-touch/git-touch/commit/814b255f3a250f1d6a32c9ba68d4f4c6b9cd008e))
|
||||
* add white background ([cce67cc](https://github.com/git-touch/git-touch/commit/cce67cccda1a1d02a4729ab7f3767fa37e44380b))
|
||||
* always show trailing widgets ([0fe8fc5](https://github.com/git-touch/git-touch/commit/0fe8fc59822637796595a2cbb8f3897ae7419b7c))
|
||||
* branch selection ([ac4fe0b](https://github.com/git-touch/git-touch/commit/ac4fe0b2ed39a7a56d773001d7e1f5b31ac0f1a2))
|
||||
* commit without related user ([b2b6ef4](https://github.com/git-touch/git-touch/commit/b2b6ef47958c58de5f70f2da569d9bdf65e4163a))
|
||||
* contributions initial position ([7606f6e](https://github.com/git-touch/git-touch/commit/7606f6ec1256a5ff5d1e6095cb7cfb94dde5bb27))
|
||||
* correct disk usage ([c3af4e7](https://github.com/git-touch/git-touch/commit/c3af4e7d91f1cd14ae725ffd17eb698f67a7276f))
|
||||
* current branch name ([89786c3](https://github.com/git-touch/git-touch/commit/89786c307ec3c4e543a8e0ce6f77b8a4faefed3b))
|
||||
* deleted user ([356a7f5](https://github.com/git-touch/git-touch/commit/356a7f5e18a108d5022e6f970437c36476ebe7c7))
|
||||
* disable animation on replacement ([ae7b124](https://github.com/git-touch/git-touch/commit/ae7b1247b417a2b1cbcee39023fa407f2797a236))
|
||||
* disable branch selection if less than 2 ([04f483a](https://github.com/git-touch/git-touch/commit/04f483aafea4bba25976888031a2290470d4342d))
|
||||
* disable sub module click ([8e088ef](https://github.com/git-touch/git-touch/commit/8e088ef701fad325398b6dfdf3815485a616b099))
|
||||
* disable tab switch if loading ([a1fe2df](https://github.com/git-touch/git-touch/commit/a1fe2df552bf4bec8ae881b87267d38cbce5bb34))
|
||||
* dispose ([966fa82](https://github.com/git-touch/git-touch/commit/966fa824ed99c06516f5a50708b2fed7a7246c26))
|
||||
* domain comparison ([b958ddf](https://github.com/git-touch/git-touch/commit/b958ddf0cfde2d23ba586870df56f1e3b85ece79))
|
||||
* duplicated class name ([af25486](https://github.com/git-touch/git-touch/commit/af25486a9c140dd38176ed357f7298e16b2c2b2b))
|
||||
* fetch 2x items if filter applied ([f580d4b](https://github.com/git-touch/git-touch/commit/f580d4b96c0e89e0655f0cd3021353c9401ce041))
|
||||
* folders first ([814ac92](https://github.com/git-touch/git-touch/commit/814ac926a13ff32fe4d25f7839ab2acf7d2ba175))
|
||||
* handle commit user null ([cc8ea1d](https://github.com/git-touch/git-touch/commit/cc8ea1d39a8298801b20267629d0f4d2f2cb2e34))
|
||||
* handle default branch ref null case ([cbfa622](https://github.com/git-touch/git-touch/commit/cbfa6221e47a0649c13c437958ba34d9c662ad13))
|
||||
* handle emoji characters ([c06179e](https://github.com/git-touch/git-touch/commit/c06179e1096cfb1b992c8d5e595096a637aebfb4))
|
||||
* handle language color null ([b083c4f](https://github.com/git-touch/git-touch/commit/b083c4fadd1a886e6d116416baaf9ccbf2ad750e))
|
||||
* handle README content null ([6539eb6](https://github.com/git-touch/git-touch/commit/6539eb6ef409961f375e21bab7cfd3354e417604))
|
||||
* hide GitLab account login entry ([003a8e9](https://github.com/git-touch/git-touch/commit/003a8e9fbe5ecdd164bcd43a4ef5800c6cf7ee0c))
|
||||
* hide language bar if no data ([7562f39](https://github.com/git-touch/git-touch/commit/7562f391cc4329ccfefbf1d33fce6d5064f275f1))
|
||||
* horizontal scroll ([9b1921a](https://github.com/git-touch/git-touch/commit/9b1921adda3a56ca157fc938066b1bf897930d04))
|
||||
* issues load more ([94cd4ec](https://github.com/git-touch/git-touch/commit/94cd4ec9459b64d7c958bdf33bfee473704f0f07))
|
||||
* items not fill in list view ([04edb92](https://github.com/git-touch/git-touch/commit/04edb9247af066edee6c08ae6646acc50373cf7c))
|
||||
* label color ([eb9de95](https://github.com/git-touch/git-touch/commit/eb9de95efc493285d68b91ac357a3c44c070ff46))
|
||||
* language color at trending screen ([411a4b9](https://github.com/git-touch/git-touch/commit/411a4b981ef5a138750977dcd196fd76114b95d9))
|
||||
* limit to ascii ([ee61509](https://github.com/git-touch/git-touch/commit/ee615097e7665fb3b72d226e24a89a8f48bc99c3))
|
||||
* link tap highlight ([27f4bbc](https://github.com/git-touch/git-touch/commit/27f4bbc690b5cdcf1d4e96589521b7eb2fb83717))
|
||||
* list scaffold refresh feature ([0c54611](https://github.com/git-touch/git-touch/commit/0c54611345ddfb01819f82fc68736441bbf0b3f8))
|
||||
* mark all as read ([0d16490](https://github.com/git-touch/git-touch/commit/0d164904f1357c484529e75a2c4d8d64fb726107))
|
||||
* material actions style ([eadef89](https://github.com/git-touch/git-touch/commit/eadef899d5989251b1fd9619b0408a3025b545bd))
|
||||
* multi line body ([bac4ab4](https://github.com/git-touch/git-touch/commit/bac4ab4c62f43e823a50564b8017c46d864259b9))
|
||||
* notification item state query ([49902f2](https://github.com/git-touch/git-touch/commit/49902f2999099cf88170283e13f24f2d4eae5e21))
|
||||
* object screen ([87bb4d5](https://github.com/git-touch/git-touch/commit/87bb4d5513563aa78b2735a6836853b2f7cefd64))
|
||||
* physical pixel border ([9487cc1](https://github.com/git-touch/git-touch/commit/9487cc1bc60e7c5025ae459e48f36c85aa0fdcfc))
|
||||
* refresh scaffold when trailing builder null ([e6d6835](https://github.com/git-touch/git-touch/commit/e6d68356615317e399db519233b266867bb249e7))
|
||||
* release notification item tap ([a4d00e5](https://github.com/git-touch/git-touch/commit/a4d00e5a81ff5fe412015d8d0d44efda756d5d54))
|
||||
* remove background color for ink effect ([ddcd39c](https://github.com/git-touch/git-touch/commit/ddcd39c438a871e05afae3c2f7c26be3bf5059a5))
|
||||
* remove previous account if duplicated ([f2e3120](https://github.com/git-touch/git-touch/commit/f2e312079b20011b8f0c1c76c86f49d274745995))
|
||||
* replace deprecated pinned api ([4db467d](https://github.com/git-touch/git-touch/commit/4db467d212a34c41b1281fc6be75b9ba9b054b26))
|
||||
* repo item link ([b610af4](https://github.com/git-touch/git-touch/commit/b610af44a128b5be318a4591b837555087f2b63c))
|
||||
* repo name containing dot at notification screen ([e5e3831](https://github.com/git-touch/git-touch/commit/e5e38315bea0d6fa04c7e1b7ab4b60b4688cac92))
|
||||
* show repo owner at user stars screen ([0b57a59](https://github.com/git-touch/git-touch/commit/0b57a59392df9a341a67edb811f9dd57b5b2a724))
|
||||
* star and fork count 0 case ([ec1d995](https://github.com/git-touch/git-touch/commit/ec1d9956607cf66b06fc2ff508e0d570ee9b8c03))
|
||||
* started -> starred ([2914d0c](https://github.com/git-touch/git-touch/commit/2914d0c629e2deffc7f4b3dad126316dd20e04af))
|
||||
* table view style ([9bc5c2b](https://github.com/git-touch/git-touch/commit/9bc5c2b96a69c6ddec32119c04bf3dfc01f3fc31))
|
||||
* trending api ([cac2c66](https://github.com/git-touch/git-touch/commit/cac2c664ccf923bb00ddbf2925025ffa0635e0d5))
|
||||
* update data after action ([206e533](https://github.com/git-touch/git-touch/commit/206e53346318f1f42afd623949b290b242f8580b))
|
||||
* use common push route method for span link ([200b250](https://github.com/git-touch/git-touch/commit/200b2509268aa6ed1844aacda65a4750d3d574ae))
|
||||
* use default branch ([a2cb2fb](https://github.com/git-touch/git-touch/commit/a2cb2fb9e979d7ef751ffd0bb081e61e43fbecb5))
|
||||
* use readme api ([b07b25f](https://github.com/git-touch/git-touch/commit/b07b25fca0a56057a0f108366ef254fdcb7df69b))
|
||||
* use spdx id of license ([1a9f708](https://github.com/git-touch/git-touch/commit/1a9f7083ee2a6ba49be22de842a3b1b45d35d684))
|
||||
* user type ([755aba7](https://github.com/git-touch/git-touch/commit/755aba7727939a74a66516469b48cd6c71881617))
|
||||
* users screen title ([bd4ed63](https://github.com/git-touch/git-touch/commit/bd4ed6382cca9b8d4e35033f6de75f824344f2e2))
|
||||
* users star or watch repo ([df485ed](https://github.com/git-touch/git-touch/commit/df485edcd4ca19624fcf070ffa7cc8d6ab09b54a))
|
||||
* widget list contains null ([cb8a879](https://github.com/git-touch/git-touch/commit/cb8a8799ab979e0cdb062684ed28986e9df55b00))
|
||||
* widget span for branch name ([ca11d0f](https://github.com/git-touch/git-touch/commit/ca11d0f0d5d5c38876b510136ce23370413a4229))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* adapter picker for material theme ([fb4c12d](https://github.com/git-touch/git-touch/commit/fb4c12d1a5a29dc51f49496f543fd6676c327839))
|
||||
* add and remove reactions ([3bc1e7e](https://github.com/git-touch/git-touch/commit/3bc1e7edcd97988b347a1a406d67a662acd42846))
|
||||
* add avatar placeholder ([c300113](https://github.com/git-touch/git-touch/commit/c300113b8a0f7fbddf494d3b537ffcd3f53b8acf))
|
||||
* add commit build status ([a48a35e](https://github.com/git-touch/git-touch/commit/a48a35ec4fce035a9e722c864249eb6784591b6a))
|
||||
* add contributions graph to user screen ([c6d9b06](https://github.com/git-touch/git-touch/commit/c6d9b067b1bf6c969b546f78831a35e914523761))
|
||||
* add credits of fonts ([0d5fef8](https://github.com/git-touch/git-touch/commit/0d5fef8dd770425795a2dd4c43139d6319349945))
|
||||
* add credits screen ([00cbac4](https://github.com/git-touch/git-touch/commit/00cbac48585a33e9ea4c68ca41199a331a9ac299))
|
||||
* add feedback entry ([c54df10](https://github.com/git-touch/git-touch/commit/c54df1023405af023f83c07c4c1f69eb97ee9d1c))
|
||||
* add go to review entry ([f4dd41e](https://github.com/git-touch/git-touch/commit/f4dd41e3ff9e8ed54d5eb3632bd3de001e9b7718))
|
||||
* add issue, pull request and commit entry ([08e7c99](https://github.com/git-touch/git-touch/commit/08e7c99c6431f0152ccb7dbe6b0239e2b8757c42))
|
||||
* add more information for users screen ([f3b5476](https://github.com/git-touch/git-touch/commit/f3b547668c84586484b1db20d8fdd5b638891f01))
|
||||
* add news filter ([049f44b](https://github.com/git-touch/git-touch/commit/049f44b5f45fcbc5a70835f4347b820f9ee6744f))
|
||||
* add organization screen ([7182268](https://github.com/git-touch/git-touch/commit/718226860edb3bef09807518d8876e0269c10ff0))
|
||||
* add popular monospace fonts ([7a9fb0f](https://github.com/git-touch/git-touch/commit/7a9fb0ffeec76e288216434d4120db3817bf8d10))
|
||||
* add project entry ([01d7fd2](https://github.com/git-touch/git-touch/commit/01d7fd2fc11ffa32714f7faf1ee8154f9983d63c))
|
||||
* add reaction emoji to issue screen ([af79d33](https://github.com/git-touch/git-touch/commit/af79d33a7f36d242706aa39e03d3d5b526d41456))
|
||||
* add releases ([f9fcf42](https://github.com/git-touch/git-touch/commit/f9fcf42c98a7c9006e03cc4056dff4622c4d532e))
|
||||
* add scrollbar ([5089ac6](https://github.com/git-touch/git-touch/commit/5089ac6bb078f349d9e98f380662e701cba0c1ba))
|
||||
* add topics to repo screen ([3f2b9ed](https://github.com/git-touch/git-touch/commit/3f2b9ed56621bf14ec55d6e65ccc302d12f8ed0e))
|
||||
* add trending developers ([91d6a4b](https://github.com/git-touch/git-touch/commit/91d6a4b2a3ba72738885ff8f5032c6c8fd6ed728))
|
||||
* add trending screen ([c06ef90](https://github.com/git-touch/git-touch/commit/c06ef90618b3a58100f747b4475bcb88f386238b))
|
||||
* add users and issues search ([cefd0bc](https://github.com/git-touch/git-touch/commit/cefd0bcb5c5f05f6b71999c5b2bed8902410b71e))
|
||||
* add view owner action at repo screen ([83c22bd](https://github.com/git-touch/git-touch/commit/83c22bda9acb9f113d4e4f1829721a39d7a2e705))
|
||||
* apply github markdown style ([68dacab](https://github.com/git-touch/git-touch/commit/68dacabfbddbed5e7df5a70dd6832ae3d199b279))
|
||||
* border left padding ([3506609](https://github.com/git-touch/git-touch/commit/3506609024f70968f3e1834d144a37735f1e7777))
|
||||
* bottom navigation style ([68c1be4](https://github.com/git-touch/git-touch/commit/68c1be406d1d80fd3aa3acb2245742825631be57))
|
||||
* code settings ([a47d84a](https://github.com/git-touch/git-touch/commit/a47d84a6cc83df490366e50a14f8b576356ad307))
|
||||
* commits list screen ([a7155d4](https://github.com/git-touch/git-touch/commit/a7155d4def99e3be6aa71595aca5386f0cb8d812))
|
||||
* create issue ([4b8807e](https://github.com/git-touch/git-touch/commit/4b8807e2f19a44e7aafea0f335642caf01e1751e))
|
||||
* disable link to self of repo screen ([932a107](https://github.com/git-touch/git-touch/commit/932a10797e21c1ddd1ead85235d7c861150606fe))
|
||||
* disable refresh on tab switch ([09c1ded](https://github.com/git-touch/git-touch/commit/09c1ded405d7605951085f84f1703d2cdb612a23))
|
||||
* extract markdown view, add basic style ([70f83df](https://github.com/git-touch/git-touch/commit/70f83df1fe07ab55186f0ef8355caf6f60230443))
|
||||
* format numbers with group seperator ([ede2d06](https://github.com/git-touch/git-touch/commit/ede2d064f10e361c4d60142600c05ef4f2698abc))
|
||||
* gitlab account login ([beb8974](https://github.com/git-touch/git-touch/commit/beb8974caa82f4679898f9f53f3c6abca0b5f765))
|
||||
* handle markdown link tap ([b119a42](https://github.com/git-touch/git-touch/commit/b119a425cd75c7ceb69c5e2a12801218241690b7))
|
||||
* hide issue entry if not enabled ([9c5ef59](https://github.com/git-touch/git-touch/commit/9c5ef590131467f10d9f2b32c5eb829bfcda9b79))
|
||||
* hide owner of user page repos if same ([9bdb01e](https://github.com/git-touch/git-touch/commit/9bdb01e04ce1ed50b7db9437f731b844907ca813))
|
||||
* issue screen style ([1108346](https://github.com/git-touch/git-touch/commit/110834616352bb87e11ef85f3847c7742d4722e8))
|
||||
* issues screen info ([bf3f077](https://github.com/git-touch/git-touch/commit/bf3f077efa416220e486c20ea138f741a506320f))
|
||||
* issues screen style ([2c6a3d0](https://github.com/git-touch/git-touch/commit/2c6a3d097c96a4da092ef1ea3178b6aaa2983817))
|
||||
* launch google maps for location ([58ee485](https://github.com/git-touch/git-touch/commit/58ee48527f38328b3a549902d408336f0d9504db))
|
||||
* list group style ([3055c29](https://github.com/git-touch/git-touch/commit/3055c29e7b8d15f8c8cb50a28397ee2ed289c193))
|
||||
* login by access token ([8869c6b](https://github.com/git-touch/git-touch/commit/8869c6b456180cf4f31493030fe680b595178710))
|
||||
* news screen style ([321ab0a](https://github.com/git-touch/git-touch/commit/321ab0a60a2a340f41404a440e69f8b7a65ca87d))
|
||||
* news screen time, style tweaks ([46e380c](https://github.com/git-touch/git-touch/commit/46e380c10d07f61b25d232ea11725e371f8259a0))
|
||||
* notification badge color, remove unnecessary keyword new ([ae1536b](https://github.com/git-touch/git-touch/commit/ae1536b34892026c0f98e082ac3ed950c1f14b53))
|
||||
* notification style ([1eafcff](https://github.com/git-touch/git-touch/commit/1eafcff12498cd664e6b72f8d74313e2bb70b628))
|
||||
* organization members ([1c5b624](https://github.com/git-touch/git-touch/commit/1c5b62430ecaf32c4cd3f4dba77495d8d93066d8))
|
||||
* organization screen ([45687a4](https://github.com/git-touch/git-touch/commit/45687a48a6c3b226a95ecd11f26cf97de9b70711))
|
||||
* pushEvent: show commits, click to launch code compare page ([76d8138](https://github.com/git-touch/git-touch/commit/76d8138716dfea115d55e344a59ce7cd53526c35))
|
||||
* remove news filter ([0e87278](https://github.com/git-touch/git-touch/commit/0e8727891e0efe3f79adfb6cc6fe4f36646caa00))
|
||||
* repo item style ([354520d](https://github.com/git-touch/git-touch/commit/354520d9c11c79912d334115af6807d564f670d7))
|
||||
* repo language ratio bar ([029beba](https://github.com/git-touch/git-touch/commit/029bebaf0dce8f05c1328c3e0fb926155763b122))
|
||||
* repository count ([42debe9](https://github.com/git-touch/git-touch/commit/42debe9bf3887c47d9983e172d9b733a8448b603))
|
||||
* repository forks screen ([250b520](https://github.com/git-touch/git-touch/commit/250b5206625457e464a534fae8522385d2d63b2e))
|
||||
* select branch with picker ([ce00adf](https://github.com/git-touch/git-touch/commit/ce00adf54c2e7a2463619080edcefd83c7356144))
|
||||
* settings style ([c24fd46](https://github.com/git-touch/git-touch/commit/c24fd4600c52024a6c215d68c3c7328626102fee))
|
||||
* settings table view style ([7f9669e](https://github.com/git-touch/git-touch/commit/7f9669eaeaebe3425ba8e934721bbcfd8d39cd23))
|
||||
* show branches count ([4fb32fa](https://github.com/git-touch/git-touch/commit/4fb32fa818f00d83cdc85114231fcbdd3bb1f7d9))
|
||||
* show code blob ([3f59d56](https://github.com/git-touch/git-touch/commit/3f59d5694dd5b6a045b0ad642e5167a9f4e0faf6))
|
||||
* show notification status on load ([80e6332](https://github.com/git-touch/git-touch/commit/80e63324325cab6b1f8e588f1b9928b7d5ca8fb0))
|
||||
* show pinned items ([8cd1d9f](https://github.com/git-touch/git-touch/commit/8cd1d9f1a5125681e08c37d4db5f0d84fa460684))
|
||||
* show repository directory ([09f91f7](https://github.com/git-touch/git-touch/commit/09f91f77ae9fe359ecbec0946cdd677df9e26939))
|
||||
* specify branch of commits screen ([8bc2024](https://github.com/git-touch/git-touch/commit/8bc2024e4142610f55f59396ccb0bfc989a43816))
|
||||
* style tweak ([7d6d1ec](https://github.com/git-touch/git-touch/commit/7d6d1ecd46083190546f19204f078db8c68c86f8))
|
||||
* style tweaks ([2acf857](https://github.com/git-touch/git-touch/commit/2acf85742bf2dfb82a14a786f881b83b31dc0078))
|
||||
* style tweaks ([9fe6639](https://github.com/git-touch/git-touch/commit/9fe6639f6619b3065fdbb89ec498c6423a9d0595))
|
||||
* style tweaks ([6312da8](https://github.com/git-touch/git-touch/commit/6312da876a44b93afa037091c8ed366d5759dac7))
|
||||
* style tweaks ([e3cba91](https://github.com/git-touch/git-touch/commit/e3cba91b9c508322b01ac5b73978cc443fd1cb67))
|
||||
* text contains organization ([562c67d](https://github.com/git-touch/git-touch/commit/562c67dac004de2c7765fbf9198328e0f0f842b2))
|
||||
* text field placeholder ([cb87c32](https://github.com/git-touch/git-touch/commit/cb87c32de7482bac8d718102e5ecf5adc8a44eed))
|
||||
* use popup menu button for material ([951c50c](https://github.com/git-touch/git-touch/commit/951c50c2a983cef1425842090004bca3aaa8b744))
|
||||
* use seti icons ([8b580e2](https://github.com/git-touch/git-touch/commit/8b580e2376517729bf398ebd1672e40b5654b94b))
|
||||
* user screen repos title ([3354ac4](https://github.com/git-touch/git-touch/commit/3354ac4e6bc14ae6646260e0eb66fc14bf64de54))
|
||||
* user screen style ([a589e51](https://github.com/git-touch/git-touch/commit/a589e518bbd926fcdab156320c7d5b7addca8849))
|
||||
* user screen style tweaks ([c78c010](https://github.com/git-touch/git-touch/commit/c78c010fab7055fd14bdc1779e9590d185ba94fc))
|
||||
* user screen style tweaks ([2575576](https://github.com/git-touch/git-touch/commit/2575576e332c5185763e4577d9c8965e3aca49e8))
|
||||
* view image files ([83f3fbb](https://github.com/git-touch/git-touch/commit/83f3fbbdcfab63392e663010ad676fa1aebb12fe))
|
||||
* watch repository ([488f5fc](https://github.com/git-touch/git-touch/commit/488f5fc8f01acf2d73f23155854a4559de115ae2))
|
||||
|
||||
|
||||
|
||||
# [1.0.0](https://github.com/git-touch/git-touch/compare/a051a54549f70a8ba7be33a5b9b04ae5ff5d98a0...v1.0.0) (2019-02-12)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* add missing internet permission to android manifest ([56f598e](https://github.com/git-touch/git-touch/commit/56f598e73228ffa6256cec4ca0ff519e70209002))
|
||||
* check mounted before setState ([ddb9497](https://github.com/git-touch/git-touch/commit/ddb9497ab835e950fd2a4df7e59e37eae81602b8))
|
||||
* checkout code of closeWebView fix PR ([d25b979](https://github.com/git-touch/git-touch/commit/d25b9791382b2fd24def5923a89fe01155b1cbe6))
|
||||
* event item tap screen ([d476018](https://github.com/git-touch/git-touch/commit/d476018092e5110689cafe397fff15e6090e0954))
|
||||
* event item tapable revert ([5b4ff92](https://github.com/git-touch/git-touch/commit/5b4ff92138864b6f39e0cbe8942413c1ef5022e8))
|
||||
* handle notification item type: Commit ([84596d3](https://github.com/git-touch/git-touch/commit/84596d3fcf698c9cf9364cd6b77860c5d5753467))
|
||||
* long list at material theme ([ce11da3](https://github.com/git-touch/git-touch/commit/ce11da379a3f209f7af030f0ce7e5397f56c2276))
|
||||
* move fetch to next tick to get context ([73907f5](https://github.com/git-touch/git-touch/commit/73907f51b4462a811aa4c5b7f3449a852a773296))
|
||||
* refresh scaffold, dash graphql syntax error ([5c4d29c](https://github.com/git-touch/git-touch/commit/5c4d29c5227855302e689ca254159057abb7244d))
|
||||
* remove loading when reach to end ([6933c04](https://github.com/git-touch/git-touch/commit/6933c044723b533672de627c0546be863ac845eb))
|
||||
* replace hard code ([c7a16f6](https://github.com/git-touch/git-touch/commit/c7a16f67a0ca8d6df3340fbcdbff468f03b8e6ca))
|
||||
* style and dependency ([b4c21a1](https://github.com/git-touch/git-touch/commit/b4c21a13724983e4a64b2fe579ce0a28c1936542))
|
||||
* style of pull request and issue screens ([c9d4f4c](https://github.com/git-touch/git-touch/commit/c9d4f4c999404421c3fbeb07a41685abebaccf3e))
|
||||
* styles ([9ce9589](https://github.com/git-touch/git-touch/commit/9ce9589b2ce005a0f1cee0a2dd1d815e8d5a67dd))
|
||||
* test files ([5f94c0f](https://github.com/git-touch/git-touch/commit/5f94c0f80f97f98bb3a81560a3ed93596705bc9a))
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* add actions to repo, user and issue screen ([d9bec75](https://github.com/git-touch/git-touch/commit/d9bec759e3bcc2715878c29f907520ac5c19da8b))
|
||||
* add all timeline item types ([7a229d0](https://github.com/git-touch/git-touch/commit/7a229d079786b1e6e51a66dc5e7aea8b75839ba9))
|
||||
* add android deep link ([5c0870a](https://github.com/git-touch/git-touch/commit/5c0870a80bc6c098aa167fc8bc8ba5ef32db45cf))
|
||||
* add android notification screen ([b07aee5](https://github.com/git-touch/git-touch/commit/b07aee5aad6cd5117c41d82d033e8bca9dc4a896))
|
||||
* add error screen to handle network and other errors ([0a26509](https://github.com/git-touch/git-touch/commit/0a26509cddb852c8c714539bcd5c63ac6fb87889))
|
||||
* add files and commits links for repo screen ([925472f](https://github.com/git-touch/git-touch/commit/925472f151ce1ef1ab2dafb9c61b2c4ee7e36d7f))
|
||||
* add iOS icons, add display name ([3a254bd](https://github.com/git-touch/git-touch/commit/3a254bd0aa0c6339e66c207e41078cf7e7e07f98))
|
||||
* add issue and pull request state ([fb9fd4c](https://github.com/git-touch/git-touch/commit/fb9fd4cb3a5fdc1b528900e4fb791cb10705031a))
|
||||
* add loading widget when receiving url scheme ([e1170d4](https://github.com/git-touch/git-touch/commit/e1170d411cff0169299c389ad61d1ec2165062ec))
|
||||
* add more event type ([9ae00df](https://github.com/git-touch/git-touch/commit/9ae00dff6d591cf20e76cebe4892d78dedacfc30))
|
||||
* add notification page ([a051a54](https://github.com/git-touch/git-touch/commit/a051a54549f70a8ba7be33a5b9b04ae5ff5d98a0))
|
||||
* add Octicons ([d86c2c3](https://github.com/git-touch/git-touch/commit/d86c2c3b4999826869c46a9c41df29c1ba2336c9))
|
||||
* add placeholder for empty list ([5298c87](https://github.com/git-touch/git-touch/commit/5298c8736f8f6787ad43145cac50d8d31fcf9eee))
|
||||
* add repo item, extract list group widget ([f141405](https://github.com/git-touch/git-touch/commit/f1414057e0a10803f00dc9aa8c8ea531e8a2633d))
|
||||
* add repo's issues and pull requests screen ([5535631](https://github.com/git-touch/git-touch/commit/55356315c437143ab2c3f06d254539fa6e1e2ebb))
|
||||
* add search screen ([8e86e85](https://github.com/git-touch/git-touch/commit/8e86e85b553b21269e2eab965d130bafaeb93e36))
|
||||
* add search screen ([992c7e0](https://github.com/git-touch/git-touch/commit/992c7e0cc6c7cd3782df00eab77b231af141bd1f))
|
||||
* add tips for unimplemented event types ([374a39c](https://github.com/git-touch/git-touch/commit/374a39c4205b5ff29a5dda951856c91920561d21))
|
||||
* add user screen ([3c83804](https://github.com/git-touch/git-touch/commit/3c83804b3d962f919985b57f8d99c2464ff29835))
|
||||
* add users screen: following and followers ([66c040e](https://github.com/git-touch/git-touch/commit/66c040e5239c9a45fd55cfa5a0acfe8fd676c6e7))
|
||||
* add users' repo screen ([ab75500](https://github.com/git-touch/git-touch/commit/ab755005b79d0ef09ffd75c9887bb3b302daa95a))
|
||||
* android icons and display name ([282d29f](https://github.com/git-touch/git-touch/commit/282d29f68f4745efab7b3ff6a6152abe446e4683))
|
||||
* custom event payload type ([6aa65b8](https://github.com/git-touch/git-touch/commit/6aa65b857ff9faa805f7be931eb404814bed7c39))
|
||||
* extract issue and pull request common widget, add more type ([7c6c211](https://github.com/git-touch/git-touch/commit/7c6c211d1c3a2121193f43135ee01c3f3add226c))
|
||||
* extract provider, add android news screen ([908d6df](https://github.com/git-touch/git-touch/commit/908d6df478cc4a38f3af4fcfa7a2cda5153c9e15))
|
||||
* github oauth login ([543f8c8](https://github.com/git-touch/git-touch/commit/543f8c82ea421b0129fbb529daeb0f914c45d309))
|
||||
* home screen style, add pull request screen ([1624027](https://github.com/git-touch/git-touch/commit/16240278f67a2f5fb3c5ba9152bf39b5d31b0b92))
|
||||
* inbox screen ([8e678a3](https://github.com/git-touch/git-touch/commit/8e678a37d4a98c54989ba1d206bffef1173166a0))
|
||||
* iOS URL scheme config ([ef03caa](https://github.com/git-touch/git-touch/commit/ef03caa135c536e04a121686a27308da9a359224))
|
||||
* login screen style, add settings screen, extract simple scaffold ([434781a](https://github.com/git-touch/git-touch/commit/434781a27e9d99aecb201c488a1f0a8d951c51bd))
|
||||
* notification filters ([e16d6c2](https://github.com/git-touch/git-touch/commit/e16d6c24680bba0d29809bd2652db233621efd2e))
|
||||
* notification icon badge ([c047aae](https://github.com/git-touch/git-touch/commit/c047aae099c1c71e2a7c1aeaa02fec29aa161d8f))
|
||||
* notification mark as read ([c0629c5](https://github.com/git-touch/git-touch/commit/c0629c5739109459556b2ef2b35176df590287a4))
|
||||
* notification page style ([2458c63](https://github.com/git-touch/git-touch/commit/2458c63a0c12bdb5985416faa3a042176241a042))
|
||||
* notification screen ([9043322](https://github.com/git-touch/git-touch/commit/90433222012ae6af7c79df82a2f00e49ee3dd7e5))
|
||||
* notification screen filter ([7c35bb7](https://github.com/git-touch/git-touch/commit/7c35bb7ffb4d2144d78ff8b2a29816b46258e2e5))
|
||||
* repo screen ([5664591](https://github.com/git-touch/git-touch/commit/56645910e4aa85f089a53025d7fb8713040923f8))
|
||||
* settings screen ([0a1de91](https://github.com/git-touch/git-touch/commit/0a1de9156993d2d6a3c970d5b4d12c7212e9ba0e))
|
||||
* style of home and notification screen ([4e28608](https://github.com/git-touch/git-touch/commit/4e2860871402a4e0cfa6c076c6260b75780ff8d6))
|
||||
* user screen ([a374a57](https://github.com/git-touch/git-touch/commit/a374a57f8f7d0129e264c0a7021eec9192a992e0))
|
||||
* user screen style ([7a18277](https://github.com/git-touch/git-touch/commit/7a18277ac2130d867ac592b0555aeb441ea0fd28))
|
||||
* users' star repos ([813a956](https://github.com/git-touch/git-touch/commit/813a95666ed26171953b42abe242db7fd35920c4))
|
||||
|
||||
- View GitHub trending repositories and users
|
||||
- View code with syntax highlighting
|
||||
- Search users and issues
|
||||
- Login by access token
|
||||
- Style tweaks
|
||||
|
||||
## 1.0.0
|
||||
|
||||
- View GitHub repositories
|
||||
- View GitHub users
|
||||
- View pull requests and issues
|
||||
- View notifications
|
||||
- Star and unstar repositories
|
||||
- Follow and unfollow users
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
<p align="center">
|
||||
<a href="https://apps.apple.com/us/app/gittouch/id1452042346"><img src="https://tools.applemediaservices.com/api/badges/download-on-the-app-store/black/en-US" alt="Download on the App Store" height="48"></a>
|
||||
<a href="https://play.google.com/store/apps/details?id=io.github.pd4d10.gittouch"><img alt="Get it on Google Play" title="Google Play" src="https://raw.githubusercontent.com/pd4d10/git-touch/main/assets/google-play-badge.png" height="48" /></a>
|
||||
<a href="https://f-droid.org/packages/io.github.pd4d10.gittouch/"><img alt="Get it on F-Droid" src="https://upload.wikimedia.org/wikipedia/commons/9/96/%22Get_it_on_F-droid%22_Badge.png" height="48" /></a>
|
||||
</p>
|
||||
|
||||
## Installation
|
||||
|
@ -50,7 +51,9 @@ See [CONTRIBUTING.md](./CONTRIBUTING.md).
|
|||
|
||||
## Contributors
|
||||
|
||||
[![](https://sourcerer.io/fame/pd4d10/pd4d10/git-touch/images/0)![](https://sourcerer.io/fame/pd4d10/pd4d10/git-touch/images/1)![](https://sourcerer.io/fame/pd4d10/pd4d10/git-touch/images/2)![](https://sourcerer.io/fame/pd4d10/pd4d10/git-touch/images/3)![](https://sourcerer.io/fame/pd4d10/pd4d10/git-touch/images/4)![](https://sourcerer.io/fame/pd4d10/pd4d10/git-touch/images/5)![](https://sourcerer.io/fame/pd4d10/pd4d10/git-touch/images/6)![](https://sourcerer.io/fame/pd4d10/pd4d10/git-touch/images/7)](https://github.com/pd4d10/git-touch/graphs/contributors)
|
||||
<a href="https://github.com/git-touch/git-touch/graphs/contributors">
|
||||
<img src="https://contrib.rocks/image?repo=git-touch/git-touch" />
|
||||
</a>
|
||||
|
||||
## License
|
||||
|
||||
|
|
|
@ -0,0 +1,50 @@
|
|||
# This file configures the analyzer, which statically analyzes Dart code to
|
||||
# check for errors, warnings, and lints.
|
||||
#
|
||||
# The issues identified by the analyzer are surfaced in the UI of Dart-enabled
|
||||
# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be
|
||||
# invoked from the command line by running `flutter analyze`.
|
||||
|
||||
# The following line activates a set of recommended lints for Flutter apps,
|
||||
# packages, and plugins designed to encourage good coding practices.
|
||||
include: package:flutter_lints/flutter.yaml
|
||||
|
||||
linter:
|
||||
# The lint rules applied to this project can be customized in the
|
||||
# section below to disable rules from the `package:flutter_lints/flutter.yaml`
|
||||
# included above or to enable additional rules. A list of all available lints
|
||||
# and their documentation is published at
|
||||
# https://dart-lang.github.io/linter/lints/index.html.
|
||||
#
|
||||
# Instead of disabling a lint rule for the entire project in the
|
||||
# section below, it can also be suppressed for a single line of code
|
||||
# or a specific dart file by using the `// ignore: name_of_lint` and
|
||||
# `// ignore_for_file: name_of_lint` syntax on the line or in the file
|
||||
# producing the lint.
|
||||
rules:
|
||||
prefer_single_quotes: true
|
||||
always_use_package_imports: true
|
||||
sort_constructors_first: true
|
||||
sort_unnamed_constructors_first: true
|
||||
avoid_types_on_closure_parameters: true
|
||||
omit_local_variable_types: true
|
||||
prefer_final_in_for_each: true
|
||||
prefer_final_locals: true
|
||||
use_super_parameters: true
|
||||
use_key_in_widget_constructors: false # waiting for auto fix: https://github.com/dart-lang/sdk/issues/50056
|
||||
|
||||
# TODO:
|
||||
avoid_print: false
|
||||
use_build_context_synchronously: false
|
||||
non_constant_identifier_names: false
|
||||
|
||||
analyzer:
|
||||
errors:
|
||||
todo: ignore
|
||||
fixme: ignore
|
||||
invalid_annotation_target: ignore # https://github.com/rrousselGit/freezed#disabling-invalid_annotation_target-warning-and-warning-in-generates-files
|
||||
# TODO:
|
||||
unused_element: false
|
||||
override_on_non_overriding_member: false
|
||||
# Additional information about this file can be found at
|
||||
# https://dart.dev/guides/language/analysis-options
|
|
@ -9,3 +9,5 @@ GeneratedPluginRegistrant.java
|
|||
# Remember to never publicly share your keystore.
|
||||
# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
|
||||
key.properties
|
||||
**/*.keystore
|
||||
**/*.jks
|
||||
|
|
|
@ -26,21 +26,29 @@ apply plugin: 'kotlin-android'
|
|||
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
|
||||
|
||||
android {
|
||||
compileSdkVersion 29
|
||||
compileSdkVersion 32 // flutter.compileSdkVersion
|
||||
ndkVersion flutter.ndkVersion
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
kotlinOptions {
|
||||
jvmTarget = '1.8'
|
||||
}
|
||||
|
||||
sourceSets {
|
||||
main.java.srcDirs += 'src/main/kotlin'
|
||||
}
|
||||
|
||||
lintOptions {
|
||||
disable 'InvalidPackage'
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
||||
applicationId "io.github.pd4d10.gittouch"
|
||||
minSdkVersion 16
|
||||
targetSdkVersion 29
|
||||
// You can update the following values to match your application needs.
|
||||
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration.
|
||||
minSdkVersion 19 // flutter.minSdkVersion
|
||||
targetSdkVersion flutter.targetSdkVersion
|
||||
versionCode flutterVersionCode.toInteger()
|
||||
versionName flutterVersionName
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="io.github.pd4d10.gittouch">
|
||||
<!-- Flutter needs it to communicate with the running application
|
||||
<!-- The INTERNET permission is required for development. Specifically,
|
||||
the Flutter tool needs it to communicate with the running application
|
||||
to allow setting breakpoints, to provide hot reload, etc.
|
||||
-->
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
|
|
|
@ -1,18 +1,12 @@
|
|||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="io.github.pd4d10.gittouch">
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
|
||||
<!-- io.flutter.app.FlutterApplication is an android.app.Application that
|
||||
calls FlutterMain.startInitialization(this); in its onCreate method.
|
||||
In most cases you can leave this as-is, but you if you want to provide
|
||||
additional functionality it is fine to subclass or reimplement
|
||||
FlutterApplication and put your custom class here. -->
|
||||
<application
|
||||
android:name="io.flutter.app.FlutterApplication"
|
||||
<application
|
||||
android:label="GitTouch"
|
||||
android:name="${applicationName}"
|
||||
android:icon="@mipmap/ic_launcher">
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
android:exported="true"
|
||||
android:launchMode="singleTop"
|
||||
android:theme="@style/LaunchTheme"
|
||||
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
|
||||
|
@ -26,15 +20,6 @@
|
|||
android:name="io.flutter.embedding.android.NormalTheme"
|
||||
android:resource="@style/NormalTheme"
|
||||
/>
|
||||
<!-- Displays an Android View that continues showing the launch screen
|
||||
Drawable until Flutter paints its first frame, then this splash
|
||||
screen fades out. A splash screen is useful to avoid any visual
|
||||
gap between the end of Android's launch screen and the painting of
|
||||
Flutter's first frame. -->
|
||||
<meta-data
|
||||
android:name="io.flutter.embedding.android.SplashScreenDrawable"
|
||||
android:resource="@drawable/launch_background"
|
||||
/>
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
<category android:name="android.intent.category.LAUNCHER"/>
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Modify this file to customize your launch splash screen -->
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="?android:colorBackground" />
|
||||
|
||||
<!-- You can insert your own image assets here -->
|
||||
<!-- <item>
|
||||
<bitmap
|
||||
android:gravity="center"
|
||||
android:src="@mipmap/launch_image" />
|
||||
</item> -->
|
||||
</layer-list>
|
|
@ -0,0 +1,18 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is on -->
|
||||
<style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
|
||||
<!-- Show a splash screen on the activity. Automatically removed when
|
||||
the Flutter engine draws its first frame -->
|
||||
<item name="android:windowBackground">@drawable/launch_background</item>
|
||||
</style>
|
||||
<!-- Theme applied to the Android Window as soon as the process has started.
|
||||
This theme determines the color of the Android Window while your
|
||||
Flutter UI initializes, as well as behind your Flutter UI while its
|
||||
running.
|
||||
|
||||
This Theme is only used starting with V2 of Flutter's Android embedding. -->
|
||||
<style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
|
||||
<item name="android:windowBackground">?android:colorBackground</item>
|
||||
</style>
|
||||
</resources>
|
|
@ -1,18 +1,18 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<!-- Theme applied to the Android Window while the process is starting -->
|
||||
<style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
|
||||
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->
|
||||
<style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
||||
<!-- Show a splash screen on the activity. Automatically removed when
|
||||
Flutter draws its first frame -->
|
||||
the Flutter engine draws its first frame -->
|
||||
<item name="android:windowBackground">@drawable/launch_background</item>
|
||||
</style>
|
||||
<!-- Theme applied to the Android Window as soon as the process has started.
|
||||
This theme determines the color of the Android Window while your
|
||||
Flutter UI initializes, as well as behind your Flutter UI while its
|
||||
running.
|
||||
|
||||
|
||||
This Theme is only used starting with V2 of Flutter's Android embedding. -->
|
||||
<style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
|
||||
<item name="android:windowBackground">@android:color/white</item>
|
||||
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
||||
<item name="android:windowBackground">?android:colorBackground</item>
|
||||
</style>
|
||||
</resources>
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="io.github.pd4d10.gittouch">
|
||||
<!-- Flutter needs it to communicate with the running application
|
||||
<!-- The INTERNET permission is required for development. Specifically,
|
||||
the Flutter tool needs it to communicate with the running application
|
||||
to allow setting breakpoints, to provide hot reload, etc.
|
||||
-->
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
buildscript {
|
||||
ext.kotlin_version = '1.3.50'
|
||||
ext.kotlin_version = '1.6.10'
|
||||
repositories {
|
||||
google()
|
||||
jcenter()
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.5.0'
|
||||
classpath 'com.android.tools.build:gradle:7.1.2'
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
}
|
||||
}
|
||||
|
@ -14,7 +14,7 @@ buildscript {
|
|||
allprojects {
|
||||
repositories {
|
||||
google()
|
||||
jcenter()
|
||||
mavenCentral()
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
|
|||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip
|
||||
|
|
36
build.yaml
|
@ -1,36 +0,0 @@
|
|||
targets:
|
||||
$default:
|
||||
builders:
|
||||
json_serializable:
|
||||
options:
|
||||
# Options configure how source code is generated for every
|
||||
# `@JsonSerializable`-annotated class in the package.
|
||||
#
|
||||
# The default value for each is listed.
|
||||
#
|
||||
# For usage information, reference the corresponding field in
|
||||
# `JsonSerializableGenerator`.
|
||||
# any_map: false
|
||||
# checked: false
|
||||
# create_factory: true
|
||||
# create_to_json: true
|
||||
# disallow_unrecognized_keys: false
|
||||
# explicit_to_json: false
|
||||
# field_rename: snake
|
||||
# generate_to_json_function: true
|
||||
# include_if_null: true
|
||||
# nullable: true
|
||||
# use_wrappers: false
|
||||
artemis:
|
||||
options:
|
||||
schema_mapping:
|
||||
- schema: lib/github.schema.json
|
||||
output: lib/graphql/gh.dart
|
||||
queries_glob: lib/graphql/gh_*.graphql
|
||||
resolve_type_field: __typename
|
||||
add_query_prefix: true
|
||||
scalar_mapping:
|
||||
- graphql_type: URI
|
||||
dart_type: String
|
||||
- graphql_type: GitObjectID
|
||||
dart_type: String
|
After Width: | Height: | Size: 107 KiB |
After Width: | Height: | Size: 114 KiB |
After Width: | Height: | Size: 171 KiB |
After Width: | Height: | Size: 177 KiB |
After Width: | Height: | Size: 268 KiB |
After Width: | Height: | Size: 372 KiB |
After Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 2.0 KiB |
|
@ -1,3 +1,4 @@
|
|||
**/dgph
|
||||
*.mode1v3
|
||||
*.mode2v3
|
||||
*.moved-aside
|
||||
|
@ -18,6 +19,7 @@ Flutter/App.framework
|
|||
Flutter/Flutter.framework
|
||||
Flutter/Flutter.podspec
|
||||
Flutter/Generated.xcconfig
|
||||
Flutter/ephemeral/
|
||||
Flutter/app.flx
|
||||
Flutter/app.zip
|
||||
Flutter/flutter_assets/
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>App</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
|
@ -21,6 +21,6 @@
|
|||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>MinimumOSVersion</key>
|
||||
<string>9.0</string>
|
||||
<string>11.0</string>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
|
||||
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
|
||||
#include "Generated.xcconfig"
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
|
||||
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
|
||||
#include "Generated.xcconfig"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Uncomment this line to define a global platform for your project
|
||||
# platform :ios, '9.0'
|
||||
# platform :ios, '11.0'
|
||||
|
||||
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
||||
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
||||
|
|
|
@ -1,64 +1,86 @@
|
|||
PODS:
|
||||
- Flutter (1.0.0)
|
||||
- in_app_review (0.2.0):
|
||||
- Flutter
|
||||
- launch_review (0.0.1):
|
||||
- Flutter
|
||||
- package_info (0.0.1):
|
||||
- maps_launcher (0.0.1):
|
||||
- Flutter
|
||||
- share (0.0.1):
|
||||
- package_info_plus (0.4.5):
|
||||
- Flutter
|
||||
- shared_preferences (0.0.1):
|
||||
- path_provider_ios (0.0.1):
|
||||
- Flutter
|
||||
- Sentry (7.27.1):
|
||||
- Sentry/Core (= 7.27.1)
|
||||
- Sentry/Core (7.27.1)
|
||||
- sentry_flutter (0.0.1):
|
||||
- Flutter
|
||||
- FlutterMacOS
|
||||
- Sentry (~> 7.27.1)
|
||||
- share_plus (0.0.1):
|
||||
- Flutter
|
||||
- shared_preferences_ios (0.0.1):
|
||||
- Flutter
|
||||
- uni_links (0.0.1):
|
||||
- Flutter
|
||||
- url_launcher (0.0.1):
|
||||
- url_launcher_ios (0.0.1):
|
||||
- Flutter
|
||||
- webview_flutter (0.0.1):
|
||||
- webview_flutter_wkwebview (0.0.1):
|
||||
- Flutter
|
||||
|
||||
DEPENDENCIES:
|
||||
- Flutter (from `Flutter`)
|
||||
- in_app_review (from `.symlinks/plugins/in_app_review/ios`)
|
||||
- launch_review (from `.symlinks/plugins/launch_review/ios`)
|
||||
- package_info (from `.symlinks/plugins/package_info/ios`)
|
||||
- share (from `.symlinks/plugins/share/ios`)
|
||||
- shared_preferences (from `.symlinks/plugins/shared_preferences/ios`)
|
||||
- maps_launcher (from `.symlinks/plugins/maps_launcher/ios`)
|
||||
- package_info_plus (from `.symlinks/plugins/package_info_plus/ios`)
|
||||
- path_provider_ios (from `.symlinks/plugins/path_provider_ios/ios`)
|
||||
- sentry_flutter (from `.symlinks/plugins/sentry_flutter/ios`)
|
||||
- share_plus (from `.symlinks/plugins/share_plus/ios`)
|
||||
- shared_preferences_ios (from `.symlinks/plugins/shared_preferences_ios/ios`)
|
||||
- uni_links (from `.symlinks/plugins/uni_links/ios`)
|
||||
- url_launcher (from `.symlinks/plugins/url_launcher/ios`)
|
||||
- webview_flutter (from `.symlinks/plugins/webview_flutter/ios`)
|
||||
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
|
||||
- webview_flutter_wkwebview (from `.symlinks/plugins/webview_flutter_wkwebview/ios`)
|
||||
|
||||
SPEC REPOS:
|
||||
trunk:
|
||||
- Sentry
|
||||
|
||||
EXTERNAL SOURCES:
|
||||
Flutter:
|
||||
:path: Flutter
|
||||
in_app_review:
|
||||
:path: ".symlinks/plugins/in_app_review/ios"
|
||||
launch_review:
|
||||
:path: ".symlinks/plugins/launch_review/ios"
|
||||
package_info:
|
||||
:path: ".symlinks/plugins/package_info/ios"
|
||||
share:
|
||||
:path: ".symlinks/plugins/share/ios"
|
||||
shared_preferences:
|
||||
:path: ".symlinks/plugins/shared_preferences/ios"
|
||||
maps_launcher:
|
||||
:path: ".symlinks/plugins/maps_launcher/ios"
|
||||
package_info_plus:
|
||||
:path: ".symlinks/plugins/package_info_plus/ios"
|
||||
path_provider_ios:
|
||||
:path: ".symlinks/plugins/path_provider_ios/ios"
|
||||
sentry_flutter:
|
||||
:path: ".symlinks/plugins/sentry_flutter/ios"
|
||||
share_plus:
|
||||
:path: ".symlinks/plugins/share_plus/ios"
|
||||
shared_preferences_ios:
|
||||
:path: ".symlinks/plugins/shared_preferences_ios/ios"
|
||||
uni_links:
|
||||
:path: ".symlinks/plugins/uni_links/ios"
|
||||
url_launcher:
|
||||
:path: ".symlinks/plugins/url_launcher/ios"
|
||||
webview_flutter:
|
||||
:path: ".symlinks/plugins/webview_flutter/ios"
|
||||
url_launcher_ios:
|
||||
:path: ".symlinks/plugins/url_launcher_ios/ios"
|
||||
webview_flutter_wkwebview:
|
||||
:path: ".symlinks/plugins/webview_flutter_wkwebview/ios"
|
||||
|
||||
SPEC CHECKSUMS:
|
||||
Flutter: 0e3d915762c693b495b44d77113d4970485de6ec
|
||||
in_app_review: 4a97249f7a2f539a0f294c2d9196b7fe35e49541
|
||||
Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
|
||||
launch_review: 75d5a956ba8eaa493e9c9d4bf4c05e505e8d5ed0
|
||||
package_info: 873975fc26034f0b863a300ad47e7f1ac6c7ec62
|
||||
share: 0b2c3e82132f5888bccca3351c504d0003b3b410
|
||||
shared_preferences: af6bfa751691cdc24be3045c43ec037377ada40d
|
||||
maps_launcher: 2e5b6a2d664ec6c27f82ffa81b74228d770ab203
|
||||
package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e
|
||||
path_provider_ios: 14f3d2fd28c4fdb42f44e0f751d12861c43cee02
|
||||
Sentry: bc644307e2eb6a4c9c55cf117a80b895bb2a25a7
|
||||
sentry_flutter: 649559f0512e00d3f6fc92cf51f74bc2fe68d1d3
|
||||
share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68
|
||||
shared_preferences_ios: 548a61f8053b9b8a49ac19c1ffbc8b92c50d68ad
|
||||
uni_links: d97da20c7701486ba192624d99bffaaffcfc298a
|
||||
url_launcher: 6fef411d543ceb26efce54b05a0a40bfd74cbbef
|
||||
webview_flutter: d2b4d6c66968ad042ad94cbb791f5b72b4678a96
|
||||
url_launcher_ios: 839c58cdb4279282219f5e248c3321761ff3c4de
|
||||
webview_flutter_wkwebview: b7e70ef1ddded7e69c796c7390ee74180182971f
|
||||
|
||||
PODFILE CHECKSUM: aafe91acc616949ddb318b77800a7f51bffa2a4c
|
||||
PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3
|
||||
|
||||
COCOAPODS: 1.10.0
|
||||
COCOAPODS: 1.11.3
|
||||
|
|
|
@ -3,17 +3,17 @@
|
|||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 46;
|
||||
objectVersion = 50;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
|
||||
37EE18F57BCDEA525EB92F36 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B20C9E04554129631AB8EE78 /* Pods_Runner.framework */; };
|
||||
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
|
||||
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
|
||||
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
|
||||
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
|
||||
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
|
||||
FA131E1B3A78EEDD359ED551 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 75205C87EE834F576A3F9103 /* Pods_Runner.framework */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
|
@ -30,14 +30,15 @@
|
|||
/* End PBXCopyFilesBuildPhase section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
03BC239D24FE0B4D9A1D2D83 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
|
||||
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
|
||||
346CC1AE8457DF6B48B85A03 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; };
|
||||
2F67270DBA3C43464E2F44EE /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; };
|
||||
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; };
|
||||
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||
75205C87EE834F576A3F9103 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
|
||||
9220593D71312B73EFB9B261 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; };
|
||||
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; };
|
||||
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; };
|
||||
97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
|
@ -45,8 +46,7 @@
|
|||
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
AE6CD52BC7D64064E7B512FF /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
B20C9E04554129631AB8EE78 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
B984CAF4E26B4FACF6C11EC5 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
|
@ -54,24 +54,13 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
37EE18F57BCDEA525EB92F36 /* Pods_Runner.framework in Frameworks */,
|
||||
FA131E1B3A78EEDD359ED551 /* Pods_Runner.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
2E2AB605F70DF2344A2B9E92 /* Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
AE6CD52BC7D64064E7B512FF /* Pods-Runner.debug.xcconfig */,
|
||||
346CC1AE8457DF6B48B85A03 /* Pods-Runner.release.xcconfig */,
|
||||
03BC239D24FE0B4D9A1D2D83 /* Pods-Runner.profile.xcconfig */,
|
||||
);
|
||||
name = Pods;
|
||||
path = Pods;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
9740EEB11CF90186004384FC /* Flutter */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
|
@ -89,8 +78,8 @@
|
|||
9740EEB11CF90186004384FC /* Flutter */,
|
||||
97C146F01CF9000F007C117D /* Runner */,
|
||||
97C146EF1CF9000F007C117D /* Products */,
|
||||
2E2AB605F70DF2344A2B9E92 /* Pods */,
|
||||
A3B00A29EAF11D6D1B02DEAB /* Frameworks */,
|
||||
A28BA2DF970A8F973E2CD5D0 /* Pods */,
|
||||
B48C5EFD064AE0D1E1B42C23 /* Frameworks */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
|
@ -117,10 +106,21 @@
|
|||
path = Runner;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
A3B00A29EAF11D6D1B02DEAB /* Frameworks */ = {
|
||||
A28BA2DF970A8F973E2CD5D0 /* Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
B20C9E04554129631AB8EE78 /* Pods_Runner.framework */,
|
||||
2F67270DBA3C43464E2F44EE /* Pods-Runner.debug.xcconfig */,
|
||||
9220593D71312B73EFB9B261 /* Pods-Runner.release.xcconfig */,
|
||||
B984CAF4E26B4FACF6C11EC5 /* Pods-Runner.profile.xcconfig */,
|
||||
);
|
||||
name = Pods;
|
||||
path = Pods;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
B48C5EFD064AE0D1E1B42C23 /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
75205C87EE834F576A3F9103 /* Pods_Runner.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
|
@ -132,14 +132,14 @@
|
|||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
|
||||
buildPhases = (
|
||||
CB11531C1F26F7678F621EA7 /* [CP] Check Pods Manifest.lock */,
|
||||
2B6DD7B668196BD9756C3725 /* [CP] Check Pods Manifest.lock */,
|
||||
9740EEB61CF901F6004384FC /* Run Script */,
|
||||
97C146EA1CF9000F007C117D /* Sources */,
|
||||
97C146EB1CF9000F007C117D /* Frameworks */,
|
||||
97C146EC1CF9000F007C117D /* Resources */,
|
||||
9705A1C41CF9048500538489 /* Embed Frameworks */,
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
|
||||
58A5FDDED951DFF2FCF219F9 /* [CP] Embed Pods Frameworks */,
|
||||
C34908B9EA82FDA61F8BDAA0 /* [CP] Embed Pods Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
|
@ -156,7 +156,7 @@
|
|||
97C146E61CF9000F007C117D /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 1020;
|
||||
LastUpgradeCheck = 1300;
|
||||
ORGANIZATIONNAME = "";
|
||||
TargetAttributes = {
|
||||
97C146ED1CF9000F007C117D = {
|
||||
|
@ -198,52 +198,7 @@
|
|||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
name = "Thin Binary";
|
||||
outputPaths = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
|
||||
};
|
||||
58A5FDDED951DFF2FCF219F9 /* [CP] Embed Pods Frameworks */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
9740EEB61CF901F6004384FC /* Run Script */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
name = "Run Script";
|
||||
outputPaths = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
|
||||
};
|
||||
CB11531C1F26F7678F621EA7 /* [CP] Check Pods Manifest.lock */ = {
|
||||
2B6DD7B668196BD9756C3725 /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
|
@ -265,6 +220,51 @@
|
|||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
name = "Thin Binary";
|
||||
outputPaths = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
|
||||
};
|
||||
9740EEB61CF901F6004384FC /* Run Script */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
);
|
||||
name = "Run Script";
|
||||
outputPaths = (
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
|
||||
};
|
||||
C34908B9EA82FDA61F8BDAA0 /* [CP] Embed Pods Frameworks */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
/* End PBXShellScriptBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
|
@ -340,7 +340,7 @@
|
|||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = iphoneos;
|
||||
SUPPORTED_PLATFORMS = iphoneos;
|
||||
|
@ -357,15 +357,10 @@
|
|||
CLANG_ENABLE_MODULES = YES;
|
||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
||||
ENABLE_BITCODE = NO;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/Flutter",
|
||||
);
|
||||
INFOPLIST_FILE = Runner/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/Flutter",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.github.pd4d10.gitTouch;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
@ -422,7 +417,7 @@
|
|||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = iphoneos;
|
||||
|
@ -471,11 +466,12 @@
|
|||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = iphoneos;
|
||||
SUPPORTED_PLATFORMS = iphoneos;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-O";
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
};
|
||||
|
@ -489,15 +485,10 @@
|
|||
CLANG_ENABLE_MODULES = YES;
|
||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
||||
ENABLE_BITCODE = NO;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/Flutter",
|
||||
);
|
||||
INFOPLIST_FILE = Runner/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/Flutter",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.github.pd4d10.gitTouch;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
@ -516,15 +507,10 @@
|
|||
CLANG_ENABLE_MODULES = YES;
|
||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
||||
ENABLE_BITCODE = NO;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/Flutter",
|
||||
);
|
||||
INFOPLIST_FILE = Runner/Info.plist;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
LIBRARY_SEARCH_PATHS = (
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"$(PROJECT_DIR)/Flutter",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = io.github.pd4d10.gitTouch;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
|
|
|
@ -2,6 +2,6 @@
|
|||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "group:Runner.xcodeproj">
|
||||
location = "self:">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDEDidComputeMac32BitWarning</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>PreviewsEnabled</key>
|
||||
<false/>
|
||||
</dict>
|
||||
</plist>
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1020"
|
||||
LastUpgradeVersion = "1300"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
|
@ -27,8 +27,6 @@
|
|||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
|
@ -38,8 +36,8 @@
|
|||
ReferencedContainer = "container:Runner.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
<Testables>
|
||||
</Testables>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
|
@ -61,8 +59,6 @@
|
|||
ReferencedContainer = "container:Runner.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Profile"
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDEDidComputeMac32BitWarning</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>PreviewsEnabled</key>
|
||||
<false/>
|
||||
</dict>
|
||||
</plist>
|
|
@ -4,11 +4,6 @@
|
|||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||
<key>CFBundleLocalizations</key>
|
||||
<array>
|
||||
<string>en</string>
|
||||
<string>hi</string>
|
||||
</array>
|
||||
<key>CFBundleDisplayName</key>
|
||||
<string>GitTouch</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
|
@ -63,5 +58,7 @@
|
|||
</array>
|
||||
<key>UIViewControllerBasedStatusBarAppearance</key>
|
||||
<false/>
|
||||
<key>CADisableMinimumFrameDurationOnPhone</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
|
|
134
lib/app.dart
|
@ -1,81 +1,77 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:git_touch/home.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:git_touch/router.dart';
|
||||
import 'package:intl/locale.dart' as l;
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:flutter_localizations/flutter_localizations.dart';
|
||||
import 'generated/l10n.dart';
|
||||
|
||||
class MyApp extends StatelessWidget {
|
||||
Widget _buildChild(BuildContext context) {
|
||||
final theme = Provider.of<ThemeModel>(context);
|
||||
switch (theme.theme) {
|
||||
case AppThemeType.cupertino:
|
||||
return CupertinoApp(
|
||||
theme: CupertinoThemeData(brightness: theme.brightness),
|
||||
home: Home(),
|
||||
localeResolutionCallback:
|
||||
(Locale locale, Iterable<Locale> supportedLocales) {
|
||||
for (final supportedLocale in supportedLocales) {
|
||||
if (locale.languageCode == supportedLocale.languageCode) {
|
||||
return supportedLocale;
|
||||
}
|
||||
}
|
||||
return supportedLocales.first;
|
||||
},
|
||||
localizationsDelegates: [
|
||||
S.delegate,
|
||||
GlobalMaterialLocalizations.delegate,
|
||||
GlobalWidgetsLocalizations.delegate,
|
||||
GlobalCupertinoLocalizations.delegate,
|
||||
],
|
||||
supportedLocales: [
|
||||
const Locale('en', ''),
|
||||
const Locale('hi', ''),
|
||||
],
|
||||
);
|
||||
default:
|
||||
return MaterialApp(
|
||||
theme: ThemeData(
|
||||
brightness: theme.brightness,
|
||||
primaryColor:
|
||||
theme.brightness == Brightness.dark ? null : Colors.white,
|
||||
accentColor: theme.palette.primary,
|
||||
scaffoldBackgroundColor: theme.palette.background,
|
||||
pageTransitionsTheme: PageTransitionsTheme(
|
||||
builders: {
|
||||
TargetPlatform.android: ZoomPageTransitionsBuilder(),
|
||||
},
|
||||
),
|
||||
),
|
||||
home: Home(),
|
||||
localeResolutionCallback:
|
||||
(Locale locale, Iterable<Locale> supportedLocales) {
|
||||
for (final supportedLocale in supportedLocales) {
|
||||
if (locale.languageCode == supportedLocale.languageCode) {
|
||||
return supportedLocale;
|
||||
}
|
||||
}
|
||||
return supportedLocales.first;
|
||||
},
|
||||
localizationsDelegates: [
|
||||
S.delegate,
|
||||
GlobalMaterialLocalizations.delegate,
|
||||
GlobalWidgetsLocalizations.delegate,
|
||||
GlobalCupertinoLocalizations.delegate,
|
||||
],
|
||||
supportedLocales: [
|
||||
const Locale('en', ''),
|
||||
const Locale('hi', ''),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
const MyApp({super.key});
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final auth = Provider.of<AuthModel>(context);
|
||||
return Container(key: auth.rootKey, child: _buildChild(context));
|
||||
final theme = Provider.of<ThemeModel>(context);
|
||||
|
||||
return AntTheme(
|
||||
key: auth.rootKey,
|
||||
data: AntThemeData(brightness: theme.brightness),
|
||||
child: Builder(
|
||||
builder: (context) {
|
||||
final antTheme = AntTheme.of(context);
|
||||
|
||||
return CupertinoApp.router(
|
||||
routeInformationProvider: router.routeInformationProvider,
|
||||
routeInformationParser: router.routeInformationParser,
|
||||
routerDelegate: router.routerDelegate,
|
||||
theme: CupertinoThemeData(
|
||||
brightness: theme.brightness,
|
||||
primaryColor: antTheme.colorPrimary,
|
||||
scaffoldBackgroundColor: antTheme.colorBox,
|
||||
textTheme: CupertinoTextThemeData(
|
||||
textStyle: TextStyle(
|
||||
fontSize: antTheme.fontSizeMain,
|
||||
color: antTheme.colorText,
|
||||
),
|
||||
),
|
||||
),
|
||||
localizationsDelegates: AppLocalizations.localizationsDelegates,
|
||||
supportedLocales: AppLocalizations.supportedLocales,
|
||||
localeListResolutionCallback: (locales, supportedLocales) {
|
||||
// 1. user set locale
|
||||
// 2. system locale
|
||||
try {
|
||||
if (theme.locale != null) {
|
||||
final intlLocale = l.Locale.parse(theme.locale!);
|
||||
locales = [
|
||||
Locale.fromSubtags(
|
||||
languageCode: intlLocale.languageCode,
|
||||
countryCode: intlLocale.countryCode,
|
||||
scriptCode: intlLocale.scriptCode,
|
||||
),
|
||||
...locales!
|
||||
];
|
||||
}
|
||||
} catch (err) {
|
||||
print(err);
|
||||
}
|
||||
|
||||
for (final locale in locales!) {
|
||||
// this is necessary because Flutter only handles zh_Hans -> zh
|
||||
// and would not handle non-exist language code
|
||||
if (AppLocalizations.delegate.isSupported(locale)) {
|
||||
return locale;
|
||||
}
|
||||
}
|
||||
|
||||
// 3. if none match, use the default
|
||||
return supportedLocales.firstWhere((l) => l.languageCode == 'en');
|
||||
},
|
||||
);
|
||||
},
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,66 +0,0 @@
|
|||
// DO NOT EDIT. This is code generated via package:intl/generate_localized.dart
|
||||
// This is a library that looks up messages for specific locales by
|
||||
// delegating to the appropriate library.
|
||||
|
||||
// Ignore issues from commonly used lints in this file.
|
||||
// ignore_for_file:implementation_imports, file_names, unnecessary_new
|
||||
// ignore_for_file:unnecessary_brace_in_string_interps, directives_ordering
|
||||
// ignore_for_file:argument_type_not_assignable, invalid_assignment
|
||||
// ignore_for_file:prefer_single_quotes, prefer_generic_function_type_aliases
|
||||
// ignore_for_file:comment_references
|
||||
|
||||
import 'dart:async';
|
||||
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:intl/message_lookup_by_library.dart';
|
||||
import 'package:intl/src/intl_helpers.dart';
|
||||
|
||||
import 'messages_en.dart' as messages_en;
|
||||
import 'messages_hi.dart' as messages_hi;
|
||||
|
||||
typedef Future<dynamic> LibraryLoader();
|
||||
Map<String, LibraryLoader> _deferredLibraries = {
|
||||
'en': () => new Future.value(null),
|
||||
'hi': () => new Future.value(null),
|
||||
};
|
||||
|
||||
MessageLookupByLibrary _findExact(String localeName) {
|
||||
switch (localeName) {
|
||||
case 'en':
|
||||
return messages_en.messages;
|
||||
case 'hi':
|
||||
return messages_hi.messages;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/// User programs should call this before using [localeName] for messages.
|
||||
Future<bool> initializeMessages(String localeName) async {
|
||||
var availableLocale = Intl.verifiedLocale(
|
||||
localeName, (locale) => _deferredLibraries[locale] != null,
|
||||
onFailure: (_) => null);
|
||||
if (availableLocale == null) {
|
||||
return new Future.value(false);
|
||||
}
|
||||
var lib = _deferredLibraries[availableLocale];
|
||||
await (lib == null ? new Future.value(false) : lib());
|
||||
initializeInternalMessageLookup(() => new CompositeMessageLookup());
|
||||
messageLookup.addLocale(availableLocale, _findGeneratedMessagesFor);
|
||||
return new Future.value(true);
|
||||
}
|
||||
|
||||
bool _messagesExistFor(String locale) {
|
||||
try {
|
||||
return _findExact(locale) != null;
|
||||
} catch (e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
MessageLookupByLibrary _findGeneratedMessagesFor(String locale) {
|
||||
var actualLocale =
|
||||
Intl.verifiedLocale(locale, _messagesExistFor, onFailure: (_) => null);
|
||||
if (actualLocale == null) return null;
|
||||
return _findExact(actualLocale);
|
||||
}
|
|
@ -1,127 +0,0 @@
|
|||
// DO NOT EDIT. This is code generated via package:intl/generate_localized.dart
|
||||
// This is a library that provides messages for a en locale. All the
|
||||
// messages from the main program should be duplicated here with the same
|
||||
// function name.
|
||||
|
||||
// Ignore issues from commonly used lints in this file.
|
||||
// ignore_for_file:unnecessary_brace_in_string_interps, unnecessary_new
|
||||
// ignore_for_file:prefer_single_quotes,comment_references, directives_ordering
|
||||
// ignore_for_file:annotate_overrides,prefer_generic_function_type_aliases
|
||||
// ignore_for_file:unused_import, file_names
|
||||
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:intl/message_lookup_by_library.dart';
|
||||
|
||||
final messages = new MessageLookup();
|
||||
|
||||
typedef String MessageIfAbsent(String messageStr, List<dynamic> args);
|
||||
|
||||
class MessageLookup extends MessageLookupByLibrary {
|
||||
String get localeName => 'en';
|
||||
|
||||
final messages = _notInlinedMessages(_notInlinedMessages);
|
||||
static _notInlinedMessages(_) => <String, Function>{
|
||||
"about": MessageLookupByLibrary.simpleMessage("about"),
|
||||
"actions": MessageLookupByLibrary.simpleMessage("Actions"),
|
||||
"activity": MessageLookupByLibrary.simpleMessage("Activity"),
|
||||
"all": MessageLookupByLibrary.simpleMessage("All"),
|
||||
"bitbucketAccount":
|
||||
MessageLookupByLibrary.simpleMessage("Bitbucket Account"),
|
||||
"branches": MessageLookupByLibrary.simpleMessage("Branches"),
|
||||
"brightness": MessageLookupByLibrary.simpleMessage("Brightness"),
|
||||
"code": MessageLookupByLibrary.simpleMessage("Code"),
|
||||
"codeTheme": MessageLookupByLibrary.simpleMessage("Code Theme"),
|
||||
"commits": MessageLookupByLibrary.simpleMessage("Commits"),
|
||||
"contributors": MessageLookupByLibrary.simpleMessage("Contributors"),
|
||||
"cupertino": MessageLookupByLibrary.simpleMessage("Cupertino"),
|
||||
"dark": MessageLookupByLibrary.simpleMessage("Dark"),
|
||||
"developers": MessageLookupByLibrary.simpleMessage("Developers"),
|
||||
"email": MessageLookupByLibrary.simpleMessage("Email"),
|
||||
"events": MessageLookupByLibrary.simpleMessage("Events"),
|
||||
"explore": MessageLookupByLibrary.simpleMessage("Explore"),
|
||||
"feedback": MessageLookupByLibrary.simpleMessage("feedback"),
|
||||
"file": MessageLookupByLibrary.simpleMessage("File"),
|
||||
"files": MessageLookupByLibrary.simpleMessage("Files"),
|
||||
"flutter": MessageLookupByLibrary.simpleMessage("Flutter"),
|
||||
"follow": MessageLookupByLibrary.simpleMessage("Follow"),
|
||||
"followSystem": MessageLookupByLibrary.simpleMessage("Follow System"),
|
||||
"followers": MessageLookupByLibrary.simpleMessage("Followers"),
|
||||
"following": MessageLookupByLibrary.simpleMessage("Following"),
|
||||
"fontFamily": MessageLookupByLibrary.simpleMessage("Font Family"),
|
||||
"fontSize": MessageLookupByLibrary.simpleMessage("Font Size"),
|
||||
"fontStyle": MessageLookupByLibrary.simpleMessage("FONT STYLE"),
|
||||
"forks": MessageLookupByLibrary.simpleMessage("Forks"),
|
||||
"gists": MessageLookupByLibrary.simpleMessage("Gists"),
|
||||
"giteaAccount": MessageLookupByLibrary.simpleMessage("Gitee Account"),
|
||||
"giteaStatus": MessageLookupByLibrary.simpleMessage("Gitea status"),
|
||||
"giteeAccount": MessageLookupByLibrary.simpleMessage("Gitee Account"),
|
||||
"githubAccount": MessageLookupByLibrary.simpleMessage("GitHub Account"),
|
||||
"githubStatus": MessageLookupByLibrary.simpleMessage("GitHub status"),
|
||||
"gitlabAccount": MessageLookupByLibrary.simpleMessage("GitLab Account"),
|
||||
"gitlabStatus": MessageLookupByLibrary.simpleMessage("GitLab status"),
|
||||
"group": MessageLookupByLibrary.simpleMessage("Group"),
|
||||
"groups": MessageLookupByLibrary.simpleMessage("Groups"),
|
||||
"helloWorld": MessageLookupByLibrary.simpleMessage("Hello World!"),
|
||||
"issue": MessageLookupByLibrary.simpleMessage("Issue"),
|
||||
"issues": MessageLookupByLibrary.simpleMessage("Issues"),
|
||||
"light": MessageLookupByLibrary.simpleMessage("Light"),
|
||||
"longPressToRemoveAccount": MessageLookupByLibrary.simpleMessage(
|
||||
"Long Press to remove account"),
|
||||
"markdownRenderEngine":
|
||||
MessageLookupByLibrary.simpleMessage("Markdown Render Engine"),
|
||||
"material": MessageLookupByLibrary.simpleMessage("Material"),
|
||||
"me": MessageLookupByLibrary.simpleMessage("Me"),
|
||||
"members": MessageLookupByLibrary.simpleMessage("Members"),
|
||||
"mergeRequests": MessageLookupByLibrary.simpleMessage("Merge Requests"),
|
||||
"news": MessageLookupByLibrary.simpleMessage("News"),
|
||||
"notFoundMessage": MessageLookupByLibrary.simpleMessage("Not Found"),
|
||||
"notFoundTextDisplay": MessageLookupByLibrary.simpleMessage(
|
||||
"Woops, This page is not implemented yet"),
|
||||
"notification": MessageLookupByLibrary.simpleMessage("Notification"),
|
||||
"organizations": MessageLookupByLibrary.simpleMessage("Organizations"),
|
||||
"participating": MessageLookupByLibrary.simpleMessage("Participating"),
|
||||
"permissionRequiredMessage": MessageLookupByLibrary.simpleMessage(
|
||||
"GitTouch needs these permissions"),
|
||||
"pinnedRepositories":
|
||||
MessageLookupByLibrary.simpleMessage("pinned repositories"),
|
||||
"popularRepositories":
|
||||
MessageLookupByLibrary.simpleMessage("popular repositories"),
|
||||
"project": MessageLookupByLibrary.simpleMessage("Project"),
|
||||
"projectActions":
|
||||
MessageLookupByLibrary.simpleMessage("Project Actions"),
|
||||
"projects": MessageLookupByLibrary.simpleMessage("Projects"),
|
||||
"pullRequests": MessageLookupByLibrary.simpleMessage("Pull requests"),
|
||||
"rateThisApp": MessageLookupByLibrary.simpleMessage("Rate This App"),
|
||||
"releases": MessageLookupByLibrary.simpleMessage("Releases"),
|
||||
"removeAccount": MessageLookupByLibrary.simpleMessage("Remove account"),
|
||||
"repositories": MessageLookupByLibrary.simpleMessage("Repositories"),
|
||||
"repository": MessageLookupByLibrary.simpleMessage("Repository"),
|
||||
"repositoryActions":
|
||||
MessageLookupByLibrary.simpleMessage("Repository Actions"),
|
||||
"reviewPermissions":
|
||||
MessageLookupByLibrary.simpleMessage("Review Permissions"),
|
||||
"scaffoldTheme": MessageLookupByLibrary.simpleMessage("Scaffold Theme"),
|
||||
"search": MessageLookupByLibrary.simpleMessage("Search"),
|
||||
"selectAccount": MessageLookupByLibrary.simpleMessage("Select account"),
|
||||
"settings": MessageLookupByLibrary.simpleMessage("Settings"),
|
||||
"somethingBadHappens":
|
||||
MessageLookupByLibrary.simpleMessage("Something bad happens:"),
|
||||
"sourceCode": MessageLookupByLibrary.simpleMessage("Source Code"),
|
||||
"stars": MessageLookupByLibrary.simpleMessage("Stars"),
|
||||
"submitAnIssue":
|
||||
MessageLookupByLibrary.simpleMessage("Submit an issue"),
|
||||
"switchAccounts":
|
||||
MessageLookupByLibrary.simpleMessage("Switch accounts"),
|
||||
"syntaxHighlighting":
|
||||
MessageLookupByLibrary.simpleMessage("SYNTAX HIGHLIGHTING"),
|
||||
"system": MessageLookupByLibrary.simpleMessage("system"),
|
||||
"teams": MessageLookupByLibrary.simpleMessage("Teams"),
|
||||
"trending": MessageLookupByLibrary.simpleMessage("Trending"),
|
||||
"unfollow": MessageLookupByLibrary.simpleMessage("Unfollow"),
|
||||
"unread": MessageLookupByLibrary.simpleMessage("Unread"),
|
||||
"user": MessageLookupByLibrary.simpleMessage("User"),
|
||||
"version": MessageLookupByLibrary.simpleMessage("Version"),
|
||||
"watchers": MessageLookupByLibrary.simpleMessage("Watchers"),
|
||||
"webview": MessageLookupByLibrary.simpleMessage("WebView")
|
||||
};
|
||||
}
|
|
@ -1,130 +0,0 @@
|
|||
// DO NOT EDIT. This is code generated via package:intl/generate_localized.dart
|
||||
// This is a library that provides messages for a hi locale. All the
|
||||
// messages from the main program should be duplicated here with the same
|
||||
// function name.
|
||||
|
||||
// Ignore issues from commonly used lints in this file.
|
||||
// ignore_for_file:unnecessary_brace_in_string_interps, unnecessary_new
|
||||
// ignore_for_file:prefer_single_quotes,comment_references, directives_ordering
|
||||
// ignore_for_file:annotate_overrides,prefer_generic_function_type_aliases
|
||||
// ignore_for_file:unused_import, file_names
|
||||
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:intl/message_lookup_by_library.dart';
|
||||
|
||||
final messages = new MessageLookup();
|
||||
|
||||
typedef String MessageIfAbsent(String messageStr, List<dynamic> args);
|
||||
|
||||
class MessageLookup extends MessageLookupByLibrary {
|
||||
String get localeName => 'hi';
|
||||
|
||||
final messages = _notInlinedMessages(_notInlinedMessages);
|
||||
static _notInlinedMessages(_) => <String, Function>{
|
||||
"about": MessageLookupByLibrary.simpleMessage("एप्लिकेशन के बारे में"),
|
||||
"actions": MessageLookupByLibrary.simpleMessage("कार्रवाई"),
|
||||
"activity": MessageLookupByLibrary.simpleMessage("गतिविधि"),
|
||||
"all": MessageLookupByLibrary.simpleMessage("सब"),
|
||||
"bitbucketAccount":
|
||||
MessageLookupByLibrary.simpleMessage("बीटबुकेत खाता"),
|
||||
"branches": MessageLookupByLibrary.simpleMessage("ब्रांच"),
|
||||
"brightness": MessageLookupByLibrary.simpleMessage("द्य्रुति"),
|
||||
"code": MessageLookupByLibrary.simpleMessage("कोड"),
|
||||
"codeTheme": MessageLookupByLibrary.simpleMessage("कोड थीम"),
|
||||
"commits": MessageLookupByLibrary.simpleMessage("कमिटस"),
|
||||
"contributors": MessageLookupByLibrary.simpleMessage("योगदानकर्ताओं"),
|
||||
"cupertino": MessageLookupByLibrary.simpleMessage("क्यूपर्टिनो थीम"),
|
||||
"dark": MessageLookupByLibrary.simpleMessage("अंधेरा मोड"),
|
||||
"developers": MessageLookupByLibrary.simpleMessage("डेवेलपर्स"),
|
||||
"email": MessageLookupByLibrary.simpleMessage("ईमेल"),
|
||||
"events": MessageLookupByLibrary.simpleMessage("इवेंट्स"),
|
||||
"explore": MessageLookupByLibrary.simpleMessage("अन्वेषण"),
|
||||
"feedback": MessageLookupByLibrary.simpleMessage("फीडबैक"),
|
||||
"file": MessageLookupByLibrary.simpleMessage("फ़ाइल"),
|
||||
"files": MessageLookupByLibrary.simpleMessage("फ़ाइलें"),
|
||||
"flutter": MessageLookupByLibrary.simpleMessage("फ्लटर"),
|
||||
"follow": MessageLookupByLibrary.simpleMessage("फ़ोल्लोव"),
|
||||
"followSystem":
|
||||
MessageLookupByLibrary.simpleMessage("सिस्टम का पालन करें"),
|
||||
"followers": MessageLookupByLibrary.simpleMessage("अनुयायियों"),
|
||||
"following": MessageLookupByLibrary.simpleMessage("फोल्लोविंग"),
|
||||
"fontFamily": MessageLookupByLibrary.simpleMessage("फॉण्ट परिवार"),
|
||||
"fontSize": MessageLookupByLibrary.simpleMessage("फॉण्ट आकार"),
|
||||
"fontStyle": MessageLookupByLibrary.simpleMessage("फॉण्ट प्रकार"),
|
||||
"forks": MessageLookupByLibrary.simpleMessage("फोर्क्स"),
|
||||
"gists": MessageLookupByLibrary.simpleMessage("गिस्ट्स"),
|
||||
"giteaAccount": MessageLookupByLibrary.simpleMessage("गीते खाता"),
|
||||
"giteaStatus": MessageLookupByLibrary.simpleMessage("गीते स्टेटस"),
|
||||
"giteeAccount": MessageLookupByLibrary.simpleMessage("जीती खाता"),
|
||||
"githubAccount": MessageLookupByLibrary.simpleMessage("गिटहब खाता"),
|
||||
"githubStatus": MessageLookupByLibrary.simpleMessage("गिटहब स्टेटस"),
|
||||
"gitlabAccount": MessageLookupByLibrary.simpleMessage("गितलब खाता"),
|
||||
"gitlabStatus": MessageLookupByLibrary.simpleMessage("गितलब स्टेटस"),
|
||||
"group": MessageLookupByLibrary.simpleMessage("समूह"),
|
||||
"groups": MessageLookupByLibrary.simpleMessage("समूहों"),
|
||||
"helloWorld": MessageLookupByLibrary.simpleMessage("नमस्ते दुनिया"),
|
||||
"issue": MessageLookupByLibrary.simpleMessage("मुद्दा"),
|
||||
"issues": MessageLookupByLibrary.simpleMessage("मुद्दे"),
|
||||
"light": MessageLookupByLibrary.simpleMessage("प्रकाश मोड"),
|
||||
"longPressToRemoveAccount": MessageLookupByLibrary.simpleMessage(
|
||||
"खाता हटाने के लिए लंबी प्रेस"),
|
||||
"markdownRenderEngine":
|
||||
MessageLookupByLibrary.simpleMessage("मार्कडौं रेंडर इंजन"),
|
||||
"material": MessageLookupByLibrary.simpleMessage("मटेरियल थीम"),
|
||||
"me": MessageLookupByLibrary.simpleMessage("मैं"),
|
||||
"members": MessageLookupByLibrary.simpleMessage("संगठन"),
|
||||
"mergeRequests": MessageLookupByLibrary.simpleMessage("मर्ज निवेदन"),
|
||||
"news": MessageLookupByLibrary.simpleMessage("समाचार"),
|
||||
"notFoundMessage": MessageLookupByLibrary.simpleMessage("नहीं मिला"),
|
||||
"notFoundTextDisplay": MessageLookupByLibrary.simpleMessage(
|
||||
"यह पृष्ठ कार्यान्वित नहीं है"),
|
||||
"notification": MessageLookupByLibrary.simpleMessage("अधिसूचना"),
|
||||
"organizations": MessageLookupByLibrary.simpleMessage("संगठन"),
|
||||
"participating": MessageLookupByLibrary.simpleMessage("भाग लेने वाले"),
|
||||
"permissionRequiredMessage": MessageLookupByLibrary.simpleMessage(
|
||||
"गिट्टूच के लीये इन अनुमतियों की आवश्यकता है"),
|
||||
"pinnedRepositories":
|
||||
MessageLookupByLibrary.simpleMessage("पिन्नेद रेपोसिटोरिएस"),
|
||||
"popularRepositories":
|
||||
MessageLookupByLibrary.simpleMessage("प्रसिद्ध रेपोसिटोरिएस"),
|
||||
"project": MessageLookupByLibrary.simpleMessage("परियोजना"),
|
||||
"projectActions":
|
||||
MessageLookupByLibrary.simpleMessage("परियोजना की कार्रवाई"),
|
||||
"projects": MessageLookupByLibrary.simpleMessage("परियोजनाओं"),
|
||||
"pullRequests":
|
||||
MessageLookupByLibrary.simpleMessage("पुल्ल रिक्वेस्ट्स"),
|
||||
"rateThisApp":
|
||||
MessageLookupByLibrary.simpleMessage("इस ऐप्लिकेशन को रेट करे"),
|
||||
"releases": MessageLookupByLibrary.simpleMessage("रेलसेस"),
|
||||
"removeAccount": MessageLookupByLibrary.simpleMessage("खाता हटाएं"),
|
||||
"repositories": MessageLookupByLibrary.simpleMessage("रेपोसिटोरिएस"),
|
||||
"repository": MessageLookupByLibrary.simpleMessage("रिपॉजिटरी"),
|
||||
"repositoryActions":
|
||||
MessageLookupByLibrary.simpleMessage("रिपॉजिटरी कार्रवाई"),
|
||||
"reviewPermissions":
|
||||
MessageLookupByLibrary.simpleMessage("अनुमति की समीक्षा करें"),
|
||||
"scaffoldTheme": MessageLookupByLibrary.simpleMessage("स्कैफफोल्ड थीम"),
|
||||
"search": MessageLookupByLibrary.simpleMessage("खोज"),
|
||||
"selectAccount": MessageLookupByLibrary.simpleMessage("खाता चुनें"),
|
||||
"settings": MessageLookupByLibrary.simpleMessage("सेटिंग्स"),
|
||||
"somethingBadHappens":
|
||||
MessageLookupByLibrary.simpleMessage("त्रुटि हुई है: "),
|
||||
"sourceCode":
|
||||
MessageLookupByLibrary.simpleMessage("एप्लिकेशन स्रोत कोड"),
|
||||
"stars": MessageLookupByLibrary.simpleMessage("स्टार्स"),
|
||||
"submitAnIssue":
|
||||
MessageLookupByLibrary.simpleMessage("एक मुद्दा प्रस्तुत करें"),
|
||||
"switchAccounts": MessageLookupByLibrary.simpleMessage("खाते बदलें"),
|
||||
"syntaxHighlighting":
|
||||
MessageLookupByLibrary.simpleMessage("सिंटेक्स हाइलाइटिंग"),
|
||||
"system": MessageLookupByLibrary.simpleMessage("सिस्टम"),
|
||||
"teams": MessageLookupByLibrary.simpleMessage("टीमों"),
|
||||
"trending": MessageLookupByLibrary.simpleMessage("ट्रेंडिंग"),
|
||||
"unfollow": MessageLookupByLibrary.simpleMessage("अनफ़ॉलो"),
|
||||
"unread": MessageLookupByLibrary.simpleMessage("अपठित"),
|
||||
"user": MessageLookupByLibrary.simpleMessage("उपयोगकर्ता"),
|
||||
"version": MessageLookupByLibrary.simpleMessage("एप्लिकेशन वेरीज़न"),
|
||||
"watchers": MessageLookupByLibrary.simpleMessage("नजर रखने वालों"),
|
||||
"webview": MessageLookupByLibrary.simpleMessage("वेब्वयेव")
|
||||
};
|
||||
}
|
|
@ -1,947 +0,0 @@
|
|||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
import 'intl/messages_all.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// Generator: Flutter Intl IDE plugin
|
||||
// Made by Localizely
|
||||
// **************************************************************************
|
||||
|
||||
// ignore_for_file: non_constant_identifier_names, lines_longer_than_80_chars
|
||||
// ignore_for_file: join_return_with_assignment, prefer_final_in_for_each
|
||||
// ignore_for_file: avoid_redundant_argument_values
|
||||
|
||||
class S {
|
||||
S();
|
||||
|
||||
static S current;
|
||||
|
||||
static const AppLocalizationDelegate delegate = AppLocalizationDelegate();
|
||||
|
||||
static Future<S> load(Locale locale) {
|
||||
final name = (locale.countryCode?.isEmpty ?? false)
|
||||
? locale.languageCode
|
||||
: locale.toString();
|
||||
final localeName = Intl.canonicalizedLocale(name);
|
||||
return initializeMessages(localeName).then((_) {
|
||||
Intl.defaultLocale = localeName;
|
||||
S.current = S();
|
||||
|
||||
return S.current;
|
||||
});
|
||||
}
|
||||
|
||||
static S of(BuildContext context) {
|
||||
return Localizations.of<S>(context, S);
|
||||
}
|
||||
|
||||
/// `Hello World!`
|
||||
String get helloWorld {
|
||||
return Intl.message(
|
||||
'Hello World!',
|
||||
name: 'helloWorld',
|
||||
desc: 'The conventional newborn programmer greeting',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `News`
|
||||
String get news {
|
||||
return Intl.message(
|
||||
'News',
|
||||
name: 'news',
|
||||
desc: 'The News tab',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Notification`
|
||||
String get notification {
|
||||
return Intl.message(
|
||||
'Notification',
|
||||
name: 'notification',
|
||||
desc: 'The Notification tab',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Trending`
|
||||
String get trending {
|
||||
return Intl.message(
|
||||
'Trending',
|
||||
name: 'trending',
|
||||
desc: 'Trending',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Search`
|
||||
String get search {
|
||||
return Intl.message(
|
||||
'Search',
|
||||
name: 'search',
|
||||
desc: 'The Search tab',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Me`
|
||||
String get me {
|
||||
return Intl.message(
|
||||
'Me',
|
||||
name: 'me',
|
||||
desc: 'The Me tab',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Participating`
|
||||
String get participating {
|
||||
return Intl.message(
|
||||
'Participating',
|
||||
name: 'participating',
|
||||
desc: 'The participating Tab',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Repositories`
|
||||
String get repositories {
|
||||
return Intl.message(
|
||||
'Repositories',
|
||||
name: 'repositories',
|
||||
desc: 'repository text',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Unfollow`
|
||||
String get unfollow {
|
||||
return Intl.message(
|
||||
'Unfollow',
|
||||
name: 'unfollow',
|
||||
desc: 'unfollow someone',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Follow`
|
||||
String get follow {
|
||||
return Intl.message(
|
||||
'Follow',
|
||||
name: 'follow',
|
||||
desc: 'follow someone',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Stars`
|
||||
String get stars {
|
||||
return Intl.message(
|
||||
'Stars',
|
||||
name: 'stars',
|
||||
desc: 'stars on a repo',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Followers`
|
||||
String get followers {
|
||||
return Intl.message(
|
||||
'Followers',
|
||||
name: 'followers',
|
||||
desc: 'followers for a person',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Following`
|
||||
String get following {
|
||||
return Intl.message(
|
||||
'Following',
|
||||
name: 'following',
|
||||
desc: 'people followed by a person',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Events`
|
||||
String get events {
|
||||
return Intl.message(
|
||||
'Events',
|
||||
name: 'events',
|
||||
desc: 'events for a user',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Gists`
|
||||
String get gists {
|
||||
return Intl.message(
|
||||
'Gists',
|
||||
name: 'gists',
|
||||
desc: 'gists for a user',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Organizations`
|
||||
String get organizations {
|
||||
return Intl.message(
|
||||
'Organizations',
|
||||
name: 'organizations',
|
||||
desc: 'organizations for a user',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Members`
|
||||
String get members {
|
||||
return Intl.message(
|
||||
'Members',
|
||||
name: 'members',
|
||||
desc: 'members of an organization',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `popular repositories`
|
||||
String get popularRepositories {
|
||||
return Intl.message(
|
||||
'popular repositories',
|
||||
name: 'popularRepositories',
|
||||
desc: 'popular repositories',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `pinned repositories`
|
||||
String get pinnedRepositories {
|
||||
return Intl.message(
|
||||
'pinned repositories',
|
||||
name: 'pinnedRepositories',
|
||||
desc: 'pinned repositories',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Settings`
|
||||
String get settings {
|
||||
return Intl.message(
|
||||
'Settings',
|
||||
name: 'settings',
|
||||
desc: 'settings',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `system`
|
||||
String get system {
|
||||
return Intl.message(
|
||||
'system',
|
||||
name: 'system',
|
||||
desc: 'system',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `GitHub status`
|
||||
String get githubStatus {
|
||||
return Intl.message(
|
||||
'GitHub status',
|
||||
name: 'githubStatus',
|
||||
desc: 'github status',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Review Permissions`
|
||||
String get reviewPermissions {
|
||||
return Intl.message(
|
||||
'Review Permissions',
|
||||
name: 'reviewPermissions',
|
||||
desc: 'review Permissions',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `GitLab status`
|
||||
String get gitlabStatus {
|
||||
return Intl.message(
|
||||
'GitLab status',
|
||||
name: 'gitlabStatus',
|
||||
desc: 'GitLab status',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Gitea status`
|
||||
String get giteaStatus {
|
||||
return Intl.message(
|
||||
'Gitea status',
|
||||
name: 'giteaStatus',
|
||||
desc: 'Gitea status',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Switch accounts`
|
||||
String get switchAccounts {
|
||||
return Intl.message(
|
||||
'Switch accounts',
|
||||
name: 'switchAccounts',
|
||||
desc: 'Switch accounts',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Brightness`
|
||||
String get brightness {
|
||||
return Intl.message(
|
||||
'Brightness',
|
||||
name: 'brightness',
|
||||
desc: 'brightness',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Follow System`
|
||||
String get followSystem {
|
||||
return Intl.message(
|
||||
'Follow System',
|
||||
name: 'followSystem',
|
||||
desc: 'follow systems setting',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Light`
|
||||
String get light {
|
||||
return Intl.message(
|
||||
'Light',
|
||||
name: 'light',
|
||||
desc: 'light mode',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Dark`
|
||||
String get dark {
|
||||
return Intl.message(
|
||||
'Dark',
|
||||
name: 'dark',
|
||||
desc: 'dark mode',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Scaffold Theme`
|
||||
String get scaffoldTheme {
|
||||
return Intl.message(
|
||||
'Scaffold Theme',
|
||||
name: 'scaffoldTheme',
|
||||
desc: 'Kind of theme - cupertino or material',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Cupertino`
|
||||
String get cupertino {
|
||||
return Intl.message(
|
||||
'Cupertino',
|
||||
name: 'cupertino',
|
||||
desc: 'Cupertino scaffold theme',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Material`
|
||||
String get material {
|
||||
return Intl.message(
|
||||
'Material',
|
||||
name: 'material',
|
||||
desc: 'Material scaffold theme',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Code Theme`
|
||||
String get codeTheme {
|
||||
return Intl.message(
|
||||
'Code Theme',
|
||||
name: 'codeTheme',
|
||||
desc: 'code theme',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Markdown Render Engine`
|
||||
String get markdownRenderEngine {
|
||||
return Intl.message(
|
||||
'Markdown Render Engine',
|
||||
name: 'markdownRenderEngine',
|
||||
desc: 'flutter or webview rendering for markdown',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Flutter`
|
||||
String get flutter {
|
||||
return Intl.message(
|
||||
'Flutter',
|
||||
name: 'flutter',
|
||||
desc: 'render flutter for markdown',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `WebView`
|
||||
String get webview {
|
||||
return Intl.message(
|
||||
'WebView',
|
||||
name: 'webview',
|
||||
desc: 'render webview for markdown',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `feedback`
|
||||
String get feedback {
|
||||
return Intl.message(
|
||||
'feedback',
|
||||
name: 'feedback',
|
||||
desc: 'provide feedback',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Submit an issue`
|
||||
String get submitAnIssue {
|
||||
return Intl.message(
|
||||
'Submit an issue',
|
||||
name: 'submitAnIssue',
|
||||
desc: 'submit issue for app',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Rate This App`
|
||||
String get rateThisApp {
|
||||
return Intl.message(
|
||||
'Rate This App',
|
||||
name: 'rateThisApp',
|
||||
desc: 'rate the app',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Email`
|
||||
String get email {
|
||||
return Intl.message(
|
||||
'Email',
|
||||
name: 'email',
|
||||
desc: 'Email to report issues',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `about`
|
||||
String get about {
|
||||
return Intl.message(
|
||||
'about',
|
||||
name: 'about',
|
||||
desc: 'about section',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Version`
|
||||
String get version {
|
||||
return Intl.message(
|
||||
'Version',
|
||||
name: 'version',
|
||||
desc: 'app version',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Source Code`
|
||||
String get sourceCode {
|
||||
return Intl.message(
|
||||
'Source Code',
|
||||
name: 'sourceCode',
|
||||
desc: 'source code for app',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Repository`
|
||||
String get repository {
|
||||
return Intl.message(
|
||||
'Repository',
|
||||
name: 'repository',
|
||||
desc: 'Repository screen title',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Repository Actions`
|
||||
String get repositoryActions {
|
||||
return Intl.message(
|
||||
'Repository Actions',
|
||||
name: 'repositoryActions',
|
||||
desc: 'Repository Actions',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Projects`
|
||||
String get projects {
|
||||
return Intl.message(
|
||||
'Projects',
|
||||
name: 'projects',
|
||||
desc: 'projects',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Releases`
|
||||
String get releases {
|
||||
return Intl.message(
|
||||
'Releases',
|
||||
name: 'releases',
|
||||
desc: 'releases',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Watchers`
|
||||
String get watchers {
|
||||
return Intl.message(
|
||||
'Watchers',
|
||||
name: 'watchers',
|
||||
desc: 'watchers',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Forks`
|
||||
String get forks {
|
||||
return Intl.message(
|
||||
'Forks',
|
||||
name: 'forks',
|
||||
desc: 'forks',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Issues`
|
||||
String get issues {
|
||||
return Intl.message(
|
||||
'Issues',
|
||||
name: 'issues',
|
||||
desc: 'issues',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Pull requests`
|
||||
String get pullRequests {
|
||||
return Intl.message(
|
||||
'Pull requests',
|
||||
name: 'pullRequests',
|
||||
desc: 'Pull Requests',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Commits`
|
||||
String get commits {
|
||||
return Intl.message(
|
||||
'Commits',
|
||||
name: 'commits',
|
||||
desc: 'Commits',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Branches`
|
||||
String get branches {
|
||||
return Intl.message(
|
||||
'Branches',
|
||||
name: 'branches',
|
||||
desc: 'branches',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Contributors`
|
||||
String get contributors {
|
||||
return Intl.message(
|
||||
'Contributors',
|
||||
name: 'contributors',
|
||||
desc: 'contributors',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Unread`
|
||||
String get unread {
|
||||
return Intl.message(
|
||||
'Unread',
|
||||
name: 'unread',
|
||||
desc: 'unread',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `All`
|
||||
String get all {
|
||||
return Intl.message(
|
||||
'All',
|
||||
name: 'all',
|
||||
desc: 'all',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Developers`
|
||||
String get developers {
|
||||
return Intl.message(
|
||||
'Developers',
|
||||
name: 'developers',
|
||||
desc: 'developers',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Explore`
|
||||
String get explore {
|
||||
return Intl.message(
|
||||
'Explore',
|
||||
name: 'explore',
|
||||
desc: 'explore',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Teams`
|
||||
String get teams {
|
||||
return Intl.message(
|
||||
'Teams',
|
||||
name: 'teams',
|
||||
desc: 'teams',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `File`
|
||||
String get file {
|
||||
return Intl.message(
|
||||
'File',
|
||||
name: 'file',
|
||||
desc: 'file',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Files`
|
||||
String get files {
|
||||
return Intl.message(
|
||||
'Files',
|
||||
name: 'files',
|
||||
desc: 'file plural',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Actions`
|
||||
String get actions {
|
||||
return Intl.message(
|
||||
'Actions',
|
||||
name: 'actions',
|
||||
desc: 'actions',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Groups`
|
||||
String get groups {
|
||||
return Intl.message(
|
||||
'Groups',
|
||||
name: 'groups',
|
||||
desc: 'groups',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Merge Requests`
|
||||
String get mergeRequests {
|
||||
return Intl.message(
|
||||
'Merge Requests',
|
||||
name: 'mergeRequests',
|
||||
desc: 'Merge request',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Activity`
|
||||
String get activity {
|
||||
return Intl.message(
|
||||
'Activity',
|
||||
name: 'activity',
|
||||
desc: 'activity',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Project`
|
||||
String get project {
|
||||
return Intl.message(
|
||||
'Project',
|
||||
name: 'project',
|
||||
desc: 'project',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Select account`
|
||||
String get selectAccount {
|
||||
return Intl.message(
|
||||
'Select account',
|
||||
name: 'selectAccount',
|
||||
desc: 'select account message',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Remove account`
|
||||
String get removeAccount {
|
||||
return Intl.message(
|
||||
'Remove account',
|
||||
name: 'removeAccount',
|
||||
desc: 'remove account',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Something bad happens:`
|
||||
String get somethingBadHappens {
|
||||
return Intl.message(
|
||||
'Something bad happens:',
|
||||
name: 'somethingBadHappens',
|
||||
desc: 'error message',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `GitHub Account`
|
||||
String get githubAccount {
|
||||
return Intl.message(
|
||||
'GitHub Account',
|
||||
name: 'githubAccount',
|
||||
desc: 'Gitea Account',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `GitTouch needs these permissions`
|
||||
String get permissionRequiredMessage {
|
||||
return Intl.message(
|
||||
'GitTouch needs these permissions',
|
||||
name: 'permissionRequiredMessage',
|
||||
desc: 'Permission Required Message',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Not Found`
|
||||
String get notFoundMessage {
|
||||
return Intl.message(
|
||||
'Not Found',
|
||||
name: 'notFoundMessage',
|
||||
desc: 'Not found page header',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Woops, This page is not implemented yet`
|
||||
String get notFoundTextDisplay {
|
||||
return Intl.message(
|
||||
'Woops, This page is not implemented yet',
|
||||
name: 'notFoundTextDisplay',
|
||||
desc: 'Not found error message',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `GitLab Account`
|
||||
String get gitlabAccount {
|
||||
return Intl.message(
|
||||
'GitLab Account',
|
||||
name: 'gitlabAccount',
|
||||
desc: 'Gitlab Account',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Bitbucket Account`
|
||||
String get bitbucketAccount {
|
||||
return Intl.message(
|
||||
'Bitbucket Account',
|
||||
name: 'bitbucketAccount',
|
||||
desc: 'Bitbucket Account',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Long Press to remove account`
|
||||
String get longPressToRemoveAccount {
|
||||
return Intl.message(
|
||||
'Long Press to remove account',
|
||||
name: 'longPressToRemoveAccount',
|
||||
desc: 'Long Press to remove account',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Gitee Account`
|
||||
String get giteaAccount {
|
||||
return Intl.message(
|
||||
'Gitee Account',
|
||||
name: 'giteaAccount',
|
||||
desc: 'Gitea Account',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Gitee Account`
|
||||
String get giteeAccount {
|
||||
return Intl.message(
|
||||
'Gitee Account',
|
||||
name: 'giteeAccount',
|
||||
desc: 'Gitee Account',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `User`
|
||||
String get user {
|
||||
return Intl.message(
|
||||
'User',
|
||||
name: 'user',
|
||||
desc: 'user',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Group`
|
||||
String get group {
|
||||
return Intl.message(
|
||||
'Group',
|
||||
name: 'group',
|
||||
desc: 'group',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Issue`
|
||||
String get issue {
|
||||
return Intl.message(
|
||||
'Issue',
|
||||
name: 'issue',
|
||||
desc: 'issue',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Code`
|
||||
String get code {
|
||||
return Intl.message(
|
||||
'Code',
|
||||
name: 'code',
|
||||
desc: 'Code',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Project Actions`
|
||||
String get projectActions {
|
||||
return Intl.message(
|
||||
'Project Actions',
|
||||
name: 'projectActions',
|
||||
desc: 'Project Actions',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `SYNTAX HIGHLIGHTING`
|
||||
String get syntaxHighlighting {
|
||||
return Intl.message(
|
||||
'SYNTAX HIGHLIGHTING',
|
||||
name: 'syntaxHighlighting',
|
||||
desc: 'Syntax Highlighting',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Font Family`
|
||||
String get fontFamily {
|
||||
return Intl.message(
|
||||
'Font Family',
|
||||
name: 'fontFamily',
|
||||
desc: 'Font Family',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `Font Size`
|
||||
String get fontSize {
|
||||
return Intl.message(
|
||||
'Font Size',
|
||||
name: 'fontSize',
|
||||
desc: 'font size',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
|
||||
/// `FONT STYLE`
|
||||
String get fontStyle {
|
||||
return Intl.message(
|
||||
'FONT STYLE',
|
||||
name: 'fontStyle',
|
||||
desc: 'font style',
|
||||
args: [],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
class AppLocalizationDelegate extends LocalizationsDelegate<S> {
|
||||
const AppLocalizationDelegate();
|
||||
|
||||
List<Locale> get supportedLocales {
|
||||
return const <Locale>[
|
||||
Locale.fromSubtags(languageCode: 'en'),
|
||||
Locale.fromSubtags(languageCode: 'hi'),
|
||||
];
|
||||
}
|
||||
|
||||
@override
|
||||
bool isSupported(Locale locale) => _isSupported(locale);
|
||||
@override
|
||||
Future<S> load(Locale locale) => S.load(locale);
|
||||
@override
|
||||
bool shouldReload(AppLocalizationDelegate old) => false;
|
||||
|
||||
bool _isSupported(Locale locale) {
|
||||
if (locale != null) {
|
||||
for (var supportedLocale in supportedLocales) {
|
||||
if (supportedLocale.languageCode == locale.languageCode) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
99201
lib/github.schema.json
8007
lib/graphql/gh.dart
|
@ -1,60 +0,0 @@
|
|||
fragment T on Ref {
|
||||
target {
|
||||
__typename
|
||||
... on Commit {
|
||||
oid
|
||||
url
|
||||
messageHeadline
|
||||
committedDate
|
||||
author {
|
||||
name
|
||||
avatarUrl
|
||||
user {
|
||||
login
|
||||
}
|
||||
}
|
||||
status {
|
||||
state
|
||||
}
|
||||
history(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
nodes {
|
||||
oid
|
||||
url
|
||||
messageHeadline
|
||||
committedDate
|
||||
author {
|
||||
name
|
||||
avatarUrl
|
||||
user {
|
||||
login
|
||||
}
|
||||
}
|
||||
status {
|
||||
state
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
query GhCommits(
|
||||
$owner: String!
|
||||
$name: String!
|
||||
$ref: String!
|
||||
$hasRef: Boolean!
|
||||
$after: String
|
||||
) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
defaultBranchRef @skip(if: $hasRef) {
|
||||
...T
|
||||
}
|
||||
ref(qualifiedName: $ref) @include(if: $hasRef) {
|
||||
...T
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,43 +0,0 @@
|
|||
query GhIssues($owner: String!, $name: String!, $cursor: String) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
owner {
|
||||
login
|
||||
}
|
||||
name
|
||||
issues(
|
||||
states: OPEN
|
||||
orderBy: { field: CREATED_AT, direction: DESC }
|
||||
first: 30
|
||||
after: $cursor
|
||||
) {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
nodes {
|
||||
repository {
|
||||
owner {
|
||||
login
|
||||
}
|
||||
name
|
||||
}
|
||||
number
|
||||
title
|
||||
updatedAt
|
||||
author {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
labels(first: 10) {
|
||||
nodes {
|
||||
name
|
||||
color
|
||||
}
|
||||
}
|
||||
comments {
|
||||
totalCount
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
mutation GhOpenIssue($id: ID!, $open: Boolean!) {
|
||||
reopenIssue(input: { issueId: $id }) @include(if: $open) {
|
||||
issue {
|
||||
closed
|
||||
}
|
||||
}
|
||||
closeIssue(input: { issueId: $id }) @skip(if: $open) {
|
||||
issue {
|
||||
closed
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,43 +0,0 @@
|
|||
query GhPulls($owner: String!, $name: String!, $cursor: String) {
|
||||
repository(owner: $owner, name: $name) {
|
||||
owner {
|
||||
login
|
||||
}
|
||||
name
|
||||
pullRequests(
|
||||
states: OPEN
|
||||
orderBy: { field: CREATED_AT, direction: DESC }
|
||||
first: 30
|
||||
after: $cursor
|
||||
) {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
nodes {
|
||||
repository {
|
||||
owner {
|
||||
login
|
||||
}
|
||||
name
|
||||
}
|
||||
number
|
||||
title
|
||||
updatedAt
|
||||
author {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
labels(first: 10) {
|
||||
nodes {
|
||||
name
|
||||
color
|
||||
}
|
||||
}
|
||||
comments {
|
||||
totalCount
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,70 +0,0 @@
|
|||
query GhRepos($owner: String!, $after: String, $isStar: Boolean!) {
|
||||
user(login: $owner) {
|
||||
__typename
|
||||
login
|
||||
avatarUrl
|
||||
repositories(
|
||||
first: 30
|
||||
after: $after
|
||||
orderBy: { field: UPDATED_AT, direction: DESC }
|
||||
) @skip(if: $isStar) {
|
||||
totalCount # TODO:
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
nodes {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
isPrivate
|
||||
isFork
|
||||
updatedAt
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
starredRepositories(
|
||||
first: 30
|
||||
after: $after
|
||||
orderBy: { field: STARRED_AT, direction: DESC }
|
||||
) @include(if: $isStar) {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
nodes {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
isPrivate
|
||||
isFork
|
||||
updatedAt
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,239 +0,0 @@
|
|||
query GhUser($login: String!, $isViewer: Boolean!) {
|
||||
repositoryOwner(login: $login) @skip(if: $isViewer) {
|
||||
__typename
|
||||
id
|
||||
login
|
||||
avatarUrl
|
||||
url
|
||||
... on User {
|
||||
name
|
||||
bio
|
||||
company
|
||||
location
|
||||
email
|
||||
createdAt
|
||||
websiteUrl
|
||||
starredRepositories {
|
||||
totalCount
|
||||
}
|
||||
followers {
|
||||
totalCount
|
||||
}
|
||||
following {
|
||||
totalCount
|
||||
}
|
||||
contributionsCollection {
|
||||
contributionCalendar {
|
||||
weeks {
|
||||
contributionDays {
|
||||
color
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
repositories(
|
||||
first: 6
|
||||
ownerAffiliations: OWNER
|
||||
orderBy: { field: STARGAZERS, direction: DESC }
|
||||
) {
|
||||
totalCount
|
||||
nodes {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
isPrivate
|
||||
isFork
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
pinnedItems(first: 6) {
|
||||
totalCount # TODO: Add this for correct generated code
|
||||
nodes {
|
||||
__typename
|
||||
... on Repository {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
isPrivate
|
||||
isFork
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
viewerCanFollow
|
||||
viewerIsFollowing
|
||||
}
|
||||
... on Organization {
|
||||
name
|
||||
description
|
||||
location
|
||||
email
|
||||
websiteUrl
|
||||
createdAt
|
||||
pinnedItems(first: 6) {
|
||||
nodes {
|
||||
__typename
|
||||
... on Repository {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
isPrivate
|
||||
isFork
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
pinnableItems(first: 6, types: [REPOSITORY]) {
|
||||
totalCount
|
||||
nodes {
|
||||
__typename
|
||||
... on Repository {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
isPrivate
|
||||
isFork
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
membersWithRole {
|
||||
totalCount
|
||||
}
|
||||
}
|
||||
}
|
||||
viewer @include(if: $isViewer) {
|
||||
id
|
||||
login
|
||||
avatarUrl
|
||||
url
|
||||
name
|
||||
bio
|
||||
company
|
||||
location
|
||||
email
|
||||
createdAt
|
||||
websiteUrl
|
||||
starredRepositories {
|
||||
totalCount
|
||||
}
|
||||
followers {
|
||||
totalCount
|
||||
}
|
||||
following {
|
||||
totalCount
|
||||
}
|
||||
contributionsCollection {
|
||||
contributionCalendar {
|
||||
weeks {
|
||||
contributionDays {
|
||||
color
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
repositories(
|
||||
first: 6
|
||||
ownerAffiliations: OWNER
|
||||
orderBy: { field: STARGAZERS, direction: DESC }
|
||||
) {
|
||||
totalCount
|
||||
nodes {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
isPrivate
|
||||
isFork
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
pinnedItems(first: 6) {
|
||||
totalCount # TODO: Add this for correct generated code
|
||||
nodes {
|
||||
__typename
|
||||
... on Repository {
|
||||
owner {
|
||||
login
|
||||
avatarUrl
|
||||
}
|
||||
name
|
||||
description
|
||||
isPrivate
|
||||
isFork
|
||||
stargazers {
|
||||
totalCount
|
||||
}
|
||||
forks {
|
||||
totalCount
|
||||
}
|
||||
primaryLanguage {
|
||||
color
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
viewerCanFollow
|
||||
viewerIsFollowing
|
||||
}
|
||||
}
|
|
@ -1,101 +0,0 @@
|
|||
query GhUsers(
|
||||
$login: String!
|
||||
$repoName: String!
|
||||
$after: String
|
||||
$isFollowers: Boolean!
|
||||
$isFollowing: Boolean!
|
||||
$isMember: Boolean!
|
||||
$isStar: Boolean!
|
||||
$isWatch: Boolean!
|
||||
) {
|
||||
user(login: $login) @skip(if: $isMember) {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
company
|
||||
location
|
||||
createdAt
|
||||
followers(first: 30, after: $after) @include(if: $isFollowers) {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
nodes {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
company
|
||||
location
|
||||
createdAt
|
||||
}
|
||||
}
|
||||
following(first: 30, after: $after) @include(if: $isFollowing) {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
nodes {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
company
|
||||
location
|
||||
createdAt
|
||||
}
|
||||
}
|
||||
}
|
||||
organization(login: $login) @include(if: $isMember) {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
location
|
||||
membersWithRole(first: 30, after: $after) {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
nodes {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
company
|
||||
location
|
||||
createdAt
|
||||
}
|
||||
}
|
||||
}
|
||||
repository(owner: $login, name: $repoName) {
|
||||
watchers(first: 30, after: $after) @include(if: $isWatch) {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
nodes {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
company
|
||||
location
|
||||
createdAt
|
||||
}
|
||||
}
|
||||
stargazers(
|
||||
first: 30
|
||||
after: $after
|
||||
orderBy: { field: STARRED_AT, direction: DESC }
|
||||
) @include(if: $isStar) {
|
||||
pageInfo {
|
||||
hasNextPage
|
||||
endCursor
|
||||
}
|
||||
nodes {
|
||||
login
|
||||
name
|
||||
avatarUrl
|
||||
company
|
||||
location
|
||||
createdAt
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
304
lib/home.dart
|
@ -1,32 +1,40 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:antd_mobile/antd_mobile.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter_gen/gen_l10n/S.dart';
|
||||
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/models/notification.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:git_touch/screens/bb_explore.dart';
|
||||
import 'package:git_touch/screens/bb_teams.dart';
|
||||
import 'package:git_touch/screens/bb_user.dart';
|
||||
import 'package:git_touch/screens/ge_search.dart';
|
||||
import 'package:git_touch/screens/ge_user.dart';
|
||||
import 'package:git_touch/screens/gl_search.dart';
|
||||
import 'package:git_touch/screens/gt_orgs.dart';
|
||||
import 'package:git_touch/screens/gt_user.dart';
|
||||
import 'package:git_touch/screens/gl_explore.dart';
|
||||
import 'package:git_touch/screens/gl_groups.dart';
|
||||
import 'package:git_touch/screens/gl_user.dart';
|
||||
import 'package:git_touch/screens/login.dart';
|
||||
import 'package:git_touch/screens/gh_notification.dart';
|
||||
import 'package:git_touch/screens/gh_user.dart';
|
||||
import 'package:git_touch/utils/utils.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:git_touch/screens/gh_news.dart';
|
||||
import 'package:git_touch/screens/gh_notification.dart';
|
||||
import 'package:git_touch/screens/gh_search.dart';
|
||||
import 'package:git_touch/screens/gh_trending.dart';
|
||||
import 'package:git_touch/screens/ge_search.dart';
|
||||
import 'generated/l10n.dart';
|
||||
import 'package:git_touch/screens/gh_user.dart';
|
||||
import 'package:git_touch/screens/gl_explore.dart';
|
||||
import 'package:git_touch/screens/gl_groups.dart';
|
||||
import 'package:git_touch/screens/gl_search.dart';
|
||||
import 'package:git_touch/screens/gl_user.dart';
|
||||
import 'package:git_touch/screens/go_search.dart';
|
||||
import 'package:git_touch/screens/go_user.dart';
|
||||
import 'package:git_touch/screens/gt_orgs.dart';
|
||||
import 'package:git_touch/screens/gt_user.dart';
|
||||
import 'package:git_touch/screens/login.dart';
|
||||
import 'package:git_touch/utils/utils.dart';
|
||||
import 'package:github/github.dart';
|
||||
import 'package:launch_review/launch_review.dart';
|
||||
import 'package:package_info_plus/package_info_plus.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:pub_semver/pub_semver.dart';
|
||||
import 'package:universal_io/io.dart';
|
||||
|
||||
class Home extends StatefulWidget {
|
||||
@override
|
||||
_HomeState createState() => _HomeState();
|
||||
State<Home> createState() => _HomeState();
|
||||
}
|
||||
|
||||
class _HomeState extends State<Home> {
|
||||
|
@ -37,15 +45,42 @@ class _HomeState extends State<Home> {
|
|||
final GlobalKey<NavigatorState> tab4 = GlobalKey<NavigatorState>();
|
||||
final GlobalKey<NavigatorState> tab5 = GlobalKey<NavigatorState>();
|
||||
|
||||
@override
|
||||
initState() {
|
||||
super.initState();
|
||||
Future.delayed(const Duration(seconds: 5), () async {
|
||||
final latest = await GitHub()
|
||||
.repositories
|
||||
.getLatestRelease(RepositorySlug.full('git-touch/git-touch'));
|
||||
final current =
|
||||
await PackageInfo.fromPlatform().then((value) => value.version);
|
||||
if (Version.parse(latest.tagName!.substring(1))
|
||||
.compareTo(Version.parse(current)) ==
|
||||
1) {
|
||||
final res = await context.read<ThemeModel>().showConfirm(context,
|
||||
const Text('New version released. Would you like to download it?'));
|
||||
if (res == true) {
|
||||
if (Platform.isIOS) {
|
||||
// go to app store
|
||||
LaunchReview.launch(writeReview: false);
|
||||
} else {
|
||||
context.pushUrl(latest.htmlUrl!);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
_buildScreen(int index) {
|
||||
// print(Localizations.localeOf(context).toString());
|
||||
// return GlProjectScreen(32221);
|
||||
// return IssuesScreen('flutter', 'flutter', isPullRequest: true);
|
||||
// return IssueScreen('reactjs', 'rfcs', 29);
|
||||
// return IssueScreen('reactjs', 'rfcs', 68, isPullRequest: true);
|
||||
// return GhIssuesScreen('flutter', 'flutter', isPullRequest: true);
|
||||
// return GhIssueScreen('reactjs', 'rfcs', 29);
|
||||
// return GhIssueScreen('reactjs', 'rfcs', 68);
|
||||
// return Image.asset('images/spinner.webp', width: 32, height: 32);
|
||||
// return GhRepoScreen('shreyas1599', 'test');
|
||||
final auth = Provider.of<AuthModel>(context);
|
||||
switch (auth.activeAccount.platform) {
|
||||
switch (auth.activeAccount!.platform) {
|
||||
case PlatformType.github:
|
||||
switch (index) {
|
||||
case 0:
|
||||
|
@ -57,7 +92,7 @@ class _HomeState extends State<Home> {
|
|||
case 3:
|
||||
return GhSearchScreen();
|
||||
case 4:
|
||||
return GhUserScreen(null);
|
||||
return const GhViewerScreen();
|
||||
}
|
||||
break;
|
||||
case PlatformType.gitlab:
|
||||
|
@ -69,7 +104,7 @@ class _HomeState extends State<Home> {
|
|||
case 2:
|
||||
return GlSearchScreen();
|
||||
case 3:
|
||||
return GlUserScreen(null);
|
||||
return const GlUserScreen(null);
|
||||
}
|
||||
break;
|
||||
case PlatformType.bitbucket:
|
||||
|
@ -79,15 +114,15 @@ class _HomeState extends State<Home> {
|
|||
case 1:
|
||||
return BbTeamsScreen();
|
||||
case 2:
|
||||
return BbUserScreen(null);
|
||||
return const BbUserScreen(null);
|
||||
}
|
||||
break;
|
||||
case PlatformType.gitea:
|
||||
switch (index) {
|
||||
case 0:
|
||||
return GtOrgsScreen();
|
||||
return const GtOrgsScreen();
|
||||
case 1:
|
||||
return GtUserScreen(auth.activeAccount.login, isViewer: true);
|
||||
return GtUserScreen(auth.activeAccount!.login, isViewer: true);
|
||||
}
|
||||
break;
|
||||
case PlatformType.gitee:
|
||||
|
@ -95,16 +130,21 @@ class _HomeState extends State<Home> {
|
|||
case 0:
|
||||
return GeSearchScreen();
|
||||
case 1:
|
||||
return GeUserScreen(auth.activeAccount.login, isViewer: true);
|
||||
return GeUserScreen(auth.activeAccount!.login, isViewer: true);
|
||||
}
|
||||
break;
|
||||
case PlatformType.gogs:
|
||||
switch (index) {
|
||||
case 0:
|
||||
return GoSearchScreen();
|
||||
case 1:
|
||||
return GoUserScreen(auth.activeAccount!.login, isViewer: true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Widget _buildNotificationIcon(BuildContext context, bool isActive) {
|
||||
final theme = Provider.of<ThemeModel>(context);
|
||||
final iconData = Icons.notifications;
|
||||
int count = Provider.of<NotificationModel>(context).count;
|
||||
Widget _buildNotificationIcon(BuildContext context, IconData iconData) {
|
||||
final count = Provider.of<NotificationModel>(context).count;
|
||||
if (count == 0) {
|
||||
return Icon(iconData);
|
||||
}
|
||||
|
@ -114,10 +154,11 @@ class _HomeState extends State<Home> {
|
|||
children: <Widget>[
|
||||
Icon(iconData),
|
||||
Positioned(
|
||||
right: -2,
|
||||
top: -2,
|
||||
child: Icon(Octicons.primitive_dot,
|
||||
color: theme.palette.primary, size: 14))
|
||||
right: -2,
|
||||
top: -2,
|
||||
child: Icon(Octicons.dot_fill,
|
||||
color: AntTheme.of(context).colorPrimary, size: 14),
|
||||
)
|
||||
],
|
||||
);
|
||||
}
|
||||
|
@ -138,126 +179,103 @@ class _HomeState extends State<Home> {
|
|||
return tab1;
|
||||
}
|
||||
|
||||
List<BottomNavigationBarItem> _buildNavigationItems(String platform) {
|
||||
final search = BottomNavigationBarItem(
|
||||
icon: const Icon(Ionicons.search_outline),
|
||||
activeIcon: const Icon(Ionicons.search),
|
||||
label: AppLocalizations.of(context)!.search,
|
||||
);
|
||||
final group = BottomNavigationBarItem(
|
||||
icon: const Icon(Ionicons.people_outline),
|
||||
activeIcon: const Icon(Ionicons.people),
|
||||
label: AppLocalizations.of(context)!.organizations,
|
||||
);
|
||||
final me = BottomNavigationBarItem(
|
||||
icon: const Icon(Ionicons.person_outline),
|
||||
activeIcon: const Icon(Ionicons.person),
|
||||
label: AppLocalizations.of(context)!.me,
|
||||
);
|
||||
final explore = BottomNavigationBarItem(
|
||||
icon: const Icon(Ionicons.compass_outline),
|
||||
activeIcon: const Icon(Ionicons.compass),
|
||||
label: AppLocalizations.of(context)!.explore,
|
||||
);
|
||||
|
||||
switch (platform) {
|
||||
case PlatformType.github:
|
||||
return [
|
||||
BottomNavigationBarItem(
|
||||
icon: const Icon(Ionicons.newspaper_outline),
|
||||
activeIcon: const Icon(Ionicons.newspaper),
|
||||
label: AppLocalizations.of(context)!.news,
|
||||
),
|
||||
BottomNavigationBarItem(
|
||||
icon:
|
||||
_buildNotificationIcon(context, Ionicons.notifications_outline),
|
||||
activeIcon: _buildNotificationIcon(context, Ionicons.notifications),
|
||||
label: AppLocalizations.of(context)!.notification,
|
||||
),
|
||||
BottomNavigationBarItem(
|
||||
icon: const Icon(Ionicons.flame_outline),
|
||||
activeIcon: const Icon(Ionicons.flame),
|
||||
label: AppLocalizations.of(context)!.trending,
|
||||
),
|
||||
search,
|
||||
me,
|
||||
];
|
||||
case PlatformType.gitlab:
|
||||
return [explore, group, search, me];
|
||||
case PlatformType.bitbucket:
|
||||
return [explore, group, me];
|
||||
case PlatformType.gitea:
|
||||
return [group, me];
|
||||
case PlatformType.gitee:
|
||||
case PlatformType.gogs:
|
||||
return [search, me];
|
||||
default:
|
||||
return [];
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final theme = Provider.of<ThemeModel>(context);
|
||||
final auth = Provider.of<AuthModel>(context);
|
||||
|
||||
if (auth.activeAccount == null) {
|
||||
return LoginScreen();
|
||||
}
|
||||
|
||||
List<BottomNavigationBarItem> navigationItems;
|
||||
final navigationItems = _buildNavigationItems(auth.activeAccount!.platform);
|
||||
|
||||
switch (auth.activeAccount.platform) {
|
||||
case PlatformType.github:
|
||||
navigationItems = [
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.rss_feed), label: S.of(context).news),
|
||||
BottomNavigationBarItem(
|
||||
icon: _buildNotificationIcon(context, false),
|
||||
activeIcon: _buildNotificationIcon(context, true),
|
||||
label: S.of(context).notification),
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.whatshot), label: S.of(context).trending),
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.search), label: S.of(context).search),
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.person),
|
||||
activeIcon: Icon(Icons.person),
|
||||
label: S.of(context).me),
|
||||
];
|
||||
break;
|
||||
case PlatformType.gitlab:
|
||||
navigationItems = [
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.explore), label: S.of(context).explore),
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.group), label: S.of(context).groups),
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.search), label: S.of(context).search),
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.person), label: S.of(context).me),
|
||||
];
|
||||
break;
|
||||
case PlatformType.bitbucket:
|
||||
navigationItems = [
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.explore), label: S.of(context).explore),
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.group), label: S.of(context).teams),
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.person), label: S.of(context).me),
|
||||
];
|
||||
break;
|
||||
case PlatformType.gitea:
|
||||
navigationItems = [
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.group), label: S.of(context).organizations),
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.person), label: S.of(context).me),
|
||||
];
|
||||
break;
|
||||
case PlatformType.gitee:
|
||||
navigationItems = [
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.search), label: S.of(context).search),
|
||||
BottomNavigationBarItem(
|
||||
icon: Icon(Icons.person), label: S.of(context).me),
|
||||
];
|
||||
break;
|
||||
}
|
||||
|
||||
switch (theme.theme) {
|
||||
case AppThemeType.cupertino:
|
||||
return WillPopScope(
|
||||
onWillPop: () async {
|
||||
return !await getNavigatorKey(auth.activeTab)
|
||||
.currentState
|
||||
?.maybePop();
|
||||
},
|
||||
child: CupertinoTabScaffold(
|
||||
tabBuilder: (context, index) {
|
||||
return CupertinoTabView(
|
||||
navigatorKey: getNavigatorKey(index),
|
||||
builder: (context) {
|
||||
return _buildScreen(index);
|
||||
},
|
||||
);
|
||||
return WillPopScope(
|
||||
onWillPop: () async {
|
||||
return !(await getNavigatorKey(auth.activeTab)
|
||||
.currentState
|
||||
?.maybePop())!;
|
||||
},
|
||||
child: CupertinoTabScaffold(
|
||||
tabBuilder: (context, index) {
|
||||
return CupertinoTabView(
|
||||
navigatorKey: getNavigatorKey(index),
|
||||
builder: (context) {
|
||||
return _buildScreen(index);
|
||||
},
|
||||
tabBar: CupertinoTabBar(
|
||||
items: navigationItems,
|
||||
currentIndex: auth.activeTab,
|
||||
onTap: (index) {
|
||||
if (auth.activeTab == index) {
|
||||
getNavigatorKey(index)
|
||||
.currentState
|
||||
?.popUntil((route) => route.isFirst);
|
||||
} else {
|
||||
auth.setActiveTab(index);
|
||||
}
|
||||
},
|
||||
),
|
||||
),
|
||||
);
|
||||
default:
|
||||
return Scaffold(
|
||||
body: IndexedStack(
|
||||
index: auth.activeTab,
|
||||
children: [
|
||||
for (var i = 0; i < navigationItems.length; i++) _buildScreen(i)
|
||||
],
|
||||
),
|
||||
bottomNavigationBar: BottomNavigationBar(
|
||||
selectedItemColor: theme.palette.primary,
|
||||
items: navigationItems,
|
||||
currentIndex: auth.activeTab,
|
||||
type: BottomNavigationBarType.fixed,
|
||||
onTap: (int index) {
|
||||
);
|
||||
},
|
||||
tabBar: CupertinoTabBar(
|
||||
items: navigationItems,
|
||||
currentIndex: auth.activeTab,
|
||||
onTap: (index) {
|
||||
if (auth.activeTab == index) {
|
||||
getNavigatorKey(index)
|
||||
.currentState
|
||||
?.popUntil((route) => route.isFirst);
|
||||
} else {
|
||||
auth.setActiveTab(index);
|
||||
},
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
},
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,334 @@
|
|||
{
|
||||
"somethingBadHappens": "Ha ocorregut un problema:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"following": "Seguint",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"fontStyle": "ESTIL DE LLETRA",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "Mida de la lletra",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "Lletra tipogràfica",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"notFoundMessage": "No s’ha trobat",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "El GitTouch necessita aquests permisos",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "Compte del GitHub",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"removeAccount": "Suprimeix el compte",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "Selecció del compte",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"activity": "Activitat",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"forks": "Bifurcacions",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"codeTheme": "Tema per al codi",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"material": "Material",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"notFoundTextDisplay": "Encara no s’ha implementat aquesta pàgina.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"dark": "Fosc",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "Clar",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"about": "quant a",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "Adreça electrònica",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "Valoreu aquesta aplicació",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "Envia un informe",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "comentaris",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"issues": "Informes",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"projects": "Projectes",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "Accions del dipòsit",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "Dipòsit",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "Codi font",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "Versió",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"all": "Tot",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "Sense llegir",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "Contribuïdors",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"branches": "Branques",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"developers": "Desenvolupadors",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"files": "Fitxers",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "Fitxer",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "Equips",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"groups": "Grups",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "Accions",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"project": "Projecte",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"bitbucketAccount": "Compte del Bitbucket",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "Compte del GitLab",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"giteeAccount": "Compte del Gitee",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Compte del Gitea",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"issue": "Informe",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "Grup",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "Usuari",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"projectActions": "Accions del projecte",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"code": "Codi",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"brightness": "Brillantor",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "Canvia de compte",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "Estat del Gitea",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "Estat del GitLab",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"githubStatus": "Estat del GitHub",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "sistema",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "Paràmetres",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "dipòsits ancorats",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "dipòsits populars",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "Membres",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "Organitzacions",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"events": "Esdeveniments",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"followers": "Seguidors",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "Estrelles",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "Segueix",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "Deixa de seguir",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "Dipòsits",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "Participacions",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "Jo",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "Cerca",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"trending": "En tendència",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notification": "Notificació",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "Notícies",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
},
|
||||
"markdownRenderEngine": "Motor de processament del Markdown",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"scaffoldTheme": "Tema de l’entorn",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"followSystem": "Segueix el sistema",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"syntaxHighlighting": "REALÇAMENT DE LA SINTAXI",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"explore": "Explora",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"pullRequests": "Peticions d’extracció",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"watchers": "Vigilants",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"reviewPermissions": "Revisa els permissos",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"mergeRequests": "Peticions de fusió",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"followers": "Follower",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"me": "Konto",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"trending": "Beliebt",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"fontStyle": "Schriftstyle",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "Schriftgröße",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "Schriftart",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "SYNTAX HERVORHEBUNG",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"projectActions": "Projekt Aktionen",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"code": "Code",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"issue": "Ticket",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "Gruppe",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "Benutzer",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"longPressToRemoveAccount": "Langer Druck zum Entfernen des Kontos",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"giteeAccount": "Gitee Konto",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Gitea Konto",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"githubAccount": "GitHub Konto",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"gitlabAccount": "GitLab Konto",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"bitbucketAccount": "Bitbucket Konto",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"notFoundTextDisplay": "Ups, diese Seite ist noch nicht eingebaut.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"notFoundMessage": "Nicht gefunden",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch benötigt diese Berechtigungen",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"somethingBadHappens": "Etwas schlechtes ist passiert:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"removeAccount": "Konto löschen",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "Konto auswählen",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "Projekt",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "Aktivität",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "Merge Requests",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "Gruppen",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "Aktionen",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "Dateien",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "Datei",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "Teams",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "Erkunden",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "Entwickler",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "Alle",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "Ungelesen",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "Mitwirkende",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"branches": "Branches",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"commits": "Commits",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"pullRequests": "Pull Requests",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"issues": "Tickets",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"forks": "Forks",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"watchers": "Beobachter",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"releases": "Releases",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"projects": "Projekte",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "Repository Aktionen",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "Repository",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "Quellcode",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "Version",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"about": "Informationen",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "E-Mail",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "App bewerten",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "Fehler melden",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "Feedback",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"markdownRenderEngine": "Markdown Rendering-Engine",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"codeTheme": "Code Design",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"material": "Material",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "Menü Design",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"dark": "Dunkel",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "Hell",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"brightness": "Helligkeit",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "Konten wechseln",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "Gitea-Status",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "GitLab-Status",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"reviewPermissions": "Berechtigungen überprüfen",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"githubStatus": "GitHub-Status",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "System",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "Einstellungen",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "angeheftete Repositories",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "beliebte Repositories",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "Mitglieder",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "Organisationen",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"repositories": "Repositories",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"gists": "Gists",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"events": "Events",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "folgen",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"stars": "markieren",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "folgen",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "entfolgen",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"participating": "Teilnehmer",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"search": "Suchen",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"notification": "Benachrichtigung",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "Neuigkeiten",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
},
|
||||
"followSystem": "System folgen",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
}
|
||||
}
|
|
@ -1,8 +1,4 @@
|
|||
{
|
||||
"helloWorld": "Hello World!",
|
||||
"@helloWorld": {
|
||||
"description": "The conventional newborn programmer greeting"
|
||||
},
|
||||
"news": "News",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
|
@ -67,11 +63,11 @@
|
|||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"popularRepositories": "popular repositories",
|
||||
"popularRepositories": "Popular Repositories",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"pinnedRepositories": "pinned repositories",
|
||||
"pinnedRepositories": "Pinned Repositories",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
|
@ -79,11 +75,11 @@
|
|||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"system": "system",
|
||||
"system": "System",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"githubStatus": "GitHub status",
|
||||
"githubStatus": "GitHub Status",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
|
@ -91,15 +87,15 @@
|
|||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"gitlabStatus": "GitLab status",
|
||||
"gitlabStatus": "GitLab Status",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"giteaStatus": "Gitea status",
|
||||
"giteaStatus": "Gitea Status",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"switchAccounts": "Switch accounts",
|
||||
"switchAccounts": "Switch Accounts",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
|
@ -119,18 +115,6 @@
|
|||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"scaffoldTheme": "Scaffold Theme",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"material": "Material",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"codeTheme": "Code Theme",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
|
@ -151,10 +135,14 @@
|
|||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"submitAnIssue": "Submit an issue",
|
||||
"submitAnIssue": "Submit An Issue",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"submit": "Submit",
|
||||
"@submit": {
|
||||
"description": "submit button text"
|
||||
},
|
||||
"rateThisApp": "Rate This App",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
|
@ -163,7 +151,7 @@
|
|||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"about": "about",
|
||||
"about": "About",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
|
@ -191,6 +179,10 @@
|
|||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"released": "released",
|
||||
"@released": {
|
||||
"description": "released"
|
||||
},
|
||||
"watchers": "Watchers",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
|
@ -203,7 +195,7 @@
|
|||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"pullRequests": "Pull requests",
|
||||
"pullRequests": "Pull Requests",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
|
@ -211,6 +203,10 @@
|
|||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"commit": "Commit",
|
||||
"@commit": {
|
||||
"description": "Commit"
|
||||
},
|
||||
"branches": "Branches",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
|
@ -267,15 +263,15 @@
|
|||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"selectAccount": "Select account",
|
||||
"selectAccount": "Select Account",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"removeAccount": "Remove account",
|
||||
"removeAccount": "Remove Account",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"somethingBadHappens": "Something bad happens:",
|
||||
"somethingBadHappens": "Something Bad Happens:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
|
@ -291,7 +287,7 @@
|
|||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"notFoundTextDisplay": "Woops, This page is not implemented yet",
|
||||
"notFoundTextDisplay": "Oops, this page is not implemented yet.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
|
@ -307,7 +303,7 @@
|
|||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"giteaAccount": "Gitee Account",
|
||||
"giteaAccount": "Gitea Account",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
|
@ -350,5 +346,507 @@
|
|||
"fontStyle": "FONT STYLE",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"appLanguage": "App Language",
|
||||
"@appLanguage": {
|
||||
"description": "The app's language"
|
||||
},
|
||||
"reloadMessage": "The app will reload to make the language setting take effect",
|
||||
"@reloadMessage": {
|
||||
"description": "Reload message"
|
||||
},
|
||||
"theme": "Theme",
|
||||
"@theme": {
|
||||
"description": "Theme header text"
|
||||
},
|
||||
"title": "Title",
|
||||
"@title": {
|
||||
"description": "title"
|
||||
},
|
||||
"body": "Body",
|
||||
"@body": {
|
||||
"description": "body"
|
||||
},
|
||||
"timelineTypeNotImplemented": "Type not implemented yet",
|
||||
"@timelineTypeNotImplemented": {
|
||||
"description": "Timeline type not implemented"
|
||||
},
|
||||
"pullRequestCommitMessage": "added commit {commit}",
|
||||
"@pullRequestCommitMessage": {
|
||||
"description": "pull request commit message",
|
||||
"placeholders": {
|
||||
"commit": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"crossReferencedEventMessage": "references this on",
|
||||
"@crossReferencedEventMessage": {
|
||||
"description": "cross referenced event"
|
||||
},
|
||||
"closedEventMessage": "closed this",
|
||||
"@closedEventMessage": {
|
||||
"description": "closed event"
|
||||
},
|
||||
"reopenedEventMessage": "reopened this",
|
||||
"@reopenedEventMessage": {
|
||||
"description": "reopened event"
|
||||
},
|
||||
"subscribedEventMessage": "subscribed to this issue",
|
||||
"@subscribedEventMessage": {
|
||||
"description": "subscribed event"
|
||||
},
|
||||
"unsubscribedEventMessage": "unsubscribed from this issue",
|
||||
"@unsubscribedEventMessage": {
|
||||
"description": "unsubscribed event"
|
||||
},
|
||||
"referencedEventMessage": "referenced this pull request from commit {commit} from {repoName}",
|
||||
"@referencedEventMessage": {
|
||||
"description": "referenced event",
|
||||
"placeholders": {
|
||||
"commit": {
|
||||
"type": "String"
|
||||
},
|
||||
"repoName": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"assignedEventMessage": "assigned this to",
|
||||
"@assignedEventMessage": {
|
||||
"description": "assigned event"
|
||||
},
|
||||
"unassignedEventMessage": "unassigned this from",
|
||||
"@unassignedEventMessage": {
|
||||
"description": "unassigned event"
|
||||
},
|
||||
"added": "added",
|
||||
"@added": {
|
||||
"description": "added"
|
||||
},
|
||||
"removed": "removed",
|
||||
"@removed": {
|
||||
"description": "removed"
|
||||
},
|
||||
"label": "label",
|
||||
"@label": {
|
||||
"description": "label"
|
||||
},
|
||||
"milestonedEventMessage": "added this to {milestone} milestone",
|
||||
"@milestonedEventMessage": {
|
||||
"description": "milestone event",
|
||||
"placeholders": {
|
||||
"milestone": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"demilestonedEventMessage": "removed this from {milestone} milestone",
|
||||
"@demilestonedEventMessage": {
|
||||
"description": "demilestoned event",
|
||||
"placeholders": {
|
||||
"milestone": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"renamedTitleEventMessage": "changed the title to {title} from",
|
||||
"@renamedTitleEventMessage": {
|
||||
"description": "changed title event",
|
||||
"placeholders": {
|
||||
"title": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"lockedConversationEventMessage": "locked this conversation",
|
||||
"@lockedConversationEventMessage": {
|
||||
"description": "locked this conversation"
|
||||
},
|
||||
"unlockedConversationEventMessage": "unlocked this conversation",
|
||||
"@unlockedConversationEventMessage": {
|
||||
"description": "unlocked this conversation"
|
||||
},
|
||||
"transferredEventMessage": "transferred this issue from {repoName}",
|
||||
"@transferredEventMessage": {
|
||||
"description": "transferred event",
|
||||
"placeholders": {
|
||||
"repoName": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"approvedChanges": "approved these changes",
|
||||
"@approvedChanges": {
|
||||
"description": "approved these changes"
|
||||
},
|
||||
"reviewed": "reviewed",
|
||||
"@reviewed": {
|
||||
"description": "reviewed"
|
||||
},
|
||||
"mergedEventMessage": "merged commit {commit} into {mergeRefName}",
|
||||
"@mergedEventMessage": {
|
||||
"description": "merged event message",
|
||||
"placeholders": {
|
||||
"commit": {
|
||||
"type": "String"
|
||||
},
|
||||
"mergeRefName": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"mentionedEventMessage": "was mentioned",
|
||||
"@mentionedEventMessage": {
|
||||
"description": "was mentioned"
|
||||
},
|
||||
"pinnedEventMessage": "pinned this issue",
|
||||
"@pinnedEventMessage": {
|
||||
"description": "pinned this issue"
|
||||
},
|
||||
"deployedPR": "deployed the pull request {headRefName}",
|
||||
"@deployedPR": {
|
||||
"description": "deployed the pull request",
|
||||
"placeholders": {
|
||||
"headRefName": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"deploymentEnvironmentChangedEventMessage": "changed the development environment to {devEnv}",
|
||||
"@deploymentEnvironmentChangedEventMessage": {
|
||||
"description": "deployment environment changed event",
|
||||
"placeholders": {
|
||||
"devEnv": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"headRefDeletedEventMessage": "deleted the {headRefName} branch",
|
||||
"@headRefDeletedEventMessage": {
|
||||
"description": "head ref deleted event",
|
||||
"placeholders": {
|
||||
"headRefName": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"headRefRestoredEventMessage": "restored the {headRefName} branch",
|
||||
"@headRefRestoredEventMessage": {
|
||||
"description": "head ref restored event",
|
||||
"placeholders": {
|
||||
"headRefName": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"headRefForcedPushedEventFirstMessage": "force-pushed the",
|
||||
"@headRefForcedPushedEventFirstMessage": {
|
||||
"description": "head ref forced pushed event message first half"
|
||||
},
|
||||
"headRefForcedPushedEventSecondMessage": "branch from",
|
||||
"@headRefForcedPushedEventSecondMessage": {
|
||||
"description": "head ref forced pushed event message second half"
|
||||
},
|
||||
"reviewRequestEventMessage": "requested a review from",
|
||||
"@reviewRequestEventMessage": {
|
||||
"description": "requested a review from"
|
||||
},
|
||||
"fromReviewRequest": "from the review request",
|
||||
"@fromReviewRequest": {
|
||||
"description": "from the review request"
|
||||
},
|
||||
"reviewDismissedEventMessage": "dismissed the pull request review requested by",
|
||||
"@reviewDismissedEventMessage": {
|
||||
"description": "dismissed the pull request review requested by"
|
||||
},
|
||||
"nCommitsTo": "{count,plural, =1{{count} commit to} other{{count} commits to}}",
|
||||
"@nCommitsTo": {
|
||||
"description": "no. of commits to a branch",
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"checkRunEventMessage": "{action} a check run for {name}",
|
||||
"@checkRunEventMessage": {
|
||||
"description": "check run event",
|
||||
"placeholders": {
|
||||
"action": {
|
||||
"type": "String"
|
||||
},
|
||||
"name": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"checkSuiteEventConclusionMessage": "it is a {conclusion}",
|
||||
"@checkSuiteEventConclusionMessage": {
|
||||
"description": "check suite event conclusion",
|
||||
"placeholders": {
|
||||
"conclusion": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"actionRequiredConclusion": "it requires more action",
|
||||
"@actionRequiredConclusion": {
|
||||
"description": "it requires more action"
|
||||
},
|
||||
"checkSuiteEventMessage": "{action} the check suite and the conclusion is that",
|
||||
"@checkSuiteEventMessage": {
|
||||
"description": "check suite event message conclusion",
|
||||
"placeholders": {
|
||||
"action": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"commitCommentEventMessage": "commented on a commit at",
|
||||
"@commitCommentEventMessage": {
|
||||
"description": "commit comment event message"
|
||||
},
|
||||
"contentReferenceEventMessage": "{action} a content reference at",
|
||||
"@contentReferenceEventMessage": {
|
||||
"description": "content reference event",
|
||||
"placeholders": {
|
||||
"action": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"createdEventMessage": "created a {refType} {ref} at",
|
||||
"@createdEventMessage": {
|
||||
"description": "created event message",
|
||||
"placeholders": {
|
||||
"refType": {
|
||||
"type": "String"
|
||||
},
|
||||
"ref": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"deletedEventMessage": "deleted the {refType} {ref} at",
|
||||
"@deletedEventMessage": {
|
||||
"description": "deleted event message",
|
||||
"placeholders": {
|
||||
"refType": {
|
||||
"type": "String"
|
||||
},
|
||||
"ref": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"forked": "forked",
|
||||
"@forked": {
|
||||
"description": "forked"
|
||||
},
|
||||
"createdPages": "created the pages: {pageNames}",
|
||||
"@createdPages": {
|
||||
"description": "created pages",
|
||||
"placeholders": {
|
||||
"pageNames": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"editedPages": "edited the pages: {pageNames}",
|
||||
"@editedPages": {
|
||||
"description": "edited pages",
|
||||
"placeholders": {
|
||||
"pageAction": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"newPermissionsAccepted": "new permissions were accepted for action ",
|
||||
"@newPermissionsAccepted": {
|
||||
"description": "new permissions were accepted for"
|
||||
},
|
||||
"forGithubAppWithId": "for the Github App with id {id}",
|
||||
"@forGithubAppWithId": {
|
||||
"description": "for the Github App with id",
|
||||
"placeholders": {
|
||||
"id": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"wereAddedTo": "{repos} were added to the installation id {id}",
|
||||
"@wereAddedTo": {
|
||||
"description": "example: repo1,repo2 were added to the installation id ID",
|
||||
"placeholders": {
|
||||
"repos": {
|
||||
"type": "String"
|
||||
},
|
||||
"id": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"wereRemovedFrom": "{repos} were removed from the installation id {id}",
|
||||
"@wereRemovedFrom": {
|
||||
"description": "example: repo1,repo2 were removed from the installation id ID",
|
||||
"placeholders": {
|
||||
"repos": {
|
||||
"type": "String"
|
||||
},
|
||||
"id": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"commentedOn": "commented on",
|
||||
"@commentedOn": {
|
||||
"description": "commented on"
|
||||
},
|
||||
"at": "at",
|
||||
"@at": {
|
||||
"description": "at"
|
||||
},
|
||||
"to": "to",
|
||||
"@to": {
|
||||
"description": "to"
|
||||
},
|
||||
"from": "from",
|
||||
"@from": {
|
||||
"description": "from"
|
||||
},
|
||||
"purchasedMarketplacePlan": "purchased a Marketplace Plan",
|
||||
"@purchasedMarketplacePlan": {
|
||||
"description": "purchased a Marketplace Plan"
|
||||
},
|
||||
"cancelledMarketplacePlan": "cancelled their Marketplace Plan",
|
||||
"@cancelledMarketplacePlan": {
|
||||
"description": "cancelled their Marketplace Plan"
|
||||
},
|
||||
"pendingMarketplacePlan": "Marketplace Plan is pending change",
|
||||
"@pendingMarketplacePlan": {
|
||||
"description": "Marketplace Plan is pending change"
|
||||
},
|
||||
"pendingChangeCancelled": "Pending Marketplace Plan was cancelled",
|
||||
"@pendingChangeCancelled": {
|
||||
"description": "Pending Marketplace Plan was cancelled"
|
||||
},
|
||||
"changedMarketplacePlan": "changed their Marketplace Plan",
|
||||
"@changedMarketplacePlan": {
|
||||
"description": "changed their Marketplace Plan"
|
||||
},
|
||||
"was": "was",
|
||||
"@was": {
|
||||
"description": "was"
|
||||
},
|
||||
"convertProjectCard": "converted the project card into an issue",
|
||||
"@convertProjectCard": {
|
||||
"description": "converted the project card into an issue"
|
||||
},
|
||||
"theProjectCard": "the project card",
|
||||
"@theProjectCard": {
|
||||
"description": "the project card"
|
||||
},
|
||||
"projectColumnEventMessage": "{action} the project column {projectColumnName} at ",
|
||||
"@projectColumnEventMessage": {
|
||||
"description": "the project column",
|
||||
"placeholders": {
|
||||
"action": {
|
||||
"type": "String"
|
||||
},
|
||||
"projectColumnName": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"projectEventMessage": "{action} the project {projectName}",
|
||||
"@projectEventMessage": {
|
||||
"description": "the project",
|
||||
"placeholders": {
|
||||
"action" : {
|
||||
"type": "String"
|
||||
},
|
||||
"projectName": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"made": "made",
|
||||
"@made": {
|
||||
"description": "made"
|
||||
},
|
||||
"public": "public",
|
||||
"@public": {
|
||||
"description": "public"
|
||||
},
|
||||
"pullRequestEventMessage": "{action} pull request",
|
||||
"@pullRequestEventMessage": {
|
||||
"description": "pull request event",
|
||||
"placeholders": {
|
||||
"action": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"pullRequestReviewEventMessage": "{action} the pull request review",
|
||||
"@pullRequestReviewEventMessage": {
|
||||
"description": "pull request review event message",
|
||||
"placeholders": {
|
||||
"action": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"pullRequestReviewCommentEventMessage": "reviewed pull request",
|
||||
"@pullRequestReviewCommentEventMessage": {
|
||||
"description": "pull request review comment event"
|
||||
},
|
||||
"pushedTo": "pushed to",
|
||||
"@pushedTo": {
|
||||
"description": "pushed to"
|
||||
},
|
||||
"securityAlertInvolvingPackage": "Security alert involving the package {affectedPackageName} between versions {affectedRange} was {action}ed",
|
||||
"@securityAlertInvolvingPackage": {
|
||||
"description": "Security alert involving package",
|
||||
"placeholders": {
|
||||
"affectedPackageName": {
|
||||
"type": "String"
|
||||
},
|
||||
"affectedRange": {
|
||||
"type": "String"
|
||||
},
|
||||
"action": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"securityAdvisory": "Security advisory regarding {summary} was {action}",
|
||||
"@securityAdvisory": {
|
||||
"description": "Security advisory",
|
||||
"placeholders": {
|
||||
"summary": {
|
||||
"type": "String"
|
||||
},
|
||||
"action": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"starred": "starred",
|
||||
"@starred": {
|
||||
"description": "starred"
|
||||
},
|
||||
"filesChanged": "{count,plural, =1{{count} file changed} other{{count} files changed}}",
|
||||
"@filesChanged": {
|
||||
"description": "no. of files changed",
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"blankDiff": "No text to be shown here",
|
||||
"@blankDiff": {
|
||||
"description": "text to show for a blank diff"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"fontFamily": "Familia tipográfica",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "COLORACIÓN SINTÁCTICA",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"somethingBadHappens": "Algo malo sucede:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"issues": "Informes",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"watchers": "Observadores",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"releases": "Lanzamientos",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"codeTheme": "Tema de código",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "Tema de andamiaje",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"fontStyle": "ESTILO DE LETRA",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "Tamaño de letra",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"projectActions": "Acciones del proyecto",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"code": "Código",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"issue": "Informe",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "Grupo",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "Usuario",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "Cuenta de Gitee",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Cuenta de Gitea",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "Pulsación larga para eliminar la cuenta",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "Cuenta de Bitbucket",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "Cuenta de GitLab",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"notFoundTextDisplay": "Esta página aún no está implementada.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"notFoundMessage": "No encontrado",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch necesita estos permisos",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "Cuenta de GitHub",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"removeAccount": "Eliminar cuenta",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "Seleccione una cuenta",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "Proyecto",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "Actividad",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "Solicitudes de incorporación",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "Grupos",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "Acciones",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "Archivos",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "Archivo",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "Equipos",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "Explorar",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "Desarrolladores",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "Todos",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "No leídos",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "Contribuidores",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"branches": "Ramas",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"commits": "Consignas",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"pullRequests": "Solicitudes de incorporación",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"forks": "Bifurcaciones",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"projects": "Proyectos",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "Acciones del repositorio",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "Repositorio",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "Código fuente",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "Versión",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"about": "acerca de",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "Correo electrónico",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "Valorar esta aplicación",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "Informar de un problema",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "comentarios",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"markdownRenderEngine": "Motor de representación de Markdown",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"material": "Material",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"dark": "Oscuro",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "Claro",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"followSystem": "Seguir el sistema",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"brightness": "Brillo",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "Cambiar de cuenta",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "Estado de Gitea",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "Estado de Gitlab",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"reviewPermissions": "Revisar los permisos",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"githubStatus": "Estado de Github",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "sistema",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "Configuración",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "repositorios anclados",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "repositorios populares",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "Miembros",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "Organizaciones",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"gists": "Gists",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"events": "Eventos",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "Siguiendo",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"followers": "Seguidores",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "Estrellas",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "Seguir",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "Dejar de seguir",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "Repositorios",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "Participación",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "Yo",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "Buscar",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"trending": "Tendencias",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notification": "Notificación",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "Noticias",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"fontStyle": "STYLE DE LA POLICE",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "Taille de la police",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "Famille de polices",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "MISE EN ÉVIDENCE DE LA SYNTAXE",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"projectActions": "Actions du projet",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"code": "Code",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"issue": "Problème",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "Groupe",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "Utilisateur",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "Compte Gitee",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Compte Gitea",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "Longue pression pour supprimer un compte",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "Compte Bitbucket",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "Compte GitLab",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"notFoundTextDisplay": "Oups, cette page n'est pas encore implémentée.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"notFoundMessage": "Non trouvé",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch a besoin de ces autorisations",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "Compte GitHub",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"somethingBadHappens": "Quelque chose de mal se passe :",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"removeAccount": "Supprimer le compte",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "Sélectionner un compte",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "Projet",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "Activité",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "Fusionner les demandes",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "Groupes",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "Actions",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "Fichiers",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "Dossier",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "Équipes",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "Explorez",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "Développeurs",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "Tous",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "Non lu",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "Contributeurs",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"branches": "Branches",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"commits": "Engage",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"pullRequests": "Demandes de retrait",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"issues": "Problèmes",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"forks": "Duplications",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"watchers": "Observateurs",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"releases": "Versions finales",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"projects": "Projets",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "Actions de dépôt",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "Dépôt",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "Code source",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "Version",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"about": "à propos de",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "Courriel",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "Evaluez cette application",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "Soumettre une question",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "retour d'information",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"markdownRenderEngine": "Moteur de rendu Markdown",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"codeTheme": "Thème du code",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"material": "Matériel",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "Thème de l'échafaudage",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"dark": "Foncé",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "Clair",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"followSystem": "Suivre le système",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"brightness": "Luminosité",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "Changer de compte",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "Statut de Gitea",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "Statut du GitLab",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"reviewPermissions": "Examiner les autorisations",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"githubStatus": "Statut de GitHub",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "système",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "Paramètres",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "dépôts épinglés",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "les dépôts populaires",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "Membres",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "Organisations",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"gists": "Gists",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"events": "Événements",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "Suivant",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"followers": "Suivants",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "Étoiles",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "Suivre",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "Ne plus suivre",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "Dépôts",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "Participer",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "Moi",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "Recherchez",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"trending": "Tendance",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notification": "Notification",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "Nouvelles",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -1,91 +1,178 @@
|
|||
{
|
||||
"helloWorld": "नमस्ते दुनिया",
|
||||
"news": "समाचार",
|
||||
"@news": {},
|
||||
"notification": "अधिसूचना",
|
||||
"@notification": {},
|
||||
"trending": "ट्रेंडिंग",
|
||||
"@trending": {},
|
||||
"search": "खोज",
|
||||
"@search": {},
|
||||
"me": "मैं",
|
||||
"@me": {},
|
||||
"participating": "भाग लेने वाले",
|
||||
"@participating": {},
|
||||
"repositories": "रेपोसिटोरिएस",
|
||||
"@repositories": {},
|
||||
"unfollow": "अनफ़ॉलो",
|
||||
"@unfollow": {},
|
||||
"follow": "फ़ोल्लोव",
|
||||
"@follow": {},
|
||||
"stars": "स्टार्स",
|
||||
"@stars": {},
|
||||
"followers": "अनुयायियों",
|
||||
"@followers": {},
|
||||
"following": "फोल्लोविंग",
|
||||
"@following": {},
|
||||
"events": "इवेंट्स",
|
||||
"@events": {},
|
||||
"gists": "गिस्ट्स",
|
||||
"@gists": {},
|
||||
"organizations": "संगठन",
|
||||
"@organizations": {},
|
||||
"members": "संगठन",
|
||||
"@members": {},
|
||||
"popularRepositories": "प्रसिद्ध रेपोसिटोरिएस",
|
||||
"@popularRepositories": {},
|
||||
"pinnedRepositories": "पिन्नेद रेपोसिटोरिएस",
|
||||
"@pinnedRepositories": {},
|
||||
"settings": "सेटिंग्स",
|
||||
"@settings": {},
|
||||
"system": "सिस्टम",
|
||||
"@system": {},
|
||||
"githubStatus": "गिटहब स्टेटस",
|
||||
"@githubStatus": {},
|
||||
"reviewPermissions": "अनुमति की समीक्षा करें",
|
||||
"@reviewPermissions": {},
|
||||
"gitlabStatus": "गितलब स्टेटस",
|
||||
"@gitlabStatus": {},
|
||||
"giteaStatus": "गीते स्टेटस",
|
||||
"@giteaStatus": {},
|
||||
"switchAccounts": "खाते बदलें",
|
||||
"@switchAccounts": {},
|
||||
"brightness": "द्य्रुति",
|
||||
"@brightness": {},
|
||||
"followSystem": "सिस्टम का पालन करें",
|
||||
"@followSystem": {},
|
||||
"light": "प्रकाश मोड",
|
||||
"@light": {},
|
||||
"dark": "अंधेरा मोड",
|
||||
"@dark": {},
|
||||
"scaffoldTheme": "स्कैफफोल्ड थीम",
|
||||
"@scaffoldTheme": {},
|
||||
"cupertino": "क्यूपर्टिनो थीम",
|
||||
"@cupertino": {},
|
||||
"material": "मटेरियल थीम",
|
||||
"@material": {},
|
||||
"codeTheme": "कोड थीम",
|
||||
"@codeTheme": {},
|
||||
"markdownRenderEngine": "मार्कडौं रेंडर इंजन",
|
||||
"@markdownRenderEngine": {},
|
||||
"flutter": "फ्लटर",
|
||||
"@flutter": {},
|
||||
"webview": "वेब्वयेव",
|
||||
"@webview": {},
|
||||
"feedback": "फीडबैक",
|
||||
"@feedback": {},
|
||||
"submitAnIssue": "एक मुद्दा प्रस्तुत करें",
|
||||
"@submitAnIssue": {},
|
||||
"rateThisApp": "इस ऐप्लिकेशन को रेट करे",
|
||||
"@rateThisApp": {},
|
||||
"email": "ईमेल",
|
||||
"@email": {},
|
||||
"about": "एप्लिकेशन के बारे में",
|
||||
"@about": {},
|
||||
"version": "एप्लिकेशन वेरीज़न",
|
||||
"@version": {},
|
||||
"sourceCode": "एप्लिकेशन स्रोत कोड",
|
||||
"@sourceCode": {},
|
||||
"ignoringWatchState": "अनदेखी",
|
||||
"@ignoringWatchState": {},
|
||||
"repository": "रिपॉजिटरी",
|
||||
"@repository": {},
|
||||
"repositoryActions": "रिपॉजिटरी कार्रवाई",
|
||||
"@repositoryActions": {},
|
||||
"projects": "परियोजनाओं",
|
||||
"@projects": {},
|
||||
"releases": "रेलसेस",
|
||||
"@releases": {},
|
||||
"watchers": "नजर रखने वालों",
|
||||
"@watchers": {},
|
||||
"forks": "फोर्क्स",
|
||||
"@forks": {},
|
||||
"issues": "मुद्दे",
|
||||
"@issues": {},
|
||||
"pullRequests": "पुल्ल रिक्वेस्ट्स",
|
||||
"@pullRequests": {},
|
||||
"commits": "कमिटस",
|
||||
"@commits": {},
|
||||
"branches": "ब्रांच",
|
||||
"@branches": {},
|
||||
"contributors": "योगदानकर्ताओं",
|
||||
"@contributors": {},
|
||||
"unread": "अपठित",
|
||||
"@unread": {},
|
||||
"all": "सब",
|
||||
"@all": {},
|
||||
"developers": "डेवेलपर्स",
|
||||
"@developers": {},
|
||||
"explore": "अन्वेषण",
|
||||
"@explore": {},
|
||||
"teams": "टीमों",
|
||||
"@teams": {},
|
||||
"file": "फ़ाइल",
|
||||
"@file": {},
|
||||
"files": "फ़ाइलें",
|
||||
"@files": {},
|
||||
"actions": "कार्रवाई",
|
||||
"@actions": {},
|
||||
"groups": "समूहों",
|
||||
"@groups": {},
|
||||
"mergeRequests": "मर्ज निवेदन",
|
||||
"@mergeRequests": {},
|
||||
"activity": "गतिविधि",
|
||||
"@activity": {},
|
||||
"project": "परियोजना",
|
||||
"@project": {},
|
||||
"selectAccount": "खाता चुनें",
|
||||
"@selectAccount": {},
|
||||
"removeAccount": "खाता हटाएं",
|
||||
"somethingBadHappens": "त्रुटि हुई है: ",
|
||||
"@removeAccount": {},
|
||||
"somethingBadHappens": "त्रुटि हुई है:",
|
||||
"@somethingBadHappens": {},
|
||||
"githubAccount": "गिटहब खाता",
|
||||
"permissionRequiredMessage": "गिट्टूच के लीये इन अनुमतियों की आवश्यकता है",
|
||||
"@githubAccount": {},
|
||||
"permissionRequiredMessage": "गिट्टूच को इन अनुमतियों की आवश्यकता है",
|
||||
"@permissionRequiredMessage": {},
|
||||
"notFoundMessage": "नहीं मिला",
|
||||
"notFoundTextDisplay": "यह पृष्ठ कार्यान्वित नहीं है",
|
||||
"gitlabAccount": "गितलब खाता",
|
||||
"@notFoundMessage": {},
|
||||
"notFoundTextDisplay": "ओह, यह पेज अभी तक लागू नहीं किया गया है।",
|
||||
"@notFoundTextDisplay": {},
|
||||
"gitlabAccount": "गितलैब खाता",
|
||||
"@gitlabAccount": {},
|
||||
"bitbucketAccount": "बीटबुकेत खाता",
|
||||
"@bitbucketAccount": {},
|
||||
"giteaAccount": "गीते खाता",
|
||||
"longPressToRemoveAccount": "खाता हटाने के लिए लंबी प्रेस",
|
||||
"giteeAccount": "जीती खाता",
|
||||
"@giteaAccount": {},
|
||||
"longPressToRemoveAccount": "खाता हटाने के लिए लंबा प्रेस",
|
||||
"@longPressToRemoveAccount": {},
|
||||
"giteeAccount": "जीटी खाता",
|
||||
"@giteeAccount": {},
|
||||
"user": "उपयोगकर्ता",
|
||||
"@user": {},
|
||||
"group": "समूह",
|
||||
"@group": {},
|
||||
"issue": "मुद्दा",
|
||||
"@issue": {},
|
||||
"code": "कोड",
|
||||
"@code": {},
|
||||
"projectActions": "परियोजना की कार्रवाई",
|
||||
"@projectActions": {},
|
||||
"syntaxHighlighting": "सिंटेक्स हाइलाइटिंग",
|
||||
"@syntaxHighlighting": {},
|
||||
"fontFamily": "फॉण्ट परिवार",
|
||||
"@fontFamily": {},
|
||||
"fontSize": "फॉण्ट आकार",
|
||||
"fontStyle": "फॉण्ट प्रकार"
|
||||
}
|
||||
"@fontSize": {},
|
||||
"fontStyle": "फॉण्ट प्रकार",
|
||||
"@fontStyle": {}
|
||||
}
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
{}
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"fontStyle": "GAYA FONT",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "Ukutan Font",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "Keluarga Font",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "PENYOROTAN SINTAKS",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"code": "Kode",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"issue": "Isu",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "Grup",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "Pengguna",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "Akun Gitee",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Akun Gitea",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "Tekan dan tahan untuk menghapus akun",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "Akun Bitbucket",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "Akun GitLab",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"notFoundTextDisplay": "Ups, halaman ini belum diimplementasikan.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"notFoundMessage": "Tak Ditemukan",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch membutuhkan izin berikut",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "Akun GitHub",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"somethingBadHappens": "Sesuatu yang buruk terjadi:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"removeAccount": "Hapus akun",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "Pilih akun",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "Proyek",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "Aktivitas",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "Merge Request",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "Grup",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "Aksi",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "Berkas",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "Berkas",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "Tim",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "Jelajah",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "Pengembang",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "Semua",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "Belum dibaca",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "Kontributor",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"projectActions": "Aksi Proyek",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"commits": "Commit",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"branches": "Branch",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"pullRequests": "Pull request",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"issues": "Isu",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"forks": "Fork",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"watchers": "Pengamat",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"releases": "Rilisan",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"projects": "Proyek",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "Aksi Repositori",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "Repositori",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "Kode Sumber",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "Versi",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"about": "tentang",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "Surel",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "Nilai Aplikasi Ini",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "Kirimkan isu",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "umpan balik",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"markdownRenderEngine": "Mesin Render Markdown",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"codeTheme": "Tema Kode",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"material": "Material",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "Tema Scaffold",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"dark": "Gelap",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "Terang",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"followSystem": "Ikuti Sistem",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"brightness": "Kecerahan",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "Ganti akun",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "Status Gitea",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"reviewPermissions": "Tinjau Izin",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"trending": "Trending",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"gitlabStatus": "Status GitLab",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"githubStatus": "Status GitHub",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "sistem",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "Pengaturan",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "repositori yang disematkan",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "repositori populer",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "Anggota",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "Organisasi",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"gists": "Gist",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"events": "Event",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "Mengikuti",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"followers": "Pengikut",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "Bintang",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "Ikuti",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "Batal mengikuti",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "Repositori",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "Partisipasi",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "Saya",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "Cari",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"notification": "Notifikasi",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "Berita",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"fontStyle": "フォントスタイル",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "文字サイズ",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "フォントファミリ",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "シンタックスハイライト",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"projectActions": "プロジェクトアクション",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"code": "コード",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"issue": "問題",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "グループ",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "ユーザー",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "ギティーアカウント",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Giteaアカウント",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "長押しでアカウントを削除",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "ビットバケットアカウント",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "GitLab アカウント",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"notFoundTextDisplay": "おっと、このページはまだ実装されていません。",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"notFoundMessage": "見つかりません",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch には以下のような権限が必要です。",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "GitHub アカウント",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"somethingBadHappens": "何か悪いことが起こる。",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"removeAccount": "アカウントの削除",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "アカウントを選択",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "プロジェクト",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "活動内容",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "マージ要求",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "グループ",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "アクション",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "ファイル",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "ファイル",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "チーム紹介",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "探索",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "開発者",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "すべての",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "未読",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "投稿者",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"branches": "枝",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"commits": "コミット",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"pullRequests": "プルリクエスト",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"issues": "問題点",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"forks": "フォーク",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"watchers": "ウォッチャー",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"releases": "リリース",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"projects": "プロジェクト",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "リポジトリの操作",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "リポジトリ",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "ソースコード",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "バージョン",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"about": "ぐらい",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "電子メール",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "このアプリを評価する",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "課題を提出する",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "フィードバック",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"webview": "ウェブビュー",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "ひらひらと",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"markdownRenderEngine": "マークダウンレンダリングエンジン",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"codeTheme": "コードテーマ",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"material": "材料",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"cupertino": "クパチーノ",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "足場のテーマ",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"dark": "暗い",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "灯り",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"followSystem": "フォローシステム",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"brightness": "明るさ",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "アカウントの切り替え",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "ギテアステータス",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "GitLab のステータス",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"reviewPermissions": "許可を確認する",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"githubStatus": "GitHubのステータス",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "系統",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "設定",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "ピン留めリポジトリ",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "ポピュラーリポジトリ",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "メンバー",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "組織",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"gists": "ジスト",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"events": "イベント情報",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "続いて",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"followers": "フォロワー数",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "星",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "フォロー",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "アンフォロー",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "リポジトリ",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "参加している",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "吾輩",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "検索",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"trending": "トレンド",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notification": "お知らせ",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "ニュース",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
intl_nb_NO.arb
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"reviewPermissions": "Tilgangsvurderinger",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"material": "Materiell",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"gists": "Kludringer",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "Stillas",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"unfollow": "Ikke følg",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"trending": "På vei opp",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notFoundTextDisplay": "Oida, denne siden er ikke implementert enda.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"somethingBadHappens": "Noe går galt:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"branches": "Forgreninger",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"commits": "Innsendelser",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"pullRequests": "Hentingsforespørsler",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"issues": "Feilrapporter",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"watchers": "Seere",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"markdownRenderEngine": "Markdown-opptegningsmotor",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"follow": "Følg",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch trenger disse tilgangene",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"notFoundMessage": "Ikke funnet",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"syntaxHighlighting": "SYNTAKSFRAMHEVING",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"fontStyle": "SKRIFTSTIL",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "Skriftstørrelse",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "Skriftfamilie",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"projectActions": "Prosjekthandlinger",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"code": "Kode",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"issue": "Problem",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "Gruppe",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "Bruker",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "Gitee-konto",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Gitea-konto",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "Trykk lenge for å fjerne konto",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "Bitbucket-konto",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "GitLab-konto",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"githubAccount": "GitHub-konto",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"removeAccount": "Fjern konto",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "Velg konto",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "Prosjekt",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "Aktivitet",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "Flett forespørsler",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "Grupper",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "Handlinger",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "Filer",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "Fil",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "Lag",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "Utforsk",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "Utviklere",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "Alle",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "Ulest",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "Bidragsytere",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"forks": "Forgreninger",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"releases": "Utgivelser",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"projects": "Prosjekter",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "Kodelagerhandlinger",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "Kodelager",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "Kildekode",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"about": "om",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"version": "Versjon",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"email": "E-post",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "Vurder programmet",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "Send inn en feilrapport",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "tilbakemelding",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"codeTheme": "Kodedrakt",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"dark": "Mørk",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "Lys",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"followSystem": "Følg systemet",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"brightness": "Lysstyrke",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "Bytt kontoer",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "Gitea-status",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "GitLab-status",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"githubStatus": "GitHub-status",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "system",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "Innstillinger",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "festede kodelager",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "populære kodelager",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "Medlemmer",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "Organisasjoner",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"events": "Hendelser",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "Følger",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"followers": "Følgere",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "Stjerner",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"repositories": "Kodelager",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "Deltar",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "Meg",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "Søk",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"notification": "Merknad",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "Nyheter",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"projectActions": "Projectacties",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"code": "Code",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"issue": "Issue",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "Groep",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "Gebruiker",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "Gitee-account",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Gitea-account",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "Houd ingedrukt om account te verwijderen",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "Bitbucket-account",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "GitLab-account",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"notFoundTextDisplay": "Opes, deze pagina is nog niet geïmplementeerd.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"notFoundMessage": "NIet gevonden",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch vereist de volgende rechten",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "GitHub-account",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"somethingBadHappens": "Er iets ergs gebeurd:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"removeAccount": "Account verwijderen",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "Kies een account",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "Project",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "Activiteit",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "Samenvoegverzoeken",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "Groepen",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "Acties",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "Bestanden",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "Bestand",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "Teams",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "Verkennen",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "Ontwikkelaars",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "Alles",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "Ongelezen",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "Bijdragers",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"branches": "Takken",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"commits": "Commits",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"pullRequests": "Pull requests",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"issues": "Issues",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"forks": "Afsplitsingen",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"watchers": "Volgers",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"releases": "Uitgaven",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"projects": "Projecten",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "Repo-acties",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "Repo",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "Broncode",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "Versie",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"fontStyle": "LETTERTYPESTIJL",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "Lettergrootte",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "Lettertype",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "SYNTAXMARKERING",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"about": "over",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "E-mailadres",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "Beoordeel deze app",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "Issue openen",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "feedback",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"markdownRenderEngine": "Markdown-renderaandrijving",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"codeTheme": "Codethema",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"material": "Material",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "Scaffold-thema",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"dark": "Donker",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "Licht",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"followSystem": "Systeemthema",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"brightness": "Helherheid",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "Ander account kiezen",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "Gitea-status",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "GitLab-status",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"reviewPermissions": "Rechten bekijken",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"githubStatus": "GitHub-status",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "systeem",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "Instellingen",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "vastgemaakte repo's",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "populaire repo's",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "Leden",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "Organisaties",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"gists": "Gists",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"events": "Gebeurtenissen",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "Volgend",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"followers": "Volgers",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "Favorieten",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "Volgen",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "Ontvolgen",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "Repo's",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "Lid van",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "Ik",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "Zoeken",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"trending": "Populair",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notification": "Melding",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "Nieuws",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"fontStyle": "FONT STYLE",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "Tamanho de letra",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "Família da Fonte",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "REALCE DE SINTAXE",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"projectActions": "Ações do Projeto",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"code": "Código",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"issue": "Edição",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "Grupo",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "Utilizador",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "Conta Gitee",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Conta Gitea",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "Long Press para remover conta",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "Conta Bitbucket",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "Conta no GitLab",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"notFoundTextDisplay": "Oops, esta página ainda não está implementada.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"notFoundMessage": "Não Encontrado",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch precisa destas permissões",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "Conta GitHub",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"somethingBadHappens": "Algo de mau acontece:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"removeAccount": "Remover conta",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "Selecione a conta",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "Projeto",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "Atividade",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "Pedidos de fusão",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "Grupos",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "Ações",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "Arquivos",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "Arquivo",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "Equipes",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "Explore",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "Desenvolvedores",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "Todos",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "Não lido",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "Contribuintes",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"branches": "Filiais",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"commits": "Compromissos",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"pullRequests": "Pedidos de retirada",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"issues": "Edições",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"forks": "Garfos",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"watchers": "Observadores",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"releases": "Lançamentos",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"projects": "Projetos",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "Ações Repositórias",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "Repositório",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "Código fonte",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "Versão",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"about": "sobre",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "Email",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "Avalie este aplicativo",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "Submeter um problema",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "comentários",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"markdownRenderEngine": "Motor Markdown Render",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"codeTheme": "Tema do Código",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"material": "Material",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "Tema do Andaime",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"dark": "Escuro",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "Luz",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"followSystem": "Sistema de acompanhamento",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"brightness": "Brilho",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "mudar de conta",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "estatuto de Gitea",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "Estado do GitLab",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"reviewPermissions": "Permissões de revisão",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"githubStatus": "Estado do GitHub",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "sistema",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "Configurações",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "repositórios afixados",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "repositórios populares",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "Membros",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "Organizações",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"gists": "Síntese",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"events": "Eventos",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "A seguir",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"followers": "Seguidores",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "Estrelas",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "Siga",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "Unfollow",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "Repositórios",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "Participando",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "Eu",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "Pesquisa",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"trending": "Tendência",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notification": "Notificação",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "Notícias",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"fontStyle": "ESTILO DA FONTE",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "Tamanho da Fonte",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "Família da Fonte",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "DESTAQUE DA SINTAXE",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"projectActions": "Ações do Projeto",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"code": "Código",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"issue": "Issue",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "Grupo",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "Usuário",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "Conta Gitee",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Conta Gitea",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "Aperte e segure para remover a conta",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "Conta Bitbucket",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "Conta GitLab",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"notFoundTextDisplay": "Ops, esta página ainda não foi implementada.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"notFoundMessage": "Não Encontrado",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "O GitTouch precisa dessas permissões",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "Conta GitHub",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"somethingBadHappens": "Algo ruim aconteceu:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"removeAccount": "Remover conta",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "Selecionar conta",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "Projeto",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "Atividade",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "Mesclar Requests",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "Grupos",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "Ações",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "Arquivos",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "Arquivo",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "Times",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "Explorar",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "Desenvolvedores",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "Todos",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "Não lido",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "Contribuintes",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"branches": "Branches",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"commits": "Commits",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"pullRequests": "Pull requests",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"issues": "Issues",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"forks": "Forks",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"watchers": "Observadores",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"releases": "Lançamentos",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"projects": "Projetos",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "Ações do Repositório",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "Repositório",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "Código Fonte",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "Versão",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"about": "sobre",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "Email",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "Classificar Este Aplicativo",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "Enviar um issue",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "feedback",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"markdownRenderEngine": "Motor de Renderização do Markdown",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"codeTheme": "Tema do Código",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"material": "Material",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "Tema Scaffold",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"dark": "Escuro",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "Claro",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"followSystem": "Seguir o Sistema",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"brightness": "Brilho",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "Trocar contas",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "Status do Gitea",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "Status do GitLab",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"reviewPermissions": "Revisar Permissões",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"githubStatus": "Status do GitHub",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "sistema",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "Configurações",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "repositórios fixados",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "repositórios populares",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "Membros",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "Organizações",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"gists": "Gists",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"events": "Eventos",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "Seguindo",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"followers": "Seguidores",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "Estrelas",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "Seguir",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "Parar de seguir",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "Repositórios",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "Participando",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "Eu",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "Buscar",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"trending": "Tendências",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notification": "Notificação",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "Notícias",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,290 @@
|
|||
{
|
||||
"code": "Код",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"notFoundTextDisplay": "Ой, эта страница еще не реализована.",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"commits": "Коммиты",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"forks": "Форки",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"email": "Эл. почта",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"dark": "Тёмный",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "Светлый",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"members": "Участники",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"fontStyle": "СТИЛЬ ШРИФТА",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "Размер шрифта",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "Семейство шрифтов",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "ПОДСВЕТКА СИНТАКСИСА",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"group": "Группа",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "Пользователь",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "Аккаунт Gitee",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Аккаунт Gitea",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "Длительное нажатие для удаления учетной записи",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "Аккаунт Bitbucket",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "Аккаунт GitLab",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"notFoundMessage": "Не найдено",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch нужны эти разрешения",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "Аккаунт GitHub",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"somethingBadHappens": "Происходит что-то плохое:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"removeAccount": "Удалить аккаунт",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "Выберите аккаунт",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "Проект",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "Активность",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "Запросы на слияние",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "Группы",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "Действия",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "Файлы",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "Файл",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "Команды",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"developers": "Разработчики",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "Все",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "Не прочитано",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"releases": "Релизы",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"projects": "Проекты",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "Действия в репозитории",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "Репозиторий",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "Исходный код",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "Версия",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"about": "о приложении",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"rateThisApp": "Оценить это приложение",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"feedback": "обратная связь",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"markdownRenderEngine": "Механизм рендеринга Markdown",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"codeTheme": "Тема кода",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"cupertino": "Купертино",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"brightness": "Яркость",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "Сменить аккаунт",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "Статус Gitea",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "Статус GitLab",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"reviewPermissions": "Просмотр разрешений",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"githubStatus": "Статус GitHub",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "система",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "Настройки",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "закрепленные репозитории",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "популярные репозитории",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"organizations": "Организации",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"events": "События",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"followers": "Подписчики",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "Звезды",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "Подписаться",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "Отписаться",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "Репозитории",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"me": "Я",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "Поиск",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"trending": "Тренды",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notification": "Уведомления",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "Новости",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"notification": "දැනුම්දීම",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "පුවත්",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
intl_zh_Hans.arb
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"fontStyle": "字体样式",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "字体大小",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "字体",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "语法高亮",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"code": "代码",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"group": "小组",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "用户",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "Gitee 账户",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Gitea 账户",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "长按以移除账户",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "Bitbucket 账户",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "GitLab 账户",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"notFoundTextDisplay": "这个页面还没有实现。",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"notFoundMessage": "未找到",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch 需要这些权限",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "GitHub 账户",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"removeAccount": "移除账户",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "选择账户",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "项目",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "活动",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"groups": "小组",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "操作",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "文件",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "文件",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "团队",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "发现",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "开发者",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "所有",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "未读",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "贡献者",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"watchers": "关注者",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"projects": "项目介绍",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "仓库操作",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "仓库",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "源代码",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "版本",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"about": "关于",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "电子邮件",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "评价此应用",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "提交 issue",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "用户反馈",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"markdownRenderEngine": "Markdown 渲染引擎",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"codeTheme": "代码主题",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"dark": "深色",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "浅色",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"followSystem": "跟随系统",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"brightness": "亮度",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "切换账户",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "Gitea 系统状态",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "GitLab 系统状态",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"githubStatus": "GitHub 系统状态",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "系统默认",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "设置",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"members": "成员",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "组织",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"events": "事件",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "正在关注",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"followers": "关注者",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "已加星标",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "关注",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "取消关注",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "仓库",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "参与",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "我",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "搜索",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"trending": "趋势",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notification": "通知",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"projectActions": "项目操作",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"issue": "问题",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"somethingBadHappens": "糟糕的事情发生了:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"mergeRequests": "合并请求",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"branches": "分支",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"commits": "提交",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"pullRequests": "拉取请求",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"issues": "问题",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"forks": "分叉",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"releases": "发布",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "Flutter",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"material": "材质设计",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"cupertino": "Cupertino",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "Scaffold主题",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"reviewPermissions": "审查权限",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"pinnedRepositories": "置顶仓库",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "热门库",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"gists": "代码片段",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"news": "新闻",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,350 @@
|
|||
{
|
||||
"fontStyle": "字体样式",
|
||||
"@fontStyle": {
|
||||
"description": "font style"
|
||||
},
|
||||
"fontSize": "字体大小",
|
||||
"@fontSize": {
|
||||
"description": "font size"
|
||||
},
|
||||
"fontFamily": "字体家族",
|
||||
"@fontFamily": {
|
||||
"description": "Font Family"
|
||||
},
|
||||
"syntaxHighlighting": "同义词高亮",
|
||||
"@syntaxHighlighting": {
|
||||
"description": "Syntax Highlighting"
|
||||
},
|
||||
"projectActions": "项目行动",
|
||||
"@projectActions": {
|
||||
"description": "Project Actions"
|
||||
},
|
||||
"code": "编码",
|
||||
"@code": {
|
||||
"description": "Code"
|
||||
},
|
||||
"issue": "问题",
|
||||
"@issue": {
|
||||
"description": "issue"
|
||||
},
|
||||
"group": "集团",
|
||||
"@group": {
|
||||
"description": "group"
|
||||
},
|
||||
"user": "用户",
|
||||
"@user": {
|
||||
"description": "user"
|
||||
},
|
||||
"giteeAccount": "Gitee账户",
|
||||
"@giteeAccount": {
|
||||
"description": "Gitee Account"
|
||||
},
|
||||
"giteaAccount": "Gitea账户",
|
||||
"@giteaAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"longPressToRemoveAccount": "长按删除账户",
|
||||
"@longPressToRemoveAccount": {
|
||||
"description": "Long Press to remove account"
|
||||
},
|
||||
"bitbucketAccount": "Bitbucket账户",
|
||||
"@bitbucketAccount": {
|
||||
"description": "Bitbucket Account"
|
||||
},
|
||||
"gitlabAccount": "GitLab账户",
|
||||
"@gitlabAccount": {
|
||||
"description": "Gitlab Account"
|
||||
},
|
||||
"notFoundTextDisplay": "哎呀,这个页面还没有实现。",
|
||||
"@notFoundTextDisplay": {
|
||||
"description": "Not found error message"
|
||||
},
|
||||
"notFoundMessage": "未找到",
|
||||
"@notFoundMessage": {
|
||||
"description": "Not found page header"
|
||||
},
|
||||
"permissionRequiredMessage": "GitTouch需要以下权限",
|
||||
"@permissionRequiredMessage": {
|
||||
"description": "Permission Required Message"
|
||||
},
|
||||
"githubAccount": "GitHub账户",
|
||||
"@githubAccount": {
|
||||
"description": "Gitea Account"
|
||||
},
|
||||
"somethingBadHappens": "糟糕的事情发生了:",
|
||||
"@somethingBadHappens": {
|
||||
"description": "error message"
|
||||
},
|
||||
"removeAccount": "删除账户",
|
||||
"@removeAccount": {
|
||||
"description": "remove account"
|
||||
},
|
||||
"selectAccount": "选择账户",
|
||||
"@selectAccount": {
|
||||
"description": "select account message"
|
||||
},
|
||||
"project": "项目介绍",
|
||||
"@project": {
|
||||
"description": "project"
|
||||
},
|
||||
"activity": "活动",
|
||||
"@activity": {
|
||||
"description": "activity"
|
||||
},
|
||||
"mergeRequests": "合并请求",
|
||||
"@mergeRequests": {
|
||||
"description": "Merge request"
|
||||
},
|
||||
"groups": "群体",
|
||||
"@groups": {
|
||||
"description": "groups"
|
||||
},
|
||||
"actions": "行动",
|
||||
"@actions": {
|
||||
"description": "actions"
|
||||
},
|
||||
"files": "文件",
|
||||
"@files": {
|
||||
"description": "file plural"
|
||||
},
|
||||
"file": "文件",
|
||||
"@file": {
|
||||
"description": "file"
|
||||
},
|
||||
"teams": "队伍",
|
||||
"@teams": {
|
||||
"description": "teams"
|
||||
},
|
||||
"explore": "探索",
|
||||
"@explore": {
|
||||
"description": "explore"
|
||||
},
|
||||
"developers": "开发商",
|
||||
"@developers": {
|
||||
"description": "developers"
|
||||
},
|
||||
"all": "全部",
|
||||
"@all": {
|
||||
"description": "all"
|
||||
},
|
||||
"unread": "未读",
|
||||
"@unread": {
|
||||
"description": "unread"
|
||||
},
|
||||
"contributors": "贡献者",
|
||||
"@contributors": {
|
||||
"description": "contributors"
|
||||
},
|
||||
"branches": "分支机构",
|
||||
"@branches": {
|
||||
"description": "branches"
|
||||
},
|
||||
"commits": "承诺",
|
||||
"@commits": {
|
||||
"description": "Commits"
|
||||
},
|
||||
"pullRequests": "拉动请求",
|
||||
"@pullRequests": {
|
||||
"description": "Pull Requests"
|
||||
},
|
||||
"issues": "问题",
|
||||
"@issues": {
|
||||
"description": "issues"
|
||||
},
|
||||
"forks": "叉子",
|
||||
"@forks": {
|
||||
"description": "forks"
|
||||
},
|
||||
"watchers": "守望者",
|
||||
"@watchers": {
|
||||
"description": "watchers"
|
||||
},
|
||||
"releases": "发布",
|
||||
"@releases": {
|
||||
"description": "releases"
|
||||
},
|
||||
"projects": "项目介绍",
|
||||
"@projects": {
|
||||
"description": "projects"
|
||||
},
|
||||
"repositoryActions": "存储库行动",
|
||||
"@repositoryActions": {
|
||||
"description": "Repository Actions"
|
||||
},
|
||||
"repository": "储存库",
|
||||
"@repository": {
|
||||
"description": "Repository screen title"
|
||||
},
|
||||
"sourceCode": "源代码",
|
||||
"@sourceCode": {
|
||||
"description": "source code for app"
|
||||
},
|
||||
"version": "版本",
|
||||
"@version": {
|
||||
"description": "app version"
|
||||
},
|
||||
"about": "关于",
|
||||
"@about": {
|
||||
"description": "about section"
|
||||
},
|
||||
"email": "电子邮件",
|
||||
"@email": {
|
||||
"description": "Email to report issues"
|
||||
},
|
||||
"rateThisApp": "给这个应用程序评分",
|
||||
"@rateThisApp": {
|
||||
"description": "rate the app"
|
||||
},
|
||||
"submitAnIssue": "提交问题",
|
||||
"@submitAnIssue": {
|
||||
"description": "submit issue for app"
|
||||
},
|
||||
"feedback": "反馈",
|
||||
"@feedback": {
|
||||
"description": "provide feedback"
|
||||
},
|
||||
"webview": "WebView",
|
||||
"@webview": {
|
||||
"description": "render webview for markdown"
|
||||
},
|
||||
"flutter": "翩翩",
|
||||
"@flutter": {
|
||||
"description": "render flutter for markdown"
|
||||
},
|
||||
"markdownRenderEngine": "Markdown 渲染引擎",
|
||||
"@markdownRenderEngine": {
|
||||
"description": "flutter or webview rendering for markdown"
|
||||
},
|
||||
"codeTheme": "代码主题",
|
||||
"@codeTheme": {
|
||||
"description": "code theme"
|
||||
},
|
||||
"material": "材质",
|
||||
"@material": {
|
||||
"description": "Material scaffold theme"
|
||||
},
|
||||
"cupertino": "库柏蒂诺",
|
||||
"@cupertino": {
|
||||
"description": "Cupertino scaffold theme"
|
||||
},
|
||||
"scaffoldTheme": "脚手架主题",
|
||||
"@scaffoldTheme": {
|
||||
"description": "Kind of theme - cupertino or material"
|
||||
},
|
||||
"dark": "黑暗",
|
||||
"@dark": {
|
||||
"description": "dark mode"
|
||||
},
|
||||
"light": "灯光",
|
||||
"@light": {
|
||||
"description": "light mode"
|
||||
},
|
||||
"followSystem": "遵循系统",
|
||||
"@followSystem": {
|
||||
"description": "follow systems setting"
|
||||
},
|
||||
"brightness": "亮度",
|
||||
"@brightness": {
|
||||
"description": "brightness"
|
||||
},
|
||||
"switchAccounts": "转换账户",
|
||||
"@switchAccounts": {
|
||||
"description": "Switch accounts"
|
||||
},
|
||||
"giteaStatus": "基特阿地位",
|
||||
"@giteaStatus": {
|
||||
"description": "Gitea status"
|
||||
},
|
||||
"gitlabStatus": "GitLab状态",
|
||||
"@gitlabStatus": {
|
||||
"description": "GitLab status"
|
||||
},
|
||||
"reviewPermissions": "审查权限",
|
||||
"@reviewPermissions": {
|
||||
"description": "review Permissions"
|
||||
},
|
||||
"githubStatus": "GitHub状态",
|
||||
"@githubStatus": {
|
||||
"description": "github status"
|
||||
},
|
||||
"system": "制度",
|
||||
"@system": {
|
||||
"description": "system"
|
||||
},
|
||||
"settings": "设置",
|
||||
"@settings": {
|
||||
"description": "settings"
|
||||
},
|
||||
"pinnedRepositories": "钉住的存储库",
|
||||
"@pinnedRepositories": {
|
||||
"description": "pinned repositories"
|
||||
},
|
||||
"popularRepositories": "热门库",
|
||||
"@popularRepositories": {
|
||||
"description": "popular repositories"
|
||||
},
|
||||
"members": "成员",
|
||||
"@members": {
|
||||
"description": "members of an organization"
|
||||
},
|
||||
"organizations": "组织机构",
|
||||
"@organizations": {
|
||||
"description": "organizations for a user"
|
||||
},
|
||||
"gists": "Gists",
|
||||
"@gists": {
|
||||
"description": "gists for a user"
|
||||
},
|
||||
"events": "事件",
|
||||
"@events": {
|
||||
"description": "events for a user"
|
||||
},
|
||||
"following": "以下",
|
||||
"@following": {
|
||||
"description": "people followed by a person"
|
||||
},
|
||||
"followers": "追随者",
|
||||
"@followers": {
|
||||
"description": "followers for a person"
|
||||
},
|
||||
"stars": "明星",
|
||||
"@stars": {
|
||||
"description": "stars on a repo"
|
||||
},
|
||||
"follow": "遵循",
|
||||
"@follow": {
|
||||
"description": "follow someone"
|
||||
},
|
||||
"unfollow": "取消关注",
|
||||
"@unfollow": {
|
||||
"description": "unfollow someone"
|
||||
},
|
||||
"repositories": "储存库",
|
||||
"@repositories": {
|
||||
"description": "repository text"
|
||||
},
|
||||
"participating": "参与",
|
||||
"@participating": {
|
||||
"description": "The participating Tab"
|
||||
},
|
||||
"me": "我",
|
||||
"@me": {
|
||||
"description": "The Me tab"
|
||||
},
|
||||
"search": "检索",
|
||||
"@search": {
|
||||
"description": "The Search tab"
|
||||
},
|
||||
"trending": "趋势",
|
||||
"@trending": {
|
||||
"description": "Trending"
|
||||
},
|
||||
"notification": "通知",
|
||||
"@notification": {
|
||||
"description": "The Notification tab"
|
||||
},
|
||||
"news": "新闻中心",
|
||||
"@news": {
|
||||
"description": "The News tab"
|
||||
}
|
||||
}
|
109
lib/main.dart
|
@ -1,84 +1,39 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:git_touch/app.dart';
|
||||
import 'package:git_touch/models/code.dart';
|
||||
import 'package:git_touch/models/auth.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:git_touch/router.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:git_touch/models/code.dart';
|
||||
import 'package:git_touch/models/notification.dart';
|
||||
import 'package:fluro/fluro.dart';
|
||||
import 'package:fimber/fimber.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:git_touch/models/theme.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:sentry_flutter/sentry_flutter.dart';
|
||||
|
||||
void main() async {
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
// Platform messages may fail, so we use a try/catch PlatformException.
|
||||
await SentryFlutter.init(
|
||||
(options) {
|
||||
options.dsn =
|
||||
'https://006354525fa244289c48169790fa3757@o71119.ingest.sentry.io/5814819';
|
||||
},
|
||||
// Init your App.
|
||||
appRunner: () async {
|
||||
final notificationModel = NotificationModel();
|
||||
final themeModel = ThemeModel();
|
||||
final authModel = AuthModel();
|
||||
final codeModel = CodeModel();
|
||||
await Future.wait([
|
||||
themeModel.init(),
|
||||
authModel.init(),
|
||||
codeModel.init(),
|
||||
]);
|
||||
|
||||
// try {
|
||||
// String initialLink = await getInitialLink();
|
||||
// Fimber.d(initialLink);
|
||||
// } on PlatformException {
|
||||
// Fimber.d('test');
|
||||
// }
|
||||
|
||||
// DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
|
||||
// AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
|
||||
// Fimber.d('Running on ${androidInfo.model}'); // e.g. "Moto G (4)"
|
||||
|
||||
// IosDeviceInfo iosInfo = await deviceInfo.iosInfo;
|
||||
// Fimber.d('Running on ${iosInfo.utsname.machine}'); // e.g. "iPod7,1"
|
||||
|
||||
// TODO: Later, should check to enable debug log in debug build only
|
||||
Fimber.plantTree(DebugTree());
|
||||
|
||||
final notificationModel = NotificationModel();
|
||||
final themeModel = ThemeModel();
|
||||
final authModel = AuthModel();
|
||||
final codeModel = CodeModel();
|
||||
await Future.wait([
|
||||
themeModel.init(),
|
||||
authModel.init(),
|
||||
codeModel.init(),
|
||||
]);
|
||||
|
||||
CommonRouter.routes.forEach((screen) {
|
||||
themeModel.router.define(CommonRouter.prefix + screen.path,
|
||||
handler: Handler(handlerFunc: screen.handler));
|
||||
});
|
||||
GitlabRouter.routes.forEach((screen) {
|
||||
themeModel.router.define(GitlabRouter.prefix + screen.path,
|
||||
handler: Handler(handlerFunc: screen.handler));
|
||||
});
|
||||
GiteaRouter.routes.forEach((screen) {
|
||||
themeModel.router.define(GiteaRouter.prefix + screen.path,
|
||||
handler: Handler(handlerFunc: screen.handler));
|
||||
});
|
||||
BitbucketRouter.routes.forEach((screen) {
|
||||
themeModel.router.define(BitbucketRouter.prefix + screen.path,
|
||||
handler: Handler(handlerFunc: screen.handler));
|
||||
});
|
||||
GithubRouter.routes.forEach((screen) {
|
||||
themeModel.router.define(GithubRouter.prefix + screen.path,
|
||||
handler: Handler(handlerFunc: screen.handler));
|
||||
});
|
||||
GiteeRouter.routes.forEach((screen) {
|
||||
themeModel.router.define(GiteeRouter.prefix + screen.path,
|
||||
handler: Handler(handlerFunc: screen.handler));
|
||||
});
|
||||
|
||||
// To match status bar color to app bar color
|
||||
SystemChrome.setSystemUIOverlayStyle(SystemUiOverlayStyle(
|
||||
statusBarColor: Colors.transparent,
|
||||
));
|
||||
|
||||
runApp(MultiProvider(
|
||||
providers: [
|
||||
ChangeNotifierProvider(create: (context) => notificationModel),
|
||||
ChangeNotifierProvider(create: (context) => themeModel),
|
||||
ChangeNotifierProvider(create: (context) => authModel),
|
||||
ChangeNotifierProvider(create: (context) => codeModel),
|
||||
],
|
||||
child: MyApp(),
|
||||
));
|
||||
runApp(MultiProvider(
|
||||
providers: [
|
||||
ChangeNotifierProvider(create: (context) => notificationModel),
|
||||
ChangeNotifierProvider(create: (context) => themeModel),
|
||||
ChangeNotifierProvider(create: (context) => authModel),
|
||||
ChangeNotifierProvider(create: (context) => codeModel),
|
||||
],
|
||||
child: const MyApp(),
|
||||
));
|
||||
},
|
||||
);
|
||||
}
|
||||
|
|
|
@ -1,44 +1,22 @@
|
|||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:meta/meta.dart';
|
||||
import 'package:freezed_annotation/freezed_annotation.dart';
|
||||
|
||||
part 'account.freezed.dart';
|
||||
part 'account.g.dart';
|
||||
|
||||
@JsonSerializable(includeIfNull: false)
|
||||
class Account {
|
||||
String platform;
|
||||
String domain;
|
||||
String token;
|
||||
String login;
|
||||
String avatarUrl;
|
||||
int gitlabId; // For GitLab
|
||||
String appPassword; // For Bitbucket
|
||||
String accountId; // For Bitbucket
|
||||
|
||||
// equals(Account a) {
|
||||
// final uri = Uri.parse(domain);
|
||||
// final uriA = Uri.parse(a.domain);
|
||||
|
||||
// // Treat domains as the same if they have the same hosts and ports
|
||||
// return a.platform == platform &&
|
||||
// a.login == login &&
|
||||
// a.gitlabId == gitlabId &&
|
||||
// uri.host == uriA.host &&
|
||||
// uri.port == uriA.port;
|
||||
// }
|
||||
|
||||
Account({
|
||||
@required this.platform,
|
||||
@required this.domain,
|
||||
@required this.token,
|
||||
@required this.login,
|
||||
@required this.avatarUrl,
|
||||
this.gitlabId,
|
||||
this.appPassword,
|
||||
this.accountId,
|
||||
});
|
||||
@freezed
|
||||
class Account with _$Account {
|
||||
@JsonSerializable(includeIfNull: false)
|
||||
factory Account({
|
||||
required String platform,
|
||||
required String domain,
|
||||
required String token,
|
||||
required String login,
|
||||
required String avatarUrl,
|
||||
int? gitlabId, // For GitLab
|
||||
String? appPassword, // For Bitbucket
|
||||
String? accountId, // For Bitbucket
|
||||
}) = _Account;
|
||||
|
||||
factory Account.fromJson(Map<String, dynamic> json) =>
|
||||
_$AccountFromJson(json);
|
||||
|
||||
Map<String, dynamic> toJson() => _$AccountToJson(this);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,300 @@
|
|||
// coverage:ignore-file
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
// ignore_for_file: type=lint
|
||||
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target
|
||||
|
||||
part of 'account.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// FreezedGenerator
|
||||
// **************************************************************************
|
||||
|
||||
T _$identity<T>(T value) => value;
|
||||
|
||||
final _privateConstructorUsedError = UnsupportedError(
|
||||
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods');
|
||||
|
||||
Account _$AccountFromJson(Map<String, dynamic> json) {
|
||||
return _Account.fromJson(json);
|
||||
}
|
||||
|
||||
/// @nodoc
|
||||
mixin _$Account {
|
||||
String get platform => throw _privateConstructorUsedError;
|
||||
String get domain => throw _privateConstructorUsedError;
|
||||
String get token => throw _privateConstructorUsedError;
|
||||
String get login => throw _privateConstructorUsedError;
|
||||
String get avatarUrl => throw _privateConstructorUsedError;
|
||||
int? get gitlabId => throw _privateConstructorUsedError; // For GitLab
|
||||
String? get appPassword =>
|
||||
throw _privateConstructorUsedError; // For Bitbucket
|
||||
String? get accountId => throw _privateConstructorUsedError;
|
||||
|
||||
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
|
||||
@JsonKey(ignore: true)
|
||||
$AccountCopyWith<Account> get copyWith => throw _privateConstructorUsedError;
|
||||
}
|
||||
|
||||
/// @nodoc
|
||||
abstract class $AccountCopyWith<$Res> {
|
||||
factory $AccountCopyWith(Account value, $Res Function(Account) then) =
|
||||
_$AccountCopyWithImpl<$Res, Account>;
|
||||
@useResult
|
||||
$Res call(
|
||||
{String platform,
|
||||
String domain,
|
||||
String token,
|
||||
String login,
|
||||
String avatarUrl,
|
||||
int? gitlabId,
|
||||
String? appPassword,
|
||||
String? accountId});
|
||||
}
|
||||
|
||||
/// @nodoc
|
||||
class _$AccountCopyWithImpl<$Res, $Val extends Account>
|
||||
implements $AccountCopyWith<$Res> {
|
||||
_$AccountCopyWithImpl(this._value, this._then);
|
||||
|
||||
// ignore: unused_field
|
||||
final $Val _value;
|
||||
// ignore: unused_field
|
||||
final $Res Function($Val) _then;
|
||||
|
||||
@pragma('vm:prefer-inline')
|
||||
@override
|
||||
$Res call({
|
||||
Object? platform = null,
|
||||
Object? domain = null,
|
||||
Object? token = null,
|
||||
Object? login = null,
|
||||
Object? avatarUrl = null,
|
||||
Object? gitlabId = freezed,
|
||||
Object? appPassword = freezed,
|
||||
Object? accountId = freezed,
|
||||
}) {
|
||||
return _then(_value.copyWith(
|
||||
platform: null == platform
|
||||
? _value.platform
|
||||
: platform // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
domain: null == domain
|
||||
? _value.domain
|
||||
: domain // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
token: null == token
|
||||
? _value.token
|
||||
: token // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
login: null == login
|
||||
? _value.login
|
||||
: login // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
avatarUrl: null == avatarUrl
|
||||
? _value.avatarUrl
|
||||
: avatarUrl // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
gitlabId: freezed == gitlabId
|
||||
? _value.gitlabId
|
||||
: gitlabId // ignore: cast_nullable_to_non_nullable
|
||||
as int?,
|
||||
appPassword: freezed == appPassword
|
||||
? _value.appPassword
|
||||
: appPassword // ignore: cast_nullable_to_non_nullable
|
||||
as String?,
|
||||
accountId: freezed == accountId
|
||||
? _value.accountId
|
||||
: accountId // ignore: cast_nullable_to_non_nullable
|
||||
as String?,
|
||||
) as $Val);
|
||||
}
|
||||
}
|
||||
|
||||
/// @nodoc
|
||||
abstract class _$$_AccountCopyWith<$Res> implements $AccountCopyWith<$Res> {
|
||||
factory _$$_AccountCopyWith(
|
||||
_$_Account value, $Res Function(_$_Account) then) =
|
||||
__$$_AccountCopyWithImpl<$Res>;
|
||||
@override
|
||||
@useResult
|
||||
$Res call(
|
||||
{String platform,
|
||||
String domain,
|
||||
String token,
|
||||
String login,
|
||||
String avatarUrl,
|
||||
int? gitlabId,
|
||||
String? appPassword,
|
||||
String? accountId});
|
||||
}
|
||||
|
||||
/// @nodoc
|
||||
class __$$_AccountCopyWithImpl<$Res>
|
||||
extends _$AccountCopyWithImpl<$Res, _$_Account>
|
||||
implements _$$_AccountCopyWith<$Res> {
|
||||
__$$_AccountCopyWithImpl(_$_Account _value, $Res Function(_$_Account) _then)
|
||||
: super(_value, _then);
|
||||
|
||||
@pragma('vm:prefer-inline')
|
||||
@override
|
||||
$Res call({
|
||||
Object? platform = null,
|
||||
Object? domain = null,
|
||||
Object? token = null,
|
||||
Object? login = null,
|
||||
Object? avatarUrl = null,
|
||||
Object? gitlabId = freezed,
|
||||
Object? appPassword = freezed,
|
||||
Object? accountId = freezed,
|
||||
}) {
|
||||
return _then(_$_Account(
|
||||
platform: null == platform
|
||||
? _value.platform
|
||||
: platform // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
domain: null == domain
|
||||
? _value.domain
|
||||
: domain // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
token: null == token
|
||||
? _value.token
|
||||
: token // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
login: null == login
|
||||
? _value.login
|
||||
: login // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
avatarUrl: null == avatarUrl
|
||||
? _value.avatarUrl
|
||||
: avatarUrl // ignore: cast_nullable_to_non_nullable
|
||||
as String,
|
||||
gitlabId: freezed == gitlabId
|
||||
? _value.gitlabId
|
||||
: gitlabId // ignore: cast_nullable_to_non_nullable
|
||||
as int?,
|
||||
appPassword: freezed == appPassword
|
||||
? _value.appPassword
|
||||
: appPassword // ignore: cast_nullable_to_non_nullable
|
||||
as String?,
|
||||
accountId: freezed == accountId
|
||||
? _value.accountId
|
||||
: accountId // ignore: cast_nullable_to_non_nullable
|
||||
as String?,
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
/// @nodoc
|
||||
|
||||
@JsonSerializable(includeIfNull: false)
|
||||
class _$_Account implements _Account {
|
||||
_$_Account(
|
||||
{required this.platform,
|
||||
required this.domain,
|
||||
required this.token,
|
||||
required this.login,
|
||||
required this.avatarUrl,
|
||||
this.gitlabId,
|
||||
this.appPassword,
|
||||
this.accountId});
|
||||
|
||||
factory _$_Account.fromJson(Map<String, dynamic> json) =>
|
||||
_$$_AccountFromJson(json);
|
||||
|
||||
@override
|
||||
final String platform;
|
||||
@override
|
||||
final String domain;
|
||||
@override
|
||||
final String token;
|
||||
@override
|
||||
final String login;
|
||||
@override
|
||||
final String avatarUrl;
|
||||
@override
|
||||
final int? gitlabId;
|
||||
// For GitLab
|
||||
@override
|
||||
final String? appPassword;
|
||||
// For Bitbucket
|
||||
@override
|
||||
final String? accountId;
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return 'Account(platform: $platform, domain: $domain, token: $token, login: $login, avatarUrl: $avatarUrl, gitlabId: $gitlabId, appPassword: $appPassword, accountId: $accountId)';
|
||||
}
|
||||
|
||||
@override
|
||||
bool operator ==(dynamic other) {
|
||||
return identical(this, other) ||
|
||||
(other.runtimeType == runtimeType &&
|
||||
other is _$_Account &&
|
||||
(identical(other.platform, platform) ||
|
||||
other.platform == platform) &&
|
||||
(identical(other.domain, domain) || other.domain == domain) &&
|
||||
(identical(other.token, token) || other.token == token) &&
|
||||
(identical(other.login, login) || other.login == login) &&
|
||||
(identical(other.avatarUrl, avatarUrl) ||
|
||||
other.avatarUrl == avatarUrl) &&
|
||||
(identical(other.gitlabId, gitlabId) ||
|
||||
other.gitlabId == gitlabId) &&
|
||||
(identical(other.appPassword, appPassword) ||
|
||||
other.appPassword == appPassword) &&
|
||||
(identical(other.accountId, accountId) ||
|
||||
other.accountId == accountId));
|
||||
}
|
||||
|
||||
@JsonKey(ignore: true)
|
||||
@override
|
||||
int get hashCode => Object.hash(runtimeType, platform, domain, token, login,
|
||||
avatarUrl, gitlabId, appPassword, accountId);
|
||||
|
||||
@JsonKey(ignore: true)
|
||||
@override
|
||||
@pragma('vm:prefer-inline')
|
||||
_$$_AccountCopyWith<_$_Account> get copyWith =>
|
||||
__$$_AccountCopyWithImpl<_$_Account>(this, _$identity);
|
||||
|
||||
@override
|
||||
Map<String, dynamic> toJson() {
|
||||
return _$$_AccountToJson(
|
||||
this,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
abstract class _Account implements Account {
|
||||
factory _Account(
|
||||
{required final String platform,
|
||||
required final String domain,
|
||||
required final String token,
|
||||
required final String login,
|
||||
required final String avatarUrl,
|
||||
final int? gitlabId,
|
||||
final String? appPassword,
|
||||
final String? accountId}) = _$_Account;
|
||||
|
||||
factory _Account.fromJson(Map<String, dynamic> json) = _$_Account.fromJson;
|
||||
|
||||
@override
|
||||
String get platform;
|
||||
@override
|
||||
String get domain;
|
||||
@override
|
||||
String get token;
|
||||
@override
|
||||
String get login;
|
||||
@override
|
||||
String get avatarUrl;
|
||||
@override
|
||||
int? get gitlabId;
|
||||
@override // For GitLab
|
||||
String? get appPassword;
|
||||
@override // For Bitbucket
|
||||
String? get accountId;
|
||||
@override
|
||||
@JsonKey(ignore: true)
|
||||
_$$_AccountCopyWith<_$_Account> get copyWith =>
|
||||
throw _privateConstructorUsedError;
|
||||
}
|
|
@ -6,21 +6,25 @@ part of 'account.dart';
|
|||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
Account _$AccountFromJson(Map<String, dynamic> json) {
|
||||
return Account(
|
||||
platform: json['platform'] as String,
|
||||
domain: json['domain'] as String,
|
||||
token: json['token'] as String,
|
||||
login: json['login'] as String,
|
||||
avatarUrl: json['avatarUrl'] as String,
|
||||
gitlabId: json['gitlabId'] as int,
|
||||
appPassword: json['appPassword'] as String,
|
||||
accountId: json['accountId'] as String,
|
||||
);
|
||||
}
|
||||
_$_Account _$$_AccountFromJson(Map<String, dynamic> json) => _$_Account(
|
||||
platform: json['platform'] as String,
|
||||
domain: json['domain'] as String,
|
||||
token: json['token'] as String,
|
||||
login: json['login'] as String,
|
||||
avatarUrl: json['avatarUrl'] as String,
|
||||
gitlabId: json['gitlabId'] as int?,
|
||||
appPassword: json['appPassword'] as String?,
|
||||
accountId: json['accountId'] as String?,
|
||||
);
|
||||
|
||||
Map<String, dynamic> _$AccountToJson(Account instance) {
|
||||
final val = <String, dynamic>{};
|
||||
Map<String, dynamic> _$$_AccountToJson(_$_Account instance) {
|
||||
final val = <String, dynamic>{
|
||||
'platform': instance.platform,
|
||||
'domain': instance.domain,
|
||||
'token': instance.token,
|
||||
'login': instance.login,
|
||||
'avatarUrl': instance.avatarUrl,
|
||||
};
|
||||
|
||||
void writeNotNull(String key, dynamic value) {
|
||||
if (value != null) {
|
||||
|
@ -28,11 +32,6 @@ Map<String, dynamic> _$AccountToJson(Account instance) {
|
|||
}
|
||||
}
|
||||
|
||||
writeNotNull('platform', instance.platform);
|
||||
writeNotNull('domain', instance.domain);
|
||||
writeNotNull('token', instance.token);
|
||||
writeNotNull('login', instance.login);
|
||||
writeNotNull('avatarUrl', instance.avatarUrl);
|
||||
writeNotNull('gitlabId', instance.gitlabId);
|
||||
writeNotNull('appPassword', instance.appPassword);
|
||||
writeNotNull('accountId', instance.accountId);
|
||||
|
|
|
@ -1,25 +1,26 @@
|
|||
import 'dart:convert';
|
||||
import 'dart:async';
|
||||
// import 'package:in_app_review/in_app_review.dart';
|
||||
import 'package:universal_io/io.dart';
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:ferry/ferry.dart';
|
||||
import 'package:fimber/fimber.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:git_touch/models/account.dart';
|
||||
import 'package:git_touch/models/bitbucket.dart';
|
||||
import 'package:git_touch/models/gitea.dart';
|
||||
import 'package:git_touch/models/gitee.dart';
|
||||
import 'package:git_touch/utils/request_serilizer.dart';
|
||||
import 'package:git_touch/models/gitlab.dart';
|
||||
import 'package:git_touch/models/gogs.dart';
|
||||
import 'package:git_touch/utils/utils.dart';
|
||||
import 'package:github/github.dart';
|
||||
import 'package:gql_http_link/gql_http_link.dart';
|
||||
import 'package:artemis/artemis.dart';
|
||||
import 'package:fimber/fimber.dart';
|
||||
import 'package:http/http.dart' as http;
|
||||
import 'package:uni_links/uni_links.dart';
|
||||
import 'package:nanoid/nanoid.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
import '../utils/utils.dart';
|
||||
import 'account.dart';
|
||||
import 'gitlab.dart';
|
||||
import 'package:uni_links/uni_links.dart';
|
||||
// import 'package:in_app_review/in_app_review.dart';
|
||||
import 'package:universal_io/io.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
|
||||
const clientId = 'df930d7d2e219f26142a';
|
||||
|
||||
|
@ -29,32 +30,20 @@ class PlatformType {
|
|||
static const bitbucket = 'bitbucket';
|
||||
static const gitea = 'gitea';
|
||||
static const gitee = 'gitee';
|
||||
static const gogs = 'gogs';
|
||||
}
|
||||
|
||||
class DataWithPage<T> {
|
||||
DataWithPage({
|
||||
required this.data,
|
||||
required this.cursor,
|
||||
required this.hasMore,
|
||||
required this.total,
|
||||
});
|
||||
T data;
|
||||
int cursor;
|
||||
bool hasMore;
|
||||
int total;
|
||||
DataWithPage({
|
||||
@required this.data,
|
||||
@required this.cursor,
|
||||
@required this.hasMore,
|
||||
this.total,
|
||||
});
|
||||
}
|
||||
|
||||
class BbPagePayload<T> {
|
||||
T data;
|
||||
String cursor;
|
||||
bool hasMore;
|
||||
int total;
|
||||
BbPagePayload({
|
||||
@required this.data,
|
||||
@required this.cursor,
|
||||
@required this.hasMore,
|
||||
this.total,
|
||||
});
|
||||
}
|
||||
|
||||
class AuthModel with ChangeNotifier {
|
||||
|
@ -63,21 +52,21 @@ class AuthModel with ChangeNotifier {
|
|||
// static final inAppReview = InAppReview.instance;
|
||||
var hasRequestedReview = false;
|
||||
|
||||
List<Account> _accounts;
|
||||
int activeAccountIndex;
|
||||
StreamSubscription<Uri> _sub;
|
||||
List<Account> _accounts = [];
|
||||
int? activeAccountIndex;
|
||||
late StreamSubscription<Uri?> _sub;
|
||||
bool loading = false;
|
||||
|
||||
List<Account> get accounts => _accounts;
|
||||
Account get activeAccount {
|
||||
if (activeAccountIndex == null || _accounts == null) return null;
|
||||
return _accounts[activeAccountIndex];
|
||||
List<Account>? get accounts => _accounts;
|
||||
Account? get activeAccount {
|
||||
if (activeAccountIndex == null || _accounts.isEmpty) return null;
|
||||
return _accounts[activeAccountIndex!];
|
||||
}
|
||||
|
||||
String get token => activeAccount.token;
|
||||
String get token => activeAccount!.token;
|
||||
|
||||
_addAccount(Account account) async {
|
||||
_accounts = [...accounts, account];
|
||||
_accounts = [...accounts!, account];
|
||||
// Save
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
await prefs.setString(StorageKeys.accounts, json.encode(_accounts));
|
||||
|
@ -95,22 +84,22 @@ class AuthModel with ChangeNotifier {
|
|||
}
|
||||
|
||||
// https://developer.github.com/apps/building-oauth-apps/authorizing-oauth-apps/#web-application-flow
|
||||
Future<void> _onSchemeDetected(Uri uri) async {
|
||||
await closeWebView();
|
||||
Future<void> _onSchemeDetected(Uri? uri) async {
|
||||
await closeInAppWebView();
|
||||
|
||||
loading = true;
|
||||
notifyListeners();
|
||||
|
||||
// Get token by code
|
||||
final res = await http.post(
|
||||
'https://git-touch-oauth.now.sh/api/token',
|
||||
Uri.parse('https://git-touch-oauth.vercel.app/api/token'),
|
||||
headers: {
|
||||
HttpHeaders.acceptHeader: 'application/json',
|
||||
HttpHeaders.contentTypeHeader: 'application/json',
|
||||
},
|
||||
body: json.encode({
|
||||
'client_id': clientId,
|
||||
'code': uri.queryParameters['code'],
|
||||
'code': uri!.queryParameters['code'],
|
||||
'state': _oauthState,
|
||||
}),
|
||||
);
|
||||
|
@ -118,7 +107,7 @@ class AuthModel with ChangeNotifier {
|
|||
await loginWithToken(token);
|
||||
}
|
||||
|
||||
Future<void> loginWithToken(String token) async {
|
||||
Future<void> loginWithToken(String t) async {
|
||||
try {
|
||||
final queryData = await query('''
|
||||
{
|
||||
|
@ -127,12 +116,12 @@ class AuthModel with ChangeNotifier {
|
|||
avatarUrl
|
||||
}
|
||||
}
|
||||
''', token);
|
||||
''', t);
|
||||
|
||||
await _addAccount(Account(
|
||||
platform: PlatformType.github,
|
||||
domain: 'https://github.com',
|
||||
token: token,
|
||||
token: t,
|
||||
login: queryData['viewer']['login'] as String,
|
||||
avatarUrl: queryData['viewer']['avatarUrl'] as String,
|
||||
));
|
||||
|
@ -148,26 +137,22 @@ class AuthModel with ChangeNotifier {
|
|||
loading = true;
|
||||
notifyListeners();
|
||||
try {
|
||||
final res = await http
|
||||
.get('$domain/api/v4/user', headers: {'Private-Token': token});
|
||||
final res = await http.get(Uri.parse('$domain/api/v4/user'),
|
||||
headers: {'Private-Token': token});
|
||||
final info = json.decode(res.body);
|
||||
if (info['message'] != null) {
|
||||
throw info['message'];
|
||||
}
|
||||
if (info['error'] != null) {
|
||||
throw info['error'] +
|
||||
'. ' +
|
||||
(info['error_description'] != null
|
||||
? info['error_description']
|
||||
: '');
|
||||
throw info['error'] + '. ' + (info['error_description'] ?? '');
|
||||
}
|
||||
final user = GitlabUser.fromJson(info);
|
||||
await _addAccount(Account(
|
||||
platform: PlatformType.gitlab,
|
||||
domain: domain,
|
||||
token: token,
|
||||
login: user.username,
|
||||
avatarUrl: user.avatarUrl,
|
||||
login: user.username!,
|
||||
avatarUrl: user.avatarUrl!,
|
||||
gitlabId: user.id,
|
||||
));
|
||||
} finally {
|
||||
|
@ -177,7 +162,7 @@ class AuthModel with ChangeNotifier {
|
|||
}
|
||||
|
||||
Future<String> fetchWithGitlabToken(String p) async {
|
||||
final res = await http.get(p, headers: {'Private-Token': token});
|
||||
final res = await http.get(Uri.parse(p), headers: {'Private-Token': token});
|
||||
return res.body;
|
||||
}
|
||||
|
||||
|
@ -186,7 +171,7 @@ class AuthModel with ChangeNotifier {
|
|||
http.Response res;
|
||||
if (isPost) {
|
||||
res = await http.post(
|
||||
'${activeAccount.domain}/api/v4$p',
|
||||
Uri.parse('${activeAccount!.domain}/api/v4$p'),
|
||||
headers: {
|
||||
'Private-Token': token,
|
||||
HttpHeaders.contentTypeHeader: 'application/json'
|
||||
|
@ -194,7 +179,7 @@ class AuthModel with ChangeNotifier {
|
|||
body: jsonEncode(body),
|
||||
);
|
||||
} else {
|
||||
res = await http.get('${activeAccount.domain}/api/v4$p',
|
||||
res = await http.get(Uri.parse('${activeAccount!.domain}/api/v4$p'),
|
||||
headers: {'Private-Token': token});
|
||||
}
|
||||
final info = json.decode(utf8.decode(res.bodyBytes));
|
||||
|
@ -203,7 +188,7 @@ class AuthModel with ChangeNotifier {
|
|||
}
|
||||
|
||||
Future<DataWithPage> fetchGitlabWithPage(String p) async {
|
||||
final res = await http.get('${activeAccount.domain}/api/v4$p',
|
||||
final res = await http.get(Uri.parse('${activeAccount!.domain}/api/v4$p'),
|
||||
headers: {'Private-Token': token});
|
||||
final next = int.tryParse(
|
||||
res.headers['X-Next-Pages'] ?? res.headers['x-next-page'] ?? '');
|
||||
|
@ -211,10 +196,11 @@ class AuthModel with ChangeNotifier {
|
|||
if (info is Map && info['message'] != null) throw info['message'];
|
||||
return DataWithPage(
|
||||
data: info,
|
||||
cursor: next,
|
||||
cursor: next ?? 1,
|
||||
hasMore: next != null,
|
||||
total:
|
||||
int.tryParse(res.headers['X-Total'] ?? res.headers['x-total'] ?? ''),
|
||||
total: int.tryParse(
|
||||
res.headers['X-Total'] ?? res.headers['x-total'] ?? '') ??
|
||||
kTotalCountFallback,
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -224,7 +210,7 @@ class AuthModel with ChangeNotifier {
|
|||
try {
|
||||
loading = true;
|
||||
notifyListeners();
|
||||
final res = await http.get('$domain/api/v1/user',
|
||||
final res = await http.get(Uri.parse('$domain/api/v1/user'),
|
||||
headers: {'Authorization': 'token $token'});
|
||||
final info = json.decode(res.body);
|
||||
if (info['message'] != null) {
|
||||
|
@ -236,8 +222,8 @@ class AuthModel with ChangeNotifier {
|
|||
platform: PlatformType.gitea,
|
||||
domain: domain,
|
||||
token: token,
|
||||
login: user.login,
|
||||
avatarUrl: user.avatarUrl,
|
||||
login: user.login!,
|
||||
avatarUrl: user.avatarUrl!,
|
||||
));
|
||||
} finally {
|
||||
loading = false;
|
||||
|
@ -250,8 +236,8 @@ class AuthModel with ChangeNotifier {
|
|||
requestType = 'GET',
|
||||
Map<String, dynamic> body = const {},
|
||||
}) async {
|
||||
http.Response res;
|
||||
Map<String, String> headers = {
|
||||
late http.Response res;
|
||||
final headers = <String, String>{
|
||||
'Authorization': 'token $token',
|
||||
HttpHeaders.contentTypeHeader: 'application/json'
|
||||
};
|
||||
|
@ -259,7 +245,7 @@ class AuthModel with ChangeNotifier {
|
|||
case 'DELETE':
|
||||
{
|
||||
await http.delete(
|
||||
'${activeAccount.domain}/api/v1$p',
|
||||
Uri.parse('${activeAccount!.domain}/api/v1$p'),
|
||||
headers: headers,
|
||||
);
|
||||
break;
|
||||
|
@ -267,7 +253,7 @@ class AuthModel with ChangeNotifier {
|
|||
case 'POST':
|
||||
{
|
||||
res = await http.post(
|
||||
'${activeAccount.domain}/api/v1$p',
|
||||
Uri.parse('${activeAccount!.domain}/api/v1$p'),
|
||||
headers: headers,
|
||||
body: jsonEncode(body),
|
||||
);
|
||||
|
@ -276,7 +262,7 @@ class AuthModel with ChangeNotifier {
|
|||
case 'PATCH':
|
||||
{
|
||||
res = await http.patch(
|
||||
'${activeAccount.domain}/api/v1$p',
|
||||
Uri.parse('${activeAccount!.domain}/api/v1$p'),
|
||||
headers: headers,
|
||||
body: jsonEncode(body),
|
||||
);
|
||||
|
@ -284,7 +270,7 @@ class AuthModel with ChangeNotifier {
|
|||
}
|
||||
default:
|
||||
{
|
||||
res = await http.get('${activeAccount.domain}/api/v1$p',
|
||||
res = await http.get(Uri.parse('${activeAccount!.domain}/api/v1$p'),
|
||||
headers: headers);
|
||||
break;
|
||||
}
|
||||
|
@ -297,11 +283,11 @@ class AuthModel with ChangeNotifier {
|
|||
}
|
||||
|
||||
Future<DataWithPage> fetchGiteaWithPage(String path,
|
||||
{int page, int limit}) async {
|
||||
{int? page, int? limit}) async {
|
||||
page = page ?? 1;
|
||||
limit = limit ?? pageSize;
|
||||
limit = limit ?? kPageSize;
|
||||
|
||||
var uri = Uri.parse('${activeAccount.domain}/api/v1$path');
|
||||
var uri = Uri.parse('${activeAccount!.domain}/api/v1$path');
|
||||
uri = uri.replace(
|
||||
queryParameters: {
|
||||
'page': page.toString(),
|
||||
|
@ -315,18 +301,47 @@ class AuthModel with ChangeNotifier {
|
|||
return DataWithPage(
|
||||
data: info,
|
||||
cursor: page + 1,
|
||||
hasMore: info is List && info.length > 0,
|
||||
total: int.tryParse(res.headers['x-total-count'] ?? ''),
|
||||
hasMore: info is List && info.isNotEmpty,
|
||||
total: int.tryParse(res.headers['x-total-count'] ?? '') ??
|
||||
kTotalCountFallback,
|
||||
);
|
||||
}
|
||||
|
||||
Future fetchGitee(
|
||||
Future loginToGogs(String domain, String token) async {
|
||||
domain = domain.trim();
|
||||
token = token.trim();
|
||||
try {
|
||||
loading = true;
|
||||
notifyListeners();
|
||||
final res = await http.get(Uri.parse('$domain/api/v1/user'),
|
||||
headers: {'Authorization': 'token $token'});
|
||||
final info = json.decode(res.body);
|
||||
if (info['message'] != null) {
|
||||
throw info['message'];
|
||||
}
|
||||
final user = GogsUser.fromJson(info);
|
||||
|
||||
await _addAccount(Account(
|
||||
platform: PlatformType.gogs,
|
||||
domain: domain,
|
||||
token: token,
|
||||
login: user.username!,
|
||||
avatarUrl: user.avatarUrl!,
|
||||
));
|
||||
} finally {
|
||||
loading = false;
|
||||
notifyListeners();
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: refactor
|
||||
Future fetchGogs(
|
||||
String p, {
|
||||
requestType = 'GET',
|
||||
Map<String, dynamic> body = const {},
|
||||
}) async {
|
||||
http.Response res;
|
||||
Map<String, String> headers = {
|
||||
late http.Response res;
|
||||
final headers = <String, String>{
|
||||
'Authorization': 'token $token',
|
||||
HttpHeaders.contentTypeHeader: 'application/json'
|
||||
};
|
||||
|
@ -334,7 +349,7 @@ class AuthModel with ChangeNotifier {
|
|||
case 'DELETE':
|
||||
{
|
||||
await http.delete(
|
||||
'${activeAccount.domain}/api/v5$p',
|
||||
Uri.parse('${activeAccount!.domain}/api/v1$p'),
|
||||
headers: headers,
|
||||
);
|
||||
break;
|
||||
|
@ -342,7 +357,7 @@ class AuthModel with ChangeNotifier {
|
|||
case 'POST':
|
||||
{
|
||||
res = await http.post(
|
||||
'${activeAccount.domain}/api/v5$p',
|
||||
Uri.parse('${activeAccount!.domain}/api/v1$p'),
|
||||
headers: headers,
|
||||
body: jsonEncode(body),
|
||||
);
|
||||
|
@ -351,7 +366,7 @@ class AuthModel with ChangeNotifier {
|
|||
case 'PATCH':
|
||||
{
|
||||
res = await http.patch(
|
||||
'${activeAccount.domain}/api/v5$p',
|
||||
Uri.parse('${activeAccount!.domain}/api/v1$p'),
|
||||
headers: headers,
|
||||
body: jsonEncode(body),
|
||||
);
|
||||
|
@ -359,7 +374,7 @@ class AuthModel with ChangeNotifier {
|
|||
}
|
||||
default:
|
||||
{
|
||||
res = await http.get('${activeAccount.domain}/api/v5$p',
|
||||
res = await http.get(Uri.parse('${activeAccount!.domain}/api/v1$p'),
|
||||
headers: headers);
|
||||
break;
|
||||
}
|
||||
|
@ -371,12 +386,99 @@ class AuthModel with ChangeNotifier {
|
|||
return;
|
||||
}
|
||||
|
||||
Future<DataWithPage> fetchGiteeWithPage(String path,
|
||||
{int page, int limit}) async {
|
||||
Future<DataWithPage> fetchGogsWithPage(String path,
|
||||
{int? page, int? limit}) async {
|
||||
page = page ?? 1;
|
||||
limit = limit ?? pageSize;
|
||||
limit = limit ?? kPageSize;
|
||||
|
||||
var uri = Uri.parse('${activeAccount.domain}/api/v5$path');
|
||||
var uri = Uri.parse('${activeAccount!.domain}/api/v1$path');
|
||||
uri = uri.replace(
|
||||
queryParameters: {
|
||||
'page': page.toString(),
|
||||
'limit': limit.toString(),
|
||||
...uri.queryParameters,
|
||||
},
|
||||
);
|
||||
final res = await http.get(uri, headers: {'Authorization': 'token $token'});
|
||||
final info = json.decode(utf8.decode(res.bodyBytes));
|
||||
|
||||
return DataWithPage(
|
||||
data: info,
|
||||
cursor: page + 1,
|
||||
hasMore: info is List && info.isNotEmpty,
|
||||
total: int.tryParse(res.headers['x-total-count'] ?? '') ??
|
||||
kTotalCountFallback,
|
||||
);
|
||||
}
|
||||
|
||||
Future fetchGitee(
|
||||
String p, {
|
||||
requestType = 'GET',
|
||||
Map<String, dynamic> body = const {},
|
||||
}) async {
|
||||
http.Response res;
|
||||
final headers = <String, String>{
|
||||
'Authorization': 'token $token',
|
||||
HttpHeaders.contentTypeHeader: 'application/json'
|
||||
};
|
||||
switch (requestType) {
|
||||
case 'DELETE':
|
||||
{
|
||||
await http.delete(
|
||||
Uri.parse('${activeAccount!.domain}/api/v5$p'),
|
||||
headers: headers,
|
||||
);
|
||||
return;
|
||||
}
|
||||
case 'PUT':
|
||||
{
|
||||
await http.put(
|
||||
Uri.parse('${activeAccount!.domain}/api/v5$p'),
|
||||
headers: headers,
|
||||
);
|
||||
return;
|
||||
}
|
||||
case 'POST':
|
||||
{
|
||||
res = await http.post(
|
||||
Uri.parse('${activeAccount!.domain}/api/v5$p'),
|
||||
headers: headers,
|
||||
body: jsonEncode(body),
|
||||
);
|
||||
break;
|
||||
}
|
||||
case 'PATCH':
|
||||
{
|
||||
res = await http.patch(
|
||||
Uri.parse('${activeAccount!.domain}/api/v5$p'),
|
||||
headers: headers,
|
||||
body: jsonEncode(body),
|
||||
);
|
||||
break;
|
||||
}
|
||||
case 'NO CONTENT':
|
||||
{
|
||||
res = await http.get(Uri.parse('${activeAccount!.domain}/api/v5$p'),
|
||||
headers: headers);
|
||||
return res;
|
||||
}
|
||||
default:
|
||||
{
|
||||
res = await http.get(Uri.parse('${activeAccount!.domain}/api/v5$p'),
|
||||
headers: headers);
|
||||
break;
|
||||
}
|
||||
}
|
||||
final info = json.decode(utf8.decode(res.bodyBytes));
|
||||
return info;
|
||||
}
|
||||
|
||||
Future<DataWithPage> fetchGiteeWithPage(String path,
|
||||
{int? page, int? limit}) async {
|
||||
page = page ?? 1;
|
||||
limit = limit ?? kPageSize;
|
||||
|
||||
var uri = Uri.parse('${activeAccount!.domain}/api/v5$path');
|
||||
uri = uri.replace(
|
||||
queryParameters: {
|
||||
'page': page.toString(),
|
||||
|
@ -388,7 +490,8 @@ class AuthModel with ChangeNotifier {
|
|||
final info = json.decode(utf8.decode(res.bodyBytes));
|
||||
|
||||
final totalPage = int.tryParse(res.headers['total_page'] ?? '');
|
||||
final totalCount = int.tryParse(res.headers['total_count'] ?? '');
|
||||
final totalCount =
|
||||
int.tryParse(res.headers['total_count'] ?? '') ?? kTotalCountFallback;
|
||||
|
||||
return DataWithPage(
|
||||
data: info,
|
||||
|
@ -416,9 +519,9 @@ class AuthModel with ChangeNotifier {
|
|||
await _addAccount(Account(
|
||||
platform: PlatformType.bitbucket,
|
||||
domain: domain,
|
||||
token: user.username,
|
||||
token: user.username!,
|
||||
login: username,
|
||||
avatarUrl: user.avatarUrl,
|
||||
avatarUrl: user.avatarUrl!,
|
||||
appPassword: appPassword,
|
||||
accountId: user.accountId,
|
||||
));
|
||||
|
@ -435,10 +538,13 @@ class AuthModel with ChangeNotifier {
|
|||
}) async {
|
||||
if (p.startsWith('/') && !p.startsWith('/api')) p = '/api/2.0$p';
|
||||
final input = Uri.parse(p);
|
||||
final uri = Uri.parse(activeAccount.domain).replace(
|
||||
userInfo: '${activeAccount.login}:${activeAccount.appPassword}',
|
||||
final uri = Uri.parse(activeAccount!.domain).replace(
|
||||
userInfo: '${activeAccount!.login}:${activeAccount!.appPassword}',
|
||||
path: input.path,
|
||||
query: input.query,
|
||||
queryParameters: {
|
||||
'pagelen': kPageSize.toString(),
|
||||
...input.queryParameters
|
||||
},
|
||||
);
|
||||
if (isPost) {
|
||||
return http.post(
|
||||
|
@ -463,13 +569,12 @@ class AuthModel with ChangeNotifier {
|
|||
return json.decode(utf8.decode(res.bodyBytes));
|
||||
}
|
||||
|
||||
Future<BbPagePayload<List>> fetchBbWithPage(String p) async {
|
||||
Future<ListPayload<dynamic, String?>> fetchBbWithPage(String p) async {
|
||||
final data = await fetchBbJson(p);
|
||||
final v = BbPagination.fromJson(data);
|
||||
return BbPagePayload(
|
||||
return ListPayload(
|
||||
cursor: v.next,
|
||||
total: v.size,
|
||||
data: v.values,
|
||||
items: v.values,
|
||||
hasMore: v.next != null,
|
||||
);
|
||||
}
|
||||
|
@ -479,7 +584,7 @@ class AuthModel with ChangeNotifier {
|
|||
try {
|
||||
loading = true;
|
||||
notifyListeners();
|
||||
final res = await http.get('https://gitee.com/api/v5/user',
|
||||
final res = await http.get(Uri.parse('https://gitee.com/api/v5/user'),
|
||||
headers: {'Authorization': 'token $token'});
|
||||
final info = json.decode(res.body);
|
||||
if (info['message'] != null) {
|
||||
|
@ -491,8 +596,8 @@ class AuthModel with ChangeNotifier {
|
|||
platform: PlatformType.gitee,
|
||||
domain: 'https://gitee.com',
|
||||
token: token,
|
||||
login: user.login,
|
||||
avatarUrl: user.avatarUrl,
|
||||
login: user.login!,
|
||||
avatarUrl: user.avatarUrl!,
|
||||
));
|
||||
} finally {
|
||||
loading = false;
|
||||
|
@ -502,19 +607,26 @@ class AuthModel with ChangeNotifier {
|
|||
|
||||
Future<void> init() async {
|
||||
// Listen scheme
|
||||
_sub = getUriLinksStream().listen(_onSchemeDetected, onError: (err) {
|
||||
_sub = uriLinkStream.listen(_onSchemeDetected, onError: (err) {
|
||||
Fimber.e('getUriLinksStream failed', ex: err);
|
||||
});
|
||||
|
||||
var prefs = await SharedPreferences.getInstance();
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
|
||||
// Read accounts
|
||||
try {
|
||||
String str = prefs.getString(StorageKeys.accounts);
|
||||
final str = prefs.getString(StorageKeys.accounts);
|
||||
// Fimber.d('read accounts: $str');
|
||||
_accounts = (json.decode(str ?? '[]') as List)
|
||||
.map((item) => Account.fromJson(item))
|
||||
.toList();
|
||||
activeAccountIndex = prefs.getInt(StorageKeys.iDefaultAccount);
|
||||
|
||||
if (activeAccount != null) {
|
||||
_activeTab = prefs.getInt(
|
||||
StorageKeys.getDefaultStartTabKey(activeAccount!.platform)) ??
|
||||
0;
|
||||
}
|
||||
} catch (err) {
|
||||
Fimber.e('prefs getAccount failed', ex: err);
|
||||
_accounts = [];
|
||||
|
@ -529,17 +641,31 @@ class AuthModel with ChangeNotifier {
|
|||
super.dispose();
|
||||
}
|
||||
|
||||
Future<void> setDefaultAccount(int v) async {
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
await prefs.setInt(StorageKeys.iDefaultAccount, v);
|
||||
Fimber.d('write default account: $v');
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
var rootKey = UniqueKey();
|
||||
reloadApp() {
|
||||
rootKey = UniqueKey();
|
||||
notifyListeners();
|
||||
}
|
||||
|
||||
setActiveAccountAndReload(int index) async {
|
||||
// https://stackoverflow.com/a/50116077
|
||||
rootKey = UniqueKey();
|
||||
activeAccountIndex = index;
|
||||
setDefaultAccount(activeAccountIndex!);
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
_activeTab = prefs.getInt(
|
||||
StorageKeys.getDefaultStartTabKey(activeAccount.platform)) ??
|
||||
StorageKeys.getDefaultStartTabKey(activeAccount!.platform)) ??
|
||||
0;
|
||||
_ghClient = null;
|
||||
_gqlClient = null;
|
||||
_ghGqlClient = null;
|
||||
_glGqlClient = null;
|
||||
notifyListeners();
|
||||
|
||||
// TODO: strategy
|
||||
|
@ -555,47 +681,48 @@ class AuthModel with ChangeNotifier {
|
|||
}
|
||||
|
||||
// http timeout
|
||||
var _timeoutDuration = Duration(seconds: 10);
|
||||
final _timeoutDuration = const Duration(seconds: 10);
|
||||
// var _timeoutDuration = Duration(seconds: 1);
|
||||
|
||||
GitHub _ghClient;
|
||||
GitHub? _ghClient;
|
||||
GitHub get ghClient {
|
||||
if (token == null) return null;
|
||||
if (_ghClient == null) {
|
||||
_ghClient = GitHub(auth: Authentication.withToken(token));
|
||||
}
|
||||
return _ghClient;
|
||||
_ghClient ??= GitHub(auth: Authentication.withToken(token));
|
||||
return _ghClient!;
|
||||
}
|
||||
|
||||
ArtemisClient _gqlClient;
|
||||
ArtemisClient get gqlClient {
|
||||
if (token == null) return null;
|
||||
|
||||
if (_gqlClient == null) {
|
||||
_gqlClient = ArtemisClient.fromLink(
|
||||
HttpLink(
|
||||
_apiPrefix + '/graphql',
|
||||
defaultHeaders: {HttpHeaders.authorizationHeader: 'token $token'},
|
||||
serializer: GithubRequestSerializer(),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
return _gqlClient;
|
||||
Client? _ghGqlClient;
|
||||
Client get ghGqlClient {
|
||||
return _ghGqlClient ??= Client(
|
||||
link: HttpLink(
|
||||
'$_apiPrefix/graphql',
|
||||
defaultHeaders: {HttpHeaders.authorizationHeader: 'token $token'},
|
||||
),
|
||||
// https://ferrygraphql.com/docs/fetch-policies#default-fetchpolicies
|
||||
defaultFetchPolicies: {OperationType.query: FetchPolicy.NetworkOnly},
|
||||
);
|
||||
}
|
||||
|
||||
Future<dynamic> query(String query, [String _token]) async {
|
||||
if (_token == null) {
|
||||
_token = token;
|
||||
}
|
||||
if (_token == null) {
|
||||
throw 'token is null';
|
||||
}
|
||||
Client? _glGqlClient;
|
||||
Client get glGqlClient {
|
||||
return _glGqlClient ??= Client(
|
||||
link: HttpLink(
|
||||
Uri.parse(activeAccount!.domain)
|
||||
.replace(path: '/api/graphql')
|
||||
.toString(),
|
||||
defaultHeaders: {'Private-Token': token},
|
||||
),
|
||||
// https://ferrygraphql.com/docs/fetch-policies#default-fetchpolicies
|
||||
defaultFetchPolicies: {OperationType.query: FetchPolicy.NetworkOnly},
|
||||
);
|
||||
}
|
||||
|
||||
Future<dynamic> query(String query, [String? t]) async {
|
||||
t ??= token;
|
||||
|
||||
final res = await http
|
||||
.post(_apiPrefix + '/graphql',
|
||||
.post(Uri.parse('$_apiPrefix/graphql'),
|
||||
headers: {
|
||||
HttpHeaders.authorizationHeader: 'token $_token',
|
||||
HttpHeaders.authorizationHeader: 'token $t',
|
||||
HttpHeaders.contentTypeHeader: 'application/json'
|
||||
},
|
||||
body: json.encode({'query': query}))
|
||||
|
@ -611,11 +738,13 @@ class AuthModel with ChangeNotifier {
|
|||
return data['data'];
|
||||
}
|
||||
|
||||
String _oauthState;
|
||||
void redirectToGithubOauth() {
|
||||
String? _oauthState;
|
||||
void redirectToGithubOauth([publicOnly = false]) {
|
||||
_oauthState = nanoid();
|
||||
var scope = Uri.encodeComponent('user,repo,read:org,notifications');
|
||||
launchUrl(
|
||||
final repoScope = publicOnly ? 'public_repo' : 'repo';
|
||||
final scope = Uri.encodeComponent(
|
||||
['user', repoScope, 'read:org', 'notifications'].join(','));
|
||||
launchStringUrl(
|
||||
'https://github.com/login/oauth/authorize?client_id=$clientId&redirect_uri=gittouch://login&scope=$scope&state=$_oauthState',
|
||||
);
|
||||
}
|
||||
|
@ -627,8 +756,8 @@ class AuthModel with ChangeNotifier {
|
|||
_activeTab = v;
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
await prefs.setInt(
|
||||
StorageKeys.getDefaultStartTabKey(activeAccount.platform), v);
|
||||
Fimber.d('write default start tab for ${activeAccount.platform}: $v');
|
||||
StorageKeys.getDefaultStartTabKey(activeAccount!.platform), v);
|
||||
Fimber.d('write default start tab for ${activeAccount!.platform}: $v');
|
||||
notifyListeners();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,146 +1,153 @@
|
|||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'bitbucket.g.dart';
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbPagination {
|
||||
int pagelen;
|
||||
int size;
|
||||
int page;
|
||||
String next;
|
||||
List values;
|
||||
BbPagination();
|
||||
BbPagination({required this.values});
|
||||
factory BbPagination.fromJson(Map<String, dynamic> json) =>
|
||||
_$BbPaginationFromJson(json);
|
||||
String? next;
|
||||
List values;
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbRepoOwner {
|
||||
String nickname;
|
||||
String displayName;
|
||||
String type; // user, team
|
||||
Map<String, dynamic> links;
|
||||
String get avatarUrl => links['avatar']['href'];
|
||||
BbRepoOwner();
|
||||
factory BbRepoOwner.fromJson(Map<String, dynamic> json) =>
|
||||
_$BbRepoOwnerFromJson(json);
|
||||
String? nickname;
|
||||
String? displayName;
|
||||
String? type; // user, team
|
||||
Map<String, dynamic>? links;
|
||||
String? get avatarUrl => links!['avatar']['href'];
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbUser extends BbRepoOwner {
|
||||
String username;
|
||||
bool isStaff;
|
||||
DateTime createdOn;
|
||||
String accountId;
|
||||
BbUser();
|
||||
factory BbUser.fromJson(Map<String, dynamic> json) => _$BbUserFromJson(json);
|
||||
String? username;
|
||||
bool? isStaff;
|
||||
DateTime? createdOn;
|
||||
String? accountId;
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbRepo {
|
||||
String name;
|
||||
BbRepoOwner owner;
|
||||
String website;
|
||||
String language;
|
||||
int size;
|
||||
String type; // repository
|
||||
bool isPrivate;
|
||||
DateTime createdOn;
|
||||
DateTime updatedOn;
|
||||
String description;
|
||||
String fullName;
|
||||
String slug;
|
||||
BbRepoMainbranch mainbranch;
|
||||
Map<String, dynamic> links;
|
||||
String get ownerLogin => fullName.split('/')[0]; // owner has no username
|
||||
String get avatarUrl => links['avatar']['href'];
|
||||
BbRepo();
|
||||
factory BbRepo.fromJson(Map<String, dynamic> json) => _$BbRepoFromJson(json);
|
||||
String? name;
|
||||
BbRepoOwner? owner;
|
||||
String? website;
|
||||
String? language;
|
||||
int? size;
|
||||
String? type; // repository
|
||||
bool? isPrivate;
|
||||
DateTime? createdOn;
|
||||
DateTime? updatedOn;
|
||||
String? description;
|
||||
String? fullName;
|
||||
String? slug;
|
||||
BbRepoMainbranch? mainbranch;
|
||||
Map<String, dynamic>? links;
|
||||
String get ownerLogin => fullName!.split('/')[0]; // owner has no username
|
||||
String? get avatarUrl => links!['avatar']['href'];
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbRepoMainbranch {
|
||||
String type;
|
||||
String name;
|
||||
BbRepoMainbranch();
|
||||
factory BbRepoMainbranch.fromJson(Map<String, dynamic> json) =>
|
||||
_$BbRepoMainbranchFromJson(json);
|
||||
String? type;
|
||||
String? name;
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbTree {
|
||||
BbTree({required this.type, required this.path});
|
||||
factory BbTree.fromJson(Map<String, dynamic> json) => _$BbTreeFromJson(json);
|
||||
String type;
|
||||
String path;
|
||||
int size;
|
||||
Map<String, dynamic> links;
|
||||
BbTree();
|
||||
factory BbTree.fromJson(Map<String, dynamic> json) => _$BbTreeFromJson(json);
|
||||
int? size;
|
||||
Map<String, dynamic>? links;
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbCommit {
|
||||
String message;
|
||||
DateTime date;
|
||||
String hash;
|
||||
BbCommitAuthor author;
|
||||
BbCommit();
|
||||
factory BbCommit.fromJson(Map<String, dynamic> json) =>
|
||||
_$BbCommitFromJson(json);
|
||||
String? message;
|
||||
DateTime? date;
|
||||
String? hash;
|
||||
BbCommitAuthor? author;
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbCommitAuthor {
|
||||
String raw;
|
||||
BbRepoOwner user;
|
||||
BbCommitAuthor();
|
||||
factory BbCommitAuthor.fromJson(Map<String, dynamic> json) =>
|
||||
_$BbCommitAuthorFromJson(json);
|
||||
String? raw;
|
||||
BbRepoOwner? user;
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbIssues {
|
||||
String priority;
|
||||
String state;
|
||||
BbRepo repository;
|
||||
String title;
|
||||
BbRepoOwner reporter;
|
||||
DateTime createdOn;
|
||||
Map<String, dynamic> links;
|
||||
String get issueLink => links['self']['href'];
|
||||
BbIssues();
|
||||
factory BbIssues.fromJson(Map<String, dynamic> json) =>
|
||||
_$BbIssuesFromJson(json);
|
||||
String? priority;
|
||||
String? state;
|
||||
BbRepo? repository;
|
||||
String? title;
|
||||
BbRepoOwner? reporter;
|
||||
DateTime? createdOn;
|
||||
Map<String, dynamic>? links;
|
||||
String? get issueLink => links!['self']['href'];
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbPulls {
|
||||
String description;
|
||||
BbRepoOwner author;
|
||||
String title;
|
||||
Map<String, dynamic> links;
|
||||
String get pullRequestLink => links['self']['href'];
|
||||
DateTime createdOn;
|
||||
BbPulls();
|
||||
factory BbPulls.fromJson(Map<String, dynamic> json) =>
|
||||
_$BbPullsFromJson(json);
|
||||
String? description;
|
||||
BbRepoOwner? author;
|
||||
String? title;
|
||||
Map<String, dynamic>? links;
|
||||
String? get pullRequestLink => links!['self']['href'];
|
||||
DateTime? createdOn;
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbCommentContent {
|
||||
String raw;
|
||||
String markup;
|
||||
String html;
|
||||
BbCommentContent();
|
||||
factory BbCommentContent.fromJson(Map<String, dynamic> json) =>
|
||||
_$BbCommentContentFromJson(json);
|
||||
String? raw;
|
||||
String? markup;
|
||||
String? html;
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbComment {
|
||||
String createdOn;
|
||||
String updatedOn;
|
||||
BbCommentContent content;
|
||||
BbRepoOwner user;
|
||||
BbComment();
|
||||
factory BbComment.fromJson(Map<String, dynamic> json) =>
|
||||
_$BbCommentFromJson(json);
|
||||
String? createdOn;
|
||||
String? updatedOn;
|
||||
BbCommentContent? content;
|
||||
BbRepoOwner? user;
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class BbBranch {
|
||||
BbBranch();
|
||||
factory BbBranch.fromJson(Map<String, dynamic> json) =>
|
||||
_$BbBranchFromJson(json);
|
||||
String? name;
|
||||
String? type;
|
||||
}
|
||||
|
|