Compare commits

...

296 Commits

Author SHA1 Message Date
NaiJi ✨ 291a6507ae feat(jobs): Implement garbage collection job (#506)
continuous-integration/drone/push Build is passing Details
Co-authored-by: Inex Code <inex.code@selfprivacy.org>
Reviewed-on: #506
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
Co-authored-by: NaiJi <naijiworld@protonmail.com>
Co-committed-by: NaiJi <naijiworld@protonmail.com>
2024-05-25 12:32:21 +03:00
Inex Code 4930fc2387 feat: Show the error screen when libsecret fails
continuous-integration/drone/push Build is passing Details
2024-05-02 15:05:38 +03:00
Inex Code 11d0e58334 fix: Flatpak builds didn't work 2024-04-26 18:08:04 +03:00
NaiJi ✨ a6b846cc78 feat(backups): Show how much space a service uses on backup (#500)
continuous-integration/drone/push Build is passing Details
Fixes #434

![image](/attachments/351cc025-8dae-44f2-9bca-18f8950e0780)

Co-authored-by: Inex Code <inex.code@selfprivacy.org>
Reviewed-on: #500
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
Co-authored-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
Co-committed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
2024-04-24 13:18:02 +03:00
NaiJi ✨ 6819192219 feat: Add country names to installation process (#501)
continuous-integration/drone/push Build is passing Details
Fixes #494

Reviewed-on: #501
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
Co-authored-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
Co-committed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
2024-04-24 12:54:32 +03:00
NaiJi ✨ ffdb9d92fb Merge pull request 'fix(backups): Implement filtering for enabled services for backups' (#499) from filter-enabled-backup-services into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #499
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2024-04-17 18:48:56 +03:00
NaiJi ✨ 1c42598787 fix(backups): Implement filtering for enabled services for backups
- Resolve: #433
2024-04-16 23:03:11 +04:00
dettlaff c179a109fd fix: add subtitle for flash button (#462)
continuous-integration/drone/push Build is passing Details
closes #453

![image](/attachments/398ae5b1-df90-43cf-8389-0be4bafde9fd)

idk how to change hover

Co-authored-by: Inex Code <inex.code@selfprivacy.org>
Reviewed-on: #462
Co-authored-by: dettlaff <dettlaff@riseup.net>
Co-committed-by: dettlaff <dettlaff@riseup.net>
2024-04-11 13:53:31 +03:00
def add2366e6b feat: add copy link to service page (#461)
continuous-integration/drone/push Build is passing Details
closes #452

Co-authored-by: Inex Code <inex.code@selfprivacy.org>
Reviewed-on: #461
Co-authored-by: def <dettlaff@riseup.net>
Co-committed-by: def <dettlaff@riseup.net>
2024-04-11 13:14:20 +03:00
dettlaff 0dc281a4f6 feat: add route to service cards in storage page (#446)
continuous-integration/drone/push Build is passing Details
Co-authored-by: Inex Code <inex.code@selfprivacy.org>
Reviewed-on: #446
Co-authored-by: dettlaff <dettlaff@riseup.net>
Co-committed-by: dettlaff <dettlaff@riseup.net>
2024-04-11 13:04:22 +03:00
dettlaff a4737e9f05 feat: cubit.state.progress check for connect_to_existing
continuous-integration/drone/push Build is passing Details
2024-04-03 13:00:27 +03:00
Inex Code bf66717854 fix(docs): Digital Ocean DNS used wrong manual
continuous-integration/drone/push Build is failing Details
2024-04-03 12:54:33 +03:00
Inex Code d3b7f31c65 chore: Upgrade flutter and dependencies 2024-04-02 18:11:29 +03:00
Inex Code 1684d60a54 ci: Fix appimage builds (#488)
continuous-integration/drone/push Build was killed Details
continuous-integration/drone/tag Build is failing Details
Reviewed-on: #488
2024-03-14 21:32:21 +02:00
Inex Code aad595c04e Merge pull request 'chore: update iOS icons' (#487) from inex/release-party into master
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/tag Build is failing Details
Reviewed-on: #487
2024-03-14 20:04:25 +02:00
Inex Code c078dee25a chore: update iOS icons 2024-03-14 20:04:11 +02:00
Inex Code 04401e3c00 hotfix: Backups unable to init
continuous-integration/drone/push Build was killed Details
2024-03-14 19:51:51 +02:00
Inex Code 66b487545f Merge pull request 'chore: 0.11.0 release' (#485) from inex/release-party into master
continuous-integration/drone/push Build is failing Details
Reviewed-on: #485
2024-03-14 19:25:45 +02:00
Inex Code 48c28261b8 chore: 0.11.0 release 2024-03-14 20:22:03 +03:00
Inex Code e874392a83 refactor: Remove the server deletion function
continuous-integration/drone/push Build is failing Details
2024-03-14 18:19:52 +02:00
Inex Code 7a2d468324 Merge pull request 'update translations' (#478) from translations into master
continuous-integration/drone/push Build is failing Details
Reviewed-on: #478
2024-03-14 18:17:26 +02:00
Weblate 79b9f53fa6 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/
2024-03-14 16:00:58 +00:00
Dmitri B 61752c71f2 Translated using Weblate (Estonian)
Currently translated at 100.0% (571 of 571 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/et/
2024-03-14 16:00:58 +00:00
Deem Alosili 54ebaf34db Translated using Weblate (Arabic)
Currently translated at 98.7% (564 of 571 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ar/
2024-03-14 16:00:58 +00:00
Inex Code a9114fb3f4 Translated using Weblate (Kazakh)
Currently translated at 20.4% (117 of 571 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/kk/
2024-03-14 16:00:58 +00:00
Inex Code c1a9906729 Translated using Weblate (German)
Currently translated at 82.3% (470 of 571 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/de/
2024-03-14 16:00:58 +00:00
Inex Code d12ff88ab3 Translated using Weblate (Russian)
Currently translated at 100.0% (571 of 571 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ru/
2024-03-14 16:00:58 +00:00
Yaron 5144b0dcd9 Translated using Weblate (Hebrew)
Currently translated at 100.0% (546 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/he/
2024-03-14 16:00:58 +00:00
def 577098193b Translated using Weblate (French)
Currently translated at 41.9% (229 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/fr/
2024-03-14 16:00:58 +00:00
Meko b288230c3b Translated using Weblate (Ukrainian)
Currently translated at 100.0% (546 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/uk/
2024-03-14 16:00:58 +00:00
Deem Alosili e665a8e0e4 Translated using Weblate (Arabic)
Currently translated at 100.0% (564 of 564 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ar/
2024-03-14 16:00:58 +00:00
Meko edebd82ef0 Translated using Weblate (Ukrainian)
Currently translated at 99.6% (544 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/uk/
2024-03-14 16:00:57 +00:00
def 9993ec2c87 Translated using Weblate (Arabic)
Currently translated at 99.6% (562 of 564 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ar/
2024-03-14 16:00:57 +00:00
Deem Alosili fff7bf98a5 Translated using Weblate (Arabic)
Currently translated at 99.6% (562 of 564 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ar/
2024-03-14 16:00:57 +00:00
def 3e70ff03a3 Translated using Weblate (Indonesian)
Currently translated at 0.1% (1 of 564 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/id/
2024-03-14 16:00:57 +00:00
def 89f6288f88 Translated using Weblate (French)
Currently translated at 41.5% (227 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/fr/
2024-03-14 16:00:57 +00:00
Meko 623e31fd2c Translated using Weblate (Ukrainian)
Currently translated at 90.2% (493 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/uk/
2024-03-14 16:00:57 +00:00
def 18b496ea9b Translated using Weblate (Spanish)
Currently translated at 17.0% (93 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/es/
2024-03-14 16:00:57 +00:00
def 55a2dd080c Translated using Weblate (German)
Currently translated at 85.5% (467 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/de/
2024-03-14 16:00:57 +00:00
Nil f5ea94fd1b Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (564 of 564 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/zh_Hans/
2024-03-14 16:00:57 +00:00
Deem Alosili e0a3698a51 Translated using Weblate (Arabic)
Currently translated at 96.6% (545 of 564 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ar/
2024-03-14 16:00:57 +00:00
Inex Code 3be041c4b5 Translated using Weblate (Estonian)
Currently translated at 100.0% (546 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/et/
2024-03-14 16:00:57 +00:00
Inex Code 6e2c2407a4 Translated using Weblate (Hebrew)
Currently translated at 97.8% (534 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/he/
2024-03-14 16:00:57 +00:00
Inex Code 66a59b7a9d Translated using Weblate (Latvian)
Currently translated at 31.1% (170 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/lv/
2024-03-14 16:00:57 +00:00
Inex Code 5b1e0a5cea Translated using Weblate (Slovenian)
Currently translated at 35.5% (194 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/sl/
2024-03-14 16:00:57 +00:00
Inex Code 5394c06d46 Translated using Weblate (Azerbaijani)
Currently translated at 74.5% (407 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/az/
2024-03-14 16:00:57 +00:00
Inex Code 336193b531 Translated using Weblate (Thai)
Currently translated at 41.9% (229 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/th/
2024-03-14 16:00:57 +00:00
Inex Code 4a99c9955a Translated using Weblate (Slovak)
Currently translated at 74.5% (407 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/sk/
2024-03-14 16:00:57 +00:00
Inex Code 261990acc8 Translated using Weblate (French)
Currently translated at 41.2% (225 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/fr/
2024-03-14 16:00:57 +00:00
Inex Code 22323de1d6 Translated using Weblate (Belarusian)
Currently translated at 76.7% (419 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/be/
2024-03-14 16:00:57 +00:00
Inex Code c93a98058b Translated using Weblate (Ukrainian)
Currently translated at 89.3% (488 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/uk/
2024-03-14 16:00:57 +00:00
Inex Code 58697d66d9 Translated using Weblate (Spanish)
Currently translated at 17.0% (93 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/es/
2024-03-14 16:00:57 +00:00
Inex Code 6c7d342911 Translated using Weblate (Czech)
Currently translated at 76.7% (419 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/cs/
2024-03-14 16:00:57 +00:00
Inex Code e7634df7c0 Translated using Weblate (Polish)
Currently translated at 86.8% (474 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/pl/
2024-03-14 16:00:57 +00:00
Inex Code b3fd65e02d Translated using Weblate (German)
Currently translated at 85.1% (465 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/de/
2024-03-14 16:00:57 +00:00
Inex Code 3b28c31a9f Translated using Weblate (Russian)
Currently translated at 100.0% (546 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ru/
2024-03-14 16:00:57 +00:00
Inex Code c9f031fc41 Added translation using Weblate (Chinese (Traditional)) 2024-03-14 16:00:57 +00:00
Inex Code 21c24d7492 Added translation using Weblate (Chinese (Simplified)) 2024-03-14 16:00:57 +00:00
Inex Code 7caa84002c Added translation using Weblate (Arabic) 2024-03-14 16:00:57 +00:00
TabithiS 60359eea03 Translated using Weblate (Kazakh)
Currently translated at 20.9% (118 of 564 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/kk/
2024-03-14 16:00:57 +00:00
Meko a59c384106 Translated using Weblate (Ukrainian)
Currently translated at 89.3% (488 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/uk/
2024-03-14 16:00:57 +00:00
Dmitri B a9ee135241 Translated using Weblate (Estonian)
Currently translated at 100.0% (546 of 546 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/et/
2024-03-14 16:00:57 +00:00
Weblate 6137602637 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/
2024-03-14 16:00:57 +00:00
TabithiS 06cfd211a8 Translated using Weblate (Ukrainian)
Currently translated at 85.7% (462 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/uk/
2024-03-14 16:00:57 +00:00
TabithiS edb4695228 Translated using Weblate (Polish)
Currently translated at 88.8% (479 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/pl/
2024-03-14 16:00:57 +00:00
TabithiS bd41849aeb Translated using Weblate (Japanese)
Currently translated at 0.5% (3 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ja/
2024-03-14 16:00:57 +00:00
TabithiS c54bfef4fc Translated using Weblate (Kazakh)
Currently translated at 2.7% (15 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/kk/
2024-03-14 16:00:57 +00:00
Nagibator Nagibuchiy 1a22917d0f Translated using Weblate (Ukrainian)
Currently translated at 81.0% (437 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/uk/
2024-03-14 16:00:57 +00:00
Nagibator Nagibuchiy 3e61dafa3f Translated using Weblate (Ukrainian)
Currently translated at 100.0% (1 of 1 strings)

Translation: SelfPrivacy/SelfPrivacy App Markdown: how_digital_ocean
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app-markdown-how_digital_ocean/uk/
2024-03-14 16:00:57 +00:00
TabithiS 8780ceec83 Translated using Weblate (Kazakh)
Currently translated at 0.5% (3 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/kk/
2024-03-14 16:00:57 +00:00
Nagibator Nagibuchiy 120bb85f26 Translated using Weblate (Ukrainian)
Currently translated at 80.3% (433 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/uk/
2024-03-14 16:00:57 +00:00
TabithiS 081c30dd24 Translated using Weblate (Ukrainian)
Currently translated at 80.3% (433 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/uk/
2024-03-14 16:00:57 +00:00
Dmitri B b8ca1093fc Translated using Weblate (Estonian)
Currently translated at 100.0% (539 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/et/
2024-03-14 16:00:57 +00:00
Dmitri B 55b9ca652f Translated using Weblate (Estonian)
Currently translated at 100.0% (539 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/et/
2024-03-14 16:00:57 +00:00
Dmitri eeb93d6523 Translated using Weblate (Estonian)
Currently translated at 50.2% (271 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/et/
2024-03-14 16:00:57 +00:00
Yaron 8f3078931d Translated using Weblate (Hebrew)
Currently translated at 100.0% (539 of 539 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/he/
2024-03-14 16:00:57 +00:00
Inex Code b0528aba81 fix: english strings
continuous-integration/drone/push Build is passing Details
2024-03-14 17:59:49 +02:00
dettlaff b62c0cf388 fix: delete old english strings 2024-03-14 17:59:49 +02:00
Inex Code 6e1ed0474b build(ios): Update ios build things
continuous-integration/drone/push Build is passing Details
2024-03-13 19:35:25 +03:00
Inex Code b25e2f2d5f feat(ui): Overflow of the network graph card 2024-03-13 19:22:56 +03:00
Inex Code 4b08b96b38 feat(ui): Text overflow on the storage card 2024-03-13 19:03:44 +03:00
Inex Code f1c5fa7d82 feat(ui): Try out iOS bottom navbar 2024-03-13 18:32:04 +03:00
Inex Code e9538a4a84 feat(ui): Use adaptive widgets where possible 2024-03-13 18:20:50 +03:00
Inex Code 1cb5df19f3 fix: Title overflow of the provider and service cards titles 2024-03-13 18:02:13 +03:00
Inex Code bba29caeba feat: Add ssh settings
continuous-integration/drone/push Build is passing Details
2024-03-09 19:30:43 +03:00
Inex Code b2384a5635 feat(jobs): Block starting client-side jobs when server is rebuilding or moving a service 2024-03-08 14:14:23 +03:00
Inex Code ff2b6b8f03 refactor(ui): Move server settings to a separate screen 2024-03-05 18:10:15 +03:00
NaiJi ✨ 50ba929519 Merge pull request 'feat(ui): Move provider card title to the top row' (#449) from move-title-in-cards into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #449
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2024-03-04 13:01:04 +02:00
NaiJi ✨ 3fb7013f84 Merge branch 'master' into move-title-in-cards 2024-03-04 12:58:48 +02:00
NaiJi ✨ aec259301c feat(ui): Change provider card title to headline medium
- Resolve: #448
2024-03-04 14:58:16 +04:00
NaiJi ✨ b8b8ac43ea Merge branch 'master' into move-title-in-cards 2024-03-04 12:42:27 +02:00
Inex Code 67bcbe419f fix: Do not include faulty link-local DNS records in the list of found records
continuous-integration/drone/push Build is passing Details
2024-03-04 01:31:27 +03:00
Inex Code 60c6736487 fix: Empty server confirmation screen during recovery
continuous-integration/drone/push Build is passing Details
2024-03-02 18:50:05 +02:00
Inex Code b29ee2e90e fix: Misleading value of "Do not verify TLS"
continuous-integration/drone/push Build is passing Details
2024-03-01 11:16:53 +02:00
Inex Code 6611093f48 Merge pull request 'fix: Detect the situation when we have faulty link-local IPv6 records' (#473) from inex/fix-linklocal-ipv6 into master
continuous-integration/drone/push Build was killed Details
Reviewed-on: #473
Reviewed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
2024-03-01 11:14:24 +02:00
Inex Code 643020ebd7 fix: Detect the situation when we have faulty link-local IPv6 records 2024-03-01 11:54:27 +03:00
Inex Code c8577b3bdf fix: When using fallback upgrade, UI showed that upgrade failed
continuous-integration/drone/push Build is passing Details
2024-02-23 20:15:39 +03:00
Inex Code 212c60c613 Merge pull request 'fix: Return the binds migration interface' (#467) from inex/binds-migration into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #467
2024-02-23 18:51:52 +02:00
Inex Code a9a7b04ad5 fix: Return the binds migration interface
Turns out, there are still servers that didn't perform the binds migration. The can't perform it anymore because email changed the id. I'm getting back the option to perform the binds migration, with some fallback defaults.
2024-02-23 19:50:28 +03:00
Inex Code 490e5f92f3 refactor(ui): Code deduplication in AboutApplicationPage
continuous-integration/drone/push Build is passing Details
2024-02-23 17:56:54 +02:00
Inex Code e36cba045a feat(ui): Select device icon depending on the screen width 2024-02-23 17:56:54 +02:00
Inex Code b4f700d56a feat(ui): Select device icon depending on the platform we are runnning on 2024-02-23 17:56:54 +02:00
Inex Code 9532ddc8af feat(ui): About page now contains links 2024-02-23 17:56:54 +02:00
Inex Code 0d12b1d2d7 Merge pull request 'refactor: Introduce the API connection repository' (#440) from api-connection-refactor into master
continuous-integration/drone/push Build was killed Details
Reviewed-on: #440
Reviewed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
2024-02-23 16:49:39 +02:00
Inex Code 275e8b1f40 chore: Fixes from review 2024-02-23 17:49:10 +03:00
Inex Code 160e6d3b35 refactor: Remove unused job 2024-02-21 05:00:45 +03:00
Inex Code 7bb96b5ed0 chore: remove prints 2024-02-21 00:45:32 +03:00
Inex Code 43a339af91 refactor: Code deduplication in server data reload 2024-02-20 23:34:45 +03:00
Inex Code caa2fd3b8e refactor: Handle situation when the job has to be removed
Closes #166
2024-02-20 23:17:36 +03:00
Inex Code 4eb8f34e37 Merge remote-tracking branch 'origin/master' into api-connection-refactor 2024-02-20 20:13:19 +03:00
Inex Code 92cf2cde6d refactor: Refactor ServerDetailsCubit to use ApiConnectionRepository 2024-02-20 20:09:14 +03:00
Inex Code 9459191c09 refactor: Remove Job dependency on ClientJobsCubit 2024-02-20 20:04:39 +03:00
Inex Code 16094a3257 refactor: Rework ClientJobs cubit so it doesn't depend on other cubits
Also implemented tracking of the jobs and rebuild status
2024-02-20 19:33:24 +03:00
Inex Code fdb40fccd7 fix: Init ApiConnectionRepository after server access recovery 2024-02-14 15:59:01 +03:00
Inex Code 9a1f47711c chore: Update GraphQL schema with experimental system rebuild tracking 2024-02-12 20:20:30 +03:00
Inex Code 455b1ed7f9 refactor: Replace UsersCubit with UsersBloc 2024-02-09 18:01:05 +03:00
Inex Code e5f00f8770 refactor: Make sure that blocs use sealed classes 2024-02-09 16:54:04 +03:00
Inex Code 710b9b53dd refactor: Replace ApiDevicesCubit with DevicesBloc 2024-02-09 14:07:03 +03:00
Inex Code 27e5abfe4a Merge pull request 'feat: change NavigationDestinationLabelBehavior' (#458) from subtitles_for_menu_options into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #458
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2024-02-08 17:18:28 +02:00
def 035fe990d0 Merge branch 'master' into subtitles_for_menu_options 2024-02-08 17:15:21 +02:00
Inex Code 3a525f0d11 refactor: Replace RecoveryKeyCubit with RecoveryKeyBloc 2024-02-08 18:08:29 +03:00
Inex Code 1daf957245 chore: Move ConnectionStatus bloc to bloc folder 2024-02-08 16:58:45 +03:00
Inex Code 0f26683758 Merge pull request 'fix: remove snackbar style notifs' (#457) from remove_snackbar_style_notif into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #457
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2024-02-08 14:40:17 +02:00
def 087deede3a Merge branch 'master' into remove_snackbar_style_notif 2024-02-08 14:39:30 +02:00
Inex Code 46910061ed ci: Update Windows build
continuous-integration/drone/push Build was killed Details
2024-02-08 14:30:50 +02:00
aliaksei tratseuski dd81053f42 refactor(UI): Rewrite onboarding page
continuous-integration/drone/push Build was killed Details
rewrote OnboardingPage:
* decomposed into separate widgets
* now content stays centered on wide screens (set so width won't expand further than 480px)
* pageController is now properly disposed
* added some more code changes to
    * main (error widget builder)
    * brand_header (centerTitle instead of empty actions list)
    * console_page (listener callback fix, used gaps instead of SizedBox'es, added keys to list items)
    * service_page (just cleaner build method)
	* removed some dead code

Co-authored-by: Aliaksei Tratseuski <aliaksei.tratseuski@gmail.com>
Reviewed-on: #444
Co-authored-by: aliaksei tratseuski <misterfourtytwo@noreply.git.selfprivacy.org>
Co-committed-by: aliaksei tratseuski <misterfourtytwo@noreply.git.selfprivacy.org>
2024-02-08 13:59:52 +02:00
dettlaff c67661ff65 feat: change NavigationDestinationLabelBehavior 2024-02-08 00:19:27 +04:00
dettlaff ba0e247fba fix: remove SnackBarBehaviov 2024-02-08 00:06:55 +04:00
Inex Code 418d96b842 Merge pull request 'fix(hetzner): Fix the resize volume request' (#456) from hetzner-volume-resize-hotfix into master
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/tag Build is passing Details
Reviewed-on: #456
2024-02-07 12:47:41 +02:00
Inex Code 74675cab23 chore: Bump version to 0.10.1 2024-02-07 13:47:22 +03:00
Inex Code 98228cfc05 fix(hetzner): Fix the resize volume request 2024-02-07 13:39:41 +03:00
Inex Code 6914b01d2a refactor: remove ProviderVolumes cubit 2024-02-06 18:21:21 +03:00
Aliaksei Tratseuski 370186030a added keys to segmented_buttons _ButtonSegment's
continuous-integration/drone/push Build is passing Details
2024-02-05 12:59:29 +02:00
Aliaksei Tratseuski 40f4f8822f chore: segmented_buttons rewrite 2024-02-05 12:59:29 +02:00
NaiJi ✨ 1d834703be feat(ui): Move provider card title to the top row
- Resolve: #448
2024-02-04 11:12:14 +04:00
Inex Code 3b9d616045 refactor: Introduce VolumesBloc, remove ServerVolumeCubit 2024-02-01 18:30:06 +04:00
Inex Code 8684a2a48a Merge pull request 'style: Enable directives_ordering lint' (#445) from directives_ordering into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #445
Reviewed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
2024-01-31 18:25:43 +02:00
Inex Code 3222a9b500 refactor: Init blocs in initState and not in widget build 2024-01-31 18:06:49 +04:00
Inex Code e330f71b63 refactor: Optimistic state update when forgetting a snapshot 2024-01-31 18:06:22 +04:00
Inex Code 1ba8f324fe refactor: Use transformers for blocs 2024-01-31 16:17:27 +04:00
Inex Code 21c0e200a9 fix: Regenerate codegen for updated model name 2024-01-31 16:03:15 +04:00
Inex Code 725c592086 refactor: Fix callbacks returning sets 2024-01-31 15:14:37 +04:00
Inex Code 02870c3149 style: Formatting 2024-01-31 15:05:12 +04:00
Inex Code fe6f900165 refactor: Move event handler registration to the beginning of blocs 2024-01-31 15:04:59 +04:00
Inex Code f46865ca71 style: Apply directives_ordering lint 2024-01-31 14:57:12 +04:00
Inex Code 31c6a18918 Merge remote-tracking branch 'origin/directives_ordering' into api-connection-refactor
# Conflicts:
#	lib/config/bloc_config.dart
#	lib/logic/cubit/app_config_dependent/authentication_dependend_cubit.dart
#	lib/logic/cubit/backups/backups_cubit.dart
#	lib/logic/cubit/dns_records/dns_records_cubit.dart
#	lib/logic/cubit/providers/providers_cubit.dart
#	lib/logic/models/service.dart
#	lib/ui/pages/backups/backup_details.dart
#	lib/ui/pages/backups/change_period_modal.dart
#	lib/ui/pages/backups/change_rotation_quotas_modal.dart
#	lib/ui/pages/backups/copy_encryption_key_modal.dart
#	lib/ui/pages/more/more.dart
#	lib/ui/pages/server_storage/binds_migration/migration_process_page.dart
#	lib/ui/pages/server_storage/server_storage.dart
#	lib/ui/pages/server_storage/storage_card.dart
2024-01-31 14:50:40 +04:00
Inex Code acb5da9a92 style: Enable directives_ordering lint 2024-01-31 09:14:23 +04:00
Inex Code 149969aed8 refactor: Rename ServerVolume model to reflect that it is tied to provider 2024-01-29 20:49:20 +04:00
Inex Code 9bfaf5d381 refactor: Remove usesBinds from ApiServerVolumeCubit 2024-01-29 20:45:49 +04:00
Inex Code bdd00683cd refactor: Optimistic state update when removing all finished jobs 2024-01-29 20:14:12 +04:00
Inex Code 831a0e95eb refactor: Rewrite services cubit to bloc, using ApiRepo streams 2024-01-29 19:58:37 +04:00
Inex Code a5e7725733 refactor: Rewrite backups cubit to bloc, using ApiRepo streams 2024-01-29 17:54:09 +04:00
NaiJi ✨ 76c420301c Merge pull request 'fix(dns): Make sure that we notice domain ownership lost' (#441) from dns-check into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #441
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2024-01-28 09:55:42 +02:00
NaiJi ✨ 2b30136def fix(dns): Make sure that we notice domain ownership lost
- #390
2024-01-28 09:18:36 +04:00
Inex Code b1be3f24d6 refactor: Rewire cubit from depending on server_installation_cubit to the new connection manager 2024-01-26 18:46:09 +04:00
Inex Code 332e31b655 refactor: Remove binds migration 2024-01-26 14:58:59 +04:00
Inex Code 24e5c8baee refactor: Remove unused providers cubit 2024-01-26 14:49:36 +04:00
Inex Code fa21bdf034 refactor: Remove unused timer singleton 2024-01-26 14:43:44 +04:00
Inex Code f10441dca1 Merge pull request 'feat: Enable more languages' (#435) from enable-languages into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #435
2024-01-23 18:50:33 +02:00
Inex Code 82a6f79a35 feat: Enable more languages 2024-01-23 20:49:47 +04:00
Inex Code 1ee02b7433 Merge pull request 'chore: Oops, fix the changelog' (#426) from release-party into master
continuous-integration/drone/push Build was killed Details
continuous-integration/drone/tag Build is passing Details
Reviewed-on: #426
2024-01-19 16:51:41 +02:00
Inex Code bb03bf6a10 chore: Oops, fix the changelog 2024-01-19 17:51:25 +03:00
Inex Code e7f02e4ad8 Merge pull request 'chore: Bump version to 0.10.0' (#425) from release-party into master
continuous-integration/drone/push Build was killed Details
Reviewed-on: #425
Reviewed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
2024-01-19 16:50:09 +02:00
Inex Code 175e189d5a chore: Update appimage version 2024-01-19 17:49:56 +03:00
Inex Code 4e7409ca6d chore: Bump version to 0.10.0 2024-01-19 17:47:45 +03:00
Inex Code a1ab687933 Merge pull request 'chore: Update translations' (#413) from translations into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #413
2024-01-19 16:00:03 +02:00
Inex Code 3fb5804b20 Translated using Weblate (Russian)
Currently translated at 100.0% (2 of 2 strings)

Translation: SelfPrivacy/SelfPrivacy App Markdown: how_hetzner
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app-markdown-how_hetzner/ru/
2024-01-19 13:59:45 +00:00
Inex Code 954630f5e9 Translated using Weblate (Belarusian)
Currently translated at 100.0% (2 of 2 strings)

Translation: SelfPrivacy/SelfPrivacy App Markdown: how_hetzner
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app-markdown-how_hetzner/be/
2024-01-19 13:59:45 +00:00
Inex Code 83fe4fa0f3 Translated using Weblate (Russian)
Currently translated at 100.0% (538 of 538 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ru/
2024-01-19 13:59:45 +00:00
Inex Code a93844b89c Added translation using Weblate (Estonian) 2024-01-19 13:59:45 +00:00
Yaron ba3d1b86b7 Translated using Weblate (Hebrew)
Currently translated at 100.0% (538 of 538 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/he/
2024-01-19 13:59:45 +00:00
Yaron c8c3ffb4b9 Translated using Weblate (Hebrew)
Currently translated at 99.2% (534 of 538 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/he/
2024-01-19 13:59:45 +00:00
Yaron 3c6eefdbbf Translated using Weblate (Hebrew)
Currently translated at 100.0% (533 of 533 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/he/
2024-01-19 13:59:45 +00:00
Weblate 82fc4c68c2 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: SelfPrivacy/SelfPrivacy App Markdown: how_hetzner
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app-markdown-how_hetzner/
2024-01-19 13:59:45 +00:00
NaiJi ✨ 2ab33144fd Translated using Weblate (Spanish)
Currently translated at 18.3% (98 of 533 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/es/
2024-01-19 13:59:45 +00:00
NaiJi ✨ e4be60a51b Translated using Weblate (Russian)
Currently translated at 100.0% (533 of 533 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ru/
2024-01-19 13:59:45 +00:00
Inex Code 98b715700a Merge pull request 'fix: Domain name overflows on the "Use this domain?" screen' (#422) from fix_overflows_use_this_domain into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #422
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2024-01-19 15:59:42 +02:00
NaiJi ✨ dca733f641 Merge pull request 'feat: Make DNS records deletion and creation dynamic' (#424) from dynamic-dns-deletion into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #424
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2024-01-19 15:46:58 +02:00
Inex Code 766f44ee19 style: Add missing trailing comma 2024-01-19 16:38:07 +03:00
NaiJi ✨ 40c423437a refactor: Rename variables and add needed comments
- #265
2024-01-19 17:23:09 +04:00
NaiJi ✨ 2836ce4870 fix(cloudflare): Convert MX name from @ to root domain
- #265
2024-01-19 00:50:42 +02:00
NaiJi ✨ 39f92f769b feat: Add selector._domainkey project record
- #265
2024-01-19 00:50:42 +02:00
NaiJi ✨ d841f9db44 feat: Make DNS deletion and creation dynamic
- #265
2024-01-19 00:50:42 +02:00
def cd33991f97 Merge branch 'master' into fix_overflows_use_this_domain 2024-01-18 15:31:47 +02:00
def 76d93ab782 fix: missclicked on "Approve" button 2024-01-18 15:31:07 +02:00
NaiJi ✨ 9e095a6808 Merge pull request 'fix(graphql): Remove and replace deprecated mutations' (#423) from actualizing-graphql into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #423
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2024-01-15 19:08:28 +02:00
NaiJi ✨ 07058d3db5 fix(graphql): Remove and replace deprecated mutations
- #418
2024-01-15 13:11:09 +04:00
def 79fae03e9b fix: overflows use this domain 2024-01-12 18:23:13 +02:00
NaiJi ✨ 09cb734859 Merge pull request 'fix: Update loginInfo with new service IDs' (#419) from new-service-ids into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #419
Reviewed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
2024-01-10 16:17:13 +02:00
Inex Code b974062626 fix: Update loginInfo with new service IDs 2024-01-10 15:50:37 +02:00
Inex Code 16dca8faf8 Merge pull request 'feat: Implement dynamic DNS records validation' (#392) from dynamic-dns into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #392
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2024-01-10 14:52:16 +02:00
NaiJi ✨ 528d0c4c10 Merge pull request 'chore: Update the copyright year' (#417) from copyright-year into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #417
Reviewed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
2024-01-09 22:41:27 +02:00
Inex Code 23922ef243 chore: Update the copyright year 2024-01-09 21:46:57 +02:00
NaiJi ✨ 8e952abd94 fix: Change kotlin version for gradle 2024-01-08 13:46:43 +04:00
NaiJi ✨ a45ac7e344 fix: Adapt domain iteration on recovery to new provider interface 2024-01-05 07:28:45 +04:00
NaiJi ✨ ff9c96a114 fix(cloudflare): Adapt Cloudflare DNS convertion 2024-01-05 07:15:27 +04:00
NaiJi ✨ 19e070133c Merge branch 'master' into dynamic-dns 2023-12-29 22:24:59 +02:00
NaiJi ✨ 1c07476764 refactor: Move DNS records validation to cubit layer 2023-12-29 23:58:58 +04:00
Inex Code 985db9a479 Merge pull request 'Use the new NixOS infect' (#415) from nixos-23.11 into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #415
2023-12-29 13:45:31 +02:00
Inex Code 2a4614c673 feat: Allow custom SSH keys during setup and use the new NixOS infect 2023-12-28 22:35:39 +03:00
Inex Code e26b6a23b2 fix(ui): Filled button overflow 2023-12-28 20:07:30 +03:00
def e3e5570e4e feat: Add the button to copy password on the new user creation screen (#409)
continuous-integration/drone/push Build is passing Details
#299

Co-authored-by: dettlaff <dettlaff@riseup.net>
Reviewed-on: #409
Reviewed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
Co-authored-by: def <dettlaff@riseup.net>
Co-committed-by: def <dettlaff@riseup.net>
2023-12-28 15:19:16 +02:00
def d7bf6a0c06 feat: Add animation to the recovery key screen (#410)
continuous-integration/drone/push Build is passing Details
#164
Co-authored-by: dettlaff <dettlaff@riseup.net>
Reviewed-on: #410
Reviewed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
Co-authored-by: def <dettlaff@riseup.net>
Co-committed-by: def <dettlaff@riseup.net>
2023-12-26 11:28:52 +02:00
NaiJi ✨ ada5f1a66c Merge branch 'master' into dynamic-dns 2023-12-20 15:09:29 +02:00
NaiJi ✨ 20d7f37b8b Merge pull request 'linter-3.16.1' (#411) from linter-3.16.1 into master
continuous-integration/drone/push Build was killed Details
Reviewed-on: #411
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-12-20 15:08:59 +02:00
NaiJi ✨ 371d83b4be fix(linter): Change httpClientAdapter callback creation 2023-12-20 17:04:33 +04:00
NaiJi ✨ 9ea952b46e refactor(linter): Force const constructor where needed 2023-12-20 16:58:46 +04:00
NaiJi ✨ 5c03749577 refactor(linter): Add library; to brand icons 2023-12-20 16:57:52 +04:00
NaiJi ✨ 2ef0121321 refactor(linter): Create HTTP client from adapter 2023-12-20 16:56:31 +04:00
NaiJi ✨ 02a2097b10 refactor(linter): Change DioError to DioException 2023-12-20 16:50:43 +04:00
NaiJi ✨ f1b0b3fc9e Merge branch 'master' into dynamic-dns 2023-12-18 08:46:19 +04:00
NaiJi ✨ 2f6b4e0f9c Merge pull request 'feat: Implement better domain ownership check during installation' (#394) from domain-ownership-setup into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #394
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-12-12 17:24:22 +02:00
Inex Code 4ed038d34c refactor: Tweak the design of the BrokenDomainOutlinedCard 2023-12-12 08:31:37 +03:00
def 2d29fdc58b Merge pull request 'docs: update screenshots' (#393) from update_screensots into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #393
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-12-06 14:37:23 +02:00
def 06dc8ebfb8 Merge branch 'master' into update_screensots 2023-12-06 14:37:14 +02:00
NaiJi ✨ 37d2f2fe11 Merge pull request 'fix(ui): Remove listening of a server volume cubit for migration page' (#400) from migration-button-error into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #400
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-12-03 20:10:37 +02:00
NaiJi ✨ 5d92c95ce0 Merge pull request 'fix(devices): Update refreshing state for Devices page' (#398) from device-screen-updating into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #398
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-12-03 20:09:18 +02:00
NaiJi ✨ 4eb3dac101 Merge pull request 'feat(backblaze): Include milliseconds since epoch to bucket name' (#403) from better-bucket-name into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #403
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-12-03 20:03:17 +02:00
NaiJi ✨ 55d77b2144 Merge branch 'master' into better-bucket-name 2023-12-03 20:03:11 +02:00
NaiJi ✨ f6ded5399c refactor(backblaze): Move milliseconds since epoch to the beginning of bucket name 2023-12-03 21:58:56 +04:00
NaiJi ✨ 2710ba3e26 Merge pull request 'fix(hetzner): Filter away ARM architecture from available servers' (#404) from arm-filtering into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #404
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-12-03 19:45:23 +02:00
NaiJi ✨ e00c783cb0 Merge branch 'master' into dynamic-dns 2023-12-03 11:55:41 +02:00
NaiJi ✨ 9d09354363 Merge branch 'master' into domain-ownership-setup 2023-12-03 11:55:32 +02:00
NaiJi ✨ 07998f115f Merge branch 'master' into device-screen-updating 2023-12-03 11:55:25 +02:00
NaiJi ✨ e733354aa1 Merge branch 'master' into migration-button-error 2023-12-03 11:55:15 +02:00
NaiJi ✨ f977193fae Merge branch 'master' into better-bucket-name 2023-12-03 11:55:03 +02:00
NaiJi ✨ 0a988ce637 Merge branch 'master' into arm-filtering 2023-12-03 11:54:55 +02:00
Inex Code 9663bbf146 Merge pull request 'ci: Disable sonarqube for now as it uses Dart 2.17.5 for reasons unknown' (#406) from ci-fix into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #406
2023-12-03 04:27:27 +02:00
Inex Code 9b9d325a09 ci: Disable sonarqube for now as it uses Dart 2.17.5 for reasons unknown 2023-12-03 05:27:07 +03:00
Inex Code 19b3ee52c6 Merge pull request 'ci: Fix test run' (#405) from ci-fix into master
continuous-integration/drone/push Build is failing Details
Reviewed-on: #405
2023-12-03 03:04:15 +02:00
Inex Code e269233057 ci: Fix test run 2023-12-03 04:04:00 +03:00
NaiJi ✨ ee49b634ae Merge 'master' into 'dynamic-dns' 2023-12-03 01:12:55 +04:00
NaiJi ✨ b5cfdfd68a fix(hetzner): Filter away ARM architecture from available servers
- Resolve #402
2023-12-03 01:01:46 +04:00
NaiJi ✨ faa02c54fe feat(backblaze): Include milliseconds since epoch to bucket name
- Resolve #263
2023-12-03 00:44:32 +04:00
NaiJi ✨ 79f73ec729 Merge pull request 'chore: Upgrade to Flutter 3.16.1' (#401) from flutter-upgrade into master
continuous-integration/drone/push Build is failing Details
Reviewed-on: #401
Reviewed-by: NaiJi  <naiji@noreply.git.selfprivacy.org>
2023-12-01 22:17:41 +02:00
Inex Code 84fb5dc613 chore: Upgrade to Flutter 3.16.1 2023-12-01 21:41:35 +02:00
Inex Code 8729926c36 Merge pull request 'chore: Update translations' (#374) from translations into master
continuous-integration/drone/push Build is failing Details
Reviewed-on: #374
2023-12-01 16:16:10 +02:00
Inex Code e80b5b8fb3 Merge branch 'master' into translations
# Conflicts:
#	assets/translations/en.json
2023-12-01 17:15:33 +03:00
Inex Code 53641980f7 Merge pull request 'chore(i18l): Rename button that initiates recovery process' (#399) from rename-recovery-button into master
continuous-integration/drone/push Build is failing Details
Reviewed-on: #399
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-11-30 15:31:23 +02:00
NaiJi ✨ 4abd1e15f1 fix(ui): Remove listening of a server volume cubit for migration page 2023-11-30 12:33:54 +04:00
NaiJi ✨ 5b94cc0cc0 fix(devices): Add refresh indicator to 'Other devices' section
- Resolve #163
2023-11-30 12:15:56 +04:00
NaiJi ✨ 2125c59df9 chore(i18l): Rename button that initiates recovery process
- Resolve #346
2023-11-30 10:20:21 +04:00
NaiJi ✨ da0b0b7670 fix(devices): Make devices state remember current device on refresh
- Resolve #258
2023-11-30 10:04:57 +04:00
NaiJi ✨ 0b4f8d66ef Merge branch 'master' into domain-ownership-setup 2023-11-30 07:50:01 +02:00
Marvin F e36339d2fc Translated using Weblate (German)
Currently translated at 88.5% (472 of 533 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/de/
2023-11-29 14:42:14 +00:00
Yaron 5fadc086bb Translated using Weblate (Hebrew)
Currently translated at 100.0% (533 of 533 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/he/
2023-11-29 14:42:14 +00:00
smtg 72fc8fc7ba Translated using Weblate (French)
Currently translated at 43.3% (231 of 533 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/fr/
2023-11-29 14:42:14 +00:00
Inex Code bf8fbbc2e2 Translated using Weblate (Russian)
Currently translated at 100.0% (533 of 533 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ru/
2023-11-29 14:42:14 +00:00
Inex Code feb8ac3b2b Added translation using Weblate (Hebrew) 2023-11-29 14:42:14 +00:00
NaiJi ✨ 656dd806a0 Translated using Weblate (Spanish)
Currently translated at 14.6% (78 of 532 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/es/
2023-11-29 14:42:14 +00:00
NaiJi ✨ dc3c6cfa19 Translated using Weblate (Russian)
Currently translated at 100.0% (532 of 532 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ru/
2023-11-29 14:42:14 +00:00
NaiJi ✨ ab49f0dcd2 Translated using Weblate (English)
Currently translated at 100.0% (532 of 532 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/en/
2023-11-29 14:42:14 +00:00
Weblate 32f866461c Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/
2023-11-29 14:42:14 +00:00
User 1234 c814127f50 Translated using Weblate (German)
Currently translated at 85.4% (454 of 531 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/de/
2023-11-29 14:42:14 +00:00
def bea6dd4635 Translated using Weblate (English)
Currently translated at 100.0% (531 of 531 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/en/
2023-11-29 14:42:14 +00:00
def 7df73f53bb Translated using Weblate (English)
Currently translated at 100.0% (531 of 531 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/en/
2023-11-29 14:42:14 +00:00
def 630800d034 Translated using Weblate (Russian)
Currently translated at 99.8% (530 of 531 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ru/
2023-11-29 14:42:14 +00:00
def 7b18f66291 Translated using Weblate (Russian)
Currently translated at 99.8% (530 of 531 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ru/
2023-11-29 14:42:14 +00:00
Inex Code ceb6f29048 Translated using Weblate (Russian)
Currently translated at 100.0% (530 of 530 strings)

Translation: SelfPrivacy/SelfPrivacy App
Translate-URL: http://weblate.selfprivacy.org/projects/selfprivacy/selfprivacy-app/ru/
2023-11-29 14:42:14 +00:00
NaiJi ✨ 76f977bc50 Merge pull request 'feat(ui): Add jobs fab button to Snapshot List page' (#396) from snapshost-list-fab into master
continuous-integration/drone/push Build is failing Details
Reviewed-on: #396
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-11-29 16:42:12 +02:00
NaiJi ✨ 5a33bec6bd feat(ui): Make Snapshot List page show fab button
- Resolve #290
2023-11-29 18:38:27 +04:00
NaiJi ✨ 8037eec486 feat: Implement better domain ownership check during installation
- Produce support instructions for DNS domain recovery

- #389
2023-11-27 19:00:05 +04:00
def f8cdce1ebd Merge branch 'master' into update_screensots 2023-11-25 19:23:38 +02:00
dettlaff ffb13eafe7 docs: update screenshots 2023-11-25 21:22:54 +04:00
NaiJi ✨ 98f107b675 fix(cloudflare): Improve DNS records convertion to deSEC DNS 2023-11-22 15:14:02 +04:00
NaiJi ✨ e9c881c408 fix(cloudflare): Improve DNS records convertion to Cloudflare DNS 2023-11-22 12:09:19 +04:00
NaiJi ✨ cd9b47b924 Merge branch 'master' into 'dynamic-dns' 2023-11-22 09:34:31 +04:00
NaiJi ✨ 087813eaae Merge pull request 'fix: Revert lints of premaster flutter version back to 3.16' (#391) from fix-flutter-versioning-lints into master
continuous-integration/drone/push Build is failing Details
Reviewed-on: #391
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-11-20 17:46:03 +02:00
NaiJi ✨ e50ef9b189 fix: Revert lints of premaster flutter version back to 3.16 2023-11-20 19:38:24 +04:00
NaiJi ✨ 699f906bf1 Merge pull request 'refactor: Fix linter warnings' (#384) from lints into master
continuous-integration/drone/push Build is failing Details
Reviewed-on: #384
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-11-20 16:34:31 +02:00
NaiJi ✨ 8dc5847c6c Merge branch 'master' into 'lints' 2023-11-20 18:33:31 +04:00
NaiJi ✨ 1e68789a8c fix: Bump material_color_utilities version to 0.5.0, required by flutter test 2023-11-20 18:31:24 +04:00
NaiJi ✨ f11a75dfb7 refactor: Remove obsolete network objects 2023-11-20 18:29:26 +04:00
NaiJi ✨ d4ff17201e Merge pull request 'fix(hetzner): Remove optional status enum for getVolumes of Hetzner' (#388) from hetzner-volume into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #388
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-11-20 16:24:02 +02:00
NaiJi ✨ cea2f6d8a4 refactor: Correct a typo in Hetzner API 2023-11-20 18:10:19 +04:00
NaiJi ✨ f7afd6fd15 fix(hetzner): Remove optional status enum for getVolumes of Hetzner 2023-11-20 03:32:41 +04:00
NaiJi ✨ 54dee9c291 Merge pull request 'feat: Implement flexible precision formatting for prices' (#387) from string-trailing into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #387
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-11-20 00:02:51 +02:00
NaiJi ✨ a2b28e199d feat: Implement flexible precision formatting for prices 2023-11-19 23:51:36 +04:00
NaiJi ✨ c34a5b97d6 fix: Improve DNS formatting for Cloudflare DNS 2023-11-19 23:34:58 +04:00
NaiJi ✨ cd97833025 feat: Make GetDnsRecords query return also service DNS 2023-11-18 10:22:07 +04:00
NaiJi ✨ b46ef2f7a3 Merge branch 'master' into dynamic-dns 2023-11-18 09:24:10 +04:00
NaiJi ✨ 98262a473f Merge pull request 'fix(api): Force DateTime to UTC where timezone naive' (#386) from timezone-offset into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #386
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-11-13 12:25:45 +02:00
NaiJi ✨ ec8d08ff07 fix(api): Force DateTime to UTC where timezone naive
- Solve #385
2023-11-13 14:03:52 +04:00
NaiJi ✨ d45417effe feat: Implement model adapter for Digital Ocean DNS
- Adapt all external interfaces to new DNS record models
2023-11-09 18:48:49 +04:00
NaiJi ✨ 5a7ae23ec2 feat: Implement model adapter for Cloudflare DNS 2023-11-09 17:21:56 +04:00
NaiJi ✨ e9c01576b2 feat: Implement model adapters
- Move desec model conversion to adapters
2023-11-09 16:52:27 +04:00
NaiJi ✨ db1a8b6f67 refactor: Move deSEC DNS conversion into DesecDnsRecord model
- Get rid of desired dns records hardcore for deSEC
2023-11-08 18:31:28 +04:00
NaiJi ✨ c894456fe6 refactor: Fix linter warnings
- Remove unused text_extensions.dart
2023-11-06 17:15:38 +04:00
def dd9722646e Merge pull request 'update description' (#377) from update_description into master
continuous-integration/drone/push Build is passing Details
Reviewed-on: #377
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-10-21 17:44:12 +03:00
dettlaff a01f9d3786 Merge branch 'update_description' of git.selfprivacy.org:SelfPrivacy/selfprivacy.org.app into update_description 2023-10-21 18:42:13 +04:00
dettlaff c05a3d99a6 docs: update screenshot names, del old 2023-10-21 18:41:45 +04:00
def d14c2c5d36 docs: delete /fastlane/metadata/android/en-US/images/phoneScreenshots/4.jpg 2023-10-21 17:39:47 +03:00
dettlaff 1db6dc717a docs: upd description 2023-10-21 17:39:47 +03:00
dettlaff e337e93ac7 docs: add new screenshots 2023-10-21 17:39:47 +03:00
dettlaff 2eda1d18d2 docs: upd description 2023-10-12 01:45:37 +04:00
dettlaff d68b0b5251 docs: add new screenshots 2023-10-12 01:43:19 +04:00
334 changed files with 21781 additions and 8340 deletions

View File

@ -11,7 +11,7 @@ steps:
- name: Run Tests
commands:
- ./ci.py --ci-run-tests
- sonar-scanner -Dsonar.projectKey=SelfPrivacy-Flutter-App -Dsonar.sources=. -Dsonar.host.url=http://analyzer.lan:9000 -Dsonar.login="$SONARQUBE_TOKEN"
# - sonar-scanner -Dsonar.projectKey=SelfPrivacy-Flutter-App -Dsonar.sources=. -Dsonar.host.url=http://analyzer.lan:9000 -Dsonar.login="$SONARQUBE_TOKEN"
environment:
SONARQUBE_TOKEN:
from_secret: SONARQUBE_TOKEN

View File

@ -1,6 +1,9 @@
name: Windows Builder
on: tag
on:
push:
tags:
- '*.*.*'
jobs:
build-windows:
@ -14,7 +17,7 @@ jobs:
# Install Flutter
- uses: subosito/flutter-action@v2
with:
flutter-version: '3.3.10'
flutter-version: '3.16.1'
channel: 'stable'
# Build Windows artifact

6
.gitignore vendored
View File

@ -40,3 +40,9 @@ app.*.symbols
# Obfuscation related
app.*.map.json
# Flatpak
.flatpak-builder/
flatpak-build/
flatpak-repo/
*.flatpak

View File

@ -37,6 +37,7 @@ linter:
avoid_setters_without_getters: true
collection_methods_unrelated_type: true
combinators_ordering: true
directives_ordering: true
eol_at_end_of_file: true
no_adjacent_strings_in_list: true
prefer_constructors_over_static_methods: true

View File

@ -52,8 +52,8 @@ android {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "org.selfprivacy.app"
minSdkVersion 21
targetSdkVersion 33
compileSdkVersion 33
targetSdkVersion 34
compileSdkVersion 34
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}

View File

@ -1,5 +1,5 @@
buildscript {
ext.kotlin_version = '1.6.10'
ext.kotlin_version = '1.9.21'
ext.getVersionCode = { ->
try {
def stdout = new ByteArrayOutputStream()

View File

@ -10,7 +10,7 @@ AppDir:
id: org.selfprivacy.app
name: SelfPrivacy
icon: org.selfprivacy.app
version: 0.9.1
version: 0.11.0
exec: selfprivacy
exec_args: $@
apt:
@ -51,3 +51,4 @@ AppDir:
AppImage:
arch: x86_64
update-information: guess
comp: xz

View File

@ -1,12 +0,0 @@
### Пра нас
Усё больш арганізацый жадаюць валодаць нашымі дадзенымі
Праект дазваляе толькі Вам у поўнай меры распараджацца ўласнымі **дадзенымі** на сваім сэрвэры.
### Наша місія
Лічбавая незалежнасць і прыватнасць, даступныя кожнаму
### Мэта
Распрацаваць праграму, якая дазволіць кожнаму разгарнуць свае прыватныя паслугі для сябе і сваіх суседзяў.

View File

@ -1,12 +0,0 @@
### O nás
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Naše poslání
Digitální nezávislost a soukromí dostupné všem
### Cíl
Rozvíjet program, který umožní každému nasadit své soukromé služby pro sebe a své sousedy.

View File

@ -1,12 +0,0 @@
### Über uns
Immer mehr Unternehmen wollen unsere Daten kontrollieren.
Wir wollen selbst die volle Kontrolle über unsere **data** haben.
### Unsere Mission
Digitale Unabhängigkeit und Privatsphäre für alle verfügbar
### Ziel
Das Programm entwickeln, das es jedem ermöglicht, seine privaten Dienste für sich und seine Nachbarn einzusetzen.

View File

@ -1,12 +0,0 @@
### About us
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Our mission
Digital independence and privacy, available to everyone
### Target
Develop the program, which will allow everyone to deploy their private services for themselves and their neighbours.

View File

@ -1,12 +0,0 @@
### About us
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Our mission
Digital independence and privacy, available to everyone
### Target
Develop the program, which will allow everyone to deploy their private services for themselves and their neighbours.

View File

@ -1,12 +0,0 @@
### About us
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Our mission
Digital independence and privacy, available to everyone
### Target
Develop the program, which will allow everyone to deploy their private services for themselves and their neighbours.

View File

@ -1,12 +0,0 @@
### About us
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Our mission
Digital independence and privacy, available to everyone
### Target
Develop the program, which will allow everyone to deploy their private services for themselves and their neighbours.

View File

@ -1,12 +0,0 @@
### About us
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Our mission
Digital independence and privacy, available to everyone
### Target
Develop the program, which will allow everyone to deploy their private services for themselves and their neighbours.

View File

@ -1,12 +0,0 @@
### About us
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Our mission
Digital independence and privacy, available to everyone
### Target
Develop the program, which will allow everyone to deploy their private services for themselves and their neighbours.

View File

@ -1,12 +0,0 @@
### About us
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Our mission
Digital independence and privacy, available to everyone
### Target
Develop the program, which will allow everyone to deploy their private services for themselves and their neighbours.

View File

@ -1,12 +0,0 @@
### About us
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Misja projektu
Niezależność i prywatność cyfrowa dostępna dla wszystkich
### Cel
Opracuj program, dzięki któremu każdy będzie mógł stworzyć prywatne usługi dla siebie i swoich bliskich.

View File

@ -1,12 +0,0 @@
### О проекте
Всё больше организаций хотят владеть нашими данными
Проект позволяет только Вам в полной мере распоряжаться собственными **данными** на своём сервере.
### Миссия проекта
Цифровая независимость и приватность, доступная каждому
### Цель
Развивать программу, которая позволит каждому создавать приватные сервисы для себя и своих близких.

View File

@ -1,12 +0,0 @@
### O nás
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Naše poslanie
Digitálna nezávislosť a súkromie dostupné pre každého
### Cieľ
Vytvorte program, ktorý umožní každému vytvoriť súkromné služby pre seba a svojich blízkych.

View File

@ -1,12 +0,0 @@
### About us
More and more corporations want to control our data.
We want to have full control of our **data** on our own.
### Our mission
Digital independence and privacy, available to everyone
### Target
Develop the program, which will allow everyone to deploy their private services for themselves and their neighbours.

View File

@ -1,12 +0,0 @@
### Про нас
Все більше корпорацій хочуть контролювати свої дані.
Ми хочемо мати повний контроль над нашими.
### Наша місія
Цифрова незалежність і конфіденційність доступні кожному
### Ціль
Розробити програму, яка дозволить кожному розгорнути свої приватні послуги для себе та їх сусідів.

View File

@ -1,12 +1,11 @@
### How to get Digital Ocean API Token
1. Visit the following [link](https://cloud.digitalocean.com/) and sign
into newly created account.
2. Enter into previously created project. If you haven't created one,
then please proceed.
3. Go to the "API" link on the left bar.
4. Click on the "Generate New Token".
5. Enter any name for the token.
6. Put expiration time to "No expiry".
7. Check the "Write (optional)" checkbox.
8. Now click on the "Generate Token" button.
9. After that, the token will be shown. Store it in any reliable place, preferably a password manager.
### Як отримати токен Digital Ocean API
1. Перейдіть за цим [посилання](https://cloud.digitalocean.com/) і увійдіть у щойно створений обліковий запис.
2. Увійдіть у раніше створений проект. Якщо ви його не створили, тоді, будь ласка, продовжуйте.
3. Перейдіть за посиланням «API» на лівій панелі.
4. Натисніть «Створити новий токен».
5. Введіть будь-яку назву токену.
6. Встановіть для терміну дії значення «Без терміну дії».
7. Встановіть прапорець «Написати (необов’язково)».
8. Тепер натисніть кнопку «Створити токен».
9. Після цього буде показано токен. Зберігайте його в будь-якому надійному місці, бажано в менеджері паролів.

View File

@ -0,0 +1,6 @@
### How to point Name Servers for Cloudflare DNS