1
0
mirror of https://github.com/ianstormtaylor/slate.git synced 2025-02-13 11:44:55 +01:00

2063 Commits

Author SHA1 Message Date
Ian Storm Taylor
bfe3124b01 Publish
- slate-base64-serializer@0.2.18
 - slate-html-serializer@0.4.16
 - slate-hyperscript@0.4.16
 - slate-plain-serializer@0.4.16
 - slate-prop-types@0.4.16
 - slate-react@0.10.23
 - slate-simulator@0.4.16
 - slate@0.31.8
slate@0.31.8 slate-simulator@0.4.16 slate-react@0.10.23 slate-prop-types@0.4.16 slate-plain-serializer@0.4.16 slate-hyperscript@0.4.16 slate-html-serializer@0.4.16 slate-base64-serializer@0.2.18
2018-01-02 17:02:19 -08:00
Stan Chang Khin Boon
9c07a6baa4 Flush change immediately (#1479) (#1480)
Propose to flush change immediately instead of delaying it using `setTimeout()`.

- Flushing change is only use for `props.onChange()` callback and invoked at the end of render lifecycle (didMount/didUpdate), can't find the rationale for delaying it.
- `setTimeout()` delay are not dependable for a predictive behaviour
- `onChange()` is an important callback for a controlled component, delaying it can cause race condition. e.g. any changes outside of the component lifecycle that happen between the delay of flushing change will be overridden
2017-12-29 11:07:55 -08:00
Justin Weiss
23ab02626f Properly invert merge_node operations (#1477) 2017-12-29 10:57:21 -08:00
Charlie Martin
29bcb1c8d6 Don't attempt to remove event listeners from non-existent window (#1495)
```
<IFrameComponent>
  <SlateEditor {...props} />
</IFrameComponent>
```

Since react unmounts from top down, `IFrameComponent` will unmount first (destroying its window), then `SlateEditor` will unmount and attempt to access the iframe window (which no longer exists) throwing `Uncaught TypeError: Cannot read property 'document' of undefined`.

It should be safe to skip removing event listeners from windows that no longer exist since they will be garbage collected upon destruction of the window anyway
2017-12-29 10:49:54 -08:00
Stan Chang Khin Boon
02c4837d4c this.element might be null when the callback is executed (#1489) 2017-12-29 10:48:53 -08:00
Brian Kim
6f5f2db271 fix #1487 (#1488) 2017-12-29 10:48:28 -08:00
Julien Poissonnier
0e33c8bb35 Fix schema marks validation (#1483) 2017-12-29 10:47:06 -08:00
Ryan
7dc93dced9 Docs: Fix method capitalization on resetKeyGenerator (#1474) 2017-12-29 10:43:02 -08:00
Stan Chang Khin Boon
1b9d3944a9 change.operations is immutable List thus we should size property instead of length (#1478) 2017-12-29 10:42:32 -08:00
Ian Storm Taylor
22576e521f Publish
- slate-base64-serializer@0.2.17
 - slate-html-serializer@0.4.15
 - slate-hyperscript@0.4.15
 - slate-plain-serializer@0.4.15
 - slate-prop-types@0.4.15
 - slate-react@0.10.22
 - slate-simulator@0.4.15
 - slate@0.31.7
slate@0.31.7 slate-simulator@0.4.15 slate-react@0.10.22 slate-prop-types@0.4.15 slate-plain-serializer@0.4.15 slate-hyperscript@0.4.15 slate-html-serializer@0.4.15 slate-base64-serializer@0.2.17
2017-12-12 18:10:57 -05:00
Justin Weiss
8be1f9f3a1 Remove value from operation.fromJSON (#1451)
* Remove `value` from `operation.fromJSON`

Value is only used for local undo / redo, so it shouldn't be
serialized along with the rest of the data.

* Continue to parse a specified `value` into an Operation
2017-12-12 18:09:15 -05:00
Evan Henley
a3d91b6daa fix: account for container padding in scrollToSelection (#1462) 2017-12-11 10:35:02 -08:00
Ian Storm Taylor
fafa607e54 Publish
- slate-base64-serializer@0.2.16
 - slate-html-serializer@0.4.14
 - slate-hyperscript@0.4.14
 - slate-plain-serializer@0.4.14
 - slate-prop-types@0.4.14
 - slate-react@0.10.21
 - slate-simulator@0.4.14
 - slate@0.31.6
slate@0.31.6 slate-simulator@0.4.14 slate-react@0.10.21 slate-prop-types@0.4.14 slate-plain-serializer@0.4.14 slate-hyperscript@0.4.14 slate-html-serializer@0.4.14 slate-base64-serializer@0.2.16
2017-12-11 10:40:51 -05:00
David Silva
f8c74426a5 fix(at-range): forward deletion now stays with next block. (#1459)
* fix(at-range): forward deletion now stays with next block.

* fix(at-range): use select instead of moveToRangeOf

* Revert "fix(at-range): use select instead of moveToRangeOf"

This reverts commit 43bf33e29daeaa609bf92196df1b25de42c12d96.

* fix(at-range): moveOffsetsTo

* fix(at-range): change to change.moveToStartOf(nextBlock)
2017-12-11 07:14:25 -08:00
David Silva
c58e53364f fix(scroll-to-selection): use getClientRects when selectionRect.top/height is still 0 in Safari (#1446)
* fix(scroll-to-selection): use getClientRects when startContainer.length is 1

* fix(scroll-to-selection): rewrite and check if selectionRect.top/height still 0, use getClientRects

* fix(scroll-to-selection): identation whoopsie

* fix(scroll-to-selection): tabs !== spaces

* fix(scroll-to-selection): check for getClientRects length

* feat(scroll-to-selection): add IS_SAFARI check
2017-12-11 06:59:31 -08:00
Justin Weiss
082fb53633 Add a copyFragment helper for plugin onCut/onCopy functions (#1429)
* Add a `copyFragment` helper for plugin onCut/onCopy functions

* Rename `copyFragment` to `cloneFragment`

* Fix a missing clone-fragment reference
2017-12-11 06:56:38 -08:00
Conor Cussell
b2e0612149 Deal with invalid range passed to getSelectionIndexes (#1443)
* Deal with invalid range in getSelectionIndexes

* Use range is unset
2017-12-11 06:54:46 -08:00
Ian Storm Taylor
cef33de6aa Publish
- slate-base64-serializer@0.2.15
 - slate-html-serializer@0.4.13
 - slate-hyperscript@0.4.13
 - slate-plain-serializer@0.4.13
 - slate-prop-types@0.4.13
 - slate-react@0.10.20
 - slate-simulator@0.4.13
 - slate@0.31.5
slate@0.31.5 slate-simulator@0.4.13 slate-react@0.10.20 slate-prop-types@0.4.13 slate-plain-serializer@0.4.13 slate-hyperscript@0.4.13 slate-html-serializer@0.4.13 slate-base64-serializer@0.2.15
2017-12-04 11:31:07 -08:00
Evan Henley
4f1c26961d refactor scroll logic (#1428) 2017-12-04 11:27:54 -08:00
Thomas Preusse
a4028cac6b fix nodes validation with an optional first child (#1444)
When moving to the next definition because of a fulfilled min a child could
slip through without being valid.
2017-12-04 11:27:26 -08:00
Ian Storm Taylor
199c32a2b5 Publish
- slate-react@0.10.19
slate-react@0.10.19
2017-12-02 13:53:25 -08:00
Ian Storm Taylor
4e021f58b5
handle native selectionchange event, closes #1135 (#1441) 2017-12-02 13:52:23 -08:00
Ian Storm Taylor
e06281bcf2 update packages readme 2017-12-02 13:51:32 -08:00
Ian Storm Taylor
a3fcb5dfa2 update packages readme 2017-12-02 13:49:38 -08:00
Ian Storm Taylor
5df62975a9 update readmes 2017-12-02 13:48:51 -08:00
Ian Storm Taylor
ac9965151a Publish
- slate-base64-serializer@0.2.14
 - slate-html-serializer@0.4.12
 - slate-hyperscript@0.4.12
 - slate-plain-serializer@0.4.12
 - slate-prop-types@0.4.12
 - slate-react@0.10.18
 - slate-simulator@0.4.12
 - slate@0.31.4
slate@0.31.4 slate-simulator@0.4.12 slate-react@0.10.18 slate-prop-types@0.4.12 slate-plain-serializer@0.4.12 slate-hyperscript@0.4.12 slate-html-serializer@0.4.12 slate-base64-serializer@0.2.14
2017-12-02 13:07:39 -08:00
Justin Weiss
105b384ccb Fix activeMarks at the beginning of a line (#1434)
If you move to the beginning of a text node, and the previous text
node has marks, `marks` is set but `activeMarks` is not. This was
caused by `getActiveMarksAtRangeAsArray` looking for a function that
didn't exist. With this change, `activeMarks` is brought in line with
how `marks` works for collapsed selections.
2017-12-02 12:35:16 -08:00
Conor Cussell
7032339ca2 Fix small error in docs (#1435)
- make the placeholder have an opacity
- correct `contentEditable` jsx attribute
2017-12-02 12:34:38 -08:00
Justin Weiss
1ae4471692 Document the position field of merge_node (#1440)
`merge_node` has a `position` field, which is exactly what I needed in order to transform some operations. It should be documented.
2017-12-02 12:30:05 -08:00
David Hrdlicka
8928363471 Fix inserting text with hanging selection, issue #1189 (#1432) 2017-12-02 12:29:00 -08:00
Raffy Li
b3324db24c fix editor auto focus (#1438)
current implement of auto focus is buggy, HTMLElement.focus method
have no effect on selection state of editor, another re-render will
cause editor blur unexpectedly.
2017-12-02 12:06:17 -08:00
Ian Storm Taylor
f3b1a806d7 Publish
- slate-base64-serializer@0.2.13
 - slate-html-serializer@0.4.11
 - slate-hyperscript@0.4.11
 - slate-plain-serializer@0.4.11
 - slate-prop-types@0.4.11
 - slate-react@0.10.17
 - slate-simulator@0.4.11
 - slate@0.31.3
slate@0.31.3 slate-simulator@0.4.11 slate-react@0.10.17 slate-prop-types@0.4.11 slate-plain-serializer@0.4.11 slate-hyperscript@0.4.11 slate-html-serializer@0.4.11 slate-base64-serializer@0.2.13
2017-11-19 13:04:26 -08:00
dmitrizzle
5542766092 Managing History limits (#1421)
* Undo size is measured in  rather than

* Revert local settings
2017-11-19 13:01:08 -08:00
Nicolas Gaborit
aec62f06ba Update benchmark to use Value (#1420) 2017-11-19 12:46:52 -08:00
Ian Storm Taylor
0d43d26f91 Publish
- slate-react@0.10.16
slate-react@0.10.16
2017-11-16 13:13:26 -08:00
Ian Storm Taylor
ed32159be7 fix to default window in findDOM* utils 2017-11-16 13:12:42 -08:00
Ian Storm Taylor
7cfc7fae68 Publish
- slate-base64-serializer@0.2.12
 - slate-dev-logger@0.1.36
 - slate-html-serializer@0.4.10
 - slate-hyperscript@0.4.10
 - slate-plain-serializer@0.4.10
 - slate-prop-types@0.4.10
 - slate-react@0.10.15
 - slate-simulator@0.4.10
 - slate@0.31.2
slate@0.31.2 slate-simulator@0.4.10 slate-react@0.10.15 slate-prop-types@0.4.10 slate-plain-serializer@0.4.10 slate-hyperscript@0.4.10 slate-html-serializer@0.4.10 slate-dev-logger@0.1.36 slate-base64-serializer@0.2.12
2017-11-16 12:21:24 -08:00
Ian Storm Taylor
59a7197f81 fix inverting of split_node and merge_node operations 2017-11-16 12:20:30 -08:00
Ian Storm Taylor
65c583f695 update syncing-operations example 2017-11-16 11:53:59 -08:00
Ian Storm Taylor
afc969b5ba update slate-dev-logger deps 2017-11-16 11:51:22 -08:00
Ian Storm Taylor
2f09811fc2 Publish
- slate-base64-serializer@0.2.11
 - slate-dev-logger@0.1.35
 - slate-html-serializer@0.4.9
 - slate-hyperscript@0.4.9
 - slate-plain-serializer@0.4.9
 - slate-prop-types@0.4.9
 - slate-react@0.10.14
 - slate-simulator@0.4.9
 - slate@0.31.1
slate@0.31.1 slate-simulator@0.4.9 slate-react@0.10.14 slate-prop-types@0.4.9 slate-plain-serializer@0.4.9 slate-hyperscript@0.4.9 slate-html-serializer@0.4.9 slate-dev-logger@0.1.35 slate-base64-serializer@0.2.11
2017-11-16 11:49:23 -08:00
Ian Storm Taylor
7de909cfe4 fix to make lists of operations immutable too 2017-11-16 11:48:46 -08:00
Ian Storm Taylor
ffe9f8258f Publish
- slate-base64-serializer@0.2.10
 - slate-dev-logger@0.1.34
 - slate-html-serializer@0.4.8
 - slate-hyperscript@0.4.8
 - slate-plain-serializer@0.4.8
 - slate-prop-types@0.4.8
 - slate-react@0.10.13
 - slate-simulator@0.4.8
 - slate@0.31.0
slate@0.31.0 slate-simulator@0.4.8 slate-react@0.10.13 slate-prop-types@0.4.8 slate-plain-serializer@0.4.8 slate-hyperscript@0.4.8 slate-html-serializer@0.4.8 slate-dev-logger@0.1.34 slate-base64-serializer@0.2.10
2017-11-16 11:35:00 -08:00
Ian Storm Taylor
e567b79a88 update changelog 2017-11-16 11:33:27 -08:00
Ian Storm Taylor
f1f07da5e5
add immutable operation model, with serialization (#1409)
* add immutable operation model, with serialization

* fix split node operations, and deserializing operations
2017-11-16 11:32:13 -08:00
Tobias Andersen
1abc7e74b8 fix some typos in docs/guides (#1412) 2017-11-16 11:14:38 -08:00
Ian Storm Taylor
237ae9fc2f update JSFiddle links, closes #1407 closes #1404 2017-11-15 14:28:14 -08:00
ImgBot
68f11ca7b3 [ImgBot] optimizes images (#1405)
*Total: 1,903.39kb -> 1,523.20kb (19.97%)

\docs\images\auto-markdown-example.png -- 116.26kb -> 85.71kb (26.27%)
\docs\images\banner.png -- 11.74kb -> 3.95kb (66.4%)
\docs\images\links-example.png -- 104.37kb -> 75.41kb (27.74%)
\docs\images\preview.png -- 96.05kb -> 72.85kb (24.15%)
\docs\images\hovering-menu-example.png -- 100.86kb -> 73.46kb (27.17%)
\docs\images\icon.png -- 1.95kb -> 1.04kb (46.77%)
\docs\images\tables-example.png -- 110.42kb -> 81.08kb (26.57%)
\docs\images\logo.png -- 5.26kb -> 2.95kb (43.85%)
\docs\images\code-highlighting-example.png -- 115.29kb -> 86.31kb (25.14%)
\docs\images\forced-layout-example.png -- 103.95kb -> 98.07kb (5.66%)
\docs\images\images-example.png -- 245.30kb -> 220.21kb (10.23%)
\docs\images\jsfiddle.png -- 170.18kb -> 139.22kb (18.19%)
\docs\images\read-only-example.png -- 89.87kb -> 63.78kb (29.03%)
\docs\images\paste-html-example.png -- 176.66kb -> 136.64kb (22.65%)
\docs\images\plain-text-example.png -- 79.92kb -> 55.48kb (30.58%)
\docs\images\rich-text-example.png -- 103.41kb -> 75.30kb (27.19%)
\docs\images\slack.png -- 271.90kb -> 251.73kb (7.42%)
2017-11-15 14:21:25 -08:00
Ian Storm Taylor
00819c1776 Publish
- slate-base64-serializer@0.2.9
 - slate-dev-logger@0.1.33
 - slate-html-serializer@0.4.7
 - slate-hyperscript@0.4.7
 - slate-plain-serializer@0.4.7
 - slate-prop-types@0.4.7
 - slate-react@0.10.12
 - slate-simulator@0.4.7
 - slate@0.30.7
slate@0.30.7 slate-simulator@0.4.7 slate-react@0.10.12 slate-prop-types@0.4.7 slate-plain-serializer@0.4.7 slate-hyperscript@0.4.7 slate-html-serializer@0.4.7 slate-dev-logger@0.1.33 slate-base64-serializer@0.2.9
2017-11-14 21:02:34 -08:00
来诺
72f49bf6d7 Fix image example's onPaste (#1375)
* Fix image example's onPaste

* Fix lint test

* Add custom onDrop back to support files drop

* Check event type in onDropOrPaste
2017-11-13 11:53:31 -08:00