Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Homework4 #4

Open
wants to merge 44 commits into
base: homework1
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
241c697
navigation page, welcome page, global theme in progress
medvalna Jun 19, 2023
93d6aa8
minor changes, start of adding bloc
medvalna Jun 20, 2023
04f5599
added bloc
medvalna Jun 20, 2023
3ace142
added counting of competed task
medvalna Jun 20, 2023
c21ed3f
start of adding persistence manager
medvalna Jun 22, 2023
addb9c5
try to add persistence
medvalna Jun 23, 2023
720dbfd
minor changes
medvalna Jun 23, 2023
13d6919
minor changes
medvalna Jun 23, 2023
48c0806
minor changes
medvalna Jun 23, 2023
a4f97d9
added persistence manager, logger
medvalna Jun 23, 2023
021bf07
fixed appbar size
medvalna Jun 23, 2023
6299bd0
fixed counter
medvalna Jun 23, 2023
9849b7e
added internationalization
medvalna Jun 24, 2023
0160f2f
adding apk 2.0
medvalna Jun 24, 2023
28f0ba8
Update README.md
medvalna Jun 24, 2023
30bbc3d
added calendar
medvalna Jul 1, 2023
5ffcf4f
added importance
medvalna Jul 2, 2023
26a7750
changed appbar
medvalna Jul 4, 2023
74a24d0
ignore app-debug.apk
medvalna Jul 4, 2023
f1e0ac0
changed readme
medvalna Jul 4, 2023
3fcbcee
added english version of importance
medvalna Jul 4, 2023
3483111
added some comments, minor changes
medvalna Jul 4, 2023
6a4833c
fixed bug with dismissible
medvalna Jul 4, 2023
cf01e97
changed project structure& added simple backend manager
medvalna Jul 4, 2023
6e27d13
fixed bug in choosing importance of task
medvalna Jul 5, 2023
aa79bb0
formatted code & fixed flutter lints errors
medvalna Jul 5, 2023
1bfd699
changed readmefile
medvalna Jul 5, 2023
4025efd
fixed bug with showing zero processed tasks
medvalna Jul 7, 2023
b43f88c
fixed bug with edditing task
medvalna Jul 7, 2023
5d817f0
work with backend
medvalna Jul 10, 2023
c154c67
removed debug button in ui
medvalna Jul 11, 2023
e2a3210
fixed bug with importance choice in editing page
medvalna Jul 11, 2023
8ae856c
splitted bloc on 2 parts
medvalna Jul 11, 2023
6c5acc0
splitted bloc on 2 parts
medvalna Jul 11, 2023
4abf90e
fixed bug in edditing page
medvalna Jul 11, 2023
6a82043
added icon and landscape feature
medvalna Jul 13, 2023
97c45af
added text layout
medvalna Jul 13, 2023
5cd1093
work with network
medvalna Jul 13, 2023
4736546
added remote config
medvalna Jul 14, 2023
091bdc9
dark theme and working app metrica
medvalna Jul 15, 2023
cde4824
formatted code
medvalna Jul 15, 2023
40ebfdc
resolving bug with remote config
medvalna Jul 16, 2023
f9bd759
minor changes
medvalna Jul 16, 2023
8d64310
prepare for checking
medvalna Jul 16, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified .gitignore
Binary file not shown.
40 changes: 37 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,45 @@
# ToDoList
Классическое приложение to-do list.
Функционал: добавление задачи, изменение её статуса на выполненную/отменённую/текущую.

Функционал:
* хранение данных о задачах на устройстве с сохранением их статуса
* добавление задачи,
* изменение её статуса на выполненную/отменённую/текущую,
* изменение её важности, текста, дедлайна
* удаление задачи

Фишки:
* смена языка в зависимости от настроек устройства (русский/английский)
* приветственный экран
* изменение темы в зависимости от настроек устройства
* поддержка landscape-ориентации
* поддержка больших экранов


## Визуал приложения:

<details><summary>Превью английской версии</summary>

1. ![photo1687570030](https://github.com/MedVAL-na/ToDoList/assets/72570836/79afedf5-4405-434e-9e4d-02d3132b675c)
2. ![photo1687570047](https://github.com/MedVAL-na/ToDoList/assets/72570836/c256829c-4f68-4ba0-9cdc-bd38ba981b2c)
3. ![photo1687570066](https://github.com/MedVAL-na/ToDoList/assets/72570836/a3a3672e-998c-41c4-882e-8cca1ce1ebb8)


</details>

<details><summary>Превью русской версии</summary>

1. ![photo1687570093](https://github.com/MedVAL-na/ToDoList/assets/72570836/bfa6e4b6-6f46-41fa-84be-a8876be3b60b)
2. ![photo1687570093 (1)](https://github.com/MedVAL-na/ToDoList/assets/72570836/8ace057a-ee4e-4c56-81e8-884d5d345ce2)
3. ![photo1687570093 (2)](https://github.com/MedVAL-na/ToDoList/assets/72570836/020501f7-d130-4113-a2cc-8c44ed400825)
4. ![photo1687570093 (3)](https://github.com/MedVAL-na/ToDoList/assets/72570836/4277880c-e076-4875-b5b7-1aff95f716b2)




</details>

![msg941790919-96368](https://github.com/MedVAL-na/ToDoList/assets/72570836/6d32add0-d56a-4002-a3e1-94afd55003bc)

## Скачать по ссылке:
https://github.com/MedVAL-na/ToDoList/tree/homework1/build/app/outputs/flutter-apk

https://disk.yandex.ru/d/A8MyQD9vAbEjgw
26 changes: 26 additions & 0 deletions analysis_options.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# 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:
# avoid_print: false # Uncomment to disable the `avoid_print` rule
# prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule
11 changes: 10 additions & 1 deletion android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ if (flutterVersionName == null) {
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

android {
namespace "com.example.to_do_list"
compileSdkVersion flutter.compileSdkVersion
Expand Down Expand Up @@ -61,6 +60,9 @@ android {
signingConfig signingConfigs.debug
}
}
defaultConfig{
minSdkVersion 19
}
}

flutter {
Expand All @@ -69,4 +71,11 @@ flutter {

dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
// Import the Firebase BoM
// implementation(platform("com.google.firebase:firebase-bom:32.2.0"))

// When using the BoM, you don't specify versions in Firebase library dependencies

// Add the dependency for the Firebase SDK for Google Analytics
//implementation("com.google.firebase:firebase-analytics-ktx")
}
46 changes: 46 additions & 0 deletions android/app/google-services.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
{
"project_info": {
"project_number": "743921378655",
"project_id": "yandex-to-do-list",
"storage_bucket": "yandex-to-do-list.appspot.com"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:743921378655:android:b04c123be84d01b37c02ea",
"android_client_info": {
"package_name": "com.example.to_do_list"
}
},
"oauth_client": [
{
"client_id": "743921378655-80ckl5antj01hj78mtb1t58dg2n2lg87.apps.googleusercontent.com",
"client_type": 3
}
],
"api_key": [
{
"current_key": "AIzaSyC5AEBWL5WeuzVK7pV_twXmY0VDWMw2YtY"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": [
{
"client_id": "743921378655-80ckl5antj01hj78mtb1t58dg2n2lg87.apps.googleusercontent.com",
"client_type": 3
},
{
"client_id": "743921378655-s9hoqnq8adkimha7jd5tss661to9occv.apps.googleusercontent.com",
"client_type": 2,
"ios_info": {
"bundle_id": "com.example.toDoList"
}
}
]
}
}
}
],
"configuration_version": "1"
}
2 changes: 1 addition & 1 deletion android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<application
android:label="to_do_list"
android:name="${applicationName}"
android:icon="@mipmap/ic_launcher">
android:icon="@mipmap/launcher_icon">
<activity
android:name=".MainActivity"
android:exported="true"
Expand Down
Binary file modified android/app/src/main/res/mipmap-hdpi/ic_launcher.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified android/app/src/main/res/mipmap-mdpi/ic_launcher.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 3 additions & 1 deletion android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,11 @@ buildscript {
dependencies {
classpath 'com.android.tools.build:gradle:7.3.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
//classpath 'com.google.gms:google-services:4.3.15'
}
}


allprojects {
repositories {
google()
Expand All @@ -28,4 +30,4 @@ subprojects {

tasks.register("clean", Delete) {
delete rootProject.buildDir
}
}
Binary file added assets/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed build/app/outputs/flutter-apk/app.apk
Binary file not shown.
46 changes: 46 additions & 0 deletions google-services.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
{
"project_info": {
"project_number": "743921378655",
"project_id": "yandex-to-do-list",
"storage_bucket": "yandex-to-do-list.appspot.com"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:743921378655:android:b04c123be84d01b37c02ea",
"android_client_info": {
"package_name": "com.example.to_do_list"
}
},
"oauth_client": [
{
"client_id": "743921378655-80ckl5antj01hj78mtb1t58dg2n2lg87.apps.googleusercontent.com",
"client_type": 3
}
],
"api_key": [
{
"current_key": "AIzaSyC5AEBWL5WeuzVK7pV_twXmY0VDWMw2YtY"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": [
{
"client_id": "743921378655-80ckl5antj01hj78mtb1t58dg2n2lg87.apps.googleusercontent.com",
"client_type": 3
},
{
"client_id": "743921378655-s9hoqnq8adkimha7jd5tss661to9occv.apps.googleusercontent.com",
"client_type": 2,
"ios_info": {
"bundle_id": "com.example.toDoList"
}
}
]
}
}
}
],
"configuration_version": "1"
}
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
Binary file modified ios/Runner/Assets.xcassets/AppIcon.appiconset/[email protected]
34 changes: 34 additions & 0 deletions ios/Runner/GoogleService-Info.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<?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>CLIENT_ID</key>
<string>743921378655-s9hoqnq8adkimha7jd5tss661to9occv.apps.googleusercontent.com</string>
<key>REVERSED_CLIENT_ID</key>
<string>com.googleusercontent.apps.743921378655-s9hoqnq8adkimha7jd5tss661to9occv</string>
<key>API_KEY</key>
<string>AIzaSyAU84s4bjzg2DmYxhP-yq2WjOGwrKwvMp8</string>
<key>GCM_SENDER_ID</key>
<string>743921378655</string>
<key>PLIST_VERSION</key>
<string>1</string>
<key>BUNDLE_ID</key>
<string>com.example.toDoList</string>
<key>PROJECT_ID</key>
<string>yandex-to-do-list</string>
<key>STORAGE_BUCKET</key>
<string>yandex-to-do-list.appspot.com</string>
<key>IS_ADS_ENABLED</key>
<false></false>
<key>IS_ANALYTICS_ENABLED</key>
<false></false>
<key>IS_APPINVITE_ENABLED</key>
<true></true>
<key>IS_GCM_ENABLED</key>
<true></true>
<key>IS_SIGNIN_ENABLED</key>
<true></true>
<key>GOOGLE_APP_ID</key>
<string>1:743921378655:ios:57ce20287d4beb287c02ea</string>
</dict>
</plist>
7 changes: 7 additions & 0 deletions ios/firebase_app_id_file.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"file_generated_by": "FlutterFire CLI",
"purpose": "FirebaseAppID & ProjectID for this Firebase app in this directory",
"GOOGLE_APP_ID": "1:743921378655:ios:57ce20287d4beb287c02ea",
"FIREBASE_PROJECT_ID": "yandex-to-do-list",
"GCM_SENDER_ID": "743921378655"
}
3 changes: 3 additions & 0 deletions l10.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
arb-dir: lib/l10n
template-arb-file: app_en.arb
output-localization-file: app_localizations.dart
13 changes: 0 additions & 13 deletions lib/adaptivity/colours.dart

This file was deleted.

9 changes: 0 additions & 9 deletions lib/adaptivity/font_sizes.dart

This file was deleted.

19 changes: 19 additions & 0 deletions lib/data/colours.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import 'package:flutter/material.dart';

/*
* класс с кастомными цветами
* */
const Color mainText = Color(0xFF000000);
const Color secondaryText = Color(0x4D000000);
const Color separator = Color(0x33000000);
const Color disable = Color(0x26000000);
const Color backLight = Color(0xFFF7F6F2);
const Color tileBackLight = Color(0xFFFFFFFF);
const Color add = Color(0xFF007AFF);
const Color decline = Color(0xFFFF3B30);
const Color done = Color(0xFF34C759);
const Color newImportance = Color(0xFF793cd8);
const Color backDark = Color(0xFF161618);
const Color tileBackDark = Color(0xFF3C3C3F);
const Color white = Color(0xFFFFFFFF);
const Color dividerDark = Color(0xFF48484A);
21 changes: 21 additions & 0 deletions lib/data/config_repository.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import 'package:firebase_remote_config/firebase_remote_config.dart';

class ConfigRepository {
final _remoteConfig = FirebaseRemoteConfig.instance;

ConfigRepository._();
static ConfigRepository configRepository = ConfigRepository._();
bool get importanceColor =>
_remoteConfig.getBool(_ConfigFields.importanceColor);

Future<void> init() async {
_remoteConfig.setDefaults({
_ConfigFields.importanceColor: false,
});
await _remoteConfig.fetchAndActivate();
}
}

abstract class _ConfigFields {
static const importanceColor = 'importanceColor';
}
9 changes: 9 additions & 0 deletions lib/data/font_sizes.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
/*
* класс с кастомными шрифтами
* */

const double largeTitle = 32;
const double midTitle = 30;
const double button = 24;
const double body = 20;
const double subhead = 14;
Loading