Skip to content

Commit 4a68020

Browse files
authored
Merge pull request #993 from AppFlowy-IO/feat/board_documentation
2 parents a3d2cef + a21050b commit 4a68020

File tree

23 files changed

+907
-753
lines changed

23 files changed

+907
-753
lines changed

frontend/app_flowy/lib/plugins/board/application/board_bloc.dart

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ part 'board_bloc.freezed.dart';
2222

2323
class BoardBloc extends Bloc<BoardEvent, BoardState> {
2424
final BoardDataController _gridDataController;
25-
late final AFBoardDataController boardController;
25+
late final AppFlowyBoardController boardController;
2626
final MoveRowFFIService _rowService;
2727
LinkedHashMap<String, GroupController> groupControllers = LinkedHashMap();
2828

@@ -34,16 +34,16 @@ class BoardBloc extends Bloc<BoardEvent, BoardState> {
3434
: _rowService = MoveRowFFIService(gridId: view.id),
3535
_gridDataController = BoardDataController(view: view),
3636
super(BoardState.initial(view.id)) {
37-
boardController = AFBoardDataController(
38-
onMoveColumn: (
37+
boardController = AppFlowyBoardController(
38+
onMoveGroup: (
3939
fromColumnId,
4040
fromIndex,
4141
toColumnId,
4242
toIndex,
4343
) {
4444
_moveGroup(fromColumnId, toColumnId);
4545
},
46-
onMoveColumnItem: (
46+
onMoveGroupItem: (
4747
columnId,
4848
fromIndex,
4949
toIndex,
@@ -52,15 +52,15 @@ class BoardBloc extends Bloc<BoardEvent, BoardState> {
5252
final toRow = groupControllers[columnId]?.rowAtIndex(toIndex);
5353
_moveRow(fromRow, columnId, toRow);
5454
},
55-
onMoveColumnItemToColumn: (
56-
fromColumnId,
55+
onMoveGroupItemToGroup: (
56+
fromGroupId,
5757
fromIndex,
58-
toColumnId,
58+
toGroupId,
5959
toIndex,
6060
) {
61-
final fromRow = groupControllers[fromColumnId]?.rowAtIndex(fromIndex);
62-
final toRow = groupControllers[toColumnId]?.rowAtIndex(toIndex);
63-
_moveRow(fromRow, toColumnId, toRow);
61+
final fromRow = groupControllers[fromGroupId]?.rowAtIndex(fromIndex);
62+
final toRow = groupControllers[toGroupId]?.rowAtIndex(toIndex);
63+
_moveRow(fromRow, toGroupId, toRow);
6464
},
6565
);
6666

@@ -165,10 +165,10 @@ class BoardBloc extends Bloc<BoardEvent, BoardState> {
165165
boardController.clear();
166166

167167
//
168-
List<AFBoardColumnData> columns = groups
168+
List<AppFlowyGroupData> columns = groups
169169
.where((group) => fieldController.getField(group.fieldId) != null)
170170
.map((group) {
171-
return AFBoardColumnData(
171+
return AppFlowyGroupData(
172172
id: group.groupId,
173173
name: group.desc,
174174
items: _buildRows(group),
@@ -178,7 +178,7 @@ class BoardBloc extends Bloc<BoardEvent, BoardState> {
178178
),
179179
);
180180
}).toList();
181-
boardController.addColumns(columns);
181+
boardController.addGroups(columns);
182182

183183
for (final group in groups) {
184184
final delegate = GroupControllerDelegateImpl(
@@ -227,8 +227,8 @@ class BoardBloc extends Bloc<BoardEvent, BoardState> {
227227
if (isClosed) return;
228228
for (final group in updatedGroups) {
229229
final columnController =
230-
boardController.getColumnController(group.groupId);
231-
columnController?.updateColumnName(group.desc);
230+
boardController.getGroupController(group.groupId);
231+
columnController?.updateGroupName(group.desc);
232232
}
233233
},
234234
onError: (err) {
@@ -243,13 +243,13 @@ class BoardBloc extends Bloc<BoardEvent, BoardState> {
243243
);
244244
}
245245

246-
List<AFColumnItem> _buildRows(GroupPB group) {
246+
List<AppFlowyGroupItem> _buildRows(GroupPB group) {
247247
final items = group.rows.map((row) {
248248
final fieldContext = fieldController.getField(group.fieldId);
249249
return BoardColumnItem(row: row, fieldContext: fieldContext!);
250250
}).toList();
251251

252-
return <AFColumnItem>[...items];
252+
return <AppFlowyGroupItem>[...items];
253253
}
254254

255255
Future<void> _loadGrid(Emitter<BoardState> emit) async {
@@ -335,7 +335,7 @@ class GridFieldEquatable extends Equatable {
335335
UnmodifiableListView<FieldPB> get value => UnmodifiableListView(_fields);
336336
}
337337

338-
class BoardColumnItem extends AFColumnItem {
338+
class BoardColumnItem extends AppFlowyGroupItem {
339339
final RowPB row;
340340
final GridFieldContext fieldContext;
341341

@@ -350,7 +350,7 @@ class BoardColumnItem extends AFColumnItem {
350350

351351
class GroupControllerDelegateImpl extends GroupControllerDelegate {
352352
final GridFieldController fieldController;
353-
final AFBoardDataController controller;
353+
final AppFlowyBoardController controller;
354354
final void Function(String, RowPB, int?) onNewColumnItem;
355355

356356
GroupControllerDelegateImpl({
@@ -369,16 +369,16 @@ class GroupControllerDelegateImpl extends GroupControllerDelegate {
369369

370370
if (index != null) {
371371
final item = BoardColumnItem(row: row, fieldContext: fieldContext);
372-
controller.insertColumnItem(group.groupId, index, item);
372+
controller.insertGroupItem(group.groupId, index, item);
373373
} else {
374374
final item = BoardColumnItem(row: row, fieldContext: fieldContext);
375-
controller.addColumnItem(group.groupId, item);
375+
controller.addGroupItem(group.groupId, item);
376376
}
377377
}
378378

379379
@override
380380
void removeRow(GroupPB group, String rowId) {
381-
controller.removeColumnItem(group.groupId, rowId);
381+
controller.removeGroupItem(group.groupId, rowId);
382382
}
383383

384384
@override
@@ -388,7 +388,7 @@ class GroupControllerDelegateImpl extends GroupControllerDelegate {
388388
Log.warn("FieldContext should not be null");
389389
return;
390390
}
391-
controller.updateColumnItem(
391+
controller.updateGroupItem(
392392
group.groupId,
393393
BoardColumnItem(row: row, fieldContext: fieldContext),
394394
);
@@ -404,9 +404,9 @@ class GroupControllerDelegateImpl extends GroupControllerDelegate {
404404
final item = BoardColumnItem(row: row, fieldContext: fieldContext);
405405

406406
if (index != null) {
407-
controller.insertColumnItem(group.groupId, index, item);
407+
controller.insertGroupItem(group.groupId, index, item);
408408
} else {
409-
controller.addColumnItem(group.groupId, item);
409+
controller.addGroupItem(group.groupId, item);
410410
}
411411
onNewColumnItem(group.groupId, row, index);
412412
}

frontend/app_flowy/lib/plugins/board/presentation/board_page.dart

Lines changed: 19 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -62,17 +62,15 @@ class BoardContent extends StatefulWidget {
6262
}
6363

6464
class _BoardContentState extends State<BoardContent> {
65-
late ScrollController scrollController;
66-
late AFBoardScrollManager scrollManager;
65+
late AppFlowyBoardScrollController scrollManager;
6766

68-
final config = AFBoardConfig(
69-
columnBackgroundColor: HexColor.fromHex('#F7F8FC'),
67+
final config = AppFlowyBoardConfig(
68+
groupBackgroundColor: HexColor.fromHex('#F7F8FC'),
7069
);
7170

7271
@override
7372
void initState() {
74-
scrollController = ScrollController();
75-
scrollManager = AFBoardScrollManager();
73+
scrollManager = AppFlowyBoardScrollController();
7674
super.initState();
7775
}
7876

@@ -101,20 +99,20 @@ class _BoardContentState extends State<BoardContent> {
10199

102100
Expanded _buildBoard(BuildContext context) {
103101
return Expanded(
104-
child: AFBoard(
105-
scrollManager: scrollManager,
106-
scrollController: scrollController,
107-
dataController: context.read<BoardBloc>().boardController,
102+
child: AppFlowyBoard(
103+
boardScrollController: scrollManager,
104+
scrollController: ScrollController(),
105+
controller: context.read<BoardBloc>().boardController,
108106
headerBuilder: _buildHeader,
109107
footerBuilder: _buildFooter,
110108
cardBuilder: (_, column, columnItem) => _buildCard(
111109
context,
112110
column,
113111
columnItem,
114112
),
115-
columnConstraints: const BoxConstraints.tightFor(width: 300),
116-
config: AFBoardConfig(
117-
columnBackgroundColor: HexColor.fromHex('#F7F8FC'),
113+
groupConstraints: const BoxConstraints.tightFor(width: 300),
114+
config: AppFlowyBoardConfig(
115+
groupBackgroundColor: HexColor.fromHex('#F7F8FC'),
118116
),
119117
),
120118
);
@@ -143,20 +141,19 @@ class _BoardContentState extends State<BoardContent> {
143141

144142
@override
145143
void dispose() {
146-
scrollController.dispose();
147144
super.dispose();
148145
}
149146

150147
Widget _buildHeader(
151148
BuildContext context,
152-
AFBoardColumnData columnData,
149+
AppFlowyGroupData columnData,
153150
) {
154151
final boardCustomData = columnData.customData as BoardCustomData;
155-
return AppFlowyColumnHeader(
152+
return AppFlowyGroupHeader(
156153
title: Flexible(
157154
fit: FlexFit.tight,
158155
child: FlowyText.medium(
159-
columnData.headerData.columnName,
156+
columnData.headerData.groupName,
160157
fontSize: 14,
161158
overflow: TextOverflow.clip,
162159
color: context.read<AppTheme>().textColor,
@@ -181,14 +178,14 @@ class _BoardContentState extends State<BoardContent> {
181178
);
182179
}
183180

184-
Widget _buildFooter(BuildContext context, AFBoardColumnData columnData) {
181+
Widget _buildFooter(BuildContext context, AppFlowyGroupData columnData) {
185182
final boardCustomData = columnData.customData as BoardCustomData;
186183
final group = boardCustomData.group;
187184

188185
if (group.isDefault) {
189186
return const SizedBox();
190187
} else {
191-
return AppFlowyColumnFooter(
188+
return AppFlowyGroupFooter(
192189
icon: SizedBox(
193190
height: 20,
194191
width: 20,
@@ -215,8 +212,8 @@ class _BoardContentState extends State<BoardContent> {
215212

216213
Widget _buildCard(
217214
BuildContext context,
218-
AFBoardColumnData column,
219-
AFColumnItem columnItem,
215+
AppFlowyGroupData column,
216+
AppFlowyGroupItem columnItem,
220217
) {
221218
final boardColumnItem = columnItem as BoardColumnItem;
222219
final rowPB = boardColumnItem.row;
@@ -242,7 +239,7 @@ class _BoardContentState extends State<BoardContent> {
242239
},
243240
);
244241

245-
return AppFlowyColumnItemCard(
242+
return AppFlowyGroupCard(
246243
key: ValueKey(columnItem.id),
247244
margin: config.cardPadding,
248245
decoration: _makeBoxDecoration(context),

frontend/app_flowy/packages/appflowy_board/CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# 0.0.7
2+
* Rename some classes
3+
* Add documentation
14
# 0.0.6
25
* Support scroll to bottom
36
* Fix some bugs

0 commit comments

Comments
 (0)