diff --git a/.eslintrc.js b/.eslintrc.js
index 9f7aa29a..d5a7a0c3 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -34,6 +34,7 @@ module.exports = {
'global-require': 'off',
'func-names': ['error', 'never'],
'arrow-body-style': 'off',
+ 'max-len': 'off',
'vue/this-in-template': ['error', 'never'],
'vue/max-attributes-per-line': ['error', {
singleline: 3,
@@ -42,6 +43,9 @@ module.exports = {
allowFirstLine: false,
},
}],
+ 'no-param-reassign': 'off',
+ 'import/prefer-default-export': 'off',
+ 'consistent-return': 'off',
'no-unused-vars': 'off',
'@typescript-eslint/no-unused-vars': ['error'],
},
diff --git a/docs/src/components/Demo/index.vue b/docs/src/components/Demo/index.vue
index 0647a2cd..aa476198 100644
--- a/docs/src/components/Demo/index.vue
+++ b/docs/src/components/Demo/index.vue
@@ -23,7 +23,7 @@
- Could not find a demo called “{{ this.name }}”.
+ Could not find a demo called “{{ name }}”.
@@ -66,7 +66,7 @@ export default {
hideSourceCode: {
type: Boolean,
default: false,
- }
+ },
},
data() {
@@ -106,7 +106,7 @@ export default {
},
mounted() {
- this.files = collect(require.context(`~/demos/`, true, /.+\..+$/).keys())
+ this.files = collect(require.context('~/demos/', true, /.+\..+$/).keys())
.filter(path => path.startsWith(`./${this.name}`))
.map(path => path.replace('./', ''))
.map(path => {
@@ -120,13 +120,13 @@ export default {
highlight: this.syntax[extension] || extension,
}
})
- .filter((item) => {
+ .filter(item => {
return ['vue', 'jsx', 'scss'].includes(item.extension)
})
.sortBy(item => item.path.split('/').length)
.toArray()
- }
+ },
}
-
\ No newline at end of file
+
diff --git a/docs/src/components/PageNavigation/index.vue b/docs/src/components/PageNavigation/index.vue
index eb3a5e11..c83b5858 100644
--- a/docs/src/components/PageNavigation/index.vue
+++ b/docs/src/components/PageNavigation/index.vue
@@ -51,8 +51,8 @@ export default {
previousPage() {
return this.items[this.currentIndex - 1]
},
- }
+ },
}
-
\ No newline at end of file
+
diff --git a/docs/src/components/Prism/index.vue b/docs/src/components/Prism/index.vue
index 5deb2bd2..8c336bbc 100644
--- a/docs/src/components/Prism/index.vue
+++ b/docs/src/components/Prism/index.vue
@@ -34,11 +34,11 @@ export default {
methods: {
highlightCode() {
Prism.highlightAllUnder(this.$el)
- }
+ },
},
mounted() {
this.highlightCode()
},
}
-
\ No newline at end of file
+
diff --git a/docs/src/components/ReactRenderer/index.vue b/docs/src/components/ReactRenderer/index.vue
index a54a8ace..b78f22fb 100644
--- a/docs/src/components/ReactRenderer/index.vue
+++ b/docs/src/components/ReactRenderer/index.vue
@@ -10,7 +10,7 @@ export default {
props: {
component: {
required: true,
- }
+ },
},
mounted() {
@@ -21,4 +21,4 @@ export default {
ReactDOM.unmountComponentAtNode(this.$el)
},
}
-
\ No newline at end of file
+
diff --git a/docs/src/components/Tab/index.vue b/docs/src/components/Tab/index.vue
index 057309a9..7af19c14 100644
--- a/docs/src/components/Tab/index.vue
+++ b/docs/src/components/Tab/index.vue
@@ -8,18 +8,18 @@ import { outdent } from '@mvasilkov/outdent'
export default {
data() {
return {
- formattedCode: null
+ formattedCode: null,
}
},
methods: {
updateCode() {
- const text = this.$slots.default[0].text
+ const { text } = this.$slots.default[0]
if (text) {
this.formattedCode = outdent(text)
}
- }
+ },
},
beforeUpdate() {
@@ -30,4 +30,4 @@ export default {
this.updateCode()
},
}
-
\ No newline at end of file
+
diff --git a/docs/src/demos/Api/Schema/index.vue b/docs/src/demos/Api/Schema/index.vue
index 9003dd36..a2d47419 100644
--- a/docs/src/demos/Api/Schema/index.vue
+++ b/docs/src/demos/Api/Schema/index.vue
@@ -1,5 +1,5 @@
- {{ this.html }}
+ {{ html }}
\ No newline at end of file
+
diff --git a/docs/src/demos/Examples/Basic/index.vue b/docs/src/demos/Examples/Basic/index.vue
index ea2ab8c2..ac98419d 100644
--- a/docs/src/demos/Examples/Basic/index.vue
+++ b/docs/src/demos/Examples/Basic/index.vue
@@ -83,7 +83,7 @@ export default {
mounted() {
this.editor = new Editor({
extensions: defaultExtensions(),
- content: `
+ content: `
Hi there,
@@ -112,4 +112,4 @@ export default {
this.editor.destroy()
},
}
-
\ No newline at end of file
+
diff --git a/docs/src/demos/Examples/ExportHtmlOrJson/index.vue b/docs/src/demos/Examples/ExportHtmlOrJson/index.vue
index fbb6bd27..c10b0369 100644
--- a/docs/src/demos/Examples/ExportHtmlOrJson/index.vue
+++ b/docs/src/demos/Examples/ExportHtmlOrJson/index.vue
@@ -88,4 +88,4 @@ export default {
}
-
-
\ No newline at end of file
+
diff --git a/docs/src/templates/ApiPage/index.vue b/docs/src/templates/ApiPage/index.vue
index 54c64f10..de9a02f5 100644
--- a/docs/src/templates/ApiPage/index.vue
+++ b/docs/src/templates/ApiPage/index.vue
@@ -35,4 +35,4 @@ export default {
}
-
\ No newline at end of file
+
diff --git a/docs/src/templates/DocPage/index.vue b/docs/src/templates/DocPage/index.vue
index c25fa000..0fb293a6 100644
--- a/docs/src/templates/DocPage/index.vue
+++ b/docs/src/templates/DocPage/index.vue
@@ -6,4 +6,4 @@
-
\ No newline at end of file
+
diff --git a/packages/core/src/CommandManager.ts b/packages/core/src/CommandManager.ts
index 2ebeab31..91ee92c0 100644
--- a/packages/core/src/CommandManager.ts
+++ b/packages/core/src/CommandManager.ts
@@ -1,10 +1,11 @@
-import { EditorState, Transaction } from "prosemirror-state"
-import { ChainedCommands, Editor, CommandSpec } from "./Editor"
+import { EditorState, Transaction } from 'prosemirror-state'
+import { ChainedCommands, Editor, CommandSpec } from './Editor'
import getAllMethodNames from './utils/getAllMethodNames'
export default class CommandManager {
editor: Editor
+
commands: { [key: string]: any } = {}
constructor(editor: Editor) {
@@ -35,13 +36,13 @@ export default class CommandManager {
const { commands, editor } = this
const { state, view } = editor
const command = commands[name]
-
+
if (!command) {
// TODO: prevent vue devtools to throw error
// throw new Error(`tiptap: command '${name}' not found.`)
return
}
-
+
return (...args: any) => {
const { tr } = state
const props = this.buildProps(tr)
@@ -87,7 +88,7 @@ export default class CommandManager {
return proxy
}
- }
+ },
}) as ChainedCommands
}
@@ -108,16 +109,16 @@ export default class CommandManager {
.map(([name, command]) => {
return [name, (...args: any[]) => command(...args)(props)]
}))
- }
+ },
}
return props
}
public chainableState(tr: Transaction, state: EditorState): EditorState {
- let selection = tr.selection
- let doc = tr.doc
- let storedMarks = tr.storedMarks
+ let { selection } = tr
+ let { doc } = tr
+ let { storedMarks } = tr
return {
...state,
@@ -143,7 +144,7 @@ export default class CommandManager {
return tr
},
- };
+ }
}
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/ComponentRenderer.ts b/packages/core/src/ComponentRenderer.ts
index 1b69445e..39d9d865 100644
--- a/packages/core/src/ComponentRenderer.ts
+++ b/packages/core/src/ComponentRenderer.ts
@@ -2,4 +2,4 @@ export default abstract class ComponentRenderer {
static type: string
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/Editor.ts b/packages/core/src/Editor.ts
index 8a9dddef..6987abca 100644
--- a/packages/core/src/Editor.ts
+++ b/packages/core/src/Editor.ts
@@ -1,5 +1,5 @@
import { EditorState, Plugin, Transaction } from 'prosemirror-state'
-import { EditorView} from 'prosemirror-view'
+import { EditorView } from 'prosemirror-view'
import { Schema, DOMParser, DOMSerializer } from 'prosemirror-model'
import magicMethods from './utils/magicMethods'
import elementFromString from './utils/elementFromString'
@@ -18,7 +18,7 @@ import Node from './Node'
import Mark from './Mark'
import ComponentRenderer from './ComponentRenderer'
import defaultPlugins from './plugins'
-import * as commands from './commands'
+import * as coreCommands from './commands'
export type Command = (props: {
editor: Editor,
@@ -77,14 +77,23 @@ declare module './Editor' {
export class Editor extends EventEmitter {
public renderer!: any
+
private proxy!: Editor
+
private commandManager!: CommandManager
+
private extensionManager!: ExtensionManager
+
private css!: HTMLStyleElement
+
public schema!: Schema
+
public view!: EditorView
+
public selection = { from: 0, to: 0 }
+
public isFocused = false
+
public options: EditorOptions = {
element: document.createElement('div'),
content: '',
@@ -109,7 +118,7 @@ export class Editor extends EventEmitter {
this.createSchema()
this.extensionManager.resolveConfigs()
this.createView()
- this.registerCommands(commands)
+ this.registerCommands(coreCommands)
if (this.options.injectCSS) {
require('./style.css')
@@ -190,7 +199,7 @@ export class Editor extends EventEmitter {
* @param plugin A ProseMirror plugin
* @param handlePlugins Control how to merge the plugin into the existing plugins.
*/
- public registerPlugin(plugin: Plugin, handlePlugins?: (plugin: Plugin, plugins: Plugin[]) => Plugin[]) {
+ public registerPlugin(plugin: Plugin, handlePlugins?: (newPlugin: Plugin, plugins: Plugin[]) => Plugin[]) {
const plugins = typeof handlePlugins === 'function'
? handlePlugins(plugin, this.state.plugins)
: [plugin, ...this.state.plugins]
@@ -333,7 +342,7 @@ export class Editor extends EventEmitter {
if (schemaType === 'node') {
return nodeIsActive(this.state, this.schema.nodes[name], attrs)
- } else if (schemaType === 'mark') {
+ } if (schemaType === 'mark') {
return markIsActive(this.state, this.schema.marks[name])
}
@@ -381,5 +390,5 @@ export class Editor extends EventEmitter {
this.removeAllListeners()
removeElement(this.css)
}
-
+
}
diff --git a/packages/core/src/EventEmitter.ts b/packages/core/src/EventEmitter.ts
index f15c81ce..7d83d475 100644
--- a/packages/core/src/EventEmitter.ts
+++ b/packages/core/src/EventEmitter.ts
@@ -8,7 +8,7 @@ export default class EventEmitter {
}
this._callbacks[event].push(fn)
-
+
return this
}
diff --git a/packages/core/src/Extension.ts b/packages/core/src/Extension.ts
index 873c424b..e244c86b 100644
--- a/packages/core/src/Extension.ts
+++ b/packages/core/src/Extension.ts
@@ -41,8 +41,11 @@ export default class Extension<
Methods extends ExtensionMethods = ExtensionMethods
> {
type = 'extension'
+
config: AnyObject = {}
- configs: Configs = {}
+
+ configs: Configs = {}
+
options: Partial = {}
protected storeConfig(key: string, value: any, stategy: MergeStrategy) {
@@ -102,12 +105,10 @@ export default class Extension<
this.storeConfig(key, value, 'extend')
return this
}
-
- public create() {
- type ParentOptions = Options
- return (options?: Partial>) => {
- return cloneDeep(this, true).configure(options as Options)
+ public create() {
+ return (options?: Partial>) => {
+ return cloneDeep(this, true).configure(options as NewOptions)
}
}
}
diff --git a/packages/core/src/ExtensionManager.ts b/packages/core/src/ExtensionManager.ts
index df056a02..5309e75a 100644
--- a/packages/core/src/ExtensionManager.ts
+++ b/packages/core/src/ExtensionManager.ts
@@ -2,10 +2,10 @@ import deepmerge from 'deepmerge'
import collect from 'collect.js'
import { Plugin } from 'prosemirror-state'
import { keymap } from 'prosemirror-keymap'
-import { Schema } from 'prosemirror-model'
+import { Schema, Node as ProsemirrorNode } from 'prosemirror-model'
import { inputRules } from 'prosemirror-inputrules'
import { EditorView, Decoration } from 'prosemirror-view'
-import { Node as ProsemirrorNode } from 'prosemirror-model'
+
import { Editor } from './Editor'
import capitalize from './utils/capitalize'
import { Extensions } from './types'
@@ -18,6 +18,7 @@ import getSchema from './utils/getSchema'
export default class ExtensionManager {
editor: Editor
+
extensions: Extensions
constructor(extensions: Extensions, editor: Editor) {
@@ -28,17 +29,27 @@ export default class ExtensionManager {
resolveConfigs() {
this.extensions.forEach(extension => {
const { editor } = this
- const name = extension.config.name
+ const { name } = extension.config
const options = deepmerge(extension.config.defaults, extension.options)
const type = extension.type === 'node'
? editor.schema.nodes[name]
: editor.schema.marks[name]
- resolveExtensionConfig(extension, 'commands', { name, options, editor, type })
- resolveExtensionConfig(extension, 'inputRules', { name, options, editor, type })
- resolveExtensionConfig(extension, 'pasteRules', { name, options, editor, type })
- resolveExtensionConfig(extension, 'keys', { name, options, editor, type })
- resolveExtensionConfig(extension, 'plugins', { name, options, editor, type })
+ resolveExtensionConfig(extension, 'commands', {
+ name, options, editor, type,
+ })
+ resolveExtensionConfig(extension, 'inputRules', {
+ name, options, editor, type,
+ })
+ resolveExtensionConfig(extension, 'pasteRules', {
+ name, options, editor, type,
+ })
+ resolveExtensionConfig(extension, 'keys', {
+ name, options, editor, type,
+ })
+ resolveExtensionConfig(extension, 'plugins', {
+ name, options, editor, type,
+ })
if (extension.config.commands) {
editor.registerCommands(extension.config.commands)
@@ -57,7 +68,7 @@ export default class ExtensionManager {
get nodes(): any {
return getNodesFromExtensions(this.extensions)
}
-
+
get marks(): any {
return getMarksFromExtensions(this.extensions)
}
diff --git a/packages/core/src/Mark.ts b/packages/core/src/Mark.ts
index 60394a9b..7d4f0ae2 100644
--- a/packages/core/src/Mark.ts
+++ b/packages/core/src/Mark.ts
@@ -25,4 +25,4 @@ export default class Mark<
this.storeConfig('schema', value, 'overwrite')
return this
}
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/commands/deleteSelection.ts b/packages/core/src/commands/deleteSelection.ts
index 7d74c5df..067cdebd 100644
--- a/packages/core/src/commands/deleteSelection.ts
+++ b/packages/core/src/commands/deleteSelection.ts
@@ -1,5 +1,5 @@
-import { Command } from '../Editor'
import { deleteSelection as originalDeleteSelection } from 'prosemirror-commands'
+import { Command } from '../Editor'
type DeleteSelectionCommand = () => Command
diff --git a/packages/core/src/commands/focus.ts b/packages/core/src/commands/focus.ts
index b9b9ae51..1042852e 100644
--- a/packages/core/src/commands/focus.ts
+++ b/packages/core/src/commands/focus.ts
@@ -1,7 +1,8 @@
-import { Editor, Command } from '../Editor'
import { TextSelection } from 'prosemirror-state'
+import { Editor, Command } from '../Editor'
import minMax from '../utils/minMax'
+type Position = 'start' | 'end' | number | boolean | null
type FocusCommand = (position?: Position) => Command
declare module '../Editor' {
@@ -15,8 +16,6 @@ interface ResolvedSelection {
to: number,
}
-type Position = 'start' | 'end' | number | boolean | null
-
function resolveSelection(editor: Editor, position: Position = null): ResolvedSelection {
if (position === null) {
return editor.selection
@@ -31,7 +30,7 @@ function resolveSelection(editor: Editor, position: Position = null): ResolvedSe
if (position === 'end') {
const { size } = editor.state.doc.content
-
+
return {
from: size,
to: size - 1, // TODO: -1 only for nodes with content
@@ -54,9 +53,9 @@ export const focus: FocusCommand = (position = null) => ({ editor, view, tr }) =
const resolvedFrom = minMax(from, 0, doc.content.size)
const resolvedEnd = minMax(to, 0, doc.content.size)
const selection = TextSelection.create(doc, resolvedFrom, resolvedEnd)
-
+
tr.setSelection(selection)
view.focus()
return true
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/commands/insertHTML.ts b/packages/core/src/commands/insertHTML.ts
index ccee22f9..9d06dddf 100644
--- a/packages/core/src/commands/insertHTML.ts
+++ b/packages/core/src/commands/insertHTML.ts
@@ -1,8 +1,8 @@
import { DOMParser } from 'prosemirror-model'
import { Selection, Transaction } from 'prosemirror-state'
+import { ReplaceStep, ReplaceAroundStep } from 'prosemirror-transform'
import { Command } from '../Editor'
import elementFromString from '../utils/elementFromString'
-import {ReplaceStep, ReplaceAroundStep} from "prosemirror-transform"
type InsertHTMLCommand = (value: string) => Command
@@ -15,13 +15,13 @@ declare module '../Editor' {
// TODO: move to utils
// https://github.com/ProseMirror/prosemirror-state/blob/master/src/selection.js#L466
function selectionToInsertionEnd(tr: Transaction, startLen: number, bias: number) {
- let last = tr.steps.length - 1
+ const last = tr.steps.length - 1
if (last < startLen) return
- let step = tr.steps[last]
+ const step = tr.steps[last]
if (!(step instanceof ReplaceStep || step instanceof ReplaceAroundStep)) return
- let map = tr.mapping.maps[last]
+ const map = tr.mapping.maps[last]
let end = 0
- map.forEach((_from, _to, _newFrom, newTo) => { if (end == 0) end = newTo })
+ map.forEach((_from, _to, _newFrom, newTo) => { if (end === 0) end = newTo })
tr.setSelection(Selection.near(tr.doc.resolve(end as unknown as number), bias))
}
@@ -34,4 +34,4 @@ export const insertHTML: InsertHTMLCommand = value => ({ tr, state }) => {
selectionToInsertionEnd(tr, tr.steps.length - 1, -1)
return true
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/commands/liftListItem.ts b/packages/core/src/commands/liftListItem.ts
index 0508e2ae..ad0db3ad 100644
--- a/packages/core/src/commands/liftListItem.ts
+++ b/packages/core/src/commands/liftListItem.ts
@@ -1,6 +1,6 @@
-import { Command } from '../Editor'
import { liftListItem as originalLiftListItem } from 'prosemirror-schema-list'
import { NodeType } from 'prosemirror-model'
+import { Command } from '../Editor'
import getNodeType from '../utils/getNodeType'
type LiftListItem = (typeOrName: string | NodeType) => Command
@@ -11,7 +11,7 @@ declare module '../Editor' {
}
}
-export const liftListItem: LiftListItem = (typeOrName) => ({ state, dispatch }) => {
+export const liftListItem: LiftListItem = typeOrName => ({ state, dispatch }) => {
const type = getNodeType(typeOrName, state.schema)
return originalLiftListItem(type)(state, dispatch)
diff --git a/packages/core/src/commands/removeMark.ts b/packages/core/src/commands/removeMark.ts
index 71456afb..9950819f 100644
--- a/packages/core/src/commands/removeMark.ts
+++ b/packages/core/src/commands/removeMark.ts
@@ -1,5 +1,5 @@
-import { Command } from '../Editor'
import { MarkType } from 'prosemirror-model'
+import { Command } from '../Editor'
import getMarkType from '../utils/getMarkType'
import getMarkRange from '../utils/getMarkRange'
@@ -11,10 +11,12 @@ declare module '../Editor' {
}
}
-export const removeMark: RemoveMarkCommand = (typeOrName) => ({ tr, state }) => {
+export const removeMark: RemoveMarkCommand = typeOrName => ({ tr, state }) => {
const { selection } = tr
const type = getMarkType(typeOrName, state.schema)
- let { from, to, $from, empty } = selection
+ let {
+ from, to, $from, empty,
+ } = selection
if (empty) {
const range = getMarkRange($from, type)
diff --git a/packages/core/src/commands/removeMarks.ts b/packages/core/src/commands/removeMarks.ts
index f71400d2..d2eb17c4 100644
--- a/packages/core/src/commands/removeMarks.ts
+++ b/packages/core/src/commands/removeMarks.ts
@@ -8,7 +8,7 @@ declare module '../Editor' {
}
}
-export const removeMarks: RemoveMarksCommand = () => ({ tr, state, view }) => {
+export const removeMarks: RemoveMarksCommand = () => ({ tr, state }) => {
const { selection } = tr
const { from, to, empty } = selection
@@ -18,7 +18,7 @@ export const removeMarks: RemoveMarksCommand = () => ({ tr, state, view }) => {
Object
.entries(state.schema.marks)
- .forEach(([name, mark]) => {
+ .forEach(([, mark]) => {
tr.removeMark(from, to, mark as any)
})
diff --git a/packages/core/src/commands/replaceWithNode.ts b/packages/core/src/commands/replaceWithNode.ts
index 233897d6..d992735a 100644
--- a/packages/core/src/commands/replaceWithNode.ts
+++ b/packages/core/src/commands/replaceWithNode.ts
@@ -1,5 +1,5 @@
-import { Command } from '../Editor'
import { NodeType } from 'prosemirror-model'
+import { Command } from '../Editor'
import getNodeType from '../utils/getNodeType'
interface Range {
@@ -29,7 +29,7 @@ export const replaceWithNode: ReplaceWithNodeCommand = (typeOrName, attrs = {},
if (!$from.parent.canReplaceWith(index, index, type)) {
return false
}
-
+
view.dispatch(tr.replaceWith(from, to, type.create(attrs)))
return true
diff --git a/packages/core/src/commands/selectAll.ts b/packages/core/src/commands/selectAll.ts
index 293bc8c6..6aca7b86 100644
--- a/packages/core/src/commands/selectAll.ts
+++ b/packages/core/src/commands/selectAll.ts
@@ -1,5 +1,5 @@
-import { Command } from '../Editor'
import { selectAll as originalSelectAll } from 'prosemirror-commands'
+import { Command } from '../Editor'
type SelectAllCommand = () => Command
diff --git a/packages/core/src/commands/selectParentNode.ts b/packages/core/src/commands/selectParentNode.ts
index 32ccbc05..7e51e7c9 100644
--- a/packages/core/src/commands/selectParentNode.ts
+++ b/packages/core/src/commands/selectParentNode.ts
@@ -1,5 +1,5 @@
-import { Command } from '../Editor'
import { selectParentNode as originalSelectParentNode } from 'prosemirror-commands'
+import { Command } from '../Editor'
type SelectParentNodeCommand = () => Command
diff --git a/packages/core/src/commands/setContent.ts b/packages/core/src/commands/setContent.ts
index 8daa605d..fb1c5d1e 100644
--- a/packages/core/src/commands/setContent.ts
+++ b/packages/core/src/commands/setContent.ts
@@ -1,5 +1,5 @@
-import { Command } from '../Editor'
import { TextSelection } from 'prosemirror-state'
+import { Command } from '../Editor'
type SetContentCommand = (
content: string,
@@ -18,7 +18,7 @@ export const setContent: SetContentCommand = (content = '', emitUpdate = false,
const { doc } = tr
const document = createDocument(content, parseOptions)
const selection = TextSelection.create(doc, 0, doc.content.size)
-
+
tr.setSelection(selection)
.replaceSelectionWith(document, false)
.setMeta('preventUpdate', !emitUpdate)
diff --git a/packages/core/src/commands/sinkListItem.ts b/packages/core/src/commands/sinkListItem.ts
index fc1743fb..04dea8b9 100644
--- a/packages/core/src/commands/sinkListItem.ts
+++ b/packages/core/src/commands/sinkListItem.ts
@@ -1,6 +1,6 @@
-import { Command } from '../Editor'
import { sinkListItem as originalSinkListItem } from 'prosemirror-schema-list'
import { NodeType } from 'prosemirror-model'
+import { Command } from '../Editor'
import getNodeType from '../utils/getNodeType'
type SinkListItem = (typeOrName: string | NodeType) => Command
@@ -11,7 +11,7 @@ declare module '../Editor' {
}
}
-export const sinkListItem: SinkListItem = (typeOrName) => ({ state, dispatch }) => {
+export const sinkListItem: SinkListItem = typeOrName => ({ state, dispatch }) => {
const type = getNodeType(typeOrName, state.schema)
return originalSinkListItem(type)(state, dispatch)
diff --git a/packages/core/src/commands/splitListItem.ts b/packages/core/src/commands/splitListItem.ts
index 75dc79f4..807eee36 100644
--- a/packages/core/src/commands/splitListItem.ts
+++ b/packages/core/src/commands/splitListItem.ts
@@ -1,6 +1,6 @@
-import { Command } from '../Editor'
import { splitListItem as originalSplitListItem } from 'prosemirror-schema-list'
import { NodeType } from 'prosemirror-model'
+import { Command } from '../Editor'
import getNodeType from '../utils/getNodeType'
type SplitListItem = (typeOrName: string | NodeType) => Command
@@ -11,7 +11,7 @@ declare module '../Editor' {
}
}
-export const splitListItem: SplitListItem = (typeOrName) => ({ state, dispatch }) => {
+export const splitListItem: SplitListItem = typeOrName => ({ state, dispatch }) => {
const type = getNodeType(typeOrName, state.schema)
return originalSplitListItem(type)(state, dispatch)
diff --git a/packages/core/src/commands/toggleList.ts b/packages/core/src/commands/toggleList.ts
index 699decdb..2a2238cd 100644
--- a/packages/core/src/commands/toggleList.ts
+++ b/packages/core/src/commands/toggleList.ts
@@ -1,7 +1,7 @@
-import { Command } from '../Editor'
import { wrapInList, liftListItem } from 'prosemirror-schema-list'
import { findParentNode } from 'prosemirror-utils'
import { Node, NodeType, Schema } from 'prosemirror-model'
+import { Command } from '../Editor'
import getNodeType from '../utils/getNodeType'
type ToggleListCommand = (
diff --git a/packages/core/src/commands/toggleMark.ts b/packages/core/src/commands/toggleMark.ts
index 2dad4937..65aacab7 100644
--- a/packages/core/src/commands/toggleMark.ts
+++ b/packages/core/src/commands/toggleMark.ts
@@ -1,6 +1,6 @@
-import { Command } from '../Editor'
import { toggleMark as originalToggleMark } from 'prosemirror-commands'
import { MarkType } from 'prosemirror-model'
+import { Command } from '../Editor'
import getMarkType from '../utils/getMarkType'
type ToggleMarkCommand = (typeOrName: string | MarkType) => Command
@@ -11,7 +11,7 @@ declare module '../Editor' {
}
}
-export const toggleMark: ToggleMarkCommand = (typeOrName) => ({ state, dispatch }) => {
+export const toggleMark: ToggleMarkCommand = typeOrName => ({ state, dispatch }) => {
const type = getMarkType(typeOrName, state.schema)
return originalToggleMark(type)(state, dispatch)
diff --git a/packages/core/src/commands/toggleNode.ts b/packages/core/src/commands/toggleNode.ts
index 95642645..342e6781 100644
--- a/packages/core/src/commands/toggleNode.ts
+++ b/packages/core/src/commands/toggleNode.ts
@@ -23,7 +23,7 @@ export const toggleNode: ToggleNodeCommand = (typeOrName, toggleTypeOrName, attr
if (isActive) {
return setBlockType(toggleType)(state, dispatch)
- } else {
- return setBlockType(type, attrs)(state, dispatch)
}
+ return setBlockType(type, attrs)(state, dispatch)
+
}
diff --git a/packages/core/src/commands/updateMark.ts b/packages/core/src/commands/updateMark.ts
index c66a6449..4e09e46c 100644
--- a/packages/core/src/commands/updateMark.ts
+++ b/packages/core/src/commands/updateMark.ts
@@ -1,5 +1,5 @@
-import { Command } from '../Editor'
import { MarkType } from 'prosemirror-model'
+import { Command } from '../Editor'
import getMarkType from '../utils/getMarkType'
import getMarkRange from '../utils/getMarkRange'
@@ -16,7 +16,8 @@ declare module '../Editor' {
export const updateMark: UpdateMarkCommand = (typeOrName, attrs = {}) => ({ tr, state }) => {
const { selection, doc } = tr
- let { from, to, $from, empty } = selection
+ let { from, to } = selection
+ const { $from, empty } = selection
const type = getMarkType(typeOrName, state.schema)
if (empty) {
diff --git a/packages/core/src/inputRules/nodeInputRule.ts b/packages/core/src/inputRules/nodeInputRule.ts
index 057798b9..c69cc700 100644
--- a/packages/core/src/inputRules/nodeInputRule.ts
+++ b/packages/core/src/inputRules/nodeInputRule.ts
@@ -12,4 +12,4 @@ export default function (regexp: RegExp, type: NodeType, getAttrs?: Function) {
return tr
})
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/pasteRules/markPasteRule.ts b/packages/core/src/pasteRules/markPasteRule.ts
index 0fe2fd49..25cf7e44 100644
--- a/packages/core/src/pasteRules/markPasteRule.ts
+++ b/packages/core/src/pasteRules/markPasteRule.ts
@@ -5,13 +5,13 @@ export default function (regexp: RegExp, type: MarkType, getAttrs?: Function) {
const handler = (fragment: Fragment, parent?: any) => {
const nodes: any[] = []
-
+
fragment.forEach(child => {
if (child.isText && child.text) {
const { text } = child
let pos = 0
let match
-
+
// eslint-disable-next-line
while ((match = regexp.exec(text)) !== null) {
const m = match.length - 1
diff --git a/packages/core/src/plugins/editable.ts b/packages/core/src/plugins/editable.ts
index 28212bea..1a2078f2 100644
--- a/packages/core/src/plugins/editable.ts
+++ b/packages/core/src/plugins/editable.ts
@@ -6,4 +6,4 @@ export default (editor: Editor) => new Plugin({
props: {
editable: () => editor.options.editable,
},
-})
\ No newline at end of file
+})
diff --git a/packages/core/src/plugins/focus.ts b/packages/core/src/plugins/focus.ts
index 07fb7243..794346e9 100644
--- a/packages/core/src/plugins/focus.ts
+++ b/packages/core/src/plugins/focus.ts
@@ -25,4 +25,4 @@ export default (editor: Editor) => new Plugin({
},
},
},
-})
\ No newline at end of file
+})
diff --git a/packages/core/src/plugins/index.ts b/packages/core/src/plugins/index.ts
index 188a1b3d..3f630521 100644
--- a/packages/core/src/plugins/index.ts
+++ b/packages/core/src/plugins/index.ts
@@ -2,9 +2,9 @@ import { keymap } from 'prosemirror-keymap'
import { baseKeymap } from 'prosemirror-commands'
import { dropCursor } from 'prosemirror-dropcursor'
import { gapCursor } from 'prosemirror-gapcursor'
+import { undoInputRule } from 'prosemirror-inputrules'
import editable from './editable'
import focus from './focus'
-import { undoInputRule } from 'prosemirror-inputrules'
export default [
() => dropCursor(),
@@ -13,4 +13,4 @@ export default [
() => keymap(baseKeymap),
editable,
focus,
-]
\ No newline at end of file
+]
diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts
index 745605e5..bc33c59c 100644
--- a/packages/core/src/types.ts
+++ b/packages/core/src/types.ts
@@ -2,4 +2,4 @@ import Extension from './Extension'
import Node from './Node'
import Mark from './Mark'
-export type Extensions = (Extension | Node | Mark)[]
\ No newline at end of file
+export type Extensions = (Extension | Node | Mark)[]
diff --git a/packages/core/src/utils/capitalize.ts b/packages/core/src/utils/capitalize.ts
index 43abafe6..e153512d 100644
--- a/packages/core/src/utils/capitalize.ts
+++ b/packages/core/src/utils/capitalize.ts
@@ -1,3 +1,3 @@
export default function capitalize(value: string = ''): string {
return value.charAt(0).toUpperCase() + value.slice(1)
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/utils/elementFromString.ts b/packages/core/src/utils/elementFromString.ts
index 14c7055e..6240a975 100644
--- a/packages/core/src/utils/elementFromString.ts
+++ b/packages/core/src/utils/elementFromString.ts
@@ -1,7 +1,7 @@
export default function elementFromString(value: string): HTMLElement {
const htmlString = `${value}
`
- const parser = new window.DOMParser
+ const parser = new window.DOMParser()
const element = parser.parseFromString(htmlString, 'text/html').body
return element
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/utils/generateHtml.ts b/packages/core/src/utils/generateHtml.ts
index 05ebc31f..45d723ab 100644
--- a/packages/core/src/utils/generateHtml.ts
+++ b/packages/core/src/utils/generateHtml.ts
@@ -1,6 +1,6 @@
+import { Node } from 'prosemirror-model'
import getSchema from './getSchema'
import getHtmlFromFragment from './getHtmlFromFragment'
-import { Node } from 'prosemirror-model'
import { Extensions } from '../types'
export default function generateHtml(doc: object, extensions: Extensions): string {
diff --git a/packages/core/src/utils/getAllMethodNames.ts b/packages/core/src/utils/getAllMethodNames.ts
index de23f7c3..f773df95 100644
--- a/packages/core/src/utils/getAllMethodNames.ts
+++ b/packages/core/src/utils/getAllMethodNames.ts
@@ -1,10 +1,10 @@
export default function getAllMethodNames(obj: Object) {
- let methods = new Set()
+ const methods = new Set()
while (obj = Reflect.getPrototypeOf(obj)) {
- let keys = Reflect.ownKeys(obj)
- keys.forEach((k) => methods.add(k))
+ const keys = Reflect.ownKeys(obj)
+ keys.forEach(k => methods.add(k))
}
return Array.from(methods)
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/utils/getHtmlFromFragment.ts b/packages/core/src/utils/getHtmlFromFragment.ts
index 64a7ecef..a1332b2f 100644
--- a/packages/core/src/utils/getHtmlFromFragment.ts
+++ b/packages/core/src/utils/getHtmlFromFragment.ts
@@ -1,5 +1,4 @@
-import { Node, DOMSerializer } from 'prosemirror-model'
-import { Schema } from 'prosemirror-model'
+import { Node, DOMSerializer, Schema } from 'prosemirror-model'
export default function getHtmlFromFragment(doc: Node, schema: Schema): string {
const fragment = DOMSerializer
diff --git a/packages/core/src/utils/getMarksFromExtensions.ts b/packages/core/src/utils/getMarksFromExtensions.ts
index 63c890bf..13152522 100644
--- a/packages/core/src/utils/getMarksFromExtensions.ts
+++ b/packages/core/src/utils/getMarksFromExtensions.ts
@@ -1,5 +1,5 @@
-import Mark from '../Mark'
import collect from 'collect.js'
+import Mark from '../Mark'
import { Extensions } from '../types'
export default function getMarksFromExtensions(extensions: Extensions): any {
@@ -7,4 +7,4 @@ export default function getMarksFromExtensions(extensions: Extensions): any {
.where('type', 'mark')
.mapWithKeys((extension: Mark) => [extension.config.name, extension.config.schema])
.all()
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/utils/getNodesFromExtensions.ts b/packages/core/src/utils/getNodesFromExtensions.ts
index 409c04fc..34290eec 100644
--- a/packages/core/src/utils/getNodesFromExtensions.ts
+++ b/packages/core/src/utils/getNodesFromExtensions.ts
@@ -1,5 +1,5 @@
-import Node from '../Node'
import collect from 'collect.js'
+import Node from '../Node'
import { Extensions } from '../types'
export default function getNodesFromExtensions(extensions: Extensions): any {
@@ -7,4 +7,4 @@ export default function getNodesFromExtensions(extensions: Extensions): any {
.where('type', 'node')
.mapWithKeys((extension: Node) => [extension.config.name, extension.config.schema])
.all()
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/utils/getSchema.ts b/packages/core/src/utils/getSchema.ts
index 58b455d2..066af5f5 100644
--- a/packages/core/src/utils/getSchema.ts
+++ b/packages/core/src/utils/getSchema.ts
@@ -12,7 +12,7 @@ export default function getSchema(extensions: Extensions): Schema {
resolveExtensionConfig(extension, 'defaults')
resolveExtensionConfig(extension, 'topNode')
- const name = extension.config.name
+ const { name } = extension.config
const options = deepmerge(extension.config.defaults, extension.options)
resolveExtensionConfig(extension, 'schema', { name, options })
diff --git a/packages/core/src/utils/getSchemaTypeByName.ts b/packages/core/src/utils/getSchemaTypeByName.ts
index 5f445d27..bf8250f0 100644
--- a/packages/core/src/utils/getSchemaTypeByName.ts
+++ b/packages/core/src/utils/getSchemaTypeByName.ts
@@ -10,4 +10,4 @@ export default function getSchemaTypeByName(name: string, schema: Schema) {
}
return null
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/utils/getTopNodeFromExtensions.ts b/packages/core/src/utils/getTopNodeFromExtensions.ts
index a7ce3e63..693070e1 100644
--- a/packages/core/src/utils/getTopNodeFromExtensions.ts
+++ b/packages/core/src/utils/getTopNodeFromExtensions.ts
@@ -7,4 +7,4 @@ export default function getTopNodeFromExtensions(extensions: Extensions): any {
if (topNode) {
return topNode.config.name
}
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/utils/magicMethods.ts b/packages/core/src/utils/magicMethods.ts
index c5421321..e48bf22e 100644
--- a/packages/core/src/utils/magicMethods.ts
+++ b/packages/core/src/utils/magicMethods.ts
@@ -1,10 +1,10 @@
-export default function magicMethods(clazz: any) {
+export default function magicMethods(Clazz: any) {
const classHandler = Object.create(null)
- classHandler.construct = (target: any, args: any) => {
- const instance = new clazz(...args)
+ classHandler.construct = (_, args: any) => {
+ const instance = new Clazz(...args)
const instanceHandler = Object.create(null)
- const get = Object.getOwnPropertyDescriptor(clazz.prototype, '__get')
+ const get = Object.getOwnPropertyDescriptor(Clazz.prototype, '__get')
if (get) {
instanceHandler.get = (target: any, name: any) => {
@@ -18,9 +18,9 @@ export default function magicMethods(clazz: any) {
if (exists) {
return target[name]
- } else {
- return get.value.call(target, name)
}
+
+ return get.value.call(target, name)
}
}
@@ -30,5 +30,5 @@ export default function magicMethods(clazz: any) {
return instance.proxy
}
- return new Proxy(clazz, classHandler)
-}
\ No newline at end of file
+ return new Proxy(Clazz, classHandler)
+}
diff --git a/packages/core/src/utils/minMax.ts b/packages/core/src/utils/minMax.ts
index 332cbc59..c1aa6838 100644
--- a/packages/core/src/utils/minMax.ts
+++ b/packages/core/src/utils/minMax.ts
@@ -1,3 +1,3 @@
export default function minMax(value: number = 0, min: number = 0, max: number = 0): number {
return Math.min(Math.max(value, min), max)
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/utils/removeElement.ts b/packages/core/src/utils/removeElement.ts
index a2cca1e0..7aab5fff 100644
--- a/packages/core/src/utils/removeElement.ts
+++ b/packages/core/src/utils/removeElement.ts
@@ -2,4 +2,4 @@ export default function removeElement(element: HTMLElement) {
if (element && element.parentNode) {
element.parentNode.removeChild(element)
}
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/utils/resolveExtensionConfig.ts b/packages/core/src/utils/resolveExtensionConfig.ts
index 384e0268..05a73ded 100644
--- a/packages/core/src/utils/resolveExtensionConfig.ts
+++ b/packages/core/src/utils/resolveExtensionConfig.ts
@@ -32,4 +32,4 @@ export default function resolveExtensionConfig(
return accumulator
}, undefined)
-}
\ No newline at end of file
+}
diff --git a/packages/core/src/utils/sleep.ts b/packages/core/src/utils/sleep.ts
index e9a79bbc..63930530 100644
--- a/packages/core/src/utils/sleep.ts
+++ b/packages/core/src/utils/sleep.ts
@@ -1,3 +1,3 @@
export default function sleep(milliseconds: number): Promise {
return new Promise(resolve => setTimeout(resolve, milliseconds))
-}
\ No newline at end of file
+}
diff --git a/packages/extension-blockquote/index.ts b/packages/extension-blockquote/index.ts
index 5c2fac4c..d5d09f77 100644
--- a/packages/extension-blockquote/index.ts
+++ b/packages/extension-blockquote/index.ts
@@ -35,5 +35,3 @@ export default new Node()
textblockTypeInputRule(inputRegex, type),
])
.create()
-
-
diff --git a/packages/extension-bold/index.ts b/packages/extension-bold/index.ts
index 2ac2a9e5..31f06829 100644
--- a/packages/extension-bold/index.ts
+++ b/packages/extension-bold/index.ts
@@ -1,4 +1,6 @@
-import { Command, Mark, markInputRule, markPasteRule } from '@tiptap/core'
+import {
+ Command, Mark, markInputRule, markPasteRule,
+} from '@tiptap/core'
export type BoldCommand = () => Command
@@ -37,7 +39,7 @@ export default new Mark()
},
}))
.keys(({ editor }) => ({
- 'Mod-b': () => editor.bold()
+ 'Mod-b': () => editor.bold(),
}))
.inputRules(({ type }) => [
markInputRule(starInputRegex, type),
diff --git a/packages/extension-code-block/index.ts b/packages/extension-code-block/index.ts
index 91aa9309..9358f1b5 100644
--- a/packages/extension-code-block/index.ts
+++ b/packages/extension-code-block/index.ts
@@ -29,7 +29,7 @@ export default new Node()
},
}))
.keys(({ editor }) => ({
- 'Shift-Ctrl-\\': () => editor.codeBlock()
+ 'Shift-Ctrl-\\': () => editor.codeBlock(),
}))
.inputRules(({ type }) => [
textblockTypeInputRule(/^```$/, type),
diff --git a/packages/extension-code/index.ts b/packages/extension-code/index.ts
index 7731cb50..b9615fd0 100644
--- a/packages/extension-code/index.ts
+++ b/packages/extension-code/index.ts
@@ -1,4 +1,6 @@
-import { Command, Mark, markInputRule, markPasteRule } from '@tiptap/core'
+import {
+ Command, Mark, markInputRule, markPasteRule,
+} from '@tiptap/core'
export type CodeCommand = () => Command
@@ -26,12 +28,12 @@ export default new Mark()
},
}))
.keys(({ editor }) => ({
- 'Mod-`': () => editor.code()
+ 'Mod-`': () => editor.code(),
}))
.inputRules(({ type }) => [
- markInputRule(inputRegex, type)
+ markInputRule(inputRegex, type),
])
.pasteRules(({ type }) => [
- markPasteRule(inputRegex, type)
+ markPasteRule(inputRegex, type),
])
.create()
diff --git a/packages/extension-document/index.ts b/packages/extension-document/index.ts
index 7099a8d4..11e688aa 100644
--- a/packages/extension-document/index.ts
+++ b/packages/extension-document/index.ts
@@ -6,4 +6,4 @@ export default new Node()
.schema(() => ({
content: 'block+',
}))
- .create()
\ No newline at end of file
+ .create()
diff --git a/packages/extension-focus/index.ts b/packages/extension-focus/index.ts
index 73c605d8..c4388807 100644
--- a/packages/extension-focus/index.ts
+++ b/packages/extension-focus/index.ts
@@ -22,7 +22,7 @@ export default new Extension()
const decorations: Decoration[] = []
if (!isEditable || !isFocused) {
- return
+ return DecorationSet.create(doc, [])
}
doc.descendants((node, pos) => {
diff --git a/packages/extension-hard-break/index.ts b/packages/extension-hard-break/index.ts
index 1baaa68a..fee38fbe 100644
--- a/packages/extension-hard-break/index.ts
+++ b/packages/extension-hard-break/index.ts
@@ -20,8 +20,10 @@ export default new Node()
],
toDOM: () => ['br'],
}))
- .commands(({ editor, type }) => ({
- hardBreak: () => ({ tr, state, dispatch, view }) => {
+ .commands(({ type }) => ({
+ hardBreak: () => ({
+ tr, state, dispatch, view,
+ }) => {
return chainCommands(exitCode, () => {
dispatch(tr.replaceSelectionWith(type.create()).scrollIntoView())
return true
diff --git a/packages/extension-history/index.ts b/packages/extension-history/index.ts
index 0f389dbe..67058d1d 100644
--- a/packages/extension-history/index.ts
+++ b/packages/extension-history/index.ts
@@ -3,8 +3,6 @@ import {
history,
undo,
redo,
- undoDepth,
- redoDepth,
} from 'prosemirror-history'
declare module '@tiptap/core/src/Editor' {
@@ -37,6 +35,6 @@ export default new Extension()
'Shift-Mod-z': () => editor.redo(),
}))
.plugins(({ options }) => [
- history(options.historyPluginOptions)
+ history(options.historyPluginOptions),
])
.create()
diff --git a/packages/extension-italic/index.ts b/packages/extension-italic/index.ts
index 3bf2e1f3..11472c5b 100644
--- a/packages/extension-italic/index.ts
+++ b/packages/extension-italic/index.ts
@@ -1,4 +1,6 @@
-import { Command, Mark, markInputRule, markPasteRule } from '@tiptap/core'
+import {
+ Command, Mark, markInputRule, markPasteRule,
+} from '@tiptap/core'
export type ItalicCommand = () => Command
@@ -29,7 +31,7 @@ export default new Mark()
},
}))
.keys(({ editor }) => ({
- 'Mod-i': () => editor.italic()
+ 'Mod-i': () => editor.italic(),
}))
.inputRules(({ type }) => [
markInputRule(starInputRegex, type),
diff --git a/packages/extension-ordered-list/index.ts b/packages/extension-ordered-list/index.ts
index 492dc546..797f80a8 100644
--- a/packages/extension-ordered-list/index.ts
+++ b/packages/extension-ordered-list/index.ts
@@ -23,7 +23,7 @@ export default new Node()
tag: 'ol',
getAttrs: node => ({
order: (node as HTMLElement).hasAttribute('start')
- ? parseInt((node as HTMLElement).getAttribute('start') || '')
+ ? parseInt((node as HTMLElement).getAttribute('start') || '', 10)
: 1,
}),
}],
diff --git a/packages/extension-paragraph/index.ts b/packages/extension-paragraph/index.ts
index a09ee093..a0a721d1 100644
--- a/packages/extension-paragraph/index.ts
+++ b/packages/extension-paragraph/index.ts
@@ -10,4 +10,4 @@ export default new Node()
toDOM: () => ['p', 0],
// toVue: ParagraphComponent,
}))
- .create()
\ No newline at end of file
+ .create()
diff --git a/packages/extension-paragraph/paragraph.vue b/packages/extension-paragraph/paragraph.vue
index be3b6ae6..7fc13d8c 100644
--- a/packages/extension-paragraph/paragraph.vue
+++ b/packages/extension-paragraph/paragraph.vue
@@ -6,4 +6,4 @@
export default {
}
-
\ No newline at end of file
+
diff --git a/packages/extension-strike/index.ts b/packages/extension-strike/index.ts
index e8470564..2f33e1cc 100644
--- a/packages/extension-strike/index.ts
+++ b/packages/extension-strike/index.ts
@@ -1,4 +1,6 @@
-import { Command, Mark, markInputRule, markPasteRule } from '@tiptap/core'
+import {
+ Command, Mark, markInputRule, markPasteRule,
+} from '@tiptap/core'
type StrikeCommand = () => Command
@@ -26,7 +28,7 @@ export default new Mark()
},
{
style: 'text-decoration',
- getAttrs: node => node === 'line-through' ? {} : false,
+ getAttrs: node => (node === 'line-through' ? {} : false),
},
],
toDOM: () => ['s', 0],
@@ -37,12 +39,12 @@ export default new Mark()
},
}))
.keys(({ editor }) => ({
- 'Mod-d': () => editor.strike()
+ 'Mod-d': () => editor.strike(),
}))
.inputRules(({ type }) => [
- markInputRule(inputRegex, type)
+ markInputRule(inputRegex, type),
])
.pasteRules(({ type }) => [
- markPasteRule(inputRegex, type)
+ markPasteRule(inputRegex, type),
])
.create()
diff --git a/packages/extension-text/index.ts b/packages/extension-text/index.ts
index 46fe7b40..96e8355f 100644
--- a/packages/extension-text/index.ts
+++ b/packages/extension-text/index.ts
@@ -5,4 +5,4 @@ export default new Node()
.schema(() => ({
group: 'inline',
}))
- .create()
\ No newline at end of file
+ .create()
diff --git a/packages/extension-underline/index.ts b/packages/extension-underline/index.ts
index 0ba4541e..aedfe852 100644
--- a/packages/extension-underline/index.ts
+++ b/packages/extension-underline/index.ts
@@ -17,17 +17,17 @@ export default new Mark()
},
{
style: 'text-decoration',
- getAttrs: node => node === 'underline' ? {} : false,
+ getAttrs: node => (node === 'underline' ? {} : false),
},
],
toDOM: () => ['u', 0],
}))
- .commands(({ editor, name }) => ({
+ .commands(({ name }) => ({
underline: () => ({ commands }) => {
return commands.toggleMark(name)
},
}))
.keys(({ editor }) => ({
- 'Mod-u': () => editor.underline()
+ 'Mod-u': () => editor.underline(),
}))
.create()
diff --git a/packages/html/getHtmlFromFragment.ts b/packages/html/getHtmlFromFragment.ts
index 38a678f7..644c9ab6 100644
--- a/packages/html/getHtmlFromFragment.ts
+++ b/packages/html/getHtmlFromFragment.ts
@@ -1,5 +1,5 @@
-import { Node, DOMSerializer } from 'prosemirror-model'
-import { Schema } from 'prosemirror-model'
+import { Node, DOMSerializer, Schema } from 'prosemirror-model'
+
import { JSDOM } from 'jsdom'
export default function getHtmlFromFragment(doc: Node, schema: Schema): string {
@@ -7,7 +7,7 @@ export default function getHtmlFromFragment(doc: Node, schema: Schema): string {
.fromSchema(schema)
.serializeFragment(doc.content)
- const temporaryDocument = new JSDOM(``).window.document
+ const temporaryDocument = new JSDOM('').window.document
const container = temporaryDocument.createElement('div')
container.appendChild(fragment)
diff --git a/packages/starter-kit/index.ts b/packages/starter-kit/index.ts
index d16ab0dd..31995f9e 100644
--- a/packages/starter-kit/index.ts
+++ b/packages/starter-kit/index.ts
@@ -36,4 +36,4 @@ export default function defaultExtensions() {
OrderedList(),
ListItem(),
]
-}
\ No newline at end of file
+}
diff --git a/packages/vue-starter-kit/index.ts b/packages/vue-starter-kit/index.ts
index fe6a96ff..66c80143 100644
--- a/packages/vue-starter-kit/index.ts
+++ b/packages/vue-starter-kit/index.ts
@@ -1,6 +1,7 @@
-export * from '@tiptap/vue'
import originalDefaultExtensions from '@tiptap/starter-kit'
+export * from '@tiptap/vue'
+
export function defaultExtensions() {
return originalDefaultExtensions()
-}
\ No newline at end of file
+}
diff --git a/packages/vue/index.ts b/packages/vue/index.ts
index e6de937c..79050a05 100644
--- a/packages/vue/index.ts
+++ b/packages/vue/index.ts
@@ -6,4 +6,4 @@ export { default as EditorContent } from './src/components/EditorContent'
export class Editor extends CoreEditor {
renderer = Renderer
-}
\ No newline at end of file
+}
diff --git a/packages/vue/src/Renderer.ts b/packages/vue/src/Renderer.ts
index 405c2da6..ad40af79 100644
--- a/packages/vue/src/Renderer.ts
+++ b/packages/vue/src/Renderer.ts
@@ -6,7 +6,7 @@ export default class Renderer extends ComponentRenderer {
static type = 'vue'
vm!: Vue
-
+
constructor(component: Vue, options: any) {
super()
this.mount(component)
@@ -30,4 +30,3 @@ export default class Renderer extends ComponentRenderer {
}
}
-