Commit Graph

4017 Commits

Author SHA1 Message Date
90da54d12f feat: integrate database controller (tauri)
* feat: using controllers in react hooks WIP (#1915)

* chore: add edit / create field test

* chore: add delete field test

* chore: change log class arguments

* chore: delete/create row

* chore: set tracing log to debug level

* fix: filter notification with id

* chore: add get single select type option data

* fix: high cpu usage

* chore: format code

* chore: update tokio version

* chore: config tokio runtime subscriber

* chore: add profiling feature

* chore: setup auto login

* chore: fix tauri build

* chore: (unstable) using controllers

* fix: initially authenticated and serializable fix

* fix: ci warning

* ci: compile error

* fix: new folder trash overflow

* fix: min width for nav panel

* fix: nav panel and main panel animation on hide menu

* fix: highlight active page

* fix: post merge fixes

* fix: post merge fix

* fix: remove warnings

* fix: change IDatabaseField fix eslint errors

* chore: create cell component for each field type

* chore: move cell hook into custom cell component

* chore: refactor row hook

* chore: add tauri clean

---------

Co-authored-by: nathan <nathan@appflowy.io>
Co-authored-by: Nathan.fooo <86001920+appflowy@users.noreply.github.com>

* ci: fix wanrings

---------

Co-authored-by: Askarbek Zadauly <ascarbek@gmail.com>
2023-03-08 10:59:52 +08:00
e73870e6e2 fix: auto generator bugs (#1934) 2023-03-08 08:58:28 +08:00
9e235c578e chore: Update 3: Brazilian Portuguese Localization (#1907)
- Fix typos;
- Fix inconsistencies;
- Removed duplicated block strings.

Note: There are some word by word texts that I still need to figure out how to adapt properly; though, do believe most of strings are good to go!

Please review!
2023-03-07 09:35:04 +08:00
7ff4cecd09 feat: add cover migration for document (#1929)
* feat: add cover migration for document

* fix: should not delete the cover when selecting all

* fix: chinese characters for openai
2023-03-07 09:33:59 +08:00
675c833f07 feat: add test for appflowy_editor attributes (#1931) 2023-03-07 09:33:35 +08:00
d3ee346cb7 docs(appflowy_flutter) : Update Documentation (#1910)
* docs(appflowy_flutter): Update Documentation

- Added basic information so that new contributors can easily get started with contributions.

* docs(appflowy_flutter): Fix doc issues

- Fixed the wrong Flutter version chip
- Added contributions types
2023-03-06 14:10:10 +08:00
99f0fad74c feat: add test for appflowy_editor path (#1926) 2023-03-06 10:37:10 +08:00
45045beeb9 chore: rename document test (#1925) 2023-03-05 19:19:40 +08:00
7e7cee4bf4 chore: add tauri database group test (#1924)
* chore: add tauri database group test

* chore: add more tests

* chore: enable run all tests

* chore: rename test folder
2023-03-05 16:26:27 +08:00
8e22ef2230 chore: observer app change (#1922) 2023-03-05 16:13:06 +08:00
6aa9ba28d6 Feat/tauri folder (#1921)
* refactor: folders item

* fix: show get stared page if it's not login

* chore: expose debug pages
2023-03-04 16:15:24 +08:00
205b0fc4a5 Fix/tauri login state (#1919)
* fix: redux serializableCheck

* chore: read login state

* fix: show loading page while checking user state

* chore: cell data parser
2023-03-04 11:03:16 +08:00
3f0d3d802a fix: dart test (#1920) 2023-03-04 08:59:40 +08:00
0f3c6d6a04 Feat/appflowy tauri 3 (#1914) 2023-03-03 20:38:31 +08:00
59a1910b3c Refactor/database classes (#1913) 2023-03-03 18:31:30 +08:00
f1316acfcc Implement cover plugin 1868 (#1897)
* implement_cover_plugin_#1868

* code cleanup

* fix: CI issue fix

* fix: cover plugin implementation finalized

* fix: localization fixes

* fix: added add cover button

* chore: optimize the cover plugin code

* feat: auto hide the add button and cover buttons when leaving

---------

Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
2023-03-02 19:34:22 +08:00
fd41459a30 fix: smart edit bugs (#1911) 2023-03-02 19:34:08 +08:00
a1a5675875 fix: openai for summarize doesn't work when mutliple selecting (#1904) 2023-03-01 17:38:14 +08:00
f6957fb160 Feat/appflowy tauri 2 (#1902)
* chore: rename classes to models

* refactor: add effects and reducers folder

* chore: update user data storage path

* chore: subscribe callback

* chore: nav items persist, board layout (#1879)

* chore: load workspace items, load folders and pages from workspace, load raw document data, load raw grid data

* chore: clear folders and pages before load, new folder event

* chore: update folder name backend call

* chore: folder expand animation

* chore: hide arrow on empty folder

* chore: Board page layout, board store, board sample data

* chore: board block item

* chore: test db id

* chore: persist new page, persist page rename, create workspace on read error

* chore: boardblockitem details btn

* chore: boardblockitem multiselect data and colors

* chore: board item drag

* chore: drag start on move

* chore: remove databaseId

* chore: remove databaseId

* chore: import service classes into auth hook

* chore: sign out option

* chore: login page event

* chore: signup event

* chore: make workspace hook to use service

* chore: page and folder hooks use backend services

* chore: new folder use backend service

* chore: error handler page

* chore: try catch hooks to show error page

* chore: install i18n package and use flutters i18n files

* fix: signin signup margin

* chore: fix compile errors

* chore: remove unused codes

* chore: open workspace after user register

* chore: open workspace after user register

* chore: add create grid demo

* chore: load the cell data

* chore: print the cell data

* chore: fix project errors

* fix: tauri UI issues (#1899)

* chore: load workspace items, load folders and pages from workspace, load raw document data, load raw grid data

* chore: clear folders and pages before load, new folder event

* chore: update folder name backend call

* chore: folder expand animation

* chore: hide arrow on empty folder

* chore: Board page layout, board store, board sample data

* chore: board block item

* chore: test db id

* chore: persist new page, persist page rename, create workspace on read error

* chore: boardblockitem details btn

* chore: boardblockitem multiselect data and colors

* chore: board item drag

* chore: drag start on move

* chore: remove databaseId

* chore: remove databaseId

* chore: import service classes into auth hook

* chore: sign out option

* chore: login page event

* chore: signup event

* chore: make workspace hook to use service

* chore: page and folder hooks use backend services

* chore: new folder use backend service

* chore: error handler page

* chore: try catch hooks to show error page

* chore: install i18n package and use flutters i18n files

* fix: signin signup margin

* fix: new page overflow with folder

* fix: sign out button

* fix: sign out icon

* chore: floating navigation panel

* refactor: notify with error

* chore: config window size

* fix: test demo error

* chore: update tests

---------

Co-authored-by: Askarbek Zadauly <ascarbek@gmail.com>
2023-02-28 22:42:41 +08:00
085ef8f668 Feature/smart edit v2 (#1880)
* feat: add edit api to openai client

* feat: add translation

* chore: format code

* feat: add smart edit plugin

* fix: close http.client when dispose

* fix: insert openai result to wrong position

* feat: optimize the replace text logic

* test: add test for normalize and getTextInSelection function

* chore: update error message
2023-02-28 14:34:13 +08:00
1945b0fe05 fix: homeMenuResizer position when menu is drawer. (#1896) 2023-02-28 14:33:50 +08:00
2451d3188c feat(shortcuts): Add Shortcuts to Help Menu (#1870)
* feat(shortcuts): Add Shortcuts to Help Menu

- Added option of shorcuts in help menu
- Clicking on the shortcut leads to the `Shortcuts.md` file

* fix: l10n and todos

---------

Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
2023-02-28 10:38:57 +08:00
4a81fed6e4 fix: group with not support field test (#1890) 2023-02-27 19:00:00 +08:00
bf8e36a08b chore(deps): bump openssl-src in /frontend/rust-lib (#1886)
Bumps [openssl-src](https://github.com/alexcrichton/openssl-src-rs) from 111.24.0+1.1.1s to 111.25.0+1.1.1t.
- [Release notes](https://github.com/alexcrichton/openssl-src-rs/releases)
- [Commits](https://github.com/alexcrichton/openssl-src-rs/commits)

---
updated-dependencies:
- dependency-name: openssl-src
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-27 15:40:36 +08:00
61fd608200 Feat/view map database (#1885)
* refactor: rename structs

* chore: read database id from view

* chore: fix open database error because of create a database view for database id

* chore: fix tests

* chore: rename datbase id to view id in flutter

* refactor: move grid and board to database view folder

* refactor: rename functions

* refactor: move calender to datbase view folder

* refactor: rename app_flowy to appflowy_flutter

* chore: reanming

* chore: fix freeze gen

* chore: remove todos

* refactor: view process events

* chore: add link database test

* chore: just open view if there is opened database
2023-02-26 16:27:17 +08:00
6877607c5e chore: calendar plugin backend database data (#1884)
* chore: implement CalendarBloc

* chore: enable save and read the calendar setting

* style: more precise variable name

* chore: backend calendar settings

* chore: protobuf for layout settings

* chore: update test

* chore: Enumerate the LayoutTypePB enum type to get the supported layout types

* fix: deserialize object type is not the same as serialize object type

* chore: add set/get calendar settings event

* ci: fix wanrings

---------

Co-authored-by: nathan <nathan@appflowy.io>
Co-authored-by: vedon <vedon.fu@gmail.com>
2023-02-24 16:59:14 +08:00
01a388c1c4 chore: abstract appflowy editor build function to widget (#1878)
* chore: abstract appflowy editor build function to widget

* feat: refactor the editor state to optional
2023-02-24 09:16:51 +08:00
f4dea31560 fix(network_monitor): add missing case for other network type (#1854)
* fix(network_monitor): add missing case for `other` network type

Missing case causing static analysis error that is blocking the build.

* chore: update depdendency minor versions
2023-02-23 17:07:59 +08:00
b356354cd8 feat: support delete consecutive nodes on backend (#1877) 2023-02-21 19:27:52 +08:00
f76d722b4c Feat/database view (#1875)
* chore: rename structs

* chore: add todos

* chore: hidden database id

* refactor: add database folder, prepare to extract the view

* refactor: rename grid-model to datbase-model

* ci: fix warnings
2023-02-21 15:47:51 +08:00
346a09b2ae feat: optimize the open ai input status and clear the auto completion… (#1865)
* feat: optimize the open ai input status and clear the auto completion node when exiting the doc

* fix: import error on appflowy editor
2023-02-21 13:25:46 +08:00
3fd4371d2c fix: error happens when parsing readme content (#1873) 2023-02-20 18:28:09 +08:00
8a2f5fe789 Feat/tauri database effects (#1863)
* feat: config database view effects

* chore: add tests

* chore: config jest

* chore: config jest windows

* ci: wanrings

* chore: config folder effect
2023-02-19 14:59:04 +08:00
7c3a823078 feat: add openai service (#1858)
* feat: add openai service

* feat: add openai auto completion plugin

* feat: add visible icon for open ai input field

* chore: optimize user experience

* feat: add auto completion node plugin

* feat: support keep and discard the auto generated text

* fix: can't delete the auto completion node

* feat: disable ai plugins if open ai key is null

* fix: wrong auto completion node card color

* fix: make sure the previous text node is pure when using auto generator
2023-02-16 10:17:08 +08:00
2f9823d12a fix: wrong icon color for grid and board plugin (#1862) 2023-02-15 19:44:18 +08:00
ea9d8d03ad Improve Editing and Navigating shortcuts with Ctrl/Meta (#1845)
* feat: handler for deleting a word

* chore: typo

* test: ctrl and backspace to delete word

* feat: add ctrl alt arrows to select words

* fix: remove print statement

* fix: remove additional shortcut

* fix: handle nodes empty case

* test: edge cases with delete word

* fix: press meta on macos
2023-02-15 14:26:18 +08:00
64902f763b Add generated Flutter files to gitignore (#1855)
* chore: add generated files to gitignore

* chore: remove gitignored files
2023-02-15 09:46:31 +08:00
c1de3ba01b ci: disable eslint (#1857) 2023-02-14 10:28:01 +08:00
72e155f5b9 feat: add open ai key to database (#1852)
* feat: add open ai key to database

* chore: refactor code
2023-02-14 10:04:36 +08:00
7207e35349 chore: Catch platform errors (#1853)
* refactor(Log): allow passing error and stacktrace to logs

This allows us to log errors and stacktraces in a more structured way.

* feat: catch platform errors

Adds handling for platform errors that are not caught by the
Flutter framework. Doing so will log the error properly and
prevent the app from crashing.
2023-02-14 09:46:25 +08:00
51041f6860 CI: Appflowy tauri ci (#1851)
* chore: add notification parser

* chore: rename classes to models

* refactor: add effects and reducers folder

* chore: update eslint version

* chore: run npx eslint --fix src

* fix: ParserOptions.project error by ignore linting the  .eslintrc.cjs

* ci: add tauri lint

* ci: disable ubuntu and windows tauri ci

* ci: install

---------

Co-authored-by: Annie <anqi.annie.wang@gmail.com>
2023-02-13 19:24:16 +08:00
59cb4a890a fix: empty url group bug (#1755)
* fix: empty url group bug

moving a row to empty url (no status) group would change the row's
url to the group id which is not empty, its a random string.
fixed it with puting a check to fill the url with the empty string
when the group id is equal to empty url group id

* fix: move empty group check to `insert_url_cell`

because evereywhere using `insert_url_cell` we want to check that.

* chore: cargo fmt

---------

Co-authored-by: nathan <nathan@appflowy.io>
2023-02-13 18:55:03 +08:00
91b942d319 Pressing tab on a todo creates a sub-todo (#1847)
* feat: add tab for lists

* test: tab for lists
2023-02-13 14:47:52 +08:00
9c8753b191 feat: add new purple theme (#1693)
* feat: add new purple theme

* refactor: change theme color

* fix: contrast issue

* refactor: change the primary btn color
2023-02-13 10:19:02 +08:00
2f803959e7 feat: #1832 Support to import data from Markdown or Text to Document … (#1840)
* feat: #1832 Support to import data from Markdown or Text to Document page

* feat: #1832 Support to import data from Markdown or Text to Document page
2023-02-13 09:51:24 +08:00
592b918175 chore: Update ru-RU.json (#1843) 2023-02-13 09:48:43 +08:00
6bb1c4e89c feat: run rustfmt with custom defined fmt configuration (#1848)
* chore: update rustfmt

* chore: apply rustfmt format
2023-02-13 09:29:49 +08:00
e2496e734c docs: udpate user events (#1846) 2023-02-13 08:21:25 +08:00
6c895ad4fe Refactor: app window logic (#1842)
* feat: add TargetPlatform `isDesktop` helper

Safe and convenient way to check if the current platform is a desktop platform.

* refactor: move window logic to separate class

This is much cleaner and better encapsulated. Sets up an area for
further window management in the future.

Does not try to initialize on mobile or web, which would crash.

* fix: isDesktop doc comment

* fix: set window title

Currently only displays "app_flowy" as the window title. This commit
sets the window title to "AppFlowy" as part of the init process.
2023-02-11 14:16:38 +08:00
8588afcda6 feat: support create document with initial data (#1841) 2023-02-10 22:24:34 +08:00