* the popover component, vertical toolbox
* toolbox position improved
* popover width improved
* always show the plus button
* search field added
* search input in popover
* trying to create mobile toolbox
* feat(toolbox): popover adapted for mobile devices (#2004)
* FIx mobile popover fixed positioning
* Add mobile popover overlay
* Hide mobile popover on scroll
* Alter toolbox buttons hover
* Fix closing popover on overlay click
* Tests fix
* Fix onchange test
* restore focus after toolbox closing by ESC
* don't move toolbar by block-hover on mobile
Resolves#1972
* popover mobile styles improved
* Cleanup
* Remove scroll event listener
* Lock scroll on mobile
* don't show shortcuts in mobile popover
* Change data attr name
* Remove unused styles
* Remove unused listeners
* disable hover on mobile popover
* Scroll fix
* Lint
* Revert "Scroll fix"
This reverts commit 82deae543e.
* Return back background color for active state of toolbox buttons
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* Vertical toolbox fixes (#2017)
* Replace visibility property with display for hiding popover
* Disable arrow right and left keys for popover
* Revert "Replace visibility property with display for hiding popover"
This reverts commit af521cf6f2.
* Hide popover via setting max-height to 0 to fix animation in safari
* Remove redundant condition
* Extend element interface to avoid ts errors
* Do not subscribe to block hovered if mobile
* Add unsubscribing from overlay click event
* Rename isMobile to isMobileScreen
* Cleanup
* fix: popover opening direction (#2022)
* Change popover opening direction based on available space below it
* Update check
* Use cacheable decorator
* Update src/components/flipper.ts
Co-authored-by: George Berezhnoy <gohabereg@users.noreply.github.com>
* Fixes
* Fix test
* Clear search on popover hide
* Fix popover width
* Fix for tests
* Update todos
* Linter fixes
* rm todo about beforeInsert
because I have no idea what does it mean
* i18n for search labels done
* rm methods for hiding/showing of +
* some code style update
* Update CHANGELOG.md
* make the list items a little bit compact
* fix z-index issue caused by block-appearing animation
also, improve popover padding for two reasons:
- make the popover more consistent with the Table tool popover (in future, it can be done with the same api method)
- make popover looks better
Co-authored-by: Tanya Fomina <fomina.tatianaaa@yandex.ru>
Co-authored-by: George Berezhnoy <gohabereg@users.noreply.github.com>
* fix: call onchange event after block insert
* changelog updated
* patch version updated
* removed the modification observer from saver
* only changelog version added
* delimiter added
* feat: test case added for save inside the onchange
* fix test of async function, fix TS type because Function is banned type
* add tests for isFunction function
* fix eslint
* add changelog for 2.23.1
* fix changelog
* fix changelog
* chore(block-tune-toggler): toggler moved to the left (draft)
* toolbox ui updated
* fixd caret jumpling, improved some styles
* toolbar moving by block-hover
- UI module triggers 'block-hovered' event
- Toolbar uses 'block-hovered' for appearing
- `currentBlock` setter added to the BlockManager
- (reactangle-selection): the throttling added to the mousemove and scroll handlers
- `getBlockIndex` method added to the Api
- (api-blocks): toolbar moving logic removed from `blocks.move()` and `blocks.swap()` methods. Instead, MoveUp and MoveDown tunes uses Toolbar API
* the dark-theme to the example-dev.html
* positioning improved
* fix(rectangle-selection): first click after RS does not clears selection state
* toolbox position fixed
* the toolbox module became a standalone class
- Toolbox became a standalone class from the editor module. It can be accessed only via the owner (the Toolbar module)
- (api.blocks) the insert() method now has the `replace` param. Also, it returns inserted Block API now.
* new(api.listeners): `on()` now returns the listener id. The new `offById()` method added
* fix bug with Tab pressing on hovered but not focused block
* mobile version improved
* upd example dev
* small updaets
* add nested-list
* linting
* (api.toolbar): `toggleBlockSettings` now fires toggling event with the same state
* EventDispatcher used instead of callbacks for the Toolbox
* UIApi added
* fix ci
* git submodules removed from the ci flow
* add paragraph submodule to the ci flow
* Update CHANGELOG.md
* Update package.json
* use ubuntu-latest for chrome ci
The new `dispatchChange()` method allows to manually trigger the 'onChange' callback. Useful when Tool made a state mutation that is invisible for editor core.
* we need to call isTune param to get result
* remove Tune from exported name
* Update CHANGELOG.md
* Bump version
* Update Tools.spec.ts
* Update Tools.spec.ts
* prevent tooltip jumping
* Update CHANGELOG.md
* Delete table
* Create table
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* feat: Add unique ids for each block
* fix: Improve code based on code review
* feat(block ids): Use nanoid library for block id generation
* Remove unused files
* Add tests
* Fix lint & test
* fix: Remove unnecessary id generation, use nanoid(10) to shorten the id, add changelog and some documentation
Also improved some documentation along the lines and fixed linting
* Update copy-paste.spec.ts
* fix id generation, add api method
* Update blocks.spec.ts
* update tests
Co-authored-by: cobb <kebincheng@yeah.net>
Co-authored-by: George Berezhnoy <gohabereg@users.noreply.github.com>
Co-authored-by: Georgy Berezhnoy <gohabereg@gmail.com>
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* refactoring(modules): sanitizer module is util now
* Remove Sanitizer from Editor modules signature
* Bind context to config composition method
* Make sanitizer singletone
* Make sanitizer a module instead of class
* Fix
* Add test cases for default values
* Fix inline tools default value
* Move inline tools and block tunes to BlockTool instance
* Fixes after review & some test cases for sanitisation
* Upgrade test case
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>