* fix: transparent icons on iOS platform
* fix: remove unused unit tests
* chore: update flutter version
* feat: support building release packages for iOS and Android
* fix: integration test failed randomly
* chore: remove windows CI cache
* chore: update info.plist
* feat: build iOS and Android in Release mode
* chore: update editor version
* chore: don't cache flutter when testing
* chore: run unit test on Windwos
* fix: The appearance of slash menu didn't change along with theme mode changes (#3630)
* revert: pubspec.lock change
* fix: use context inside of function
---------
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
Co-authored-by: Yijing Huang <hyj891204@gmail.com>
* feat: edit the field by clicking on the drag icon
* Added localization
* Added .tr() function
* fix: BlockActionButton only show when _isFieldHover is true.
* fix: BlockActionButton only show when _isFieldHover is true.
* fix: Worked on requested changes
* fix: Fixed Location of Field Popover
* fixed pubspec.lock
* Updated pubspec.lock
---------
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
* feat: 1674 Auto-hide sidebar when re-sizing the window
* chore: removed unnecessary print statements
* chore: updated to a more approprite name for 'screenSmall' event
* chore: update calendar theming
* feat: add event popup editor
* chore: new event button redesign and add card shadows
* chore: unscheduled events button
* chore: event title text field
* fix: focus node double dispose
* chore: show popover when create new event
* test: integrate some tests for integration testing purposes
* fix: some fixes and more integration tests
* fix: close popover after item selection in settings view
* fix: add missing await before closing popover
* fix: find popover container by context instead of passing controllers around
* fix: add requested changes
* feat: close text direction settings popups after selection
* fix: clean up
* fix: restore theme value dropdown as StatefulWidget
* fix: set minimum width for grid field to 100px
* test: add grid field width test
* fix: field width should not be less then 50px
* test: grid field width should not be less then 50px
* fix: cursor-based resizing issue
* test: updated tests
* Create ur.json
* Add files via upload
* changes
* Added Locale change to the supported Locales List
* Added Urdu in Language.dart
* Delete .vscode/launch.json
* Changed the icon for Calendar
* 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: text and layout direction settings
Added ltr|rtl|auto direction button to appflowy toolbar.
Introduced layout and default direction settings.
* chore: formate code
* feat: added hint for direction settings
* fix: flutter analyze
---------
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
* fix: stringify date cell includes time if true
* refactor: LastModified and CreatedAt type option
* chore: frontend implementation
* chore: some adjustments and fix tests
* fix: integration tests
* chore: timestamp type option ui
* chore: default field settings if not exist
* chore: field settings listeners and services
* chore: don't need to updateFieldInfos
* feat: per-view field visibilty UI
* fix: remove unresolved imports
* fix: trigger option selection on tap down
* chore: add TODO comment
---------
Co-authored-by: Richard Shiue <71320345+richardshiue@users.noreply.github.com>
* fix: paste multiple lines in codeblock
* fix: works with non collapsed selection
* chore: localize code block
* test: multiline paste in codeblock
* chore: remove unused import
* fix: only hanlde code block paste command if all the selected nodes are code block
---------
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
* test: add supabase auth tests
* chore: format before test
* chore: fix warnings
* ci: rust test
* chore: disable clicking get started button when logining through the google OAuth
* 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
* fix: fix hover color on information and setting button
* chore: update the hover color of icon in SelectOptionTag
* chore: change hover color for add icon button
* chore: change the SelectOptionTag text color and _SelectOptionCell icon hover color
* fix: change hover color in tab close button #3172
* chore: add spacing in SelectOptionTag
* chore: remove the hover color on close tag icon
* chore: dart fix
* feat: add translation for tooltip
* feat: add defaults for theme settings
* feat: refactor appearance view so that all theme settings can be reset
* chore: add keys for reset button
* chore: add tests for the reset button
* feat: register appearance test in runner
* chore: remove comment
* feat: add default file for appearance
* chore: move around files
* feat: make reset button respond to hover
* fix: incorrect use of resetTheme
* refactor: use maybeWhen
* fix: icon button style
* fix: rebase errors
* feat: group by date
* test: added more tests for group by date
* fix: print month in abbrev format
* chore: adapt group event changes
* style: remove comment
* fix: change date on changing group
* fix: dont count time in relative group
* fix: check beginning of month is within 30 days
* refactor: unify group id date format
---------
Co-authored-by: nathan <nathan@appflowy.io>
* fix: push to sign in screen when logout
* chore: show historical login users
* chore: open historical user
* chore: show historical user
* chore: reload app widget with unique key
* chore: add tooltip for user history
* feat: support updating the view name and icon through document
* fix: store expand pages
* fix: refactor text link
* fix: update cargo.toml
* fix: update test
* fix: update event map
* fix: move deal with icon codes to a single file
* fix: delete useless code from flutter
* fix: document banner
* fix: build error
* fix: update rust library
---------
Co-authored-by: Lucas.Xu <lucas.xu@appflowy.io>
* 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
* 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
* 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>
* 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>
* 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>
* 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