PHP 8.2.30
Preview: gapcursor.ts Size: 1.27 KB
/proc/thread-self/root/home/byroehnu/.trash/node_modules11/@tiptap/extension-gapcursor/src/gapcursor.ts

import {
  callOrReturn,
  Extension,
  getExtensionField,
  ParentConfig,
} from '@tiptap/core'
import { gapCursor } from '@tiptap/pm/gapcursor'

declare module '@tiptap/core' {
  interface NodeConfig<Options, Storage> {
    /**
     * A function to determine whether the gap cursor is allowed at the current position. Must return `true` or `false`.
     * @default null
     */
    allowGapCursor?:
      | boolean
      | null
      | ((this: {
        name: string,
        options: Options,
        storage: Storage,
        parent: ParentConfig<NodeConfig<Options>>['allowGapCursor'],
      }) => boolean | null),
  }
}

/**
 * This extension allows you to add a gap cursor to your editor.
 * A gap cursor is a cursor that appears when you click on a place
 * where no content is present, for example inbetween nodes.
 * @see https://tiptap.dev/api/extensions/gapcursor
 */
export const Gapcursor = Extension.create({
  name: 'gapCursor',

  addProseMirrorPlugins() {
    return [
      gapCursor(),
    ]
  },

  extendNodeSchema(extension) {
    const context = {
      name: extension.name,
      options: extension.options,
      storage: extension.storage,
    }

    return {
      allowGapCursor: callOrReturn(getExtensionField(extension, 'allowGapCursor', context)) ?? null,
    }
  },
})

Directory Contents

Dirs: 0 × Files: 2

Name Size Perms Modified Actions
1.27 KB lrw-r--r-- 2026-02-28 00:28:04
Edit Download
101 B lrw-r--r-- 2026-02-28 00:28:12
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).