mirror of
https://github.com/fastmail/Squire.git
synced 2024-12-21 14:53:09 -05:00
Release v2.3.2
This commit is contained in:
parent
671319d316
commit
cbd8881e78
10 changed files with 59 additions and 28 deletions
|
@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file, starting fr
|
|||
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [2.3.2] - 2024-08-16
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix "pathChange" event not being fired on selection change.
|
||||
- Fix backspace at beginning of quote was deleting the contents, not just
|
||||
removing the quote.
|
||||
|
||||
## [2.3.1] - 2024-07-23
|
||||
|
||||
### Fixed
|
||||
|
|
15
dist/squire-raw.js
vendored
15
dist/squire-raw.js
vendored
|
@ -2594,7 +2594,7 @@
|
|||
this._lastAnchorNode = anchor;
|
||||
this._lastFocusNode = focus;
|
||||
newPath = anchor && focus ? anchor === focus ? this._getPath(focus) : "(selection)" : "";
|
||||
if (this._path !== newPath) {
|
||||
if (this._path !== newPath || anchor !== focus) {
|
||||
this._path = newPath;
|
||||
this.fireEvent("pathChange", {
|
||||
path: newPath
|
||||
|
@ -3549,7 +3549,7 @@
|
|||
this.decreaseListLevel(range);
|
||||
return this;
|
||||
} else if (getNearest(block, root, "BLOCKQUOTE")) {
|
||||
this.removeQuote(range);
|
||||
this.replaceWithBlankLine(range);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
@ -3900,6 +3900,17 @@
|
|||
return this.focus();
|
||||
}
|
||||
removeQuote(range) {
|
||||
this.modifyBlocks((frag) => {
|
||||
Array.from(frag.querySelectorAll("blockquote")).forEach(
|
||||
(el) => {
|
||||
replaceWith(el, empty(el));
|
||||
}
|
||||
);
|
||||
return frag;
|
||||
}, range);
|
||||
return this.focus();
|
||||
}
|
||||
replaceWithBlankLine(range) {
|
||||
this.modifyBlocks(
|
||||
() => this.createDefaultBlock([
|
||||
createElement("INPUT", {
|
||||
|
|
15
dist/squire-raw.mjs
vendored
15
dist/squire-raw.mjs
vendored
|
@ -2591,7 +2591,7 @@ var Squire = class {
|
|||
this._lastAnchorNode = anchor;
|
||||
this._lastFocusNode = focus;
|
||||
newPath = anchor && focus ? anchor === focus ? this._getPath(focus) : "(selection)" : "";
|
||||
if (this._path !== newPath) {
|
||||
if (this._path !== newPath || anchor !== focus) {
|
||||
this._path = newPath;
|
||||
this.fireEvent("pathChange", {
|
||||
path: newPath
|
||||
|
@ -3546,7 +3546,7 @@ var Squire = class {
|
|||
this.decreaseListLevel(range);
|
||||
return this;
|
||||
} else if (getNearest(block, root, "BLOCKQUOTE")) {
|
||||
this.removeQuote(range);
|
||||
this.replaceWithBlankLine(range);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
@ -3897,6 +3897,17 @@ var Squire = class {
|
|||
return this.focus();
|
||||
}
|
||||
removeQuote(range) {
|
||||
this.modifyBlocks((frag) => {
|
||||
Array.from(frag.querySelectorAll("blockquote")).forEach(
|
||||
(el) => {
|
||||
replaceWith(el, empty(el));
|
||||
}
|
||||
);
|
||||
return frag;
|
||||
}, range);
|
||||
return this.focus();
|
||||
}
|
||||
replaceWithBlankLine(range) {
|
||||
this.modifyBlocks(
|
||||
() => this.createDefaultBlock([
|
||||
createElement("INPUT", {
|
||||
|
|
18
dist/squire.js
vendored
18
dist/squire.js
vendored
File diff suppressed because one or more lines are too long
4
dist/squire.js.map
vendored
4
dist/squire.js.map
vendored
File diff suppressed because one or more lines are too long
18
dist/squire.mjs
vendored
18
dist/squire.mjs
vendored
File diff suppressed because one or more lines are too long
4
dist/squire.mjs.map
vendored
4
dist/squire.mjs.map
vendored
File diff suppressed because one or more lines are too long
1
dist/types/Editor.d.ts
vendored
1
dist/types/Editor.d.ts
vendored
|
@ -163,6 +163,7 @@ declare class Squire {
|
|||
increaseQuoteLevel(range?: Range): Squire;
|
||||
decreaseQuoteLevel(range?: Range): Squire;
|
||||
removeQuote(range?: Range): Squire;
|
||||
replaceWithBlankLine(range?: Range): Squire;
|
||||
code(): Squire;
|
||||
removeCode(): Squire;
|
||||
toggleCode(): Squire;
|
||||
|
|
2
dist/types/Editor.d.ts.map
vendored
2
dist/types/Editor.d.ts.map
vendored
File diff suppressed because one or more lines are too long
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "squire-rte",
|
||||
"version": "2.3.1",
|
||||
"version": "2.3.2",
|
||||
"description": "Squire is an HTML5 rich text editor, which provides powerful cross-browser normalisation, whilst being supremely lightweight and flexible.",
|
||||
"main": "dist/squire.mjs",
|
||||
"types": "dist/types/Squire.d.ts",
|
||||
|
|
Loading…
Reference in a new issue