add precommit hook for linting and automatic eslint fixes + update eslint packages (#2862)
* chore: add precommit hook for eslint fixes, fix linting issues * chore: add eslint import sort plugin
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { Schema, Node as ProseMirrorNode, ParseOptions } from 'prosemirror-model'
|
||||
import { Node as ProseMirrorNode, ParseOptions, Schema } from 'prosemirror-model'
|
||||
|
||||
import { Content } from '../types'
|
||||
import { createNodeFromContent } from './createNodeFromContent'
|
||||
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
import {
|
||||
Schema,
|
||||
DOMParser,
|
||||
Node as ProseMirrorNode,
|
||||
Fragment,
|
||||
Node as ProseMirrorNode,
|
||||
ParseOptions,
|
||||
Schema,
|
||||
} from 'prosemirror-model'
|
||||
import { elementFromString } from '../utilities/elementFromString'
|
||||
|
||||
import { Content } from '../types'
|
||||
import { elementFromString } from '../utilities/elementFromString'
|
||||
|
||||
export type CreateNodeFromContentOptions = {
|
||||
slice?: boolean,
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { Node as ProseMirrorNode } from 'prosemirror-model'
|
||||
import { Predicate, NodeWithPos } from '../types'
|
||||
|
||||
import { NodeWithPos, Predicate } from '../types'
|
||||
|
||||
export function findChildren(node: ProseMirrorNode, predicate: Predicate): NodeWithPos[] {
|
||||
const nodesWithPos: NodeWithPos[] = []
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { Node as ProseMirrorNode } from 'prosemirror-model'
|
||||
import { Predicate, Range, NodeWithPos } from '../types'
|
||||
|
||||
import { NodeWithPos, Predicate, Range } from '../types'
|
||||
|
||||
/**
|
||||
* Same as `findChildren` but searches only within a `range`.
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import { Selection } from 'prosemirror-state'
|
||||
import { findParentNodeClosestToPos } from './findParentNodeClosestToPos'
|
||||
|
||||
import { Predicate } from '../types'
|
||||
import { findParentNodeClosestToPos } from './findParentNodeClosestToPos'
|
||||
|
||||
export function findParentNode(predicate: Predicate) {
|
||||
return (selection: Selection) => findParentNodeClosestToPos(selection.$from, predicate)
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { ResolvedPos, Node as ProseMirrorNode } from 'prosemirror-model'
|
||||
import { Node as ProseMirrorNode, ResolvedPos } from 'prosemirror-model'
|
||||
|
||||
import { Predicate } from '../types'
|
||||
|
||||
export function findParentNodeClosestToPos($pos: ResolvedPos, predicate: Predicate): ({
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { Node } from 'prosemirror-model'
|
||||
import { getSchema } from './getSchema'
|
||||
import { getHTMLFromFragment } from './getHTMLFromFragment'
|
||||
|
||||
import { Extensions, JSONContent } from '../types'
|
||||
import { getHTMLFromFragment } from './getHTMLFromFragment'
|
||||
import { getSchema } from './getSchema'
|
||||
|
||||
export function generateHTML(doc: JSONContent, extensions: Extensions): string {
|
||||
const schema = getSchema(extensions)
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { DOMParser } from 'prosemirror-model'
|
||||
import { getSchema } from './getSchema'
|
||||
import { elementFromString } from '../utilities/elementFromString'
|
||||
|
||||
import { Extensions } from '../types'
|
||||
import { elementFromString } from '../utilities/elementFromString'
|
||||
import { getSchema } from './getSchema'
|
||||
|
||||
export function generateJSON(html: string, extensions: Extensions): Record<string, any> {
|
||||
const schema = getSchema(extensions)
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
import { Node } from 'prosemirror-model'
|
||||
import { getSchema } from './getSchema'
|
||||
|
||||
import { Extensions, JSONContent, TextSerializer } from '../types'
|
||||
import { getTextSerializersFromSchema } from './getTextSerializersFromSchema'
|
||||
import { getSchema } from './getSchema'
|
||||
import { getText } from './getText'
|
||||
import { getTextSerializersFromSchema } from './getTextSerializersFromSchema'
|
||||
|
||||
export function generateText(
|
||||
doc: JSONContent,
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
import { MarkType, NodeType } from 'prosemirror-model'
|
||||
import { EditorState } from 'prosemirror-state'
|
||||
import { getSchemaTypeNameByName } from './getSchemaTypeNameByName'
|
||||
import { getNodeAttributes } from './getNodeAttributes'
|
||||
|
||||
import { getMarkAttributes } from './getMarkAttributes'
|
||||
import { getNodeAttributes } from './getNodeAttributes'
|
||||
import { getSchemaTypeNameByName } from './getSchemaTypeNameByName'
|
||||
|
||||
export function getAttributes(
|
||||
state: EditorState,
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
import { splitExtensions } from './splitExtensions'
|
||||
import { getExtensionField } from './getExtensionField'
|
||||
import { MarkConfig, NodeConfig } from '..'
|
||||
import {
|
||||
AnyConfig,
|
||||
Attribute,
|
||||
Attributes,
|
||||
ExtensionAttribute,
|
||||
Extensions,
|
||||
GlobalAttributes,
|
||||
Attributes,
|
||||
Attribute,
|
||||
ExtensionAttribute,
|
||||
AnyConfig,
|
||||
} from '../types'
|
||||
import { NodeConfig, MarkConfig } from '..'
|
||||
import { getExtensionField } from './getExtensionField'
|
||||
import { splitExtensions } from './splitExtensions'
|
||||
|
||||
/**
|
||||
* Get a list of all extension attributes defined in `addAttribute` and `addGlobalAttribute`.
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { Transform, Step } from 'prosemirror-transform'
|
||||
import { Step, Transform } from 'prosemirror-transform'
|
||||
|
||||
import { Range } from '../types'
|
||||
import { removeDuplicates } from '../utilities/removeDuplicates'
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { Node as ProseMirrorNode } from 'prosemirror-model'
|
||||
|
||||
import { JSONContent } from '../types'
|
||||
|
||||
interface DebugJSONContent extends JSONContent {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { AnyExtension, RemoveThis, MaybeThisParameterType } from '../types'
|
||||
import { AnyExtension, MaybeThisParameterType, RemoveThis } from '../types'
|
||||
|
||||
export function getExtensionField<T = any>(
|
||||
extension: AnyExtension,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { DOMSerializer, Schema, Fragment } from 'prosemirror-model'
|
||||
import { DOMSerializer, Fragment, Schema } from 'prosemirror-model'
|
||||
|
||||
export function getHTMLFromFragment(fragment: Fragment, schema: Schema): string {
|
||||
const documentFragment = DOMSerializer
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { EditorState } from 'prosemirror-state'
|
||||
import { Mark, MarkType } from 'prosemirror-model'
|
||||
import { EditorState } from 'prosemirror-state'
|
||||
|
||||
import { getMarkType } from './getMarkType'
|
||||
|
||||
export function getMarkAttributes(state: EditorState, typeOrName: string | MarkType): Record<string, any> {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import { Mark as ProseMirrorMark, MarkType, ResolvedPos } from 'prosemirror-model'
|
||||
import { objectIncludes } from '../utilities/objectIncludes'
|
||||
|
||||
import { Range } from '../types'
|
||||
import { objectIncludes } from '../utilities/objectIncludes'
|
||||
|
||||
function findMarkInSet(
|
||||
marks: ProseMirrorMark[],
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { Node as ProseMirrorNode } from 'prosemirror-model'
|
||||
|
||||
import { MarkRange } from '../types'
|
||||
import { getMarkRange } from './getMarkRange'
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { EditorState } from 'prosemirror-state'
|
||||
import { Node, NodeType } from 'prosemirror-model'
|
||||
import { EditorState } from 'prosemirror-state'
|
||||
|
||||
import { getNodeType } from './getNodeType'
|
||||
|
||||
export function getNodeAttributes(state: EditorState, typeOrName: string | NodeType): Record<string, any> {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { Node, Mark } from 'prosemirror-model'
|
||||
import { Mark, Node } from 'prosemirror-model'
|
||||
|
||||
import { ExtensionAttribute } from '../types'
|
||||
import { mergeAttributes } from '../utilities/mergeAttributes'
|
||||
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { Schema } from 'prosemirror-model'
|
||||
import { getSchemaByResolvedExtensions } from './getSchemaByResolvedExtensions'
|
||||
|
||||
import { ExtensionManager } from '../ExtensionManager'
|
||||
import { Extensions } from '../types'
|
||||
import { getSchemaByResolvedExtensions } from './getSchemaByResolvedExtensions'
|
||||
|
||||
export function getSchema(extensions: Extensions): Schema {
|
||||
const resolvedExtensions = ExtensionManager.resolve(extensions)
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
import { NodeSpec, MarkSpec, Schema } from 'prosemirror-model'
|
||||
import { MarkSpec, NodeSpec, Schema } from 'prosemirror-model'
|
||||
|
||||
import { MarkConfig, NodeConfig } from '..'
|
||||
import { AnyConfig, Extensions } from '../types'
|
||||
import { NodeConfig, MarkConfig } from '..'
|
||||
import { splitExtensions } from './splitExtensions'
|
||||
import { getAttributesFromExtensions } from './getAttributesFromExtensions'
|
||||
import { getRenderedAttributes } from './getRenderedAttributes'
|
||||
import { isEmptyObject } from '../utilities/isEmptyObject'
|
||||
import { injectExtensionAttributesToParseRule } from './injectExtensionAttributesToParseRule'
|
||||
import { callOrReturn } from '../utilities/callOrReturn'
|
||||
import { isEmptyObject } from '../utilities/isEmptyObject'
|
||||
import { getAttributesFromExtensions } from './getAttributesFromExtensions'
|
||||
import { getExtensionField } from './getExtensionField'
|
||||
import { getRenderedAttributes } from './getRenderedAttributes'
|
||||
import { injectExtensionAttributesToParseRule } from './injectExtensionAttributesToParseRule'
|
||||
import { splitExtensions } from './splitExtensions'
|
||||
|
||||
function cleanUpSchemaItem<T>(data: T) {
|
||||
return Object.fromEntries(Object.entries(data).filter(([key, value]) => {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { TextSerializer } from '../types'
|
||||
import { Node as ProseMirrorNode } from 'prosemirror-model'
|
||||
|
||||
import { TextSerializer } from '../types'
|
||||
import { getTextBetween } from './getTextBetween'
|
||||
|
||||
export function getText(
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import { Range, TextSerializer } from '../types'
|
||||
import { Node as ProseMirrorNode } from 'prosemirror-model'
|
||||
|
||||
import { Range, TextSerializer } from '../types'
|
||||
|
||||
export function getTextBetween(
|
||||
startNode: ProseMirrorNode,
|
||||
range: Range,
|
||||
@@ -34,7 +35,7 @@ export function getTextBetween(
|
||||
range,
|
||||
})
|
||||
} else if (node.isText) {
|
||||
text += node?.text?.slice(Math.max(from, pos) - pos, to - pos)
|
||||
text += node?.text?.slice(Math.max(from, pos) - pos, to - pos) // eslint-disable-line
|
||||
separated = false
|
||||
} else if (node.isBlock && !separated) {
|
||||
text += blockSeparator
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { Schema } from 'prosemirror-model'
|
||||
|
||||
import { TextSerializer } from '../types'
|
||||
|
||||
export function getTextSerializersFromSchema(schema: Schema): Record<string, TextSerializer> {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { ParseRule } from 'prosemirror-model'
|
||||
|
||||
import { ExtensionAttribute } from '../types'
|
||||
import { fromString } from '../utilities/fromString'
|
||||
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { EditorState } from 'prosemirror-state'
|
||||
import { isNodeActive } from './isNodeActive'
|
||||
import { isMarkActive } from './isMarkActive'
|
||||
|
||||
import { getSchemaTypeNameByName } from './getSchemaTypeNameByName'
|
||||
import { isMarkActive } from './isMarkActive'
|
||||
import { isNodeActive } from './isNodeActive'
|
||||
|
||||
export function isActive(state: EditorState, name: string | null, attributes: Record<string, any> = {}): boolean {
|
||||
if (!name) {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { Extensions } from '../types'
|
||||
import { NodeConfig } from '..'
|
||||
import { splitExtensions } from './splitExtensions'
|
||||
import { callOrReturn } from '../utilities/callOrReturn'
|
||||
import { getExtensionField } from '../helpers/getExtensionField'
|
||||
import { Extensions } from '../types'
|
||||
import { callOrReturn } from '../utilities/callOrReturn'
|
||||
import { splitExtensions } from './splitExtensions'
|
||||
|
||||
export function isList(name: string, extensions: Extensions): boolean {
|
||||
const { nodeExtensions } = splitExtensions(extensions)
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
import { EditorState } from 'prosemirror-state'
|
||||
import { MarkType } from 'prosemirror-model'
|
||||
import { EditorState } from 'prosemirror-state'
|
||||
|
||||
import { MarkRange } from '../types'
|
||||
import { objectIncludes } from '../utilities/objectIncludes'
|
||||
import { getMarkType } from './getMarkType'
|
||||
import { MarkRange } from '../types'
|
||||
|
||||
export function isMarkActive(
|
||||
state: EditorState,
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
import { EditorState } from 'prosemirror-state'
|
||||
import { NodeType } from 'prosemirror-model'
|
||||
import { EditorState } from 'prosemirror-state'
|
||||
|
||||
import { NodeRange } from '../types'
|
||||
import { objectIncludes } from '../utilities/objectIncludes'
|
||||
import { getNodeType } from './getNodeType'
|
||||
import { NodeRange } from '../types'
|
||||
|
||||
export function isNodeActive(
|
||||
state: EditorState,
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { NodeSelection } from 'prosemirror-state'
|
||||
|
||||
import { isObject } from '../utilities/isObject'
|
||||
|
||||
export function isNodeSelection(value: unknown): value is NodeSelection {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { TextSelection } from 'prosemirror-state'
|
||||
|
||||
import { isObject } from '../utilities/isObject'
|
||||
|
||||
export function isTextSelection(value: unknown): value is TextSelection {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { EditorView } from 'prosemirror-view'
|
||||
|
||||
import { minMax } from '../utilities/minMax'
|
||||
|
||||
export function posToDOMRect(view: EditorView, from: number, to: number): DOMRect {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import { Node as ProseMirrorNode } from 'prosemirror-model'
|
||||
import { Selection, TextSelection } from 'prosemirror-state'
|
||||
|
||||
import { FocusPosition } from '../types'
|
||||
import { minMax } from '../utilities/minMax'
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Selection, Transaction } from 'prosemirror-state'
|
||||
import { ReplaceStep, ReplaceAroundStep } from 'prosemirror-transform'
|
||||
import { ReplaceAroundStep, ReplaceStep } from 'prosemirror-transform'
|
||||
|
||||
// source: https://github.com/ProseMirror/prosemirror-state/blob/master/src/selection.js#L466
|
||||
export function selectionToInsertionEnd(tr: Transaction, startLen: number, bias: number) {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { Extensions } from '../types'
|
||||
import { Extension } from '../Extension'
|
||||
import { Node } from '../Node'
|
||||
import { Mark } from '../Mark'
|
||||
import { Node } from '../Node'
|
||||
import { Extensions } from '../types'
|
||||
|
||||
export function splitExtensions(extensions: Extensions) {
|
||||
const baseExtensions = extensions.filter(extension => extension.type === 'extension') as Extension[]
|
||||
|
||||
Reference in New Issue
Block a user