106 Commits

Author SHA1 Message Date
Richard Shiue
710e894446
fix: grid filters (#6317) 2024-09-16 17:34:02 +08:00
Nathan.fooo
877236baf9
fix: sort with original row orders (#6314)
* fix: sort with original row orders

* chore: bump collab
2024-09-15 19:14:16 +08:00
Nathan.fooo
609ea27c42
fix: write/load database/document collab (#6308)
* chore: post document collab after create

* chore: write database rows

* chore: fix test

* chore: fix test

* chore: bump collab

* chore: fix get related row

* chore: try to fix open database error

* chore: update client api
2024-09-15 00:02:17 +08:00
Mathias Mogensen
4888d5d528
fix: media option improvements (#6260)
* feat: hide file names option

* chore: copywriting fixes

* fix: mobile cell

* feat: browse all images in a cell in viewer

* chore: unused variable

* fix: dialogs on download file

* feat: upload multiple files at once

* test: improve test coverage

* fix: missing format of rust files from merge
2024-09-13 00:12:13 +02:00
Nathan.fooo
f59772756a
chore: adjust num of preload rows (#6280)
* chore: concurrent load rows

* chore: update client api

* chore: fix build
2024-09-12 08:47:49 +08:00
Nathan.fooo
5d42d03e15
chore: bump collab (#6246)
* chore: bump collab

* chore: bump client api
2024-09-09 18:56:20 +08:00
Nathan.fooo
187c5892ea
fix: move group row (#6233)
* chore: fix group notification

* chore: clippy

* Revert "fix: newly-created group rows appear out of order (#6212)"

This reverts commit decc438b8aba4c6f07cf5ae3c21c7629d75a6f0a.

* chore: revamp function

* chore: update test

* chore: workaround to fix filter or sort don't show result after opening database

* chore: fix test
2024-09-08 22:21:34 +08:00
Richard Shiue
decc438b8a
fix: newly-created group rows appear out of order (#6212)
* fix: newly-created group rows appear out of order

* test: fix tests

* fix: dont re-insert nor insert into no-status

* fix: clippy
2024-09-08 14:48:55 +08:00
Mathias Mogensen
009c2ed402
feat: media type option (#6090)
* feat: media type option

* feat: rename files + more media types

* feat: add basic style for cards on desktop

* test: add media

* chore: clippy

* feat: row detail ux improvement

* feat: show all media attachments as one count on card

* chore: localization

* fix: overlay issue + disable filter for option

* test: add base integration test

* test: add pumpAndSettle

* chore: update collab revision

* feat: mobile grid & board styling

* fix: clippy

* fix: grid reorder rows bug

* fix: style discrepancy

* chore: clippy

* chore: code cleanup
2024-09-05 06:03:58 +02:00
Nathan.fooo
31567d451f
chore: Observe database row event (#6190)
* chore: observe row

* chore: fix test
2024-09-04 23:21:05 +08:00
Nathan.fooo
08bf5db2de
chore: auto update field title when creating a new field (#6159)
* chore: auto update field title when creating a new field

* chore: fix test
2024-09-02 13:54:21 +08:00
Nathan.fooo
62f0307289
feat: async load database row, async filter, async sort (#6068)
* chore: display date when convert text to date

* chore: filter & sort

* chore: fix filter and sort

* chore: fix test

* chore: clippy

* chore: fix test
2024-08-26 09:46:16 +08:00
Nathan.fooo
a487aa74fd
feat: support edit imported database (#6061)
* chore: change field type of imported csv

* fix: support load 10000 rows

* fix: clippy
2024-08-25 14:28:51 +08:00
Nathan.fooo
23968d89fc
chore: Upgrade collab version (#6028)
* chore: write collab to disk if it's not exist

* chore: write collab if it's not exit

* chore: fix test

* chore: upgrade appflowy collab

* chore: upgrade appflowy collab

* chore: update collab version

* chore: fix test
2024-08-22 07:45:51 +08:00
Nathan.fooo
5878379b2e
chore: lazy load database row (#6001)
* chore: fix potential load database rows fail

* chore: fix layout padding
2024-08-18 18:44:32 +08:00
Bartosz Sypytkowski
fd5299a13d
move to latest appflowy collab version (#5894)
* chore: move to latest appflowy collab version

* chore: filter mapping

* chore: remove mutex folder

* chore: cleanup borrow checker issues

* chore: fixed flowy user crate compilation errors

* chore: removed parking lot crate

* chore: adjusting non locking approach

* chore: remove with folder method

* chore: fix folder manager

* chore: fixed workspace database compilation errors

* chore: initialize database plugins

* chore: fix locks in flowy core

* chore: remove supabase

* chore: async traits

* chore: add mutexes in dart ffi

* chore: post rebase fixes

* chore: remove supabase dart code

* chore: fix deadlock

* chore: fix page_id is empty

* chore: use data source to init collab

* chore: fix user awareness test

* chore: fix database deadlock

* fix: initialize user awareness

* chore: fix open workspace test

* chore: fix import csv

* chore: fix update row meta deadlock

* chore: fix document size test

* fix: timestamp set/get type convert

* fix: calculation

* chore: revert Arc to Rc

* chore: attach plugin to database and database row

* chore: async get row

* chore: clippy

* chore: fix tauri build

* chore: clippy

* fix: duplicate view deadlock

* chore: fmt

* chore: tauri build

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-08-18 11:16:42 +08:00
Mohammad Zolfaghari
aa621a8d84
feat: timer field (#5349)
* feat: wip timer field

* feat: timer field fixing errors

* feat: wip timer field frontend

* fix: parsing TimerCellDataPB

* feat: parse time string to minutes

* fix: don't allow none number input

* fix: timer filter

* style: cargo fmt

* fix: clippy errors

* refactor: rename field type timer to time

* refactor: missed some variable and files to rename

* style: cargo fmt fix

* feat: format time field type data in frontend

* style: fix cargo fmt

* fix: fixes after merge

---------

Co-authored-by: Mathias Mogensen <mathiasrieckm@gmail.com>
2024-06-13 08:52:13 +02:00
Nathan.fooo
f1a4deb459
chore: support more language (#5522)
* chore: support more language

* chore: adjust ui
2024-06-12 23:17:57 +08:00
Nathan.fooo
3d7a500550
feat: AI translation in Database (#5515)
* chore: add tranlate field type

* chore: integrate ai translate

* chore: integrate client api

* chore: implement UI
2024-06-12 16:32:28 +08:00
Richard Shiue
a490f34a61
feat: add kanban shortcuts (#5270)
* feat: add kanban shortcuts

* feat: new ux for creating new kanban cards

* chore: fix tests

* fix: open card after creation in mobile board

* chore: adjust code style according to launch review

* chore: update frontend/appflowy_flutter/test/bloc_test/board_test/create_card_test.dart

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

* chore: more review

* chore: implement move card to adjacent group

* chore: reset focus upon card drag start

* feat: N to start creating a row from bottom

* fix: text card update

* feat: shift + enter to create a new card after currently focused card

* fix: row detail title

* feat: shift + cmd + up to create card above

* fix: double dispose and code cleanup

* chore: code cleanup

* fix: widget rebuilds

* fix: build

* chore: update frontend/appflowy_flutter/lib/mobile/presentation/database/board/mobile_board_page.dart

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

* fix: ontapoutside for cards being edited

* fix: correct integration test

* fix: always build

* chore: code cleanup

* fix: mobile build and bugs

* fix: widget rebuilds

* fix: code cleanup and fix mobile open

* fix: disallow dragging when editing

---------

Co-authored-by: Mathias Mogensen <42929161+Xazin@users.noreply.github.com>
2024-05-10 10:02:10 +08:00
Nathan.fooo
a69e83c2cb
feat: Implement summary field for database row (#5246)
* chore: impl summary field

* chore: draft ui

* chore: add summary event

* chore: impl desktop ui

* chore: impl mobile ui

* chore: update test

* chore: disable ai test
2024-05-05 22:04:34 +08:00
Richard Shiue
1d73174b0c
fix: export created at and last modified cells to csv (#5235)
* fix: export created at and last modified cells to csv

* fix: export csv test
2024-05-01 12:24:11 +08:00
Nathan.fooo
044dad1d3e
chore: bump client api (#5217)
* chore: bump client api

* chore: fix compile

* chore: fix compile
2024-04-27 21:55:12 +08:00
Nathan.fooo
122a392bf8
chore: update client api (#5208)
* chore: update client api

* chore: rename test target

* chore: fix test
2024-04-26 18:00:56 +08:00
Mathias Mogensen
275d0b2ac4
fix: search launch review (#5169)
* fix: support filtering results by workspace

* feat: add search button to sidebar

* fix: reduce view/recent view fetching across application

* feat: add channel to search listener

* feat: clean + localization

* chore: remove redundant code

* fix: disable search

* chore: trigger ci

* chore: disable search in backend

* test: disable search tests for now

* feat: temp disable reliance on folder search

* fix: add debounce to inline actions

* chore: complete future if disposed

* fix: clean code

* chore: disable unused bloc with feature flag

* fix: recent views lazy read

* chore: revert podilfe change

* chore: update logs

* chore: update client api and collab

* chore: fix tst

* chore: fix test & update collab commit

* chore: update collab commit

* test: fix unit tests

* chore: update rust toolchain 1.77

* chore: use opt-level 1

* fix: code review

* chore: clippy

---------

Co-authored-by: nathan <nathan@appflowy.io>
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
2024-04-23 21:46:57 +08:00
Richard Shiue
7745e54221
chore: improve link between folder and database (#5024)
* chore: improve link between folder and database

* chore: fix tests

* chore: update collab rev

---------

Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
2024-04-19 17:24:11 +08:00
Richard Shiue
241bfa9ddd
chore: remove field width and visibility (#5119) 2024-04-16 18:20:15 +08:00
Richard Shiue
e9e483291e
chore: move responsibility of url valdiation to front-frontend (#5129)
* chore: move responsibility of url valdiation to frontend

* chore: fix test

* chore: fix tauri build
2024-04-15 11:43:02 +08:00
Richard Shiue
8947a89a24
feat: allow fields to not wrap cell content (#5128) 2024-04-13 16:48:28 +08:00
Richard Shiue
b7b4ea2da1
refactor: cell data transform logic (#5039)
* refactor: cell data transform logic

* chore: remove redundant select option event

* chore: adapt tests to changes
2024-04-11 14:49:36 +08:00
Richard Shiue
37f521ae57
chore: kanban filter mvp (#4935)
* chore: add filter controller in group controller

* chore: enable url filter

* chore: bump collab rev

* chore: fix test

* chore: bump collab rev
2024-03-21 12:54:56 +08:00
Richard Shiue
b557f89829
refactor: group controller traits (#4880)
* 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
2024-03-16 17:18:40 +08:00
Richard Shiue
0f006fa60b
feat: pre-fill row cells with filter data before row creation (#4854)
* feat: fill cells according to active filters

* chore: short circuit filter_row function

* chore: delete corresponding filters when filtered filter is deleted

* chore: validate filters when loading

* chore: remove unnecessary tuple in return

* chore: use trait

* chore: add tests
2024-03-16 17:18:30 +08:00
Richard Shiue
5a837a9482
fix: number and select filter logic (#4828)
* fix: number and select option filter bugs

* chore: rename filter condition enum and variants
2024-03-14 14:27:57 +08:00
Richard Shiue
191a077a86
refactor: streamline create row logic (#4807) 2024-03-14 11:26:32 +08:00
Richard Shiue
48cac4c5ac
feat: advanced filters backend logic (#4688)
* feat: implement advanced filters

* test: adapt tests to changes

* test: add advanced filter tests

* chore: adapt flutter frontend to changes

* chore: adapt tauri frontend to changes

* chore: bump collab

* chore: launch review

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-03-14 09:35:45 +08:00
Nathan.fooo
fd81d64a32
chore: fix database test (#4893)
* chore: fix database test

* chore: clippy

* chore: fmt
2024-03-13 19:39:56 +08:00
nathan
0f48310e22 chore: fix test 2024-03-13 13:30:29 +08:00
Zack
2c8fa1a2c3
chore: update client api (#4886)
* chore: update client api

* chore: bump client api

* ci: fix test

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-03-13 11:32:51 +08:00
Nathan.fooo
9c3be7e488
fix: stuck when importing large csv file (#4878)
* chore: fix import csv file

* chore: update collab

* chore: bump collab

* chore: workaround for row creating

* fix: test
2024-03-12 10:59:52 +08:00
Richard Shiue
f4ca3ef782
feat: add basic relation field (#4397)
* feat: add basic relation field

* fix: clippy

* fix: tauri build 🤞

* chore: merge changes

* fix: merge main

* chore: initial code review pass

* fix: rust-lib test

* chore: code cleanup

* fix: unwrap or default
2024-02-29 14:38:18 +08:00
Richard Shiue
01f2b15f70
fix: type option transform for checklists (#4779) 2024-02-28 22:04:32 +08:00
Richard Shiue
6636731487
feat: checklist sort (#4659)
* refactor: use BoxAny for dynamically-typed cell changesets

* fix: rust-lib tests and clippy

* feat: enable sorting by checklist type option

* test: checklist sort rust-lib tests

* chore: update related tests

* fix: clippy

---------

Co-authored-by: Nathan.fooo <86001920+appflowy@users.noreply.github.com>
2024-02-22 08:00:59 +08:00
Richard Shiue
a4a2a4088b
refactor: use BoxAny for dynamically-typed cell changesets (#4655)
* refactor: use BoxAny for dynamically-typed cell changesets

* fix: rust-lib tests and clippy
2024-02-22 07:12:52 +08:00
Richard Shiue
34fb1bcfa4
fix: disappearing sorts (#4691)
* chore: copy the field type

* chore: don't store field type in Sort

* fix: sorts disappearing
2024-02-21 20:01:57 +08:00
Richard Shiue
a6c6aa819c
fix: newly-created rows aren't being automatically sorted (#4661)
* fix: newly-created rows aren't being automatically sorted

* chore: new database view collab notification and add tests
2024-02-20 13:17:46 +08:00
Richard Shiue
a515715543
feat: reorder sort precedence (#4592)
* feat: reorder sorts

* chore: add tests, fix tests, fix tauri build and fix clippy

* fix: add missing import
2024-02-05 13:52:59 +08:00
Richard Shiue
250f29f325
chore: clean up sort and filter code (#4585)
* 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>
2024-02-04 05:49:28 +08:00
Mathias Mogensen
5cbc8b1e18
feat: calculations (#4473)
* feat: initial calculation controller

* fix: entities

* feat: calculations

* fix: review comments and support floats

* fix: abstract business logic into calculations service

* fix: clean calculation entities after merge

* feat: react to changes to row/cell/field_type

* chore: changes after merging main

* feat: handle delete field

* test: add grid calculations tests

* fix: add validation + format numbers

* refactor: get cell number

* chore: bump collab

* chore: fix clippy

* chore: update docs

* chore: update docs

* chore: fmt

* chore: fix flutter

* chore: collab rev

* fix: cleanup and hover to show

* fix: localization

* test: add basic rust test

* fix: clippy

* fix: support updating calculation on duplicate row

---------

Co-authored-by: nathan <nathan@appflowy.io>
2024-02-04 00:52:38 +08:00
Mathias Mogensen
baa7c8d826
feat: reminder on date (#4288)
* 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
2024-01-24 15:15:57 +01:00