diff --git a/docs/src/demos/Extensions/History/index.spec.js b/docs/src/demos/Extensions/History/index.spec.js new file mode 100644 index 00000000..09120c2b --- /dev/null +++ b/docs/src/demos/Extensions/History/index.spec.js @@ -0,0 +1,71 @@ +context('/api/extensions/history', () => { + beforeEach(() => { + cy.visit('/api/extensions/history') + + cy.get('.ProseMirror').window().then(window => { + const { editor } = window + editor.setContent('

Mistake

') + }) + }) + + describe('undo', () => { + it('should make the last change undone', () => { + cy.get('.ProseMirror').window().then(window => { + const { editor } = window + cy.get('.ProseMirror').should('contain', 'Mistake') + + cy.get('.demo__preview button:first').click({ force: true }) + cy.get('.ProseMirror').should('not.contain', 'Mistake') + }) + }) + }) + + describe('redo', () => { + it('should apply the last undone change again', () => { + cy.get('.ProseMirror').window().then(window => { + const { editor } = window + cy.get('.ProseMirror').should('contain', 'Mistake') + + cy.get('.demo__preview button:first').click({ force: true }) + cy.get('.ProseMirror').should('not.contain', 'Mistake') + cy.get('.demo__preview button:nth-child(2)').click({ force: true }) + cy.get('.ProseMirror').should('contain', 'Mistake') + }) + }) + }) +}) + + +// context('/api/extensions/history', () => { +// beforeEach(() => { +// cy.visit('/api/extensions/history') + +// cy.get('.ProseMirror').window().then(window => { +// const { editor } = window +// editor.setContent('

as

') +// }) +// }) + +// describe('history', () => { +// it('should make the selected text history', () => { +// cy.get('.ProseMirror').window().then(window => { +// const { editor } = window +// const html = editor.html() + +// cy.get('.ProseMirror').type('Mistake', { force: true }) +// // cy.get('.ProseMirror').should('contain', 'Mistake') +// // cy.get('.demo__preview button:first').click({ force: true }) +// // cy.get('.ProseMirror').should('contain', 'Mistake') +// }) +// }) + + +// editor.insertText('Mistake') +// cy.get('.ProseMirror h2:first').should('contain', 'Mistake') + +// // it('should toggle the selected text history', () => { +// // cy.get('.demo__preview button:first').dblclick({ force: true }) +// // cy.get('.ProseMirror em').should('not.exist') +// // }) +// }) +// }) \ No newline at end of file diff --git a/docs/src/demos/Extensions/History/index.vue b/docs/src/demos/Extensions/History/index.vue new file mode 100644 index 00000000..95b72d4d --- /dev/null +++ b/docs/src/demos/Extensions/History/index.vue @@ -0,0 +1,53 @@ + + + \ No newline at end of file diff --git a/docs/src/docPages/api/extensions/history.md b/docs/src/docPages/api/extensions/history.md index 63be4778..3ca51a22 100644 --- a/docs/src/docPages/api/extensions/history.md +++ b/docs/src/docPages/api/extensions/history.md @@ -1,58 +1,25 @@ # History -Enables history support. +This extension provides history support. All changes to the document will be tracked and can be removed with `undo`. Undone changes can be applied with `redo` again. + +## Options +*None* ## Commands | Command | Options | Description | -| ------ | ---- | ---------------- | -| undo | — | Undo the latest change. | -| redo | — | Redo the latest change. | +| ------- | ------- | ----------- | +| undo | — | Undo the last change. | +| redo | — | Redo the last change. | ## Keybindings -* Windows & Linux: `Control` + `Z` → Undo -* Windows & Linux: `Shift` + `Control` + `Z` → Redo -* macOS: `Command` + `Z` → Undo -* macOS: `Shift` + `Command` + `Z` → Redo +* Windows & Linux: `Control` + `Z` +* macOS: `Command` + `Z` + +### Redo +* Windows & Linux: `Shift` + `Control` + `Z` +* macOS: `Shift` + `Command` + `Z` + +## Source Code +[packages/extension-history/](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-history/) ## Usage -```markup - - - -``` \ No newline at end of file + \ No newline at end of file diff --git a/docs/src/links.yaml b/docs/src/links.yaml index 0f344861..947bcdb6 100644 --- a/docs/src/links.yaml +++ b/docs/src/links.yaml @@ -137,7 +137,6 @@ draft: true - title: History link: /api/extensions/history - draft: true - title: HorizontalRule link: /api/extensions/horizontal-rule draft: true