Commit graph

198 commits

Author SHA1 Message Date
George Berezhnoy 79f8660637 Version 2.13 (#719)
* Do not start multi-block selection on UI elements (#662)

* Do not start multi-block selection on UI elements

* Do not prevent mousedown event on inline toolbar actions

* Remove log

* Add comment

* Add link to issue

closes #646

* Fix loss of pointer (#666)

* Fix loss of pointer when click is outside of the editor but selection is inside

* Remove log

* Update shortcuts module (#685)

* Fixed possible grammatical typo (#681)

Thanks

* Update shortcuts module

* update changelog

* update

* Remove margin top for inline-link icon (#690)

* Remove margin top for inline-link icon

resolves #674

* Update CHANGELOG.md

* Remove unused style

* Pull fresh tools

* Remove changelog contents from readme (#700)

* #665 API to open and close inline-toolbar (#711)

* API to open and close inline-toolbar

* Fixed documentation

* renamed inline -> inline-toolbar

* removed dist

* reset editor.js

* added editor.js bundle

* Fixed build error

* Null checks on toolbar/inline@open

* updated bundle

* Improve some comments

* Updatd api.md CHANGELOG.md

* Change feature to new instead of improvement

* Allow holderId work with ref on dom element (#710)

* done

* update types

* attempt to simplify code

* remove useless helper

* revert holderId logic and add holder property

* Apply suggestions from code review

Co-Authored-By: dimensi <eddimensi@gmail.com>

* update holder type on string | HTMLElement

* fix typo

* add deprecated notice and fix typos

* fix wrong compare

* fix comments

* swap console.log on _.log

* update types for editor config

* update examples

* update docs

* update build

* Activating Open Collective (#736)

Hi, I'm making updates for Open Collective. Either you or a supporter signed this repo up for Open Collective. This pull request adds backers and sponsors from your Open Collective https://opencollective.com/editorjs❤️

It adds two badges at the top to show the latest number of backers and sponsors. It also adds placeholders so that the avatar/logo of new backers/sponsors can automatically be shown without having to update your README.md. [more info](https://github.com/opencollective/opencollective/wiki/Github-banner). See how it looks on this [repo](https://github.com/apex/apex#backers).

You can also add a postinstall script to let people know after npm|yarn install that you are welcoming donations (optional). [More info](https://github.com/OpenCollective/opencollective-cli)
You can also add a "Donate" button to your website and automatically show your backers and sponsors there with our widgets. Have a look here: https://opencollective.com/widgets

P.S: As with any pull request, feel free to comment or suggest changes. The only thing "required" are the placeholders on the README because we believe it's important to acknowledge the people in your community that are contributing (financially or with code!).

Thank you for your great contribution to the open source community. You are awesome! 🙌
And welcome to the open collective community! 😊

Come chat with us in the #opensource channel on https://slack.opencollective.com - great place to ask questions and share best practices with other open source sustainers!

* Do not install editor.js as dev-dependency (#731)

Resolves #730

* Move codex-notifier to dependencies for typescript declarations (#728)

* Close inline toolbar after creating new link by pressing ENTER (#722)

* Method to clear current selection and close inline toolbar

* clearSelection with optional collapsed range

* refactored selection.ts

* removed experimental function

* Update src/components/selection.ts

Co-Authored-By: tanmayv <12tanmayvijay@gmail.com>

* update version, add changelog

* Link Logo Image to homepage (#738)

* Update README.md (#744)

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

Co-Authored-By: neSpecc <specc.dev@gmail.com>

* Config minHeight option that allows to customize bottom zone (#745)

* issue-739: allow Block's editable element selection (#747)

* issue-739: allow Block's input selection

* little improvements

* update Changelog and cache inputs

* small fix

* delete map file

* fix inputs.count condition

* Fix typo in example paragraph (#749)

* Fix typo

* Update example-dev.html

* minor release
2019-04-29 15:52:54 +03:00
George Berezhnoy ce69182d06
Version 2.12.4 (#680)
* Do not start multi-block selection on UI elements (#662)

* Do not start multi-block selection on UI elements

* Do not prevent mousedown event on inline toolbar actions

* Remove log

* Add comment

* Add link to issue

closes #646

* Fix loss of pointer (#666)

* Fix loss of pointer when click is outside of the editor but selection is inside

* Remove log

* Update shortcuts module (#685)

* Fixed possible grammatical typo (#681)

Thanks

* Update shortcuts module

* update changelog

* update

* Remove margin top for inline-link icon (#690)

* Remove margin top for inline-link icon

resolves #674

* Update CHANGELOG.md

* Remove unused style

* Pull fresh tools
2019-04-06 16:28:49 +03:00
Peter Savchenko 9687ef31b5
Add opencollective note (#664) 2019-04-02 09:45:57 +03:00
George Berezhnoy 8f670dc791
Fix tooltip position (#655)
* Fix tooltip position

* Update paragraph

* Update version

* Update changelog

* Update docs/CHANGELOG.md
2019-03-27 16:13:51 +03:00
George Berezhnoy dd42adbb39
Pass configuration to inline tools (#660) 2019-03-27 15:46:42 +03:00
Taly e5423d64fc
Fix hover on the Delete Block button (#659) 2019-03-20 15:46:43 +03:00
George Berezhnoy a47ffcce44
renderFromHTML API method (#654)
* renderFromHTML API method

* Fix case when currentBlock is undefined

* Clear editor before render

* Handle single block processing

* Update paragraph
2019-03-18 23:59:40 +03:00
George Berezhnoy 6bd857d4f6
Pass configuration to internal tools (#648)
* Pass configuration to internal tools

* Bump version
Add changelog

* Move tools validation to Tools module
Add class for wrapper when toolbox is opened

* Add emptiness check

* Update submodule
2019-03-18 19:22:22 +03:00
Taly 98770e26d3
Fix mobile view (#650)
* Update postcss config

* Rebuild editor

bump version

* Update CHANGELOG.md

* Update .postcssrc.yml
2019-03-15 22:48:32 +03:00
Taly f841c96aeb
Update inline-toolbar and settings buttons margins (#645)
* Update inline-toolbar and settings buttons margins

* Bump version

* pull master to submodules

* Add Raw Tool

* Really add Raw tool

* Remove submodule

* Add RAW tool

* Update CHANGELOG.md
2019-03-14 16:15:15 +03:00
Taly ef50f5cf5a
Block tunes margins now better works with more than 3 buttons (#643)
* Fix settings margins

* Remove "not last-of-type" option for settings buttons

* Update CHANGELOG.md
2019-03-11 19:36:59 +03:00
George Berezhnoy afa158d5db
Fix issue with pasting html to non-initial tools (#639)
* Fix issue with pasting html to not initial tools

* Bump version and add changelog
2019-03-08 08:41:58 +03:00
George Berezhnoy b2d85d3ae6
Fix paste module to support Microsoft Edge (#640) 2019-03-08 08:33:29 +03:00
horoyami 19d228db17
Redesign of the scrolling zones (#634)
* update table

* Fix mouse button

* scrollZones

* build

* zones resize
2019-03-02 00:34:08 +03:00
Murod Khaydarov 1e5e77925f
Clear focus on multiple editor instances (#632)
* Clear focus on multiple editor instances

* update

* update bundles

* close inline toolbar
2019-03-01 18:10:33 +03:00
Murod Khaydarov 681e8a5827
Fix shortcut execution on several Editor instances (#631)
* Fix shortcut execution on several Editor instances

* fix problem before handling cmd+a
2019-03-01 15:09:12 +03:00
Peter Savchenko a16767eb12
New readme image (#630)
* New readme image

* Update README.md

* v2.11.2
2019-02-28 20:40:14 +03:00
horoyami 6cd011140c
Selection is available only for the main mouse button (#629)
* update table

* Fix mouse button
2019-02-28 20:04:56 +03:00
George Berezhnoy 75dbc91f53
API shorthands (#627)
* Api shorthands

closes #612

* Remove docs about events

* Update embed submodule

* Update example
2019-02-28 19:01:41 +03:00
George Berezhnoy 69a5c21bb6
Rename to Editor.js (#625)
* Rename to Editor.js in package, comments and docs

* More changes

* Done with renaming in code, docs, and comments

* Revert renaming of tools org

* Update submodules

* Changes due comments

* Fix double slash

* editorjs -> @editorjs/editorjs

* Update package.json

Co-Authored-By: gohabereg <gohabereg@users.noreply.github.com>

* Update webpack.config.js

Co-Authored-By: gohabereg <gohabereg@users.noreply.github.com>

* Update bundle
2019-02-28 14:01:32 +03:00
George Berezhnoy 758c5080df Add Toolbox tooltip (#604)
* Add tooltip

* styles updated

* updates

* Update CHANGELOG.md

* rm map

* update

* upd pkg
2019-02-27 13:25:09 +03:00
Murod Khaydarov 7aa35bb7dd
bump version (#626)
* bump version

* prevent backspace on firefox
2019-02-27 13:15:40 +03:00
George Berezhnoy 712256e23d
Handle paste only on initial Blocks (#623) 2019-02-26 00:38:45 +03:00
Murod Khaydarov 8d6ac74b57
Issue-616: Handle backspace, cmd+X, cmd+C and enter on RectangleSelection (#617)
* cut-n-copy multiple selection with rectangle

* use pop instead of shift

* enter and backspace behavior with rectangeSelection

* bump version and minify bundle

* optimize code
2019-02-25 17:19:30 +03:00
Murod Khaydarov e6adb4cb5b
[Update]: Migrate to postcss-preset-env which includes postcss-cssnext (#615)
* Use cssnext to cut cssnext variable. By default cssnext includes autoprefixes

* bump bundle version

* migrate to postcss-preset-env

* update changelog and minimize css
2019-02-19 18:42:34 +03:00
horoyami beeeef0914
Mouse selection (#574)
* Mouse selection
2019-02-19 11:49:19 +03:00
George Berezhnoy e4b0ca9b71
Prevent default behaviour on backspace (#607) 2019-02-11 11:36:41 +03:00
George Berezhnoy b46369bff0
Caret API (#605)
* Caret API

* Check block existence before setting the caret

* Update docs/api.md

Co-Authored-By: gohabereg <gohabereg@users.noreply.github.com>

* Update docs/api.md

Co-Authored-By: gohabereg <gohabereg@users.noreply.github.com>

* Update docs/api.md

Co-Authored-By: gohabereg <gohabereg@users.noreply.github.com>

* Update CHANGELOG.md
2019-02-01 12:47:25 +03:00
George Berezhnoy b89f756a03
Improve typings (#602) 2019-01-25 06:21:34 +03:00
George Berezhnoy 8ca49fa6f5
Fix Block inputs selector to include inputs without type attribute (#599) 2019-01-25 01:10:06 +03:00
horoyami 95734bb2f2
FIx version and changelog
* version fix
2019-01-24 18:50:27 +03:00
Murod Khaydarov 67d557120c
Prevent CMX+X only when block selected by editor (#596) 2019-01-17 15:07:56 +03:00
Polina Shneider fc3e146764
Validate saved data (#591)
* Specify submodule branch for test

* Change branch for testing convenience

Just run: git submodule update --remote

* Added checklist submodule for test

* Attempt to validate data on save

* Rewrite promise.then to async/await

* Move validate logic to saver

* Remove extra space

* Fix tabs

* Don't need async/await here

* Remove submodule

* Improve logging, remove empty blocks from data array

* Remove warning

* Loop over blocks only once

* Make validate non-async

* Get rid of await Promise.all

* Make validate async

* Call plugin's validate method with await

* Add docs

* Update docs

* Make separate function for tools validation

* Rename method

* Add data types interfaces

* Improve logging

* Desctructure extraction object

* Remove useless argument

* Update README and changelog

* Make separate changelog for version

* Increase version

* Bump version

* Keep logs at their places

* Fix logs order

* Pull submodules

* Improve logs grouping

* log styles improved

* Describe allExtractedData type

* Improve JSDoc
2019-01-12 19:39:43 +03:00
Peter Savchenko aab317895b
Responsive layout (#593)
* Mobile adaptation beginned

* mobile ready

* Narrow mode supported

* update version

* disable narrow mode testing

* prod build

* rm unnecessary code

* Update src/styles/variables.css

* rm unused code

* add viewport

* disable narrow mode on mobile

* mobile: add bg to current block

* add paddings for highlighted block

* rm changelog
2019-01-12 05:47:19 +03:00
George Berezhnoy 63a82d3424
Improve caret behaviour (#589) 2019-01-12 04:57:37 +03:00
George Berezhnoy da9255a98d
Enable editor autofocus (#581) 2019-01-12 03:44:43 +03:00
George Berezhnoy e8d43c8fc7
Handle paste on images and blocks w\o inputs (#583) 2019-01-12 03:34:44 +03:00
Murod Khaydarov d00412e1df
[Shortcuts]: CMD+X (#592)
* [Shortcuts]: CMD+X

* shortcuts must be in BlockManager

* small code improvements

* compact bundle

* insert new block in case of cmd+x

* prevent default

* suggested changes
2019-01-11 23:53:36 +03:00
Polina Shneider bc3341bfa1
Bump version (#584)
* Bump version

* Bundle
2018-12-28 00:09:57 +03:00
George Berezhnoy 7ca07c7999
Handle paste to the same block (#578) 2018-12-27 16:01:00 +03:00
George Berezhnoy 9d0d638d42
Improve caret behaviour (#579) 2018-12-25 18:07:05 +03:00
George Berezhnoy 6008c087a4
Handle br tags (#577)
* Handle br tags

* Bump version
2018-12-25 17:53:36 +03:00
horoyami b367ecddbf
Fix losing of selection (#576)
* update table

* fix code

* fix name

* Update package.json

* version
2018-12-24 23:58:45 +03:00
George Berezhnoy 5b156c1875
Fix jumping caret bug (#568)
* Fix jumping caret bug

* Get element from point
2018-12-24 21:40:15 +03:00
Peter Savchenko cfae683d6a
Add z-index to editor, add default styles for internal inline-tools (#566) 2018-12-24 09:20:20 +03:00
Peter Savchenko 71315d902a
Disable Mutation Observer while saving (#563)
* Disable Mutation Observer while saving

* rm image
2018-12-20 23:47:27 +03:00
Murod Khaydarov 41ae41cda7
issue-469: resolving error with setCaret (#570)
* issue-469: resolving error with setCaret

* dump version

* update package.json

* expand input types
2018-12-19 15:46:07 +03:00
Peter Savchenko 71a8a99937
Add changelog (#571)
* Changelog added

* note about html janitor

* update changelog

* update patch

* even
2018-12-19 14:52:21 +03:00
Taly f9d65d9544
Update prod build (#572)
* Remove watch from prod build

* x -> X

* bump version for CI

* Revert "bump version for CI"

This reverts commit 2c9d24d82c.
2018-12-19 08:09:56 +03:00
George Berezhnoy 8e5a56a67a
Check if node is single tag element in isNodeEmpty method (#567) 2018-12-18 22:24:15 +03:00
Murod Khaydarov 7c778d511c
issue-559: Allow default selection on native inputs (#564)
* issue-559: allow double CMD+A on native inputs

* restore commented code
2018-12-14 18:22:21 +03:00
Taly ed8b4f11f2
Remove "decline sound" on macOS on copy event (#558)
* Remove "decline sound" on macOS on copy event

* bump version

* remove legacy "build" dir
2018-12-08 09:48:27 +03:00
Murod Khaydarov d5d77c60cb
[ModificationObserver]: Use Native MutationObserver instead of DomModification listener (#556)
* Use native Mutation Observer

* use debounce on mutations

* bump version

* code descriptions

* upd
2018-12-07 11:33:43 +03:00
Murod Khaydarov 3d512d66ff
Polifylls Element interface type fixes and Selection util rangeCount extra condition (#555)
* hotfix

* update
2018-12-07 09:37:14 +03:00
horoyami 0ad9484c75 Inline Toolbar: Selection is not reseted (#543)
* Selection is not reseted if click on toolbar borde

* blue back

* 'refactoring'

* fix double link click

* fix double link click

* fix double link click

* listener

* 'reset'

* reset fix

* add missed bundles, increment version

* update submodules
2018-12-06 22:33:32 +03:00
Murod Khaydarov af4f62b254
Issue-459 (#551)
* close toolbar after block is removed

* update bundle
2018-12-06 22:23:06 +03:00
Murod Khaydarov 020961a7e8
Fix bug with warning (#550)
* Fix bug with warning

* update from master
2018-12-06 22:14:56 +03:00
Peter Savchenko 79399b6eb4
Dont clear dist before build (#549)
* Dont clear dist before build

* dont drop dist dir
2018-12-06 21:48:32 +03:00
George Berezhnoy 3a9e4a814b
Add notification if URL is not valid (#548) 2018-12-06 09:42:30 +03:00
George Berezhnoy 71f8d76787
Optimize and improve bundling (#547)
* Optimize and improve bundling

* Bump version

* Update path to main script
2018-12-06 00:01:24 +03:00
George Berezhnoy 866c38af2a
Stub Tool (#545)
* Add stub tool

* Rendered -> displayed

* Bump version

* font sizes updated

* add opacity for selected block with stub tool

* Update comment
2018-12-05 17:02:09 +03:00
George Berezhnoy c93ed2501b
Add tools` titles for Toolbox (#540)
* Add tools` titles for Toolbox

* Bump version

* Use isEmpty method to check object emptiness

* Improve isEmpty method

* Override toolbox settings from editor config
2018-12-04 20:24:41 +03:00
Murod Khaydarov 185eed8cb8
Merge fixes (#541)
* Merge fixes

* add type

* source map
2018-11-30 21:57:30 +03:00
Murod Khaydarov 4511194bb9
Enter on selected Block (#538)
* Enter on selected Block

* fix small bug with restoring caret
2018-11-30 18:02:24 +03:00
George Berezhnoy 669c11eaa5
Paste handling improvements (#534)
* Make on paste callback non-static method

* Add docs

* change tools.md header levels

* some docs improvements

* upd docs

* Types improvements

* add image tool for testing

* Fix file drag'n'drop

* improve log on paste

* Update submodules

* Update bundle

* Update paragraph submodule

* Fix some bugs with blocks replacement
Remove tag from HTMLPasteEvent

* Use production webpack mode

* minimize: true

* Update docs

* Update submodules

* Update bundle
2018-11-29 12:16:06 +03:00
Murod Khaydarov 819719aadc
update HTML-Janitor patch (#537)
* update HTML-Janitor patch

* update readme

* add licence to code
2018-11-24 22:06:40 +03:00
Peter Savchenko feace16fc1
Remove contentless and irreplaceable (#535)
* Remove contentless and irreplacable settings

* update version
2018-11-24 18:47:49 +03:00
Taly 953949e56f
set default value for holderId (#533)
resolves #496
2018-11-24 17:52:26 +03:00
Peter Savchenko 8398f825a8
Dont show Block Actions on new paragraphs (#532) 2018-11-24 17:04:32 +03:00
Peter Savchenko ecfcfaa79f
Optimisation: dont fire isEmpty checking for not-initial Blocks (#529)
* Optimisation: dont fire isEmpty checking for not-initial Blocks

Because not-initial Tools can has maaany nodes and it will be slow to walk three.

* upd comment
2018-11-24 16:33:43 +03:00
Peter Savchenko 09df079509
Logger improved (#521)
* Logger styles improved

Resolves #520

* increment version

* update bundle

* change last log
2018-11-24 12:57:11 +03:00
George Berezhnoy bcdfcdadbc
Move to typescript (#474)
* Move all modules to ts

* It works

* Update README.md

Co-Authored-By: gohabereg <gohabereg@users.noreply.github.com>

* Interfaces

* Interfaces

* Move depending interfaces to external types

* Update README.md

* update tools

* add some docs

* Add some fixes

* Add desctiprion for Block declaration and Core properties

* Fixes due comments
:

* Remove Block from external types

* Bump version

* Update src/components/modules/tools.ts

Co-Authored-By: gohabereg <gohabereg@users.noreply.github.com>

* Update src/components/core.ts

Co-Authored-By: gohabereg <gohabereg@users.noreply.github.com>

* Rename gteBlockHTMLByIndex to getBlockByIndex

* Remove unnecessary constructors

* Clean up bindEvents method

* Add InlineToolConstructable interface

* Delete legacy notifications class

* Fix zero-configuration bugs

* Update inline tools and block tunes constructors
2018-11-23 19:11:50 +03:00
Murod Khaydarov 6a90784b69
Block selection (#483)
* initial commit for feature

* selection with cmd+a

* copy to clipboard

* use div instead of textarea

* select and copy improvements

* requested changes

* update

* improve styles

* remove missclick

* clear selection with escape and other keydowns except shift

* copy to clipboard with cmd+a&cmd+c

* restore selection after clearing block selection

* update submodules

* update

* rename func name

* rename getter selected

* small naming changes

* native selection fix

* fix with appendCallback

* add light animations to selection

* move appendcallback to the toolbox insertnew function

* upd styles

* update

* missed {}

* last fixes

* upgrade version
2018-11-13 19:11:47 +03:00
Taly 7901bbb7e6
Add .idea/ dir to npmignore (#489)
* add .idea/ dir to npmignore

* bump version
2018-11-11 01:31:57 +03:00
Taly f5c4a8db37
add npmignore file (#488) 2018-11-11 01:27:51 +03:00
Taly b8ce51d77f
Notifier module and API (#486)
* Notifier module and API

* add docs

* update notifier module

* bump version

* impr image module

* git cache cleared

* remove image submobule

* add sumbodule
2018-11-10 15:47:25 +03:00
Polina Shneider 4a27dc6766
Fix plugin int return data (#487)
* Fix plugin int return data

* clean only strings

* Increase version
2018-11-09 20:15:49 +03:00
Peter Savchenko 8ceb615cd5
Some new styles, used by Image Tool (#479)
* Some new styles, used by Image Tool

* update example

* Update submodule

* increase version

* remove Simple

* update some packages
2018-11-06 18:33:39 +03:00
George Berezhnoy 986708ed90
Do not sanitize if sanitizer config is empty (#477) 2018-10-23 15:33:03 +03:00
Murod Khaydarov 3f8c7fbb7b
Sanitizer features (#467)
* Sanitizer features

* move to ts, use sanitizer module to clean taintstring

* Sanitizer is ready

* it works

* Code refactored (#476)

* Use new features for paste handling

* Fix asterix

* Add types and some comments

* Use any type for deepSanitize method

* Make sanitize property static and use apiSettings object

* Use sanitize for single-block pasting

* Fix comment

* little updates

* rename sanitize in inline-tools docs

* Update pattern handling

* Use public getter for available tools

* Fix typo
2018-10-23 10:34:00 +03:00
George Berezhnoy cb86bf446b
Improve paste behaviour (#473)
* Improve paste behaviour

* Use variables for long expressions

* Fix paste processing logic
2018-10-16 15:33:49 +03:00
George Berezhnoy 53f58584b6
Fix sanitize config on paste (#471) 2018-10-10 22:32:17 +03:00
Murod Khaydarov ff80ca6e92
api sanitizer improvements (#457)
* api sanitizer improvements

* update

* sanitize recursively

* clear from logs and update comments

* optimize

* update

* perfect recursive method

* update request

* upd

* update docs

* update comments

* update

* update docs

* update last comment

* update

* update docs

* update docs

* update

* upd docs

* add extra condition

* update

* update docs link
2018-10-01 14:07:51 +03:00
George Berezhnoy cba8de8367
Bump minor version (#461)
* Bump version

* Bump minor version
2018-09-28 17:08:09 +03:00
George Berezhnoy 330e8ac76f
Bump version (#460) 2018-09-28 16:52:49 +03:00
George Berezhnoy cdf6d973c1
Update toolbar move as not to overlap editor`s content (#455)
* Update toolbar move as not to overlap editor`s content

* Bump version

* Add top offset to toolbox actions

* Calculate offset once
2018-09-20 16:46:40 +03:00
Murod Khaydarov bdae8d3fad
inline-tools: prevent default behaviour on clicks to prevent form submitting (#454)
* fix inline-tool buttons

* prevent default on inline-tool clicks

* update

* update version from package json

* update version and use badgen in README

* upd
2018-09-20 14:51:21 +03:00
Murod Khaydarov 7acf321454
Mutation callback (#444)
* modification observer initials

* add debouncer to callback execution

* change feature name

* update

* code improvements

* tslint fixes

* use debouncer from utils

* add types

* upgrade

* fix

* update
2018-09-05 00:34:11 +03:00
Taly 45d19ab4d2
configuration must be undefined by default (#442)
* configuration must be undefined by default

* update
2018-09-03 20:27:19 +03:00
Taly 314cc6de24
Define default value for config object (#441)
* define default value for config object

* bump version

* redefine onReady function
2018-09-03 18:54:37 +03:00
Murod Khaydarov f2f8bc0851
Do not show plus button if toolbox is empty (#439) 2018-08-30 16:38:52 +03:00
Murod Khaydarov bd09c150bf
issue-433: shortcuts handler errors (#438)
* check selection existance or current block is not null

* ignore shortcut handler if nothing selected

* remove unnecessary code

*  check for empty selection

* update comment

* allow to fire shorcuts with empty selection
2018-08-30 16:34:47 +03:00
Peter Savchenko 6ac69a48e8
Issue #426 : Imporve Toolbar position calculating (#435)
* Issue #426 : Imporve Toolbar position calculating

* header tool update

* 2.0.5
2018-08-28 18:14:34 +03:00
Taly d9a2361603
use Apache-2.0 license (#428)
resolve #408
2018-08-15 19:51:18 +03:00
Max Kokorin 3a2512cd76 fix babel-polyfill conflict (#424) 2018-08-10 16:35:49 +03:00
Taly 1627f8a3bd update readme (#419)
* update readme

* update readme
2018-08-07 09:32:32 +03:00
Taly 15599d032d
Fix missing holderId (#407)
* set default holderid

* 2.0.2

* pack bundle
2018-08-05 16:09:30 +03:00
Taly 87ed7ec0ee
Fix link to example (#405)
* fix link to example.html

* 2.0.1
2018-08-05 15:44:53 +03:00
Peter Savchenko 61242ab6a6
Release 2.0-beta (#387)
* update
* Toolbar, Toolbox, UI (#239)
* Toolbox making
* Add Toolbox buttons click handler
* Toolbar, Toolbox, UI
* Updates
* update css prefix
* trying to write docs
* append callback behaviour
* update request
* update
* empty initial data
* initial saver
* some requested changes
* update request
* requested changes
* upgrade saver
* new improvements
* update
* Caret module: initial
* improvements
* moving caret initial
* small improvements
* last changes, added docs
* requested changes
* implement getters instead of functions in block cursors
* last requested changes
* caret module docs and last improvements
* update docs
* upgrade request
* update docs
* upd
* todo on delays
* Sanitizer docs
* split func upd
* split blocks update
* up docs
* Listeners Module: initial
* listener module updates
* split is ready
* update
* start to make merge
* upd
* split general upd split is ready
* ups
* keyboard module update
* BlockManager removed keyboard handler
* commit before merging rewriting2.0
* general upd split
* Documentation upd
* document + listener upd
* upd doc
* documentation upd
* doc upd
* listener upd
* update algh extract fragm
* upd extractRangeContent
* upd dom.js
* keyboard upd (shift + enter & enableLineBreaks)
* upd enter pressed
* keyboard.js upd
* enter pressed upd
* documenation added
* documentation upd
* Toolbar: settings zone added. (#252)
* Toolbar: settings zone added.
* update some comments
* Making a Toolbar
* delete block
* dom improvements and merging blocks
* merge and split improvements
* fix merging
* do not remove block if block contains media
* optimize code
* caret behaviour improved
* up
* up
* merging blocks. Now plugins handles this cases
* mergeable getter
* save
* up
* dom getdeepestnode improvements
* improve getDeepest node method one more time
* upd
* Deal with it
* improve isAtStart
* improve docs
* use smart isAtStart and isAtEnt method in navigateNext/navigatePrevious
* improve docs
* fix bug in $.isEmpty, improve keydown
* fix isAtEnd
* rollback setCaret code duplication
* improve backspace
* Debug tree walker
* fix tree walker
* small caret fix
* queue ordering
* update bundle
* improve first letter checkup
* doc upd
* update current block index setter
* TypeScript support, Webpack 4, Inline Toolbar beginning (#257)
* Create UI
* Support TypeScript Modules
* remove tmp files
* migrate to 2-spaced tabs
* Add TS Linter
* Inline Toolbar moving (#258)
* Inline Toolbar moving
* simplify code
* Check is need to show Inline Toolbar
* remove duplicate from doc
* fix doc
* open/close IT
* Close IT by clicks on Redactor
* @guryn going strange
* default settings initial
* add move up button to default tunes area
* need to figure out with assets
* Inline Toolbar Tools base example (#260)
* Inline Toolbar Tools base example
* texts fixed
* imrpove texts
* little fixes
* save
* tunes with interface
* add tool settings
* initial api methods
* api is ready
* started writing docs
* Create svg sprite (#261)
* API
* requested changes
* fix conflicts
* add docs
* doc fixes and interface improvements
* update
* API scopes improved
* Deleting block: Initial
* Delete block with confirmation
* Event subscription&unsubscription
* deletion trigger improvements
* small improvements
* Link Inline Tool (#264)
* Link Inline Tool
* api injected
* text improved
* Clear input on the reselection
* little improvements
* Delete tune fixes
* UI: Block Settings, show Plus after Enter keydown (#265)
* Some UI improvements: icons settigns
* Show plus button after split
* decrease autoprefixer
* rename variable
* Revert "Merge branch 'delete-tune-fixes' into rewriting-version2.0"
* Delete Tune improvements
* upd
* upd comments
* actualize API docs
* Allow to connect external Inline Tools (#269)
* Allow to connect external Inline Tools
* unhardcode tool's api settings
* Italic inline tool
* update icon size
* upgrade findParentTag function
* add interface selection
* fix cs
* save marker
* bundles
* add todo
* removing wrapper
* update styles
* market -> term
* add comments
* improve code
* descrease margin
* add text block to example
* add line brakes
* remove space
* fix bugs
* fix bug
* umd as a library target
* background -> background-color
* Clear API (#274)
* blockManager.clear
* upd
* api bez ebanoj knopki api
* fix assignment
* insert empty block with clear method
* clear and render methods improved
* open saver.save()
* add comments
* update comments
* fix data returned by editor
* rename plugin name field in data object (#276)
* Text tool refactored (#277) Now it returns strict data format.
* do not add block if tool is not exist (#278)
* do not add block if tool is not exist
* show warning
* add todo
* update warning message
* put message into variable
* Revert "put message into variable"
* update comment
* Module Keyboard rewrited to BlockEvents (#279)
* Module Keydown rewrited to BlockEvents
* move keyup and mouseup to the Block Events
* Move-up tune (#268)
* Move up tune initial
* move up tune initial behaviour* moving up formula, docs and code cleaned
* do not close the toolbar if moving block up* move nagivate methods to Caret Module* navigations returns boolean if caret is set
* code improved
* update comments
* Eslint --fix for project files (#280)
* Header plugin (#281)
* header initial
* fix styles
* eslint fix
* add appendCallback
* add comments
* update styles
* add svgs
* highlight settings buttons
* do not show text plugin in the toolbar
* remove svg
* Fixing caret behaviour. (#282) Plugins can change their state so that affect on Block's pluginsContent property which is in memory.
* remove useless code
* fix merge
* "MoveDown" tune (#283)
* move down initial Swap current block with next block and scroll window screen
* check if block is last added new method to the blocks API that returns blocks count
* fix comments
* animate tune
* add animation when tune is disabled
* requested changes
* remove unused css
* Fix merge function and rename Block's wrapper (#284)
* Fix merge function and rename wrapper
* update
* renew condition
* update
* upd
* Merging blocks: Restore caret position 🤟🤟💪 (#286)
* Merging blocks: Restore caret position 🤟🤟💪
* requested changes
* update removing shadow caret
* hide toolbar and selection on typing (#289)
* Editor Instance config Interface (#285)
* create interface for editor config
* use IEditorConfig
* create some interfaces
* add comments
* editor interface
* updates
* update editor interface (#293)
* При перемещении по стрелочкам убирать выделение блока (#296)
* При перемещении по стрелочкам убирать выделение блока
* Add comments
* update comments
* update comment
* update toolbar design (#301)
* Set caret at the end if clicked outsite the block (#305)
* Set caret at last block or create new block at end
* update comment
* fix comments
* Insert new Block when enter pressed on editor area (#307)
* insert new block when enter pressed on editor zone
* extra conditions. Enter must be handled on editors area
* move at editor condition to the Selection method
* closes can return null
* fixing editor area
* do not create new block
* clean example
* updates due to the requested changes
* Add placeholder to contentEditable elements (#306)
* add placeholder to contentEditable elements
* store selection color in a variable
* add placeholder to header block
* Add placeholder to contenteditable only if attribute data-placeholder exists
* remove tool config
* Close toolbar after block is removed (#314)
* makeSettings -> renderSettings (#315)
* Term: new icon, new style. + margin between settings buttons (#316)
* remove useless span wrapper
* update linters
* update styles
* process click on svg by closest
* remove commented code
* rename function: svgIcon -> toolboxIcon
* add toolboxIcon to docs
* Paste (#259)
* Paste module
* Rewrite paste logic
* Update due comments
* Docs
* Add all block elements
* Sanitize content on paste
* Remove logs and add header handler
* Add comment to dom.js
* Add comment to tools.js
* Split block if paste not at the end
* Update docs
* Update docs
* Take Tool name from config
* Update docs
* Label onPaste handler as private
* Resolve conflict
* Replace current block if it is empty (#320)
* Improve Header line-height (#321)
* Fix typo (#324)
* CodeX Editor 2.0
* Module Shortcuts (#317)
* import shortcuts
* node modules works
* enable shortcut for inline tools
* check shortcut existance
* enable shortcuts to Block tools
* set caret to block if block replaced
* enable shortcuts on inline-tools
* improve code
* last changes
* update
* fix
* insert returns block so we can set caret
* use Map instead own structure
* disable shortcut if iniline-toolbar disabled
* update code styles
* remove todo
* upd
* update
* remove settings from insert function
* create interface
* code improvements
* use const instead of let
* upd
* Simple Image Tool (#326)
* Simple Image
* fix pattern
* show tunes` state
* update code
* update code
* upd
* Fix toolbox appearance, tools boxed are clickable (#331)
* Remove toolsConfig from Editor's config (#327)
* fix linters
* remove toolsConfig
* update tool's interfaces
* add comments
* bundles
* remove test headers
* restore commented code
* update tool's interface
* toolConfig -> toolSetting
* fix typos
* update code comments
* update installation doc
* update docs
* update dev dep packages (#333)
* Check is paste handler a function only if it exists (#328)
* Toolbar with tab (#330)
* toolbar tabs initial
* leaf initial
* save state
* flip back toolbox items
* enter on toolbox item
* update
* requested changes
* new condfition
* update
* improve animation on leaf
* fix shift+tab flip
* up
* update
* updates
* Consecutive blank lines are forbidden
* Correct choosing next toolbox item
* update
* update comment
* Validate editor's config before initing (#341)
* validate editor's config before initing
* update readme
* @
* update comments
* add function _.isClass
* Styles API (#343)
* StylesAPI
* use styles api in plugins
* add inline styles
* List Tool [new] (#344)
* list tool initial
* list class with settings
* make tool reactive
* final List improvements
* reorder
* tmp update
* unhadrcode enter handler
* updates
* enableLineBreaks also checks
* skip empty items
* select LI by CMD+A, fix backspace in the last item
* improve check for emptiness
* Example page improved (#347)
* Update new example
* imrpove example.html
* updates
* improve code
* Header plugin (#348)
* isFunction function
* use header from cdn
* Improve paste behaviour (#346)
* Improve paste behaviour
* Done
* Don't pass empty items
* Update comment
* move public up
* Remove disallow paste option
* Quote Tool (#329)
* Quote Tool
* Add icon
* Upd
* fix ENTER on quote
* Remove useless code
* items -> blocks (#351)
* use SimpleImage from cdn (#355)
* use simpleimage from cdn
* add comments
* fix spaces
* fix comments
* remove comments
* update simple-image script
* Update text on the example.html (#356)
* use Paragraph Tool from CDN (#357)
* use Paragraph Tool from CDN
* add line brakes
* rename block: paragraph -> text
* Remove _callbacks.js (#358)
* Clear unused files (#359)
* TOOLBAR_ICON_CLASS -> TOOLBAR_ICON (#360)
* TOOLBAR_ICON_CLASS -> TOOLBAR_ICON
* remove defaultConfig
* Delimiter tool (#362)
* Delimiter added
* ашч
* use delimiter from cdn
* Enter on editor (#363)
* Enterpress on editor
* use additional property
* check enter on body
* update
* fix toolbar behaviour
* upd
* update bundle
* remove useless ui property
* update comment
* add Element.prepend() function (#365)
* add Element.prepend() function
* allow to pass element of array to prepend() polyfill
* use List Tool from cdn (#366)
* use List Tool from cdn
* add missing </div> in example.html
* Pass "config" from Tool's settings to Tool's constructor (#367)
* pass config from Tool's settings to Tool's constructor
* reorder elements
* add apiSettings.CONFIG property
* use string as a object's key 😔 (#368)
* update placeholder's styles (#369)
* Add shortcuts for internal tools (#370)
* Add shortcuts for internal tools
* upd doc
* remove articles
* ☹️ guryn asked
* use quote from cdn (#371)
* Add cache to the inline tools (#372)
* use Inline Code Tool from cdn (#375)
* Issue 354 inline tools filter (#376)
* Allow to filter inline tools.
* update example
* update header
* fix endless cycle (#378)
* Destructured options for Inline Tools (#379)
* add destructured options for inline-tools
* temporary disable inlineCode
* remove term sources
* Fix toolbar moving after arrow navigation (#380)
* Fix toolbar moving after arrow navigation
* move before open
* fix error on Enter after block removing
* add example Tools as submodules (#381)
* add destructured options for inline-tools
* temporary disable inlineCode
* remove term sources
* add inline code Tool as a submodule
* update version of inline-code package
* add Tools as submodules
* update Tools and use destructured params object
* Add constructor() docs
* update package Paragraph Tool
* update installation docs
* Input navigation (#339)
* Quote Tool
* Add icon
* Upd
* Initial setup
* Save changes
* Add scroll and fix input focus
* Add comments
* Rebuild bundle
* fix ENTER on quote
* Fix split behaviour
* Fix
* Navigate only to contentful blocks
* add comments
* Fix backspace on last block
* Remove log
* It works
* Resolve comments
* Use constants
* New readme 🦅 (#386)
* New readme 🦅
* upd text
* Issue 374 (#385)
* Fix issue #374
* Set current block index to -1 if there is no blocks left
* Insert new block if first one was removed by default
* Paragraph as a default Tool in editor; Zero-conf (#389)
* git commit -m "Removed submodule Paragraph"
* add paragraph to core + zero-config
* update bundle
* update comment
* remove log
* enable minifying (#390)
* Drop current block index only if there is no selection at the Editor (#388)
* Drop current block index only if there is no selection at the Editor
* Set current node if click ended out of editor
* Small backspace behaviour improvement (#391)
* Small backspace behaviour improvement
* fix caret position
* update from base branch
* Update webpack config
* Migrate to Yarn (#393)
* Migrate to yarn
* Update scripts
* Rewrite helpers classes to TypeScript (#396)
* Add docs and isReady promise (#394)
* set default holderId value (#404)
* Destroyer (#392)
* Initial destroy method
* Add destroy method to api docs
* Export isReady promise in CodexEditor constructor

👨‍🎓

Co-authored-by: Murod Khaydarov <murod.haydarov@gmail.com>
Co-authored-by: George Berezhnoy <gohabereg@gmail.com>
Co-authored-by: Taly <vitalik7tv@yandex.ru>
2018-08-05 14:51:58 +03:00
Taly b9b07135f7 check for a coords or focusedNode is null (#255)
* check for a coords or focusedNode is null

* bump version
2018-05-25 17:49:46 +03:00