Commit graph

646 commits

Author SHA1 Message Date
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 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
aliaksei tratseuski dd81053f42 refactor(UI): Rewrite onboarding page
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: https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/pulls/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
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
Inex Code 3b9d616045 refactor: Introduce VolumesBloc, remove ServerVolumeCubit 2024-02-01 18:30:06 +04: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 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 2b30136def fix(dns): Make sure that we notice domain ownership lost
- https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/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 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
NaiJi 40c423437a refactor: Rename variables and add needed comments
- https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/265
2024-01-19 17:23:09 +04:00
NaiJi 2836ce4870 fix(cloudflare): Convert MX name from @ to root domain
- https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/265
2024-01-19 00:50:42 +02:00
NaiJi d841f9db44 feat: Make DNS deletion and creation dynamic
- https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/265
2024-01-19 00:50:42 +02:00
NaiJi 07058d3db5 fix(graphql): Remove and replace deprecated mutations
- https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/418
2024-01-15 13:11:09 +04:00
Inex Code b974062626 fix: Update loginInfo with new service IDs 2024-01-10 15:50:37 +02: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 2a4614c673 feat: Allow custom SSH keys during setup and use the new NixOS infect 2023-12-28 22:35:39 +03:00
NaiJi ✨ ada5f1a66c Merge branch 'master' into dynamic-dns 2023-12-20 15:09:29 +02:00
NaiJi 371d83b4be fix(linter): Change httpClientAdapter callback creation 2023-12-20 17:04:33 +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
Reviewed-on: https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/pulls/394
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-12-12 17:24:22 +02:00
NaiJi ✨ 5d92c95ce0 Merge pull request 'fix(devices): Update refreshing state for Devices page' (#398) from device-screen-updating into master
Reviewed-on: https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/pulls/398
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-12-03 20:09:18 +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 b5cfdfd68a fix(hetzner): Filter away ARM architecture from available servers
- Resolve https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/402
2023-12-03 01:01:46 +04:00
NaiJi faa02c54fe feat(backblaze): Include milliseconds since epoch to bucket name
- Resolve https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/263
2023-12-03 00:44:32 +04:00
NaiJi da0b0b7670 fix(devices): Make devices state remember current device on refresh
- Resolve https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/258
2023-11-30 10:04:57 +04:00
NaiJi 8037eec486 feat: Implement better domain ownership check during installation
- Produce support instructions for DNS domain recovery

- https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/389
2023-11-27 19:00:05 +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 e50ef9b189 fix: Revert lints of premaster flutter version back to 3.16 2023-11-20 19:38:24 +04:00
NaiJi 8dc5847c6c Merge branch 'master' into 'lints' 2023-11-20 18:33:31 +04:00
NaiJi f11a75dfb7 refactor: Remove obsolete network objects 2023-11-20 18:29:26 +04: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 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 ec8d08ff07 fix(api): Force DateTime to UTC where timezone naive
- Solve https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/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
NaiJi ✨ e1aeb89991 Merge branch 'master' into cloudflare-caching 2023-10-06 01:44:20 +03:00
NaiJi c2ae962322 refactor: Remove redundant zone id cache for Cloudflare 2023-10-05 19:42:29 -03:00
NaiJi ✨ 34eda8ca2d Merge branch 'master' into ssh-edcsa 2023-10-03 20:57:35 +03:00
NaiJi 043d29538c refactor: Conventionally reduce DiskSize to only 'int gb' for resize digital ocean volume 2023-09-30 21:35:58 -03:00
NaiJi fbacb5969d fix: Force size value truncation for digital ocean, change query url
- Resolve https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/367
2023-09-30 21:04:04 -03:00
NaiJi 172253902d feat(ssh): Add support for ECDSA SSH keys
- Resolve https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/319
2023-09-26 16:18:50 -03:00
NaiJi aa4429cc79 refactor(ui): Reorganize placeholders for empty pages
- Resolve https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/348
- Make 'Data Center' cards unclickable when uninitialized
2023-09-23 23:03:54 -03:00
NaiJi 5c329d47c1 refactor(ui): Make users be ordered properly on users page
- Resolves https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/340
2023-09-16 02:09:40 -03:00
Inex Code 1b26f2cf29 feat(backups): Allow to change snapshot rotation settings 2023-09-09 21:13:27 +03:00
Inex Code aac4b2773b feat(backups): Show the snapshot creation reason 2023-09-09 10:22:43 +03:00
NaiJi afa83f0d29 chore: I embarrassed myself... 2023-09-08 03:08:02 -03:00
NaiJi 14dbdbbc73 feat: Implement dialogue to choose an domain from several during installation 2023-09-08 02:54:28 -03:00
NaiJi ✨ fd13828ec3 Merge pull request 'feat: Implement copying to clipboard for snapshot id of backups' (#325) from snapshot-id into master
Reviewed-on: https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/pulls/325
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-09-07 23:58:39 +03:00
Inex Code fe93360870 refactor: Use snackbar to show snapshot id copy notification 2023-09-07 14:35:42 +03:00
NaiJi 7b8d9ddca9 fix: Change 'mailserver' string id to 'email' in loginInfo switch 2023-09-06 23:41:34 -03:00
NaiJi 8a5ee1d42e Merge 'master' into 'price-calculation' 2023-09-06 20:54:30 -03:00
NaiJi ✨ 82dfdf04f9 fix: Implement Backblaze bucket restoration on server recovery (#324)
Resolves issue [320](https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/issues/320).

Co-authored-by: NaiJi <naijiworld@protonmail.com>
Reviewed-on: https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/pulls/324
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-09-06 00:36:49 +03:00
NaiJi ✨ 1642cb907d Merge pull request 'refactor: Remove mentions of cloudflare from general variables' (#323) from dkim-record-naming into master
Reviewed-on: https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/pulls/323
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-09-05 14:46:55 +03:00
NaiJi 85abd8f0fc refactor: Remove mentions of cloudflare from general variables 2023-09-05 08:45:09 -03:00
NaiJi 8f7730575e fix: Wrap DNS check in catch to avoid runtime crash 2023-09-05 08:34:01 -03:00
Inex Code d64764f4a8 Merge branch 'master' into price-calculation 2023-09-01 15:38:35 +03:00
Inex Code b01c61a47b feat(backups): Add snapshot restore modal 2023-08-14 07:10:15 +03:00
Inex Code 13e80a9e37 Merge branch 'master' into restore-strategy 2023-08-14 05:35:52 +03:00
Inex Code 6e241ff4d2 Merge branch 'master' into soft-reset 2023-08-14 05:34:18 +03:00
NaiJi e417088340 fix(i18l): Change broken validations string for superuser SSH 2023-08-07 10:26:52 -03:00
NaiJi 3ad6bb7bea Merge 'master' into 'soft-reset' 2023-08-07 10:15:23 -03:00
NaiJi 316e1f5db6 Merge 'master' into 'price-calculation' 2023-08-07 10:14:08 -03:00
NaiJi 80b83980ce feat(backup): Implement forget snapshot method 2023-08-07 09:44:26 -03:00
NaiJi 75b8a7b9ac feat(backups): Implement restore backup strategy 2023-08-07 09:23:48 -03:00
NaiJi dce33b2d4c fix: Remove unuzed ZoneId member 2023-08-07 08:09:24 -03:00
NaiJi 5c473d96a9 Merge 'master' into 'soft-reset' 2023-08-07 08:03:24 -03:00
NaiJi 20c3948e60 Merge 'master' into 'price-calculation' 2023-08-07 07:58:57 -03:00
NaiJi 037498070a fix: Include IPv4 cost to overall server cost 2023-08-07 07:52:26 -03:00
NaiJi ✨ a17b66c729 Merge pull request 'refactor: Implement Cloudflare-specific objects to avoid usage of global models' (#268) from dto into master
Reviewed-on: https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.app/pulls/268
Reviewed-by: Inex Code <inex.code@selfprivacy.org>
2023-08-07 12:06:45 +03:00