gitextract_ol6jf4j0/ ├── .editorconfig ├── .eslintignore ├── .eslintrc ├── .github/ │ ├── CODE_OF_CONDUCT.md │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ ├── config.yml │ │ └── general_issue.md │ └── workflows/ │ ├── bump-version-on-merge-next.yml │ ├── create-a-release-draft.yml │ ├── cypress.yml │ ├── eslint.yml │ └── publish-package-to-npm.yml ├── .gitignore ├── .npmignore ├── .nvmrc ├── .postcssrc.yml ├── .stylelintrc ├── .vscode/ │ └── settings.json ├── CODEOWNERS ├── LICENSE ├── README.md ├── cypress.config.ts ├── docs/ │ ├── CHANGELOG.md │ ├── api.md │ ├── block-tunes.md │ ├── caret.md │ ├── installation.md │ ├── releases.md │ ├── sanitizer.md │ ├── toolbar-settings.md │ ├── tools-inline.md │ ├── tools.md │ └── usage.md ├── example/ │ ├── example-i18n.html │ ├── example-multiple.html │ ├── example-popup.html │ ├── example-rtl.html │ └── example.html ├── index.html ├── package.json ├── public/ │ └── assets/ │ ├── demo.css │ └── json-preview.js ├── src/ │ ├── codex.ts │ ├── components/ │ │ ├── __module.ts │ │ ├── block/ │ │ │ ├── api.ts │ │ │ └── index.ts │ │ ├── block-tunes/ │ │ │ ├── block-tune-delete.ts │ │ │ ├── block-tune-move-down.ts │ │ │ └── block-tune-move-up.ts │ │ ├── blocks.ts │ │ ├── constants.ts │ │ ├── core.ts │ │ ├── dom.ts │ │ ├── domIterator.ts │ │ ├── errors/ │ │ │ └── critical.ts │ │ ├── events/ │ │ │ ├── BlockChanged.ts │ │ │ ├── BlockHovered.ts │ │ │ ├── EditorMobileLayoutToggled.ts │ │ │ ├── FakeCursorAboutToBeToggled.ts │ │ │ ├── FakeCursorHaveBeenSet.ts │ │ │ ├── RedactorDomChanged.ts │ │ │ └── index.ts │ │ ├── flipper.ts │ │ ├── i18n/ │ │ │ ├── index.ts │ │ │ ├── locales/ │ │ │ │ └── en/ │ │ │ │ └── messages.json │ │ │ └── namespace-internal.ts │ │ ├── inline-tools/ │ │ │ ├── inline-tool-bold.ts │ │ │ ├── inline-tool-convert.ts │ │ │ ├── inline-tool-italic.ts │ │ │ └── inline-tool-link.ts │ │ ├── modules/ │ │ │ ├── api/ │ │ │ │ ├── blocks.ts │ │ │ │ ├── caret.ts │ │ │ │ ├── events.ts │ │ │ │ ├── i18n.ts │ │ │ │ ├── index.ts │ │ │ │ ├── inlineToolbar.ts │ │ │ │ ├── listeners.ts │ │ │ │ ├── notifier.ts │ │ │ │ ├── readonly.ts │ │ │ │ ├── sanitizer.ts │ │ │ │ ├── saver.ts │ │ │ │ ├── selection.ts │ │ │ │ ├── styles.ts │ │ │ │ ├── toolbar.ts │ │ │ │ ├── tools.ts │ │ │ │ ├── tooltip.ts │ │ │ │ └── ui.ts │ │ │ ├── blockEvents.ts │ │ │ ├── blockManager.ts │ │ │ ├── blockSelection.ts │ │ │ ├── caret.ts │ │ │ ├── crossBlockSelection.ts │ │ │ ├── dragNDrop.ts │ │ │ ├── index.ts │ │ │ ├── modificationsObserver.ts │ │ │ ├── paste.ts │ │ │ ├── readonly.ts │ │ │ ├── rectangleSelection.ts │ │ │ ├── renderer.ts │ │ │ ├── saver.ts │ │ │ ├── toolbar/ │ │ │ │ ├── blockSettings.ts │ │ │ │ ├── index.ts │ │ │ │ └── inline.ts │ │ │ ├── tools.ts │ │ │ └── ui.ts │ │ ├── polyfills.ts │ │ ├── selection.ts │ │ ├── tools/ │ │ │ ├── base.ts │ │ │ ├── block.ts │ │ │ ├── collection.ts │ │ │ ├── factory.ts │ │ │ ├── inline.ts │ │ │ └── tune.ts │ │ ├── ui/ │ │ │ └── toolbox.ts │ │ ├── utils/ │ │ │ ├── api.ts │ │ │ ├── bem.ts │ │ │ ├── blocks.ts │ │ │ ├── caret.ts │ │ │ ├── events.ts │ │ │ ├── keyboard.ts │ │ │ ├── listeners.ts │ │ │ ├── mutations.ts │ │ │ ├── notifier.ts │ │ │ ├── popover/ │ │ │ │ ├── components/ │ │ │ │ │ ├── hint/ │ │ │ │ │ │ ├── hint.const.ts │ │ │ │ │ │ ├── hint.css │ │ │ │ │ │ ├── hint.ts │ │ │ │ │ │ └── index.ts │ │ │ │ │ ├── popover-header/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── popover-header.const.ts │ │ │ │ │ │ ├── popover-header.ts │ │ │ │ │ │ └── popover-header.types.ts │ │ │ │ │ ├── popover-item/ │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── popover-item-default/ │ │ │ │ │ │ │ ├── popover-item-default.const.ts │ │ │ │ │ │ │ └── popover-item-default.ts │ │ │ │ │ │ ├── popover-item-html/ │ │ │ │ │ │ │ ├── popover-item-html.const.ts │ │ │ │ │ │ │ └── popover-item-html.ts │ │ │ │ │ │ ├── popover-item-separator/ │ │ │ │ │ │ │ ├── popover-item-separator.const.ts │ │ │ │ │ │ │ └── popover-item-separator.ts │ │ │ │ │ │ └── popover-item.ts │ │ │ │ │ └── search-input/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── search-input.const.ts │ │ │ │ │ ├── search-input.ts │ │ │ │ │ └── search-input.types.ts │ │ │ │ ├── index.ts │ │ │ │ ├── popover-abstract.ts │ │ │ │ ├── popover-desktop.ts │ │ │ │ ├── popover-inline.ts │ │ │ │ ├── popover-mobile.ts │ │ │ │ ├── popover.const.ts │ │ │ │ └── utils/ │ │ │ │ └── popover-states-history.ts │ │ │ ├── promise-queue.ts │ │ │ ├── resolve-aliases.ts │ │ │ ├── sanitizer.ts │ │ │ ├── scroll-locker.ts │ │ │ ├── shortcuts.ts │ │ │ ├── tools.ts │ │ │ └── tooltip.ts │ │ └── utils.ts │ ├── env.d.ts │ ├── styles/ │ │ ├── animations.css │ │ ├── block.css │ │ ├── export.css │ │ ├── inline-toolbar.css │ │ ├── input.css │ │ ├── main.css │ │ ├── placeholders.css │ │ ├── popover-inline.css │ │ ├── popover.css │ │ ├── rtl.css │ │ ├── stub.css │ │ ├── toolbar.css │ │ ├── toolbox.css │ │ ├── ui.css │ │ └── variables.css │ ├── tools/ │ │ └── stub/ │ │ └── index.ts │ └── types-internal/ │ ├── editor-modules.d.ts │ ├── html-janitor.d.ts │ ├── i18n-internal-namespace.d.ts │ └── module-config.d.ts ├── test/ │ ├── cypress/ │ │ ├── .eslintrc │ │ ├── fixtures/ │ │ │ ├── test.html │ │ │ ├── tools/ │ │ │ │ ├── ContentlessTool.ts │ │ │ │ ├── SimpleHeader.ts │ │ │ │ ├── ToolMock.ts │ │ │ │ └── ToolWithoutConversionExport.ts │ │ │ └── types/ │ │ │ └── PartialBlockMutationEvent.ts │ │ ├── support/ │ │ │ ├── commands.ts │ │ │ ├── e2e.ts │ │ │ ├── index.d.ts │ │ │ ├── index.ts │ │ │ └── utils/ │ │ │ ├── createEditorWithTextBlocks.ts │ │ │ ├── createParagraphMock.ts │ │ │ └── nestedEditorInstance.ts │ │ ├── tests/ │ │ │ ├── api/ │ │ │ │ ├── block.cy.ts │ │ │ │ ├── blocks.cy.ts │ │ │ │ ├── caret.cy.ts │ │ │ │ ├── toolbar.cy.ts │ │ │ │ ├── tools.cy.ts │ │ │ │ └── tunes.cy.ts │ │ │ ├── block-ids.cy.ts │ │ │ ├── copy-paste.cy.ts │ │ │ ├── i18n.cy.ts │ │ │ ├── initialization.cy.ts │ │ │ ├── inline-tools/ │ │ │ │ └── link.cy.ts │ │ │ ├── modules/ │ │ │ │ ├── BlockEvents/ │ │ │ │ │ ├── ArrowLeft.cy.ts │ │ │ │ │ ├── ArrowRight.cy.ts │ │ │ │ │ ├── Backspace.cy.ts │ │ │ │ │ ├── Delete.cy.ts │ │ │ │ │ ├── Enter.cy.ts │ │ │ │ │ ├── Slash.cy.ts │ │ │ │ │ └── Tab.cy.ts │ │ │ │ ├── InlineToolbar.cy.ts │ │ │ │ ├── Renderer.cy.ts │ │ │ │ ├── Saver.cy.ts │ │ │ │ ├── Tools.cy.ts │ │ │ │ └── Ui.cy.ts │ │ │ ├── onchange.cy.ts │ │ │ ├── readOnly.cy.ts │ │ │ ├── sanitisation.cy.ts │ │ │ ├── selection.cy.ts │ │ │ ├── tools/ │ │ │ │ ├── BlockTool.cy.ts │ │ │ │ ├── BlockTune.cy.ts │ │ │ │ ├── InlineTool.cy.ts │ │ │ │ ├── ToolsCollection.cy.ts │ │ │ │ └── ToolsFactory.cy.ts │ │ │ ├── ui/ │ │ │ │ ├── BlockTunes.cy.ts │ │ │ │ ├── DataEmpty.cy.ts │ │ │ │ ├── InlineToolbar.cy.ts │ │ │ │ ├── Placeholders.cy.ts │ │ │ │ └── toolbox.cy.ts │ │ │ ├── utils/ │ │ │ │ ├── flipper.cy.ts │ │ │ │ └── popover.cy.ts │ │ │ └── utils.cy.ts │ │ └── tsconfig.json │ └── testcases.md ├── tsconfig.build.json ├── tsconfig.json ├── tslint.json ├── types/ │ ├── api/ │ │ ├── block.d.ts │ │ ├── blocks.d.ts │ │ ├── caret.d.ts │ │ ├── events.d.ts │ │ ├── i18n.d.ts │ │ ├── index.d.ts │ │ ├── inline-toolbar.d.ts │ │ ├── listeners.d.ts │ │ ├── notifier.d.ts │ │ ├── readonly.d.ts │ │ ├── sanitizer.d.ts │ │ ├── saver.d.ts │ │ ├── selection.d.ts │ │ ├── styles.d.ts │ │ ├── toolbar.d.ts │ │ ├── tools.d.ts │ │ ├── tooltip.d.ts │ │ └── ui.d.ts │ ├── block-tunes/ │ │ ├── block-tune-data.d.ts │ │ ├── block-tune.d.ts │ │ └── index.d.ts │ ├── configs/ │ │ ├── conversion-config.ts │ │ ├── editor-config.d.ts │ │ ├── i18n-config.d.ts │ │ ├── i18n-dictionary.d.ts │ │ ├── index.d.ts │ │ ├── log-levels.d.ts │ │ ├── paste-config.d.ts │ │ └── sanitizer-config.d.ts │ ├── data-formats/ │ │ ├── block-data.d.ts │ │ ├── block-id.ts │ │ ├── index.d.ts │ │ └── output-data.d.ts │ ├── events/ │ │ └── block/ │ │ ├── Base.ts │ │ ├── BlockAdded.ts │ │ ├── BlockChanged.ts │ │ ├── BlockMoved.ts │ │ ├── BlockRemoved.ts │ │ └── index.ts │ ├── index.d.ts │ ├── tools/ │ │ ├── adapters/ │ │ │ ├── base-tool-adapter.d.ts │ │ │ ├── block-tool-adapter.d.ts │ │ │ ├── block-tune-adapter.d.ts │ │ │ ├── inline-tool-adapter.d.ts │ │ │ ├── tool-factory.d.ts │ │ │ ├── tool-type.ts │ │ │ └── tools-collection.d.ts │ │ ├── block-tool-data.d.ts │ │ ├── block-tool.d.ts │ │ ├── hook-events.d.ts │ │ ├── index.d.ts │ │ ├── inline-tool.d.ts │ │ ├── menu-config.d.ts │ │ ├── paste-events.d.ts │ │ ├── tool-config.d.ts │ │ ├── tool-settings.d.ts │ │ └── tool.d.ts │ └── utils/ │ └── popover/ │ ├── hint.d.ts │ ├── index.d.ts │ ├── popover-event.ts │ ├── popover-item-type.ts │ ├── popover-item.d.ts │ └── popover.d.ts ├── vite.config.js └── vite.config.test.js