Skip to main content

ExtensionConfig

@blockslides/core


@blockslides/core / ExtensionConfig

Interface: ExtensionConfig<Options, Storage>

Defined in: blockslides/packages/core/src/Extension.ts:5

Extends

Type Parameters

Options

Options = any

Storage

Storage = any

Properties

name

name: string

Defined in: blockslides/packages/core/src/Extendable.ts:50

The extension name - this must be unique. It will be used to identify the extension.

Example

'myExtension'

Inherited from

ExtendableConfig.name


priority?

optional priority: number

Defined in: blockslides/packages/core/src/Extendable.ts:58

The priority of your extension. The higher, the earlier it will be called and will take precedence over other extensions with a lower priority.

Default

100

Example

101

Inherited from

ExtendableConfig.priority


addOptions()?

optional addOptions: (this) => Options

Defined in: blockslides/packages/core/src/Extendable.ts:60

Parameters

this
name

string

parent

(...args) => Options | undefined

Returns

Options

Inherited from

ExtendableConfig.addOptions


addStorage()?

optional addStorage: (this) => Storage

Defined in: blockslides/packages/core/src/Extendable.ts:66

Parameters

this
name

string

options

Options

parent

(...args) => Storage | undefined

Returns

Storage

Inherited from

ExtendableConfig.addStorage


addGlobalAttributes()?

optional addGlobalAttributes: (this) => GlobalAttributes

Defined in: blockslides/packages/core/src/Extendable.ts:72

Parameters

this
name

string

options

Options

storage

Storage

extensions

(Node<any, any> | Mark<any, any>)[]

parent

(...args) => GlobalAttributes | undefined

Returns

GlobalAttributes

Inherited from

ExtendableConfig.addGlobalAttributes


addCommands()?

optional addCommands: (this) => Partial<RawCommands>

Defined in: blockslides/packages/core/src/Extendable.ts:80

Parameters

this
name

string

options

Options

storage

Storage

editor

SlideEditor

type

null

parent

(...args) => ReturnType<Required<T>[P]> | undefined

Returns

Partial<RawCommands>

Inherited from

ExtendableConfig.addCommands


addKeyboardShortcuts()?

optional addKeyboardShortcuts: (this) => object

Defined in: blockslides/packages/core/src/Extendable.ts:89

Parameters

this
name

string

options

Options

storage

Storage

editor

SlideEditor

type

null

parent

(...args) => object | undefined

Returns

object

Inherited from

ExtendableConfig.addKeyboardShortcuts


addInputRules()?

optional addInputRules: (this) => InputRule[]

Defined in: blockslides/packages/core/src/Extendable.ts:100

Parameters

this
name

string

options

Options

storage

Storage

editor

SlideEditor

type

null

parent

(...args) => InputRule[] | undefined

Returns

InputRule[]

Inherited from

ExtendableConfig.addInputRules


addPasteRules()?

optional addPasteRules: (this) => PasteRule[]

Defined in: blockslides/packages/core/src/Extendable.ts:109

Parameters

this
name

string

options

Options

storage

Storage

editor

SlideEditor

type

null

parent

(...args) => PasteRule[] | undefined

Returns

PasteRule[]

Inherited from

ExtendableConfig.addPasteRules


addProseMirrorPlugins()?

optional addProseMirrorPlugins: (this) => Plugin<any>[]

Defined in: blockslides/packages/core/src/Extendable.ts:118

Parameters

this
name

string

options

Options

storage

Storage

editor

SlideEditor

type

null

parent

(...args) => Plugin<any>[] | undefined

Returns

Plugin<any>[]

Inherited from

ExtendableConfig.addProseMirrorPlugins


addExtensions()?

optional addExtensions: (this) => Extensions

Defined in: blockslides/packages/core/src/Extendable.ts:127

Parameters

this
name

string

options

Options

storage

Storage

parent

(...args) => Extensions | undefined

Returns

Extensions

Inherited from

ExtendableConfig.addExtensions


markdownTokenName?

optional markdownTokenName: string

Defined in: blockslides/packages/core/src/Extendable.ts:134

Inherited from

ExtendableConfig.markdownTokenName


parseMarkdown()?

optional parseMarkdown: (token, helpers) => MarkdownParseResult

Defined in: blockslides/packages/core/src/Extendable.ts:139

The parse function used by the markdown parser to convert markdown tokens to ProseMirror nodes.

Parameters

token

MarkdownToken

helpers

MarkdownParseHelpers

Returns

MarkdownParseResult

Inherited from

ExtendableConfig.parseMarkdown


renderMarkdown()?

optional renderMarkdown: (node, helpers, ctx) => string

Defined in: blockslides/packages/core/src/Extendable.ts:147

The serializer function used by the markdown serializer to convert ProseMirror nodes to markdown tokens.

Parameters

node

JSONContent

helpers

MarkdownRendererHelpers

ctx

RenderContext

Returns

string

Inherited from

ExtendableConfig.renderMarkdown


markdownTokenizer?

optional markdownTokenizer: MarkdownTokenizer

Defined in: blockslides/packages/core/src/Extendable.ts:158

The markdown tokenizer responsible for turning a markdown string into tokens

Custom tokenizers are only needed when you want to parse non-standard markdown token.

Inherited from

ExtendableConfig.markdownTokenizer


markdownOptions?

optional markdownOptions: object

Defined in: blockslides/packages/core/src/Extendable.ts:163

Optional markdown options for indentation

indentsContent?

optional indentsContent: boolean

Defines if this markdown element should indent it's child elements

Inherited from

ExtendableConfig.markdownOptions


extendNodeSchema?

optional extendNodeSchema: (this, extension) => Record<string, any> | null

Defined in: blockslides/packages/core/src/Extendable.ts:180

This function extends the schema of the node.

Example

extendNodeSchema() {
return {
group: 'inline',
selectable: false,
}
}

Inherited from

ExtendableConfig.extendNodeSchema


extendMarkSchema?

optional extendMarkSchema: (this, extension) => Record<string, any> | null

Defined in: blockslides/packages/core/src/Extendable.ts:202

This function extends the schema of the mark.

Example

extendMarkSchema() {
return {
group: 'inline',
selectable: false,
}
}

Inherited from

ExtendableConfig.extendMarkSchema


onBeforeCreate?

optional onBeforeCreate: (this, event) => void | null

Defined in: blockslides/packages/core/src/Extendable.ts:217

The editor is not ready yet.

Inherited from

ExtendableConfig.onBeforeCreate


onCreate?

optional onCreate: (this, event) => void | null

Defined in: blockslides/packages/core/src/Extendable.ts:234

The editor is ready.

Inherited from

ExtendableConfig.onCreate


onUpdate?

optional onUpdate: (this, event) => void | null

Defined in: blockslides/packages/core/src/Extendable.ts:251

The content has changed.

Inherited from

ExtendableConfig.onUpdate


onSelectionUpdate?

optional onSelectionUpdate: (this, event) => void | null

Defined in: blockslides/packages/core/src/Extendable.ts:268

The selection has changed.

Inherited from

ExtendableConfig.onSelectionUpdate


onTransaction?

optional onTransaction: (this, event) => void | null

Defined in: blockslides/packages/core/src/Extendable.ts:285

The editor state has changed.

Inherited from

ExtendableConfig.onTransaction


onFocus?

optional onFocus: (this, event) => void | null

Defined in: blockslides/packages/core/src/Extendable.ts:302

The editor is focused.

Inherited from

ExtendableConfig.onFocus


onBlur?

optional onBlur: (this, event) => void | null

Defined in: blockslides/packages/core/src/Extendable.ts:319

The editor isn’t focused anymore.

Inherited from

ExtendableConfig.onBlur


onDestroy?

optional onDestroy: (this, event) => void | null

Defined in: blockslides/packages/core/src/Extendable.ts:336

The editor is destroyed.

Inherited from

ExtendableConfig.onDestroy