Peter Savchenko
640b1a2d7e
fix(readonly): crash with readonly property ( #1969 )
...
* fix(readonly): fix readonly property
Resolves #1968
* changelog added
* Update CHANGELOG.md
2022-02-09 20:46:26 +03:00
George Berezhnoy
e3db19df84
Fire onChange event for native inputs ( #1832 )
...
* Fire onChange event for native inputs
* Add changelog
2022-01-13 16:12:08 +00:00
Ilya Moroz
95141f0a2d
commit new submodules versions ( #1858 )
2022-01-13 18:15:40 +03:00
Ilya Moroz
40c05173a9
[Fix] isFunction function for async functions ( #1857 )
...
* 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
2022-01-13 00:46:07 +03:00
Peter Savchenko
ff91466b14
feat(toolbar): toolbar refactored and ui improved ( #1815 )
...
* 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
2021-11-24 21:14:24 +03:00
Peter Savchenko
9c0fc48d89
feat(block-api): the new dispatchChange() method ( #1794 )
...
The new `dispatchChange()` method allows to manually trigger the 'onChange' callback. Useful when Tool made a state mutation that is invisible for editor core.
2021-10-05 23:41:03 +03:00
Peter Savchenko
4f15bbc0cb
feat(onchange): callback now accepts custom event ( #1791 )
...
* feat(onchange): callback now accepts custom event
* Delete block-added.ts
* testd updated, changelog added
* Update example-dev.html
* indexes added to all events
* block-removed dispatching on block replacing
* Update example-dev.html
2021-10-05 20:40:44 +03:00
George Berezhnoy
a3df3b8ace
Fix: pass user configuration to Tool prepare method ( #1781 )
...
* Fix: pass user configuration to Tool prepare method
* Fix lint
* update types
* Update changelog
2021-09-16 14:21:38 +00:00
Peter Savchenko
03fb54b474
chore(submodules): pull master to the tools ( #1742 )
...
* chore(submodules): pull master to the tools
* add tools:update command
* make command for tools updating
* rm nested list submodule
* fix cypress workflow
* fix package json command
* fix ci
2021-08-07 13:51:05 +03:00
George Berezhnoy
d2d18f8061
Fix jump on CBS ( #1732 )
...
* Fix jump on CBS
* Fix lint
2021-07-21 22:12:13 +03:00
Peter Savchenko
9190824b1d
fix(blocks): plugin's destroy() method will be called on blocks removing ( #1719 )
...
* Plugin's destroy() method on blocks removing
* Add changelog
Co-authored-by: Georgy Berezhnoy <gohabereg@gmail.com>
Co-authored-by: George Berezhnoy <gohabereg@users.noreply.github.com>
2021-07-21 21:50:16 +03:00
George Berezhnoy
6f36707f67
Tunes improvements for inline actions ( #1722 )
...
* Add tunes improvements
* Allow to show Inline Toolbar at Block Tune Wrapper element
* Add fake cursor on block selection
* Fix lint
* Update types
* Fix bugs with selection
* Remove selection observer
* Update due to comments
* Fix tests
* Update docs/block-tunes.md
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* Move fake cursor to selection utils
* Fix missing range for Safari
* Fix data attribute value
* Add comment
* Update z-index for inline-toolbar
* Add changelog
* Remove fake cursor visibility for the core
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
2021-07-21 21:33:09 +03:00
Taly
cf494a7a28
Fix i18n for tunes and tools ( #1711 )
...
* 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>
2021-06-28 13:06:35 +03:00
Peter Savchenko
a4ffb1a7fc
feature(api): blocks update method added ( #1687 )
2021-05-26 20:39:25 +03:00
George Berezhnoy
4e7b33c2b8
onChange improvements ( #1678 )
...
* onChange improvements
* Return modifications observer module
* Fix lint
* Fix tests
2021-05-26 18:59:32 +03:00
Jean-Gab
de364175eb
Unique ids in blocks with nanoid ( #1667 )
...
* 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>
2021-04-27 16:33:00 +03:00
Taly
472d950b0b
refactoring: notifier is util now ( #1628 )
...
* Notifier is util now
* Update CHANGELOG.md
* Update notifier.ts
* Update cypress.yml
* Revert "Update cypress.yml"
This reverts commit a2c8331314
.
* Update CHANGELOG.md
2021-04-15 20:20:21 +03:00
George Berezhnoy
2996affb0a
Fix #1640 ( #1649 )
...
* Fix #1640
* Update changelog
* Fix typo
2021-04-14 19:07:16 +00:00
Tomoyuki Hata
04749ed098
Prevent the leak of codex-tooltip when Editor.js is destroyed ( #1590 )
...
* Prevent the leak of codex-tooltip when Editor.js is destroyed
* Cover destroy() function
Thanks, @hata6502
2021-04-14 17:49:22 +03:00
Tomoyuki Hata
d5217067a6
Refactoring based on ESLint ( #1637 )
...
* Refactoring based on ESLint
* Update .eslintrc
Co-authored-by: George Berezhnoy <gohabereg@users.noreply.github.com>
2021-04-08 22:53:11 +03:00
George Berezhnoy
14acef136c
Fix copy in FireFox ( #1632 )
...
* Fix copy in FireFox
* Add test cases
* Eslint fix
* Improve readability
* fix eslint
2021-04-08 22:19:49 +03:00
Liam Martens
d5aaa56ca0
[Bug] n.closest() not a function #1317 ( #1600 )
...
* Release 2.19.2 (#1597 )
Save 2.19.2 changes
* 1317
The selection node sometimes ends up being the ShadowRoot which does not have the closest method.
In case it is the shadowroot - I believe we can assume the selection is not at the editor zone
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
Co-authored-by: George Berezhnoy <gohabereg@users.noreply.github.com>
2021-04-08 22:13:00 +03:00
Tomoyuki Hata
aa5a3d05f3
Create a new block when clicked at the bottom ( #1605 )
...
* Create a new block when clicked at the bottom
* Fix for 2.20.0
Co-authored-by: George Berezhnoy <gohabereg@users.noreply.github.com>
2021-04-08 21:38:08 +03:00
Tomoyuki Hata
9cdda110da
Refactoring based on LGTM ( #1635 )
...
* Refactoring based on LGTM
* Fixed jsdoc/no-undefined-types
Co-authored-by: George Berezhnoy <gohabereg@users.noreply.github.com>
2021-04-08 21:32:49 +03:00
George Berezhnoy
a88dc8e30b
refactoring(modules): sanitizer module is util now ( #1574 )
...
* 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>
2021-04-08 21:17:23 +03:00
Umang G. Patel
63e438a72d
refactoring(modules): Tooltip module is util now ( #1601 )
...
* remove tooltip module and create tooltip class
* change log added
* constructor added with tooltip
* linting added
* js-docs improved
* linting added
2021-04-08 22:17:46 +05:30
George Berezhnoy
2d89105670
[Feature] Block Tunes API ( #1596 )
...
* Add internal wrappers for tools classes
* FIx lint
* Change tools collections to map
* Apply some more refactoring
* Make tool instance private field
* Add some docs
* Fix eslint
* Basic implementation for Block Tunes
* Small fix for demo
* Review changes
* Fix
* Add common tunes and ToolsCollection class
* Fixes after review
* Rename tools collections
* Readonly fix
* Some fixes after review
* Apply suggestions from code review
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* Fixes after review
* Add docs and changelog
* Update docs/block-tunes.md
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* Apply suggestions from code review
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* Update src/components/block/index.ts
Co-authored-by: Murod Khaydarov <murod.haydarov@gmail.com>
* [Dev] Tools utils tests (#1602 )
* Add tests for tools utils and coverage report
* Fix eslint
* Adjust test
* Add more tests
* Update after code review
* Fix test & bump version
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
Co-authored-by: Murod Khaydarov <murod.haydarov@gmail.com>
2021-04-04 15:10:26 +03:00
George Berezhnoy
4cfcb656a8
[Refactoring] Tools ( #1595 )
...
* Add internal wrappers for tools classes
* FIx lint
* Change tools collections to map
* Apply some more refactoring
* Make tool instance private field
* Add some docs
* Fix eslint
* Review changes
* Fix
* Fixes after review
* Readonly fix
2021-03-31 23:29:41 +03:00
George Berezhnoy
79793906a4
Ignore shortcuts error ( #1598 )
2021-03-15 22:41:11 +03:00
Murod Khaydarov
d945d4c518
refactoring(modules): Events module is util now ( #1582 )
...
* refactoring(modules): events module is util now
* Update changelog
* remove redundant line
* refactor
* Update editor-modules.d.ts
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
2021-03-15 21:01:10 +03:00
Murod Khaydarov
c4ebdee396
Do not use bubbling on blockManagers' listener ( #1563 )
...
* prevent bubbling
* update CHANGELOG
2021-03-12 20:02:09 +03:00
George Berezhnoy
2f5da52d1a
refactoring(modules): shortcuts module is util now ( #1578 )
...
* (refactoring)shortcuts module is util now
* Fix eslint
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
2021-03-05 00:32:55 +03:00
Seonu Jang
0d559a5571
Fix typo ( #1581 )
2021-03-03 09:33:59 +03:00
Tomoyuki Hata
a67e699991
Fix SanitizerConfig type definition ( #1456 )
...
* Fix SanitizerConfig type definition
* Update docs/CHANGELOG.md
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* Fix CHANGELOG
* Add JSDoc to TagConfig
* yarn lint:fix
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
Co-authored-by: George Berezhnoy <gohabereg@users.noreply.github.com>
2021-03-02 16:34:23 +03:00
Peter Savchenko
2759b25d35
refactoring(modules): the listeners module now a util ( #1572 )
...
* listeners module goes util
* fix listeners 'off' bug
* improve garbage collecting
2021-03-02 16:25:52 +03:00
Tomoyuki Hata
e5fe93eeb5
Make passed config immutable ( #1553 )
...
* Make passed config immutable
* Update docs/CHANGELOG.md
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* Separate this.config initialization
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
Co-authored-by: Taly <vitalik7tv@yandex.ru>
2021-02-28 00:31:11 +03:00
Tomoyuki Hata
8104585854
Don't except the first selected block ( #1550 )
...
* Don't except the first selected block
* yarn fix
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
Co-authored-by: Taly <vitalik7tv@yandex.ru>
2021-02-26 12:51:53 +03:00
Tomoyuki Hata
3f39cb735d
Set caret when block data pasted ( #1470 )
...
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
2021-02-18 20:31:37 +03:00
kai_ogita
527ff4e6d1
Add url length validation to Link at inline-tool. ( #1476 )
...
* Add url length validation to Link at inline-tool.
fix
* simplify, add chengelog
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
2021-02-18 20:25:38 +03:00
Umang G. Patel
aa8675d61d
Toolbar toggler API ( #1466 )
...
* ToolBar Api Added
* Change Log added
* change Toggletoolbar to toggleBlockSetting
* Update docs/CHANGELOG.md
* Update editor.js
* Update toggleBlockSetting to toggleBlockSettings
* Apply suggestions from code review
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* Apply suggestions from code review
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
* Changes requested by hata added
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
2021-02-18 22:20:45 +05:30
Tomoyuki Hata
143a539e01
Fix unstable block cut process ( #1485 )
...
* Fix unstable block cut process
* Update CHANGELOG
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
2021-02-18 18:51:03 +03:00
Tomoyuki Hata
21adb61bc9
Scroll Window with block selection ( #1457 )
...
* Scroll Window with block selection
* Update CHANGELOG.md
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
2021-02-18 18:48:05 +03:00
Peter Savchenko
78478ace2b
chore(tests): testcases.md started ( #1487 )
...
Co-authored-by: Umang G. Patel <23169768+robonetphy@users.noreply.github.com>
2021-02-18 16:16:31 +03:00
Tomoyuki Hata
4c7cad1b41
Remove force options in Caret.navigateNext() and Caret.navigatePrevious() ( #1525 )
...
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
2021-02-18 15:19:20 +03:00
Peter Savchenko
c106819184
the long line splitted for several small ones, some more docs added
2021-02-17 18:01:28 +03:00
Tomoyuki Hata
7c8778acc4
Fix BlockManager.setCurrentBlockByChildNode() with multiple Editor.js instances
2021-02-17 18:01:28 +03:00
Tomoyuki Hata
bbbd637dfd
Change shortcut listener binding ( #1431 )
...
* Change shortcut listener binding
* Update CHANGELOG.md
Co-authored-by: Peter Savchenko <specc.dev@gmail.com>
2020-11-21 21:08:49 +03:00
Murod Khaydarov
f440a60ead
Replace typeofs ( #1434 )
...
* Replace typeofs
* save eslint fixes
* fix
* update
* remove sourcemap
* update
* update changelog
* fix typo
2020-11-21 20:54:01 +03:00
Peter Savchenko
e319e04350
fix(caret): right-arrow on last non-default block ( #1416 )
...
* fix(caret): last non-default block navigation won't craete a new block untill reaching the end
* reuse variable
2020-11-21 16:44:20 +03:00
Tomoyuki Hata
bfd0ea10ea
Sanitize pasted block data ( #1430 )
2020-11-21 16:15:13 +03:00