72 Commits

Author SHA1 Message Date
Mathias Mogensen
177cca60c4
fix: notes disappears (#4122) 2023-12-10 13:44:37 +02:00
Lucas.Xu
ef49cb6577
feat: upgrade to flutter 3.16 (#4119)
* feat: upgrade to flutter 3.16

* chore: adjust flutter 3.16 new api

* chore: code format

* fix: ci lint

* chore: code format

* chore: dart format
2023-12-08 21:01:54 +08:00
Richard Shiue
04eea26a55
fix: hidden board card cannot open as page (#4090)
* fix: card open in board

* style: super.key and remove unused variables

* chore: more code cleanup
2023-12-05 17:24:21 +08:00
Richard Shiue
5fa441cbf5
fix: launch review issues (#4075)
* chore: add a tooltip for fields in row detail page

* fix: grouping by field makes cell contents disappear

* chore: code cleanup

* chore: env var values in launch.json should be string

* fix: group orders not being saved

* test: fix test

* chore: more code cleanup

* fix: field settings not found

* chore: ellide cell text

* fix: alignment issues in row detail page
2023-12-04 10:22:26 +08:00
Mohammad Zolfaghari
066bba95f5
fix: update auto-update fields on change group (#3833)
* fix: update auto-update fields on change group

auto-update fields should get updated when on moving row from one
group to another. They where getting updated only on changing row
properties directly.
Also added integration test for changing row groupd related to #3010.

* style: rust format

* fix: add board group test to runner

* fix: update auto updated fiels only when group has changed

* fix: apply group changeset before move_row

* fix: get from_row before move_row

* fix: groups method changed to get_all_groups

* fix: pass from group id in move group payload

We can't know the from group id from the row itself. Because a row
can exist in multiple groups (group by multiselect).

* fix: MoveGroupRowPayloadPB from_group_id index
2023-12-01 00:24:10 +08:00
Yijing Huang
6b4d4fef15
feat: mobile board view (#4030) 2023-11-30 10:01:29 +08:00
Richard Shiue
9d61ca0278
feat: delete kanban board groups (#3925)
* feat: hide/unhide ui

* chore: implement collapsible side bar and adjust group header (#2)

* refactor: hidden columns into own file

* chore: adjust new group button position

* fix: flowy icon buton secondary color bleed

* chore: some UI adjustments

* fix: some regressions

* chore: proper group is_visible fetching

* chore: use a bloc to manage hidden groups

* fix: hiding groups not working

* chore: implement hidden group popups

* chore: proper ungrouped item column management

* chore: remove ungrouped items button

* chore: flowy hover build

* fix: clean up code

* test: integration tests

* fix: not null promise on null value

* fix: hide and unhide multiple groups

* chore: i18n and code review

* chore: missed review

* fix: rust-lib-test

* fix: dont completely remove flowyiconhovercolor

* chore: apply suggest

* fix: number of rows inside hidden groups not updating properly

* fix: hidden groups disappearing after collapse

* fix: hidden group title alignment

* fix: insert newly unhidden groups into the correct position

* chore: adjust padding all around

* feat: reorder hidden groups

* chore: adjust padding

* chore: collapse hidden groups section persist

* chore: no status group at beginning

* fix: hiding groups when grouping with other types

* chore: disable rename groups that arent supported

* chore: update appflowy board ref

* chore: better naming

* feat: delete kanban groups

* chore: forgot to save

* chore: fix build and small ui adjustments

* chore: add a confirm dialog when deleting a column

* fix: flutter lint

* test: add integration test

* chore: fix some design review issues

* chore: apply suggestions from Nathan

* fix: write lock on group controller

---------

Co-authored-by: Mathias Mogensen <mathias@appflowy.io>
2023-11-28 10:43:22 +08:00
Lucas.Xu
79b1515c3a
fix: memory leaks (#3995)
* feat: add memory leak monitor

* fix: memory leaks

* feat: dump call stack in memory leak detector

* chore: disable memory leak detector
2023-11-26 15:10:48 +08:00
Richard Shiue
e18e031710
chore: adjust board card UI (#3954)
* chore: adjust board card UI

* chore: fix accessory popover and add title placeholder

* chore: add pubspec.lock

* chore: fix integration test

* chore: apply suggestions from code review

Co-authored-by: Mathias Mogensen <42929161+Xazin@users.noreply.github.com>

* chore: apply suggestions from Mathias

---------

Co-authored-by: Mathias Mogensen <42929161+Xazin@users.noreply.github.com>
2023-11-24 00:25:12 +08:00
Richard Shiue
66835a5409
feat: field editing bloc refactor and add mobile field editor (#3981) 2023-11-23 16:43:29 +08:00
Yijing Huang
acc951c5eb
feat: mobile card detail screen (#3935)
* feat: add CardDetailScreen and CardPropertyEditScreen

- add basic UI layout for these two screens
- add MobileTextCell as the GridCellWidget adapts to mobile

* feat: add MobileNumberCell and MobileTimestampCell

* feat: Add MobileDateCell and MobileCheckboxCell

- Add MobileDateCellEditScreen
- Add dateStr and endDateStr in DateCellCalendarState

* feat:  add MobileFieldTypeOptionEditor

- Add placeholder for different TypeOptionMobileWidgetBuilders
- Add _MobileSwitchFieldButton

* feat: add property delete feature in CardPropertyEditScreen

* fix: fix VisibilitySwitch didn't update

* feat: add MobileCreateRowFieldScreen

- Refactor MobileFieldEditor to used in CardPropertyEditScreen and MobileCreateRowFieldScreen
- Add MobileCreateRowFieldScreen

* chore: localization and improve spacing

* feat: add TimestampTypeOptionMobileWidget

- Refactor  TimeFormatListTile to be used in TimestampTypeOptionMobileWidget and _DateCellEditBody
- Add IncludeTimeSwitch to be used in TimestampTypeOptionMobileWidget and _DateCellEditBody

* feat: add checkbox and DateTypeOptionMobileWidget

* chore: improve UI

* chore: improve spacing

* fix: fix end time shown issue

* fix: minor issues

* fix: flutter analyze

* chore: delete unused TextEditingController

* fix: prevent group field from deleting

* feat: add NumberTypeOptionMobileWidget

* chore: rename and clean code

* chore: clean code

* chore: extract class

* chore: refactor reorder cells

* chore: improve super.key

* chore: refactor MobileFieldTypeList

* chore: reorginize code

* chore: remove unused import file

* chore: clean code

* chore: add commas due to flutter upgrade

* feat: add MobileURLCell

* fix: close keyboard when user tap outside of textfield

* chore: update go_router version

* fix: add missing GridCellStyle

---------

Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
2023-11-20 22:56:21 -07:00
Richard Shiue
729b8571b5
chore: fix ungroupedsection being shown (#3953)
* chore: fix ungroupedsection being shown

* chore: board ui adjustment
2023-11-17 09:27:10 +08:00
Lucas.Xu
6a9866b9d2
chore: upgrade flutter to 3.13.9 (#3936) 2023-11-14 22:33:07 +08:00
Richard Shiue
4992f9c281
chore: fix-typo (#3934) 2023-11-14 15:41:44 +08:00
Richard Shiue
47f3702ca9
fix: integration test on kanban (#3928) 2023-11-13 19:32:11 +08:00
Richard Shiue
a63a7ea611
feat: hidden kanban groups (#3907)
* feat: hide/unhide ui

* chore: implement collapsible side bar and adjust group header (#2)

* refactor: hidden columns into own file

* chore: adjust new group button position

* fix: flowy icon buton secondary color bleed

* chore: some UI adjustments

* fix: some regressions

* chore: proper group is_visible fetching

* chore: use a bloc to manage hidden groups

* fix: hiding groups not working

* chore: implement hidden group popups

* chore: proper ungrouped item column management

* chore: remove ungrouped items button

* chore: flowy hover build

* fix: clean up code

* test: integration tests

* fix: not null promise on null value

* fix: hide and unhide multiple groups

* chore: i18n and code review

* chore: missed review

* fix: rust-lib-test

* fix: dont completely remove flowyiconhovercolor

* chore: apply suggest

* fix: number of rows inside hidden groups not updating properly

* fix: hidden groups disappearing after collapse

* fix: hidden group title alignment

* fix: insert newly unhidden groups into the correct position

* chore: adjust padding all around

* feat: reorder hidden groups

* chore: adjust padding

* chore: collapse hidden groups section persist

* chore: no status group at beginning

* fix: hiding groups when grouping with other types

* chore: disable rename groups that arent supported

* chore: update appflowy board ref

* chore: better naming

* test: fix tests

---------

Co-authored-by: Mathias Mogensen <mathias@appflowy.io>
2023-11-13 16:14:31 +08:00
Mathias Mogensen
17651bf64c
feat: show notes icon when notes is not empty (#3893)
* feat: show notes icon when notes is not empty

* fix: redundant clone

* chore: update collab and fix after merging main
2023-11-09 00:30:50 +01:00
Richard Shiue
c4fc60612f
feat: add new group (#3854)
* feat: implement backend logic

* fix: did_create_row not working properly

* fix: did_delete_group not working properly

* fix: test

* chore: fix clippy

* fix: new card not editable and in wrong position

* feat: imlement UI for add new stack

* test: add integration test

* chore: i18n

* chore: remove debug message

* chore: merge conflict

---------

Co-authored-by: nathan <nathan@appflowy.io>
2023-11-06 16:17:05 +08:00
Richard Shiue
4d82bb5322
chore: move field width to field settings (#3830)
* refactor: remove unnecessary builder

* feat: add width to field settings

* refactor: field settings logic

* chore: oopsies

* chore: implement UI

* chore: remove GridFieldCellEquatable

* test: rust-lib test fix
2023-11-06 14:48:59 +08:00
Mathias Mogensen
d358e18f33
fix: add card at the beginning (#3835) 2023-10-30 17:34:37 +01:00
Richard Shiue
18bd91936c
fix: more board fixes (#3821)
* fix: null check value

* refactor: remove unnecessary blocbuilder

* fix: missing checkbox icon at top of board column
2023-10-29 12:51:34 +08:00
Richard Shiue
b9a25f449f
refactor: hide ungrouped feature (#3817)
* refactor: remove unused notification and listener

* revert: remove hide_ungrouped from group settings

* chore: add board layout setting

* chore: listen to layout settings on ui

* fix: duplicated group controller initialization

* chore: add a tooltip to the ungrouped items button

* chore: trailing comma
2023-10-29 11:26:49 +08:00
Richard Shiue
993532a2f0
fix: edit card title not working (#3819) 2023-10-28 23:13:27 +08:00
Richard Shiue
8c3984d21a
feat: allow hiding ungrouped stack (#3752)
* feat: allow hiding ungrouped stack

* chore: add notifications and listeners

* chore: implement UI

* fix: field info update

* chore: more responsive notification

* chore: read the right configurations

* feat: add ungrouped button

* fix: new board not getting isGroupField

* feat: refresh the counter

* fix: item count update

* chore: apply code suggestions from Mathias

* chore: yolo through tests

* chore: UI fix

* chore: code cleanup

* chore: ungrouped item count fix

* chore: same as above
2023-10-26 11:48:58 +08:00
Mathias Mogensen
aa27c4e6d4
Feat: rename stack inline (#3781)
* feat: rename stack in-line

* feat: rename stack in-line

* chore: compiler issues

* fix: conflicts and cleaning

* fix: code lost after merge

* test: fix failing rust tests

* fix: tauri localization wrong keys

---------

Co-authored-by: Richard Shiue <71320345+richardshiue@users.noreply.github.com>
2023-10-26 09:38:37 +08:00
Sarthak Kimtani
62f1d6eb82
fix: 3620 unchecked checkbox color (#3685) 2023-10-13 21:06:13 +08:00
Lucas.Xu
9c59e1487e
feat: customize text font (#3467)
* feat: update UI in settings page

* feat: customzing font in document page

* fix: flutter analyze and format issues
2023-09-21 09:12:25 +08:00
Nathan.fooo
a1647bee78
feat: realtime user event (#3241)
* feat: update user profile after receiving realtime user event

* chore: logout if other deivce enable encyrption

* test: fix test

* chore: fix checkbox UI

* chore: fix tauri build

* chore: fix device id

* chore: fix duplicate run appflowy
2023-08-20 14:13:54 +08:00
Alex Wallen
243f80b6d5
[chore] svg improvements (#3145)
* chore: remove use of svgWidget()

* refactor: redundant code in svg

* feat: add generator to generate flowy_svgs.g.dart

* chore: reference new package in pubspec

* chore: remove svg widget from flowy_infra

* refactor: update usage in flowy_infra_ui

* refactor: usage in appflowy_flutter

* fix: error with script not running

* fix: error with script not running

* fix: use unix style file path

* feat: use generation script for flowy svgs

* feat: add task

* fix: add required missing semicolon

* fix: rebase errors

* feat: update generate build script

* fix: solve duplicate entries in the generated file

* fix: compilation errors

* fix: replace all spaces with an underscore

* feat: use FlowySvgs

* feat: reduce assets and simplify

* refactor: do not return empty svg widget

* fix: rebase errors

* fix: analyzer warnings

* chore: remove flowy_icons from tracking

* chore: fix generate flowy icons script linux

* chore: macos/linux script

* chore: add rsync

---------

Co-authored-by: Mathias Mogensen <mathiasrieckm@gmail.com>
Co-authored-by: Mathias Mogensen <mathias@appflowy.io>
2023-08-14 10:34:01 -10:00
Nathan.fooo
0c9935ccf2
fix: using freeze to refactor the FieldInfo class (#3152) 2023-08-10 15:46:16 +08:00
Richard Shiue
7cdd47757b
chore: database tab bar ui improvements (#3093)
* chore: tab bar ui polish

* chore: toolbar buttons ui

* chore: minor padding radius and spacing adjustment

* fix: padding issues

* chore: add view button size and padding

* chore: the carelessness is real

* fix: dark mode colors

* fix: selected icon color
2023-08-08 16:57:25 +08:00
Nathan.fooo
9a72f31d60
feat: show loading indicator when loading data from remote (#3120)
* chore: show circle indicator if fetch the data from remote

* chore: fix the lb warnings

* chore: create sdk-build for macOS
2023-08-05 15:02:05 +08:00
Richard Shiue
ff79635b2b
fix: height for calendar view in document (#3073) 2023-08-02 18:07:44 +08:00
Vedant Pandey
7c21f61d2e
feat: add duplicate in context menu (#2921) 2023-08-01 11:19:48 +08:00
Nathan.fooo
f9e7b5ffa4
feat: reload UI (#2999)
* chore: reload folder

* chore: reload folder

* chore: init sync

* chore: update tables

* chore: update database

* chore: load row

* chore: update

* chore: reload row

* test: fit test

* chore: retry

* chore: support batch fetch

* chore: enable sync

* chore: sync switch

* chore: sync switch

* chore: migration user data

* chore: migrate data

* chore: migrate folder

* chore: save user email

* chore: refresh user profile

* chore: fix test

* chore: delete translation files

* test: clippy format
2023-07-14 13:37:13 +08:00
Nathan.fooo
13ff38756f
feat: put all user data into a folder when choosing a custom storage path (#2861) 2023-06-21 12:15:32 +08:00
Alex Wallen
5cced92646
[feat] make error widget sexy (#2825)
* feat: add translations

* feat: style error page

* chore: update api usage

* feat: add GitHub redirect

* chore: rebase error?

* chore: remove todo comment

* chore: remove impossible code

* fix: update url launcher invocation

* chore: use new api

* fix: analyzer errors

* fix: revert changes in Cargo.toml
2023-06-21 10:03:39 +08:00
Nathan.fooo
e50d708c21
feat: create database view on same database (#2829)
* feat: create database view on same database

* feat: switch tag between views

* fix: calendar tool bar

* fix: set layout setting

* chore: update collab rev

* fix: board layout issue

* test: add integration tests

* test: add calendar start from day test
2023-06-20 23:48:34 +08:00
Nathan.fooo
14dee6b797
test: filter integration (#2821)
* test: add checklist filter test

* fix: widget reference to invalid databaseController

* fix: SelectOptionFilterList doesn't expand to fill the CustomScrollView

* test: add single select and multi-select filter test

* ci: set protoc version
2023-06-16 14:32:32 +08:00
Nathan.fooo
27dd719aa8
feat: row document (#2792)
* chore: create orphan view handler

* feat: save icon url and cover url in view

* feat: implement emoji picker UI

* chore: config ui

* chore: config ui again

* chore: replace RowPB with RowMetaPB to exposing more row information

* fix: compile error

* feat: show emoji in row

* chore: update

* test: insert emoji test

* test: add update emoji test

* test: add remove emoji test

* test: add create field tests

* test: add create row and delete row integration tests

* test: add create row from row menu

* test: document in row detail page

* test: delete, duplicate row in row detail page

* test: check the row count displayed in grid page

* test: rename existing field in grid page

* test: update field type of exisiting field in grid page

* test: delete field test

* test: add duplicate field test

* test: add hide field test

* test: add edit text cell test

* test: add insert text to text cell test

* test: add edit number cell test

* test: add edit multiple number cells

* test: add edit checkbox cell test

* feat: integrate editor into database row

* test: add edit create time and last edit time cell test

* test: add edit date cell by selecting a date test

* chore: remove unused code

* chore: update checklist bg color

* test: add update database layout test

---------

Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
2023-06-14 22:16:33 +08:00
Nathan.fooo
c7f73551c7
fix: update database layout in document (#2757)
* fix: update database layout in document

* feat: create or ref calendar

* Update frontend/appflowy_flutter/lib/plugins/document/presentation/editor_plugins/calendar/calendar_menu_item.dart

Co-authored-by: Mathias Mogensen <42929161+Xazin@users.noreply.github.com>

* fix: stop listen

* feat: remove the redundant database view files

* chore: rename the grid state

---------

Co-authored-by: Mathias Mogensen <42929161+Xazin@users.noreply.github.com>
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
2023-06-11 08:49:10 +08:00
Nathan.fooo
e9be37a961
test: add database event tests (#2744)
* chore: add tests

* test: add tests

* test: add tests
2023-06-09 18:57:29 +08:00
Yatendra Kumar
95d620931f
feat: added analysis options + formatted complete code (#2725)
* feat: added analysis options + formatted complete code

* fix: formatted code

---------

Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
2023-06-07 16:25:37 +08:00
Nathan.fooo
33e0f8d26d
feat: switch database layout (#2677)
* chore: rename update at and create at

* chore: support switching view layout

* chore: implement ui

* chore: update layout type

* refactor: board/calendar/grid setting button

* chore: update UI after switch to other layout type

* fix: no date display in calendar

* chore: update patch

* chore: fix create ref view in document

* chore: fix flutter analyze

* ci: warnings

* chore: rename board and grid keys

* fix: calendar row event update

---------

Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
2023-06-01 20:23:27 +08:00
Nathan.fooo
09d61c79c9
chore: rename update at and create at (#2672) 2023-05-31 17:34:41 +08:00
Nathan.fooo
75d40b79d0
fix: some bugs (#2639)
* fix: invalid index when insert row

* fix: auto fill 0 in front of number start with .

* fix: #2591

* chore: split the update at and create at test

* chore: fix tauri build
2023-05-28 16:14:25 +08:00
Mohammad Zolfaghari
9a213fa562
feat: created at and updated at field type (#2572)
* feat: created at and updated at field type

* style: context for rust asserts, change checks in flutter

* fix: mistake in if condition

* style: add comma end of array

* feat: created at and updated at field type

* fix: typo in const variable

* style: cargo fmt

* refactor: opti cell insert

* chore: remove redundant clone

* refactor: date type option

* fix: tauri build

---------

Co-authored-by: nathan <nathan@appflowy.io>
2023-05-26 18:34:17 +08:00
Nathan.fooo
5cc8340e05
chore: Merge main 521 (#2574)
* chore: merge main branch

* chore: remove document plugins

* chore: add color generator

* ci: tests
2023-05-21 15:08:50 +08:00
Nathan.fooo
f04d64a191
feat: config (#2552)
* feat: save project config

* feat: implement dart key value store
2023-05-17 16:33:44 +08:00
nathan
ad99998d33 chore: Merge branch 'main' into develop 2023-05-04 13:34:55 +08:00