From a5e9d75d0a56018b1d04dc30c06f9a0c98b56eab Mon Sep 17 00:00:00 2001 From: Kudakwashe Mupeni Date: Wed, 5 Apr 2023 12:51:19 +0200 Subject: [PATCH] chore: refactor e2e test [TOL-1036] --- cypress.config.ts | 46 + cypress/e2e/DateEditor.spec.ts | 351 ++ cypress/e2e/JsonEditor.spec.ts | 129 + cypress/e2e/LocationEditor.spec.ts | 139 + cypress/e2e/MarkdownEditorCheatsheet.spec.ts | 25 + cypress/e2e/MarkdownEditorHistory.spec.ts | 52 + .../e2e/MarkdownEditorInsertAssets.spec.ts | 44 + cypress/e2e/MarkdownEditorInsertLink.spec.ts | 219 + cypress/e2e/MarkdownEditorInsertTable.spec.ts | 120 + .../e2e/MarkdownEditorSimpleActions.spec.ts | 435 ++ .../MarkdownEditorSpecialCharacter.spec.ts | 84 + .../e2e/MarkdownEditorVoidElements.spec.ts | 38 + cypress/e2e/MarkdownEmbedExternal.spec.ts | 101 + cypress/e2e/MarkdownOrganizeLinks.spec.ts | 47 + cypress/e2e/rich-text/README.md | 26 + .../rich-text/RichTextEditor.Pasting.spec.ts | 454 ++ .../rich-text/RichTextEditor.Tracking.spec.ts | 824 ++++ cypress/e2e/rich-text/RichTextEditor.spec.ts | 2147 +++++++++ .../rich-text/RichTextEscapeInlines.spec.ts | 27 + cypress/e2e/rich-text/RichTextLists.spec.ts | 324 ++ cypress/e2e/rich-text/RichTextPage.ts | 175 + .../RichTextEditor.Pasting.spec.ts.snap | 4151 +++++++++++++++++ .../__snapshots__/RichTextEditor.spec.ts.snap | 1023 ++++ .../RichTextEscapeInlines.spec.ts.snap | 39 + .../__snapshots__/RichTextLists.spec.ts.snap | 785 ++++ .../document-mocks/documentWithLinks.js | 139 + .../invalidDocumentNormalizable.js | 410 ++ .../e2e/rich-text/fixtures/msWordOnline.js | 3 + .../e2e/rich-text/getting-clipboard-data.gif | Bin 0 -> 311430 bytes cypress/e2e/rich-text/pasting-into-test.gif | Bin 0 -> 363640 bytes cypress/plugins/index.ts | 19 + cypress/support/e2e.js | 21 + 32 files changed, 12397 insertions(+) create mode 100644 cypress.config.ts create mode 100644 cypress/e2e/DateEditor.spec.ts create mode 100644 cypress/e2e/JsonEditor.spec.ts create mode 100644 cypress/e2e/LocationEditor.spec.ts create mode 100644 cypress/e2e/MarkdownEditorCheatsheet.spec.ts create mode 100644 cypress/e2e/MarkdownEditorHistory.spec.ts create mode 100644 cypress/e2e/MarkdownEditorInsertAssets.spec.ts create mode 100644 cypress/e2e/MarkdownEditorInsertLink.spec.ts create mode 100644 cypress/e2e/MarkdownEditorInsertTable.spec.ts create mode 100644 cypress/e2e/MarkdownEditorSimpleActions.spec.ts create mode 100644 cypress/e2e/MarkdownEditorSpecialCharacter.spec.ts create mode 100644 cypress/e2e/MarkdownEditorVoidElements.spec.ts create mode 100644 cypress/e2e/MarkdownEmbedExternal.spec.ts create mode 100644 cypress/e2e/MarkdownOrganizeLinks.spec.ts create mode 100644 cypress/e2e/rich-text/README.md create mode 100644 cypress/e2e/rich-text/RichTextEditor.Pasting.spec.ts create mode 100644 cypress/e2e/rich-text/RichTextEditor.Tracking.spec.ts create mode 100644 cypress/e2e/rich-text/RichTextEditor.spec.ts create mode 100644 cypress/e2e/rich-text/RichTextEscapeInlines.spec.ts create mode 100644 cypress/e2e/rich-text/RichTextLists.spec.ts create mode 100644 cypress/e2e/rich-text/RichTextPage.ts create mode 100644 cypress/e2e/rich-text/__snapshots__/RichTextEditor.Pasting.spec.ts.snap create mode 100644 cypress/e2e/rich-text/__snapshots__/RichTextEditor.spec.ts.snap create mode 100644 cypress/e2e/rich-text/__snapshots__/RichTextEscapeInlines.spec.ts.snap create mode 100644 cypress/e2e/rich-text/__snapshots__/RichTextLists.spec.ts.snap create mode 100644 cypress/e2e/rich-text/document-mocks/documentWithLinks.js create mode 100644 cypress/e2e/rich-text/document-mocks/invalidDocumentNormalizable.js create mode 100644 cypress/e2e/rich-text/fixtures/msWordOnline.js create mode 100644 cypress/e2e/rich-text/getting-clipboard-data.gif create mode 100644 cypress/e2e/rich-text/pasting-into-test.gif create mode 100644 cypress/plugins/index.ts create mode 100644 cypress/support/e2e.js diff --git a/cypress.config.ts b/cypress.config.ts new file mode 100644 index 000000000..058efddb8 --- /dev/null +++ b/cypress.config.ts @@ -0,0 +1,46 @@ +import { defineConfig } from 'cypress'; + +const task = { + log(message: string) { + //eslint-disable-next-line no-console + console.log(message); + + return null; + }, + table(message: string) { + //eslint-disable-next-line no-console + console.table(message); + + return null; + }, +}; + +export default defineConfig({ + retries: { + runMode: 2, + openMode: 0, + }, + numTestsKeptInMemory: 1, + e2e: { + // We've imported your old cypress plugins here. + // You may want to clean this up later by importing these. + setupNodeEvents(_on, config) { + return config; + }, + baseUrl: 'http://localhost:9000', + specPattern: 'cypress/e2e/**/*.spec.*', + excludeSpecPattern: ['**/__snapshots__/*', '**/__image_snapshots__/*'], + }, + component: { + setupNodeEvents(on, config) { + on('task', task); + return config; + }, + devServer: { + framework: 'create-react-app', + bundler: 'webpack', + }, + specPattern: 'cypress/component/**/*.spec.{js,ts,jsx,tsx}', + excludeSpecPattern: ['**/__snapshots__/*', '**/__image_snapshots__/*'], + }, +}); diff --git a/cypress/e2e/DateEditor.spec.ts b/cypress/e2e/DateEditor.spec.ts new file mode 100644 index 000000000..866e80694 --- /dev/null +++ b/cypress/e2e/DateEditor.spec.ts @@ -0,0 +1,351 @@ +describe('Date Editor', () => { + // February 15, 2019 timestamp + const now = new Date(2019, 1, 15); + + const selectors = { + getDateInput: () => { + return cy.findByTestId('cf-ui-datepicker-input'); + }, + getCalendarTrigger: () => { + return cy.findByTestId('cf-ui-datepicker-button'); + }, + getTimeInput: () => { + return cy.findByTestId('time-input'); + }, + getTimezoneInput: () => { + return cy.findByTestId('timezone-input'); + }, + getClearBtn: () => { + return cy.findByTestId('date-clear'); + }, + getCalendar: () => { + return cy.get('.rdp'); + }, + getCalendarMonth: () => { + return cy.get('.rdp select[aria-label="Month: "]'); + }, + getCalendarYear: () => { + return cy.get('.rdp select[aria-label="Year: "]'); + }, + getCalendarTodayDate: () => { + return cy.get('.rdp .rdp-day_today'); + }, + getCalendarSelectedDate: () => { + return cy.get('.rdp .rdp-day_selected'); + }, + }; + + const getToday = () => { + const month = now.getMonth(); + const year = now.getFullYear(); + const date = now.getDate(); + return { + month, + year, + date, + }; + }; + + const openPage = () => { + cy.visit('/date'); + cy.findByTestId('date-editor-integration-test').should('be.visible'); + }; + + beforeEach(() => { + cy.clock(now.getTime()); + }); + + describe('disabled state', () => { + it('all fields should be disabled', () => { + cy.setInitialDisabled(true); + openPage(); + + selectors.getDateInput().should('be.disabled'); + selectors.getTimeInput().should('be.disabled'); + selectors.getTimezoneInput().should('be.disabled'); + selectors.getClearBtn().should('not.exist'); + }); + }); + + describe('default configuration', () => { + it('should read initial value', () => { + cy.setInitialValue('2018-01-03T05:53+03:00'); + openPage(); + + selectors.getDateInput().should('have.value', '03 Jan 2018'); + selectors.getTimeInput().should('have.value', '05:53'); + selectors.getTimezoneInput().should('have.value', '+03:00'); + }); + + it('should render date, time (24 format) and timezone inputs by default', () => { + openPage(); + + selectors.getDateInput().should('be.visible').should('have.value', ''); + selectors + .getTimeInput() + .should('be.visible') + .should('have.attr', 'date-time-type', '24') + .should('have.attr', 'placeholder', '00:00') + .should('have.value', '00:00'); + // @TODO: is this value affected by daytime savings? + selectors.getTimezoneInput().should('be.visible').should('have.value', '+01:00'); + }); + + it('calendar should show current year, month and date', () => { + openPage(); + const { year, month, date } = getToday(); + + selectors.getCalendarTrigger().click(); + + selectors.getCalendar().should('be.visible'); + selectors.getCalendarYear().should('have.value', year.toString()); + selectors.getCalendarMonth().should('have.value', month.toString()); + selectors.getCalendarTodayDate().should('have.text', date.toString()); + selectors.getCalendarSelectedDate().should('not.exist'); + }); + + it('correct actions are called when user interacts with editor', () => { + openPage(); + selectors.getTimezoneInput().select('+08:00').blur().should('have.value', '+08:00'); + + selectors.getCalendarTrigger().click(); + selectors.getCalendarTodayDate().click(); + selectors.getDateInput().should('have.value', '15 Feb 2019'); + + selectors.getTimeInput().focus().type('15:00').blur().should('have.value', '15:00'); + + selectors.getClearBtn().click(); + + // it is necessary cause we mock cypress.clock + cy.tick(1000); + + selectors.getDateInput().should('have.value', ''); + selectors.getTimeInput().should('have.value', '00:00'); + selectors.getTimezoneInput().should('have.value', '+00:00'); + selectors.getClearBtn().should('not.exist'); + + cy.editorEvents().should('deep.equal', [ + { id: 6, type: 'onValueChanged', value: undefined }, + { id: 5, type: 'removeValue', value: undefined }, + { id: 4, type: 'onValueChanged', value: '2019-02-15T15:00+08:00' }, + { id: 3, type: 'setValue', value: '2019-02-15T15:00+08:00' }, + { id: 2, type: 'onValueChanged', value: '2019-02-15T00:00+08:00' }, + { id: 1, type: 'setValue', value: '2019-02-15T00:00+08:00' }, + ]); + }); + + it('should reset field state on external change', () => { + cy.setInitialValue('1990-01-03T22:53+03:00'); + + openPage(); + + selectors.getDateInput().should('have.value', '03 Jan 1990'); + selectors.getTimeInput().should('have.value', '22:53'); + selectors.getTimezoneInput().should('have.value', '+03:00'); + + cy.setValueExternal('1992-01-03T21:40+05:00'); + + cy.wait(500); + + selectors.getDateInput().should('have.value', '03 Jan 1992'); + selectors.getTimeInput().should('have.value', '21:40'); + selectors.getTimezoneInput().should('have.value', '+05:00'); + }); + + it('should parse values in time input', () => { + openPage(); + selectors.getTimeInput().should('have.value', '00:00'); + + const pairs = [ + ['3 PM', '15:00'], + ['1:01', '01:01'], + ['5', '05:00'], + ['99', '00:00'], + ['asdasd', '00:00'], + ['9:43 AM', '09:43'], + ]; + + pairs.forEach((pair) => { + selectors.getTimeInput().type(pair[0]).blur().should('have.value', pair[1]); + }); + }); + + it('should show the correct date regardless of the time and timezone #1', () => { + cy.setInitialValue('2022-11-01T00:00+02:00'); + openPage(); + + selectors.getDateInput().should('have.value', '01 Nov 2022'); + selectors.getTimeInput().should('have.value', '00:00'); + selectors.getTimezoneInput().should('have.value', '+02:00'); + + selectors.getCalendarTrigger().click(); + + selectors.getCalendar().should('be.visible'); + selectors.getCalendarYear().should('have.value', '2022'); + selectors.getCalendarMonth().should('have.value', '10'); + selectors.getCalendarSelectedDate().should('have.text', '1'); + }); + + it('should show the correct date regardless of the time and timezone #2', () => { + cy.setInitialValue('2022-11-01T00:00+12:00'); + openPage(); + + selectors.getDateInput().should('have.value', '01 Nov 2022'); + selectors.getTimeInput().should('have.value', '00:00'); + selectors.getTimezoneInput().should('have.value', '+12:00'); + + selectors.getCalendarTrigger().click(); + + selectors.getCalendar().should('be.visible'); + selectors.getCalendarYear().should('have.value', '2022'); + selectors.getCalendarMonth().should('have.value', '10'); + selectors.getCalendarSelectedDate().should('have.text', '1'); + }); + }); + + describe('without timezone and with AM/PM', () => { + beforeEach(() => { + cy.setInstanceParams({ + format: 'time', + ampm: '12', + }); + }); + + it('should read initial value', () => { + cy.setInitialValue('1990-01-03T22:53+03:00'); + openPage(); + + selectors.getDateInput().should('have.value', '03 Jan 1990'); + selectors.getTimeInput().should('have.value', '10:53 PM'); + selectors.getTimezoneInput().should('not.exist'); + + selectors.getCalendarTrigger().click(); + + selectors.getCalendar().should('be.visible'); + selectors.getCalendarYear().should('have.value', '1990'); + selectors.getCalendarMonth().should('have.value', '0'); + selectors.getCalendarSelectedDate().should('have.text', '3'); + }); + + it('should parse values in time input', () => { + openPage(); + selectors.getTimeInput().should('have.value', '12:00 AM'); + + const pairs = [ + ['3 PM', '03:00 PM'], + ['1:01', '01:01 AM'], + ['5', '05:00 AM'], + ['99', '12:00 AM'], + ['asdasd', '12:00 AM'], + ['9:43', '09:43 AM'], + ]; + + pairs.forEach((pair) => { + selectors.getTimeInput().type(pair[0]).blur().should('have.value', pair[1]); + }); + }); + + it('correct actions are called when user interacts with editor', () => { + openPage(); + + selectors.getCalendarTrigger().click(); + selectors.getCalendarTodayDate().click(); + selectors.getDateInput().should('have.value', '15 Feb 2019'); + + selectors.getTimeInput().focus().type('3:00 PM').blur().should('have.value', '03:00 PM'); + + selectors.getClearBtn().click(); + + // it is necessary cause we mock cypress.clock + cy.tick(1000); + + selectors.getDateInput().should('have.value', ''); + selectors.getTimeInput().should('have.value', '12:00 AM'); + selectors.getClearBtn().should('not.exist'); + + cy.editorEvents().should('deep.equal', [ + { id: 6, type: 'onValueChanged', value: undefined }, + { id: 5, type: 'removeValue', value: undefined }, + { id: 4, type: 'onValueChanged', value: '2019-02-15T15:00' }, + { id: 3, type: 'setValue', value: '2019-02-15T15:00' }, + { id: 2, type: 'onValueChanged', value: '2019-02-15T00:00' }, + { id: 1, type: 'setValue', value: '2019-02-15T00:00' }, + ]); + }); + + it('should reset field state on external change', () => { + cy.setInitialValue('1990-01-03T22:53'); + + openPage(); + + selectors.getDateInput().should('have.value', '03 Jan 1990'); + selectors.getTimeInput().should('have.value', '10:53 PM'); + + cy.setValueExternal('1992-01-03T21:40'); + + cy.wait(500); + + selectors.getDateInput().should('have.value', '03 Jan 1992'); + selectors.getTimeInput().should('have.value', '09:40 PM'); + }); + }); + + describe('without timezone and time', () => { + beforeEach(() => { + cy.setInstanceParams({ + format: 'dateonly', + }); + }); + + it('should read initial value', () => { + cy.setInitialValue('1990-01-03T22:53'); + openPage(); + + selectors.getDateInput().should('have.value', '03 Jan 1990'); + selectors.getTimeInput().should('not.exist'); + selectors.getTimezoneInput().should('not.exist'); + + selectors.getCalendarTrigger().click(); + + selectors.getCalendar().should('be.visible'); + selectors.getCalendarYear().should('have.value', '1990'); + selectors.getCalendarMonth().should('have.value', '0'); + selectors.getCalendarSelectedDate().should('have.text', '3'); + }); + + it('correct actions are called when user interacts with editor', () => { + openPage(); + + selectors.getCalendarTrigger().click(); + selectors.getCalendarTodayDate().click(); + selectors.getDateInput().should('have.value', '15 Feb 2019'); + + selectors.getClearBtn().click(); + + // it is necessary cause we mock cypress.clock + cy.tick(1000); + + selectors.getDateInput().should('have.value', ''); + selectors.getClearBtn().should('not.exist'); + + cy.editorEvents().should('deep.equal', [ + { id: 4, type: 'onValueChanged', value: undefined }, + { id: 3, type: 'removeValue', value: undefined }, + { id: 2, type: 'onValueChanged', value: '2019-02-15' }, + { id: 1, type: 'setValue', value: '2019-02-15' }, + ]); + }); + + it('should reset field state on external change', () => { + cy.setInitialValue('1990-01-03'); + + openPage(); + + selectors.getDateInput().should('have.value', '03 Jan 1990'); + + cy.setValueExternal('1992-01-03'); + + selectors.getDateInput().should('have.value', '03 Jan 1992'); + }); + }); +}); diff --git a/cypress/e2e/JsonEditor.spec.ts b/cypress/e2e/JsonEditor.spec.ts new file mode 100644 index 000000000..c9ebcd701 --- /dev/null +++ b/cypress/e2e/JsonEditor.spec.ts @@ -0,0 +1,129 @@ +describe('JSON Editor', () => { + const selectors = { + getInput: () => { + return cy.get('[data-test-id="json-editor-code-mirror"] .cm-content'); + }, + getCode: () => { + return cy.get('[data-test-id="json-editor-code-mirror"] .cm-editor'); + }, + getRedoButton: () => { + return cy.findByTestId('json-editor-redo'); + }, + getUndoButton: () => { + return cy.findByTestId('json-editor-undo'); + }, + getValidationError: () => { + return cy.findByTestId('json-editor.invalid-json'); + }, + }; + + const type = (value) => { + selectors.getInput().type(value, { force: true }); + cy.wait(500); + }; + + const checkCode = (value) => { + selectors.getCode().should(($div) => { + expect($div.get(0).innerText).to.eq(value); + }); + }; + + beforeEach(() => { + cy.visit('/json'); + cy.findByTestId('json-editor-integration-test').should('be.visible'); + }); + + it('should set and clear values properly', () => { + cy.editorEvents().should('deep.equal', []); + + selectors.getInput().should('have.value', ''); + + type('{}'); + + cy.editorEvents().should('deep.equal', [ + { id: 2, type: 'onValueChanged', value: {} }, + { id: 1, type: 'setValue', value: {} }, + ]); + + type('{backspace}{backspace}'); + + cy.editorEvents().should('deep.equal', [ + { id: 4, type: 'onValueChanged', value: undefined }, + { id: 3, type: 'removeValue', value: undefined }, + { id: 2, type: 'onValueChanged', value: {} }, + { id: 1, type: 'setValue', value: {} }, + ]); + }); + + it('should undo and redo properly', () => { + selectors.getUndoButton().should('be.disabled'); + selectors.getRedoButton().should('be.disabled'); + + type('{ "foo": '); + type('"bar" }'); + + selectors.getUndoButton().should('not.be.disabled'); + selectors.getRedoButton().should('be.disabled'); + + selectors.getUndoButton().click(); + selectors.getRedoButton().should('not.be.disabled'); + + checkCode('{ "foo": "bar" '); + + selectors.getUndoButton().click(); + + checkCode('{ "foo": '); + + selectors.getRedoButton().click().click(); + + selectors.getRedoButton().should('be.disabled'); + + checkCode('{ "foo": "bar" }'); + cy.wait(500); + + cy.editorEvents().should('deep.equal', [ + { id: 4, type: 'onValueChanged', value: { foo: 'bar' } }, + { id: 3, type: 'setValue', value: { foo: 'bar' } }, + { id: 2, type: 'onValueChanged', value: { foo: 'bar' } }, + { id: 1, type: 'setValue', value: { foo: 'bar' } }, + ]); + }); + + it('should reset field state on external change', () => { + type('{"foo": {'); + type('"bar": "xyz" }}'); + + cy.editorEvents().should('deep.equal', [ + { id: 2, type: 'onValueChanged', value: { foo: { bar: 'xyz' } } }, + { id: 1, type: 'setValue', value: { foo: { bar: 'xyz' } } }, + ]); + + cy.setValueExternal({ something: 'new' }); + cy.wait(500); + + cy.editorEvents().should('deep.equal', [ + { id: 3, type: 'onValueChanged', value: { something: 'new' } }, + { id: 2, type: 'onValueChanged', value: { foo: { bar: 'xyz' } } }, + { id: 1, type: 'setValue', value: { foo: { bar: 'xyz' } } }, + ]); + + selectors.getCode().should(($div) => { + expect($div.get(0).innerText).to.include('something'); + }); + + selectors.getRedoButton().should('be.disabled'); + selectors.getUndoButton().should('be.disabled'); + }); + + it('should show validation warning if object is invalid', () => { + selectors.getValidationError().should('not.exist'); + + type('{ "foo": '); + + selectors.getValidationError().should('exist').should('have.text', 'This is not valid JSON'); + + type('"bar" }'); + + selectors.getValidationError().should('not.exist'); + }); +}); diff --git a/cypress/e2e/LocationEditor.spec.ts b/cypress/e2e/LocationEditor.spec.ts new file mode 100644 index 000000000..51c1956c7 --- /dev/null +++ b/cypress/e2e/LocationEditor.spec.ts @@ -0,0 +1,139 @@ +describe('Location Editor', () => { + const LOCATION = { + address: 'Max-Urich-Straße 1, 13355 Berlin, Germany', + value: { lon: 13.38381, lat: 52.53885 }, + }; + + const selectors = { + getAddressRadio: () => { + return cy.findByTestId('location-editor-address-radio').find('input'); + }, + getCoordinatesRadio: () => { + return cy.findByTestId('location-editor-coordinates-radio').find('input'); + }, + getSearchInput: () => { + return cy.findByTestId('location-editor-search'); + }, + getClearBtn: () => { + return cy.findByTestId('location-editor-clear'); + }, + getLatitudeInput: () => { + return cy.findByTestId('location-editor-latitude'); + }, + getLongitudeInput: () => { + return cy.findByTestId('location-editor-longitude'); + }, + getLocationSuggestion: () => { + return cy.findByTestId('location-editor-suggestion'); + }, + getValidationError: () => { + return cy.findByTestId('location-editor-not-found'); + }, + }; + + beforeEach(() => { + cy.setGoogleMapsKey(); + cy.visit('/location'); + cy.findByTestId('location-editor-integration-test').should('be.visible'); + }); + + afterEach(() => { + cy.setInitialValue(undefined); + cy.setInitialDisabled(undefined); + }); + + it('should have a proper default state', () => { + cy.editorEvents().should('deep.equal', []); + + selectors.getAddressRadio().should('be.checked'); + selectors.getCoordinatesRadio().should('not.be.checked'); + selectors.getSearchInput().should('be.empty'); + selectors.getClearBtn().should('exist'); + + selectors.getCoordinatesRadio().click(); + + selectors.getLongitudeInput().should('be.empty'); + selectors.getLatitudeInput().should('be.empty'); + selectors.getClearBtn().should('exist'); + + cy.editorEvents().should('deep.equal', []); + }); + + it('should set value after latitude and longitude change', () => { + cy.mockGoogleMapsResponse(require('../fixtures/maps-by-coordinates.json')); + cy.editorEvents().should('deep.equal', []); + + selectors.getCoordinatesRadio().click(); + + selectors.getLatitudeInput().type(LOCATION.value.lat.toString(), { delay: 0 }); + cy.wait(500); + + cy.editorEvents().should('deep.equal', [ + { id: 2, type: 'onValueChanged', value: { lon: 0, lat: LOCATION.value.lat } }, + { id: 1, type: 'setValue', value: { lon: 0, lat: LOCATION.value.lat } }, + ]); + + selectors.getLongitudeInput().type(LOCATION.value.lon.toString(), { delay: 0 }); + + selectors.getAddressRadio().click(); + cy.wait(500); + + selectors.getSearchInput().should('have.value', LOCATION.address); + + cy.editorEvents().should('have.length', 4); + cy.editorEvents(2).should('deep.equal', [ + { id: 4, type: 'onValueChanged', value: LOCATION.value }, + { id: 3, type: 'setValue', value: LOCATION.value }, + ]); + + selectors.getSearchInput().clear(); + + cy.wait(500); + + cy.editorEvents().should('have.length', 6); + cy.editorEvents(2).should('deep.equal', [ + { id: 6, type: 'onValueChanged', value: undefined }, + { id: 5, type: 'removeValue', value: undefined }, + ]); + }); + + it('should set value after using search input', () => { + cy.mockGoogleMapsResponse(require('../fixtures/maps-by-address.json')); + cy.editorEvents().should('deep.equal', []); + + selectors.getSearchInput().type(LOCATION.address); + cy.wait(1000); + selectors.getLocationSuggestion().click(); + cy.wait(500); + + selectors.getCoordinatesRadio().click(); + + selectors.getLatitudeInput().should('have.value', LOCATION.value.lat.toString()); + selectors.getLongitudeInput().should('have.value', LOCATION.value.lon.toString()); + + cy.editorEvents().should('deep.equal', [ + { id: 2, type: 'onValueChanged', value: LOCATION.value }, + { id: 1, type: 'setValue', value: LOCATION.value }, + ]); + + selectors.getAddressRadio().click(); + selectors.getClearBtn().click(); + cy.wait(500); + + cy.editorEvents().should('have.length', 4); + cy.editorEvents(2).should('deep.equal', [ + { id: 4, type: 'onValueChanged', value: undefined }, + { id: 3, type: 'removeValue', value: undefined }, + ]); + }); + + it('should disable all elements if isDisabled is true', () => { + cy.setInitialDisabled(true); + cy.reload(); + + selectors.getSearchInput().should('be.disabled'); + selectors.getAddressRadio().should('be.disabled'); + selectors.getCoordinatesRadio().should('be.disabled'); + selectors.getClearBtn().should('be.disabled'); + }); +}); diff --git a/cypress/e2e/MarkdownEditorCheatsheet.spec.ts b/cypress/e2e/MarkdownEditorCheatsheet.spec.ts new file mode 100644 index 000000000..63a977b39 --- /dev/null +++ b/cypress/e2e/MarkdownEditorCheatsheet.spec.ts @@ -0,0 +1,25 @@ +describe('Markdown Editor / Cheatsheet Dialog', () => { + const selectors = { + getDialogTitle() { + return cy.findByTestId('dialog-title').find('h2'); + }, + getOpenCheatsheetButton() { + return cy.findByTestId('open-markdown-cheatsheet-button'); + }, + getCheatsheetContent() { + return cy.findByTestId('markdown-cheatsheet-dialog-content'); + }, + }; + + beforeEach(() => { + cy.visit('/markdown'); + cy.wait(500); + cy.findByTestId('markdown-editor').should('be.visible'); + }); + + it('should be visible after user clicks on help button', () => { + selectors.getOpenCheatsheetButton().click(); + selectors.getCheatsheetContent().should('exist'); + selectors.getDialogTitle().should('have.text', 'Markdown formatting help'); + }); +}); diff --git a/cypress/e2e/MarkdownEditorHistory.spec.ts b/cypress/e2e/MarkdownEditorHistory.spec.ts new file mode 100644 index 000000000..dc112ac15 --- /dev/null +++ b/cypress/e2e/MarkdownEditorHistory.spec.ts @@ -0,0 +1,52 @@ +describe('Markdown Editor / History', () => { + const selectors = { + getInput: () => { + return cy.get('[data-test-id="markdown-textarea"] [contenteditable]'); + }, + getToggleAdditionalActionsButton: () => { + return cy.findByTestId('markdown-action-button-toggle-additional'); + }, + getRedoButton() { + return cy.findByTestId('markdown-action-button-redo'); + }, + getUndoButton() { + return cy.findByTestId('markdown-action-button-undo'); + }, + }; + + const type = (value) => { + return selectors.getInput().focus().type(value, { force: true }); + }; + + const checkValue = (value) => { + cy.getMarkdownInstance().then((markdown) => { + expect(markdown.getContent()).eq(value); + }); + }; + + beforeEach(() => { + cy.visit('/markdown'); + cy.wait(500); + cy.findByTestId('markdown-editor').should('be.visible'); + selectors.getToggleAdditionalActionsButton().click(); + }); + + it('should redo and undo properly', () => { + checkValue(''); + type('Hello!{enter}'); + cy.wait(1500); + type('This is new sentence!'); + + checkValue('Hello!\nThis is new sentence!'); + + selectors.getUndoButton().click(); + checkValue('Hello!\n'); + selectors.getUndoButton().click(); + checkValue(''); + + selectors.getRedoButton().click(); + checkValue('Hello!\n'); + selectors.getRedoButton().click(); + checkValue('Hello!\nThis is new sentence!'); + }); +}); diff --git a/cypress/e2e/MarkdownEditorInsertAssets.spec.ts b/cypress/e2e/MarkdownEditorInsertAssets.spec.ts new file mode 100644 index 000000000..20b9954d7 --- /dev/null +++ b/cypress/e2e/MarkdownEditorInsertAssets.spec.ts @@ -0,0 +1,44 @@ +describe('Markdown Editor / Insert Assets', () => { + const selectors = { + getInput: () => { + return cy.get('[data-test-id="markdown-textarea"] [contenteditable]'); + }, + getInsertMediaDropdown: () => { + return cy.findByTestId('markdownEditor.insertMediaDropdownTrigger'); + }, + getInsertNewAssetButton: () => { + return cy.findByTestId('markdownEditor.uploadAssetsAndLink'); + }, + getInsertExistingAssetButton: () => { + return cy.findByTestId('markdownEditor.linkExistingAssets'); + }, + }; + + const checkValue = (value) => { + cy.getMarkdownInstance().then((markdown) => { + expect(markdown.getContent()).eq(value); + }); + }; + + beforeEach(() => { + cy.visit('/markdown'); + cy.wait(500); + cy.findByTestId('markdown-editor').should('be.visible'); + }); + + it('should insert a new asset', () => { + selectors.getInsertMediaDropdown().click(); + selectors.getInsertNewAssetButton().click(); + checkValue( + '![dog](//images.ctfassets.net/b04hhmxrptgr/6oYURL50Ddai6jRCboSB7u/b1a3768d6d987f3f6110a41175f4d7d3/dog.jpg)' + ); + }); + + it('should insert an existing asset', () => { + selectors.getInsertMediaDropdown().click(); + selectors.getInsertExistingAssetButton().click(); + checkValue( + '![test](//images.ctfassets.net/5uld3crqmsuo/12XMPLSTs2vmmjw6xTlCDg/a7099dad14319e0f2908e99c9a2d6c62/Terrier_mixed-breed_dog.jpg)' + ); + }); +}); diff --git a/cypress/e2e/MarkdownEditorInsertLink.spec.ts b/cypress/e2e/MarkdownEditorInsertLink.spec.ts new file mode 100644 index 000000000..5d02b5da3 --- /dev/null +++ b/cypress/e2e/MarkdownEditorInsertLink.spec.ts @@ -0,0 +1,219 @@ +describe('Markdown Editor / Insert Link Dialog', () => { + const selectors = { + getInput: () => { + return cy.get('[data-test-id="markdown-textarea"] [contenteditable]'); + }, + getDialogTitle() { + return cy.findByTestId('dialog-title').find('h2'); + }, + getInsertDialogButton() { + return cy.findByTestId('markdown-action-button-link'); + }, + getModalContent() { + return cy.findByTestId('insert-link-modal'); + }, + inputs: { + getLinkTextInput() { + return cy.findByTestId('link-text-field'); + }, + getTargetUrlInput() { + return cy.findByTestId('target-url-field'); + }, + getLinkTitle() { + return cy.findByTestId('link-title-field'); + }, + }, + getConfirmButton() { + return cy.findByTestId('insert-link-confirm'); + }, + getCancelButton() { + return cy.findByTestId('insert-link-cancel'); + }, + getInvalidMessage() { + return cy.findByText('Invalid URL'); + }, + }; + + const type = (value) => { + return selectors.getInput().focus().type(value, { force: true }); + }; + + const clearAll = () => { + cy.getMarkdownInstance().then((markdown) => { + markdown.clear(); + }); + }; + + const checkValue = (value) => { + cy.getMarkdownInstance().then((markdown) => { + expect(markdown.getContent()).eq(value); + }); + }; + + const selectBackwards = (skip, len) => { + cy.getMarkdownInstance().then((markdown) => { + markdown.selectBackwards(skip, len); + }); + }; + + beforeEach(() => { + cy.visit('/markdown'); + cy.viewport('macbook-16'); + cy.wait(500); + cy.findByTestId('markdown-editor').should('be.visible'); + }); + + it('should have correct title', () => { + selectors.getInsertDialogButton().click(); + selectors.getDialogTitle().should('have.text', 'Insert link'); + }); + + it('should insert nothing if click on cancel button or close window with ESC', () => { + checkValue(''); + + // close with button + selectors.getInsertDialogButton().click(); + selectors.getCancelButton().click(); + selectors.getModalContent().should('not.exist'); + checkValue(''); + + // close with esc + selectors.getInsertDialogButton().click(); + selectors.inputs.getTargetUrlInput().type('{esc}'); + selectors.getModalContent().should('not.exist'); + checkValue(''); + }); + + it('should show validation error when url is incorrect', () => { + checkValue(''); + + selectors.getInsertDialogButton().click(); + + // type correct value + + const correctValues = ['https://contentful.com', 'http://google.com', 'ftp://somefile']; + + correctValues.forEach((value) => { + selectors.inputs.getTargetUrlInput().clear().type(value); + selectors.getInvalidMessage().should('not.exist'); + selectors.getConfirmButton().should('not.be.disabled'); + }); + + // clear and type incorrect value + + const incorrectValues = [ + 'does not look like an url, bro', + 'htp://contentful.com', + 'http:/oops.com', + ]; + + incorrectValues.forEach((value) => { + selectors.inputs.getTargetUrlInput().clear().type(value); + selectors.getInvalidMessage().should('be.visible'); + selectors.getConfirmButton().should('be.disabled'); + }); + }); + + describe('when there is no text selected', () => { + it('should have correct default state', () => { + checkValue(''); + + selectors.getInsertDialogButton().click(); + + selectors.inputs + .getLinkTextInput() + .should('be.visible') + .should('have.value', '') + .should('not.be.disabled'); + selectors.inputs.getTargetUrlInput().should('be.visible').should('have.value', ''); + + selectors.inputs.getLinkTitle().should('be.visible').should('have.value', ''); + + selectors.getConfirmButton().should('be.disabled'); + selectors.getInvalidMessage().should('not.exist'); + }); + + it('should paste link in a correct format', () => { + checkValue(''); + + // with all fields provided + selectors.getInsertDialogButton().click(); + selectors.inputs.getLinkTextInput().type('best headless CMS ever'); + selectors.inputs.getTargetUrlInput().clear().type('https://contentful.com'); + selectors.inputs.getLinkTitle().clear().type('Contentful'); + + selectors.getConfirmButton().click(); + selectors.getModalContent().should('not.exist'); + checkValue('[best headless CMS ever](https://contentful.com "Contentful")'); + + // without title field + clearAll(); + checkValue(''); + selectors.getInsertDialogButton().click(); + selectors.inputs.getLinkTextInput().type('best headless CMS ever'); + selectors.inputs.getTargetUrlInput().clear().type('https://contentful.com'); + selectors.getConfirmButton().click(); + selectors.getModalContent().should('not.exist'); + checkValue('[best headless CMS ever](https://contentful.com)'); + + // only with url + clearAll(); + checkValue(''); + selectors.getInsertDialogButton().click(); + selectors.inputs.getLinkTextInput().clear(); + selectors.inputs.getTargetUrlInput().clear().type('https://contentful.com'); + selectors.getConfirmButton().click(); + selectors.getModalContent().should('not.exist'); + checkValue(''); + }); + }); + + describe('when there is text selected', () => { + it('should have correct default state', () => { + type('check out Contentful'); + selectBackwards(0, 10); + selectors.getInsertDialogButton().click(); + + selectors.inputs + .getLinkTextInput() + .should('be.visible') + .should('have.value', 'Contentful') + .should('be.disabled'); + selectors.inputs + .getTargetUrlInput() + .should('be.visible') + .should('have.value', '') + .should('have.focus'); + selectors.inputs.getLinkTitle().should('be.visible').should('have.value', ''); + + selectors.getConfirmButton().should('be.disabled'); + selectors.getInvalidMessage().should('not.exist'); + }); + + it('should paste link in a correct format', () => { + type('check out Contentful'); + selectBackwards(0, 10); + + // with all fields provided + + selectors.getInsertDialogButton().click(); + selectors.inputs.getTargetUrlInput().clear().type('https://contentful.com'); + selectors.inputs.getLinkTitle().clear().type('The best headless CMS ever'); + + selectors.getConfirmButton().click(); + selectors.getModalContent().should('not.exist'); + checkValue('check out [Contentful](https://contentful.com "The best headless CMS ever")'); + + // without title field + + clearAll(); + type('check out Contentful'); + selectBackwards(0, 10); + selectors.getInsertDialogButton().click(); + selectors.inputs.getTargetUrlInput().clear().type('https://contentful.com'); + selectors.getConfirmButton().click(); + selectors.getModalContent().should('not.exist'); + checkValue('check out [Contentful](https://contentful.com)'); + }); + }); +}); diff --git a/cypress/e2e/MarkdownEditorInsertTable.spec.ts b/cypress/e2e/MarkdownEditorInsertTable.spec.ts new file mode 100644 index 000000000..11a117ede --- /dev/null +++ b/cypress/e2e/MarkdownEditorInsertTable.spec.ts @@ -0,0 +1,120 @@ +describe('Markdown Editor / Insert Table Dialog', () => { + const selectors = { + getInput: () => { + return cy.get('[data-test-id="markdown-textarea"] [contenteditable]'); + }, + getDialogTitle() { + return cy.findByTestId('dialog-title').find('h2'); + }, + getToggleAdditionalActionsButton: () => { + return cy.findByTestId('markdown-action-button-toggle-additional'); + }, + getInsertTableButton() { + return cy.findByTestId('markdown-action-button-table'); + }, + getModalContent() { + return cy.findByTestId('insert-table-modal'); + }, + inputs: { + getRowsInput() { + return cy.findByTestId('insert-table-rows-number-field'); + }, + getColsInput() { + return cy.findByTestId('insert-table-columns-number-field'); + }, + }, + getConfirmButton() { + return cy.findByTestId('insert-table-confirm'); + }, + getCancelButton() { + return cy.findByTestId('insert-table-cancel'); + }, + }; + + const clearAll = () => { + cy.getMarkdownInstance().then((markdown) => { + markdown.clear(); + }); + }; + + const checkValue = (value) => { + cy.getMarkdownInstance().then((markdown) => { + expect(markdown.getContent()).eq(value); + }); + }; + + beforeEach(() => { + cy.visit('/markdown'); + cy.wait(500); + cy.findByTestId('markdown-editor').should('be.visible'); + }); + + it('should have correct title', () => { + selectors.getToggleAdditionalActionsButton().click(); + selectors.getInsertTableButton().click({ force: true }); + selectors.getDialogTitle().should('have.text', 'Insert table'); + }); + + it('should insert nothing if click on cancel button or close window with ESC', () => { + checkValue(''); + selectors.getToggleAdditionalActionsButton().click(); + + // close with button + selectors.getInsertTableButton().click({ force: true }); + selectors.getCancelButton().click(); + selectors.getModalContent().should('not.exist'); + checkValue(''); + + // close with esc + selectors.getInsertTableButton().click(); + selectors.inputs.getRowsInput().type('{esc}'); + selectors.getModalContent().should('not.exist'); + checkValue(''); + }); + + it('should have a correct default state', () => { + checkValue(''); + selectors.getToggleAdditionalActionsButton().click(); + selectors.getInsertTableButton().click({ force: true }); + + selectors.inputs.getRowsInput().should('have.value', '2'); + selectors.inputs.getColsInput().should('have.value', '1'); + + selectors.getConfirmButton().should('not.be.disabled'); + }); + + it('should validate incorrect values', () => { + checkValue(''); + selectors.getToggleAdditionalActionsButton().click(); + selectors.getInsertTableButton().click({ force: true }); + + selectors.inputs.getRowsInput().focus().type('{selectall}').type('1'); + + cy.findByText('Should be between 2 and 100').should('be.visible'); + + selectors.inputs.getColsInput().focus().type('{selectall}').type('100'); + + cy.findByText('Should be between 1 and 100').should('be.visible'); + + selectors.getConfirmButton().should('be.disabled'); + }); + + it('should insert table with correct number rows and cols', () => { + checkValue(''); + selectors.getToggleAdditionalActionsButton().click(); + + selectors.getInsertTableButton().click({ force: true }); + selectors.getConfirmButton().click(); + checkValue('\n| Header |\n| ---------- |\n| Cell |\n| Cell |\n\n'); + + clearAll(); + + selectors.getInsertTableButton().click(); + selectors.inputs.getRowsInput().focus().type('{selectall}').type('3'); + selectors.inputs.getColsInput().focus().type('{selectall}').type('2'); + selectors.getConfirmButton().click(); + checkValue( + '\n| Header | Header |\n| ---------- | ---------- |\n| Cell | Cell |\n| Cell | Cell |\n| Cell | Cell |\n\n' + ); + }); +}); diff --git a/cypress/e2e/MarkdownEditorSimpleActions.spec.ts b/cypress/e2e/MarkdownEditorSimpleActions.spec.ts new file mode 100644 index 000000000..953f22764 --- /dev/null +++ b/cypress/e2e/MarkdownEditorSimpleActions.spec.ts @@ -0,0 +1,435 @@ +describe('Markdown Editor / Simple Actions', () => { + const selectors = { + getInput: () => { + return cy.get('[data-test-id="markdown-textarea"] [contenteditable]'); + }, + getHeadingsSelectorButton: () => { + return cy.findByTestId('markdown-action-button-heading'); + }, + getHeadingButton: (type) => { + return cy.findByTestId('markdown-action-button-heading-' + type); + }, + getBoldButton: () => { + return cy.findByTestId('markdown-action-button-bold'); + }, + getItalicButton: () => { + return cy.findByTestId('markdown-action-button-italic'); + }, + getQuoteButton: () => { + return cy.findByTestId('markdown-action-button-quote'); + }, + getUnorderedListButton: () => { + return cy.findByTestId('markdown-action-button-ul'); + }, + getOrderedListButton: () => { + return cy.findByTestId('markdown-action-button-ol'); + }, + getToggleAdditionalActionsButton: () => { + return cy.findByTestId('markdown-action-button-toggle-additional'); + }, + getStrikeButton: () => { + return cy.findByTestId('markdown-action-button-strike'); + }, + getCodeButton: () => { + return cy.findByTestId('markdown-action-button-code'); + }, + getHorizontalLineButton: () => { + return cy.findByTestId('markdown-action-button-hr'); + }, + getIndentButton: () => { + return cy.findByTestId('markdown-action-button-indent'); + }, + getDedentButton: () => { + return cy.findByTestId('markdown-action-button-dedent'); + }, + }; + + const examples = { + long: 'This course helps you understand the basics behind Contentful. It contains modules that introduce you to core concepts and how your app consumes content from Contentful. This content is pulled from Contentful APIs using a Contentful SDK.', + code: 'console.log("This is Javascript code!");', + }; + + const type = (value) => { + return selectors.getInput().focus().type(value, { force: true }); + }; + + const unveilAdditionalButtonsRow = () => { + selectors.getToggleAdditionalActionsButton().click(); + }; + + const clearAll = () => { + cy.getMarkdownInstance().then((markdown) => { + markdown.clear(); + }); + }; + + const selectAll = () => { + cy.getMarkdownInstance().then((markdown) => { + markdown.selectAll(); + }); + }; + + const checkValue = (value) => { + cy.getMarkdownInstance().then((markdown) => { + expect(markdown.getContent()).eq(value); + }); + }; + + const selectBackwards = (skip, len) => { + cy.getMarkdownInstance().then((markdown) => { + markdown.selectBackwards(skip, len); + }); + }; + + beforeEach(() => { + cy.visit('/markdown'); + cy.wait(500); + cy.findByTestId('markdown-editor').should('be.visible'); + }); + + describe('headings', () => { + const clickHeading = (value) => { + selectors.getHeadingsSelectorButton().click({ force: true }); + selectors.getHeadingButton(value).click(); + }; + + it('should work properly', () => { + checkValue(''); + + clickHeading('h1'); + checkValue('# '); + cy.get('.cm-header-1').should('have.text', '# '); + + clickHeading('h2'); + checkValue('## '); + cy.get('.cm-header-2').should('have.text', '## '); + + clickHeading('h3'); + checkValue('### '); + cy.get('.cm-header-3').should('have.text', '### '); + + type('Heading 3{enter}'); + + cy.get('.cm-header-3').should('have.text', '### Heading 3'); + + type('Future heading 2'); + clickHeading('h2'); + checkValue('### Heading 3\n## Future heading 2'); + + clickHeading('h2'); + checkValue('### Heading 3\nFuture heading 2'); + + type('{enter}{enter}'); + type(examples.long); + + clickHeading('h3'); + checkValue(`### Heading 3\nFuture heading 2\n\n### ${examples.long}`); + }); + }); + + describe('bold', () => { + const clickBold = () => { + selectors.getBoldButton().click(); + }; + + it('should work properly', () => { + checkValue(''); + clickBold(); + checkValue('__text in bold__'); + + type('bold text'); + checkValue('__bold text__'); + + type('{rightarrow}{rightarrow}{enter}'); + + type('Sentence a bold word.'); + selectBackwards(1, 9); // select 'bold word' + clickBold(); + type(' and not a bold word'); + checkValue('__bold text__\nSentence a __bold word__ and not a bold word.'); + }); + + it('should remove boldness to already applied', () => { + checkValue(''); + type('text'); + selectBackwards(0, 4); + clickBold(); + checkValue('__text__'); + selectBackwards(0, 8); + clickBold(); + checkValue('text'); + }); + }); + + describe('italic', () => { + const clickItalic = () => { + selectors.getItalicButton().click(); + }; + + it('should work properly', () => { + checkValue(''); + clickItalic(); + checkValue('*text in italic*'); + + type('italic text'); + checkValue('*italic text*'); + + type('{rightarrow}{rightarrow}{enter}'); + + type('Sentence an italic word.'); + selectBackwards(1, 11); // select 'italic word' + clickItalic(); + type(' and not an italic word'); + checkValue('*italic text*\nSentence an *italic word* and not an italic word.'); + }); + + it('should remove italicness to already applied', () => { + checkValue(''); + type('text'); + selectBackwards(0, 4); + clickItalic(); + checkValue('*text*'); + selectBackwards(0, 6); + clickItalic(); + checkValue('text'); + }); + }); + + describe('quote', () => { + const clickQuote = () => { + selectors.getQuoteButton().click(); + }; + + it('should work properly', () => { + checkValue(''); + clickQuote(); + checkValue('> '); + type('some really smart wisdom'); + type('{enter}'); + type('by some really smart person'); + checkValue('> some really smart wisdom\n> by some really smart person'); + + clearAll(); + checkValue(''); + + type(examples.long); + clickQuote(); + checkValue(`> ${examples.long}`); + clickQuote(); + checkValue(examples.long); + }); + }); + + describe('code', () => { + const clickCode = () => { + selectors.getCodeButton().click(); + }; + + it('should work properly', () => { + checkValue(''); + unveilAdditionalButtonsRow(); + clickCode(); + checkValue(' '); + type('var i = 0;'); + type('{enter}'); + type('i++;'); + checkValue(' var i = 0;\n i++;'); + + clearAll(); + checkValue(''); + + type(examples.code); + clickCode(); + checkValue(` ${examples.code}`); + clickCode(); + checkValue(examples.code); + }); + }); + + describe('strike', () => { + const clickStrike = () => { + selectors.getStrikeButton().click(); + }; + + it('should work properly', () => { + checkValue(''); + unveilAdditionalButtonsRow(); + clickStrike(); + checkValue('~~striked out~~'); + + type('striked text'); + checkValue('~~striked text~~'); + + type('{rightarrow}{rightarrow}{enter}'); + + type('Sentence a striked out word.'); + selectBackwards(1, 16); // select 'striked word' + clickStrike(); + type(' and not a striked out word'); + checkValue('~~striked text~~\nSentence a ~~striked out word~~ and not a striked out word.'); + }); + + it('should remove strike to already applied', () => { + checkValue(''); + unveilAdditionalButtonsRow(); + type('text'); + selectBackwards(0, 4); + clickStrike(); + checkValue('~~text~~'); + selectBackwards(0, 8); + clickStrike(); + checkValue('text'); + }); + }); + + describe('unordered list', () => { + const clickUnorderedList = () => { + selectors.getUnorderedListButton().click(); + }; + + it('should work properly', () => { + checkValue(''); + clickUnorderedList(); + type('first item'); + type('{enter}'); + type('second item'); + type('{enter}{enter}'); + checkValue('- first item\n- second item\n\n\n'); + + clearAll(); + checkValue(''); + + type('sentence at the very beginning.'); + clickUnorderedList(); + type('first item{enter}second item'); + checkValue('sentence at the very beginning.\n\n- first item\n- second item\n'); + + clearAll(); + checkValue(''); + + type('- first item'); + clickUnorderedList(); + checkValue('first item'); + + selectBackwards(0, 4); + clickUnorderedList(); + checkValue('- first item'); + type('{enter}'); + checkValue('- first item\n- '); + clickUnorderedList(); + checkValue('- first item\n'); + }); + + it('should work properly with selection', () => { + checkValue(''); + type('first item{enter}'); + type('second item{enter}'); + type('third item'); + + selectAll(); + clickUnorderedList(); + + checkValue('- first item\n- second item\n- third item'); + }); + }); + + describe('ordered list', () => { + const clickOrderedList = () => { + selectors.getOrderedListButton().click(); + }; + + it('should work properly', () => { + checkValue(''); + clickOrderedList(); + type('first item'); + type('{enter}'); + type('second item'); + type('{enter}{enter}'); + checkValue('1. first item\n2. second item\n\n\n'); + + clearAll(); + checkValue(''); + + type('sentence at the very beginning.'); + clickOrderedList(); + type('first item{enter}second item'); + checkValue('sentence at the very beginning.\n\n1. first item\n2. second item\n'); + + clearAll(); + checkValue(''); + + type('1. first item'); + clickOrderedList(); + checkValue('first item'); + + selectBackwards(0, 4); + clickOrderedList(); + checkValue('1. first item'); + type('{enter}'); + checkValue('1. first item\n2. '); + clickOrderedList(); + checkValue('1. first item\n'); + }); + + it('should work properly with selection', () => { + checkValue(''); + type('first item{enter}'); + type('second item{enter}'); + type('third item'); + + selectAll(); + clickOrderedList(); + + checkValue('1. first item\n2. second item\n3. third item'); + }); + }); + + describe('horizontal line', () => { + const clickHorizontalButton = () => { + selectors.getHorizontalLineButton().click(); + }; + + it('should work properly', () => { + checkValue(''); + unveilAdditionalButtonsRow(); + clickHorizontalButton(); + checkValue('\n---\n\n'); + clickHorizontalButton(); + checkValue('\n---\n\n\n---\n\n'); + + clearAll(); + + type('something'); + clickHorizontalButton(); + checkValue('something\n\n---\n\n'); + }); + }); + + describe('indent and dedent', () => { + const clickIndentButton = () => { + selectors.getIndentButton().click(); + }; + + const clickDedentButton = () => { + selectors.getDedentButton().click(); + }; + + it('should work properly', () => { + checkValue(''); + unveilAdditionalButtonsRow(); + type('something'); + clickIndentButton(); + checkValue(' something'); + + type('{enter}'); + clickIndentButton(); + type('line two{enter}'); + clickDedentButton(); + type('line three{enter}'); + clickDedentButton(); + type('final line'); + + checkValue(' something\n line two\n line three\nfinal line'); + }); + }); +}); diff --git a/cypress/e2e/MarkdownEditorSpecialCharacter.spec.ts b/cypress/e2e/MarkdownEditorSpecialCharacter.spec.ts new file mode 100644 index 000000000..a7c4fc23c --- /dev/null +++ b/cypress/e2e/MarkdownEditorSpecialCharacter.spec.ts @@ -0,0 +1,84 @@ +describe('Markdown Editor / Insert Special Character Dialog', () => { + const selectors = { + getInput: () => { + return cy.get('[data-test-id="markdown-textarea"] [contenteditable]'); + }, + getDialogTitle() { + return cy.findByTestId('dialog-title').find('h2'); + }, + getToggleAdditionalActionsButton: () => { + return cy.findByTestId('markdown-action-button-toggle-additional'); + }, + getModalContent() { + return cy.findByTestId('insert-special-character-modal'); + }, + getInsertCharacterButton() { + return cy.findByTestId('markdown-action-button-special'); + }, + getConfirmButton() { + return cy.findByTestId('insert-character-confirm'); + }, + getCancelButton() { + return cy.findByTestId('insert-character-cancel'); + }, + getSpecialCharacterButtons() { + return cy.findAllByTestId('special-character-button'); + }, + getCharButton(char: string) { + return cy.findByText(char); + }, + }; + + const checkValue = (value) => { + cy.getMarkdownInstance().then((markdown) => { + expect(markdown.getContent()).eq(value); + }); + }; + + beforeEach(() => { + cy.visit('/markdown'); + cy.wait(500); + cy.findByTestId('markdown-editor').should('be.visible'); + selectors.getToggleAdditionalActionsButton().click(); + }); + + function openDialog() { + // we need to force the click here as a tooltip covers it + selectors.getInsertCharacterButton().click({ force: true }); + } + + function insertSpecialCharacter(char: string) { + selectors.getCharButton(char).click(); + selectors.getConfirmButton().click(); + } + + it('should have correct title', () => { + openDialog(); + selectors.getDialogTitle().should('have.text', 'Insert special character'); + }); + + it('should insert first charter by default', () => { + checkValue(''); + openDialog(); + selectors.getConfirmButton().click(); + checkValue('´'); + }); + + it('should include any selected character', () => { + checkValue(''); + openDialog(); + selectors.getSpecialCharacterButtons().should('have.length', 54); + insertSpecialCharacter('¼'); + + openDialog(); + insertSpecialCharacter('€'); + checkValue('¼€'); + }); + + it('should include nothing if dialog was just closed', () => { + checkValue(''); + openDialog(); + selectors.getCancelButton().click(); + checkValue(''); + }); +}); diff --git a/cypress/e2e/MarkdownEditorVoidElements.spec.ts b/cypress/e2e/MarkdownEditorVoidElements.spec.ts new file mode 100644 index 000000000..cab08c506 --- /dev/null +++ b/cypress/e2e/MarkdownEditorVoidElements.spec.ts @@ -0,0 +1,38 @@ +describe('Markdown Editor / Void elements', () => { + const selectors = { + getInput() { + return cy.get('[data-test-id="markdown-textarea"] [contenteditable]'); + }, + getPreviewButton() { + return cy.findByTestId('markdown-tab-preview'); + }, + getVoidElementsWarning() { + return cy.findByTestId('markdown-void-elements-warning'); + }, + getPreview() { + return cy.findByTestId('markdown-preview'); + }, + }; + + const type = (value) => { + return selectors.getInput().focus().type(value, { force: true }); + }; + + beforeEach(() => { + cy.visit('/markdown'); + cy.wait(500); + cy.findByTestId('markdown-editor').should('be.visible'); + }); + + it('renders even with invalid use of void elements', () => { + type(` +
br
+ link + + `); + + selectors.getPreviewButton().click(); + selectors.getPreview().should('contain.text', 'br'); + selectors.getPreview().should('contain.text', 'link'); + }); +}); diff --git a/cypress/e2e/MarkdownEmbedExternal.spec.ts b/cypress/e2e/MarkdownEmbedExternal.spec.ts new file mode 100644 index 000000000..5cf5ca81b --- /dev/null +++ b/cypress/e2e/MarkdownEmbedExternal.spec.ts @@ -0,0 +1,101 @@ +describe('Markdown Editor / Embed External Dialog', () => { + const selectors = { + getInput: () => { + return cy.get('[data-test-id="markdown-textarea"] [contenteditable]'); + }, + getDialogTitle() { + return cy.findByTestId('dialog-title').find('h2'); + }, + getToggleAdditionalActionsButton: () => { + return cy.findByTestId('markdown-action-button-toggle-additional'); + }, + getModalContent() { + return cy.findByTestId('embed-external-dialog'); + }, + getEmbedExternalContentButton() { + return cy.findByTestId('markdown-action-button-embed'); + }, + getConfirmButton() { + return cy.findByTestId('embed-external-confirm'); + }, + getCancelButton() { + return cy.findByTestId('embed-external-cancel'); + }, + inputs: { + getUrlInput() { + return cy.findByTestId('external-link-url-field'); + }, + getWidthInput() { + return cy.findByTestId('embedded-content-width'); + }, + getPercentRadio() { + return cy.findByLabelText('percent'); + }, + getPixelRadio() { + return cy.findByLabelText('pixels'); + }, + }, + }; + + const checkValue = (value) => { + cy.getMarkdownInstance().then((markdown) => { + expect(markdown.getContent()).eq(value); + }); + }; + + const clearAll = () => { + cy.getMarkdownInstance().then((markdown) => { + markdown.clear(); + }); + }; + + beforeEach(() => { + cy.visit('/markdown'); + cy.wait(500); + cy.findByTestId('markdown-editor').should('be.visible'); + selectors.getToggleAdditionalActionsButton().click(); + }); + + function openDialog() { + selectors.getEmbedExternalContentButton().click(); + } + + it('should have correct title', () => { + openDialog(); + selectors.getDialogTitle().should('have.text', 'Embed external content'); + }); + + it('should have correct default state', () => { + openDialog(); + + selectors.inputs.getUrlInput().should('have.value', 'https://'); + + selectors.inputs.getWidthInput().should('have.value', '100'); + selectors.inputs.getPercentRadio().should('be.checked'); + selectors.inputs.getPixelRadio().should('not.be.checked'); + }); + + it('should insert a correct embedly script', () => { + checkValue(''); + + openDialog(); + selectors.inputs.getUrlInput().clear().type('https://contentful.com'); + selectors.getConfirmButton().click(); + selectors.getModalContent().should('not.exist'); + checkValue( + `Embedded content: https://contentful.com` + ); + + clearAll(); + + openDialog(); + selectors.inputs.getUrlInput().clear().type('https://contentful.com'); + selectors.inputs.getPixelRadio().click(); + selectors.inputs.getWidthInput().clear().type('500'); + selectors.getConfirmButton().click(); + selectors.getModalContent().should('not.exist'); + checkValue( + `Embedded content: https://contentful.com` + ); + }); +}); diff --git a/cypress/e2e/MarkdownOrganizeLinks.spec.ts b/cypress/e2e/MarkdownOrganizeLinks.spec.ts new file mode 100644 index 000000000..08f0e914d --- /dev/null +++ b/cypress/e2e/MarkdownOrganizeLinks.spec.ts @@ -0,0 +1,47 @@ +describe('Markdown Editor / Organize Links', () => { + const selectors = { + getInput: () => { + return cy.get('[data-test-id="markdown-textarea"] [contenteditable]'); + }, + getToggleAdditionalActionsButton: () => { + return cy.findByTestId('markdown-action-button-toggle-additional'); + }, + getOrganizeLinksButton() { + return cy.findByTestId('markdown-action-button-organizeLinks'); + }, + getSuccessNotification() { + return cy.get('[data-test-id="cf-ui-notification"][data-intent="success"]'); + }, + }; + + const type = (value) => { + return selectors.getInput().focus().type(value, { force: true }); + }; + + const checkValue = (value) => { + cy.getMarkdownInstance().then((markdown) => { + expect(markdown.getContent()).eq(value); + }); + }; + + beforeEach(() => { + cy.visit('/markdown'); + cy.wait(500); + cy.findByTestId('markdown-editor').should('be.visible'); + selectors.getToggleAdditionalActionsButton().click(); + }); + + it('should organize links properly', () => { + const initialText = `Content editors use [Contentful](https://contentful.com "CMS that you will love") to make ongoing improvements and updates to their websites without relying on engineering, while developers focus their talents on building software without the distraction of [CMS](https://en.wikipedia.org/wiki/Content_management_system) complexities or hard-coding content. [Contentful](https://contentful.com "CMS that you will love") is your choice.`; + const expectedText = `Content editors use [Contentful][1] to make ongoing improvements and updates to their websites without relying on engineering, while developers focus their talents on building software without the distraction of [CMS][2] complexities or hard-coding content. [Contentful][1] is your choice.\n\n\n[1]: https://contentful.com "CMS that you will love"\n[2]: https://en.wikipedia.org/wiki/Content_management_system`; + + checkValue(''); + type(initialText); + selectors.getOrganizeLinksButton().click(); + + checkValue(expectedText); + selectors + .getSuccessNotification() + .should('include.text', 'All your links are now references at the bottom of your document'); + }); +}); diff --git a/cypress/e2e/rich-text/README.md b/cypress/e2e/rich-text/README.md new file mode 100644 index 000000000..53b033d8c --- /dev/null +++ b/cypress/e2e/rich-text/README.md @@ -0,0 +1,26 @@ +# Rich Text integration tests + +## How to add tests for pasting + +### Grab the clipboard data + +Because pasting (or drag & drop) is a matter of working with the [DataTransfer object](https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer) of the HTML5 Clipboard API +you need get your hands on the underlying data. To make this easy, there is a page in Docz to help you with that. Simply: + +1. Execute `yarn docz:dev` locally +2. Navigate to http://127.0.0.1:9000/clipboard-capture. +3. Paste what you have into the textarea +4. Click on the copy button next to the "Your pasted data" heading, all the data from the table will be copied as JSON to your clipboard + +![Grab data from clipboard](getting-clipboard-data.gif) + +### Pasting the necessary data into your test + +You are all set now, last things to do: + +1. Go to your Cypress test +2. Select an element, focus it and run the paste command, e.g. `editor().click().paste()` +3. Paste the JSON from your clipboard as argument of the `.paste()` command +4. Cleanup and anonymize the data if necessary + +![Pasting into your test](pasting-into-test.gif) diff --git a/cypress/e2e/rich-text/RichTextEditor.Pasting.spec.ts b/cypress/e2e/rich-text/RichTextEditor.Pasting.spec.ts new file mode 100644 index 000000000..52f66f9da --- /dev/null +++ b/cypress/e2e/rich-text/RichTextEditor.Pasting.spec.ts @@ -0,0 +1,454 @@ +import tableAndTextFromMsWord from './fixtures/msWordOnline'; +import { RichTextPage } from './RichTextPage'; + +// the sticky toolbar gets in the way of some of the tests, therefore +// we increase the viewport height to fit the whole page on the screen +describe( + 'Rich Text Editor', + { + viewportHeight: 2000, + retries: 0, + }, + () => { + let richText: RichTextPage; + + beforeEach(() => { + richText = new RichTextPage(); + richText.visit(); + }); + + it('removes style tags', () => { + richText.editor.click().paste({ + 'text/html': ` + +

paste only this

`, + }); + + richText.expectSnapshotValue(); + }); + + describe('text', () => { + it('supports pasting of links within text', () => { + richText.editor.click().paste({ + 'text/html': + 'Some text with link and some more text and another link following.', + }); + + richText.expectSnapshotValue(); + }); + }); + + describe('Lists', () => { + it('supports pasting of a simple list', () => { + richText.editor.click().paste({ + 'text/html': '', + }); + + richText.expectSnapshotValue(); + }); + + it('MS Word - does not remove space around link in list surrounded by text with background color', () => { + richText.editor.click().paste({ + 'text/plain': 'One list item \n\nA list item with a background colors ', + 'text/html': + '', + }); + richText.expectSnapshotValue(); + }); + + it('pastes texts inside lists', () => { + richText.editor.click(); + richText.toolbar.ul.click(); + + richText.editor.type('Hello '); + + richText.editor.paste({ + 'text/plain': 'world!', + }); + + richText.expectSnapshotValue(); + }); + + it('pastes elements inside links', () => { + richText.editor.click(); + richText.toolbar.ul.click(); + + richText.editor.paste({ + 'text/html': + 'This is a link and an inline entry:
Example Content Type The best article ever
', + }); + + richText.expectSnapshotValue(); + }); + + it('pastes list items as new lists inside lists', () => { + richText.editor.click(); + richText.toolbar.ul.click(); + + richText.editor.type('Hello'); + + richText.editor.paste({ + 'text/html': + '
  • sub
  • list
  • ', + }); + + richText.expectSnapshotValue(); + }); + + it('confers the parent list type upon list items pasted within lists', () => { + richText.editor.click(); + richText.toolbar.ol.click(); + + richText.editor.type('Hello'); + + richText.editor.paste({ + 'text/html': + '
  • sub
  • list
  • ', + }); + + richText.expectSnapshotValue(); + }); + + it('pastes orphaned list items as unordered lists', () => { + richText.editor.click(); + + richText.editor.paste({ + 'text/html': + '
  • Hello
    • world!
  • \n
    ', + }); + + richText.expectSnapshotValue(); + }); + + // TODO: test related to https://contentful.atlassian.net/browse/SHE-752 + // when a table is copied its structure is kept if pasted at a list entry level + // only its text should be pasted instead. + // Note that, in real scenarions, tables fragments contain the attribute "data-slate-fragment" differently from this test case, + // which determines the table to keep its formatting. Therefore ensure the example html has that attribute + it('pastes only the text content of other blocks', () => { + richText.editor.click(); + richText.toolbar.ul.click(); + + richText.editor.type('Item #1'); + + richText.editor.paste({ + 'text/html': + '
    Header 1
    Header 2 (with link)
    Cell 1
    Cell 2
    ', + }); + + richText.expectSnapshotValue(); + }); + + it('pastes table & its inline elements correctly', () => { + richText.editor.click(); + + // What can I do with tables + // __________________________________________________________________________________ + // | Property | Supported | + // |--------------------------------------|-----------------------------------------| + // | Adding and removing rows and columns | Yes | + // | Table header | Yes, for rows and columns | + // | Formatting options | Bold,italics,underline,code | + // | Hyperlinks | URL, asset and entry | + // | Embed entries | Only inline entries [inline entry] | + // | Copy & paste from other documents | Yes, Eg. Google Docs, Jira, Confluence | + // --------------------------------------|----------------------------------------- + // + // + richText.editor.paste({ + 'application/x-slate-fragment': + 'JTVCJTdCJTIydHlwZSUyMiUzQSUyMnBhcmFncmFwaCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydGV4dCUyMiUzQSUyMldoYXQlMjBjYW4lMjBJJTIwZG8lMjB3aXRoJTIwdGFibGVzJTIyJTJDJTIyZGF0YSUyMiUzQSU3QiU3RCU3RCU1RCUyQyUyMmlzVm9pZCUyMiUzQWZhbHNlJTJDJTIyZGF0YSUyMiUzQSU3QiU3RCU3RCUyQyU3QiUyMnR5cGUlMjIlM0ElMjJ0YWJsZSUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnRhYmxlLXJvdyUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnRhYmxlLWhlYWRlci1jZWxsJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0eXBlJTIyJTNBJTIycGFyYWdyYXBoJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0ZXh0JTIyJTNBJTIyUHJvcGVydHklMjIlN0QlNUQlN0QlNUQlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIydGFibGUtaGVhZGVyLWNlbGwlMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnRleHQlMjIlM0ElMjJTdXBwb3J0ZWQlMjIlN0QlNUQlN0QlNUQlN0QlNUQlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIydGFibGUtcm93JTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0eXBlJTIyJTNBJTIydGFibGUtY2VsbCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnBhcmFncmFwaCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydGV4dCUyMiUzQSUyMkFkZGluZyUyMGFuZCUyMHJlbW92aW5nJTIwcm93cyUyMGFuZCUyMGNvbHVtbnMlMjIlN0QlNUQlN0QlNUQlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIydGFibGUtY2VsbCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnBhcmFncmFwaCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydGV4dCUyMiUzQSUyMlllcyUyMiU3RCU1RCU3RCU1RCU3RCU1RCU3RCUyQyU3QiUyMnR5cGUlMjIlM0ElMjJ0YWJsZS1yb3clMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnR5cGUlMjIlM0ElMjJ0YWJsZS1jZWxsJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0eXBlJTIyJTNBJTIycGFyYWdyYXBoJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0ZXh0JTIyJTNBJTIyVGFibGUlMjBoZWFkZXIlMjIlN0QlNUQlN0QlNUQlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIydGFibGUtY2VsbCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnBhcmFncmFwaCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydGV4dCUyMiUzQSUyMlllcyUyQyUyMGZvciUyMHJvd3MlMjBhbmQlMjBjb2x1bW5zJTIyJTdEJTVEJTdEJTVEJTdEJTVEJTdEJTJDJTdCJTIydHlwZSUyMiUzQSUyMnRhYmxlLXJvdyUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnRhYmxlLWNlbGwlMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnRleHQlMjIlM0ElMjJGb3JtYXR0aW5nJTIwb3B0aW9ucyUyMiU3RCU1RCU3RCU1RCU3RCUyQyU3QiUyMnR5cGUlMjIlM0ElMjJ0YWJsZS1jZWxsJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0eXBlJTIyJTNBJTIycGFyYWdyYXBoJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0ZXh0JTIyJTNBJTIyQm9sZCUyMiUyQyUyMmJvbGQlMjIlM0F0cnVlJTdEJTJDJTdCJTIydGV4dCUyMiUzQSUyMiUyQyUyMiU3RCUyQyU3QiUyMnRleHQlMjIlM0ElMjJpdGFsaWNzJTIyJTJDJTIyaXRhbGljJTIyJTNBdHJ1ZSU3RCUyQyU3QiUyMnRleHQlMjIlM0ElMjIlMkMlMjIlN0QlMkMlN0IlMjJ0ZXh0JTIyJTNBJTIydW5kZXJsaW5lJTIyJTJDJTIydW5kZXJsaW5lJTIyJTNBdHJ1ZSU3RCUyQyU3QiUyMnRleHQlMjIlM0ElMjIlMkMlMjIlN0QlMkMlN0IlMjJ0ZXh0JTIyJTNBJTIyY29kZSUyMiUyQyUyMmNvZGUlMjIlM0F0cnVlJTdEJTVEJTdEJTVEJTdEJTVEJTdEJTJDJTdCJTIydHlwZSUyMiUzQSUyMnRhYmxlLXJvdyUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnRhYmxlLWNlbGwlMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnRleHQlMjIlM0ElMjJIeXBlcmxpbmtzJTIyJTdEJTVEJTdEJTVEJTdEJTJDJTdCJTIydHlwZSUyMiUzQSUyMnRhYmxlLWNlbGwlMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnRleHQlMjIlM0ElMjIlMjIlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIyaHlwZXJsaW5rJTIyJTJDJTIyZGF0YSUyMiUzQSU3QiUyMnVyaSUyMiUzQSUyMmh0dHBzJTNBJTJGJTJGZ29vZ2xlLmNvbSUyMiU3RCUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydGV4dCUyMiUzQSUyMlVSTCUyMiU3RCU1RCU3RCUyQyU3QiUyMnRleHQlMjIlM0ElMjIlMkMlMjAlMjIlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIyYXNzZXQtaHlwZXJsaW5rJTIyJTJDJTIyZGF0YSUyMiUzQSU3QiUyMnRhcmdldCUyMiUzQSU3QiUyMnN5cyUyMiUzQSU3QiUyMmlkJTIyJTNBJTIyZXhhbXBsZS1lbnRpdHktaWQlMjIlMkMlMjJ0eXBlJTIyJTNBJTIyTGluayUyMiUyQyUyMmxpbmtUeXBlJTIyJTNBJTIyQXNzZXQlMjIlN0QlN0QlN0QlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnRleHQlMjIlM0ElMjJhc3NldCUyMiU3RCU1RCU3RCUyQyU3QiUyMnRleHQlMjIlM0ElMjIlMjBhbmQlMjAlMjIlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIyZW50cnktaHlwZXJsaW5rJTIyJTJDJTIyZGF0YSUyMiUzQSU3QiUyMnRhcmdldCUyMiUzQSU3QiUyMnN5cyUyMiUzQSU3QiUyMmlkJTIyJTNBJTIyZXhhbXBsZS1lbnRpdHktaWQlMjIlMkMlMjJ0eXBlJTIyJTNBJTIyTGluayUyMiUyQyUyMmxpbmtUeXBlJTIyJTNBJTIyRW50cnklMjIlN0QlN0QlN0QlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnRleHQlMjIlM0ElMjJlbnRyeSUyMiU3RCU1RCU3RCUyQyU3QiUyMnRleHQlMjIlM0ElMjIlMjIlN0QlNUQlN0QlNUQlN0QlNUQlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIydGFibGUtcm93JTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0eXBlJTIyJTNBJTIydGFibGUtY2VsbCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnBhcmFncmFwaCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydGV4dCUyMiUzQSUyMkVtYmVkJTIwZW50cmllcyUyMiU3RCU1RCU3RCU1RCU3RCUyQyU3QiUyMnR5cGUlMjIlM0ElMjJ0YWJsZS1jZWxsJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0eXBlJTIyJTNBJTIycGFyYWdyYXBoJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0ZXh0JTIyJTNBJTIyT25seSUyMGlubGluZSUyMGVudHJpZXMlMjAlMjIlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIyZW1iZWRkZWQtZW50cnktaW5saW5lJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0ZXh0JTIyJTNBJTIyJTIyJTdEJTVEJTJDJTIyZGF0YSUyMiUzQSU3QiUyMnRhcmdldCUyMiUzQSU3QiUyMnN5cyUyMiUzQSU3QiUyMmlkJTIyJTNBJTIyZXhhbXBsZS1lbnRpdHktaWQlMjIlMkMlMjJ0eXBlJTIyJTNBJTIyTGluayUyMiUyQyUyMmxpbmtUeXBlJTIyJTNBJTIyRW50cnklMjIlN0QlN0QlN0QlN0QlMkMlN0IlMjJ0ZXh0JTIyJTNBJTIyJTIyJTdEJTVEJTdEJTVEJTdEJTVEJTdEJTJDJTdCJTIydHlwZSUyMiUzQSUyMnRhYmxlLXJvdyUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnRhYmxlLWNlbGwlMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnRleHQlMjIlM0ElMjJDb3B5JTIwJTI2JTIwcGFzdGUlMjBmcm9tJTIwb3RoZXIlMjBkb2N1bWVudHMlMjIlN0QlNUQlN0QlNUQlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIydGFibGUtY2VsbCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnBhcmFncmFwaCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydGV4dCUyMiUzQSUyMlllcy4lMjBFZy4lMjBHb29nbGUlMjBEb2NzJTJDJTIwSmlyYSUyQyUyMENvbmZsdWVuY2UlMjIlN0QlNUQlN0QlNUQlN0QlNUQlN0QlNUQlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIycGFyYWdyYXBoJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0ZXh0JTIyJTNBJTIyJTIyJTdEJTVEJTdEJTVE', + }); + + richText.expectSnapshotValue(); + }); + + it('normalizes paragraphs in table cells correctly', () => { + richText.editor.click(); + richText.editor.paste({ + 'text/html': + '

    Field

    Type

    Description

    ', + }); + richText.expectSnapshotValue(); + }); + }); + + describe('HR', () => { + it('should paste from internal copying', () => { + richText.editor.click().paste({ + 'text/html': `
    `, + }); + + richText.expectSnapshotValue(); + }); + + it('should paste from external resources', () => { + richText.editor.click().paste({ + 'text/html': `

    `, + }); + + richText.expectSnapshotValue(); + }); + }); + + describe('Tables', () => { + it('Google Docs', () => { + richText.editor.click().paste({ + 'text/html': + '

    Field

    Type

    Description

    sys

    Sys

    Common system properties

    system common 

    properties.

    fields.title

    Text

    Title of the asset.

    Title 

    Of the

    asset

    fields.description

    Text

    Description of the asset.

    fields.file

    File

    File(s) of the asset.

    fields.file.fileName

    Symbol

    Original filename of the file.

    fields.file.contentType

    Symbol

    Content type of the file.

    fields.file.url

    Symbol

    URL of the file.

    fields.file.details

    Object

    Details of the file, depending on its MIME type.

    fields.file.details.size

    Number

    Size (in bytes) of the file.




    ', + }); + + richText.expectSnapshotValue(); + }); + + it('Google Docs - around
    ', () => { + richText.editor.click().paste({ + 'text/html': `

    Cell 1

    Cell 2

    Cell 3

    Cell 4

    `, + }); + + richText.expectSnapshotValue(); + }); + + it('removes table wrappers when pasting a single cell', () => { + richText.editor.click().paste({ + 'application/x-slate-fragment': + 'JTVCJTdCJTIydHlwZSUyMiUzQSUyMnRhYmxlJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0eXBlJTIyJTNBJTIydGFibGUtcm93JTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0eXBlJTIyJTNBJTIydGFibGUtY2VsbCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydHlwZSUyMiUzQSUyMnBhcmFncmFwaCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydGV4dCUyMiUzQSUyMmNlbGwlMjBjb250ZW50JTIwd2l0aCUyMGElMjBsaW5rJTIwYW5kJTIwaW5saW5lJTIwZW50cnklMjIlN0QlMkMlN0IlMjJ0eXBlJTIyJTNBJTIyZW1iZWRkZWQtZW50cnktaW5saW5lJTIyJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJ0ZXh0JTIyJTNBJTIyJTIyJTdEJTVEJTJDJTIyZGF0YSUyMiUzQSU3QiUyMnRhcmdldCUyMiUzQSU3QiUyMnN5cyUyMiUzQSU3QiUyMmlkJTIyJTNBJTIyZXhhbXBsZS1lbnRpdHktaWQlMjIlMkMlMjJ0eXBlJTIyJTNBJTIyTGluayUyMiUyQyUyMmxpbmtUeXBlJTIyJTNBJTIyRW50cnklMjIlN0QlN0QlN0QlN0QlMkMlN0IlMjJ0ZXh0JTIyJTNBJTIyLiUyMiU3RCU1RCU3RCU1RCU3RCU1RCU3RCU1RCU3RCU1RA==', + }); + + richText.expectSnapshotValue(); + }); + }); + + describe('spreadsheets', () => { + describe('removes empty columns/rows', () => { + it('Google Sheets', () => { + richText.editor.click().paste({ + 'text/html': + '
    Cell 1Cell 2
    ', + }); + + richText.expectSnapshotValue(); + }); + + it('MS Excel', () => { + richText.editor.click().paste({ + 'text/html': + "
    \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    Cell 1Cell 2
    \r\n\r\n\r\n\r\n\r\n
    ", + }); + + richText.expectSnapshotValue(); + }); + }); + }); + + describe('Microsoft Word (.docx) deserialization', () => { + it('paragraphs, marks and links', () => { + richText.editor.click().paste({ + 'text/html': + 'This is a paragraph with some marks and links ', + }); + + richText.expectSnapshotValue(); + }); + + it('paragraphs with formattings', () => { + richText.editor.click().paste({ + 'text/html': ` + + + +

    What is Lorem Ipsum?

    + +

    Lorem Ipsum is simply dummy + text of the printing and typesetting industry. Lorem Ipsum has been the + industry's standard dummy text ever since the 1500s, when an unknown printer + took a galley of type and scrambled it to make a type specimen book. It has + survived not only five centuries, but also the leap into electronic + typesetting, remaining essentially unchanged. It was popularised in the + 1960s with the release of Letraset sheets containing Lorem Ipsum passages, + and more recently with desktop publishing software like Aldus PageMaker + including versions of Lorem Ipsum.

    + +

     

    + + + + + `, + }); + + richText.expectSnapshotValue(); + }); + + it('unordered list', () => { + richText.editor.click().paste({ + 'text/html': + '
    • This

    • Is

    • A list

    ', + }); + + richText.expectSnapshotValue(); + }); + + it('ordered list', () => { + richText.editor.click().paste({ + 'text/html': + '
    1. This is

    1. An ordered list

    ', + }); + + richText.expectSnapshotValue(); + }); + + it('tables', () => { + richText.editor.click().paste({ + 'text/html': + '

    This is some

    Content on tables

    ', + }); + + richText.expectSnapshotValue(); + }); + + it('text and tables from ms word online', () => { + richText.editor.click().paste({ + 'text/html': tableAndTextFromMsWord, + }); + + richText.expectSnapshotValue(); + }); + }); + + describe('Basic marks', () => { + it('works when pasting from another RT editor', () => { + // A simple "hello world" text with marks: bold, italic, underline + // and code. Copied from the RT editor + richText.editor.click().paste({ + 'text/html': + 'hello world', + 'text/plain': 'hello world', + 'application/x-slate-fragment': + 'JTVCJTdCJTIydHlwZSUyMiUzQSUyMnBhcmFncmFwaCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydGV4dCUyMiUzQSUyMmhlbGxvJTIwd29ybGQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIyYm9sZCUyMiUzQXRydWUlMkMlMjJpdGFsaWMlMjIlM0F0cnVlJTJDJTIydW5kZXJsaW5lJTIyJTNBdHJ1ZSUyQyUyMmNvZGUlMjIlM0F0cnVlJTdEJTVEJTJDJTIyaXNWb2lkJTIyJTNBZmFsc2UlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTdEJTVE', + }); + + richText.expectSnapshotValue(); + }); + }); + + describe('Superscript and subscript marks', () => { + it('works when pasting subscript and superscript from a google doc', () => { + // A simple "hello world" text with marks: superscript and subscript. + // Copied from a google doc + richText.editor.click().paste({ + 'text/plain': 'HelloWorld', + 'text/html': + 'HelloWorld', + 'application/x-vnd.google-docs-document-slice-clip+wrapped': + '{"dih":3014089275,"data":"{\\"resolved\\":{\\"dsl_spacers\\":\\"HelloWorld\\",\\"dsl_styleslices\\":[{\\"stsl_type\\":\\"autogen\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"cell\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"code_snippet\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"collapsed_heading\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"column_sector\\",\\"stsl_leading\\":{\\"css_cols\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"css_lb\\":false,\\"css_ltr\\":true,\\"css_st\\":\\"continuous\\",\\"css_mb\\":null,\\"css_mh\\":null,\\"css_mf\\":null,\\"css_ml\\":null,\\"css_mr\\":null,\\"css_mt\\":null,\\"css_fi\\":null,\\"css_hi\\":null,\\"css_epfi\\":null,\\"css_ephi\\":null,\\"css_fpfi\\":null,\\"css_fphi\\":null,\\"css_ufphf\\":null,\\"css_pnsi\\":null,\\"css_fpo\\":null},\\"stsl_leadingType\\":\\"column_sector\\",\\"stsl_trailing\\":{\\"css_cols\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"css_lb\\":false,\\"css_ltr\\":true,\\"css_st\\":\\"continuous\\",\\"css_mb\\":null,\\"css_mh\\":null,\\"css_mf\\":null,\\"css_ml\\":null,\\"css_mr\\":null,\\"css_mt\\":null,\\"css_fi\\":null,\\"css_hi\\":null,\\"css_epfi\\":null,\\"css_ephi\\":null,\\"css_fpfi\\":null,\\"css_fphi\\":null,\\"css_ufphf\\":null,\\"css_pnsi\\":null,\\"css_fpo\\":null},\\"stsl_trailingType\\":\\"column_sector\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"comment\\",\\"stsl_styles\\":[{\\"cs_cids\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"doco_anchor\\",\\"stsl_styles\\":[{\\"das_a\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"document\\",\\"stsl_leading\\":{\\"ds_b\\":{\\"bg_c2\\":{\\"clr_type\\":0,\\"hclr_color\\":null}},\\"ds_df\\":{\\"df_dm\\":0},\\"ds_fi\\":null,\\"ds_hi\\":null,\\"ds_epfi\\":null,\\"ds_ephi\\":null,\\"ds_uephf\\":false,\\"ds_fpfi\\":null,\\"ds_fphi\\":null,\\"ds_ufphf\\":false,\\"ds_pnsi\\":1,\\"ds_mb\\":72,\\"ds_ml\\":72,\\"ds_mr\\":72,\\"ds_mt\\":72,\\"ds_ph\\":792,\\"ds_pw\\":612,\\"ds_rtd\\":\\"\\",\\"ds_mh\\":36,\\"ds_mf\\":36,\\"ds_ulhfl\\":false,\\"ds_lhs\\":1,\\"ds_fpo\\":false},\\"stsl_leadingType\\":\\"document\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"equation\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"equation_function\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"field\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"footnote\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"headings\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"horizontal_rule\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"ignore_spellcheck\\",\\"stsl_styles\\":[{\\"isc_osh\\":null}]},{\\"stsl_type\\":\\"import_warnings\\",\\"stsl_styles\\":[{\\"iws_iwids\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"language\\",\\"stsl_trailing\\":{\\"lgs_l\\":\\"en\\"},\\"stsl_trailingType\\":\\"language\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"link\\",\\"stsl_styles\\":[{\\"lnks_link\\":null}]},{\\"stsl_type\\":\\"list\\",\\"stsl_trailing\\":{\\"ls_nest\\":0,\\"ls_id\\":null,\\"ls_c\\":null,\\"ls_ts\\":{\\"ts_bd\\":false,\\"ts_fs\\":11,\\"ts_ff\\":\\"Arial\\",\\"ts_it\\":false,\\"ts_sc\\":false,\\"ts_st\\":false,\\"ts_tw\\":400,\\"ts_un\\":false,\\"ts_va\\":\\"nor\\",\\"ts_bgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":null},\\"ts_fgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":\\"#000000\\"},\\"ts_bd_i\\":false,\\"ts_fs_i\\":false,\\"ts_ff_i\\":false,\\"ts_it_i\\":false,\\"ts_sc_i\\":false,\\"ts_st_i\\":false,\\"ts_un_i\\":false,\\"ts_va_i\\":false,\\"ts_bgc2_i\\":false,\\"ts_fgc2_i\\":false}},\\"stsl_trailingType\\":\\"list\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"named_range\\",\\"stsl_styles\\":[{\\"nrs_ei\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"paragraph\\",\\"stsl_trailing\\":{\\"ps_al\\":0,\\"ps_awao\\":true,\\"ps_sd\\":null,\\"ps_bbtw\\":null,\\"ps_bb\\":null,\\"ps_bl\\":null,\\"ps_br\\":null,\\"ps_bt\\":null,\\"ps_hd\\":0,\\"ps_hdid\\":\\"\\",\\"ps_ifl\\":0,\\"ps_il\\":0,\\"ps_ir\\":0,\\"ps_klt\\":false,\\"ps_kwn\\":false,\\"ps_ltr\\":true,\\"ps_ls\\":1.15,\\"ps_lslm\\":1,\\"ps_pbb\\":false,\\"ps_sm\\":0,\\"ps_sa\\":0,\\"ps_sb\\":0,\\"ps_al_i\\":false,\\"ps_awao_i\\":false,\\"ps_sd_i\\":false,\\"ps_bbtw_i\\":false,\\"ps_bb_i\\":false,\\"ps_bl_i\\":false,\\"ps_br_i\\":false,\\"ps_bt_i\\":false,\\"ps_ifl_i\\":false,\\"ps_il_i\\":false,\\"ps_ir_i\\":false,\\"ps_klt_i\\":false,\\"ps_kwn_i\\":false,\\"ps_ls_i\\":false,\\"ps_lslm_i\\":false,\\"ps_pbb_i\\":false,\\"ps_rd\\":\\"\\",\\"ps_sm_i\\":false,\\"ps_sa_i\\":false,\\"ps_sb_i\\":false,\\"ps_shd\\":false,\\"ps_ts\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}},\\"stsl_trailingType\\":\\"paragraph\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"row\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"suppress_feature\\",\\"stsl_styles\\":[{\\"sfs_sst\\":false}]},{\\"stsl_type\\":\\"tbl\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"text\\",\\"stsl_styles\\":[{\\"ts_bd\\":false,\\"ts_fs\\":11,\\"ts_ff\\":\\"Arial\\",\\"ts_it\\":false,\\"ts_sc\\":false,\\"ts_st\\":false,\\"ts_tw\\":400,\\"ts_un\\":false,\\"ts_va\\":\\"sup\\",\\"ts_bgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":null},\\"ts_fgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":\\"#000000\\"},\\"ts_bd_i\\":false,\\"ts_fs_i\\":false,\\"ts_ff_i\\":false,\\"ts_it_i\\":false,\\"ts_sc_i\\":false,\\"ts_st_i\\":false,\\"ts_un_i\\":false,\\"ts_va_i\\":false,\\"ts_bgc2_i\\":false,\\"ts_fgc2_i\\":false},null,null,null,null,{\\"ts_bd\\":false,\\"ts_fs\\":11,\\"ts_ff\\":\\"Arial\\",\\"ts_it\\":false,\\"ts_sc\\":false,\\"ts_st\\":false,\\"ts_tw\\":400,\\"ts_un\\":false,\\"ts_va\\":\\"sub\\",\\"ts_bgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":null},\\"ts_fgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":\\"#000000\\"},\\"ts_bd_i\\":false,\\"ts_fs_i\\":false,\\"ts_ff_i\\":false,\\"ts_it_i\\":false,\\"ts_sc_i\\":false,\\"ts_st_i\\":false,\\"ts_un_i\\":false,\\"ts_va_i\\":false,\\"ts_bgc2_i\\":false,\\"ts_fgc2_i\\":false}]}],\\"dsl_metastyleslices\\":[{\\"stsl_type\\":\\"autocorrect\\",\\"stsl_styles\\":[{\\"ac_ot\\":null,\\"ac_ct\\":null,\\"ac_type\\":null,\\"ac_sm\\":{\\"asm_s\\":0,\\"asm_rl\\":0,\\"asm_l\\":\\"\\"},\\"ac_id\\":\\"\\"}]},{\\"stsl_type\\":\\"collapsed_content\\",\\"stsl_styles\\":[{\\"colc_icc\\":false}]},{\\"stsl_type\\":\\"composing_decoration\\",\\"stsl_styles\\":[{\\"cd_u\\":false,\\"cd_bgc\\":{\\"clr_type\\":0,\\"hclr_color\\":null}}]},{\\"stsl_type\\":\\"composing_region\\",\\"stsl_styles\\":[{\\"cr_c\\":false}]},{\\"stsl_type\\":\\"draft_comment\\",\\"stsl_styles\\":[{\\"dcs_cids\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"ignore_word\\",\\"stsl_styles\\":[{\\"iwos_i\\":false}]},{\\"stsl_type\\":\\"revision_diff\\",\\"stsl_styles\\":[{\\"revdiff_dt\\":0,\\"revdiff_a\\":\\"\\",\\"revdiff_aid\\":\\"\\"}]},{\\"stsl_type\\":\\"smart_todo\\",\\"stsl_styles\\":[{\\"sts_cid\\":null,\\"sts_ot\\":null,\\"sts_ac\\":null,\\"sts_hi\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"sts_pa\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"sts_dm\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"spellcheck\\",\\"stsl_styles\\":[{\\"sc_id\\":\\"\\",\\"sc_ow\\":null,\\"sc_sl\\":null,\\"sc_sugg\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"sc_sm\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"voice_corrections\\",\\"stsl_styles\\":[{\\"vcs_c\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"vcs_id\\":\\"\\"}]},{\\"stsl_type\\":\\"voice_dotted_span\\",\\"stsl_styles\\":[{\\"vdss_p\\":null,\\"vdss_id\\":\\"\\"}]}],\\"dsl_suggestedinsertions\\":{\\"sgsl_sugg\\":[]},\\"dsl_suggesteddeletions\\":{\\"sgsl_sugg\\":[]},\\"dsl_entitypositionmap\\":{},\\"dsl_entitymap\\":{},\\"dsl_entitytypemap\\":{},\\"dsl_drawingrevisionaccesstokenmap\\":{},\\"dsl_relateddocslices\\":{},\\"dsl_nestedmodelmap\\":{}},\\"autotext_content\\":{}}","edi":"QT9bASY3_GwFN8ZN119g2Ja2EHnrx_nq6yjODnrlfjrbkZEpqMl5NY_AGJtzSbcFsVk9XklA8IoHTqo123xXoO8cLKmVgnTCRWC6udfsvDpa","edrk":"xKYajWttYyLMt_u511ACUFI3qewboAf7dCubtDmoDhoCHwlXkw..","dct":"kix","ds":false,"cses":false}', + }); + + richText.expectSnapshotValue(); + }); + }); + + describe('copy from safari (no href in anchors)', () => { + it('recognizes entry hyperlink', () => { + richText.editor.click().paste({ + 'text/html': + 'a b', + 'text/plain': 'a b', + }); + + richText.expectSnapshotValue(); + }); + + it('recognizes asset hyperlink', () => { + richText.editor.click().paste({ + 'text/html': + 'a b', + 'text/plain': 'a b', + }); + + richText.expectSnapshotValue(); + }); + }); + + describe('blockquotes', () => { + it('breaks a paragraph when pasting a blockquote in the middle', () => { + richText.editor.type('A paragraph{leftarrow}').paste({ + 'text/html': + 'a quote', + 'text/plain': 'a blockquote', + }); + + richText.expectSnapshotValue(); + }); + + it("removes the paragraph if it's empty", () => { + richText.editor.click().paste({ + 'text/html': + '
    a quote
    ', + 'text/plain': 'a blockquote', + }); + + richText.expectSnapshotValue(); + }); + + it("removes the paragraph if it's fully selected", () => { + richText.editor.click().type('abc').type('{selectall}'); + + cy.window().then((win) => { + const selection = win.getSelection(); + cy.wrap(selection).its('focusNode.data').should('equal', 'abc'); + // slate throttles the handling of selection changes + // so the editor might be unaware of the new selection at the time we paste + // eslint-disable-next-line cypress/no-unnecessary-waiting + cy.wait(200); + }); + richText.editor.paste({ + 'text/html': + '
    a quote
    ', + 'text/plain': 'a blockquote', + }); + + richText.expectSnapshotValue(); + }); + }); + + describe('missing application/x-slate-fragment [safari]', () => { + it('render slate fragment if attribute "data-slate-fragment" exists', () => { + richText.editor.click().paste({ + 'text/html': + 'quote', + 'text/plain': 'quote', + }); + richText.expectSnapshotValue(); + }); + }); + + describe('removing restricted marks', () => { + it('works when pasting subscript and superscript from a google doc', () => { + cy.setRestrictedMarks(['superscript', 'subscript']); + cy.reload(); + // A simple "hello world" text with marks: superscript and subscript. + // Copied from a google doc + richText.editor.click().paste({ + 'text/plain': 'HelloWorld', + 'text/html': + 'HelloWorld', + 'application/x-vnd.google-docs-document-slice-clip+wrapped': + '{"dih":3014089275,"data":"{\\"resolved\\":{\\"dsl_spacers\\":\\"HelloWorld\\",\\"dsl_styleslices\\":[{\\"stsl_type\\":\\"autogen\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"cell\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"code_snippet\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"collapsed_heading\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"column_sector\\",\\"stsl_leading\\":{\\"css_cols\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"css_lb\\":false,\\"css_ltr\\":true,\\"css_st\\":\\"continuous\\",\\"css_mb\\":null,\\"css_mh\\":null,\\"css_mf\\":null,\\"css_ml\\":null,\\"css_mr\\":null,\\"css_mt\\":null,\\"css_fi\\":null,\\"css_hi\\":null,\\"css_epfi\\":null,\\"css_ephi\\":null,\\"css_fpfi\\":null,\\"css_fphi\\":null,\\"css_ufphf\\":null,\\"css_pnsi\\":null,\\"css_fpo\\":null},\\"stsl_leadingType\\":\\"column_sector\\",\\"stsl_trailing\\":{\\"css_cols\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"css_lb\\":false,\\"css_ltr\\":true,\\"css_st\\":\\"continuous\\",\\"css_mb\\":null,\\"css_mh\\":null,\\"css_mf\\":null,\\"css_ml\\":null,\\"css_mr\\":null,\\"css_mt\\":null,\\"css_fi\\":null,\\"css_hi\\":null,\\"css_epfi\\":null,\\"css_ephi\\":null,\\"css_fpfi\\":null,\\"css_fphi\\":null,\\"css_ufphf\\":null,\\"css_pnsi\\":null,\\"css_fpo\\":null},\\"stsl_trailingType\\":\\"column_sector\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"comment\\",\\"stsl_styles\\":[{\\"cs_cids\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"doco_anchor\\",\\"stsl_styles\\":[{\\"das_a\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"document\\",\\"stsl_leading\\":{\\"ds_b\\":{\\"bg_c2\\":{\\"clr_type\\":0,\\"hclr_color\\":null}},\\"ds_df\\":{\\"df_dm\\":0},\\"ds_fi\\":null,\\"ds_hi\\":null,\\"ds_epfi\\":null,\\"ds_ephi\\":null,\\"ds_uephf\\":false,\\"ds_fpfi\\":null,\\"ds_fphi\\":null,\\"ds_ufphf\\":false,\\"ds_pnsi\\":1,\\"ds_mb\\":72,\\"ds_ml\\":72,\\"ds_mr\\":72,\\"ds_mt\\":72,\\"ds_ph\\":792,\\"ds_pw\\":612,\\"ds_rtd\\":\\"\\",\\"ds_mh\\":36,\\"ds_mf\\":36,\\"ds_ulhfl\\":false,\\"ds_lhs\\":1,\\"ds_fpo\\":false},\\"stsl_leadingType\\":\\"document\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"equation\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"equation_function\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"field\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"footnote\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"headings\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"horizontal_rule\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"ignore_spellcheck\\",\\"stsl_styles\\":[{\\"isc_osh\\":null}]},{\\"stsl_type\\":\\"import_warnings\\",\\"stsl_styles\\":[{\\"iws_iwids\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"language\\",\\"stsl_trailing\\":{\\"lgs_l\\":\\"en\\"},\\"stsl_trailingType\\":\\"language\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"link\\",\\"stsl_styles\\":[{\\"lnks_link\\":null}]},{\\"stsl_type\\":\\"list\\",\\"stsl_trailing\\":{\\"ls_nest\\":0,\\"ls_id\\":null,\\"ls_c\\":null,\\"ls_ts\\":{\\"ts_bd\\":false,\\"ts_fs\\":11,\\"ts_ff\\":\\"Arial\\",\\"ts_it\\":false,\\"ts_sc\\":false,\\"ts_st\\":false,\\"ts_tw\\":400,\\"ts_un\\":false,\\"ts_va\\":\\"nor\\",\\"ts_bgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":null},\\"ts_fgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":\\"#000000\\"},\\"ts_bd_i\\":false,\\"ts_fs_i\\":false,\\"ts_ff_i\\":false,\\"ts_it_i\\":false,\\"ts_sc_i\\":false,\\"ts_st_i\\":false,\\"ts_un_i\\":false,\\"ts_va_i\\":false,\\"ts_bgc2_i\\":false,\\"ts_fgc2_i\\":false}},\\"stsl_trailingType\\":\\"list\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"named_range\\",\\"stsl_styles\\":[{\\"nrs_ei\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"paragraph\\",\\"stsl_trailing\\":{\\"ps_al\\":0,\\"ps_awao\\":true,\\"ps_sd\\":null,\\"ps_bbtw\\":null,\\"ps_bb\\":null,\\"ps_bl\\":null,\\"ps_br\\":null,\\"ps_bt\\":null,\\"ps_hd\\":0,\\"ps_hdid\\":\\"\\",\\"ps_ifl\\":0,\\"ps_il\\":0,\\"ps_ir\\":0,\\"ps_klt\\":false,\\"ps_kwn\\":false,\\"ps_ltr\\":true,\\"ps_ls\\":1.15,\\"ps_lslm\\":1,\\"ps_pbb\\":false,\\"ps_sm\\":0,\\"ps_sa\\":0,\\"ps_sb\\":0,\\"ps_al_i\\":false,\\"ps_awao_i\\":false,\\"ps_sd_i\\":false,\\"ps_bbtw_i\\":false,\\"ps_bb_i\\":false,\\"ps_bl_i\\":false,\\"ps_br_i\\":false,\\"ps_bt_i\\":false,\\"ps_ifl_i\\":false,\\"ps_il_i\\":false,\\"ps_ir_i\\":false,\\"ps_klt_i\\":false,\\"ps_kwn_i\\":false,\\"ps_ls_i\\":false,\\"ps_lslm_i\\":false,\\"ps_pbb_i\\":false,\\"ps_rd\\":\\"\\",\\"ps_sm_i\\":false,\\"ps_sa_i\\":false,\\"ps_sb_i\\":false,\\"ps_shd\\":false,\\"ps_ts\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}},\\"stsl_trailingType\\":\\"paragraph\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"row\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"suppress_feature\\",\\"stsl_styles\\":[{\\"sfs_sst\\":false}]},{\\"stsl_type\\":\\"tbl\\",\\"stsl_styles\\":[]},{\\"stsl_type\\":\\"text\\",\\"stsl_styles\\":[{\\"ts_bd\\":false,\\"ts_fs\\":11,\\"ts_ff\\":\\"Arial\\",\\"ts_it\\":false,\\"ts_sc\\":false,\\"ts_st\\":false,\\"ts_tw\\":400,\\"ts_un\\":false,\\"ts_va\\":\\"sup\\",\\"ts_bgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":null},\\"ts_fgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":\\"#000000\\"},\\"ts_bd_i\\":false,\\"ts_fs_i\\":false,\\"ts_ff_i\\":false,\\"ts_it_i\\":false,\\"ts_sc_i\\":false,\\"ts_st_i\\":false,\\"ts_un_i\\":false,\\"ts_va_i\\":false,\\"ts_bgc2_i\\":false,\\"ts_fgc2_i\\":false},null,null,null,null,{\\"ts_bd\\":false,\\"ts_fs\\":11,\\"ts_ff\\":\\"Arial\\",\\"ts_it\\":false,\\"ts_sc\\":false,\\"ts_st\\":false,\\"ts_tw\\":400,\\"ts_un\\":false,\\"ts_va\\":\\"sub\\",\\"ts_bgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":null},\\"ts_fgc2\\":{\\"clr_type\\":0,\\"hclr_color\\":\\"#000000\\"},\\"ts_bd_i\\":false,\\"ts_fs_i\\":false,\\"ts_ff_i\\":false,\\"ts_it_i\\":false,\\"ts_sc_i\\":false,\\"ts_st_i\\":false,\\"ts_un_i\\":false,\\"ts_va_i\\":false,\\"ts_bgc2_i\\":false,\\"ts_fgc2_i\\":false}]}],\\"dsl_metastyleslices\\":[{\\"stsl_type\\":\\"autocorrect\\",\\"stsl_styles\\":[{\\"ac_ot\\":null,\\"ac_ct\\":null,\\"ac_type\\":null,\\"ac_sm\\":{\\"asm_s\\":0,\\"asm_rl\\":0,\\"asm_l\\":\\"\\"},\\"ac_id\\":\\"\\"}]},{\\"stsl_type\\":\\"collapsed_content\\",\\"stsl_styles\\":[{\\"colc_icc\\":false}]},{\\"stsl_type\\":\\"composing_decoration\\",\\"stsl_styles\\":[{\\"cd_u\\":false,\\"cd_bgc\\":{\\"clr_type\\":0,\\"hclr_color\\":null}}]},{\\"stsl_type\\":\\"composing_region\\",\\"stsl_styles\\":[{\\"cr_c\\":false}]},{\\"stsl_type\\":\\"draft_comment\\",\\"stsl_styles\\":[{\\"dcs_cids\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"ignore_word\\",\\"stsl_styles\\":[{\\"iwos_i\\":false}]},{\\"stsl_type\\":\\"revision_diff\\",\\"stsl_styles\\":[{\\"revdiff_dt\\":0,\\"revdiff_a\\":\\"\\",\\"revdiff_aid\\":\\"\\"}]},{\\"stsl_type\\":\\"smart_todo\\",\\"stsl_styles\\":[{\\"sts_cid\\":null,\\"sts_ot\\":null,\\"sts_ac\\":null,\\"sts_hi\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"sts_pa\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"sts_dm\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"spellcheck\\",\\"stsl_styles\\":[{\\"sc_id\\":\\"\\",\\"sc_ow\\":null,\\"sc_sl\\":null,\\"sc_sugg\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"sc_sm\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}}}]},{\\"stsl_type\\":\\"voice_corrections\\",\\"stsl_styles\\":[{\\"vcs_c\\":{\\"cv\\":{\\"op\\":\\"set\\",\\"opValue\\":[]}},\\"vcs_id\\":\\"\\"}]},{\\"stsl_type\\":\\"voice_dotted_span\\",\\"stsl_styles\\":[{\\"vdss_p\\":null,\\"vdss_id\\":\\"\\"}]}],\\"dsl_suggestedinsertions\\":{\\"sgsl_sugg\\":[]},\\"dsl_suggesteddeletions\\":{\\"sgsl_sugg\\":[]},\\"dsl_entitypositionmap\\":{},\\"dsl_entitymap\\":{},\\"dsl_entitytypemap\\":{},\\"dsl_drawingrevisionaccesstokenmap\\":{},\\"dsl_relateddocslices\\":{},\\"dsl_nestedmodelmap\\":{}},\\"autotext_content\\":{}}","edi":"QT9bASY3_GwFN8ZN119g2Ja2EHnrx_nq6yjODnrlfjrbkZEpqMl5NY_AGJtzSbcFsVk9XklA8IoHTqo123xXoO8cLKmVgnTCRWC6udfsvDpa","edrk":"xKYajWttYyLMt_u511ACUFI3qewboAf7dCubtDmoDhoCHwlXkw..","dct":"kix","ds":false,"cses":false}', + }); + + richText.expectSnapshotValue(); + }); + }); + } +); diff --git a/cypress/e2e/rich-text/RichTextEditor.Tracking.spec.ts b/cypress/e2e/rich-text/RichTextEditor.Tracking.spec.ts new file mode 100644 index 000000000..756dc39db --- /dev/null +++ b/cypress/e2e/rich-text/RichTextEditor.Tracking.spec.ts @@ -0,0 +1,824 @@ +/* eslint-disable mocha/no-setup-in-describe */ + +import { MARKS, BLOCKS, INLINES } from '@contentful/rich-text-types'; + +import { RichTextPage } from './RichTextPage'; + +// the sticky toolbar gets in the way of some of the tests, therefore +// we increase the viewport height to fit the whole page on the screen + +describe('Rich Text Editor - Tracking', { viewportHeight: 2000 }, () => { + let richText: RichTextPage; + + // copied from the 'is-hotkey' library we use for RichText shortcuts + const IS_MAC = + typeof window != 'undefined' && /Mac|iPod|iPhone|iPad/.test(window.navigator.platform); + const mod = IS_MAC ? 'meta' : 'control'; + + const action = (action, origin, payload = {}) => [ + action, + { + origin, + ...payload, + }, + ]; + + const linkRendered = () => action('linkRendered', 'viewport-interaction'); + + const openCreateEmbedDialog = (origin, nodeType) => + action('openCreateEmbedDialog', origin, { nodeType }); + + const insert = (origin, payload) => action('insert', origin, payload); + const remove = (origin, payload) => action('remove', origin, payload); + const edit = (origin, payload) => action('edit', origin, payload); + + const cancelEmbeddedDialog = (origin, nodeType) => + action('cancelCreateEmbedDialog', origin, { nodeType }); + + const openCommandPalette = () => action('openRichTextCommandPalette', 'command-palette'); + + const cancelCommandPalette = () => action('cancelRichTextCommandPalette', 'command-palette'); + + beforeEach(() => { + richText = new RichTextPage(); + richText.visit(); + }); + + describe('Text Pasting', () => { + it('tracks text pasting', () => { + richText.editor.click().paste({ 'text/plain': 'Hello World!' }); + + richText.expectTrackingValue([ + action('paste', 'shortcut-or-viewport', { + characterCountAfter: 12, + characterCountBefore: 0, + characterCountSelection: 0, + source: 'Unknown', + }), + ]); + + richText.editor.click().type('{enter}').paste({ 'text/plain': 'Hello World!' }); + + richText.expectTrackingValue([ + action('paste', 'shortcut-or-viewport', { + characterCountAfter: 12, + characterCountBefore: 0, + characterCountSelection: 0, + source: 'Unknown', + }), + action('paste', 'shortcut-or-viewport', { + characterCountAfter: 25, + characterCountBefore: 13, + characterCountSelection: 0, + source: 'Unknown', + }), + ]); + }); + + it('tracks google docs source', () => { + richText.editor.click().paste({ + 'text/html': `Hello`, + }); + + richText.expectTrackingValue([ + action('paste', 'shortcut-or-viewport', { + characterCountAfter: 5, + characterCountBefore: 0, + characterCountSelection: 0, + source: 'Google Docs', + }), + ]); + }); + + it('tracks google spreadsheets source', () => { + richText.editor.click().paste({ + 'text/html': `Example response for issues that go into the sprint (we don't close the Zendesk ticket):`, + }); + + richText.expectTrackingValue([ + action('paste', 'shortcut-or-viewport', { + characterCountAfter: 88, + characterCountBefore: 0, + characterCountSelection: 0, + source: 'Google Spreadsheets', + }), + ]); + }); + + it('tracks slack source', () => { + richText.editor.click().paste({ + 'text/html': `Hey everyone`, + }); + + richText.expectTrackingValue([ + action('paste', 'shortcut-or-viewport', { + characterCountAfter: 12, + characterCountBefore: 0, + characterCountSelection: 0, + source: 'Slack', + }), + ]); + }); + + it('tracks apple notes source', () => { + richText.editor.click().paste({ + 'text/html': `

    Hello world

    `, + }); + + richText.expectTrackingValue([ + action('paste', 'shortcut-or-viewport', { + characterCountAfter: 14, + characterCountBefore: 0, + characterCountSelection: 0, + source: 'Apple Notes', + }), + ]); + }); + + it('tracks microsoft word source', () => { + richText.editor.click().paste({ + 'text/html': `

    Hello

    `, + }); + + richText.expectTrackingValue([ + action('paste', 'shortcut-or-viewport', { + characterCountAfter: 5, + characterCountBefore: 0, + characterCountSelection: 0, + source: 'Microsoft Word', + }), + ]); + }); + + it('tracks microsoft excel source', () => { + richText.editor.click().paste({ + 'text/html': `

    Hello

    `, + }); + + richText.expectTrackingValue([ + action('paste', 'shortcut-or-viewport', { + characterCountAfter: 5, + characterCountBefore: 0, + characterCountSelection: 0, + source: 'Microsoft Excel', + }), + ]); + }); + }); + + describe('Marks', () => { + [ + [MARKS.BOLD, `{${mod}}b`], + [MARKS.ITALIC, `{${mod}}i`], + [MARKS.UNDERLINE, `{${mod}}u`], + [MARKS.CODE, `{${mod}}/`], + ].forEach(([mark, shortcut]) => { + const toggleMarkViaToolbar = (mark: MARKS) => { + if (mark === 'code' || mark === 'superscript' || mark === 'subscript') { + cy.findByTestId('dropdown-toolbar-button').click(); + cy.findByTestId(`${mark}-toolbar-button`).click(); + } else { + cy.findByTestId(`${mark}-toolbar-button`).click(); + } + }; + it(`tracks ${mark} mark via toolbar`, () => { + richText.editor.click(); + + toggleMarkViaToolbar(mark); + toggleMarkViaToolbar(mark); + + richText.expectTrackingValue([ + action('mark', 'toolbar-icon', { markType: mark }), + action('unmark', 'toolbar-icon', { markType: mark }), + ]); + }); + + it(`tracks ${mark} mark via shortcut`, () => { + richText.editor.click().type(shortcut).type(shortcut); + + richText.expectTrackingValue([ + action('mark', 'shortcut', { markType: mark }), + action('unmark', 'shortcut', { markType: mark }), + ]); + }); + }); + }); + + describe('Headings', () => { + const headings = [ + [BLOCKS.HEADING_1, 'Heading 1', `{${mod}+alt+1}`], + [BLOCKS.HEADING_2, 'Heading 2', `{${mod}+alt+2}`], + [BLOCKS.HEADING_3, 'Heading 3', `{${mod}+alt+3}`], + [BLOCKS.HEADING_4, 'Heading 4', `{${mod}+alt+4}`], + [BLOCKS.HEADING_5, 'Heading 5', `{${mod}+alt+5}`], + [BLOCKS.HEADING_6, 'Heading 6', `{${mod}+alt+6}`], + ]; + + headings.forEach(([type, label, shortcut]) => { + it(`tracks ${label} (${type}) via toolbar`, () => { + richText.editor.click(); + + richText.toolbar.toggleHeading(type); + richText.toolbar.toggleHeading(type); + + richText.expectTrackingValue([ + insert('toolbar-icon', { nodeType: type }), + remove('toolbar-icon', { nodeType: type }), + ]); + }); + + it(`tracks ${label} (${type}) via hotkeys ${shortcut}`, () => { + richText.editor.click().type(shortcut).type(shortcut); + + richText.expectTrackingValue([ + insert('shortcut', { nodeType: type }), + remove('shortcut', { nodeType: type }), + ]); + }); + }); + }); + + describe('Quote', () => { + const methods: [string, string, () => void][] = [ + [ + 'using the toolbar', + 'toolbar-icon', + () => { + richText.toolbar.quote.click(); + }, + ], + [ + 'using hotkey (mod+shift+1)', + 'shortcut', + () => { + richText.editor.type(`{${mod}}{shift}1`); + }, + ], + ]; + + for (const [scenario, origin, toggleQuote] of methods) { + it(`tracks blockquote ${scenario}`, () => { + richText.editor.click(); + + toggleQuote(); + toggleQuote(); + + richText.expectTrackingValue([ + insert(origin, { nodeType: BLOCKS.QUOTE }), + remove(origin, { nodeType: BLOCKS.QUOTE }), + ]); + }); + } + }); + + describe('Tables', () => { + const insertTable = () => { + richText.editor.click(); + richText.toolbar.table.click(); + return richText.editor; + }; + const insertTableWithExampleData = () => { + insertTable() + .type('foo') + .type('{rightarrow}') + .type('bar') + .type('{rightarrow}') + .type('baz') + .type('{rightarrow}') + .type('quux'); + }; + + const insertTableAction = () => action('insertTable', 'toolbar-icon'); + const removeTableAction = (payload) => action('removeTable', 'viewport-interaction', payload); + const insertTableRowAction = (payload) => + action('insertTableRow', 'viewport-interaction', payload); + const insertTableColumnAction = (payload) => + action('insertTableColumn', 'viewport-interaction', payload); + const removeTableColumnAction = (payload) => + action('removeTableColumn', 'viewport-interaction', payload); + const removeTableRowAction = (payload) => + action('removeTableRow', 'viewport-interaction', payload); + + it('tracks insert table', () => { + insertTable(); + + richText.expectTrackingValue([insertTableAction()]); + }); + + describe('Table Actions', () => { + const findAction = (action: string) => { + cy.findByTestId('cf-table-actions-button').click(); + return cy.findByText(action); + }; + + const doAction = (action: string) => { + findAction(action).click({ force: true }); + }; + + beforeEach(() => { + insertTableWithExampleData(); + }); + + it('adds row above', () => { + doAction('Add row above'); + + richText.expectTrackingValue([ + insertTableAction(), + insertTableRowAction({ + tableSize: { + numColumns: 2, + numRows: 2, + }, + }), + ]); + }); + + it('adds row below', () => { + doAction('Add row below'); + + richText.expectTrackingValue([ + insertTableAction(), + insertTableRowAction({ + tableSize: { + numColumns: 2, + numRows: 2, + }, + }), + ]); + }); + + it('adds column left', () => { + doAction('Add column left'); + + richText.expectTrackingValue([ + insertTableAction(), + insertTableColumnAction({ + tableSize: { + numColumns: 2, + numRows: 2, + }, + }), + ]); + }); + + it('adds column right', () => { + doAction('Add column right'); + + richText.expectTrackingValue([ + insertTableAction(), + insertTableColumnAction({ + tableSize: { + numColumns: 2, + numRows: 2, + }, + }), + ]); + }); + + it('deletes row', () => { + doAction('Delete row'); + + richText.expectTrackingValue([ + insertTableAction(), + removeTableRowAction({ + tableSize: { + numColumns: 2, + numRows: 2, + }, + }), + ]); + }); + + it('deletes column', () => { + doAction('Delete column'); + + richText.expectTrackingValue([ + insertTableAction(), + removeTableColumnAction({ + tableSize: { + numColumns: 2, + numRows: 2, + }, + }), + ]); + }); + + it('deletes table', () => { + doAction('Delete table'); + + richText.expectTrackingValue([ + insertTableAction(), + removeTableAction({ + tableSize: { + numColumns: 2, + numRows: 2, + }, + }), + ]); + }); + }); + }); + + describe('Links', () => { + const openCreateModal = (origin) => [ + 'openCreateHyperlinkDialog', + { + origin, + }, + ]; + + const closeModal = (origin) => [ + 'cancelCreateHyperlinkDialog', + { + origin, + }, + ]; + + const openEditModal = () => [ + 'openEditHyperlinkDialog', + { + origin: 'viewport-interaction', + }, + ]; + + const insertHyperlink = (origin) => insert(origin, { linkType: 'uri', nodeType: 'hyperlink' }); + const insertAssetHyperlink = (origin) => + insert(origin, { linkType: 'Asset', nodeType: 'asset-hyperlink' }); + const insertEntryHyperlink = (origin) => + insert(origin, { linkType: 'Entry', nodeType: 'entry-hyperlink' }); + + const editHyperlink = () => + edit('viewport-interaction', { linkType: 'uri', nodeType: 'hyperlink' }); + const editAssetHyperlink = () => + edit('viewport-interaction', { linkType: 'Asset', nodeType: 'asset-hyperlink' }); + const editEntryHyperlink = () => + edit('viewport-interaction', { linkType: 'Entry', nodeType: 'entry-hyperlink' }); + + const unlink = (origin) => [ + 'unlinkHyperlinks', + { + origin, + }, + ]; + + const methods: [string, string, () => void][] = [ + [ + 'using the link toolbar button', + 'toolbar-icon', + () => { + richText.toolbar.hyperlink.click(); + }, + ], + [ + 'using the link keyboard shortcut', + 'shortcut', + () => { + richText.editor.type(`{${mod}}k`); + }, + ], + ]; + + for (const [triggerMethod, origin, triggerLinkModal] of methods) { + describe(triggerMethod, () => { + it('opens the hyperlink modal but cancels without adding a link', () => { + richText.editor.type('The quick brown fox jumps over the lazy '); + + triggerLinkModal(); + + const form = richText.forms.hyperlink; + + form.cancel.click(); + + richText.expectTrackingValue([openCreateModal(origin), closeModal(origin)]); + }); + + it('tracks adds and removes hyperlinks', () => { + richText.editor.type('The quick brown fox jumps over the lazy '); + + triggerLinkModal(); + + const form = richText.forms.hyperlink; + + form.linkText.type('dog'); + form.linkTarget.type('https://zombo.com'); + form.submit.click(); + + richText.expectTrackingValue([openCreateModal(origin), insertHyperlink(origin)]); + + richText.editor.click().type('{selectall}'); + cy.findByTestId('hyperlink-toolbar-button').click(); + + richText.expectTrackingValue([ + openCreateModal(origin), + insertHyperlink(origin), + unlink('toolbar-icon'), + ]); + }); + + it('tracks when converting text to URL hyperlink', () => { + richText.editor.type('My cool website{selectall}'); + + triggerLinkModal(); + const form = richText.forms.hyperlink; + + form.linkTarget.type('https://zombo.com'); + + form.submit.click(); + + richText.expectTrackingValue([openCreateModal(origin), insertHyperlink(origin)]); + }); + + it('tracks when converting text to entry hyperlink', () => { + richText.editor.type('My cool entry{selectall}'); + triggerLinkModal(); + const form = richText.forms.hyperlink; + + form.linkType.select('entry-hyperlink'); + + form.linkEntityTarget.click(); + + form.submit.click(); + + richText.expectTrackingValue([ + openCreateModal(origin), + insertEntryHyperlink(origin), + linkRendered(), + ]); + }); + + it('tracks when converting text to asset hyperlink', () => { + richText.editor.type('My cool asset{selectall}'); + + triggerLinkModal(); + + const form = richText.forms.hyperlink; + + form.linkType.select('asset-hyperlink'); + form.linkEntityTarget.click(); + form.submit.click(); + + richText.expectTrackingValue([ + openCreateModal(origin), + insertAssetHyperlink(origin), + linkRendered(), + ]); + }); + + it('tracks when editing hyperlinks', () => { + richText.editor.type('My cool website{selectall}'); + + triggerLinkModal(); + + // Part 1: + // Create a hyperlink + const form = richText.forms.hyperlink; + + form.linkTarget.type('https://zombo.com'); + form.submit.click(); + + richText.expectTrackingValue([openCreateModal(origin), insertHyperlink(origin)]); + + // Part 2: + // Update hyperlink to entry link + + richText.editor.findByTestId('cf-ui-text-link').click({ force: true }); + + form.linkType.select('entry-hyperlink'); + form.linkEntityTarget.click(); + form.submit.click(); + + richText.expectTrackingValue([ + openCreateModal(origin), + insertHyperlink(origin), + openEditModal(), + editEntryHyperlink(), + linkRendered(), + ]); + + // Part 3: + // Update entry link to asset link + + richText.editor.findByTestId('cf-ui-text-link').click({ force: true }); + + form.linkType.select('asset-hyperlink'); + form.linkEntityTarget.click(); + form.submit.click(); + + richText.expectTrackingValue([ + openCreateModal(origin), + insertHyperlink(origin), + openEditModal(), + editEntryHyperlink(), + linkRendered(), + openEditModal(), + editAssetHyperlink(), + linkRendered(), + ]); + + // Part 3: + // Update asset link to hyperlink + + richText.editor.findByTestId('cf-ui-text-link').click({ force: true }); + + form.linkType.select('hyperlink'); + form.linkTarget.type('https://zombo.com'); + form.submit.click(); + + richText.expectTrackingValue([ + openCreateModal(origin), + insertHyperlink(origin), + openEditModal(), + editEntryHyperlink(), + linkRendered(), + openEditModal(), + editAssetHyperlink(), + linkRendered(), + openEditModal(), + editHyperlink(), + ]); + }); + }); + } + }); + + describe('Embedded Entry Blocks', () => { + const methods: [string, string, () => void][] = [ + [ + 'using the toolbar button', + 'toolbar-icon', + () => { + richText.toolbar.embed('entry-block'); + }, + ], + [ + 'using the keyboard shortcut', + 'shortcut', + () => { + richText.editor.type(`{${mod}+shift+e}`); + }, + ], + ]; + + for (const [triggerMethod, origin, triggerEmbeddedEntry] of methods) { + describe(triggerMethod, () => { + it('tracks when inserting embedded entry block', () => { + richText.editor.click().then(triggerEmbeddedEntry); + + richText.expectTrackingValue([ + openCreateEmbedDialog(origin, BLOCKS.EMBEDDED_ENTRY), + insert(origin, { nodeType: BLOCKS.EMBEDDED_ENTRY }), + linkRendered(), + ]); + }); + + it('cancels without adding the entry block', () => { + cy.on('window:confirm', () => false); + + richText.editor.click().then(triggerEmbeddedEntry); + + richText.expectTrackingValue([ + openCreateEmbedDialog(origin, BLOCKS.EMBEDDED_ENTRY), + cancelEmbeddedDialog(origin, BLOCKS.EMBEDDED_ENTRY), + ]); + }); + }); + } + }); + + describe('Embedded Asset Blocks', () => { + const methods: [string, string, () => void][] = [ + [ + 'using the toolbar button', + 'toolbar-icon', + () => { + richText.toolbar.embed('asset-block'); + }, + ], + [ + 'using the keyboard shortcut', + 'shortcut', + () => { + richText.editor.type(`{${mod}+shift+a}`); + }, + ], + ]; + + for (const [triggerMethod, origin, triggerEmbeddedAsset] of methods) { + describe(triggerMethod, () => { + it('tracks when inserting embedded asset block', () => { + richText.editor.click().then(triggerEmbeddedAsset); + + richText.expectTrackingValue([ + openCreateEmbedDialog(origin, BLOCKS.EMBEDDED_ASSET), + insert(origin, { nodeType: BLOCKS.EMBEDDED_ASSET }), + linkRendered(), + ]); + }); + + it('cancels without adding the entry asset', () => { + cy.on('window:confirm', () => false); + + richText.editor.click().then(triggerEmbeddedAsset); + + richText.expectTrackingValue([ + openCreateEmbedDialog(origin, BLOCKS.EMBEDDED_ASSET), + cancelEmbeddedDialog(origin, BLOCKS.EMBEDDED_ASSET), + ]); + }); + }); + } + }); + + describe('Embedded Entry Inlines', () => { + const methods: [string, string, () => void][] = [ + [ + 'using the toolbar button', + 'toolbar-icon', + () => { + richText.toolbar.embed('entry-inline'); + }, + ], + [ + 'using the keyboard shortcut', + 'shortcut', + () => { + richText.editor.type(`{${mod}+shift+2}`); + }, + ], + ]; + + for (const [triggerMethod, origin, triggerEmbeddedInline] of methods) { + describe(triggerMethod, () => { + it('tracks when inserting embedded asset block', () => { + richText.editor.click().then(triggerEmbeddedInline); + + richText.expectTrackingValue([ + openCreateEmbedDialog(origin, INLINES.EMBEDDED_ENTRY), + insert(origin, { nodeType: INLINES.EMBEDDED_ENTRY }), + linkRendered(), + ]); + }); + + it('cancels without adding the entry asset', () => { + cy.on('window:confirm', () => false); + + richText.editor.click().then(triggerEmbeddedInline); + + richText.expectTrackingValue([ + openCreateEmbedDialog(origin, INLINES.EMBEDDED_ENTRY), + cancelEmbeddedDialog(origin, INLINES.EMBEDDED_ENTRY), + ]); + }); + }); + } + }); + + describe('Commands', () => { + const origin = 'command-palette'; + const getCommandList = () => cy.findByTestId('rich-text-commands-list'); + + beforeEach(() => { + richText.editor.click().type('/'); + }); + it('tracks opening the command palette', () => { + richText.expectTrackingValue([openCommandPalette()]); + }); + + it('tracks cancelling the command palette on pressing esc', () => { + richText.editor.type('{esc}'); + richText.expectTrackingValue([openCommandPalette(), cancelCommandPalette()]); + }); + + it('tracks embedding an entry block', () => { + getCommandList().findByText('Embed Example Content Type').click(); + getCommandList().findByText('Hello world').click(); + richText.expectTrackingValue([ + openCommandPalette(), + insert(origin, { nodeType: BLOCKS.EMBEDDED_ENTRY }), + linkRendered(), + ]); + }); + + it('tracks embedding an inline entry', () => { + getCommandList().findByText('Embed Example Content Type - Inline').click(); + getCommandList().findByText('Hello world').click(); + + richText.expectTrackingValue([ + openCommandPalette(), + insert(origin, { nodeType: INLINES.EMBEDDED_ENTRY }), + linkRendered(), + ]); + }); + + it('tracks embedding an asset block', () => { + getCommandList().findByText('Embed Asset').click(); + getCommandList().findByText('test').click(); + + richText.expectTrackingValue([ + openCommandPalette(), + insert(origin, { nodeType: BLOCKS.EMBEDDED_ASSET }), + linkRendered(), + ]); + }); + }); +}); diff --git a/cypress/e2e/rich-text/RichTextEditor.spec.ts b/cypress/e2e/rich-text/RichTextEditor.spec.ts new file mode 100644 index 000000000..d3d87025c --- /dev/null +++ b/cypress/e2e/rich-text/RichTextEditor.spec.ts @@ -0,0 +1,2147 @@ +/* eslint-disable mocha/no-setup-in-describe */ + +import { MARKS, BLOCKS, INLINES } from '@contentful/rich-text-types'; + +import { + document as doc, + block, + inline, + text, +} from '../../../packages/rich-text/src/helpers/nodeFactory'; +import documentWithLinks from './document-mocks/documentWithLinks'; +import invalidDocumentNormalizable from './document-mocks/invalidDocumentNormalizable'; +import { EmbedType, RichTextPage } from './RichTextPage'; + +// the sticky toolbar gets in the way of some of the tests, therefore +// we increase the viewport height to fit the whole page on the screen + +describe('Rich Text Editor', { viewportHeight: 2000 }, () => { + let richText: RichTextPage; + + // copied from the 'is-hotkey' library we use for RichText shortcuts + const IS_MAC = + typeof window != 'undefined' && /Mac|iPod|iPhone|iPad/.test(window.navigator.platform); + const mod = IS_MAC ? 'meta' : 'control'; + const buildHelper = + (type) => + (...children) => + block(type, {}, ...children); + const paragraph = buildHelper(BLOCKS.PARAGRAPH); + const paragraphWithText = (t) => paragraph(text(t, [])); + const emptyParagraph = () => paragraphWithText(''); + const expectDocumentToBeEmpty = () => richText.expectValue(undefined); + const entryBlock = () => + block(BLOCKS.EMBEDDED_ENTRY, { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Entry', + }, + }, + }); + const assetBlock = () => + block(BLOCKS.EMBEDDED_ASSET, { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Asset', + }, + }, + }); + + const keys = { + enter: { keyCode: 13, which: 13, key: 'Enter' }, + backspace: { keyCode: 8, which: 8, key: 'Backspace' }, + }; + + const headings = [ + [BLOCKS.PARAGRAPH, 'Normal text'], + [BLOCKS.HEADING_1, 'Heading 1', `{${mod}+alt+1}`], + [BLOCKS.HEADING_2, 'Heading 2', `{${mod}+alt+2}`], + [BLOCKS.HEADING_3, 'Heading 3', `{${mod}+alt+3}`], + [BLOCKS.HEADING_4, 'Heading 4', `{${mod}+alt+4}`], + [BLOCKS.HEADING_5, 'Heading 5', `{${mod}+alt+5}`], + [BLOCKS.HEADING_6, 'Heading 6', `{${mod}+alt+6}`], + ]; + + function pressEnter() { + richText.editor.trigger('keydown', keys.enter); + } + + function getDropdownList() { + return cy.findByTestId('dropdown-heading-list'); + } + + function getDropdownItem(type: string) { + return cy.findByTestId(`dropdown-option-${type}`); + } + + function addBlockquote(content = '') { + richText.editor.click().type(content); + + richText.toolbar.quote.click(); + + const expectedValue = doc( + block(BLOCKS.QUOTE, {}, block(BLOCKS.PARAGRAPH, {}, text(content, []))), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedValue); + + return expectedValue; + } + + beforeEach(() => { + richText = new RichTextPage(); + richText.visit(); + }); + + it('is empty by default', () => { + cy.editorEvents().should('deep.equal', []); + }); + + it('disable all editor actions on readonly mode', () => { + cy.setInitialValue( + doc( + paragraphWithText('text'), + block( + BLOCKS.TABLE, + {}, + block( + BLOCKS.TABLE_ROW, + {}, + block(BLOCKS.TABLE_HEADER_CELL, {}, paragraphWithText('heading 1')), + block(BLOCKS.TABLE_HEADER_CELL, {}, paragraphWithText('heading 2')) + ), + block( + BLOCKS.TABLE_ROW, + {}, + block(BLOCKS.TABLE_CELL, {}, paragraphWithText('cell 1')), + block(BLOCKS.TABLE_CELL, {}, paragraphWithText('cell 2')) + ) + ), + emptyParagraph() + ) + ); + + cy.setInitialDisabled(true); + + // Necessary for reading the correct LocalStorage values as we do + // the initial page load on the beforeEach hook + cy.reload(); + + richText.toolbar.bold.should('be.disabled'); + richText.toolbar.headingsDropdown.should('be.disabled'); + richText.toolbar.hr.should('be.disabled'); + richText.toolbar.hyperlink.should('be.disabled'); + richText.toolbar.italic.should('be.disabled'); + richText.toolbar.ol.should('be.disabled'); + richText.toolbar.quote.should('be.disabled'); + richText.toolbar.table.should('be.disabled'); + richText.toolbar.ul.should('be.disabled'); + richText.toolbar.underline.should('be.disabled'); + richText.toolbar.embedDropdown.should('be.disabled'); + }); + + it('allows typing', () => { + richText.editor.click().type('some text').click(); + + const expectedValue = doc(block(BLOCKS.PARAGRAPH, {}, text('some text'))); + + richText.expectValue(expectedValue); + }); + + it('has correct keyboard navigation', () => { + richText.editor.focus(); + richText.editor.tab({ shift: true }); + richText.toolbar.embedDropdown.should('have.focus'); + richText.editor.tab(); + richText.editor.tab(); + richText.editor.should('not.have.focus'); + }); + + describe('history', () => { + it('supports undo and redo', () => { + const expectedValue = doc(block(BLOCKS.PARAGRAPH, {}, text('some text.'))); + + // type + richText.editor.click().type('some text.').click(); + + richText.expectValue(expectedValue); + + // undo + richText.editor.click().type(`{${mod}}z`).click(); + richText.expectValue(undefined); + + // redo + richText.editor.click().type(`{${mod}}{shift}z`).click(); + richText.expectValue(expectedValue); + }); + + it('correctly undoes after drag&drop', () => { + const paragraph = block(BLOCKS.PARAGRAPH, {}, text('some text.')); + const docBeforeDragAndDrop = doc(paragraph, entryBlock(), emptyParagraph()); + + // type text, insert entry block + richText.editor.click().type('some text.').click(); + richText.toolbar.embed('entry-block'); + richText.expectValue(docBeforeDragAndDrop); + + // drag & drop + cy.findByTestId('cf-ui-entry-card') + .parent() + .parent() + .dragTo(() => richText.editor.findByText('some text.')); + if (Cypress.browser.name === 'firefox') { + richText.expectValue(doc(entryBlock(), paragraph, emptyParagraph())); + } else { + richText.expectValue( + doc( + block(BLOCKS.PARAGRAPH, {}, text('some')), + entryBlock(), + block(BLOCKS.PARAGRAPH, {}, text(' text.')), + emptyParagraph() + ) + ); + } + + // undo + // Ensures that drag&drop was recorded in a separate history batch, + // undoing should not delete the entry block. + // See the Slate bug report: https://github.com/ianstormtaylor/slate/issues/4694 + richText.editor.click().type(`{${mod}}z`).click(); + richText.expectValue(docBeforeDragAndDrop); + }); + }); + + describe('Marks', () => { + const findMarkViaToolbar = (mark: string) => { + if (mark === 'code' || mark === 'superscript' || mark === 'subscript') { + cy.findByTestId('dropdown-toolbar-button').click(); + return cy.findByTestId(`${mark}-toolbar-button`); + } else { + return cy.findByTestId(`${mark}-toolbar-button`); + } + }; + + const toggleMarkViaToolbar = (mark: string) => { + if (mark === 'code' || mark === 'superscript' || mark === 'subscript') { + cy.findByTestId('dropdown-toolbar-button').click(); + cy.findByTestId(`${mark}-toolbar-button`).click(); + } else { + cy.findByTestId(`${mark}-toolbar-button`).click(); + } + }; + + it(`shows ${MARKS.BOLD}, ${MARKS.ITALIC}, ${MARKS.UNDERLINE}, ${MARKS.CODE} if not explicitly allowed`, () => { + cy.setFieldValidations([]); + cy.reload(); + findMarkViaToolbar(MARKS.BOLD).should('be.visible'); + findMarkViaToolbar(MARKS.ITALIC).should('be.visible'); + findMarkViaToolbar(MARKS.UNDERLINE).should('be.visible'); + findMarkViaToolbar(MARKS.CODE).should('be.visible'); + }); + + [ + [MARKS.BOLD, `{${mod}}b`], + [MARKS.ITALIC, `{${mod}}i`], + [MARKS.UNDERLINE, `{${mod}}u`], + [MARKS.CODE, `{${mod}}/`], + [MARKS.SUPERSCRIPT], + [MARKS.SUBSCRIPT], + ].forEach(([mark, shortcut]) => { + describe(`${mark} mark toggle via toolbar`, () => { + it('allows writing marked text', () => { + richText.editor.click(); + + toggleMarkViaToolbar(mark); + + richText.editor.type('some text'); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('some text', [{ type: mark }])) + ); + + richText.expectValue(expectedValue); + }); + + it('allows writing marked text by selecting text', () => { + richText.editor.click().type('some text{selectall}'); + + toggleMarkViaToolbar(mark); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('some text', [{ type: mark }])) + ); + + richText.expectValue(expectedValue); + }); + + it('allows writing unmarked text', () => { + richText.editor.click(); + + toggleMarkViaToolbar(mark); + toggleMarkViaToolbar(mark); + + richText.editor.type('some text'); + + const expectedValue = doc(block(BLOCKS.PARAGRAPH, {}, text('some text', []))); + + richText.expectValue(expectedValue); + }); + + it('allows writing unmarked text by selecting text', () => { + richText.editor.click().type('some text{selectall}'); + + toggleMarkViaToolbar(mark); + + // Wait until the mark is applied + richText.expectValue( + doc(block(BLOCKS.PARAGRAPH, {}, text('some text', [{ type: mark }]))) + ); + + richText.editor.click().type('{selectall}'); + + toggleMarkViaToolbar(mark); + + const expectedValue = doc(block(BLOCKS.PARAGRAPH, {}, text('some text', []))); + + richText.expectValue(expectedValue); + }); + }); + + if (shortcut) { + describe(`${mark} mark toggle via shortcut`, () => { + it('allows writing marked text', () => { + richText.editor.click().type(shortcut).type('some text'); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('some text', [{ type: mark }])) + ); + + richText.expectValue(expectedValue); + }); + + it('allows writing marked text by selecting text', () => { + richText.editor.click().type('some text'); + + cy.wait(100); + + richText.editor.type('{selectall}').type(shortcut); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('some text', [{ type: mark }])) + ); + + richText.expectValue(expectedValue); + }); + + it('allows writing unmarked text', () => { + richText.editor.click().type(shortcut).type(shortcut).type('some text'); + + const expectedValue = doc(block(BLOCKS.PARAGRAPH, {}, text('some text', []))); + + richText.expectValue(expectedValue); + }); + + it('allows writing unmarked text by selecting text', () => { + richText.editor.click().type('some text'); + + cy.wait(100); + + richText.editor.type('{selectall}').type(shortcut).type('{selectall}').type(shortcut); + + const expectedValue = doc(block(BLOCKS.PARAGRAPH, {}, text('some text', []))); + + richText.expectValue(expectedValue); + }); + }); + } + }); + + it('should remove subscript when superscript mark is selected', () => { + richText.editor.click().type('should only be superscript{selectall}'); + toggleMarkViaToolbar(MARKS.SUBSCRIPT); + richText.editor.click().type('{selectall}'); + toggleMarkViaToolbar(MARKS.SUPERSCRIPT); + + const expectedValue = doc( + block( + BLOCKS.PARAGRAPH, + {}, + text('should only be superscript', [{ type: MARKS.SUPERSCRIPT }]) + ) + ); + richText.expectValue(expectedValue); + }); + + it('should remove superscript when subscript mark is selected', () => { + richText.editor.click().type('should only be subscript{selectall}'); + toggleMarkViaToolbar(MARKS.SUPERSCRIPT); + richText.editor.click().type('{selectall}'); + toggleMarkViaToolbar(MARKS.SUBSCRIPT); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('should only be subscript', [{ type: MARKS.SUBSCRIPT }])) + ); + richText.expectValue(expectedValue); + }); + }); + + describe('Commands', () => { + describe('Palette', () => { + const getPalette = () => cy.findByTestId('rich-text-commands'); + const getCommandList = () => cy.findByTestId('rich-text-commands-list'); + + it('should be visible', () => { + richText.editor.click().type('/'); + getPalette().should('be.visible'); + }); + + it('should close on pressing esc', () => { + richText.editor.click().type('/'); + getPalette().should('be.visible'); + richText.editor.type('{esc}'); + getPalette().should('not.exist'); + richText.expectValue(doc(block(BLOCKS.PARAGRAPH, {}, text('/')))); + }); + + it('should be searchable', () => { + richText.editor.click().type('/asset'); + getCommandList() + .children() + .each((child) => { + cy.wrap(child).should('include.text', 'Asset'); + }); + }); + + it('should delete search text after navigating', () => { + richText.editor.click().type('/asset'); + getCommandList().findByText('Embed Asset').click(); + richText.expectValue(doc(block(BLOCKS.PARAGRAPH, {}, text('/')))); + }); + + it('should navigate on category enter', () => { + richText.editor.click().type('/'); + getCommandList().findByText('Embed Example Content Type').click(); + getCommandList().should('be.visible'); + getCommandList().findByText('Embed Example Content Type').should('not.exist'); + }); + + it('should embed entry', () => { + richText.editor.click().type('/'); + getCommandList().findByText('Embed Example Content Type').click(); + getCommandList().findByText('Hello world').click(); + + //this is used instead of snapshot value because we have randomized entry IDs + richText.getValue().should((doc) => { + expect( + doc.content.filter((node) => node.nodeType === BLOCKS.EMBEDDED_ENTRY) + ).to.have.length(1); + }); + }); + + it('should embed inline', () => { + richText.editor.click().type('/'); + getCommandList().findByText('Embed Example Content Type - Inline').click(); + getCommandList().findByText('Hello world').click(); + + richText.expectSnapshotValue(); + }); + + it('should embed asset', () => { + richText.editor.click().type('/'); + getCommandList().findByText('Embed Asset').click(); + getCommandList().findByText('test').click(); + + richText.expectSnapshotValue(); + }); + + it('should delete command after embedding', () => { + richText.editor.click().type('/'); + getCommandList().findByText('Embed Example Content Type').click(); + getCommandList().findByText('Hello world').click(); + + richText.editor.children().contains('/').should('not.exist'); + }); + + it('should navigate then embed on pressing enter', () => { + richText.editor.click().type('/'); + getCommandList().findByText('Embed Example Content Type').should('exist'); + richText.editor.type('{enter}'); + getCommandList().findByText('Embed Example Content Type').should('not.exist'); + richText.editor.type('{enter}'); + + //this is used instead of snapshot value because we have randomized entry IDs + richText.getValue().should((doc) => { + expect( + doc.content.filter((node) => node.nodeType === BLOCKS.EMBEDDED_ENTRY) + ).to.have.length(1); + }); + }); + + it('should select next item on down arrow press', () => { + richText.editor.click().type('/{downarrow}{enter}{enter}'); + + richText.editor.findByTestId('embedded-entry-inline').should('exist'); + richText.expectSnapshotValue(); + }); + + it('should select previous item on up arrow press', () => { + richText.editor.click().type('/{downarrow}{uparrow}{enter}{enter}'); + + //this is used instead of snapshot value because we have randomized entry IDs + richText.getValue().should((doc) => { + expect( + doc.content.filter((node) => node.nodeType === BLOCKS.EMBEDDED_ENTRY) + ).to.have.length(1); + }); + }); + + it('should not delete adjacent text', () => { + richText.editor.click().type('test/{downarrow}{enter}{enter}'); + richText.expectSnapshotValue(); + }); + + it('should work inside headings', () => { + richText.editor.click().type('Heading 1'); + richText.toolbar.toggleHeading(BLOCKS.HEADING_1); + richText.editor.click().type('/{enter}{enter}'); + + //this is used instead of snapshot value because we have randomized entry IDs + richText.getValue().should((doc) => { + expect( + doc.content.filter((node) => { + return node.nodeType === BLOCKS.EMBEDDED_ENTRY || node.nodeType === BLOCKS.HEADING_1; + }) + ).to.have.length(2); + }); + }); + + it('should be disabled without any action item', () => { + // disable embedded entries/assets + cy.setFieldValidations([ + { + enabledNodeTypes: ['heading-1'], + }, + ]); + cy.reload(); + + // try to open command prompt + richText.editor.click().type('/'); + getPalette().should('not.exist'); + + // try to press enter and type content, which would not work with the open palette + richText.editor.click().type('{enter}Hello'); + richText.expectValue({ + nodeType: 'document', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: '/', + marks: [], + data: {}, + }, + ], + }, + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'Hello', + marks: [], + data: {}, + }, + ], + }, + ], + }); + // Clear validations after the test + cy.setFieldValidations([]); + }); + }); + }); + + describe('HR', () => { + describe('toolbar button', () => { + it('should be visible', () => { + richText.toolbar.hr.should('be.visible'); + }); + + it('should add a new line when clicking', () => { + richText.editor.click().type('some text'); + + richText.toolbar.hr.click(); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('some text', [])), + block(BLOCKS.HR, {}), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedValue); + }); + + it('should end with an empty paragraph', () => { + richText.editor.click().type('some text'); + + richText.toolbar.hr.click(); + richText.toolbar.hr.click(); + richText.toolbar.hr.click(); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('some text', [])), + block(BLOCKS.HR, {}), + block(BLOCKS.HR, {}), + block(BLOCKS.HR, {}), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedValue); + }); + + it('should split blockquote', () => { + addBlockquote('some text'); + + richText.editor.type('{enter}some text{uparrow}'); + + richText.toolbar.hr.click(); + + const expectedValue = doc( + block(BLOCKS.QUOTE, {}, block(BLOCKS.PARAGRAPH, {}, text('some text', []))), + block(BLOCKS.HR, {}), + block(BLOCKS.QUOTE, {}, block(BLOCKS.PARAGRAPH, {}, text('some text', []))), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedValue); + }); + + // TODO: Seems to be failing on CI + // eslint-disable-next-line mocha/no-skipped-tests + it.skip('should add line if HR is the first void block', () => { + richText.editor.click(); + + richText.toolbar.hr.click(); + + // Not necessary for the test but here to "force" waiting until + // we have the expected document structure + richText.expectValue(doc(block(BLOCKS.HR, {}), block(BLOCKS.PARAGRAPH, {}, text('', [])))); + + // Move arrow up to select the HR then press ENTER + richText.editor.click().type('{uparrow}{enter}'); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('', [])), + block(BLOCKS.HR, {}), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedValue); + }); + + it('should select all and delete if HR is the first void block', () => { + richText.editor.click(); + + richText.toolbar.hr.click(); + + richText.editor.click().type('hey').type('{selectall}{del}'); + + // editor is empty + richText.expectValue(undefined); + }); + + it('should be selected on backspace', () => { + richText.editor.click(); + + richText.toolbar.hr.click(); + richText.editor.type('X'); + + richText.expectValue(doc(block(BLOCKS.HR, {}), paragraphWithText('X'))); + + richText.editor.type('{backspace}{backspace}'); + + richText.expectValue(doc(block(BLOCKS.HR, {}), emptyParagraph())); + + richText.editor.type('{backspace}'); + + expectDocumentToBeEmpty(); + }); + }); + }); + + describe('Headings', () => { + headings.forEach(([type, label, shortcut]) => { + describe(label, () => { + it(`allows typing ${label} (${type})`, () => { + richText.editor.click().type('some text'); + + richText.toolbar.toggleHeading(type); + + // TODO: We should somehow assert that the editor is focused after this. + + // Account for trailing paragraph + const expectedValue = + type === BLOCKS.PARAGRAPH + ? doc(block(type, {}, text('some text', []))) + : doc(block(type, {}, text('some text', [])), emptyParagraph()); + + richText.expectValue(expectedValue); + }); + + if (shortcut) { + it(`allows writing ${label} (${type}) via hotkeys ${shortcut}`, () => { + richText.editor.click().type(shortcut).type('some text'); + + const expectedValue = doc(block(type, {}, text('some text', [])), emptyParagraph()); + + richText.expectValue(expectedValue); + }); + } + + it(`should set the dropdown label to ${label}`, () => { + richText.editor.click().type('some text'); + + richText.toolbar.toggleHeading(type); + + richText.toolbar.headingsDropdown.should('have.text', label); + }); + + // TODO: Move this test to either a single test with multiple assertions or for only one heading type due to performance + if (type !== BLOCKS.PARAGRAPH) { + it('should unwrap blockquote', () => { + addBlockquote('some text'); + + richText.toolbar.toggleHeading(type); + + const expectedHeadingValue = doc( + block(type, {}, text('some text', [])), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedHeadingValue); + }); + } else { + it('should not unwrap blockquote', () => { + const expectedQuoteValue = addBlockquote('some text'); + + richText.toolbar.toggleHeading(type); + + richText.expectValue(expectedQuoteValue); + }); + } + + it('should be deleted if empty when pressing delete', () => { + richText.editor.click(); // to set an initial editor.location + + richText.toolbar.toggleHeading(type); + + richText.editor.type('x{enter}'); + + richText.toolbar.embed('entry-block'); + + // To make sure paragraph/heading is present + richText.expectValue(doc(block(type, {}, text('x')), entryBlock(), emptyParagraph())); + + richText.editor + .click('bottom') + // Using `delay` to avoid flakiness, cypress triggers a keypress every 10ms and the editor was not responding correctly + .type('{uparrow}{uparrow}{uparrow}{del}{del}', { delay: 100 }); + + richText.expectValue(doc(entryBlock(), emptyParagraph())); + }); + + it('should delete next block if not empty when pressing delete', () => { + const value = 'some text'; + richText.editor.click().type(value); + + richText.toolbar.toggleHeading(type); + + richText.toolbar.embed('entry-block'); + + // Using `delay` to avoid flakiness, cypress triggers a keypress every 10ms and the editor was not responding correcrly + richText.editor.type('{leftarrow}{del}', { delay: 100 }); + + richText.expectValue(doc(block(type, {}, text(value)), emptyParagraph())); + }); + }); + }); + + describe('Toolbar', () => { + it('should be visible', () => { + richText.toolbar.headingsDropdown.should('be.visible'); + + richText.toolbar.headingsDropdown.click(); + getDropdownList().should('be.visible'); + }); + + it(`should have ${headings.length} items`, () => { + richText.toolbar.headingsDropdown.click(); + getDropdownList().children().should('have.length', headings.length); + + headings.forEach(([, label], index) => { + getDropdownList().children().eq(index).should('have.text', label); + }); + }); + }); + }); + + describe('Quote', () => { + const methods: [string, () => void][] = [ + [ + 'using the toolbar', + () => { + richText.toolbar.quote.click(); + }, + ], + [ + 'using hotkey (mod+shift+1)', + () => { + richText.editor.type(`{${mod}}{shift}1`); + }, + ], + ]; + + for (const [scenario, toggleQuote] of methods) { + describe(scenario, () => { + it('the toolbar button should be visible', () => { + richText.toolbar.quote.should('be.visible'); + }); + + it('should toggle off empty quotes on backspace', () => { + richText.editor.click(); + + toggleQuote(); + + richText.editor.type('{backspace}'); + + richText.expectSnapshotValue(); + }); + + it('should add a block quote when clicking followed by a trailing empty paragraph', () => { + richText.editor.click(); + + toggleQuote(); + + const expectedValue = doc( + block(BLOCKS.QUOTE, {}, block(BLOCKS.PARAGRAPH, {}, text('', []))), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedValue); + }); + + it('should convert existing paragraph into a block quote', () => { + richText.editor.click().type('some text'); + + toggleQuote(); + + const expectedValue = doc( + block(BLOCKS.QUOTE, {}, block(BLOCKS.PARAGRAPH, {}, text('some text', []))), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedValue); + }); + + it('should convert block quote back to paragraph', () => { + richText.editor.click().type('some text'); + + toggleQuote(); + toggleQuote(); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('some text', [])), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedValue); + }); + + it('should add multi-paragraph block quotes', () => { + richText.editor.click().type('paragraph 1'); + + toggleQuote(); + + richText.editor.type('{enter}').type('paragraph 2'); + + const expectedValue = doc( + block( + BLOCKS.QUOTE, + {}, + block(BLOCKS.PARAGRAPH, {}, text('paragraph 1', [])), + block(BLOCKS.PARAGRAPH, {}, text('paragraph 2', [])) + ), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedValue); + }); + + it('should preserve marks & inline elements', () => { + richText.editor.click(); + // bold underline italic code [link] [inline-entry] more text + richText.editor.paste({ + 'application/x-slate-fragment': + 'JTVCJTdCJTIydHlwZSUyMiUzQSUyMnBhcmFncmFwaCUyMiUyQyUyMmNoaWxkcmVuJTIyJTNBJTVCJTdCJTIydGV4dCUyMiUzQSUyMmJvbGQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIyYm9sZCUyMiUzQXRydWUlN0QlMkMlN0IlMjJ0ZXh0JTIyJTNBJTIyJTIwJTIyJTJDJTIyZGF0YSUyMiUzQSU3QiU3RCU3RCUyQyU3QiUyMnRleHQlMjIlM0ElMjJpdGFsaWMlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIyaXRhbGljJTIyJTNBdHJ1ZSU3RCUyQyU3QiUyMnRleHQlMjIlM0ElMjIlMjAlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTdEJTJDJTdCJTIydGV4dCUyMiUzQSUyMnVuZGVybGluZSUyMiUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJ1bmRlcmxpbmUlMjIlM0F0cnVlJTdEJTJDJTdCJTIydGV4dCUyMiUzQSUyMiUyMCUyMiUyQyUyMmRhdGElMjIlM0ElN0IlN0QlN0QlMkMlN0IlMjJ0ZXh0JTIyJTNBJTIyY29kZSUyMiUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJjb2RlJTIyJTNBdHJ1ZSU3RCUyQyU3QiUyMnRleHQlMjIlM0ElMjIlMjAlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTdEJTJDJTdCJTIydHlwZSUyMiUzQSUyMmh5cGVybGluayUyMiUyQyUyMmRhdGElMjIlM0ElN0IlMjJ1cmklMjIlM0ElMjJodHRwcyUzQSUyRiUyRmV4YW1wbGUuY29tJTIyJTdEJTJDJTIyY2hpbGRyZW4lMjIlM0ElNUIlN0IlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIydGV4dCUyMiUzQSUyMmxpbmslMjIlN0QlNUQlN0QlMkMlN0IlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIydGV4dCUyMiUzQSUyMiUyMCUyMiU3RCUyQyU3QiUyMnR5cGUlMjIlM0ElMjJlbWJlZGRlZC1lbnRyeS1pbmxpbmUlMjIlMkMlMjJjaGlsZHJlbiUyMiUzQSU1QiU3QiUyMnRleHQlMjIlM0ElMjIlMjIlN0QlNUQlMkMlMjJkYXRhJTIyJTNBJTdCJTIydGFyZ2V0JTIyJTNBJTdCJTIyc3lzJTIyJTNBJTdCJTIyaWQlMjIlM0ElMjJleGFtcGxlLWVudGl0eS1pZCUyMiUyQyUyMnR5cGUlMjIlM0ElMjJMaW5rJTIyJTJDJTIybGlua1R5cGUlMjIlM0ElMjJFbnRyeSUyMiU3RCU3RCU3RCU3RCUyQyU3QiUyMnRleHQlMjIlM0ElMjIlMjBtb3JlJTIwdGV4dCUyMiU3RCU1RCUyQyUyMmlzVm9pZCUyMiUzQWZhbHNlJTJDJTIyZGF0YSUyMiUzQSU3QiU3RCU3RCU1RA==', + }); + + toggleQuote(); + + richText.expectSnapshotValue(); + }); + }); + } + }); + + describe('New Line', () => { + it('should add a new line on a paragraph', () => { + richText.editor + .click() + .type('some text 1') + .type('{shift+enter}') + .type('some text 2') + .type('{shift+enter}') + .type('some text 3'); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('some text 1\nsome text 2\nsome text 3')) + ); + + richText.expectValue(expectedValue); + }); + + it('should add a new line on a heading', () => { + richText.editor.click(); + + richText.toolbar.toggleHeading(BLOCKS.HEADING_1); + + richText.editor + .type('some text 1') + .type('{shift+enter}') + .type('some text 2') + .type('{shift+enter}') + .type('some text 3'); + + const expectedValue = doc( + block(BLOCKS.HEADING_1, {}, text('some text 1\nsome text 2\nsome text 3')), + emptyParagraph() + ); + + richText.expectValue(expectedValue); + }); + + describe('in a list', () => { + it('should add a new line', () => { + richText.editor.click(); + + richText.toolbar.ul.click(); + + richText.editor + .type('some text 1') + .type('{shift+enter}') + .type('some text 2') + .type('{shift+enter}') + .type('some text 3'); + + const expectedValue = doc( + block( + BLOCKS.UL_LIST, + {}, + block( + BLOCKS.LIST_ITEM, + {}, + block(BLOCKS.PARAGRAPH, {}, text('some text 1\nsome text 2\nsome text 3', [])) + ) + ), + emptyParagraph() + ); + + richText.expectValue(expectedValue); + }); + + it('should add a new line after entity block in same list item', () => { + richText.editor.click(); + + richText.toolbar.ul.click(); + + richText.editor + .type('some text 1') + .type('{enter}') + .type(`{${mod}+shift+e}`) + .type('{enter}') + .type('some more text') + .type(`{${mod}+shift+e}`) + .type('{enter}'); + + richText.expectSnapshotValue(); + }); + }); + }); + + describe('Tables', () => { + const table = buildHelper(BLOCKS.TABLE); + const row = buildHelper(BLOCKS.TABLE_ROW); + const cell = buildHelper(BLOCKS.TABLE_CELL); + const header = buildHelper(BLOCKS.TABLE_HEADER_CELL); + const emptyCell = () => cell(emptyParagraph()); + const emptyHeader = () => header(emptyParagraph()); + const cellWithText = (t) => cell(paragraphWithText(t)); + const headerWithText = (t) => header(paragraphWithText(t)); + const insertTable = () => { + richText.editor.click(); + richText.toolbar.table.click(); + return richText.editor; + }; + const insertTableWithExampleData = () => { + insertTable() + .type('foo') + .type('{rightarrow}') + .type('bar') + .type('{rightarrow}') + .type('baz') + .type('{rightarrow}') + .type('quux'); + }; + const expectDocumentStructure = (...elements) => { + richText.expectValue(doc(...elements, emptyParagraph())); + }; + const expectTable = (...tableElements) => expectDocumentStructure(table(...tableElements)); + + // We know this feature doesn't work on firefox, we skip it + if (Cypress.browser.family !== 'firefox') { + it('inserts new line before table', () => { + // prevent expected error `Cannot resolve a Slate point from DOM point` from failing this test + Cypress.on('uncaught:exception', (err) => { + if ( + err.message.includes( + 'Cannot resolve a Slate point from DOM point: [object HTMLDivElement],0' + ) + ) { + return false; + } + + // we still want the test to fail in case there's any other error + return true; + }); + + insertTable(); + + richText.editor.type('{uparrow}{enter}'); + + richText.expectValue( + doc( + emptyParagraph(), + + table(row(emptyHeader(), emptyHeader()), row(emptyCell(), emptyCell())), + emptyParagraph() + ) + ); + }); + } + + it('can delete embedded inline entries inside table', () => { + insertTable(); + + richText.editor.type('hey'); + richText.toolbar.embed('entry-inline'); + richText.editor.type('{backspace}{backspace}'); // one selects, the secodnd deletes it + + richText.expectValue( + doc( + table( + row(header(paragraphWithText('hey')), emptyHeader()), + row(emptyCell(), emptyCell()) + ), + emptyParagraph() + ) + ); + }); + + it('does not delete table header cells when selecting the whole table', () => { + insertTable(); + + richText.editor.type(`hey{${mod}}a{backspace}`); + + richText.expectValue( + doc( + table(row(emptyHeader(), emptyHeader()), row(emptyCell(), emptyCell())), + emptyParagraph() + ) + ); + }); + + it('delete multiple lines inside cells', () => { + insertTable(); + + richText.editor.type('hey{enter}{backspace}'); + + richText.expectValue( + doc( + table( + row(header(paragraphWithText('hey')), emptyHeader()), + row(emptyCell(), emptyCell()) + ), + emptyParagraph() + ) + ); + }); + + it('disables block element toolbar buttons when selected', () => { + insertTable(); + + const blockElements = ['quote', 'ul', 'ol', 'hr', 'table']; + + blockElements.forEach((el) => { + richText.toolbar[el].should('be.disabled'); + }); + + richText.toolbar.headingsDropdown.should('be.disabled'); + + // select outside the table + richText.editor.click().type('{downarrow}').wait(100); + + blockElements.forEach((el) => { + cy.findByTestId(`${el}-toolbar-button`).should('not.be.disabled'); + }); + + richText.toolbar.headingsDropdown.click(); + [ + BLOCKS.PARAGRAPH, + BLOCKS.HEADING_1, + BLOCKS.HEADING_2, + BLOCKS.HEADING_3, + BLOCKS.HEADING_4, + BLOCKS.HEADING_5, + BLOCKS.HEADING_6, + ].map((type) => getDropdownItem(type).get('button').should('not.be.disabled')); + }); + + describe('Inserting Tables', () => { + it('replaces empty paragraphs with tables', () => { + insertTable(); + + richText.expectValue( + doc( + table(row(emptyHeader(), emptyHeader()), row(emptyCell(), emptyCell())), + emptyParagraph() + ) + ); + }); + + it('inserts new table below if paragraph is not empty', () => { + richText.editor.type('foo'); + + insertTable(); + + richText.expectValue( + doc( + paragraphWithText('foo'), + table(row(emptyHeader(), emptyHeader()), row(emptyCell(), emptyCell())), + emptyParagraph() + ) + ); + }); + + describe('Toolbar', () => { + const buttonsToDisableTable = ['ul', 'ol', 'quote']; + + it(`should disable table button if ${buttonsToDisableTable.join( + ', ' + )} elements are focused`, () => { + buttonsToDisableTable.forEach((button) => { + richText.editor.click(); + + cy.findByTestId(`${button}-toolbar-button`).click(); + + richText.toolbar.table.should('be.disabled'); + }); + }); + }); + }); + + describe('Deleting text', () => { + describe('Backward deletion', () => { + it('removes the text, not the cell', () => { + insertTableWithExampleData(); + richText.editor.find('table > tbody > tr:last-child > td:last-child').click(); + richText.editor + .type('{backspace}{backspace}{backspace}{backspace}{backspace}') + // .type('{backspace}') does not work on non-typable elements.(contentEditable=false) + .trigger('keydown', { keyCode: 8, which: 8, key: 'Backspace' }); // 8 = delete/backspace + + expectTable( + row(headerWithText('foo'), headerWithText('bar')), + row(cellWithText('baz'), emptyCell()) + ); + + // make sure it works for table header cells, too + richText.editor.find('table > tbody > tr:first-child > th:first-child').click(); + richText.editor + .type('{backspace}{backspace}{backspace}{backspace}{backspace}') + // .type('{backspace}') does not work on non-typable elements.(contentEditable=false) + .trigger('keydown', { keyCode: 8, which: 8, key: 'Backspace' }); // 8 = delete/backspace + + expectTable( + row(emptyHeader(), headerWithText('bar')), + row(cellWithText('baz'), emptyCell()) + ); + }); + }); + + describe('Forward deletion', () => { + it('removes the text, not the cell', () => { + insertTableWithExampleData(); + richText.editor.find('table > tbody > tr:first-child > th:first-child').click(); + richText.editor + .type('{leftarrow}{leftarrow}{leftarrow}{del}{del}{del}{del}') + // .type('{backspace}') does not work on non-typable elements.(contentEditable=false) + .trigger('keydown', { keyCode: 8, which: 8, key: 'Delete' }) // 8 = delete/backspace + // try forward-deleting from outside the table for good measure + .type('{leftarrow}{del}') + .trigger('keydown', { keyCode: 8, which: 8, key: 'Delete' }); + expectTable( + row(headerWithText(''), headerWithText('bar')), + row(cellWithText('baz'), cellWithText('quux')) + ); + }); + }); + }); + + describe('Table Actions', () => { + const findAction = (action: string) => { + cy.findByTestId('cf-table-actions-button').click(); + return cy.findByText(action); + }; + + const doAction = (action: string) => { + findAction(action).click({ force: true }); + }; + + beforeEach(() => { + insertTableWithExampleData(); + }); + + describe('adds row above', () => { + it('with table header cell', () => { + // Delete the table that was added in the beforeEach clause + // because we need the focus to be on the first row + doAction('Delete table'); + + // Insert an empty table (focus is on first row by default) + insertTable(); + + findAction('Add row above').should('be.disabled'); + }); + + it('with table cell', () => { + doAction('Add row above'); + + expectTable( + row(headerWithText('foo'), headerWithText('bar')), + row(emptyCell(), emptyCell()), + row(cellWithText('baz'), cellWithText('quux')) + ); + }); + }); + + describe('adds row below', () => { + it('with dropdown', () => { + doAction('Add row below'); + + expectTable( + row(headerWithText('foo'), headerWithText('bar')), + row(cellWithText('baz'), cellWithText('quux')), + row(emptyCell(), emptyCell()) + ); + }); + + it('with Tab key at the end', () => { + richText.editor.tab(); + + expectTable( + row(headerWithText('foo'), headerWithText('bar')), + row(cellWithText('baz'), cellWithText('quux')), + row(emptyCell(), emptyCell()) + ); + }); + }); + + it('adds column left', () => { + doAction('Add column left'); + + expectTable( + row(headerWithText('foo'), emptyHeader(), headerWithText('bar')), + row(cellWithText('baz'), emptyCell(), cellWithText('quux')) + ); + }); + + it('adds column right', () => { + doAction('Add column right'); + + expectTable( + row(headerWithText('foo'), headerWithText('bar'), emptyHeader()), + row(cellWithText('baz'), cellWithText('quux'), emptyCell()) + ); + }); + + it('enables/disables table header', () => { + doAction('Disable table header'); + + expectTable( + row(cellWithText('foo'), cellWithText('bar')), + row(cellWithText('baz'), cellWithText('quux')) + ); + + doAction('Enable table header'); + + expectTable( + row(headerWithText('foo'), headerWithText('bar')), + row(cellWithText('baz'), cellWithText('quux')) + ); + }); + + it('deletes row', () => { + doAction('Delete row'); + + expectTable(row(headerWithText('foo'), headerWithText('bar'))); + }); + + it('deletes column', () => { + doAction('Delete column'); + + expectTable(row(headerWithText('foo')), row(cellWithText('baz'))); + }); + + it('deletes table', () => { + doAction('Delete table'); + + expectDocumentToBeEmpty(); + }); + }); + }); + + describe('Links', () => { + const expectDocumentStructure = (...nodes) => { + richText.expectValue( + doc( + block( + BLOCKS.PARAGRAPH, + {}, + ...nodes.map(([nodeType, ...content]) => { + if (nodeType === 'text') return text(...content); + const [data, textContent] = content; + return inline(nodeType, data, text(textContent)); + }) + ) + ) + ); + }; + + // Type and wait for the text to be persisted + const safelyType = (text: string) => { + richText.editor.type(text); + + expectDocumentStructure(['text', text.replace('{selectall}', '')]); + }; + + const methods: [string, () => void][] = [ + [ + 'using the link toolbar button', + () => { + richText.toolbar.hyperlink.click(); + }, + ], + [ + 'using the link keyboard shortcut', + () => { + richText.editor.type(`{${mod}}k`); + }, + ], + ]; + + for (const [triggerMethod, triggerLinkModal] of methods) { + describe(triggerMethod, () => { + it('adds and removes hyperlinks', () => { + safelyType('The quick brown fox jumps over the lazy '); + + triggerLinkModal(); + + const form = richText.forms.hyperlink; + form.submit.should('be.disabled'); + + form.linkText.type('dog'); + form.submit.should('be.disabled'); + + form.linkTarget.type('https://zombo.com'); + form.submit.should('not.be.disabled'); + + form.submit.click(); + + expectDocumentStructure( + ['text', 'The quick brown fox jumps over the lazy '], + [INLINES.HYPERLINK, { uri: 'https://zombo.com' }, 'dog'], + ['text', ''] + ); + + richText.editor.click().type('{selectall}'); + // TODO: This should just be + // ``` + // triggerLinkModal(); + // `` + // but with the keyboard shortcut, this causes an error in Cypress I + // haven't been able to replicate in the editor. As it's not + // replicable in "normal" usage we use the toolbar button both places + // in this test. + cy.findByTestId('hyperlink-toolbar-button').click(); + + expectDocumentStructure( + // TODO: the editor should normalize this + ['text', 'The quick brown fox jumps over the lazy '], + ['text', 'dog'] + ); + }); + + it('converts text to URL hyperlink', () => { + safelyType('My cool website{selectall}'); + + triggerLinkModal(); + const form = richText.forms.hyperlink; + + form.linkText.should('have.value', 'My cool website'); + form.linkType.should('have.value', 'hyperlink'); + form.submit.should('be.disabled'); + + form.linkTarget.type('https://zombo.com'); + form.submit.should('not.be.disabled'); + + form.submit.click(); + + expectDocumentStructure( + ['text', ''], + [INLINES.HYPERLINK, { uri: 'https://zombo.com' }, 'My cool website'], + ['text', ''] + ); + }); + + it('converts text to entry hyperlink', () => { + safelyType('My cool entry{selectall}'); + triggerLinkModal(); + const form = richText.forms.hyperlink; + + form.linkText.should('have.value', 'My cool entry'); + form.submit.should('be.disabled'); + + form.linkType.should('have.value', 'hyperlink').select('entry-hyperlink'); + form.submit.should('be.disabled'); + + cy.findByTestId('cf-ui-entry-card').should('not.exist'); + form.linkEntityTarget.should('have.text', 'Select entry').click(); + cy.findByTestId('cf-ui-entry-card').should('exist'); + + form.linkEntityTarget.should('have.text', 'Remove selection').click(); + cy.findByTestId('cf-ui-entry-card').should('not.exist'); + + form.linkEntityTarget.should('have.text', 'Select entry').click(); + cy.findByTestId('cf-ui-entry-card').should('exist'); + + form.submit.click(); + + expectDocumentStructure( + ['text', ''], + [ + INLINES.ENTRY_HYPERLINK, + { target: { sys: { id: 'example-entity-id', type: 'Link', linkType: 'Entry' } } }, + 'My cool entry', + ], + ['text', ''] + ); + }); + + it('converts text to asset hyperlink', () => { + safelyType('My cool asset{selectall}'); + + triggerLinkModal(); + + const form = richText.forms.hyperlink; + + form.linkText.should('have.value', 'My cool asset'); + form.submit.should('be.disabled'); + + form.linkType.should('have.value', 'hyperlink').select('asset-hyperlink'); + form.submit.should('be.disabled'); + + cy.findByTestId('cf-ui-asset-card').should('not.exist'); + form.linkEntityTarget.should('have.text', 'Select asset').click(); + cy.findByTestId('cf-ui-asset-card').should('exist'); + + form.linkEntityTarget.should('have.text', 'Remove selection').click(); + cy.findByTestId('cf-ui-asset-card').should('not.exist'); + + form.linkEntityTarget.should('have.text', 'Select asset').click(); + cy.findByTestId('cf-ui-asset-card').should('exist'); + + form.submit.click(); + + expectDocumentStructure( + ['text', ''], + [ + INLINES.ASSET_HYPERLINK, + { target: { sys: { id: 'example-entity-id', type: 'Link', linkType: 'Asset' } } }, + 'My cool asset', + ], + ['text', ''] + ); + }); + + it('edits hyperlinks', () => { + safelyType('My cool website{selectall}'); + + triggerLinkModal(); + + // Part 1: + // Create a hyperlink + const form = richText.forms.hyperlink; + + form.linkText.should('have.value', 'My cool website'); + form.linkTarget.type('https://zombo.com'); + form.submit.click(); + + expectDocumentStructure( + ['text', ''], + [INLINES.HYPERLINK, { uri: 'https://zombo.com' }, 'My cool website'], + ['text', ''] + ); + + // Part 2: + // Update hyperlink to entry link + + richText.editor + .findByTestId('cf-ui-text-link') + .should('have.text', 'My cool website') + .click({ force: true }); + + form.linkText.should('not.exist'); + form.linkType.should('have.value', 'hyperlink').select('entry-hyperlink'); + form.linkEntityTarget.should('have.text', 'Select entry').click(); + form.submit.click(); + + expectDocumentStructure( + ['text', ''], + [ + INLINES.ENTRY_HYPERLINK, + { target: { sys: { id: 'example-entity-id', type: 'Link', linkType: 'Entry' } } }, + 'My cool website', + ], + ['text', ''] + ); + + // Part 3: + // Update entry link to asset link + + richText.editor + .findByTestId('cf-ui-text-link') + .should('have.text', 'My cool website') + .click({ force: true }); + + form.linkText.should('not.exist'); + form.linkType.should('have.value', 'entry-hyperlink').select('asset-hyperlink'); + form.linkEntityTarget.should('have.text', 'Select asset').click(); + form.submit.click(); + + expectDocumentStructure( + ['text', ''], + [ + INLINES.ASSET_HYPERLINK, + { target: { sys: { id: 'example-entity-id', type: 'Link', linkType: 'Asset' } } }, + 'My cool website', + ], + ['text', ''] + ); + + // Part 3: + // Update asset link to hyperlink + + richText.editor + .findByTestId('cf-ui-text-link') + .should('have.text', 'My cool website') + .click({ force: true }); + + form.linkText.should('not.exist'); + form.linkType.should('have.value', 'asset-hyperlink').select('hyperlink'); + form.linkTarget.type('https://zombo.com'); + form.submit.click(); + + expectDocumentStructure( + ['text', ''], + [INLINES.HYPERLINK, { uri: 'https://zombo.com' }, 'My cool website'], + ['text', ''] + ); + }); + + it('is removed from the document structure when empty', () => { + richText.editor.click(); + + triggerLinkModal(); + + const form = richText.forms.hyperlink; + + form.linkText.type('Link'); + form.linkTarget.type('https://link.com'); + form.submit.click(); + + expectDocumentStructure( + ['text', ''], + [INLINES.HYPERLINK, { uri: 'https://link.com' }, 'Link'], + ['text', ''] + ); + + richText.editor + .click() + .type('{backspace}{backspace}{backspace}{backspace}', { delay: 100 }); + + richText.expectValue(undefined); + }); + }); + } + }); + + describe('Embedded Entry Blocks', () => { + const methods: [string, () => void][] = [ + [ + 'using the toolbar button', + () => { + richText.toolbar.embed('entry-block'); + }, + ], + [ + 'using the keyboard shortcut', + () => { + richText.editor.type(`{${mod}+shift+e}`); + }, + ], + ]; + + for (const [triggerMethod, triggerEmbeddedEntry] of methods) { + describe(triggerMethod, () => { + it('adds paragraph before the block when pressing enter if the block is first document node', () => { + richText.editor.click().then(triggerEmbeddedEntry); + + richText.editor.find('[data-entity-id="example-entity-id"]').click(); + + richText.editor.trigger('keydown', keys.enter); + + richText.expectValue(doc(emptyParagraph(), entryBlock(), emptyParagraph())); + }); + + it('adds paragraph between two blocks when pressing enter', () => { + function addEmbeddedEntry() { + richText.editor.click('bottom').then(triggerEmbeddedEntry); + richText.editor.click('bottom'); + } + + addEmbeddedEntry(); + addEmbeddedEntry(); + + // Inserts paragraph before embed because it's in the first line. + richText.editor.get('[data-entity-id="example-entity-id"]').first().click(); + pressEnter(); + + // inserts paragraph in-between embeds. + richText.editor.get('[data-entity-id="example-entity-id"]').first().click(); + pressEnter(); + + richText.expectValue( + doc(emptyParagraph(), entryBlock(), emptyParagraph(), entryBlock(), emptyParagraph()) + ); + }); + + it('adds and removes embedded entries', () => { + richText.editor.click().then(triggerEmbeddedEntry); + + richText.expectValue(doc(entryBlock(), emptyParagraph())); + + cy.findByTestId('cf-ui-card-actions').click(); + cy.findByTestId('delete').click(); + + richText.expectValue(undefined); + }); + + it('adds and removes embedded entries by selecting and pressing `backspace`', () => { + richText.editor.click().then(triggerEmbeddedEntry); + + richText.expectValue(doc(entryBlock(), emptyParagraph())); + + cy.findByTestId('cf-ui-entry-card').click(); + // .type('{backspace}') does not work on non-typable elements.(contentEditable=false) + richText.editor.trigger('keydown', keys.backspace); + + richText.expectValue(undefined); + }); + + it('adds embedded entries between words', () => { + richText.editor + .click() + .type('foobar{leftarrow}{leftarrow}{leftarrow}') + .then(triggerEmbeddedEntry); + + richText.expectValue( + doc( + block(BLOCKS.PARAGRAPH, {}, text('foo')), + entryBlock(), + block(BLOCKS.PARAGRAPH, {}, text('bar')) + ) + ); + }); + + it('should be selected on backspace', () => { + richText.editor.click(); + triggerEmbeddedEntry(); + + richText.editor.type('{downarrow}X'); + + richText.expectValue(doc(entryBlock(), paragraphWithText('X'))); + + richText.editor.type('{backspace}{backspace}'); + + richText.expectValue(doc(entryBlock(), emptyParagraph())); + + richText.editor.type('{backspace}'); + + expectDocumentToBeEmpty(); + }); + }); + } + }); + + describe('Embedded Asset Blocks', () => { + const methods: [string, () => void][] = [ + [ + 'using the toolbar button', + () => { + richText.toolbar.embed('asset-block'); + }, + ], + [ + 'using the keyboard shortcut', + () => { + richText.editor.type(`{${mod}+shift+a}`); + }, + ], + ]; + + for (const [triggerMethod, triggerEmbeddedAsset] of methods) { + describe(triggerMethod, () => { + it('adds paragraph before the block when pressing enter if the block is first document node', () => { + richText.editor.click(); + triggerEmbeddedAsset(); + + richText.editor.find('[data-entity-id="example-entity-id"]').click(); + + richText.editor.trigger('keydown', keys.enter); + + richText.expectValue(doc(emptyParagraph(), assetBlock(), emptyParagraph())); + }); + + it('adds paragraph between two blocks when pressing enter', () => { + function addEmbeddedAsset() { + richText.editor.click('bottom').then(triggerEmbeddedAsset); + richText.editor.click('bottom'); + } + + addEmbeddedAsset(); + addEmbeddedAsset(); + + // Press enter on the first asset block + richText.editor.click().get('[data-entity-id="example-entity-id"]').first().click(); + pressEnter(); + + // Press enter on the second asset block + richText.editor.click().get('[data-entity-id="example-entity-id"]').first().click(); + pressEnter(); + + richText.expectValue( + doc(emptyParagraph(), assetBlock(), emptyParagraph(), assetBlock(), emptyParagraph()) + ); + }); + + it('adds and removes embedded assets', () => { + richText.editor.click().then(triggerEmbeddedAsset); + + richText.expectValue(doc(assetBlock(), emptyParagraph())); + + cy.findByTestId('cf-ui-card-actions').click(); + cy.findByTestId('card-action-remove').click(); + + richText.expectValue(undefined); + }); + + it('adds and removes embedded assets by selecting and pressing `backspace`', () => { + richText.editor.click().then(triggerEmbeddedAsset); + + richText.expectValue(doc(assetBlock(), emptyParagraph())); + + cy.findByTestId('cf-ui-asset-card').click(); + // .type('{backspace}') does not work on non-typable elements.(contentEditable=false) + richText.editor.trigger('keydown', keys.backspace); + + richText.expectValue(undefined); + }); + + it('adds embedded assets between words', () => { + richText.editor + .click() + .type('foobar{leftarrow}{leftarrow}{leftarrow}') + .then(triggerEmbeddedAsset); + + richText.expectValue( + doc( + block(BLOCKS.PARAGRAPH, {}, text('foo')), + assetBlock(), + block(BLOCKS.PARAGRAPH, {}, text('bar')) + ) + ); + }); + + it('should be selected on backspace', () => { + richText.editor.click(); + triggerEmbeddedAsset(); + + richText.editor.type('{downarrow}X'); + + richText.expectValue(doc(assetBlock(), paragraphWithText('X'))); + + richText.editor.type('{backspace}{backspace}'); + + richText.expectValue(doc(assetBlock(), emptyParagraph())); + + richText.editor.type('{backspace}'); + + expectDocumentToBeEmpty(); + }); + }); + } + }); + + describe('Embedded Entry Inlines', () => { + const methods: [string, () => void][] = [ + [ + 'using the toolbar button', + () => { + richText.toolbar.embed('entry-inline'); + }, + ], + [ + 'using the keyboard shortcut', + () => { + richText.editor.type(`{${mod}+shift+2}`); + }, + ], + ]; + + for (const [triggerMethod, triggerEmbeddedAsset] of methods) { + describe(triggerMethod, () => { + it('adds and removes embedded entries', () => { + richText.editor + .click() + .type('hello') + .then(triggerEmbeddedAsset) + .then(() => { + richText.editor.click().type('world'); + }); + + richText.expectValue( + doc( + block( + BLOCKS.PARAGRAPH, + {}, + text('hello'), + inline(INLINES.EMBEDDED_ENTRY, { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Entry', + }, + }, + }), + text('world') + ) + ) + ); + + cy.findByTestId('cf-ui-card-actions').click({ force: true }); + cy.findByTestId('delete').click({ force: true }); + + richText.expectValue(doc(block(BLOCKS.PARAGRAPH, {}, text('hello'), text('world')))); + + // TODO: we should also test deletion via {backspace}, + // but this breaks in cypress even though it works in the editor + }); + }); + } + }); + + describe('on action callback', () => { + it('is invoked callback when rendering links', () => { + cy.setInitialValue(documentWithLinks); + cy.editorActions().should('be.empty'); + // Necessary for reading the correct LocalStorage values as we do + // the initial page load on the beforeEach hook + cy.reload(); + richText.expectValue(documentWithLinks); + cy.editorActions().should( + 'deep.equal', + new Array(5).fill([ + 'linkRendered', + { + origin: 'viewport-interaction', + }, + ]) + ); + }); + }); + + describe('invalid document structure', () => { + it('accepts document with no content', () => { + const docWithoutContent = { + nodeType: 'document', + data: {}, + content: [], + }; + + cy.setInitialValue(docWithoutContent); + + cy.reload(); + + // The field value in this case will still be untouched (i.e. un-normalized) + // since we won't trigger onChange. + richText.expectValue(docWithoutContent); + + // Initial normalization should not invoke onChange + cy.editorEvents() + .then((events) => events.filter((e) => e.type === 'onValueChanged')) + .should('deep.equal', []); + + // We can adjust the content + richText.editor.type('it works'); + richText.expectValue(doc(paragraphWithText('it works'))); + }); + + it('does not crash when an empty link is followed by a list', () => { + const exampleDoc = { + data: {}, + content: [ + { + data: {}, + content: [ + { + data: { + uri: 'https://example.com', + }, + content: [], + nodeType: 'hyperlink', + }, + ], + nodeType: 'paragraph', + }, + { + data: {}, + content: [ + { + data: {}, + content: [ + { + data: {}, + content: [ + { + data: {}, + marks: [], + value: 'some text', + nodeType: 'text', + }, + { + data: {}, + marks: [], + value: ' more text', + nodeType: 'text', + }, + ], + nodeType: 'paragraph', + }, + ], + nodeType: 'list-item', + }, + ], + nodeType: 'unordered-list', + }, + ], + nodeType: 'document', + }; + + cy.setInitialValue(exampleDoc); + + cy.reload(); + + // The field value in this case will still be untouched (i.e. un-normalized) + // since we won't trigger onChange. + richText.expectValue(exampleDoc); + + // Initial normalization should not invoke onChange + cy.editorEvents() + .then((events) => events.filter((e) => e.type === 'onValueChanged')) + .should('deep.equal', []); + + cy.findByText('some text more text'); + }); + + it('runs initial normalization without triggering a value change', () => { + cy.setInitialValue(invalidDocumentNormalizable); + + cy.reload(); + + // Should render normalized content + richText.editor.should('contain.text', 'This is a hyperlink'); + richText.editor.should('contain.text', 'This is a paragraph'); + richText.editor.should('contain.text', 'Text with custom marks'); + + richText.editor.should('contain.text', 'paragraph inside list item'); + richText.editor.should('contain.text', 'paragraph inside a nested list'); + richText.editor.should('contain.text', 'blockquote inside list item'); + + richText.editor.should('contain.text', 'cell #1'); + richText.editor.should('contain.text', 'cell #2'); + richText.editor.should('contain.text', 'cell #3'); + richText.editor.should('contain.text', 'cell #4'); + richText.editor.should('contain.text', 'cell #5'); + richText.editor.should('contain.text', 'cell #6'); + + // The field value in this case will still be untouched (i.e. un-normalized) + // since we won't trigger onChange. + richText.expectValue(invalidDocumentNormalizable); + + // Initial normalization should not invoke onChange + cy.editorEvents() + .then((events) => events.filter((e) => e.type === 'onValueChanged')) + .should('deep.equal', []); + + // Trigger normalization by changing the editor content + richText.editor.type('end'); + + richText.expectSnapshotValue(); + }); + }); + + describe('Toggling', () => { + const blocks: [string, EmbedType][] = [ + ['From Entry Block to Headings/Paragraph', 'entry-block'], + ['From Asset Block to Headings/Paragraph', 'asset-block'], + ]; + + blocks.forEach(([title, blockType]) => { + describe(title, () => { + headings.forEach(([type]) => { + it(`should not carry over the "data" property from ${blockType} to ${type}`, () => { + richText.editor.click(); + + richText.toolbar.embed(blockType); + + richText.editor.find('[data-entity-id="example-entity-id"]').click(); + + richText.toolbar.toggleHeading(type); + + richText.expectValue(doc(block(type, {}, text('')), emptyParagraph())); + }); + }); + }); + }); + }); + + describe('external updates', () => { + // FIXME: test is broken. The result shows correctly in Cypress but the + // assertion is not working. To be fixed in a follow up + // eslint-disable-next-line + it.skip('renders the new value', () => { + const firstString = 'Hello, World'; + richText.editor.type(firstString); + const oldDoc = doc(block(BLOCKS.PARAGRAPH, {}, text(firstString, []))); + richText.expectValue(oldDoc); + + // simulate a remote value change + const newDoc = doc( + block(BLOCKS.PARAGRAPH, {}, text(firstString, [])), + block(BLOCKS.EMBEDDED_ENTRY, { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Entry', + }, + }, + }), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + cy.getRichTextField().then((field) => { + const setValueSpy = cy.spy(field, 'setValue'); + cy.getRichTextField().setValueExternal(newDoc); + richText.expectValue(newDoc); + + // Ensure the value change hasn't triggered an editor change callback + // That scenario would cause a loop of updates + expect(setValueSpy).to.not.be.called; + // type something else to trigger the editor change callback + // the new value must contain the external value plus the typed text + const secondString = 'Bye, world'; + richText.editor.type('{enter}'); + richText.editor.type(secondString); + richText.expectValue({ + ...newDoc, + content: [...newDoc.content, block(BLOCKS.PARAGRAPH, {}, text(secondString, []))], + }); + }); + }); + }); + + describe('deleting paragraph between voids', () => { + it('can delete paragraph between entry blocks', () => { + richText.editor.click(); + richText.toolbar.embed('entry-block'); + richText.editor.type('hey'); + richText.toolbar.embed('entry-block'); + richText.editor.type('{leftarrow}{leftarrow}{backspace}{backspace}{backspace}{backspace}'); + + richText.expectValue(doc(entryBlock(), entryBlock(), emptyParagraph())); + }); + + it('can delete paragraph between asset blocks', () => { + richText.editor.click(); + richText.toolbar.embed('asset-block'); + richText.editor.type('hey'); + richText.toolbar.embed('asset-block'); + richText.editor.type('{leftarrow}{leftarrow}{backspace}{backspace}{backspace}{backspace}'); + + richText.expectValue(doc(assetBlock(), assetBlock(), emptyParagraph())); + }); + + it('can delete paragraph between HRs', () => { + richText.editor.click(); + richText.toolbar.hr.click(); + richText.editor.type('hey'); + richText.toolbar.hr.click(); + richText.editor.type('{leftarrow}{leftarrow}{backspace}{backspace}{backspace}{backspace}'); + + const hr = block(BLOCKS.HR, {}); + richText.expectValue(doc(hr, hr, emptyParagraph())); + }); + }); +}); diff --git a/cypress/e2e/rich-text/RichTextEscapeInlines.spec.ts b/cypress/e2e/rich-text/RichTextEscapeInlines.spec.ts new file mode 100644 index 000000000..9a676f6f2 --- /dev/null +++ b/cypress/e2e/rich-text/RichTextEscapeInlines.spec.ts @@ -0,0 +1,27 @@ +/* eslint-disable mocha/no-setup-in-describe */ +import { RichTextPage } from './RichTextPage'; + +describe('Rich Text Lists', () => { + let richText: RichTextPage; + + // eslint-disable-next-line mocha/no-hooks-for-single-case + beforeEach(() => { + richText = new RichTextPage(); + richText.visit(); + }); + + it('escapes hyperlink when typing at the end', () => { + richText.editor.click(); + richText.toolbar.hyperlink.click(); + + const form = richText.forms.hyperlink; + + form.linkText.type('link'); + form.linkTarget.type('https://example.com'); + form.submit.click(); + + richText.editor.click().type('outside the link'); + + richText.expectSnapshotValue(); + }); +}); diff --git a/cypress/e2e/rich-text/RichTextLists.spec.ts b/cypress/e2e/rich-text/RichTextLists.spec.ts new file mode 100644 index 000000000..5c33828b5 --- /dev/null +++ b/cypress/e2e/rich-text/RichTextLists.spec.ts @@ -0,0 +1,324 @@ +/* eslint-disable mocha/no-setup-in-describe */ +import { BLOCKS } from '@contentful/rich-text-types'; + +import { document as doc, block, text } from '../../../packages/rich-text/src/helpers/nodeFactory'; +import { RichTextPage } from './RichTextPage'; + +describe('Rich Text Lists', () => { + let richText: RichTextPage; + + const buildHelper = + (type) => + (...children) => + block(type, {}, ...children); + const paragraph = buildHelper(BLOCKS.PARAGRAPH); + const paragraphWithText = (t) => paragraph(text(t, [])); + const emptyParagraph = () => paragraphWithText(''); + + const entryBlock = () => + block(BLOCKS.EMBEDDED_ENTRY, { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Entry', + }, + }, + }); + + const assetBlock = () => + block(BLOCKS.EMBEDDED_ASSET, { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Asset', + }, + }, + }); + + const keys = { + tab: { keyCode: 9, which: 9, key: 'Tab' }, + }; + + function addBlockquote(content = '') { + richText.editor.click().type(content); + + richText.toolbar.quote.click(); + + const expectedValue = doc( + block(BLOCKS.QUOTE, {}, block(BLOCKS.PARAGRAPH, {}, text(content, []))), + block(BLOCKS.PARAGRAPH, {}, text('', [])) + ); + + richText.expectValue(expectedValue); + + return expectedValue; + } + + beforeEach(() => { + richText = new RichTextPage(); + richText.visit(); + }); + + const lists = [ + { + getList: () => richText.toolbar.ul, + listType: BLOCKS.UL_LIST, + label: 'Unordered List (UL)', + }, + { + getList: () => richText.toolbar.ol, + listType: BLOCKS.OL_LIST, + label: 'Ordered List (OL)', + }, + ]; + + it('does not remove entity cards when toggling off a list', () => { + const { toolbar, editor } = richText; + editor.click(); + // Toggle on an UL list + toolbar.ul.click(); + + toolbar.embed('entry-block'); + + // toggle off + toolbar.ul.click(); + + richText.expectSnapshotValue(); + }); + + lists.forEach((test) => { + describe(test.label, () => { + it('should be visible', () => { + test.getList().should('be.visible'); + }); + + it('should add a new list', () => { + richText.editor.click(); + + test.getList().click(); + // TODO: Find a way to test deeper lists + /* + Having issues with `.type('{enter})` to break lines. + The error is: + Cannot resolve a Slate node from DOM node: [object HTMLSpanElement] + */ + richText.editor.type('item 1'); + + const expectedValue = doc( + block( + test.listType, + {}, + block(BLOCKS.LIST_ITEM, {}, block(BLOCKS.PARAGRAPH, {}, text('item 1', []))) + ), + emptyParagraph() + ); + + richText.expectValue(expectedValue); + }); + + it('backspace on empty li at the beginning of doc should work', () => { + const { editor } = richText; + editor.click(); + + test.getList().click(); + + editor.click().type('{backspace}'); + + richText.expectSnapshotValue(); + }); + + it('backspace at the start of li should reset the item', () => { + const { editor } = richText; + editor.click(); + + test.getList().click(); + editor.type('abc'); + + editor.type('{leftArrow}{leftArrow}{leftArrow}'); + editor.type('{backspace}'); + + richText.expectSnapshotValue(); + }); + + it('should untoggle the list', () => { + richText.editor.click(); + + test.getList().click(); + + richText.editor.type('some text'); + + test.getList().click(); + + const expectedValue = doc( + block(BLOCKS.PARAGRAPH, {}, text('some text', [])), + emptyParagraph() + ); + + richText.expectValue(expectedValue); + }); + + it('should unwrap blockquote', () => { + addBlockquote('some text'); + + test.getList().click(); + + const expectedValue = doc( + block( + test.listType, + {}, + block(BLOCKS.LIST_ITEM, {}, block(BLOCKS.PARAGRAPH, {}, text('some text', []))) + ), + emptyParagraph() + ); + + richText.expectValue(expectedValue); + }); + + it('should allow heading as direct child of
  • ', () => { + richText.editor.click(); + test.getList().click(); + + richText.toolbar.toggleHeading(BLOCKS.HEADING_1); + richText.editor.type('heading'); + + const expectedValue = doc( + block( + test.listType, + {}, + block(BLOCKS.LIST_ITEM, {}, block(BLOCKS.HEADING_1, {}, text('heading'))) + ), + emptyParagraph() + ); + + richText.expectValue(expectedValue); + }); + + it('should allow HR as direct child of
  • ', () => { + richText.editor.click(); + test.getList().click(); + + richText.toolbar.hr.click(); + + const expectedValue = doc( + block(test.listType, {}, block(BLOCKS.LIST_ITEM, {}, block(BLOCKS.HR, {}))), + emptyParagraph() + ); + + richText.expectValue(expectedValue); + }); + + it('should allow embedded entry as direct child of
  • ', () => { + richText.editor.click(); + test.getList().click(); + + richText.toolbar.embed('entry-block'); + + const expectedValue = doc( + block(test.listType, {}, block(BLOCKS.LIST_ITEM, {}, entryBlock(), emptyParagraph())), + emptyParagraph() + ); + + richText.expectValue(expectedValue); + }); + + it('should allow embedded asset as direct child of
  • ', () => { + richText.editor.click(); + test.getList().click(); + + richText.toolbar.embed('asset-block'); + + const expectedValue = doc( + block(test.listType, {}, block(BLOCKS.LIST_ITEM, {}, assetBlock(), emptyParagraph())), + emptyParagraph() + ); + + richText.expectValue(expectedValue); + }); + + it('should allow block quotes as direct child of
  • ', () => { + richText.editor.click(); + test.getList().click(); + + richText.toolbar.quote.click(); + richText.editor.type('quote'); + + const expectedValue = doc( + block( + test.listType, + {}, + block(BLOCKS.LIST_ITEM, {}, block(BLOCKS.QUOTE, {}, paragraphWithText('quote'))) + ), + emptyParagraph() + ); + + richText.expectValue(expectedValue); + }); + + it('should preserve current marks when inserting a new li', () => { + richText.editor.click(); + test.getList().click(); + + // should only be applied to the word "bold " + richText.toolbar.bold.click(); + richText.editor.type('bold '); + richText.toolbar.bold.click(); + + // should be applied to the rest of line AND next li + richText.toolbar.italic.click(); + richText.editor.type('italic'); + + richText.editor.type('{enter}'); + richText.editor.type('more italic text'); + + richText.expectSnapshotValue(); + }); + + it('should move nested list items when parent is invalid', () => { + richText.editor.click(); + test.getList().click(); + + richText.editor + .type('1{enter}2{enter}3{enter}4') + .trigger('keydown', keys.tab) + .type('{uparrow}{uparrow}') + .trigger('keydown', keys.tab) + .type('{downarrow}{backspace}{backspace}'); + + richText.expectSnapshotValue(); + }); + + describe('switching off the list', () => { + it('it raises the list item entirely', () => { + richText.editor.click(); + test.getList().click(); + richText.editor.type('A paragraph'); + richText.toolbar.embed('entry-block'); + richText.editor.type('{uparrow}'); + + // switch the list off + test.getList().click(); + + richText.expectSnapshotValue(); + }); + + it('it raises the non-first list item entirely', () => { + richText.editor.click(); + test.getList().click(); + richText.editor.type('A paragraph'); + richText.toolbar.embed('entry-block'); + richText.editor.type('{enter}Another paragraph'); + richText.toolbar.embed('entry-block'); + richText.editor.type('{enter}Another paragraph again'); + richText.editor.type('{uparrow}{uparrow}'); + + // switch the list off + test.getList().click(); + + richText.expectSnapshotValue(); + }); + }); + }); + }); +}); diff --git a/cypress/e2e/rich-text/RichTextPage.ts b/cypress/e2e/rich-text/RichTextPage.ts new file mode 100644 index 000000000..db53331e8 --- /dev/null +++ b/cypress/e2e/rich-text/RichTextPage.ts @@ -0,0 +1,175 @@ +import { INLINES } from '@contentful/rich-text-types'; + +const isValidationEvent = ({ type }) => type === 'onSchemaErrorsChanged'; + +export type EmbedType = 'entry-block' | 'asset-block' | 'entry-inline'; + +export class RichTextPage { + visit() { + cy.visit('/rich-text'); + + this.editor.should('be.visible'); + } + + get editor() { + return cy.findByTestId('rich-text-editor').find('[data-slate-editor=true]'); + } + + get toolbar() { + return { + get headingsDropdown() { + return cy.findByTestId('toolbar-heading-toggle'); + }, + + toggleHeading(type: string) { + this.headingsDropdown.click(); + cy.findByTestId(`dropdown-option-${type}`).click({ force: true }); + }, + + get bold() { + return cy.findByTestId('bold-toolbar-button'); + }, + + get italic() { + return cy.findByTestId('italic-toolbar-button'); + }, + + get underline() { + return cy.findByTestId('underline-toolbar-button'); + }, + + get code() { + return cy.findByTestId('code-toolbar-button'); + }, + + get ul() { + return cy.findByTestId('ul-toolbar-button'); + }, + + get ol() { + return cy.findByTestId('ol-toolbar-button'); + }, + + get quote() { + return cy.findByTestId('quote-toolbar-button'); + }, + + get hr() { + return cy.findByTestId('hr-toolbar-button'); + }, + + get hyperlink() { + return cy.findByTestId('hyperlink-toolbar-button'); + }, + + get table() { + return cy.findByTestId('table-toolbar-button'); + }, + + get embedDropdown() { + return cy.findByTestId('toolbar-entity-dropdown-toggle'); + }, + + embed(type: EmbedType) { + this.embedDropdown.click(); + cy.findByTestId(`toolbar-toggle-embedded-${type}`).click(); + }, + }; + } + + get forms() { + return { + get hyperlink() { + return new HyperLinkModal(); + }, + }; + } + + getValue() { + cy.wait(500); + + return cy.getRichTextField().then((field) => { + return field.getValue(); + }); + } + + expectValue(expectedValue: any) { + // we want to make sure any kind of debounced behavior + // is already triggered before we go on and assert the + // content of the field in any test. Using cy.clock() + // doesn't work for some reason + // eslint-disable-next-line + cy.wait(500); + + cy.getRichTextField().should((field) => { + expect(field.getValue()).to.deep.equal(expectedValue); + }); + + // There can't be any validation error + this.expectNoValidationErrors(); + } + + expectSnapshotValue() { + // we want to make sure any kind of debounced behavior + // is already triggered before we go on and assert the + // content of the field in any test. Using cy.clock() + // doesn't work for some reason + // eslint-disable-next-line + cy.wait(500); + + cy.getRichTextField().should((field) => { + //@ts-expect-error cypress-plugin-snapshots doesn't have type definitions + cy.wrap(field.getValue()).toMatchSnapshot(); + }); + + // There can't be any validation error + this.expectNoValidationErrors(); + } + + expectNoValidationErrors() { + cy.editorEvents() + .then((events) => { + return events.filter((ev) => isValidationEvent(ev) && ev.value.length > 0); + }) + .should('be.empty') + .as('validationErrors'); + } + + expectTrackingValue(expectedValue: any) { + cy.window() + .should((win) => { + expect(win.actions).to.deep.equal(expectedValue); + }) + .as('trackingValue'); + } +} + +class HyperLinkModal { + get linkText() { + return cy.findByTestId('link-text-input'); + } + + get linkType() { + return cy.findByTestId('link-type-input'); + } + + setLinkType = (type: INLINES.HYPERLINK | INLINES.ENTRY_HYPERLINK | INLINES.ASSET_HYPERLINK) => { + this.linkType.select(type); + }; + + get linkTarget() { + return cy.findByTestId('link-target-input'); + } + + get linkEntityTarget() { + return cy.findByTestId('entity-selection-link'); + } + + get submit() { + return cy.findByTestId('confirm-cta'); + } + + get cancel() { + return cy.findByTestId('cancel-cta'); + } +} diff --git a/cypress/e2e/rich-text/__snapshots__/RichTextEditor.Pasting.spec.ts.snap b/cypress/e2e/rich-text/__snapshots__/RichTextEditor.Pasting.spec.ts.snap new file mode 100644 index 000000000..26e43819b --- /dev/null +++ b/cypress/e2e/rich-text/__snapshots__/RichTextEditor.Pasting.spec.ts.snap @@ -0,0 +1,4151 @@ +exports[`Rich Text Editor > Lists > pastes orphaned list items as unordered lists #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Hello" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "world!" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Lists > supports pasting of a simple list #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "item #1" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "item #2" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Lists > pastes texts inside lists #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Hello world!" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Lists > pastes elements inside links #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "This is a " + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "link" + } + ], + "data": { + "uri": "https://example.com" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " and an inline entry: " + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-inline" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Lists > pastes list items as new lists inside lists #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Hello" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "sub" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "list" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Lists > confers the parent list type upon list items pasted within lists #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Hello" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "sub" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "list" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "ordered-list" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "ordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Lists > pastes only the text content of other blocks #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Item #1" + }, + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Header 1" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Header 2 (" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "with link" + } + ], + "data": { + "uri": "https://example.com" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": ")" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Cell 1" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Cell 2" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Lists > pastes table & its inline elements correctly #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "What can I do with tables" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Property" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-header-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Supported" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-header-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Adding and removing rows and columns" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Yes" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Table header" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Yes, for rows and columns" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Formatting options" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Bold" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "," + }, + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "italics" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "," + }, + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "underline" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "," + }, + { + "data": {}, + "marks": [ + { + "type": "code" + } + ], + "nodeType": "text", + "value": "code" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Hyperlinks" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "URL" + } + ], + "data": { + "uri": "https://google.com" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": ", " + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "asset" + } + ], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Asset", + "type": "Link" + } + } + }, + "nodeType": "asset-hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " and " + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "entry" + } + ], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "entry-hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Embed entries" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Only inline entries " + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-inline" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Copy & paste from other documents" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Yes. Eg. Google Docs, Jira, Confluence" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > HR > should paste from internal copying #0`] = +{ + "content": [ + { + "content": [], + "data": {}, + "nodeType": "hr" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > HR > should paste from external resources #0`] = +{ + "content": [ + { + "content": [], + "data": {}, + "nodeType": "hr" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > removes style tags #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "paste only this" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Basic marks > works when pasting from another RT editor #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + }, + { + "type": "italic" + }, + { + "type": "underline" + }, + { + "type": "code" + } + ], + "nodeType": "text", + "value": "hello world" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > spreadsheets > removes empty columns/rows > Google Sheets #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Cell 1" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Cell 2" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > spreadsheets > removes empty columns/rows > MS Excel #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Cell 1" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Cell 2" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Microsoft Word (.docx) deserialization > paragraphs, marks and links #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "This is a " + }, + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "paragraph " + }, + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "with " + }, + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "some" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " marks and " + }, + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "links" + } + ], + "data": { + "uri": "https://contentful.com/" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Microsoft Word (.docx) deserialization > unordered list #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "This" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Is" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "A list" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Microsoft Word (.docx) deserialization > ordered list #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "This is" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "An ordered list" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "ordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Microsoft Word (.docx) deserialization > tables #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "This is some" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "underline" + }, + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Content on tables" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > copy from safari (no href in anchors) > recognizes entry hyperlink #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "a" + } + ], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "entry-hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " b" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > copy from safari (no href in anchors) > recognizes asset hyperlink #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "a" + } + ], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Asset", + "type": "Link" + } + } + }, + "nodeType": "asset-hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " b" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Lists > normalizes table cells correctly #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Field" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Type" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Description" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Lists > normalizes paragraphs in table cells correctly #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Field" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Type" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Description" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > blockquotes > breaks a paragraph when pasting a blockquote in the middle #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "A paragrap" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "a quote" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "blockquote" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "h" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > blockquotes > remove the paragraph if it's empty #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "a quote" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "blockquote" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > blockquotes > removes the paragraph if it's empty #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "a quote" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "blockquote" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > blockquotes > removes the paragraph if it's fully selected #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "a quote" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "blockquote" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > missing application/x-slate-fragment [safari] > render slate fragment if attribute "data-slate-fragment" exists #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "quote" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "blockquote" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Tables > Google Docs - around
    #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Cell 1" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Cell 2" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Cell 3" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Cell 4" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Tables > removes table wrappers when pasting a single cell #0`] = +{ + "nodeType": "document", + "data": {}, + "content": [ + { + "nodeType": "paragraph", + "data": {}, + "content": [ + { + "nodeType": "text", + "value": "cell content with a link and inline entry", + "marks": [], + "data": {} + }, + { + "nodeType": "embedded-entry-inline", + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "type": "Link", + "linkType": "Entry" + } + } + }, + "content": [] + }, + { + "nodeType": "text", + "value": ".", + "marks": [], + "data": {} + } + ] + } + ] +}; + +exports[`Rich Text Editor > works when pasting from another RT editor > works when pasting subscript and superscript from a google doc #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + }, + { + "type": "italic" + }, + { + "type": "underline" + }, + { + "type": "code" + } + ], + "nodeType": "text", + "value": "hello world" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Superscript and subscript marks > works when pasting subscript and superscript from a google doc #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "superscript" + } + ], + "nodeType": "text", + "value": "Hello" + }, + { + "data": {}, + "marks": [ + { + "type": "subscript" + } + ], + "nodeType": "text", + "value": "World" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > removing restricted marks > works when pasting subscript and superscript from a google doc #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "HelloWorld" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > text > supports pasting of links within text #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Some text " + }, + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "with link" + } + ], + "data": { + "uri": "https://be.contentful.com" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " and some more text" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "and another link" + } + ], + "data": { + "uri": "https://be.contentful.com" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " following." + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Lists > MS Word - does not remove space around link in list surrounded by text with background color #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "One list item" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "A list " + }, + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "item" + } + ], + "data": { + "uri": "https://www.google.com/" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " with a background colors" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Tables > Google Docs #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Field" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Type" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Description" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "sys" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Sys" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Common " + }, + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "system" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " properties" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "system common " + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "properties." + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "fields.title" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Text" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Title" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " of the asset." + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Title " + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Of the" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "asset" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "fields.description" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Text" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "Description" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " of the asset." + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "fields.file" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "File" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "File" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "(s) of the asset." + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "fields.file.fileName" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Symbol" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "underline" + }, + { + "type": "italic" + }, + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Original" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " filename of the file." + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "fields.file.contentType" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Symbol" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Content type of the file." + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "fields.file.url" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Symbol" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "URL of the file." + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "fields.file.details" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Object" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Details of the file, depending on its MIME type." + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "fields.file.details.size" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Number" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Size (in bytes) of the file." + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Microsoft Word (.docx) deserialization > paragraphs with formattings #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "What is Lorem Ipsum?" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Lorem Ipsum" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. " + }, + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "passages, and more recently with desktop publishing software like Aldus PageMaker including " + }, + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "versions of Lorem Ipsum." + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Microsoft Word (.docx) deserialization > text and tables from ms word online #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "What is Lorem Ipsum?" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "Lorem Ipsum" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. " + }, + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "passages, and more recently with desktop publishing software like Aldus PageMaker including " + }, + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "versions of Lorem Ipsum." + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "1 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "2 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "3 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "4 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "5 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "6 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "7 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "8 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "a " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "b " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "c " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "d " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "e " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "f " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "g " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "h " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "a1 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "c3 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "e5 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "e7 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "h8 " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; diff --git a/cypress/e2e/rich-text/__snapshots__/RichTextEditor.spec.ts.snap b/cypress/e2e/rich-text/__snapshots__/RichTextEditor.spec.ts.snap new file mode 100644 index 000000000..d534b3672 --- /dev/null +++ b/cypress/e2e/rich-text/__snapshots__/RichTextEditor.spec.ts.snap @@ -0,0 +1,1023 @@ +exports[`Rich Text Editor > Quote > using the toolbar > should preserve marks & inline elements #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "bold" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "italic" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "underline" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "data": {}, + "marks": [ + { + "type": "code" + } + ], + "nodeType": "text", + "value": "code" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "link" + } + ], + "data": { + "uri": "https://example.com" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-inline" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " more text" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "blockquote" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Quote > using hotkey (mod+shift+1) > should preserve marks & inline elements #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "bold" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "italic" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "data": {}, + "marks": [ + { + "type": "underline" + } + ], + "nodeType": "text", + "value": "underline" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "data": {}, + "marks": [ + { + "type": "code" + } + ], + "nodeType": "text", + "value": "code" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "link" + } + ], + "data": { + "uri": "https://example.com" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " " + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-inline" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": " more text" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "blockquote" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > New Line > in a list > should add a new line after entity block in same list item #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "some text 1" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-block" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "some more text" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-block" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > invalid document structure > runs initial normalization without triggering a value change #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "This is a hyperlink" + } + ], + "data": { + "uri": "https://exmaple.com" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "heading-1" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "This is a paragraph" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + }, + { + "type": "superscript" + }, + { + "type": "banana" + } + ], + "nodeType": "text", + "value": "Text with custom marks" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "blockquote" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "paragraph inside list item" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "paragraph inside a nested list" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "blockquote inside list item" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "blockquote" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "cell #1" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "cell #2" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "cell #3" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "cell #4" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "cell #5" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "cell #6" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "table-cell" + } + ], + "data": {}, + "nodeType": "table-row" + } + ], + "data": {}, + "nodeType": "table" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "end" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Quote > using the toolbar > should toggle off empty quotes on backspace #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Quote > using hotkey (mod+shift+1) > should toggle off empty quotes on backspace #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Commands > Palette > should embed inline #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "exampleCT", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-inline" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Commands > Palette > should embed asset #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "published_asset", + "linkType": "Asset", + "type": "Link" + } + } + }, + "nodeType": "embedded-asset-block" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Commands > Palette > should select next item on down arrow press #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "exampleCT", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-inline" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Editor > Commands > Palette > should not delete adjacent text #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "test" + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "exampleCT", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-inline" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; diff --git a/cypress/e2e/rich-text/__snapshots__/RichTextEscapeInlines.spec.ts.snap b/cypress/e2e/rich-text/__snapshots__/RichTextEscapeInlines.spec.ts.snap new file mode 100644 index 000000000..170f62933 --- /dev/null +++ b/cypress/e2e/rich-text/__snapshots__/RichTextEscapeInlines.spec.ts.snap @@ -0,0 +1,39 @@ +exports[`Rich Text Lists > escapes hyperlink when typing at the end #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "link" + } + ], + "data": { + "uri": "https://example.com" + }, + "nodeType": "hyperlink" + }, + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "outside the link" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; diff --git a/cypress/e2e/rich-text/__snapshots__/RichTextLists.spec.ts.snap b/cypress/e2e/rich-text/__snapshots__/RichTextLists.spec.ts.snap new file mode 100644 index 000000000..ed07d5740 --- /dev/null +++ b/cypress/e2e/rich-text/__snapshots__/RichTextLists.spec.ts.snap @@ -0,0 +1,785 @@ +exports[`Rich Text Lists > Unordered List (UL) > should preserve current marks when inserting a new li #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "bold " + }, + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "italic" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "more italic text" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > Ordered List (OL) > should preserve current marks when inserting a new li #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "bold" + } + ], + "nodeType": "text", + "value": "bold " + }, + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "italic" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [ + { + "type": "italic" + } + ], + "nodeType": "text", + "value": "more italic text" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "ordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > Unordered List (UL) > should move nested list items when parent is invalid #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "1" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "2" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "4" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > Ordered List (OL) > should move nested list items when parent is invalid #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "1" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "2" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "ordered-list" + } + ], + "data": {}, + "nodeType": "list-item" + }, + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "4" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "ordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > does not remove entity cards when toggling off a list #0`] = +{ + "content": [ + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-block" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > Unordered List (UL) > backspace at the start of li should reset the item #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "abc" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > Ordered List (OL) > backspace at the start of li should reset the item #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "abc" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > Unordered List (UL) > backspace on empty li at the beginning of doc should work #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > Ordered List (OL) > backspace on empty li at the beginning of doc should work #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > Unordered List (UL) > switching off the list > it raises the non-first list item entirely #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "A paragraph" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-block" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Another paragraph" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-block" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Another paragraph again" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "unordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > Ordered List (OL) > switching off the list > it raises the list item entirely #0`] = +{ + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "A paragraph" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-block" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; + +exports[`Rich Text Lists > Ordered List (OL) > switching off the list > it raises the non-first list item entirely #0`] = +{ + "content": [ + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "A paragraph" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-block" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "ordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Another paragraph" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [], + "data": { + "target": { + "sys": { + "id": "example-entity-id", + "linkType": "Entry", + "type": "Link" + } + } + }, + "nodeType": "embedded-entry-block" + }, + { + "content": [ + { + "content": [ + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "Another paragraph again" + } + ], + "data": {}, + "nodeType": "paragraph" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "list-item" + } + ], + "data": {}, + "nodeType": "ordered-list" + }, + { + "content": [ + { + "data": {}, + "marks": [], + "nodeType": "text", + "value": "" + } + ], + "data": {}, + "nodeType": "paragraph" + } + ], + "data": {}, + "nodeType": "document" +}; diff --git a/cypress/e2e/rich-text/document-mocks/documentWithLinks.js b/cypress/e2e/rich-text/document-mocks/documentWithLinks.js new file mode 100644 index 000000000..05a625f8a --- /dev/null +++ b/cypress/e2e/rich-text/document-mocks/documentWithLinks.js @@ -0,0 +1,139 @@ +export default { + nodeType: 'document', + data: {}, + content: [ + { + nodeType: 'embedded-entry-block', + data: { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Entry', + }, + }, + }, + content: [], + }, + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: '', + marks: [], + data: {}, + }, + { + nodeType: 'embedded-entry-inline', + data: { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Entry', + }, + }, + }, + content: [], + }, + { + nodeType: 'text', + value: '', + marks: [], + data: {}, + }, + ], + }, + { + nodeType: 'embedded-asset-block', + data: { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Asset', + }, + }, + }, + content: [], + }, + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: '', + marks: [], + data: {}, + }, + { + nodeType: 'asset-hyperlink', + data: { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Asset', + }, + }, + }, + content: [ + { + nodeType: 'text', + value: 'an asset', + marks: [], + data: {}, + }, + ], + }, + { + nodeType: 'text', + value: '', + marks: [], + data: {}, + }, + ], + }, + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: '', + marks: [], + data: {}, + }, + { + nodeType: 'entry-hyperlink', + data: { + target: { + sys: { + id: 'example-entity-id', + type: 'Link', + linkType: 'Entry', + }, + }, + }, + content: [ + { + nodeType: 'text', + value: 'an entry', + marks: [], + data: {}, + }, + ], + }, + { + nodeType: 'text', + value: '', + marks: [], + data: {}, + }, + ], + }, + ], +}; diff --git a/cypress/e2e/rich-text/document-mocks/invalidDocumentNormalizable.js b/cypress/e2e/rich-text/document-mocks/invalidDocumentNormalizable.js new file mode 100644 index 000000000..7b0c16f88 --- /dev/null +++ b/cypress/e2e/rich-text/document-mocks/invalidDocumentNormalizable.js @@ -0,0 +1,410 @@ +// This document contains errors that must be solved with normalization: +export default { + nodeType: 'document', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: '', + marks: [], + data: {}, + }, + + // hyperlink with an empty text node + { + nodeType: 'hyperlink', + data: { + uri: 'https://exmaple.com', + }, + content: [ + { + nodeType: 'text', + value: '', + marks: [], + data: {}, + }, + ], + }, + + // Hyperlink without a text node + { + nodeType: 'hyperlink', + data: { + uri: 'https://exmaple.com', + }, + content: [], + }, + + // Hyperlink with multiple text nodes without marks + { + nodeType: 'hyperlink', + data: { + uri: 'https://exmaple.com', + }, + content: [ + { + nodeType: 'text', + value: 'This ', + marks: [], + data: {}, + }, + { + nodeType: 'text', + value: 'is a ', + marks: [], + data: {}, + }, + { + nodeType: 'text', + value: 'hyperlink', + marks: [], + data: {}, + }, + ], + }, + + { + nodeType: 'text', + value: '', + marks: [], + data: {}, + }, + ], + }, + + // paragraphs/headings without text nodes + { + nodeType: 'paragraph', + data: {}, + content: [], + }, + { + nodeType: 'heading-1', + data: {}, + content: [], + }, + + // Paragraph with multiple text nodes without marks + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'This is ', + marks: [], + data: {}, + }, + { + nodeType: 'text', + value: '', + marks: [], + data: {}, + }, + { + nodeType: 'text', + value: 'a paragraph', + marks: [], + data: {}, + }, + ], + }, + + // Custom marks + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'Text with custom marks', + marks: [ + { + type: 'bold', + }, + { + type: 'superscript', + }, + { + type: 'banana', + }, + ], + data: {}, + }, + ], + }, + + // blockquote without paragraphs + { + nodeType: 'blockquote', + data: {}, + content: [], + }, + + // ol/ul with empty array of list items + { + nodeType: 'unordered-list', + data: {}, + content: [], + }, + { + nodeType: 'ordered-list', + data: {}, + content: [], + }, + + // list items with empty array of child nodes + { + nodeType: 'unordered-list', + data: {}, + content: [ + { + nodeType: 'list-item', + data: {}, + content: [], + }, + ], + }, + + // list > li with the following children: + // 1. p + // 2. ul + // 3. blockquote + { + nodeType: 'unordered-list', + data: {}, + content: [ + { + nodeType: 'list-item', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'paragraph inside list item', + marks: [], + data: {}, + }, + ], + }, + + { + nodeType: 'unordered-list', + data: {}, + content: [ + { + nodeType: 'list-item', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'paragraph inside a nested list', + marks: [], + data: {}, + }, + ], + }, + ], + }, + ], + }, + + { + nodeType: 'blockquote', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'blockquote inside list item', + marks: [], + data: {}, + }, + ], + }, + ], + }, + ], + }, + ], + }, + + // Table cell with paragraph without text node + { + nodeType: 'table', + data: {}, + content: [ + { + nodeType: 'table-row', + data: {}, + content: [ + { + nodeType: 'table-cell', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [], + }, + ], + }, + ], + }, + ], + }, + + // Table with variable size rows + { + nodeType: 'table', + data: {}, + content: [ + // 1 cell in a row + { + nodeType: 'table-row', + data: {}, + content: [ + { + nodeType: 'table-cell', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'cell #1', + marks: [], + data: {}, + }, + ], + }, + ], + }, + ], + }, + + // 3 cells in a row + { + nodeType: 'table-row', + data: {}, + content: [ + { + nodeType: 'table-cell', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'cell #2', + marks: [], + data: {}, + }, + ], + }, + ], + }, + { + nodeType: 'table-cell', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'cell #3', + marks: [], + data: {}, + }, + ], + }, + ], + }, + { + nodeType: 'table-cell', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'cell #4', + marks: [], + data: {}, + }, + ], + }, + ], + }, + ], + }, + + // 2 cells in a row + { + nodeType: 'table-row', + data: {}, + content: [ + { + nodeType: 'table-cell', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'cell #5', + marks: [], + data: {}, + }, + ], + }, + ], + }, + { + nodeType: 'table-cell', + data: {}, + content: [ + { + nodeType: 'paragraph', + data: {}, + content: [ + { + nodeType: 'text', + value: 'cell #6', + marks: [], + data: {}, + }, + ], + }, + ], + }, + ], + }, + ], + }, + ], +}; diff --git a/cypress/e2e/rich-text/fixtures/msWordOnline.js b/cypress/e2e/rich-text/fixtures/msWordOnline.js new file mode 100644 index 000000000..3e9d502c1 --- /dev/null +++ b/cypress/e2e/rich-text/fixtures/msWordOnline.js @@ -0,0 +1,3 @@ +/* eslint-disable */ +// prettier-ignore +export default `

    What is Lorem Ipsum? 

    Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum. 

     

     

    1 

    2 

    3 

    4 

    5 

    6 

    7 

    8 

    a 

    b 

    c 

    d 

    e 

    f 

    g 

    h 

    a1 

     

    c3 

     

    e5 

     

    e7 

    h8 

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    ` diff --git a/cypress/e2e/rich-text/getting-clipboard-data.gif b/cypress/e2e/rich-text/getting-clipboard-data.gif new file mode 100644 index 0000000000000000000000000000000000000000..afe3dd7406148d28532b21e7718817c941cddd17 GIT binary patch literal 311430 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

    w|rHG0~}UCL1+ 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

    XWNFm*k2QwDYPaQPpLc_jz7)tl-x`U#l;l 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 WW`T4{=R5z8*Q-oMBq0_+^8Wx*0cFDg literal 0 HcmV?d00001 diff --git a/cypress/e2e/rich-text/pasting-into-test.gif b/cypress/e2e/rich-text/pasting-into-test.gif new file mode 100644 index 0000000000000000000000000000000000000000..b54512ae639837914ef17a66fac542a3631c6fdc GIT binary patch literal 363640 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

    JqRH1u^0I{h2? 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

    *9`*YLPZn?m z<#Cqe&vhC7GAD0y>l+B5nr2ibyCWu`awM&XaDUCEOn((RHRIHH)1#HdiBKhiLj~QJrScz9AR{G~^wMJ407KAPe#YRFWBkh;N^?2@FXIo4?zwbt(@LdL4 ze?D@I0m%>tcf9h$<)(KGQj2l=NoZ&=;x47dD}7y&OM)>phvPVs%{w%}fH>!;_+0^( z;^UMk3y%ekJQiYNQ+aXT<5YPXSE;SEwhTs70}a=#vfE^-c4JAlpX&HL$WQ#n9=|D; z

    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%0A#y18i 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ⅇFwz+B@m)RH#rahFN4DEJfXLOIK0||5Jqg-HZ8wK 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 z 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ù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 V&{_tZp^Q~oz|gu~>HN@B{$J-@+Fbwu literal 0 HcmV?d00001 diff --git a/cypress/plugins/index.ts b/cypress/plugins/index.ts new file mode 100644 index 000000000..14a7db9a7 --- /dev/null +++ b/cypress/plugins/index.ts @@ -0,0 +1,19 @@ +import webpack from '@cypress/webpack-preprocessor'; +import { register } from '@cypress/snapshot'; +import path from 'path'; + +const webpackFilename = path.join(__dirname, 'webpack.config.js'); + +export const plugin = (on: Cypress.PluginEvents, config: Cypress.PluginConfigOptions) => { + if (config.testingType === 'e2e') { + on('file:preprocessor', webpack({ webpackOptions: require(webpackFilename) })); + + register(); + } + + if (config.testingType === 'component') { + require('@cypress/react/plugins/load-webpack')(on, config, { webpackFilename }); + } + + return config; +}; diff --git a/cypress/support/e2e.js b/cypress/support/e2e.js new file mode 100644 index 000000000..44fc6abfe --- /dev/null +++ b/cypress/support/e2e.js @@ -0,0 +1,21 @@ +// *********************************************************** +// This example support/index.js is processed and +// loaded automatically before your test files. +// +// This is a great place to put global configuration and +// behavior that modifies Cypress. +// +// You can change the location of this file or turn off +// automatically serving support files with the +// 'supportFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/configuration +// *********************************************************** +require('cypress-plugin-tab'); +import './commands'; + +if (Cypress.testingType === 'e2e') { + require('@cypress/snapshot'); + require('cypress-plugin-tab'); +}