* 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
* fix: date field created when reference a calendar
* fix: make everything one transaction
* chore: apply suggestions from Lucas
* chore: do the same for board
---------
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
* feat: open apps in tabs
Closes: #2942 Relates: #2312
* fix: resolve comments
* fix: unfocus editor to close toolbar on open/change tab
* test: abstract open in a new tab helper
* fix: unable to cancel the inline math equation format
* fix: bold font style used in the document is not suitable
* chore: add flutter clean before executing the release task
* fix: integration test
* chore: add label for font selection drop down
* chore: add method to set font family
* feat: add drop down to setting appearance view
* feat: add fontFamily to document appearance cubit
* feat: add bloc provider to root for document appearance style
* feat: syncFont family from setting appearance dialog
* feat: plumbing for font style in editor
* fix: add blocprovider before pushing overlay
* chore: add kv_keys
* fix: use fontFamily in document appearance cubit
* fix: remove bloc providers because bloc is supplied in ancestor
* fix: remove unecessary bloc provider
* chore: add constraints to popover
* chore: add translation for search box
* feat: add levenshtein for string sort
* feat: add search bar view
* refactor: levenshtein
* chore: add tests for levenshtein algorithm
* feat: add unit tests for appearance cubit
* fix: analyzer warnings
* feat: sort by ascending if query is empty
* chore: add test for the font family setting widget
* feat: make comparison case insensitive
* feat: lazy load with listview.builder
Co-authored-by: Yijing Huang <hyj891204@gmail.com>
* fix: fonts loaded on open application
* fix: checkmark doesn't show
* fix: try catch before getFont
* fix: clear text editing value on close
* fix: remove autofocus for search text field
* chore: add tests
* feat: use sliver protocol
Co-authored-by: Yijing Huang <hyj891204@gmail.com>
* fix: avoid using intrinsic height
Co-authored-by: Yijing Huang <hyj891204@gmail.com>
* fix: extra paren caused build failure
* feat: switch order of font family setting
---------
Co-authored-by: Yijing Huang <hyj891204@gmail.com>
* feat: dynamic theme plugin (init)
* feat: provide fallback color if plugin becomes out of date (transparent)
* feat: use applicationDocumentsDirectory to store plugins
* chore: remove json files
* fix: add toJson to resolve analyzer errors
* fix: analyzer (unused imports)
* feat: add code generation scripts for freezed files (call recursively in packages)
* fix: revert changes to dry generation
* feat: call directly into script
* refactor: scripts try to be stateless :)
* fix: path to code generation in toml
* fix: generate script permissions
* fix: path not correct in generate.sh
* feat: modify execution permissions before executing scripts
* chore: switch order of build_runner and easy_localizations
* fix: fs is not valid duckscript cmd
* chore: clean build_runner before executing
* chore: upgrade freezed and build_runner attempt to resolve InvalidType error
* fix: use exec cmd.exe to chmod
* feat: add task to generate all files
* chore: remove redundant task (Code Gen)
* chore: remove json_annoation to dev_dependencies
* fix: dropped & between commands
* chore: rename file and class to FlowyDynamicPlugin
* fix: dependency hell
* fix: json annotation in colorscheme
* fix: analyzer warnings
* fix: duckscript runner for code generator
* fix: try without setting file permissions
* chore: move file picker to infra
* chore: restructure project directory
* feat: add BLoC components for consumers
* chore: update dependencies in pubspec.yaml file
* fix: file picker imports
* feat: add new translations for features
* feat: add new widgets to render upload
* fix: import
* feat: add text overflow
* feat: use animated switcher
* chore: export FileType
* fix: directory was not created, only files were copied
* chore: separate some logic
* feat: add saveFile to FilePickerService
* fix: analyzer error with unused imports
* feat: add translations for uploading
* feat: add builtins property to apptheme
* feat: add theme preview widget
* fix: upload widgets need to fill whole space and account for overflow
* refactor: do not watch file system for changes
* feat: add deletion confirmation dialog
* feat: add form factor resolution for dyanmic layout
* feat: trigger rebuild only when plugins are loaded
* feat: make all methods static
* chore: remove TODO comment, requires further design
* chore: move models to subfolder
* fix: references to plugin service instance
* fix: rebase errors
* fix: more rebasing errors
* feat: remove multiple themes from one plugin
* refactor: use pattern to resolve widget in settings_appearance_view
* refactor: remove commented code
* feat: add translations
* fix: import error
* refactor: separate concerns a bit more
* fix: bug in toJson serialization code
* feat: add package to use represent memory files
* fix: analyzer warnings
* chore: add translation
* chore: remove unused exceptions
* chore: use join
* chore: add documentation
* feat: add tests on theme
* fix: fix scripts for macOS
* feat: use appFlowyDocumentDirectory
* fix: remove unused import
* fix: imports
* feat: allow plugin service to be passed
* fix: theme tests
* feat: separate themes by built-in and plugin
* fix: rebase change name of appFlowyDocumentDirectory
* chore: add test to check that initial state falls back to initial theme
* chore: theme upload preview widget
* chore: rename to brightness setting
* refactor: appearance for settings appearance view
* feat: change show dialog api and use it
* fix: handle plugin compilation exception when incorrect format supplied
* fix: style of theme upload
* fix: always change state so that ui updates
* chore: style of loading widget
* fix: analyzer errors
* feat: add learn more button to documentation
---------
Co-authored-by: Yijing Huang <hyj891204@gmail.com>
Co-authored-by: nathan <nathan@appflowy.io>
* fix:windows integration test
* fix: load asset
* fix: windows test
* fix: test
* test: refactor the folder test
---------
Co-authored-by: vedon <vedon.fu@gmail.com>
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
* chore: change initial cover type's name to none
* chore: refactor cover node widget
* chore: use a constant instead of magic value
* fix: make the size of icon hover effect smaller
* chore: improve appearance of selected color
* test: add cover integration tests
* fix: inner ring of selected color in dark mode
* refactor: cover node to document header node
* test: simplify tests
* chore: rename files
* fix: option menu position
* fix: rename helps highlight the text for the user
* fix: export as markdown file name invalid
* chore: align the emoji in callout
* fix: leave more space in the editor
* fix: 0.2.3 known issues
* chore: add flutter pub get in flutter.toml
* chore: remove folder code merge page and folder into navitem component
* chore: test fix
* fix: nav item expand fix
* fix: unfold page and active page
* fix: nav item click area fix
* chore: remove old components
* chore: remove old code
* chore: cell controller reorganize
* chore: nav item optimizations
* fix: add async queue to fix data problem
* chore: change semantics of new folder button
* chore: move row methods to database controller
---------
Co-authored-by: qinluhe <qinluhe.twodog@gmail.com>
* fix: cell focus issue on windows
* fix: try to fix
* fix: cell focus not working on Windows platform there are multiple text cells
* docs: add documentation
* chore: adjust row detail page ui
* test: add test
* test: fix test
---------
Co-authored-by: vedon <vedon.fu@gmail.com>
* fix: support multiple document
* fix: change the doc_id params to ref
* fix: function to converge subscription state
* fix: mousedown behavior update
* fix: turn to textblock when the enter pressed in empty block
* fix: support cut
* fix: emoji caret
* fix: support slash arrow key
* fix: eslint padding-line-between-statements
* fix: add comment
* fix: block side menu bugs
* fix: support key event to select block menu option
* fix: support side menu arrow key
* fix: optimizate selectOptionByUpDown
* fix: format
* chore: some ui improvements
* fix: integration test
* feat: language selector on welcome page (#2796)
* feat: add language selector on welcome page
* feat: add hover effect and refactor layout
* test: add basic languge selector testing
* chore: increate place holder width
* fix: add catch error for setLocale and finish the testing
* chore: update comment
* feat: refactor the skip login in page and add tests
---------
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
* 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>
* test: fix test
* test: add create select option test
---------
Co-authored-by: Yijing Huang <hyj891204@gmail.com>
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
Co-authored-by: Nathan.fooo <86001920+appflowy@users.noreply.github.com>
Co-authored-by: nathan <nathan@appflowy.io>
* 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
* feat: support importing database raw data
* feat: verify import database test
* test: fix test
* ci: update integration test ci config
* ci: codecov with os flag
* ci: update docker command
* ci: update docker command
* ci: update docker command
* ci: update docker command
* test: add filter test
* 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>
* feat: support text block href attribute
* fix: double click didn't select range
* fix: link update
* chore: ts lint
* chore: add new line
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
* chore: update get word indices function
---------
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
* fix: launch url in url cell
* fix: can't input url in Grid
* feat: support selecting or deselecting all items in export page
* fix: remove the circle shape
* fix: light mode toolbar color
* chore: update language and adjust the launch page
* feat: support align and upgrade appflowy_editor
* chore: try to fix linux analyze error
* fix: error after inserting callout block
* feat: add inline board / grid plugin
* feat: refactor insert_page
* fix: ref view in document
* chore: add asset name and description to option align type
* fix: linux flutter analyze
* chore: disable file export and log
* fix: the window always back to center after relaunching
* fix: potential data lost in nested list
* feat: re-design login page
* fix: can't remove background color
* chore: rename bundle id and change the macos app to non sandbox app
---------
Co-authored-by: nathan <nathan@appflowy.io>
* chore: focus name input on field edit
* fix: remove random id for duplicated view
* fix: use alias for imports
* fix: folder, grid, board bugs
* chore: remove log
* fix: update options list on add
* chore: close on delete option
* chore: show and hide field
* chore: add field with specific type
* chore: small cleanup
* fix: create view on another folder and views notifier reorganize
---------
Co-authored-by: qinluhe <qinluhe.twodog@gmail.com>
* fix: create a new document
* fix: the banner don't show after deleteing the page
* fix: inserting a divider through the slash menu the cursor should stay active in the next line
* fix: the overlay doesn't dismiss after selecting a page
* fix: typo
* fix: delete the page in document if it has been deleted
* chore: l10n
* chore: rename events
* ci: rm install_diesel in ci
* fix: cover color not working
* ci: fix tauri build
---------
Co-authored-by: nathan <nathan@appflowy.io>
* feat: public the json to document data pb api
* test: add test for convert_data_to_document_internal
* chore: apply review suggestion
* chore: update folder path
* chore: show default user name
* chore: update
* feat: change collab storage type after auth type changed
* chore: reload folder
* chore: initial the group controller if need
* chore: update patch
* chore: update patch ref
* 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>
This commit addresses the feature request to save the window size settings.
The application will now remember the user's preferred window size, allowing
for a more personalized and seamless user experience.
Fixes: #2544
Co-authored-by: Akarsh Jain <akarsh.jain.790@gmail.com>
* fix: revert remove action container space in mobile
* fix: setup the background color of the slash menu when clicking the add button
* fix: #2634 Visual bug in divider between main editor area and top area
* fix: v0.2 bugs
* feat: implement auto scroll when selection updated
* chore: update intl
* 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
* chore: upgrade flutter and dart
* ci: upgrade flutter in cicd
* fix: remove textstyle_extensions from flowy_infra
* ci: upgrade flutter in cicd
* fix: update flutter.toml
* fix: deprecations and ffi
* fix: move json_annotation to dependencies
Must have accidentally moved it to dev_dependencies when upgrading dependencies
* fix: update editor ref and use fold
* chore: try with generate true
* 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>
* feat: integrate supabase auth service
* chore: ignore the sercet
* feat: separate and inject the auth service
* chore: integrate auth service into sign in/up page
* feat: integrate github and google sign in
* chore: update user trait
* feat: box any params in UserCloudService trait
* feat: add flowy-server crate
* refactor: user trait
* docs: doc ThirdPartyAuthPB
* feat: server provider
* feat: pass the uuid to rust side
* feat: pass supabase config to rust side
* feat: integrate env file
* feat: implement login as guest
* feat: impl postgrest
* test: use env
* chore: upper case key
* feat: optimize the file storage
* fix: don't call set auth when user login in local
* docs: add docs
* feat: create/update/get user using postgrest
* feat: optimize the login as guest
* feat: create user workspace
* feat: create user default workspace
* feat: redesign the setting path location page
* feat: use uuid as view id
* feat: send auth info to rust backend
* fix: sign up
* fix: skip to wrong page after login
* fix: integrate test error
* fix: indent command error
* feat: add discord login in type
* fix: flutter analyze
* ci: fix rust tests
* ci: fix tauri build
* ci: fix tauri build
---------
Co-authored-by: nathan <nathan@appflowy.io>
* feat: update editor
* feat: integrate new editor
* feat: integrate the document2 into folder2
* feat: integrate the new editor
* chore: cargo fix
* chore: active document feature for flowy-error
* feat: convert the editor action to collab action
* feat: migrate the grid and board
* feat: migrate the callout block
* feat: migrate the divider
* chore: migrate the callout and math equation
* feat: migrate the code block
* feat: add shift + enter command in code block
* feat: support tab and shift+tab in code block
* fix: cursor error after inserting divider
* feat: migrate the grid and board
* feat: migrate the emoji picker
* feat: migrate openai
* feat: integrate floating toolbar
* feat: migrate the smart editor
* feat: migrate the cover
* feat: add option block action
* chore: implement block selection and delete option
* feat: support background color
* feat: dismiss color picker afer setting color
* feat: migrate the cover block
* feat: resize the font
* chore: cutomsize the padding
* chore: wrap the option button with ignore widget
* feat: customize the heading style
* chore: optimize the divider line height
* fix: the option button can't dismiss
* ci: rust test
* chore: flutter analyze
* fix: code block selection
* fix: dismiss the emoji picker after selecting one
* chore: optimize the transaction adapter
* fix: can't save the new content
* feat: show export page when some errors happen
* feat: implement get_view_data for document
---------
Co-authored-by: nathan <nathan@appflowy.io>
* feat: show unscheduled events in calendar toolbar (#2411)
* refactor: use same show row detail function
* fix: adjust popover offset
* feat: show unscheduled events in toolbar
* chore: apply suggestions from Xazin
* refactor: refactor list item into separate widget
---------
Co-authored-by: Nathan.fooo <86001920+appflowy@users.noreply.github.com>
* fix: default include time (#2444)
* fix: default include time
* chore: clarify logic and add comments
* chore: bump version 0.1.4 (#2455)
* chore: Update README.md
Update product screenshots
* fix: wrong day of week (#2468)
* feat: select which properties to show in calendar (#2482)
* feat: improve sidebar item dragged appearance (#2471)
* fix: show delete icon for document icon properly (#2475)
* feat: add hover effect on an event card (#2487)
* chore: delete unncessary openCard method in RowCardContainer
* chore: delete unnessary code and add comment
* chore: update editor v0.1.12 and format the readme (#2489)
* fix: number sort (#2507)
* bump version 0.1.5 (#2506)
* chore: bump version 0.1.5
* fix: could not trigger slash menu after inserting an emoji
* Revert "feat: add hover effect on an event card (#2487)"
This reverts commit f0a4b4b77d.
* feat: add hover effect on an event card
* fix: #2469 duplicated cover
* chore: update changelog.md (#2510)
* chore: Update README.md
Add a screenshot of the calendar view
* fix: some regressions
---------
Co-authored-by: Nathan.fooo <86001920+appflowy@users.noreply.github.com>
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
Co-authored-by: Annie <anqi.annie.wang@gmail.com>
Co-authored-by: Yijing Huang <hyj891204@gmail.com>
* chore: remove unused fields
* chore: rewrite date logic
* chore: apply suggestions from Alex
* chore: add space in date format
* chore: re-add error handling in apply-changeset
* feat: insert below and replace in smart-edit highlights text
* test: added integration tests to validate insert below and replace in smart-edit highlights text
* refactor: using get_it to inject OpenAiRepository to inject mock repo in test
* fix: delete node does not propagate non null selection
* refactor: suggested changes and fixed bugs causing warning in github-ci
* fix: integration tests causing error in github-ci
* refactor: reverting redundant changes due to recent changes in repo
* refactor: reverting redundant changes due to recent changes in repo
* refactor: refactoring to workspace based integration testing.
* refactor: reverting redundant changes due to recent changes in repo
* chore: fix analysis issues
* chore: fix analysis issues
* chore: remove the unnecessary conversion
---------
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
* feat: Only show the change cover button and delete button when it's hovering.
* feat: Only show the change cover button and delete button when it's hovering
---------
Co-authored-by: gitstart <gitstart@users.noreply.github.com>
* chore: grid row page detail update
* chore: update row_detail.dart
Co-authored-by: Alex Wallen <wallenstephen@outlook.com>
* chore: more adaptive and code cleanup
* feat: duplicate row
* feat: duplicate calendar event
* fix: ci
* feat: show other options
* fix: show include time
* fix: add key in RowCard to avoid incorrect data when open the row page
---------
Co-authored-by: Alex Wallen <wallenstephen@outlook.com>
Co-authored-by: nathan <nathan@appflowy.io>
* chore: group cards count
* chore: delete board card
* chore: date time format read and update
* fix: move field
* fix: dnd fields
* chore: number format popup
* chore: refactor date options
* chore: replace button in DateFormatPopup with PopupItem
---------
Co-authored-by: qinluhe <qinluhe.twodog@gmail.com>