* chore: remove async trait
* chore: require From<AnyMap> for trait TypeOption
* refactor: simplify group controller by removing GroupController trait
* chore: rename GroupControllerOperation trait to GroupController
* chore: add some docs
* chore: remove plural struct and use Vec directly
* chore: unnecessary mut
* chore: use same name to indicate passthrough
* chore: remove unused trait
* chore: rename group context to group controller context
* chore: remove group name
* chore: move type option interceptor to GroupCustomize and split off delegates for group context and group controller
* chore: adapt tests to changes
* chore: adapt flutter frontend to changes
* chore: code cleanup
* chore: fix clippy and adapt tauri frontend to changes
* chore: group controller code clean up
* chore: no need to pass cell data when moving row
* chore: rename some functions and variables
* chore: remove content filter
* chore: enable relation to
* chore: fix database name and improve UI
* chore: remove database view id from relation type option
* chore: add remove row id test
* chore: improve appearance of untitled rows
* chore: empty in row detail
* fix: cannot add events after closing
---------
Co-authored-by: Richard Shiue <71320345+richardshiue@users.noreply.github.com>
* refactor: port away from extra SortType struct
* refactor: add validator to flowy_database and clean up unused structs
* refactor: port away from extra FilterType struct
* chore: analysis options
* fix: clippy and dart/ts compile
* fix: tauri build
---------
Co-authored-by: nathan <nathan@appflowy.io>
* feat: support reminder on date
* feat: support reminder on date in database
* fix: include time static
* fix: do not force unwrap
* chore: clean flutter code
* test: add test for reminder in database
* fix: interpret reminder option
* feat: date and reminder on mobile
* feat: improve notification actions and support open row
* feat: support dates in document
* fix: minor changes + review
* feat: support reminder on mobile in document
* feat: support open row on database reminder mobile
* test: add more tests
* fix: first part of review
* fix: open row responsibility
* fix: abstract application logic from presentation layer
* fix: update reminder on date cell update
* test: fix failing test
* fix: show correct selected day after end date toggled
* refactor: include field type option in FieldPB
* refactor: adapt changes on flutter
* refactor: adapt changes on new tauri grid
* refactor: adapt changes on old tauri grid/board
* chore: merge
* 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
* feat: allow inserting fields before or after a certain field
* fix: tauri build
* chore: implement frontend
* test: rust-lib tests
* test: integration test
* chore: point to temp collab rev
* chore: bump collab rev
* chore: fix tauri build
* chore: fix the tauri build, for real this time
* fix: new field editor show detail not general
---------
Co-authored-by: nathan <nathan@appflowy.io>
* 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>
* 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>
* feat: add end date to time cell data
* feat: implement ui for end time
* test: add date to text test
* chore: clippy warnings
* fix: unexpected time parsing
* fix: fix the date logic when toggling end date
---------
Co-authored-by: nathan <nathan@appflowy.io>
* feat: implement encrypt and decrypt
* feat: encrypt and decrypt
* feat: update user profile with encrypt
* chore: store encryption sign
* fix: login in setting menu
* chore: show encryption account name
* chore: fix test
* ci: fix warnings
* test: enable supabase test
* chore: fix test and rename column
* fix: update user profile after set the secret
* fix: encryption with wrong secret
* fix: don't save user data if the return value of did_sign_up is err
* chore: encrypt snapshot data
* chore: refactor snapshots interface
* ci: add tests
* chore: update collab rev
* chore: Add _ClearDateFieldButton
* chore: Add new DateCellCalendarEvent to clear date
* chore: Add grid_field_clearDate translation token
* refactor: _ClearDateFieldButton -> _ClearDateButton
* fix: Fix dart(unused_element) in _ClearDateButton
* feat: Handle clearDate
* Revert "feat: Handle clearDate"
This reverts commit fd145ef8e9589f3b4aa1a16e5d72c15b6d0b53c4.
* feat: Handle clearDate
* feat: Add clear_flag field
* feat: check clear_flag to clear date
* chore: update exisitng tests
* fix: add mssing import
* refactor: remove check for timeFormatError
* fix: fix margin on _ClearDateButton
* refactor: _ClearDateButton -> ClearDateButton
* test: add clear date backend unit test
* test: add clear date integration test
* test: add clear date to edit time cell test
* chore: mark ClearDateButton visible for testing
* feat: close date editor popover on clear date
* style: make AppFlowyPopover taller
* fix: trim dateStr in _dateStrFromCellData
* fix: don't dismiss CellEditor after clearDate
* 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>
* chore: send DateCellDataPB instead of timestamp
* chore: separate event card into own widget
* chore: add hover effect to event card itself
* feat: draggable event cards
* feat: drag target WIP
* chore: revert "chore: send DateCellDataPB instead of timestamp"
This reverts commit 1faaf21c6a50ac67da70ddf3bcfa8278ca5963d4.
* chore: remove timezone from date cell data
* fix: #2498 open calendar event faster
* chore: remove unused timezone
* feat: implement logic for rescheduling events
* fix: reschedule doesn't show up on UI
* fix: reorganize gesture detection layering
* fix: layout fix
* test: fix date single sort test
* chore: remove unused chrono-tz
* chore: add hint to unscheduled event popover
* chore: apply suggestions to 3 files
* fix: #2569 fix overflow
* chore: add timezone data to DateTypeOption
* test: make date tests run on Etc/UTC timezone
* chore: fix clippy warnings
* fix: use the right get db function
* chore: code cleanup
* test: run tests in utc
* test: fix tests
---------
Co-authored-by: nathan <nathan@appflowy.io>