Skip to content

Commit f4947d7

Browse files
authored
modularize_v3: modularized CCSync related files (#494)
1 parent 95e6e31 commit f4947d7

21 files changed

+728
-688
lines changed

lib/api_service.dart

Lines changed: 0 additions & 583 deletions
This file was deleted.

lib/app/modules/home/controllers/home_controller.dart

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import 'package:get/get.dart';
99
import 'package:home_widget/home_widget.dart';
1010
import 'package:loggy/loggy.dart';
1111
import 'package:shared_preferences/shared_preferences.dart';
12-
import 'package:taskwarrior/api_service.dart';
1312
import 'package:taskwarrior/app/models/filters.dart';
1413

1514
import 'package:taskwarrior/app/models/json/task.dart';
@@ -32,6 +31,10 @@ import 'package:taskwarrior/app/utils/taskfunctions/projects.dart';
3231
import 'package:taskwarrior/app/utils/taskfunctions/query.dart';
3332
import 'package:taskwarrior/app/utils/taskfunctions/tags.dart';
3433
import 'package:taskwarrior/app/utils/app_settings/app_settings.dart';
34+
import 'package:taskwarrior/app/v3/db/task_database.dart';
35+
import 'package:taskwarrior/app/v3/db/update.dart';
36+
import 'package:taskwarrior/app/v3/models/task.dart';
37+
import 'package:taskwarrior/app/v3/net/fetch.dart';
3538
import 'package:textfield_tags/textfield_tags.dart';
3639
import 'package:taskwarrior/app/utils/themes/theme_extension.dart';
3740
import 'package:tutorial_coach_mark/tutorial_coach_mark.dart';
@@ -59,7 +62,7 @@ class HomeController extends GetxController {
5962
final ScrollController scrollController = ScrollController();
6063
final RxBool showbtn = false.obs;
6164
late TaskDatabase taskdb;
62-
var tasks = <Tasks>[].obs;
65+
var tasks = <TaskForC>[].obs;
6366
final RxBool isRefreshing = false.obs;
6467

6568
@override
@@ -116,16 +119,17 @@ class HomeController extends GetxController {
116119
Future<void> refreshTasks(String clientId, String encryptionSecret) async {
117120
TaskDatabase taskDatabase = TaskDatabase();
118121
await taskDatabase.open();
119-
List<Tasks> tasksFromServer = await fetchTasks(clientId, encryptionSecret);
122+
List<TaskForC> tasksFromServer =
123+
await fetchTasks(clientId, encryptionSecret);
120124
await updateTasksInDatabase(tasksFromServer);
121-
List<Tasks> fetchedTasks = await taskDatabase.fetchTasksFromDatabase();
125+
List<TaskForC> fetchedTasks = await taskDatabase.fetchTasksFromDatabase();
122126
tasks.value = fetchedTasks;
123127
}
124128

125129
Future<void> fetchTasksFromDB() async {
126130
TaskDatabase taskDatabase = TaskDatabase();
127131
await taskDatabase.open();
128-
List<Tasks> fetchedTasks = await taskDatabase.fetchTasksFromDatabase();
132+
List<TaskForC> fetchedTasks = await taskDatabase.fetchTasksFromDatabase();
129133
tasks.value = fetchedTasks;
130134
}
131135

lib/app/modules/home/views/add_task_bottom_sheet_new.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import 'package:flutter/material.dart';
44
import 'package:get/get.dart';
55
import 'package:google_fonts/google_fonts.dart';
66
import 'package:shared_preferences/shared_preferences.dart';
7-
import 'package:taskwarrior/api_service.dart';
87
import 'package:taskwarrior/app/models/json/task.dart';
98
import 'package:taskwarrior/app/modules/home/controllers/home_controller.dart';
109
import 'package:taskwarrior/app/modules/home/controllers/widget.controller.dart';
@@ -17,6 +16,7 @@ import 'package:taskwarrior/app/utils/taskfunctions/add_task_dialog_utils.dart';
1716
import 'package:taskwarrior/app/utils/taskfunctions/tags.dart';
1817
import 'package:taskwarrior/app/utils/taskfunctions/taskparser.dart';
1918
import 'package:taskwarrior/app/utils/themes/theme_extension.dart';
19+
import 'package:taskwarrior/app/v3/models/task.dart';
2020

2121
class AddTaskBottomSheet extends StatelessWidget {
2222
final HomeController homeController;
@@ -282,7 +282,7 @@ class AddTaskBottomSheet extends StatelessWidget {
282282
void onSaveButtonClickedTaskC(BuildContext context) async {
283283
if (homeController.formKey.currentState!.validate()) {
284284
debugPrint("tags ${homeController.tags}");
285-
var task = Tasks(
285+
var task = TaskForC(
286286
description: homeController.namecontroller.text,
287287
status: 'pending',
288288
priority: homeController.priority.value,

lib/app/modules/home/views/show_details.dart

Lines changed: 35 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
// ignore_for_file: deprecated_member_use, use_build_context_synchronously
2-
3-
import 'package:date_format/date_format.dart';
42
import 'package:flutter/material.dart';
53
import 'package:google_fonts/google_fonts.dart';
64
import 'package:intl/intl.dart';
7-
import 'package:taskwarrior/api_service.dart';
85
import 'package:taskwarrior/app/utils/app_settings/app_settings.dart';
96
import 'package:taskwarrior/app/utils/constants/taskwarrior_colors.dart';
107
import 'package:taskwarrior/app/utils/constants/utilites.dart';
118
import 'package:taskwarrior/app/utils/themes/theme_extension.dart';
129
import 'package:taskwarrior/app/utils/language/sentence_manager.dart';
10+
import 'package:taskwarrior/app/v3/db/task_database.dart';
11+
import 'package:taskwarrior/app/v3/models/task.dart';
12+
import 'package:taskwarrior/app/v3/net/modify.dart';
1313

1414
class TaskDetails extends StatefulWidget {
15-
final Tasks task;
15+
final TaskForC task;
1616
const TaskDetails({super.key, required this.task});
1717

1818
@override
@@ -53,7 +53,8 @@ class _TaskDetailsState extends State<TaskDetails> {
5353

5454
@override
5555
Widget build(BuildContext context) {
56-
TaskwarriorColorTheme tColors = Theme.of(context).extension<TaskwarriorColorTheme>()!;
56+
TaskwarriorColorTheme tColors =
57+
Theme.of(context).extension<TaskwarriorColorTheme>()!;
5758
return WillPopScope(
5859
onWillPop: () async {
5960
if (hasChanges) {
@@ -123,10 +124,18 @@ class _TaskDetailsState extends State<TaskDetails> {
123124
});
124125
}),
125126
_buildDetail('UUID:', widget.task.uuid!),
126-
_buildDetail('${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.detailPageUrgency}:', widget.task.urgency.toString()),
127-
_buildDetail('${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.detailPageEnd}:', _buildDate(widget.task.end)),
128-
_buildDetail('${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.detailPageEntry}:', _buildDate(widget.task.entry)),
129-
_buildDetail('${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.detailPageModified}:', _buildDate(widget.task.modified)),
127+
_buildDetail(
128+
'${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.detailPageUrgency}:',
129+
widget.task.urgency.toString()),
130+
_buildDetail(
131+
'${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.detailPageEnd}:',
132+
_buildDate(widget.task.end)),
133+
_buildDetail(
134+
'${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.detailPageEntry}:',
135+
_buildDate(widget.task.entry)),
136+
_buildDetail(
137+
'${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.detailPageModified}:',
138+
_buildDate(widget.task.modified)),
130139
],
131140
),
132141
),
@@ -206,7 +215,8 @@ class _TaskDetailsState extends State<TaskDetails> {
206215
}
207216

208217
Widget _buildDetail(String label, String value) {
209-
TaskwarriorColorTheme tColors = Theme.of(context).extension<TaskwarriorColorTheme>()!;
218+
TaskwarriorColorTheme tColors =
219+
Theme.of(context).extension<TaskwarriorColorTheme>()!;
210220
return Container(
211221
width: double.infinity,
212222
decoration: BoxDecoration(
@@ -251,7 +261,8 @@ class _TaskDetailsState extends State<TaskDetails> {
251261

252262
Future<String?> _showEditDialog(
253263
BuildContext context, String label, String initialValue) async {
254-
TaskwarriorColorTheme tColors = Theme.of(context).extension<TaskwarriorColorTheme>()!;
264+
TaskwarriorColorTheme tColors =
265+
Theme.of(context).extension<TaskwarriorColorTheme>()!;
255266
final TextEditingController controller =
256267
TextEditingController(text: initialValue);
257268
return await showDialog<String>(
@@ -260,21 +271,15 @@ class _TaskDetailsState extends State<TaskDetails> {
260271
return Utils.showAlertDialog(
261272
title: Text(
262273
'${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.edit} $label',
263-
style: TextStyle(
264-
color: tColors.primaryTextColor
265-
),
274+
style: TextStyle(color: tColors.primaryTextColor),
266275
),
267276
content: TextField(
268-
style: TextStyle(
269-
color: tColors.primaryTextColor
270-
),
277+
style: TextStyle(color: tColors.primaryTextColor),
271278
controller: controller,
272279
decoration: InputDecoration(
273280
hintText:
274281
'${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.enterNew} $label',
275-
hintStyle: TextStyle(
276-
color: tColors.primaryTextColor
277-
),
282+
hintStyle: TextStyle(color: tColors.primaryTextColor),
278283
),
279284
),
280285
actions: [
@@ -286,9 +291,7 @@ class _TaskDetailsState extends State<TaskDetails> {
286291
SentenceManager(currentLanguage: AppSettings.selectedLanguage)
287292
.sentences
288293
.cancel,
289-
style: TextStyle(
290-
color: tColors.primaryTextColor
291-
),
294+
style: TextStyle(color: tColors.primaryTextColor),
292295
),
293296
),
294297
TextButton(
@@ -299,9 +302,7 @@ class _TaskDetailsState extends State<TaskDetails> {
299302
SentenceManager(currentLanguage: AppSettings.selectedLanguage)
300303
.sentences
301304
.save,
302-
style: TextStyle(
303-
color: tColors.primaryTextColor
304-
),
305+
style: TextStyle(color: tColors.primaryTextColor),
305306
),
306307
),
307308
],
@@ -312,26 +313,23 @@ class _TaskDetailsState extends State<TaskDetails> {
312313

313314
Future<String?> _showSelectDialog(BuildContext context, String label,
314315
String initialValue, List<String> options) async {
315-
TaskwarriorColorTheme tColors = Theme.of(context).extension<TaskwarriorColorTheme>()!;
316+
TaskwarriorColorTheme tColors =
317+
Theme.of(context).extension<TaskwarriorColorTheme>()!;
316318
return await showDialog<String>(
317319
context: context,
318320
builder: (context) {
319321
return Utils.showAlertDialog(
320322
title: Text(
321323
'${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.select} $label',
322-
style: TextStyle(
323-
color: tColors.primaryTextColor
324-
),
324+
style: TextStyle(color: tColors.primaryTextColor),
325325
),
326326
content: Column(
327327
mainAxisSize: MainAxisSize.min,
328328
children: options.map((option) {
329329
return RadioListTile<String>(
330330
title: Text(
331331
option,
332-
style: TextStyle(
333-
color: tColors.primaryTextColor
334-
),
332+
style: TextStyle(color: tColors.primaryTextColor),
335333
),
336334
value: option,
337335
groupValue: initialValue,
@@ -362,7 +360,8 @@ class _TaskDetailsState extends State<TaskDetails> {
362360

363361
Future<UnsavedChangesAction?> _showUnsavedChangesDialog(
364362
BuildContext context) async {
365-
TaskwarriorColorTheme tColors = Theme.of(context).extension<TaskwarriorColorTheme>()!;
363+
TaskwarriorColorTheme tColors =
364+
Theme.of(context).extension<TaskwarriorColorTheme>()!;
366365
return showDialog<UnsavedChangesAction>(
367366
context: context,
368367
barrierDismissible: false,
@@ -372,16 +371,13 @@ class _TaskDetailsState extends State<TaskDetails> {
372371
SentenceManager(currentLanguage: AppSettings.selectedLanguage)
373372
.sentences
374373
.unsavedChanges,
375-
style: TextStyle(
376-
color: tColors.primaryTextColor),
374+
style: TextStyle(color: tColors.primaryTextColor),
377375
),
378376
content: Text(
379377
SentenceManager(currentLanguage: AppSettings.selectedLanguage)
380378
.sentences
381379
.unsavedChangesWarning,
382-
style: TextStyle(
383-
color: tColors.primaryTextColor
384-
),
380+
style: TextStyle(color: tColors.primaryTextColor),
385381
),
386382
actions: <Widget>[
387383
TextButton(

lib/app/modules/home/views/show_tasks.dart

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,17 @@ import 'package:flutter/material.dart';
22
import 'package:flutter_slidable/flutter_slidable.dart';
33
import 'package:get/get.dart';
44
import 'package:google_fonts/google_fonts.dart';
5-
import 'package:taskwarrior/api_service.dart';
65
import 'package:taskwarrior/app/modules/home/controllers/home_controller.dart';
76
import 'package:taskwarrior/app/modules/home/views/show_details.dart';
87
import 'package:taskwarrior/app/utils/app_settings/app_settings.dart';
98
import 'package:taskwarrior/app/utils/constants/taskwarrior_colors.dart';
109
import 'package:taskwarrior/app/utils/constants/taskwarrior_fonts.dart';
1110
import 'package:taskwarrior/app/utils/themes/theme_extension.dart';
1211
import 'package:taskwarrior/app/utils/language/sentence_manager.dart';
12+
import 'package:taskwarrior/app/v3/db/task_database.dart';
13+
import 'package:taskwarrior/app/v3/models/task.dart';
14+
import 'package:taskwarrior/app/v3/net/complete.dart';
15+
import 'package:taskwarrior/app/v3/net/delete.dart';
1316

1417
class TaskViewBuilder extends StatelessWidget {
1518
const TaskViewBuilder({
@@ -30,12 +33,12 @@ class TaskViewBuilder extends StatelessWidget {
3033
Theme.of(context).extension<TaskwarriorColorTheme>()!;
3134

3235
return Obx(() {
33-
List<Tasks> tasks = List<Tasks>.from(taskController.tasks);
36+
List<TaskForC> tasks = List<TaskForC>.from(taskController.tasks);
3437
// Filter tasks based on the selected project
3538
if (project != 'All Projects') {
3639
tasks = tasks.where((task) => task.project == project).toList();
3740
} else {
38-
tasks = List<Tasks>.from(tasks);
41+
tasks = List<TaskForC>.from(tasks);
3942
}
4043

4144
// Apply other filters and sorting
@@ -109,7 +112,7 @@ class TaskViewBuilder extends StatelessWidget {
109112
),
110113
itemCount: tasks.length,
111114
itemBuilder: (context, index) {
112-
Tasks task = tasks[index];
115+
TaskForC task = tasks[index];
113116
return Slidable(
114117
startActionPane: ActionPane(
115118
motion: const BehindMotion(),
@@ -133,8 +136,8 @@ class TaskViewBuilder extends StatelessWidget {
133136
);
134137
},
135138
icon: Icons.done,
136-
label: SentenceManager(currentLanguage:
137-
AppSettings.selectedLanguage)
139+
label: SentenceManager(
140+
currentLanguage: AppSettings.selectedLanguage)
138141
.sentences
139142
.complete,
140143
backgroundColor: TaskWarriorColors.green,
@@ -164,7 +167,7 @@ class TaskViewBuilder extends StatelessWidget {
164167
},
165168
icon: Icons.delete,
166169
label: SentenceManager(
167-
currentLanguage: AppSettings.selectedLanguage)
170+
currentLanguage: AppSettings.selectedLanguage)
168171
.sentences
169172
.delete,
170173
backgroundColor: TaskWarriorColors.red,

lib/app/modules/reports/controllers/reports_controller.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,7 @@ import 'dart:ui';
44
import 'package:flutter/material.dart';
55
import 'package:flutter/rendering.dart';
66
import 'package:get/get.dart';
7-
import 'package:shared_preferences/shared_preferences.dart';
87
import 'package:syncfusion_flutter_charts/charts.dart';
9-
import 'package:taskwarrior/api_service.dart';
108
import 'package:taskwarrior/app/models/json/task.dart';
119
import 'package:taskwarrior/app/models/storage.dart';
1210
import 'package:taskwarrior/app/modules/home/controllers/home_controller.dart';
@@ -19,6 +17,8 @@ import 'package:taskwarrior/app/utils/gen/fonts.gen.dart';
1917
import 'package:taskwarrior/app/utils/app_settings/app_settings.dart';
2018
import 'package:path_provider/path_provider.dart';
2119
import 'package:flutter/services.dart';
20+
import 'package:taskwarrior/app/v3/db/task_database.dart';
21+
import 'package:taskwarrior/app/v3/models/task.dart';
2222
import 'package:tutorial_coach_mark/tutorial_coach_mark.dart';
2323

2424
class ReportsController extends GetxController
@@ -410,7 +410,7 @@ class ReportsController extends GetxController
410410
});
411411
}
412412

413-
Future<List<Tasks>> fetchTasks() async {
413+
Future<List<TaskForC>> fetchTasks() async {
414414
await taskDatabase.open();
415415
return await taskDatabase.fetchTasksFromDatabase();
416416
}

0 commit comments

Comments
 (0)