{
  "$schema": "https://ui.shadcn.com/schema/registry.json",
  "name": "prosekit",
  "homepage": "https://prosekit.dev",
  "items": [
    {
      "name": "react-example-block-handle",
      "title": "react-example-block-handle",
      "type": "registry:block",
      "description": "A handle that appears on hover, allowing you to drag and re-order blocks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-drop-indicator.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/block-handle/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/block-handle/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/extension.ts"
        },
        {
          "path": "registry/src/react/examples/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "block-handle",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/block-handle/editor.tsx",
          "registry/src/react/examples/block-handle/extension.ts",
          "registry/src/react/examples/block-handle/index.ts",
          "registry/src/react/sample/sample-doc-block-handle.ts",
          "registry/src/react/ui/block-handle/block-handle.tsx",
          "registry/src/react/ui/block-handle/index.ts",
          "registry/src/react/ui/code-block-view/code-block-view.tsx",
          "registry/src/react/ui/code-block-view/index.ts",
          "registry/src/react/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/react/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-block-handle",
          "react-ui-block-handle",
          "react-ui-code-block-view",
          "react-ui-drop-indicator"
        ]
      }
    },
    {
      "name": "react-example-blockquote",
      "title": "react-example-blockquote",
      "type": "registry:block",
      "description": "Example for blockquote node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/blockquote/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/blockquote/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/extension.ts"
        },
        {
          "path": "registry/src/react/examples/blockquote/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "blockquote",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/blockquote/editor.tsx",
          "registry/src/react/examples/blockquote/extension.ts",
          "registry/src/react/examples/blockquote/index.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-bold",
      "title": "react-example-bold",
      "type": "registry:block",
      "description": "Example for bold mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-bold.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/bold/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/bold/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/bold/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/bold/extension.ts"
        },
        {
          "path": "registry/src/react/examples/bold/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/bold/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "bold",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/bold/editor.tsx",
          "registry/src/react/examples/bold/extension.ts",
          "registry/src/react/examples/bold/index.ts",
          "registry/src/react/sample/sample-doc-bold.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-bold",
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-change-tracking",
      "title": "react-example-change-tracking",
      "type": "registry:block",
      "description": "Track and commit document changes with version history.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/change-tracking/editor-diff.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor-diff.tsx"
        },
        {
          "path": "registry/src/react/examples/change-tracking/editor-main.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor-main.tsx"
        },
        {
          "path": "registry/src/react/examples/change-tracking/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/change-tracking/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "change-tracking",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/change-tracking/editor-diff.tsx",
          "registry/src/react/examples/change-tracking/editor-main.tsx",
          "registry/src/react/examples/change-tracking/editor.tsx",
          "registry/src/react/examples/change-tracking/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-example-code",
      "title": "react-example-code",
      "type": "registry:block",
      "description": "Example for inline code mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-code.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/code/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/code/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code/extension.ts"
        },
        {
          "path": "registry/src/react/examples/code/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/code/editor.tsx",
          "registry/src/react/examples/code/extension.ts",
          "registry/src/react/examples/code/index.ts",
          "registry/src/react/sample/sample-doc-code.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-code",
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-code-block",
      "title": "react-example-code-block",
      "type": "registry:block",
      "description": "Code block with syntax highlighting and a Mermaid diagram preview.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/code-block/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/code-block/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/extension.ts"
        },
        {
          "path": "registry/src/react/examples/code-block/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/code-block/editor.tsx",
          "registry/src/react/examples/code-block/extension.ts",
          "registry/src/react/examples/code-block/index.ts",
          "registry/src/react/sample/sample-doc-code-block.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/code-block-view/code-block-view.tsx",
          "registry/src/react/ui/code-block-view/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-code-block",
          "react-ui-code-block-view",
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-code-block-themes",
      "title": "react-example-code-block-themes",
      "type": "registry:block",
      "description": "Code block with multiple syntax highlighting themes.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-code-block-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/code-block-themes/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/code-block-themes/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/extension.ts"
        },
        {
          "path": "registry/src/react/examples/code-block-themes/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/index.ts"
        },
        {
          "path": "registry/src/react/examples/code-block-themes/theme-selector.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/theme-selector.tsx"
        },
        {
          "path": "registry/src/react/examples/code-block-themes/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block-themes",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/code-block-themes/editor.tsx",
          "registry/src/react/examples/code-block-themes/extension.ts",
          "registry/src/react/examples/code-block-themes/index.ts",
          "registry/src/react/examples/code-block-themes/theme-selector.tsx",
          "registry/src/react/examples/code-block-themes/toolbar.tsx",
          "registry/src/react/sample/sample-doc-code-block.ts",
          "registry/src/react/ui/code-block-view/code-block-view.tsx",
          "registry/src/react/ui/code-block-view/index.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-code-block",
          "react-ui-code-block-view"
        ]
      }
    },
    {
      "name": "react-example-drop-cursor",
      "title": "react-example-drop-cursor",
      "type": "registry:block",
      "description": "Visual cursor indicator during drag-and-drop operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-drop-cursor.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/drop-cursor/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/drop-cursor/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/extension.ts"
        },
        {
          "path": "registry/src/react/examples/drop-cursor/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "drop-cursor",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/drop-cursor/editor.tsx",
          "registry/src/react/examples/drop-cursor/extension.ts",
          "registry/src/react/examples/drop-cursor/index.ts",
          "registry/src/react/sample/sample-doc-drop-cursor.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-drop-cursor"
        ]
      }
    },
    {
      "name": "react-example-emoji-rules",
      "title": "react-example-emoji-rules",
      "type": "registry:block",
      "description": "Auto-convert text shortcuts to emojis using input rules.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/emoji-rules/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/emoji-rules/emoji.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/emoji.ts"
        },
        {
          "path": "registry/src/react/examples/emoji-rules/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/extension.ts"
        },
        {
          "path": "registry/src/react/examples/emoji-rules/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "emoji-rules",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/emoji-rules/editor.tsx",
          "registry/src/react/examples/emoji-rules/emoji.ts",
          "registry/src/react/examples/emoji-rules/extension.ts",
          "registry/src/react/examples/emoji-rules/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-example-font-family",
      "title": "react-example-font-family",
      "type": "registry:block",
      "description": "Change the font family of text.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-font-family.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/font-family/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/font-family/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/extension.ts"
        },
        {
          "path": "registry/src/react/examples/font-family/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/index.ts"
        },
        {
          "path": "registry/src/react/examples/font-family/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "font-family",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/font-family/editor.tsx",
          "registry/src/react/examples/font-family/extension.ts",
          "registry/src/react/examples/font-family/index.ts",
          "registry/src/react/examples/font-family/toolbar.tsx",
          "registry/src/react/sample/sample-doc-font-family.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-font-family"
        ]
      }
    },
    {
      "name": "react-example-full",
      "title": "react-example-full",
      "type": "registry:block",
      "description": "Full-featured editor with most available features enabled.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-full.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-image-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/full/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/full/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/full/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/extension.ts"
        },
        {
          "path": "registry/src/react/examples/full/html.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/html.ts"
        },
        {
          "path": "registry/src/react/examples/full/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "full",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/full/editor.tsx",
          "registry/src/react/examples/full/extension.ts",
          "registry/src/react/examples/full/html.ts",
          "registry/src/react/examples/full/index.ts",
          "registry/src/react/sample/katex.ts",
          "registry/src/react/sample/sample-doc-full.ts",
          "registry/src/react/sample/sample-tag-data.ts",
          "registry/src/react/sample/sample-uploader.ts",
          "registry/src/react/sample/sample-user-data.ts",
          "registry/src/react/ui/block-handle/block-handle.tsx",
          "registry/src/react/ui/block-handle/index.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/code-block-view/code-block-view.tsx",
          "registry/src/react/ui/code-block-view/index.ts",
          "registry/src/react/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/react/ui/drop-indicator/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/image-view/image-view.tsx",
          "registry/src/react/ui/image-view/index.ts",
          "registry/src/react/ui/inline-menu/index.ts",
          "registry/src/react/ui/inline-menu/inline-menu.tsx",
          "registry/src/react/ui/slash-menu/index.ts",
          "registry/src/react/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/react/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/react/ui/slash-menu/slash-menu.tsx",
          "registry/src/react/ui/table-handle/index.ts",
          "registry/src/react/ui/table-handle/table-handle.tsx",
          "registry/src/react/ui/tag-menu/index.ts",
          "registry/src/react/ui/tag-menu/tag-menu.tsx",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx",
          "registry/src/react/ui/user-menu/index.ts",
          "registry/src/react/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": [
          "react-sample-katex",
          "react-sample-sample-doc-full",
          "react-sample-sample-tag-data",
          "react-sample-sample-uploader",
          "react-sample-sample-user-data",
          "react-ui-block-handle",
          "react-ui-code-block-view",
          "react-ui-drop-indicator",
          "react-ui-image-view",
          "react-ui-inline-menu",
          "react-ui-slash-menu",
          "react-ui-table-handle",
          "react-ui-tag-menu",
          "react-ui-toolbar",
          "react-ui-user-menu"
        ]
      }
    },
    {
      "name": "react-example-gap-cursor",
      "title": "react-example-gap-cursor",
      "type": "registry:block",
      "description": "Cursor navigation between non-text block elements.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-gap-cursor.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/gap-cursor/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/gap-cursor/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/extension.ts"
        },
        {
          "path": "registry/src/react/examples/gap-cursor/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "gap-cursor",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/gap-cursor/editor.tsx",
          "registry/src/react/examples/gap-cursor/extension.ts",
          "registry/src/react/examples/gap-cursor/index.ts",
          "registry/src/react/sample/sample-doc-gap-cursor.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-gap-cursor"
        ]
      }
    },
    {
      "name": "react-example-hard-break",
      "title": "react-example-hard-break",
      "type": "registry:block",
      "description": "Example for hard line break node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-hard-break.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/hard-break/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/hard-break/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/extension.ts"
        },
        {
          "path": "registry/src/react/examples/hard-break/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/index.ts"
        },
        {
          "path": "registry/src/react/examples/hard-break/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "hard-break",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/hard-break/editor.tsx",
          "registry/src/react/examples/hard-break/extension.ts",
          "registry/src/react/examples/hard-break/index.ts",
          "registry/src/react/examples/hard-break/toolbar.tsx",
          "registry/src/react/sample/sample-doc-hard-break.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-hard-break",
          "react-ui-button"
        ]
      }
    },
    {
      "name": "react-example-heading",
      "title": "react-example-heading",
      "type": "registry:block",
      "description": "Example for heading node with multiple levels.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-heading.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/heading/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/heading/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/heading/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/heading/extension.ts"
        },
        {
          "path": "registry/src/react/examples/heading/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/heading/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "heading",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/heading/editor.tsx",
          "registry/src/react/examples/heading/extension.ts",
          "registry/src/react/examples/heading/index.ts",
          "registry/src/react/sample/sample-doc-heading.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-heading",
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-highlight",
      "title": "react-example-highlight",
      "type": "registry:block",
      "description": "Example for highlighting text (like a highlighter pen).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-highlight.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/highlight/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/highlight/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/extension.ts"
        },
        {
          "path": "registry/src/react/examples/highlight/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/index.ts"
        },
        {
          "path": "registry/src/react/examples/highlight/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "highlight",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/highlight/editor.tsx",
          "registry/src/react/examples/highlight/extension.ts",
          "registry/src/react/examples/highlight/index.ts",
          "registry/src/react/examples/highlight/toolbar.tsx",
          "registry/src/react/sample/sample-doc-highlight.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-highlight",
          "react-ui-button"
        ]
      }
    },
    {
      "name": "react-example-horizontal-rule",
      "title": "react-example-horizontal-rule",
      "type": "registry:block",
      "description": "Example for horizontal rule node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/horizontal-rule/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/horizontal-rule/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/extension.ts"
        },
        {
          "path": "registry/src/react/examples/horizontal-rule/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "horizontal-rule",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/horizontal-rule/editor.tsx",
          "registry/src/react/examples/horizontal-rule/extension.ts",
          "registry/src/react/examples/horizontal-rule/index.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-image-view",
      "title": "react-example-image-view",
      "type": "registry:block",
      "description": "Custom image node views with resize support.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-image.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-image-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/image-view/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/image-view/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/extension.ts"
        },
        {
          "path": "registry/src/react/examples/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "image-view",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/image-view/editor.tsx",
          "registry/src/react/examples/image-view/extension.ts",
          "registry/src/react/examples/image-view/index.ts",
          "registry/src/react/sample/sample-doc-image.ts",
          "registry/src/react/sample/sample-uploader.ts",
          "registry/src/react/ui/image-view/image-view.tsx",
          "registry/src/react/ui/image-view/index.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-image",
          "react-sample-sample-uploader",
          "react-ui-image-view"
        ]
      }
    },
    {
      "name": "react-example-inline-menu",
      "title": "react-example-inline-menu",
      "type": "registry:block",
      "description": "Inline formatting menu that appears on text selection.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/inline-menu/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/inline-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/extension.ts"
        },
        {
          "path": "registry/src/react/examples/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "inline-menu",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/inline-menu/editor.tsx",
          "registry/src/react/examples/inline-menu/extension.ts",
          "registry/src/react/examples/inline-menu/index.ts",
          "registry/src/react/sample/sample-doc-inline-menu.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/inline-menu/index.ts",
          "registry/src/react/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-inline-menu",
          "react-ui-inline-menu"
        ]
      }
    },
    {
      "name": "react-example-italic",
      "title": "react-example-italic",
      "type": "registry:block",
      "description": "Example for italic mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-italic.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/italic/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/italic/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/italic/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/italic/extension.ts"
        },
        {
          "path": "registry/src/react/examples/italic/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/italic/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "italic",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/italic/editor.tsx",
          "registry/src/react/examples/italic/extension.ts",
          "registry/src/react/examples/italic/index.ts",
          "registry/src/react/sample/sample-doc-italic.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-italic",
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-katex",
      "title": "react-example-katex",
      "type": "registry:block",
      "description": "Math equation rendering using the KaTeX library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-tex.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/katex/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/katex/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/katex/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/katex/extension.ts"
        },
        {
          "path": "registry/src/react/examples/katex/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/katex/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "katex",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/katex/editor.tsx",
          "registry/src/react/examples/katex/extension.ts",
          "registry/src/react/examples/katex/index.ts",
          "registry/src/react/sample/katex.ts",
          "registry/src/react/sample/sample-doc-tex.ts"
        ],
        "internalDependencies": [
          "react-sample-katex",
          "react-sample-sample-doc-tex"
        ]
      }
    },
    {
      "name": "react-example-keymap",
      "title": "react-example-keymap",
      "type": "registry:block",
      "description": "Custom keyboard shortcuts and key bindings.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/keymap/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/keymap/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/extension.ts"
        },
        {
          "path": "registry/src/react/examples/keymap/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/index.ts"
        },
        {
          "path": "registry/src/react/examples/keymap/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/toolbar.tsx"
        },
        {
          "path": "registry/src/react/examples/keymap/use-submit-keymap.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/use-submit-keymap.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "keymap",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/keymap/editor.tsx",
          "registry/src/react/examples/keymap/extension.ts",
          "registry/src/react/examples/keymap/index.ts",
          "registry/src/react/examples/keymap/toolbar.tsx",
          "registry/src/react/examples/keymap/use-submit-keymap.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts"
        ],
        "internalDependencies": [
          "react-ui-button"
        ]
      }
    },
    {
      "name": "react-example-link",
      "title": "react-example-link",
      "type": "registry:block",
      "description": "Example for link mark with URL input.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-link.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/link/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/link/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/link/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link/extension.ts"
        },
        {
          "path": "registry/src/react/examples/link/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "link",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/link/editor.tsx",
          "registry/src/react/examples/link/extension.ts",
          "registry/src/react/examples/link/index.ts",
          "registry/src/react/sample/sample-doc-link.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/inline-menu/index.ts",
          "registry/src/react/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-link",
          "react-ui-inline-menu"
        ]
      }
    },
    {
      "name": "react-example-link-mark-view",
      "title": "react-example-link-mark-view",
      "type": "registry:block",
      "description": "An example showing how to render a mark as a custom component.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-link-mark-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/link-mark-view/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/link-mark-view/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/extension.ts"
        },
        {
          "path": "registry/src/react/examples/link-mark-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/index.ts"
        },
        {
          "path": "registry/src/react/examples/link-mark-view/link-view.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/link-view.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "link-mark-view",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/link-mark-view/editor.tsx",
          "registry/src/react/examples/link-mark-view/extension.ts",
          "registry/src/react/examples/link-mark-view/index.ts",
          "registry/src/react/examples/link-mark-view/link-view.tsx",
          "registry/src/react/sample/sample-doc-link-mark-view.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-link-mark-view"
        ]
      }
    },
    {
      "name": "react-example-list",
      "title": "react-example-list",
      "type": "registry:block",
      "description": "Example for list node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-list.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/list/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/list/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/list/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list/extension.ts"
        },
        {
          "path": "registry/src/react/examples/list/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "list",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/list/editor.tsx",
          "registry/src/react/examples/list/extension.ts",
          "registry/src/react/examples/list/index.ts",
          "registry/src/react/sample/sample-doc-list.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-list",
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-list-custom-checkbox",
      "title": "react-example-list-custom-checkbox",
      "type": "registry:block",
      "description": "Custom checkbox styling for task lists.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-list-custom-checkbox.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/list-custom-checkbox/custom-list.css",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/custom-list.css"
        },
        {
          "path": "registry/src/react/examples/list-custom-checkbox/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/list-custom-checkbox/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/extension.ts"
        },
        {
          "path": "registry/src/react/examples/list-custom-checkbox/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "list-custom-checkbox",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/list-custom-checkbox/custom-list.css",
          "registry/src/react/examples/list-custom-checkbox/editor.tsx",
          "registry/src/react/examples/list-custom-checkbox/extension.ts",
          "registry/src/react/examples/list-custom-checkbox/index.ts",
          "registry/src/react/sample/sample-doc-list-custom-checkbox.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-list-custom-checkbox",
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-loro",
      "title": "react-example-loro",
      "type": "registry:block",
      "description": "Real-time collaboration using Loro CRDT library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "loro-crdt",
        "loro-prosemirror",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/loro/editor-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/loro/editor-component.tsx"
        },
        {
          "path": "registry/src/react/examples/loro/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/loro/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/loro/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/loro/extension.ts"
        },
        {
          "path": "registry/src/react/examples/loro/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/loro/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "loro",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/loro/editor-component.tsx",
          "registry/src/react/examples/loro/editor.tsx",
          "registry/src/react/examples/loro/extension.ts",
          "registry/src/react/examples/loro/index.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-mark-rule",
      "title": "react-example-mark-rule",
      "type": "registry:block",
      "description": "Input rules for automatic mark formatting.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/mark-rule/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/mark-rule/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/extension.ts"
        },
        {
          "path": "registry/src/react/examples/mark-rule/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/index.ts"
        },
        {
          "path": "registry/src/react/examples/mark-rule/issue-link.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/issue-link.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "mark-rule",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/mark-rule/editor.tsx",
          "registry/src/react/examples/mark-rule/extension.ts",
          "registry/src/react/examples/mark-rule/index.ts",
          "registry/src/react/examples/mark-rule/issue-link.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-example-minimal",
      "title": "react-example-minimal",
      "type": "registry:block",
      "description": "Minimal editor setup with basic functionality.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/minimal/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/minimal/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "minimal",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/minimal/editor.tsx",
          "registry/src/react/examples/minimal/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-example-notion",
      "title": "react-example-notion",
      "type": "registry:block",
      "description": "Notion-style editor with block-based editing.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-notion.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-user-menu.json"
      ],
      "dependencies": [
        "@base-ui/react",
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/notion/block-handle-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/notion/block-handle-menu.tsx"
        },
        {
          "path": "registry/src/react/examples/notion/block-handle.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/notion/block-handle.tsx"
        },
        {
          "path": "registry/src/react/examples/notion/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/notion/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/notion/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/notion/extension.ts"
        },
        {
          "path": "registry/src/react/examples/notion/image-view/image-view-content.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/notion/image-view/image-view-content.tsx"
        },
        {
          "path": "registry/src/react/examples/notion/image-view/image-view-placeholder.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/notion/image-view/image-view-placeholder.tsx"
        },
        {
          "path": "registry/src/react/examples/notion/image-view/image-view.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/notion/image-view/image-view.tsx"
        },
        {
          "path": "registry/src/react/examples/notion/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/notion/image-view/index.ts"
        },
        {
          "path": "registry/src/react/examples/notion/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/notion/index.ts"
        },
        {
          "path": "registry/src/react/examples/notion/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/notion/slash-menu/index.ts"
        },
        {
          "path": "registry/src/react/examples/notion/slash-menu/slash-menu-empty.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/notion/slash-menu/slash-menu-empty.tsx"
        },
        {
          "path": "registry/src/react/examples/notion/slash-menu/slash-menu-item.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/notion/slash-menu/slash-menu-item.tsx"
        },
        {
          "path": "registry/src/react/examples/notion/slash-menu/slash-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/notion/slash-menu/slash-menu.tsx"
        },
        {
          "path": "registry/src/react/examples/notion/style.css",
          "type": "registry:component",
          "target": "components/editor/examples/notion/style.css"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": true,
        "story": "notion",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/notion/block-handle-menu.tsx",
          "registry/src/react/examples/notion/block-handle.tsx",
          "registry/src/react/examples/notion/editor.tsx",
          "registry/src/react/examples/notion/extension.ts",
          "registry/src/react/examples/notion/image-view/image-view-content.tsx",
          "registry/src/react/examples/notion/image-view/image-view-placeholder.tsx",
          "registry/src/react/examples/notion/image-view/image-view.tsx",
          "registry/src/react/examples/notion/image-view/index.ts",
          "registry/src/react/examples/notion/index.ts",
          "registry/src/react/examples/notion/slash-menu/index.ts",
          "registry/src/react/examples/notion/slash-menu/slash-menu-empty.tsx",
          "registry/src/react/examples/notion/slash-menu/slash-menu-item.tsx",
          "registry/src/react/examples/notion/slash-menu/slash-menu.tsx",
          "registry/src/react/examples/notion/style.css",
          "registry/src/react/sample/sample-doc-notion.ts",
          "registry/src/react/sample/sample-tag-data.ts",
          "registry/src/react/sample/sample-uploader.ts",
          "registry/src/react/sample/sample-user-data.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/code-block-view/code-block-view.tsx",
          "registry/src/react/ui/code-block-view/index.ts",
          "registry/src/react/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/react/ui/drop-indicator/index.ts",
          "registry/src/react/ui/inline-menu/index.ts",
          "registry/src/react/ui/inline-menu/inline-menu.tsx",
          "registry/src/react/ui/table-handle/index.ts",
          "registry/src/react/ui/table-handle/table-handle.tsx",
          "registry/src/react/ui/tag-menu/index.ts",
          "registry/src/react/ui/tag-menu/tag-menu.tsx",
          "registry/src/react/ui/user-menu/index.ts",
          "registry/src/react/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-notion",
          "react-sample-sample-tag-data",
          "react-sample-sample-uploader",
          "react-sample-sample-user-data",
          "react-ui-code-block-view",
          "react-ui-drop-indicator",
          "react-ui-inline-menu",
          "react-ui-table-handle",
          "react-ui-tag-menu",
          "react-ui-user-menu"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "react-example-page",
      "title": "react-example-page",
      "type": "registry:block",
      "description": "Page layout with configurable paper settings.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-page.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/page/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/page/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/page/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/page/extension.ts"
        },
        {
          "path": "registry/src/react/examples/page/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/page/index.ts"
        },
        {
          "path": "registry/src/react/examples/page/paper-controller.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/page/paper-controller.tsx"
        },
        {
          "path": "registry/src/react/examples/page/zoom.css",
          "type": "registry:component",
          "target": "components/editor/examples/page/zoom.css"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "page",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/page/editor.tsx",
          "registry/src/react/examples/page/extension.ts",
          "registry/src/react/examples/page/index.ts",
          "registry/src/react/examples/page/paper-controller.tsx",
          "registry/src/react/examples/page/zoom.css",
          "registry/src/react/sample/sample-doc-page.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-page"
        ]
      }
    },
    {
      "name": "react-example-placeholder",
      "title": "react-example-placeholder",
      "type": "registry:block",
      "description": "Placeholder text displayed.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/placeholder/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/placeholder/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/extension.ts"
        },
        {
          "path": "registry/src/react/examples/placeholder/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "placeholder",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/placeholder/editor.tsx",
          "registry/src/react/examples/placeholder/extension.ts",
          "registry/src/react/examples/placeholder/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-example-readonly",
      "title": "react-example-readonly",
      "type": "registry:block",
      "description": "Toggle between read-only and editable mode.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-readonly.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/readonly/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/readonly/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/extension.ts"
        },
        {
          "path": "registry/src/react/examples/readonly/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/index.ts"
        },
        {
          "path": "registry/src/react/examples/readonly/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/toolbar.tsx"
        },
        {
          "path": "registry/src/react/examples/readonly/use-readonly.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/use-readonly.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "readonly",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/readonly/editor.tsx",
          "registry/src/react/examples/readonly/extension.ts",
          "registry/src/react/examples/readonly/index.ts",
          "registry/src/react/examples/readonly/toolbar.tsx",
          "registry/src/react/examples/readonly/use-readonly.ts",
          "registry/src/react/sample/sample-doc-readonly.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-readonly",
          "react-ui-button"
        ]
      }
    },
    {
      "name": "react-example-rtl",
      "title": "react-example-rtl",
      "type": "registry:block",
      "description": "Right-to-left text direction support.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-rtl.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/rtl/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/rtl/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/rtl/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/rtl/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "rtl",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/rtl/editor.tsx",
          "registry/src/react/examples/rtl/index.ts",
          "registry/src/react/sample/sample-doc-rtl.ts",
          "registry/src/react/sample/sample-uploader.ts",
          "registry/src/react/ui/block-handle/block-handle.tsx",
          "registry/src/react/ui/block-handle/index.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/react/ui/drop-indicator/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/inline-menu/index.ts",
          "registry/src/react/ui/inline-menu/inline-menu.tsx",
          "registry/src/react/ui/slash-menu/index.ts",
          "registry/src/react/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/react/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/react/ui/slash-menu/slash-menu.tsx",
          "registry/src/react/ui/table-handle/index.ts",
          "registry/src/react/ui/table-handle/table-handle.tsx",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-rtl",
          "react-sample-sample-uploader",
          "react-ui-block-handle",
          "react-ui-drop-indicator",
          "react-ui-inline-menu",
          "react-ui-slash-menu",
          "react-ui-table-handle",
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-save-html",
      "title": "react-example-save-html",
      "type": "registry:block",
      "description": "Save and load documents as HTML format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/save-html/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/save-html/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/save-html/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-html/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-html",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/save-html/editor.tsx",
          "registry/src/react/examples/save-html/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-example-save-json",
      "title": "react-example-save-json",
      "type": "registry:block",
      "description": "Save and load documents as JSON format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/save-json/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/save-json/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/save-json/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-json/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-json",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/save-json/editor.tsx",
          "registry/src/react/examples/save-json/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-example-save-markdown",
      "title": "react-example-save-markdown",
      "type": "registry:block",
      "description": "Save and load documents as Markdown format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3",
        "rehype-parse",
        "rehype-remark",
        "remark-gfm",
        "remark-html",
        "remark-parse",
        "remark-stringify",
        "unified"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/save-markdown/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/save-markdown/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/index.ts"
        },
        {
          "path": "registry/src/react/examples/save-markdown/markdown.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/markdown.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-markdown",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/save-markdown/editor.tsx",
          "registry/src/react/examples/save-markdown/index.ts",
          "registry/src/react/examples/save-markdown/markdown.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-example-search",
      "title": "react-example-search",
      "type": "registry:block",
      "description": "Search and highlight text with navigation.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-search.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-search.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/search/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/search/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/search/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/search/extension.ts"
        },
        {
          "path": "registry/src/react/examples/search/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/search/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "search",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/search/editor.tsx",
          "registry/src/react/examples/search/extension.ts",
          "registry/src/react/examples/search/index.ts",
          "registry/src/react/sample/sample-doc-search.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/search/index.ts",
          "registry/src/react/ui/search/search.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-search",
          "react-ui-search"
        ]
      }
    },
    {
      "name": "react-example-slash-menu",
      "title": "react-example-slash-menu",
      "type": "registry:block",
      "description": "Command menu triggered by typing slash (/).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-slash-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/slash-menu/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/slash-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/extension.ts"
        },
        {
          "path": "registry/src/react/examples/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "slash-menu",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/slash-menu/editor.tsx",
          "registry/src/react/examples/slash-menu/extension.ts",
          "registry/src/react/examples/slash-menu/index.ts",
          "registry/src/react/ui/slash-menu/index.ts",
          "registry/src/react/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/react/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/react/ui/slash-menu/slash-menu.tsx"
        ],
        "internalDependencies": [
          "react-ui-slash-menu"
        ]
      }
    },
    {
      "name": "react-example-strike",
      "title": "react-example-strike",
      "type": "registry:block",
      "description": "Example for strikethrough mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-strike.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/strike/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/strike/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/strike/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/strike/extension.ts"
        },
        {
          "path": "registry/src/react/examples/strike/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/strike/index.ts"
        },
        {
          "path": "registry/src/react/examples/strike/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/strike/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "strike",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/strike/editor.tsx",
          "registry/src/react/examples/strike/extension.ts",
          "registry/src/react/examples/strike/index.ts",
          "registry/src/react/examples/strike/toolbar.tsx",
          "registry/src/react/sample/sample-doc-strike.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-strike",
          "react-ui-button"
        ]
      }
    },
    {
      "name": "react-example-sub-sup",
      "title": "react-example-sub-sup",
      "type": "registry:block",
      "description": "Example for subscript and superscript marks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-sub-sup.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/sub-sup/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/sub-sup/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/extension.ts"
        },
        {
          "path": "registry/src/react/examples/sub-sup/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/index.ts"
        },
        {
          "path": "registry/src/react/examples/sub-sup/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "sub-sup",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/sub-sup/editor.tsx",
          "registry/src/react/examples/sub-sup/extension.ts",
          "registry/src/react/examples/sub-sup/index.ts",
          "registry/src/react/examples/sub-sup/toolbar.tsx",
          "registry/src/react/sample/sample-doc-sub-sup.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-sub-sup",
          "react-ui-button"
        ]
      }
    },
    {
      "name": "react-example-table",
      "title": "react-example-table",
      "type": "registry:block",
      "description": "Table node with row and column operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-table.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-table-handle.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/table/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/table/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/table/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/extension.ts"
        },
        {
          "path": "registry/src/react/examples/table/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "table",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/table/editor.tsx",
          "registry/src/react/examples/table/extension.ts",
          "registry/src/react/examples/table/index.ts",
          "registry/src/react/sample/sample-doc-table.ts",
          "registry/src/react/ui/table-handle/index.ts",
          "registry/src/react/ui/table-handle/table-handle.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-table",
          "react-ui-table-handle"
        ]
      }
    },
    {
      "name": "react-example-text-align",
      "title": "react-example-text-align",
      "type": "registry:block",
      "description": "Text alignment options (left, center, right, justify).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-text-align.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/text-align/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/text-align/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/extension.ts"
        },
        {
          "path": "registry/src/react/examples/text-align/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/index.ts"
        },
        {
          "path": "registry/src/react/examples/text-align/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "text-align",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/text-align/editor.tsx",
          "registry/src/react/examples/text-align/extension.ts",
          "registry/src/react/examples/text-align/index.ts",
          "registry/src/react/examples/text-align/toolbar.tsx",
          "registry/src/react/sample/sample-doc-text-align.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-text-align",
          "react-ui-button"
        ]
      }
    },
    {
      "name": "react-example-text-color",
      "title": "react-example-text-color",
      "type": "registry:block",
      "description": "Change text and background color.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-text-color.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/text-color/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/text-color/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/extension.ts"
        },
        {
          "path": "registry/src/react/examples/text-color/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/index.ts"
        },
        {
          "path": "registry/src/react/examples/text-color/inline-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/inline-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "text-color",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/text-color/editor.tsx",
          "registry/src/react/examples/text-color/extension.ts",
          "registry/src/react/examples/text-color/index.ts",
          "registry/src/react/examples/text-color/inline-menu.tsx",
          "registry/src/react/sample/sample-doc-text-color.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-text-color",
          "react-ui-button"
        ]
      }
    },
    {
      "name": "react-example-toolbar",
      "title": "react-example-toolbar",
      "type": "registry:block",
      "description": "Formatting toolbar with common editing actions.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/toolbar/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/toolbar/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/extension.ts"
        },
        {
          "path": "registry/src/react/examples/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "toolbar",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/toolbar/editor.tsx",
          "registry/src/react/examples/toolbar/extension.ts",
          "registry/src/react/examples/toolbar/index.ts",
          "registry/src/react/sample/sample-uploader.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-uploader",
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-tweet",
      "title": "react-example-tweet",
      "type": "registry:block",
      "description": "Embed and display Twitter tweets.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-tweet.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3",
        "react-tweet"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/tweet/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/tweet/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/tweet/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/tweet/extension.ts"
        },
        {
          "path": "registry/src/react/examples/tweet/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/tweet/index.ts"
        },
        {
          "path": "registry/src/react/examples/tweet/method-select.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/tweet/method-select.tsx"
        },
        {
          "path": "registry/src/react/examples/tweet/tweet-view.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/tweet/tweet-view.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "tweet",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/tweet/editor.tsx",
          "registry/src/react/examples/tweet/extension.ts",
          "registry/src/react/examples/tweet/index.ts",
          "registry/src/react/examples/tweet/method-select.tsx",
          "registry/src/react/examples/tweet/tweet-view.tsx",
          "registry/src/react/sample/sample-doc-tweet.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-tweet"
        ]
      }
    },
    {
      "name": "react-example-typography",
      "title": "react-example-typography",
      "type": "registry:block",
      "description": "Typography enhancements like smart quotes and dashes.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-typography.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-drop-indicator.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/typography/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/typography/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/typography/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/typography/extension.ts"
        },
        {
          "path": "registry/src/react/examples/typography/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/typography/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "typography",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/typography/editor.tsx",
          "registry/src/react/examples/typography/extension.ts",
          "registry/src/react/examples/typography/index.ts",
          "registry/src/react/sample/katex.ts",
          "registry/src/react/sample/sample-doc-typography.ts",
          "registry/src/react/ui/block-handle/block-handle.tsx",
          "registry/src/react/ui/block-handle/index.ts",
          "registry/src/react/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/react/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": [
          "react-sample-katex",
          "react-sample-sample-doc-typography",
          "react-ui-block-handle",
          "react-ui-drop-indicator"
        ]
      }
    },
    {
      "name": "react-example-underline",
      "title": "react-example-underline",
      "type": "registry:block",
      "description": "Example for underline mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-underline.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/underline/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/underline/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/underline/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/underline/extension.ts"
        },
        {
          "path": "registry/src/react/examples/underline/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/underline/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "underline",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/underline/editor.tsx",
          "registry/src/react/examples/underline/extension.ts",
          "registry/src/react/examples/underline/index.ts",
          "registry/src/react/sample/sample-doc-underline.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-underline",
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-example-unmount",
      "title": "react-example-unmount",
      "type": "registry:block",
      "description": "Properly unmount and remount editor instances.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/unmount/editor-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/editor-component.tsx"
        },
        {
          "path": "registry/src/react/examples/unmount/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/unmount/extension-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/extension-component.tsx"
        },
        {
          "path": "registry/src/react/examples/unmount/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "unmount",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/unmount/editor-component.tsx",
          "registry/src/react/examples/unmount/editor.tsx",
          "registry/src/react/examples/unmount/extension-component.tsx",
          "registry/src/react/examples/unmount/index.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/inline-menu/index.ts",
          "registry/src/react/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "react-ui-inline-menu"
        ]
      }
    },
    {
      "name": "react-example-user-menu",
      "title": "react-example-user-menu",
      "type": "registry:block",
      "description": "Autocomplete menu for @mentions and #hashtag",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/user-menu/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/user-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/extension.ts"
        },
        {
          "path": "registry/src/react/examples/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "user-menu",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/user-menu/editor.tsx",
          "registry/src/react/examples/user-menu/extension.ts",
          "registry/src/react/examples/user-menu/index.ts",
          "registry/src/react/sample/sample-tag-data.ts",
          "registry/src/react/sample/sample-user-data.ts",
          "registry/src/react/ui/tag-menu/index.ts",
          "registry/src/react/ui/tag-menu/tag-menu.tsx",
          "registry/src/react/ui/user-menu/index.ts",
          "registry/src/react/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-tag-data",
          "react-sample-sample-user-data",
          "react-ui-tag-menu",
          "react-ui-user-menu"
        ]
      }
    },
    {
      "name": "react-example-user-menu-dynamic",
      "title": "react-example-user-menu-dynamic",
      "type": "registry:block",
      "description": "Dynamic autocomplete menu with async data loading.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-query-users.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/user-menu-dynamic/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/user-menu-dynamic/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/extension.ts"
        },
        {
          "path": "registry/src/react/examples/user-menu-dynamic/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/index.ts"
        },
        {
          "path": "registry/src/react/examples/user-menu-dynamic/use-user-query.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/use-user-query.ts"
        },
        {
          "path": "registry/src/react/examples/user-menu-dynamic/user-menu-dynamic.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/user-menu-dynamic.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "user-menu-dynamic",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/user-menu-dynamic/editor.tsx",
          "registry/src/react/examples/user-menu-dynamic/extension.ts",
          "registry/src/react/examples/user-menu-dynamic/index.ts",
          "registry/src/react/examples/user-menu-dynamic/use-user-query.ts",
          "registry/src/react/examples/user-menu-dynamic/user-menu-dynamic.tsx",
          "registry/src/react/sample/sample-query-users.ts",
          "registry/src/react/sample/sample-user-data.ts",
          "registry/src/react/ui/user-menu/index.ts",
          "registry/src/react/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-query-users",
          "react-ui-user-menu"
        ]
      }
    },
    {
      "name": "react-example-view-adapter",
      "title": "react-example-view-adapter",
      "type": "registry:block",
      "description": "Custom node and mark views using view adapters.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-define-atom-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-view-adapter.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/view-adapter/atom-block-view.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/atom-block-view.tsx"
        },
        {
          "path": "registry/src/react/examples/view-adapter/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/view-adapter/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/extension.ts"
        },
        {
          "path": "registry/src/react/examples/view-adapter/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": true,
        "story": "view-adapter",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/view-adapter/atom-block-view.tsx",
          "registry/src/react/examples/view-adapter/editor.tsx",
          "registry/src/react/examples/view-adapter/extension.ts",
          "registry/src/react/examples/view-adapter/index.ts",
          "registry/src/react/sample/define-atom-block.ts",
          "registry/src/react/sample/sample-doc-view-adapter.ts"
        ],
        "internalDependencies": [
          "react-sample-define-atom-block",
          "react-sample-sample-doc-view-adapter"
        ]
      }
    },
    {
      "name": "react-example-word-counter",
      "title": "react-example-word-counter",
      "type": "registry:block",
      "description": "Display word and character count statistics.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-doc-word-counter.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-word-counter.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/word-counter/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/word-counter/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/extension.ts"
        },
        {
          "path": "registry/src/react/examples/word-counter/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "word-counter",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/word-counter/editor.tsx",
          "registry/src/react/examples/word-counter/extension.ts",
          "registry/src/react/examples/word-counter/index.ts",
          "registry/src/react/sample/sample-doc-word-counter.ts",
          "registry/src/react/ui/word-counter/index.ts",
          "registry/src/react/ui/word-counter/word-counter.tsx"
        ],
        "internalDependencies": [
          "react-sample-sample-doc-word-counter",
          "react-ui-word-counter"
        ]
      }
    },
    {
      "name": "react-example-yjs",
      "title": "react-example-yjs",
      "type": "registry:block",
      "description": "Real-time collaboration using Yjs CRDT library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3",
        "y-websocket",
        "yjs"
      ],
      "files": [
        {
          "path": "registry/src/react/examples/yjs/editor-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/editor-component.tsx"
        },
        {
          "path": "registry/src/react/examples/yjs/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/editor.tsx"
        },
        {
          "path": "registry/src/react/examples/yjs/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/extension.ts"
        },
        {
          "path": "registry/src/react/examples/yjs/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "yjs",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/examples/yjs/editor-component.tsx",
          "registry/src/react/examples/yjs/editor.tsx",
          "registry/src/react/examples/yjs/extension.ts",
          "registry/src/react/examples/yjs/index.ts",
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-ui-toolbar"
        ]
      }
    },
    {
      "name": "react-sample-define-atom-block",
      "title": "react-sample-define-atom-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/define-atom-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/define-atom-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/define-atom-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-katex",
      "title": "react-sample-katex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "katex"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/katex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/katex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/katex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-block-handle",
      "title": "react-sample-sample-doc-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-block-handle.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-block-handle.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-block-handle.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-bold",
      "title": "react-sample-sample-doc-bold",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-bold.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-bold.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-bold.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-code",
      "title": "react-sample-sample-doc-code",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-code.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-code.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-code-block",
      "title": "react-sample-sample-doc-code-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-code-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-code-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-drop-cursor",
      "title": "react-sample-sample-doc-drop-cursor",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-drop-cursor.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-drop-cursor.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-drop-cursor.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-font-family",
      "title": "react-sample-sample-doc-font-family",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-font-family.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-font-family.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-font-family.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-full",
      "title": "react-sample-sample-doc-full",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-full.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-full.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-full.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-gap-cursor",
      "title": "react-sample-sample-doc-gap-cursor",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-gap-cursor.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-gap-cursor.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-gap-cursor.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-hard-break",
      "title": "react-sample-sample-doc-hard-break",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-hard-break.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-hard-break.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-hard-break.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-heading",
      "title": "react-sample-sample-doc-heading",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-heading.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-heading.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-heading.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-highlight",
      "title": "react-sample-sample-doc-highlight",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-highlight.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-highlight.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-highlight.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-image",
      "title": "react-sample-sample-doc-image",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-image.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-image.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-image.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-inline-menu",
      "title": "react-sample-sample-doc-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-inline-menu.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-inline-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-inline-menu.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-italic",
      "title": "react-sample-sample-doc-italic",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-italic.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-italic.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-italic.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-link",
      "title": "react-sample-sample-doc-link",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-link.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-link.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-link.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-link-mark-view",
      "title": "react-sample-sample-doc-link-mark-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-link-mark-view.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-link-mark-view.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-link-mark-view.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-list",
      "title": "react-sample-sample-doc-list",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-list.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-list.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-list.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-list-custom-checkbox",
      "title": "react-sample-sample-doc-list-custom-checkbox",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-list-custom-checkbox.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-list-custom-checkbox.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-list-custom-checkbox.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-notion",
      "title": "react-sample-sample-doc-notion",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-notion.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-notion.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-notion.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-page",
      "title": "react-sample-sample-doc-page",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-page.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-page.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-page.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-readonly",
      "title": "react-sample-sample-doc-readonly",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-readonly.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-readonly.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-readonly.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-rtl",
      "title": "react-sample-sample-doc-rtl",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-rtl.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-rtl.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-rtl.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-search",
      "title": "react-sample-sample-doc-search",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-search.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-search.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-search.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-strike",
      "title": "react-sample-sample-doc-strike",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-strike.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-strike.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-strike.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-sub-sup",
      "title": "react-sample-sample-doc-sub-sup",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-sub-sup.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-sub-sup.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-sub-sup.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-table",
      "title": "react-sample-sample-doc-table",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-table.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-table.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-table.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-tex",
      "title": "react-sample-sample-doc-tex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-tex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-tex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-tex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-text-align",
      "title": "react-sample-sample-doc-text-align",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-text-align.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-text-align.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-text-align.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-text-color",
      "title": "react-sample-sample-doc-text-color",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-text-color.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-text-color.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-text-color.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-tweet",
      "title": "react-sample-sample-doc-tweet",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-tweet.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-tweet.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-tweet.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-typography",
      "title": "react-sample-sample-doc-typography",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-typography.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-typography.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-typography.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-underline",
      "title": "react-sample-sample-doc-underline",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-underline.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-underline.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-underline.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-view-adapter",
      "title": "react-sample-sample-doc-view-adapter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-view-adapter.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-view-adapter.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-view-adapter.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-doc-word-counter",
      "title": "react-sample-sample-doc-word-counter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-doc-word-counter.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-word-counter.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-doc-word-counter.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-query-users",
      "title": "react-sample-sample-query-users",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-sample-sample-user-data.json"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/react/sample/sample-query-users.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-query-users.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-query-users.ts",
          "registry/src/react/sample/sample-user-data.ts"
        ],
        "internalDependencies": [
          "react-sample-sample-user-data"
        ]
      }
    },
    {
      "name": "react-sample-sample-tag-data",
      "title": "react-sample-sample-tag-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/react/sample/sample-tag-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-tag-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-tag-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-uploader",
      "title": "react-sample-sample-uploader",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/sample/sample-uploader.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-uploader.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-uploader.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-sample-sample-user-data",
      "title": "react-sample-sample-user-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/react/sample/sample-user-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-user-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/sample/sample-user-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-ui-block-handle",
      "title": "react-ui-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/block-handle/block-handle.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/block-handle.tsx"
        },
        {
          "path": "registry/src/react/ui/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/block-handle/block-handle.tsx",
          "registry/src/react/ui/block-handle/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "react-ui-button",
      "title": "react-ui-button",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/button/button.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/button/button.tsx"
        },
        {
          "path": "registry/src/react/ui/button/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/button/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-ui-code-block-view",
      "title": "react-ui-code-block-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "beautiful-mermaid",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/code-block-view/code-block-view.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/code-block-view.tsx"
        },
        {
          "path": "registry/src/react/ui/code-block-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/code-block-view/code-block-view.tsx",
          "registry/src/react/ui/code-block-view/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-ui-drop-indicator",
      "title": "react-ui-drop-indicator",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/drop-indicator/drop-indicator.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/drop-indicator.tsx"
        },
        {
          "path": "registry/src/react/ui/drop-indicator/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/react/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-ui-image-upload-popover",
      "title": "react-ui-image-upload-popover",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/image-upload-popover.tsx"
        },
        {
          "path": "registry/src/react/ui/image-upload-popover/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts"
        ],
        "internalDependencies": [
          "react-ui-button"
        ]
      }
    },
    {
      "name": "react-ui-image-view",
      "title": "react-ui-image-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/image-view/image-view.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/image-view.tsx"
        },
        {
          "path": "registry/src/react/ui/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/image-view/image-view.tsx",
          "registry/src/react/ui/image-view/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "react-ui-inline-menu",
      "title": "react-ui-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/index.ts"
        },
        {
          "path": "registry/src/react/ui/inline-menu/inline-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/inline-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/inline-menu/index.ts",
          "registry/src/react/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "react-ui-button"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "react-ui-search",
      "title": "react-ui-search",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/search/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/search/index.ts"
        },
        {
          "path": "registry/src/react/ui/search/search.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/search/search.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/search/index.ts",
          "registry/src/react/ui/search/search.tsx"
        ],
        "internalDependencies": [
          "react-ui-button"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "react-ui-slash-menu",
      "title": "react-ui-slash-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/index.ts"
        },
        {
          "path": "registry/src/react/ui/slash-menu/slash-menu-empty.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-empty.tsx"
        },
        {
          "path": "registry/src/react/ui/slash-menu/slash-menu-item.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-item.tsx"
        },
        {
          "path": "registry/src/react/ui/slash-menu/slash-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/slash-menu/index.ts",
          "registry/src/react/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/react/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/react/ui/slash-menu/slash-menu.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-ui-table-handle",
      "title": "react-ui-table-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/table-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/index.ts"
        },
        {
          "path": "registry/src/react/ui/table-handle/table-handle.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/table-handle.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/table-handle/index.ts",
          "registry/src/react/ui/table-handle/table-handle.tsx"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "react-ui-tag-menu",
      "title": "react-ui-tag-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/tag-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/index.ts"
        },
        {
          "path": "registry/src/react/ui/tag-menu/tag-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/tag-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/tag-menu/index.ts",
          "registry/src/react/ui/tag-menu/tag-menu.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-ui-toolbar",
      "title": "react-ui-toolbar",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-button.json",
        "https://unpkg.com/prosekit-registry/dist/r/react-ui-image-upload-popover.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/index.ts"
        },
        {
          "path": "registry/src/react/ui/toolbar/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/button/button.tsx",
          "registry/src/react/ui/button/index.ts",
          "registry/src/react/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/react/ui/image-upload-popover/index.ts",
          "registry/src/react/ui/toolbar/index.ts",
          "registry/src/react/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "react-ui-button",
          "react-ui-image-upload-popover"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "react-ui-user-menu",
      "title": "react-ui-user-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/index.ts"
        },
        {
          "path": "registry/src/react/ui/user-menu/user-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/user-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/user-menu/index.ts",
          "registry/src/react/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "react-ui-word-counter",
      "title": "react-ui-word-counter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/react/ui/word-counter/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/word-counter/index.ts"
        },
        {
          "path": "registry/src/react/ui/word-counter/word-counter.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/word-counter/word-counter.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "react",
        "accumulatedFiles": [
          "registry/src/react/ui/word-counter/index.ts",
          "registry/src/react/ui/word-counter/word-counter.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-example-block-handle",
      "title": "preact-example-block-handle",
      "type": "registry:block",
      "description": "A handle that appears on hover, allowing you to drag and re-order blocks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-drop-indicator.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/block-handle/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/block-handle/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "block-handle",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/block-handle/editor.tsx",
          "registry/src/preact/examples/block-handle/extension.ts",
          "registry/src/preact/examples/block-handle/index.ts",
          "registry/src/preact/sample/sample-doc-block-handle.ts",
          "registry/src/preact/ui/block-handle/block-handle.tsx",
          "registry/src/preact/ui/block-handle/index.ts",
          "registry/src/preact/ui/code-block-view/code-block-view.tsx",
          "registry/src/preact/ui/code-block-view/index.ts",
          "registry/src/preact/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/preact/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-block-handle",
          "preact-ui-block-handle",
          "preact-ui-code-block-view",
          "preact-ui-drop-indicator"
        ]
      }
    },
    {
      "name": "preact-example-blockquote",
      "title": "preact-example-blockquote",
      "type": "registry:block",
      "description": "Example for blockquote node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/blockquote/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/blockquote/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/blockquote/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "blockquote",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/blockquote/editor.tsx",
          "registry/src/preact/examples/blockquote/extension.ts",
          "registry/src/preact/examples/blockquote/index.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-bold",
      "title": "preact-example-bold",
      "type": "registry:block",
      "description": "Example for bold mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-bold.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/bold/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/bold/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/bold/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/bold/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/bold/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/bold/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "bold",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/bold/editor.tsx",
          "registry/src/preact/examples/bold/extension.ts",
          "registry/src/preact/examples/bold/index.ts",
          "registry/src/preact/sample/sample-doc-bold.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-bold",
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-change-tracking",
      "title": "preact-example-change-tracking",
      "type": "registry:block",
      "description": "Track and commit document changes with version history.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/change-tracking/editor-diff.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor-diff.tsx"
        },
        {
          "path": "registry/src/preact/examples/change-tracking/editor-main.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor-main.tsx"
        },
        {
          "path": "registry/src/preact/examples/change-tracking/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/change-tracking/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "change-tracking",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/change-tracking/editor-diff.tsx",
          "registry/src/preact/examples/change-tracking/editor-main.tsx",
          "registry/src/preact/examples/change-tracking/editor.tsx",
          "registry/src/preact/examples/change-tracking/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-example-code",
      "title": "preact-example-code",
      "type": "registry:block",
      "description": "Example for inline code mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-code.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/code/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/code/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/code/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/code/editor.tsx",
          "registry/src/preact/examples/code/extension.ts",
          "registry/src/preact/examples/code/index.ts",
          "registry/src/preact/sample/sample-doc-code.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-code",
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-code-block",
      "title": "preact-example-code-block",
      "type": "registry:block",
      "description": "Code block with syntax highlighting and a Mermaid diagram preview.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/code-block/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/code-block/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/code-block/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/code-block/editor.tsx",
          "registry/src/preact/examples/code-block/extension.ts",
          "registry/src/preact/examples/code-block/index.ts",
          "registry/src/preact/sample/sample-doc-code-block.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/code-block-view/code-block-view.tsx",
          "registry/src/preact/ui/code-block-view/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-code-block",
          "preact-ui-code-block-view",
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-code-block-themes",
      "title": "preact-example-code-block-themes",
      "type": "registry:block",
      "description": "Code block with multiple syntax highlighting themes.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-code-block-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/code-block-themes/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/code-block-themes/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/code-block-themes/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/index.ts"
        },
        {
          "path": "registry/src/preact/examples/code-block-themes/theme-selector.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/theme-selector.tsx"
        },
        {
          "path": "registry/src/preact/examples/code-block-themes/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block-themes",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/code-block-themes/editor.tsx",
          "registry/src/preact/examples/code-block-themes/extension.ts",
          "registry/src/preact/examples/code-block-themes/index.ts",
          "registry/src/preact/examples/code-block-themes/theme-selector.tsx",
          "registry/src/preact/examples/code-block-themes/toolbar.tsx",
          "registry/src/preact/sample/sample-doc-code-block.ts",
          "registry/src/preact/ui/code-block-view/code-block-view.tsx",
          "registry/src/preact/ui/code-block-view/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-code-block",
          "preact-ui-code-block-view"
        ]
      }
    },
    {
      "name": "preact-example-drop-cursor",
      "title": "preact-example-drop-cursor",
      "type": "registry:block",
      "description": "Visual cursor indicator during drag-and-drop operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-drop-cursor.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/drop-cursor/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/drop-cursor/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/drop-cursor/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "drop-cursor",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/drop-cursor/editor.tsx",
          "registry/src/preact/examples/drop-cursor/extension.ts",
          "registry/src/preact/examples/drop-cursor/index.ts",
          "registry/src/preact/sample/sample-doc-drop-cursor.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-drop-cursor"
        ]
      }
    },
    {
      "name": "preact-example-emoji-rules",
      "title": "preact-example-emoji-rules",
      "type": "registry:block",
      "description": "Auto-convert text shortcuts to emojis using input rules.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/emoji-rules/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/emoji-rules/emoji.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/emoji.ts"
        },
        {
          "path": "registry/src/preact/examples/emoji-rules/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/emoji-rules/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "emoji-rules",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/emoji-rules/editor.tsx",
          "registry/src/preact/examples/emoji-rules/emoji.ts",
          "registry/src/preact/examples/emoji-rules/extension.ts",
          "registry/src/preact/examples/emoji-rules/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-example-font-family",
      "title": "preact-example-font-family",
      "type": "registry:block",
      "description": "Change the font family of text.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-font-family.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/font-family/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/font-family/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/font-family/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/index.ts"
        },
        {
          "path": "registry/src/preact/examples/font-family/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "font-family",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/font-family/editor.tsx",
          "registry/src/preact/examples/font-family/extension.ts",
          "registry/src/preact/examples/font-family/index.ts",
          "registry/src/preact/examples/font-family/toolbar.tsx",
          "registry/src/preact/sample/sample-doc-font-family.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-font-family"
        ]
      }
    },
    {
      "name": "preact-example-full",
      "title": "preact-example-full",
      "type": "registry:block",
      "description": "Full-featured editor with most available features enabled.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-full.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-image-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/full/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/full/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/full/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/full/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "full",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/full/editor.tsx",
          "registry/src/preact/examples/full/extension.ts",
          "registry/src/preact/examples/full/index.ts",
          "registry/src/preact/sample/katex.ts",
          "registry/src/preact/sample/sample-doc-full.ts",
          "registry/src/preact/sample/sample-tag-data.ts",
          "registry/src/preact/sample/sample-uploader.ts",
          "registry/src/preact/sample/sample-user-data.ts",
          "registry/src/preact/ui/block-handle/block-handle.tsx",
          "registry/src/preact/ui/block-handle/index.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/code-block-view/code-block-view.tsx",
          "registry/src/preact/ui/code-block-view/index.ts",
          "registry/src/preact/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/preact/ui/drop-indicator/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/image-view/image-view.tsx",
          "registry/src/preact/ui/image-view/index.ts",
          "registry/src/preact/ui/inline-menu/index.ts",
          "registry/src/preact/ui/inline-menu/inline-menu.tsx",
          "registry/src/preact/ui/slash-menu/index.ts",
          "registry/src/preact/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/preact/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/preact/ui/slash-menu/slash-menu.tsx",
          "registry/src/preact/ui/table-handle/index.ts",
          "registry/src/preact/ui/table-handle/table-handle.tsx",
          "registry/src/preact/ui/tag-menu/index.ts",
          "registry/src/preact/ui/tag-menu/tag-menu.tsx",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx",
          "registry/src/preact/ui/user-menu/index.ts",
          "registry/src/preact/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": [
          "preact-sample-katex",
          "preact-sample-sample-doc-full",
          "preact-sample-sample-tag-data",
          "preact-sample-sample-uploader",
          "preact-sample-sample-user-data",
          "preact-ui-block-handle",
          "preact-ui-code-block-view",
          "preact-ui-drop-indicator",
          "preact-ui-image-view",
          "preact-ui-inline-menu",
          "preact-ui-slash-menu",
          "preact-ui-table-handle",
          "preact-ui-tag-menu",
          "preact-ui-toolbar",
          "preact-ui-user-menu"
        ]
      }
    },
    {
      "name": "preact-example-gap-cursor",
      "title": "preact-example-gap-cursor",
      "type": "registry:block",
      "description": "Cursor navigation between non-text block elements.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-gap-cursor.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/gap-cursor/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/gap-cursor/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/gap-cursor/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "gap-cursor",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/gap-cursor/editor.tsx",
          "registry/src/preact/examples/gap-cursor/extension.ts",
          "registry/src/preact/examples/gap-cursor/index.ts",
          "registry/src/preact/sample/sample-doc-gap-cursor.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-gap-cursor"
        ]
      }
    },
    {
      "name": "preact-example-hard-break",
      "title": "preact-example-hard-break",
      "type": "registry:block",
      "description": "Example for hard line break node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-hard-break.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/hard-break/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/hard-break/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/hard-break/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/index.ts"
        },
        {
          "path": "registry/src/preact/examples/hard-break/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "hard-break",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/hard-break/editor.tsx",
          "registry/src/preact/examples/hard-break/extension.ts",
          "registry/src/preact/examples/hard-break/index.ts",
          "registry/src/preact/examples/hard-break/toolbar.tsx",
          "registry/src/preact/sample/sample-doc-hard-break.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-hard-break",
          "preact-ui-button"
        ]
      }
    },
    {
      "name": "preact-example-heading",
      "title": "preact-example-heading",
      "type": "registry:block",
      "description": "Example for heading node with multiple levels.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-heading.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/heading/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/heading/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/heading/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/heading/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/heading/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/heading/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "heading",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/heading/editor.tsx",
          "registry/src/preact/examples/heading/extension.ts",
          "registry/src/preact/examples/heading/index.ts",
          "registry/src/preact/sample/sample-doc-heading.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-heading",
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-highlight",
      "title": "preact-example-highlight",
      "type": "registry:block",
      "description": "Example for highlighting text (like a highlighter pen).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-highlight.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/highlight/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/highlight/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/highlight/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/index.ts"
        },
        {
          "path": "registry/src/preact/examples/highlight/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "highlight",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/highlight/editor.tsx",
          "registry/src/preact/examples/highlight/extension.ts",
          "registry/src/preact/examples/highlight/index.ts",
          "registry/src/preact/examples/highlight/toolbar.tsx",
          "registry/src/preact/sample/sample-doc-highlight.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-highlight",
          "preact-ui-button"
        ]
      }
    },
    {
      "name": "preact-example-horizontal-rule",
      "title": "preact-example-horizontal-rule",
      "type": "registry:block",
      "description": "Example for horizontal rule node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/horizontal-rule/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/horizontal-rule/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/horizontal-rule/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "horizontal-rule",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/horizontal-rule/editor.tsx",
          "registry/src/preact/examples/horizontal-rule/extension.ts",
          "registry/src/preact/examples/horizontal-rule/index.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-image-view",
      "title": "preact-example-image-view",
      "type": "registry:block",
      "description": "Custom image node views with resize support.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-image.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-image-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/image-view/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/image-view/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "image-view",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/image-view/editor.tsx",
          "registry/src/preact/examples/image-view/extension.ts",
          "registry/src/preact/examples/image-view/index.ts",
          "registry/src/preact/sample/sample-doc-image.ts",
          "registry/src/preact/sample/sample-uploader.ts",
          "registry/src/preact/ui/image-view/image-view.tsx",
          "registry/src/preact/ui/image-view/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-image",
          "preact-sample-sample-uploader",
          "preact-ui-image-view"
        ]
      }
    },
    {
      "name": "preact-example-inline-menu",
      "title": "preact-example-inline-menu",
      "type": "registry:block",
      "description": "Inline formatting menu that appears on text selection.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/inline-menu/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/inline-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "inline-menu",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/inline-menu/editor.tsx",
          "registry/src/preact/examples/inline-menu/extension.ts",
          "registry/src/preact/examples/inline-menu/index.ts",
          "registry/src/preact/sample/sample-doc-inline-menu.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/inline-menu/index.ts",
          "registry/src/preact/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-inline-menu",
          "preact-ui-inline-menu"
        ]
      }
    },
    {
      "name": "preact-example-italic",
      "title": "preact-example-italic",
      "type": "registry:block",
      "description": "Example for italic mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-italic.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/italic/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/italic/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/italic/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/italic/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/italic/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/italic/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "italic",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/italic/editor.tsx",
          "registry/src/preact/examples/italic/extension.ts",
          "registry/src/preact/examples/italic/index.ts",
          "registry/src/preact/sample/sample-doc-italic.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-italic",
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-katex",
      "title": "preact-example-katex",
      "type": "registry:block",
      "description": "Math equation rendering using the KaTeX library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-tex.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/katex/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/katex/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/katex/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/katex/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/katex/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/katex/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "katex",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/katex/editor.tsx",
          "registry/src/preact/examples/katex/extension.ts",
          "registry/src/preact/examples/katex/index.ts",
          "registry/src/preact/sample/katex.ts",
          "registry/src/preact/sample/sample-doc-tex.ts"
        ],
        "internalDependencies": [
          "preact-sample-katex",
          "preact-sample-sample-doc-tex"
        ]
      }
    },
    {
      "name": "preact-example-keymap",
      "title": "preact-example-keymap",
      "type": "registry:block",
      "description": "Custom keyboard shortcuts and key bindings.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/keymap/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/keymap/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/keymap/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/index.ts"
        },
        {
          "path": "registry/src/preact/examples/keymap/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/toolbar.tsx"
        },
        {
          "path": "registry/src/preact/examples/keymap/use-submit-keymap.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/use-submit-keymap.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "keymap",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/keymap/editor.tsx",
          "registry/src/preact/examples/keymap/extension.ts",
          "registry/src/preact/examples/keymap/index.ts",
          "registry/src/preact/examples/keymap/toolbar.tsx",
          "registry/src/preact/examples/keymap/use-submit-keymap.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts"
        ],
        "internalDependencies": [
          "preact-ui-button"
        ]
      }
    },
    {
      "name": "preact-example-link",
      "title": "preact-example-link",
      "type": "registry:block",
      "description": "Example for link mark with URL input.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-link.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/link/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/link/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/link/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/link/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "link",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/link/editor.tsx",
          "registry/src/preact/examples/link/extension.ts",
          "registry/src/preact/examples/link/index.ts",
          "registry/src/preact/sample/sample-doc-link.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/inline-menu/index.ts",
          "registry/src/preact/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-link",
          "preact-ui-inline-menu"
        ]
      }
    },
    {
      "name": "preact-example-link-mark-view",
      "title": "preact-example-link-mark-view",
      "type": "registry:block",
      "description": "An example showing how to render a mark as a custom component.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-link-mark-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/link-mark-view/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/link-mark-view/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/link-mark-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/index.ts"
        },
        {
          "path": "registry/src/preact/examples/link-mark-view/link-view.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/link-view.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "link-mark-view",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/link-mark-view/editor.tsx",
          "registry/src/preact/examples/link-mark-view/extension.ts",
          "registry/src/preact/examples/link-mark-view/index.ts",
          "registry/src/preact/examples/link-mark-view/link-view.tsx",
          "registry/src/preact/sample/sample-doc-link-mark-view.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-link-mark-view"
        ]
      }
    },
    {
      "name": "preact-example-list",
      "title": "preact-example-list",
      "type": "registry:block",
      "description": "Example for list node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-list.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/list/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/list/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/list/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/list/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "list",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/list/editor.tsx",
          "registry/src/preact/examples/list/extension.ts",
          "registry/src/preact/examples/list/index.ts",
          "registry/src/preact/sample/sample-doc-list.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-list",
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-list-custom-checkbox",
      "title": "preact-example-list-custom-checkbox",
      "type": "registry:block",
      "description": "Custom checkbox styling for task lists.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-list-custom-checkbox.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/list-custom-checkbox/custom-list.css",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/custom-list.css"
        },
        {
          "path": "registry/src/preact/examples/list-custom-checkbox/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/list-custom-checkbox/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/list-custom-checkbox/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "list-custom-checkbox",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/list-custom-checkbox/custom-list.css",
          "registry/src/preact/examples/list-custom-checkbox/editor.tsx",
          "registry/src/preact/examples/list-custom-checkbox/extension.ts",
          "registry/src/preact/examples/list-custom-checkbox/index.ts",
          "registry/src/preact/sample/sample-doc-list-custom-checkbox.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-list-custom-checkbox",
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-loro",
      "title": "preact-example-loro",
      "type": "registry:block",
      "description": "Real-time collaboration using Loro CRDT library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "loro-crdt",
        "loro-prosemirror",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/loro/editor-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/loro/editor-component.tsx"
        },
        {
          "path": "registry/src/preact/examples/loro/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/loro/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/loro/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/loro/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/loro/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/loro/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "loro",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/loro/editor-component.tsx",
          "registry/src/preact/examples/loro/editor.tsx",
          "registry/src/preact/examples/loro/extension.ts",
          "registry/src/preact/examples/loro/index.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-mark-rule",
      "title": "preact-example-mark-rule",
      "type": "registry:block",
      "description": "Input rules for automatic mark formatting.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/mark-rule/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/mark-rule/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/mark-rule/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/index.ts"
        },
        {
          "path": "registry/src/preact/examples/mark-rule/issue-link.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/issue-link.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "mark-rule",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/mark-rule/editor.tsx",
          "registry/src/preact/examples/mark-rule/extension.ts",
          "registry/src/preact/examples/mark-rule/index.ts",
          "registry/src/preact/examples/mark-rule/issue-link.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-example-minimal",
      "title": "preact-example-minimal",
      "type": "registry:block",
      "description": "Minimal editor setup with basic functionality.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/minimal/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/minimal/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "minimal",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/minimal/editor.tsx",
          "registry/src/preact/examples/minimal/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-example-placeholder",
      "title": "preact-example-placeholder",
      "type": "registry:block",
      "description": "Placeholder text displayed.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/placeholder/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/placeholder/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/placeholder/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "placeholder",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/placeholder/editor.tsx",
          "registry/src/preact/examples/placeholder/extension.ts",
          "registry/src/preact/examples/placeholder/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-example-readonly",
      "title": "preact-example-readonly",
      "type": "registry:block",
      "description": "Toggle between read-only and editable mode.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-readonly.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/readonly/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/readonly/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/readonly/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/index.ts"
        },
        {
          "path": "registry/src/preact/examples/readonly/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/toolbar.tsx"
        },
        {
          "path": "registry/src/preact/examples/readonly/use-readonly.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/use-readonly.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "readonly",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/readonly/editor.tsx",
          "registry/src/preact/examples/readonly/extension.ts",
          "registry/src/preact/examples/readonly/index.ts",
          "registry/src/preact/examples/readonly/toolbar.tsx",
          "registry/src/preact/examples/readonly/use-readonly.ts",
          "registry/src/preact/sample/sample-doc-readonly.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-readonly",
          "preact-ui-button"
        ]
      }
    },
    {
      "name": "preact-example-rtl",
      "title": "preact-example-rtl",
      "type": "registry:block",
      "description": "Right-to-left text direction support.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-rtl.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/rtl/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/rtl/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/rtl/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/rtl/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "rtl",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/rtl/editor.tsx",
          "registry/src/preact/examples/rtl/index.ts",
          "registry/src/preact/sample/sample-doc-rtl.ts",
          "registry/src/preact/sample/sample-uploader.ts",
          "registry/src/preact/ui/block-handle/block-handle.tsx",
          "registry/src/preact/ui/block-handle/index.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/preact/ui/drop-indicator/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/inline-menu/index.ts",
          "registry/src/preact/ui/inline-menu/inline-menu.tsx",
          "registry/src/preact/ui/slash-menu/index.ts",
          "registry/src/preact/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/preact/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/preact/ui/slash-menu/slash-menu.tsx",
          "registry/src/preact/ui/table-handle/index.ts",
          "registry/src/preact/ui/table-handle/table-handle.tsx",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-rtl",
          "preact-sample-sample-uploader",
          "preact-ui-block-handle",
          "preact-ui-drop-indicator",
          "preact-ui-inline-menu",
          "preact-ui-slash-menu",
          "preact-ui-table-handle",
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-save-html",
      "title": "preact-example-save-html",
      "type": "registry:block",
      "description": "Save and load documents as HTML format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/save-html/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/save-html/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/save-html/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-html/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-html",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/save-html/editor.tsx",
          "registry/src/preact/examples/save-html/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-example-save-json",
      "title": "preact-example-save-json",
      "type": "registry:block",
      "description": "Save and load documents as JSON format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/save-json/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/save-json/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/save-json/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-json/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-json",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/save-json/editor.tsx",
          "registry/src/preact/examples/save-json/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-example-save-markdown",
      "title": "preact-example-save-markdown",
      "type": "registry:block",
      "description": "Save and load documents as Markdown format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3",
        "rehype-parse",
        "rehype-remark",
        "remark-gfm",
        "remark-html",
        "remark-parse",
        "remark-stringify",
        "unified"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/save-markdown/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/save-markdown/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/index.ts"
        },
        {
          "path": "registry/src/preact/examples/save-markdown/markdown.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/markdown.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-markdown",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/save-markdown/editor.tsx",
          "registry/src/preact/examples/save-markdown/index.ts",
          "registry/src/preact/examples/save-markdown/markdown.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-example-search",
      "title": "preact-example-search",
      "type": "registry:block",
      "description": "Search and highlight text with navigation.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-search.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-search.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/search/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/search/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/search/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/search/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/search/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/search/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "search",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/search/editor.tsx",
          "registry/src/preact/examples/search/extension.ts",
          "registry/src/preact/examples/search/index.ts",
          "registry/src/preact/sample/sample-doc-search.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/search/index.ts",
          "registry/src/preact/ui/search/search.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-search",
          "preact-ui-search"
        ]
      }
    },
    {
      "name": "preact-example-slash-menu",
      "title": "preact-example-slash-menu",
      "type": "registry:block",
      "description": "Command menu triggered by typing slash (/).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-slash-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/slash-menu/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/slash-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "slash-menu",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/slash-menu/editor.tsx",
          "registry/src/preact/examples/slash-menu/extension.ts",
          "registry/src/preact/examples/slash-menu/index.ts",
          "registry/src/preact/ui/slash-menu/index.ts",
          "registry/src/preact/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/preact/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/preact/ui/slash-menu/slash-menu.tsx"
        ],
        "internalDependencies": [
          "preact-ui-slash-menu"
        ]
      }
    },
    {
      "name": "preact-example-strike",
      "title": "preact-example-strike",
      "type": "registry:block",
      "description": "Example for strikethrough mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-strike.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/strike/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/strike/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/strike/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/strike/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/strike/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/strike/index.ts"
        },
        {
          "path": "registry/src/preact/examples/strike/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/strike/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "strike",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/strike/editor.tsx",
          "registry/src/preact/examples/strike/extension.ts",
          "registry/src/preact/examples/strike/index.ts",
          "registry/src/preact/examples/strike/toolbar.tsx",
          "registry/src/preact/sample/sample-doc-strike.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-strike",
          "preact-ui-button"
        ]
      }
    },
    {
      "name": "preact-example-sub-sup",
      "title": "preact-example-sub-sup",
      "type": "registry:block",
      "description": "Example for subscript and superscript marks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-sub-sup.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/sub-sup/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/sub-sup/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/sub-sup/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/index.ts"
        },
        {
          "path": "registry/src/preact/examples/sub-sup/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "sub-sup",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/sub-sup/editor.tsx",
          "registry/src/preact/examples/sub-sup/extension.ts",
          "registry/src/preact/examples/sub-sup/index.ts",
          "registry/src/preact/examples/sub-sup/toolbar.tsx",
          "registry/src/preact/sample/sample-doc-sub-sup.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-sub-sup",
          "preact-ui-button"
        ]
      }
    },
    {
      "name": "preact-example-table",
      "title": "preact-example-table",
      "type": "registry:block",
      "description": "Table node with row and column operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-table.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-table-handle.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/table/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/table/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/table/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/table/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "table",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/table/editor.tsx",
          "registry/src/preact/examples/table/extension.ts",
          "registry/src/preact/examples/table/index.ts",
          "registry/src/preact/sample/sample-doc-table.ts",
          "registry/src/preact/ui/table-handle/index.ts",
          "registry/src/preact/ui/table-handle/table-handle.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-table",
          "preact-ui-table-handle"
        ]
      }
    },
    {
      "name": "preact-example-text-align",
      "title": "preact-example-text-align",
      "type": "registry:block",
      "description": "Text alignment options (left, center, right, justify).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-text-align.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/text-align/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/text-align/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/text-align/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/index.ts"
        },
        {
          "path": "registry/src/preact/examples/text-align/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "text-align",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/text-align/editor.tsx",
          "registry/src/preact/examples/text-align/extension.ts",
          "registry/src/preact/examples/text-align/index.ts",
          "registry/src/preact/examples/text-align/toolbar.tsx",
          "registry/src/preact/sample/sample-doc-text-align.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-text-align",
          "preact-ui-button"
        ]
      }
    },
    {
      "name": "preact-example-text-color",
      "title": "preact-example-text-color",
      "type": "registry:block",
      "description": "Change text and background color.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-text-color.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/text-color/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/text-color/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/text-color/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/index.ts"
        },
        {
          "path": "registry/src/preact/examples/text-color/inline-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/inline-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "text-color",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/text-color/editor.tsx",
          "registry/src/preact/examples/text-color/extension.ts",
          "registry/src/preact/examples/text-color/index.ts",
          "registry/src/preact/examples/text-color/inline-menu.tsx",
          "registry/src/preact/sample/sample-doc-text-color.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-text-color",
          "preact-ui-button"
        ]
      }
    },
    {
      "name": "preact-example-toolbar",
      "title": "preact-example-toolbar",
      "type": "registry:block",
      "description": "Formatting toolbar with common editing actions.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/toolbar/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/toolbar/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "toolbar",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/toolbar/editor.tsx",
          "registry/src/preact/examples/toolbar/extension.ts",
          "registry/src/preact/examples/toolbar/index.ts",
          "registry/src/preact/sample/sample-uploader.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-uploader",
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-typography",
      "title": "preact-example-typography",
      "type": "registry:block",
      "description": "Typography enhancements like smart quotes and dashes.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-typography.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-drop-indicator.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/typography/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/typography/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/typography/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/typography/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/typography/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/typography/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "typography",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/typography/editor.tsx",
          "registry/src/preact/examples/typography/extension.ts",
          "registry/src/preact/examples/typography/index.ts",
          "registry/src/preact/sample/katex.ts",
          "registry/src/preact/sample/sample-doc-typography.ts",
          "registry/src/preact/ui/block-handle/block-handle.tsx",
          "registry/src/preact/ui/block-handle/index.ts",
          "registry/src/preact/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/preact/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": [
          "preact-sample-katex",
          "preact-sample-sample-doc-typography",
          "preact-ui-block-handle",
          "preact-ui-drop-indicator"
        ]
      }
    },
    {
      "name": "preact-example-underline",
      "title": "preact-example-underline",
      "type": "registry:block",
      "description": "Example for underline mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-underline.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/underline/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/underline/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/underline/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/underline/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/underline/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/underline/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "underline",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/underline/editor.tsx",
          "registry/src/preact/examples/underline/extension.ts",
          "registry/src/preact/examples/underline/index.ts",
          "registry/src/preact/sample/sample-doc-underline.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-underline",
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-example-unmount",
      "title": "preact-example-unmount",
      "type": "registry:block",
      "description": "Properly unmount and remount editor instances.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/unmount/editor-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/editor-component.tsx"
        },
        {
          "path": "registry/src/preact/examples/unmount/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/unmount/extension-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/extension-component.tsx"
        },
        {
          "path": "registry/src/preact/examples/unmount/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "unmount",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/unmount/editor-component.tsx",
          "registry/src/preact/examples/unmount/editor.tsx",
          "registry/src/preact/examples/unmount/extension-component.tsx",
          "registry/src/preact/examples/unmount/index.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/inline-menu/index.ts",
          "registry/src/preact/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "preact-ui-inline-menu"
        ]
      }
    },
    {
      "name": "preact-example-user-menu",
      "title": "preact-example-user-menu",
      "type": "registry:block",
      "description": "Autocomplete menu for @mentions and #hashtag",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/user-menu/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/user-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "user-menu",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/user-menu/editor.tsx",
          "registry/src/preact/examples/user-menu/extension.ts",
          "registry/src/preact/examples/user-menu/index.ts",
          "registry/src/preact/sample/sample-tag-data.ts",
          "registry/src/preact/sample/sample-user-data.ts",
          "registry/src/preact/ui/tag-menu/index.ts",
          "registry/src/preact/ui/tag-menu/tag-menu.tsx",
          "registry/src/preact/ui/user-menu/index.ts",
          "registry/src/preact/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-tag-data",
          "preact-sample-sample-user-data",
          "preact-ui-tag-menu",
          "preact-ui-user-menu"
        ]
      }
    },
    {
      "name": "preact-example-user-menu-dynamic",
      "title": "preact-example-user-menu-dynamic",
      "type": "registry:block",
      "description": "Dynamic autocomplete menu with async data loading.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-query-users.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/user-menu-dynamic/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/user-menu-dynamic/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/user-menu-dynamic/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/index.ts"
        },
        {
          "path": "registry/src/preact/examples/user-menu-dynamic/use-user-query.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/use-user-query.ts"
        },
        {
          "path": "registry/src/preact/examples/user-menu-dynamic/user-menu-dynamic.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/user-menu-dynamic.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "user-menu-dynamic",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/user-menu-dynamic/editor.tsx",
          "registry/src/preact/examples/user-menu-dynamic/extension.ts",
          "registry/src/preact/examples/user-menu-dynamic/index.ts",
          "registry/src/preact/examples/user-menu-dynamic/use-user-query.ts",
          "registry/src/preact/examples/user-menu-dynamic/user-menu-dynamic.tsx",
          "registry/src/preact/sample/sample-query-users.ts",
          "registry/src/preact/sample/sample-user-data.ts",
          "registry/src/preact/ui/user-menu/index.ts",
          "registry/src/preact/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-query-users",
          "preact-ui-user-menu"
        ]
      }
    },
    {
      "name": "preact-example-view-adapter",
      "title": "preact-example-view-adapter",
      "type": "registry:block",
      "description": "Custom node and mark views using view adapters.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-define-atom-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-view-adapter.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/view-adapter/atom-block-view.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/atom-block-view.tsx"
        },
        {
          "path": "registry/src/preact/examples/view-adapter/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/view-adapter/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/view-adapter/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": true,
        "story": "view-adapter",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/view-adapter/atom-block-view.tsx",
          "registry/src/preact/examples/view-adapter/editor.tsx",
          "registry/src/preact/examples/view-adapter/extension.ts",
          "registry/src/preact/examples/view-adapter/index.ts",
          "registry/src/preact/sample/define-atom-block.ts",
          "registry/src/preact/sample/sample-doc-view-adapter.ts"
        ],
        "internalDependencies": [
          "preact-sample-define-atom-block",
          "preact-sample-sample-doc-view-adapter"
        ]
      }
    },
    {
      "name": "preact-example-word-counter",
      "title": "preact-example-word-counter",
      "type": "registry:block",
      "description": "Display word and character count statistics.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-doc-word-counter.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-word-counter.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/word-counter/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/word-counter/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/word-counter/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "word-counter",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/word-counter/editor.tsx",
          "registry/src/preact/examples/word-counter/extension.ts",
          "registry/src/preact/examples/word-counter/index.ts",
          "registry/src/preact/sample/sample-doc-word-counter.ts",
          "registry/src/preact/ui/word-counter/index.ts",
          "registry/src/preact/ui/word-counter/word-counter.tsx"
        ],
        "internalDependencies": [
          "preact-sample-sample-doc-word-counter",
          "preact-ui-word-counter"
        ]
      }
    },
    {
      "name": "preact-example-yjs",
      "title": "preact-example-yjs",
      "type": "registry:block",
      "description": "Real-time collaboration using Yjs CRDT library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3",
        "y-websocket",
        "yjs"
      ],
      "files": [
        {
          "path": "registry/src/preact/examples/yjs/editor-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/editor-component.tsx"
        },
        {
          "path": "registry/src/preact/examples/yjs/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/editor.tsx"
        },
        {
          "path": "registry/src/preact/examples/yjs/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/extension.ts"
        },
        {
          "path": "registry/src/preact/examples/yjs/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "yjs",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/examples/yjs/editor-component.tsx",
          "registry/src/preact/examples/yjs/editor.tsx",
          "registry/src/preact/examples/yjs/extension.ts",
          "registry/src/preact/examples/yjs/index.ts",
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-ui-toolbar"
        ]
      }
    },
    {
      "name": "preact-sample-define-atom-block",
      "title": "preact-sample-define-atom-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/define-atom-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/define-atom-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/define-atom-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-katex",
      "title": "preact-sample-katex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "katex"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/katex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/katex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/katex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-block-handle",
      "title": "preact-sample-sample-doc-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-block-handle.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-block-handle.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-block-handle.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-bold",
      "title": "preact-sample-sample-doc-bold",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-bold.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-bold.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-bold.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-code",
      "title": "preact-sample-sample-doc-code",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-code.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-code.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-code-block",
      "title": "preact-sample-sample-doc-code-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-code-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-code-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-drop-cursor",
      "title": "preact-sample-sample-doc-drop-cursor",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-drop-cursor.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-drop-cursor.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-drop-cursor.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-font-family",
      "title": "preact-sample-sample-doc-font-family",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-font-family.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-font-family.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-font-family.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-full",
      "title": "preact-sample-sample-doc-full",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-full.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-full.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-full.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-gap-cursor",
      "title": "preact-sample-sample-doc-gap-cursor",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-gap-cursor.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-gap-cursor.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-gap-cursor.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-hard-break",
      "title": "preact-sample-sample-doc-hard-break",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-hard-break.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-hard-break.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-hard-break.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-heading",
      "title": "preact-sample-sample-doc-heading",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-heading.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-heading.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-heading.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-highlight",
      "title": "preact-sample-sample-doc-highlight",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-highlight.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-highlight.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-highlight.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-image",
      "title": "preact-sample-sample-doc-image",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-image.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-image.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-image.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-inline-menu",
      "title": "preact-sample-sample-doc-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-inline-menu.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-inline-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-inline-menu.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-italic",
      "title": "preact-sample-sample-doc-italic",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-italic.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-italic.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-italic.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-link",
      "title": "preact-sample-sample-doc-link",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-link.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-link.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-link.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-link-mark-view",
      "title": "preact-sample-sample-doc-link-mark-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-link-mark-view.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-link-mark-view.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-link-mark-view.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-list",
      "title": "preact-sample-sample-doc-list",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-list.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-list.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-list.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-list-custom-checkbox",
      "title": "preact-sample-sample-doc-list-custom-checkbox",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-list-custom-checkbox.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-list-custom-checkbox.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-list-custom-checkbox.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-readonly",
      "title": "preact-sample-sample-doc-readonly",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-readonly.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-readonly.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-readonly.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-rtl",
      "title": "preact-sample-sample-doc-rtl",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-rtl.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-rtl.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-rtl.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-search",
      "title": "preact-sample-sample-doc-search",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-search.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-search.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-search.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-strike",
      "title": "preact-sample-sample-doc-strike",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-strike.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-strike.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-strike.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-sub-sup",
      "title": "preact-sample-sample-doc-sub-sup",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-sub-sup.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-sub-sup.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-sub-sup.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-table",
      "title": "preact-sample-sample-doc-table",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-table.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-table.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-table.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-tex",
      "title": "preact-sample-sample-doc-tex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-tex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-tex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-tex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-text-align",
      "title": "preact-sample-sample-doc-text-align",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-text-align.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-text-align.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-text-align.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-text-color",
      "title": "preact-sample-sample-doc-text-color",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-text-color.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-text-color.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-text-color.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-typography",
      "title": "preact-sample-sample-doc-typography",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-typography.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-typography.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-typography.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-underline",
      "title": "preact-sample-sample-doc-underline",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-underline.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-underline.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-underline.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-view-adapter",
      "title": "preact-sample-sample-doc-view-adapter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-view-adapter.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-view-adapter.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-view-adapter.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-doc-word-counter",
      "title": "preact-sample-sample-doc-word-counter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-doc-word-counter.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-word-counter.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-doc-word-counter.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-query-users",
      "title": "preact-sample-sample-query-users",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-sample-sample-user-data.json"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-query-users.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-query-users.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-query-users.ts",
          "registry/src/preact/sample/sample-user-data.ts"
        ],
        "internalDependencies": [
          "preact-sample-sample-user-data"
        ]
      }
    },
    {
      "name": "preact-sample-sample-tag-data",
      "title": "preact-sample-sample-tag-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-tag-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-tag-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-tag-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-uploader",
      "title": "preact-sample-sample-uploader",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-uploader.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-uploader.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-uploader.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-sample-sample-user-data",
      "title": "preact-sample-sample-user-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/preact/sample/sample-user-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-user-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/sample/sample-user-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-ui-block-handle",
      "title": "preact-ui-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/block-handle/block-handle.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/block-handle.tsx"
        },
        {
          "path": "registry/src/preact/ui/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/block-handle/block-handle.tsx",
          "registry/src/preact/ui/block-handle/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "preact-ui-button",
      "title": "preact-ui-button",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/button/button.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/button/button.tsx"
        },
        {
          "path": "registry/src/preact/ui/button/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/button/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-ui-code-block-view",
      "title": "preact-ui-code-block-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "beautiful-mermaid",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/code-block-view/code-block-view.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/code-block-view.tsx"
        },
        {
          "path": "registry/src/preact/ui/code-block-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/code-block-view/code-block-view.tsx",
          "registry/src/preact/ui/code-block-view/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-ui-drop-indicator",
      "title": "preact-ui-drop-indicator",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/drop-indicator/drop-indicator.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/drop-indicator.tsx"
        },
        {
          "path": "registry/src/preact/ui/drop-indicator/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/preact/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-ui-image-upload-popover",
      "title": "preact-ui-image-upload-popover",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/image-upload-popover.tsx"
        },
        {
          "path": "registry/src/preact/ui/image-upload-popover/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts"
        ],
        "internalDependencies": [
          "preact-ui-button"
        ]
      }
    },
    {
      "name": "preact-ui-image-view",
      "title": "preact-ui-image-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/image-view/image-view.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/image-view.tsx"
        },
        {
          "path": "registry/src/preact/ui/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/image-view/image-view.tsx",
          "registry/src/preact/ui/image-view/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "preact-ui-inline-menu",
      "title": "preact-ui-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/index.ts"
        },
        {
          "path": "registry/src/preact/ui/inline-menu/inline-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/inline-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/inline-menu/index.ts",
          "registry/src/preact/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "preact-ui-button"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "preact-ui-search",
      "title": "preact-ui-search",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/search/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/search/index.ts"
        },
        {
          "path": "registry/src/preact/ui/search/search.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/search/search.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/search/index.ts",
          "registry/src/preact/ui/search/search.tsx"
        ],
        "internalDependencies": [
          "preact-ui-button"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "preact-ui-slash-menu",
      "title": "preact-ui-slash-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/index.ts"
        },
        {
          "path": "registry/src/preact/ui/slash-menu/slash-menu-empty.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-empty.tsx"
        },
        {
          "path": "registry/src/preact/ui/slash-menu/slash-menu-item.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-item.tsx"
        },
        {
          "path": "registry/src/preact/ui/slash-menu/slash-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/slash-menu/index.ts",
          "registry/src/preact/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/preact/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/preact/ui/slash-menu/slash-menu.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-ui-table-handle",
      "title": "preact-ui-table-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/table-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/index.ts"
        },
        {
          "path": "registry/src/preact/ui/table-handle/table-handle.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/table-handle.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/table-handle/index.ts",
          "registry/src/preact/ui/table-handle/table-handle.tsx"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "preact-ui-tag-menu",
      "title": "preact-ui-tag-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/tag-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/index.ts"
        },
        {
          "path": "registry/src/preact/ui/tag-menu/tag-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/tag-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/tag-menu/index.ts",
          "registry/src/preact/ui/tag-menu/tag-menu.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-ui-toolbar",
      "title": "preact-ui-toolbar",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-button.json",
        "https://unpkg.com/prosekit-registry/dist/r/preact-ui-image-upload-popover.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/index.ts"
        },
        {
          "path": "registry/src/preact/ui/toolbar/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/button/button.tsx",
          "registry/src/preact/ui/button/index.ts",
          "registry/src/preact/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/preact/ui/image-upload-popover/index.ts",
          "registry/src/preact/ui/toolbar/index.ts",
          "registry/src/preact/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "preact-ui-button",
          "preact-ui-image-upload-popover"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "preact-ui-user-menu",
      "title": "preact-ui-user-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/index.ts"
        },
        {
          "path": "registry/src/preact/ui/user-menu/user-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/user-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/user-menu/index.ts",
          "registry/src/preact/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "preact-ui-word-counter",
      "title": "preact-ui-word-counter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/preact/ui/word-counter/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/word-counter/index.ts"
        },
        {
          "path": "registry/src/preact/ui/word-counter/word-counter.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/word-counter/word-counter.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "preact",
        "accumulatedFiles": [
          "registry/src/preact/ui/word-counter/index.ts",
          "registry/src/preact/ui/word-counter/word-counter.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-example-block-handle",
      "title": "vue-example-block-handle",
      "type": "registry:block",
      "description": "A handle that appears on hover, allowing you to drag and re-order blocks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-drop-indicator.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/block-handle/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/block-handle/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "block-handle",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/block-handle/editor.vue",
          "registry/src/vue/examples/block-handle/extension.ts",
          "registry/src/vue/examples/block-handle/index.ts",
          "registry/src/vue/sample/sample-doc-block-handle.ts",
          "registry/src/vue/ui/block-handle/block-handle.vue",
          "registry/src/vue/ui/block-handle/index.ts",
          "registry/src/vue/ui/code-block-view/code-block-view.vue",
          "registry/src/vue/ui/code-block-view/index.ts",
          "registry/src/vue/ui/drop-indicator/drop-indicator.vue",
          "registry/src/vue/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-block-handle",
          "vue-ui-block-handle",
          "vue-ui-code-block-view",
          "vue-ui-drop-indicator"
        ]
      }
    },
    {
      "name": "vue-example-blockquote",
      "title": "vue-example-blockquote",
      "type": "registry:block",
      "description": "Example for blockquote node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/blockquote/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/blockquote/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/blockquote/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "blockquote",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/blockquote/editor.vue",
          "registry/src/vue/examples/blockquote/extension.ts",
          "registry/src/vue/examples/blockquote/index.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-bold",
      "title": "vue-example-bold",
      "type": "registry:block",
      "description": "Example for bold mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-bold.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/bold/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/bold/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/bold/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/bold/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/bold/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/bold/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "bold",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/bold/editor.vue",
          "registry/src/vue/examples/bold/extension.ts",
          "registry/src/vue/examples/bold/index.ts",
          "registry/src/vue/sample/sample-doc-bold.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-bold",
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-change-tracking",
      "title": "vue-example-change-tracking",
      "type": "registry:block",
      "description": "Track and commit document changes with version history.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/change-tracking/editor-diff.vue",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor-diff.vue"
        },
        {
          "path": "registry/src/vue/examples/change-tracking/editor-main.vue",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor-main.vue"
        },
        {
          "path": "registry/src/vue/examples/change-tracking/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/change-tracking/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "change-tracking",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/change-tracking/editor-diff.vue",
          "registry/src/vue/examples/change-tracking/editor-main.vue",
          "registry/src/vue/examples/change-tracking/editor.vue",
          "registry/src/vue/examples/change-tracking/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-example-code",
      "title": "vue-example-code",
      "type": "registry:block",
      "description": "Example for inline code mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-code.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/code/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/code/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/code/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/code/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/code/editor.vue",
          "registry/src/vue/examples/code/extension.ts",
          "registry/src/vue/examples/code/index.ts",
          "registry/src/vue/sample/sample-doc-code.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-code",
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-code-block",
      "title": "vue-example-code-block",
      "type": "registry:block",
      "description": "Code block with syntax highlighting and a Mermaid diagram preview.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/code-block/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/code-block/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/code-block/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/code-block/editor.vue",
          "registry/src/vue/examples/code-block/extension.ts",
          "registry/src/vue/examples/code-block/index.ts",
          "registry/src/vue/sample/sample-doc-code-block.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/code-block-view/code-block-view.vue",
          "registry/src/vue/ui/code-block-view/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-code-block",
          "vue-ui-code-block-view",
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-code-block-themes",
      "title": "vue-example-code-block-themes",
      "type": "registry:block",
      "description": "Code block with multiple syntax highlighting themes.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-code-block-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/code-block-themes/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/code-block-themes/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/code-block-themes/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/index.ts"
        },
        {
          "path": "registry/src/vue/examples/code-block-themes/theme-selector.vue",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/theme-selector.vue"
        },
        {
          "path": "registry/src/vue/examples/code-block-themes/toolbar.vue",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/toolbar.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block-themes",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/code-block-themes/editor.vue",
          "registry/src/vue/examples/code-block-themes/extension.ts",
          "registry/src/vue/examples/code-block-themes/index.ts",
          "registry/src/vue/examples/code-block-themes/theme-selector.vue",
          "registry/src/vue/examples/code-block-themes/toolbar.vue",
          "registry/src/vue/sample/sample-doc-code-block.ts",
          "registry/src/vue/ui/code-block-view/code-block-view.vue",
          "registry/src/vue/ui/code-block-view/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-code-block",
          "vue-ui-code-block-view"
        ]
      }
    },
    {
      "name": "vue-example-drop-cursor",
      "title": "vue-example-drop-cursor",
      "type": "registry:block",
      "description": "Visual cursor indicator during drag-and-drop operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-drop-cursor.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/drop-cursor/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/drop-cursor/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/drop-cursor/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "drop-cursor",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/drop-cursor/editor.vue",
          "registry/src/vue/examples/drop-cursor/extension.ts",
          "registry/src/vue/examples/drop-cursor/index.ts",
          "registry/src/vue/sample/sample-doc-drop-cursor.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-drop-cursor"
        ]
      }
    },
    {
      "name": "vue-example-emoji-rules",
      "title": "vue-example-emoji-rules",
      "type": "registry:block",
      "description": "Auto-convert text shortcuts to emojis using input rules.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/emoji-rules/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/emoji-rules/emoji.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/emoji.ts"
        },
        {
          "path": "registry/src/vue/examples/emoji-rules/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/emoji-rules/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "emoji-rules",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/emoji-rules/editor.vue",
          "registry/src/vue/examples/emoji-rules/emoji.ts",
          "registry/src/vue/examples/emoji-rules/extension.ts",
          "registry/src/vue/examples/emoji-rules/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-example-font-family",
      "title": "vue-example-font-family",
      "type": "registry:block",
      "description": "Change the font family of text.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-font-family.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/font-family/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/font-family/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/font-family/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/index.ts"
        },
        {
          "path": "registry/src/vue/examples/font-family/toolbar.vue",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/toolbar.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "font-family",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/font-family/editor.vue",
          "registry/src/vue/examples/font-family/extension.ts",
          "registry/src/vue/examples/font-family/index.ts",
          "registry/src/vue/examples/font-family/toolbar.vue",
          "registry/src/vue/sample/sample-doc-font-family.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-font-family"
        ]
      }
    },
    {
      "name": "vue-example-full",
      "title": "vue-example-full",
      "type": "registry:block",
      "description": "Full-featured editor with most available features enabled.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-full.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-image-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/full/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/full/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/full/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/full/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "full",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/full/editor.vue",
          "registry/src/vue/examples/full/extension.ts",
          "registry/src/vue/examples/full/index.ts",
          "registry/src/vue/sample/katex.ts",
          "registry/src/vue/sample/sample-doc-full.ts",
          "registry/src/vue/sample/sample-tag-data.ts",
          "registry/src/vue/sample/sample-uploader.ts",
          "registry/src/vue/sample/sample-user-data.ts",
          "registry/src/vue/ui/block-handle/block-handle.vue",
          "registry/src/vue/ui/block-handle/index.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/code-block-view/code-block-view.vue",
          "registry/src/vue/ui/code-block-view/index.ts",
          "registry/src/vue/ui/drop-indicator/drop-indicator.vue",
          "registry/src/vue/ui/drop-indicator/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/image-view/image-view.vue",
          "registry/src/vue/ui/image-view/index.ts",
          "registry/src/vue/ui/inline-menu/index.ts",
          "registry/src/vue/ui/inline-menu/inline-menu.vue",
          "registry/src/vue/ui/slash-menu/index.ts",
          "registry/src/vue/ui/slash-menu/slash-menu-empty.vue",
          "registry/src/vue/ui/slash-menu/slash-menu-item.vue",
          "registry/src/vue/ui/slash-menu/slash-menu.vue",
          "registry/src/vue/ui/table-handle/index.ts",
          "registry/src/vue/ui/table-handle/table-handle.vue",
          "registry/src/vue/ui/tag-menu/index.ts",
          "registry/src/vue/ui/tag-menu/tag-menu.vue",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue",
          "registry/src/vue/ui/user-menu/index.ts",
          "registry/src/vue/ui/user-menu/user-menu.vue"
        ],
        "internalDependencies": [
          "vue-sample-katex",
          "vue-sample-sample-doc-full",
          "vue-sample-sample-tag-data",
          "vue-sample-sample-uploader",
          "vue-sample-sample-user-data",
          "vue-ui-block-handle",
          "vue-ui-code-block-view",
          "vue-ui-drop-indicator",
          "vue-ui-image-view",
          "vue-ui-inline-menu",
          "vue-ui-slash-menu",
          "vue-ui-table-handle",
          "vue-ui-tag-menu",
          "vue-ui-toolbar",
          "vue-ui-user-menu"
        ]
      }
    },
    {
      "name": "vue-example-gap-cursor",
      "title": "vue-example-gap-cursor",
      "type": "registry:block",
      "description": "Cursor navigation between non-text block elements.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-gap-cursor.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/gap-cursor/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/gap-cursor/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/gap-cursor/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "gap-cursor",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/gap-cursor/editor.vue",
          "registry/src/vue/examples/gap-cursor/extension.ts",
          "registry/src/vue/examples/gap-cursor/index.ts",
          "registry/src/vue/sample/sample-doc-gap-cursor.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-gap-cursor"
        ]
      }
    },
    {
      "name": "vue-example-hard-break",
      "title": "vue-example-hard-break",
      "type": "registry:block",
      "description": "Example for hard line break node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-hard-break.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/hard-break/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/hard-break/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/hard-break/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/index.ts"
        },
        {
          "path": "registry/src/vue/examples/hard-break/toolbar.vue",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/toolbar.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "hard-break",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/hard-break/editor.vue",
          "registry/src/vue/examples/hard-break/extension.ts",
          "registry/src/vue/examples/hard-break/index.ts",
          "registry/src/vue/examples/hard-break/toolbar.vue",
          "registry/src/vue/sample/sample-doc-hard-break.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-hard-break",
          "vue-ui-button"
        ]
      }
    },
    {
      "name": "vue-example-heading",
      "title": "vue-example-heading",
      "type": "registry:block",
      "description": "Example for heading node with multiple levels.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-heading.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/heading/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/heading/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/heading/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/heading/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/heading/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/heading/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "heading",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/heading/editor.vue",
          "registry/src/vue/examples/heading/extension.ts",
          "registry/src/vue/examples/heading/index.ts",
          "registry/src/vue/sample/sample-doc-heading.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-heading",
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-highlight",
      "title": "vue-example-highlight",
      "type": "registry:block",
      "description": "Example for highlighting text (like a highlighter pen).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-highlight.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/highlight/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/highlight/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/highlight/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/index.ts"
        },
        {
          "path": "registry/src/vue/examples/highlight/toolbar.vue",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/toolbar.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "highlight",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/highlight/editor.vue",
          "registry/src/vue/examples/highlight/extension.ts",
          "registry/src/vue/examples/highlight/index.ts",
          "registry/src/vue/examples/highlight/toolbar.vue",
          "registry/src/vue/sample/sample-doc-highlight.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-highlight",
          "vue-ui-button"
        ]
      }
    },
    {
      "name": "vue-example-horizontal-rule",
      "title": "vue-example-horizontal-rule",
      "type": "registry:block",
      "description": "Example for horizontal rule node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/horizontal-rule/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/horizontal-rule/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/horizontal-rule/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "horizontal-rule",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/horizontal-rule/editor.vue",
          "registry/src/vue/examples/horizontal-rule/extension.ts",
          "registry/src/vue/examples/horizontal-rule/index.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-image-view",
      "title": "vue-example-image-view",
      "type": "registry:block",
      "description": "Custom image node views with resize support.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-image.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-image-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/image-view/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/image-view/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "image-view",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/image-view/editor.vue",
          "registry/src/vue/examples/image-view/extension.ts",
          "registry/src/vue/examples/image-view/index.ts",
          "registry/src/vue/sample/sample-doc-image.ts",
          "registry/src/vue/sample/sample-uploader.ts",
          "registry/src/vue/ui/image-view/image-view.vue",
          "registry/src/vue/ui/image-view/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-image",
          "vue-sample-sample-uploader",
          "vue-ui-image-view"
        ]
      }
    },
    {
      "name": "vue-example-inline-menu",
      "title": "vue-example-inline-menu",
      "type": "registry:block",
      "description": "Inline formatting menu that appears on text selection.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/inline-menu/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/inline-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "inline-menu",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/inline-menu/editor.vue",
          "registry/src/vue/examples/inline-menu/extension.ts",
          "registry/src/vue/examples/inline-menu/index.ts",
          "registry/src/vue/sample/sample-doc-inline-menu.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/inline-menu/index.ts",
          "registry/src/vue/ui/inline-menu/inline-menu.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-inline-menu",
          "vue-ui-inline-menu"
        ]
      }
    },
    {
      "name": "vue-example-italic",
      "title": "vue-example-italic",
      "type": "registry:block",
      "description": "Example for italic mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-italic.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/italic/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/italic/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/italic/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/italic/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/italic/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/italic/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "italic",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/italic/editor.vue",
          "registry/src/vue/examples/italic/extension.ts",
          "registry/src/vue/examples/italic/index.ts",
          "registry/src/vue/sample/sample-doc-italic.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-italic",
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-katex",
      "title": "vue-example-katex",
      "type": "registry:block",
      "description": "Math equation rendering using the KaTeX library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-tex.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/katex/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/katex/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/katex/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/katex/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/katex/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/katex/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "katex",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/katex/editor.vue",
          "registry/src/vue/examples/katex/extension.ts",
          "registry/src/vue/examples/katex/index.ts",
          "registry/src/vue/sample/katex.ts",
          "registry/src/vue/sample/sample-doc-tex.ts"
        ],
        "internalDependencies": [
          "vue-sample-katex",
          "vue-sample-sample-doc-tex"
        ]
      }
    },
    {
      "name": "vue-example-keymap",
      "title": "vue-example-keymap",
      "type": "registry:block",
      "description": "Custom keyboard shortcuts and key bindings.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/keymap/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/keymap/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/keymap/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/index.ts"
        },
        {
          "path": "registry/src/vue/examples/keymap/toolbar.vue",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/toolbar.vue"
        },
        {
          "path": "registry/src/vue/examples/keymap/use-submit-keymap.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/use-submit-keymap.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "keymap",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/keymap/editor.vue",
          "registry/src/vue/examples/keymap/extension.ts",
          "registry/src/vue/examples/keymap/index.ts",
          "registry/src/vue/examples/keymap/toolbar.vue",
          "registry/src/vue/examples/keymap/use-submit-keymap.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts"
        ],
        "internalDependencies": [
          "vue-ui-button"
        ]
      }
    },
    {
      "name": "vue-example-link",
      "title": "vue-example-link",
      "type": "registry:block",
      "description": "Example for link mark with URL input.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-link.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/link/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/link/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/link/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/link/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "link",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/link/editor.vue",
          "registry/src/vue/examples/link/extension.ts",
          "registry/src/vue/examples/link/index.ts",
          "registry/src/vue/sample/sample-doc-link.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/inline-menu/index.ts",
          "registry/src/vue/ui/inline-menu/inline-menu.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-link",
          "vue-ui-inline-menu"
        ]
      }
    },
    {
      "name": "vue-example-link-mark-view",
      "title": "vue-example-link-mark-view",
      "type": "registry:block",
      "description": "An example showing how to render a mark as a custom component.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-link-mark-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/link-mark-view/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/link-mark-view/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/link-mark-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/index.ts"
        },
        {
          "path": "registry/src/vue/examples/link-mark-view/link-view.vue",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/link-view.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "link-mark-view",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/link-mark-view/editor.vue",
          "registry/src/vue/examples/link-mark-view/extension.ts",
          "registry/src/vue/examples/link-mark-view/index.ts",
          "registry/src/vue/examples/link-mark-view/link-view.vue",
          "registry/src/vue/sample/sample-doc-link-mark-view.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-link-mark-view"
        ]
      }
    },
    {
      "name": "vue-example-list",
      "title": "vue-example-list",
      "type": "registry:block",
      "description": "Example for list node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-list.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/list/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/list/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/list/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/list/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "list",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/list/editor.vue",
          "registry/src/vue/examples/list/extension.ts",
          "registry/src/vue/examples/list/index.ts",
          "registry/src/vue/sample/sample-doc-list.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-list",
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-list-custom-checkbox",
      "title": "vue-example-list-custom-checkbox",
      "type": "registry:block",
      "description": "Custom checkbox styling for task lists.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-list-custom-checkbox.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/list-custom-checkbox/custom-list.css",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/custom-list.css"
        },
        {
          "path": "registry/src/vue/examples/list-custom-checkbox/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/list-custom-checkbox/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/list-custom-checkbox/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "list-custom-checkbox",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/list-custom-checkbox/custom-list.css",
          "registry/src/vue/examples/list-custom-checkbox/editor.vue",
          "registry/src/vue/examples/list-custom-checkbox/extension.ts",
          "registry/src/vue/examples/list-custom-checkbox/index.ts",
          "registry/src/vue/sample/sample-doc-list-custom-checkbox.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-list-custom-checkbox",
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-loro",
      "title": "vue-example-loro",
      "type": "registry:block",
      "description": "Real-time collaboration using Loro CRDT library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "loro-crdt",
        "loro-prosemirror",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/loro/editor-component.vue",
          "type": "registry:component",
          "target": "components/editor/examples/loro/editor-component.vue"
        },
        {
          "path": "registry/src/vue/examples/loro/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/loro/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/loro/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/loro/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/loro/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/loro/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "loro",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/loro/editor-component.vue",
          "registry/src/vue/examples/loro/editor.vue",
          "registry/src/vue/examples/loro/extension.ts",
          "registry/src/vue/examples/loro/index.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-mark-rule",
      "title": "vue-example-mark-rule",
      "type": "registry:block",
      "description": "Input rules for automatic mark formatting.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/mark-rule/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/mark-rule/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/mark-rule/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/index.ts"
        },
        {
          "path": "registry/src/vue/examples/mark-rule/issue-link.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/issue-link.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "mark-rule",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/mark-rule/editor.vue",
          "registry/src/vue/examples/mark-rule/extension.ts",
          "registry/src/vue/examples/mark-rule/index.ts",
          "registry/src/vue/examples/mark-rule/issue-link.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-example-minimal",
      "title": "vue-example-minimal",
      "type": "registry:block",
      "description": "Minimal editor setup with basic functionality.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/minimal/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/minimal/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "minimal",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/minimal/editor.vue",
          "registry/src/vue/examples/minimal/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-example-placeholder",
      "title": "vue-example-placeholder",
      "type": "registry:block",
      "description": "Placeholder text displayed.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/placeholder/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/placeholder/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/placeholder/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "placeholder",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/placeholder/editor.vue",
          "registry/src/vue/examples/placeholder/extension.ts",
          "registry/src/vue/examples/placeholder/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-example-readonly",
      "title": "vue-example-readonly",
      "type": "registry:block",
      "description": "Toggle between read-only and editable mode.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-readonly.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/readonly/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/readonly/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/readonly/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/index.ts"
        },
        {
          "path": "registry/src/vue/examples/readonly/toolbar.vue",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/toolbar.vue"
        },
        {
          "path": "registry/src/vue/examples/readonly/use-readonly.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/use-readonly.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "readonly",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/readonly/editor.vue",
          "registry/src/vue/examples/readonly/extension.ts",
          "registry/src/vue/examples/readonly/index.ts",
          "registry/src/vue/examples/readonly/toolbar.vue",
          "registry/src/vue/examples/readonly/use-readonly.ts",
          "registry/src/vue/sample/sample-doc-readonly.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-readonly",
          "vue-ui-button"
        ]
      }
    },
    {
      "name": "vue-example-rtl",
      "title": "vue-example-rtl",
      "type": "registry:block",
      "description": "Right-to-left text direction support.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-rtl.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/rtl/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/rtl/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/rtl/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/rtl/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "rtl",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/rtl/editor.vue",
          "registry/src/vue/examples/rtl/index.ts",
          "registry/src/vue/sample/sample-doc-rtl.ts",
          "registry/src/vue/sample/sample-uploader.ts",
          "registry/src/vue/ui/block-handle/block-handle.vue",
          "registry/src/vue/ui/block-handle/index.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/drop-indicator/drop-indicator.vue",
          "registry/src/vue/ui/drop-indicator/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/inline-menu/index.ts",
          "registry/src/vue/ui/inline-menu/inline-menu.vue",
          "registry/src/vue/ui/slash-menu/index.ts",
          "registry/src/vue/ui/slash-menu/slash-menu-empty.vue",
          "registry/src/vue/ui/slash-menu/slash-menu-item.vue",
          "registry/src/vue/ui/slash-menu/slash-menu.vue",
          "registry/src/vue/ui/table-handle/index.ts",
          "registry/src/vue/ui/table-handle/table-handle.vue",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-rtl",
          "vue-sample-sample-uploader",
          "vue-ui-block-handle",
          "vue-ui-drop-indicator",
          "vue-ui-inline-menu",
          "vue-ui-slash-menu",
          "vue-ui-table-handle",
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-save-html",
      "title": "vue-example-save-html",
      "type": "registry:block",
      "description": "Save and load documents as HTML format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/save-html/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/save-html/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/save-html/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-html/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-html",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/save-html/editor.vue",
          "registry/src/vue/examples/save-html/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-example-save-json",
      "title": "vue-example-save-json",
      "type": "registry:block",
      "description": "Save and load documents as JSON format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/save-json/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/save-json/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/save-json/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-json/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-json",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/save-json/editor.vue",
          "registry/src/vue/examples/save-json/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-example-save-markdown",
      "title": "vue-example-save-markdown",
      "type": "registry:block",
      "description": "Save and load documents as Markdown format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3",
        "rehype-parse",
        "rehype-remark",
        "remark-gfm",
        "remark-html",
        "remark-parse",
        "remark-stringify",
        "unified"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/save-markdown/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/save-markdown/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/index.ts"
        },
        {
          "path": "registry/src/vue/examples/save-markdown/markdown.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/markdown.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-markdown",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/save-markdown/editor.vue",
          "registry/src/vue/examples/save-markdown/index.ts",
          "registry/src/vue/examples/save-markdown/markdown.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-example-search",
      "title": "vue-example-search",
      "type": "registry:block",
      "description": "Search and highlight text with navigation.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-search.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-search.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/search/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/search/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/search/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/search/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/search/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/search/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "search",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/search/editor.vue",
          "registry/src/vue/examples/search/extension.ts",
          "registry/src/vue/examples/search/index.ts",
          "registry/src/vue/sample/sample-doc-search.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/search/index.ts",
          "registry/src/vue/ui/search/search.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-search",
          "vue-ui-search"
        ]
      }
    },
    {
      "name": "vue-example-slash-menu",
      "title": "vue-example-slash-menu",
      "type": "registry:block",
      "description": "Command menu triggered by typing slash (/).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-slash-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/slash-menu/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/slash-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "slash-menu",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/slash-menu/editor.vue",
          "registry/src/vue/examples/slash-menu/extension.ts",
          "registry/src/vue/examples/slash-menu/index.ts",
          "registry/src/vue/ui/slash-menu/index.ts",
          "registry/src/vue/ui/slash-menu/slash-menu-empty.vue",
          "registry/src/vue/ui/slash-menu/slash-menu-item.vue",
          "registry/src/vue/ui/slash-menu/slash-menu.vue"
        ],
        "internalDependencies": [
          "vue-ui-slash-menu"
        ]
      }
    },
    {
      "name": "vue-example-strike",
      "title": "vue-example-strike",
      "type": "registry:block",
      "description": "Example for strikethrough mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-strike.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/strike/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/strike/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/strike/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/strike/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/strike/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/strike/index.ts"
        },
        {
          "path": "registry/src/vue/examples/strike/toolbar.vue",
          "type": "registry:component",
          "target": "components/editor/examples/strike/toolbar.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "strike",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/strike/editor.vue",
          "registry/src/vue/examples/strike/extension.ts",
          "registry/src/vue/examples/strike/index.ts",
          "registry/src/vue/examples/strike/toolbar.vue",
          "registry/src/vue/sample/sample-doc-strike.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-strike",
          "vue-ui-button"
        ]
      }
    },
    {
      "name": "vue-example-sub-sup",
      "title": "vue-example-sub-sup",
      "type": "registry:block",
      "description": "Example for subscript and superscript marks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-sub-sup.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/sub-sup/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/sub-sup/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/sub-sup/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/index.ts"
        },
        {
          "path": "registry/src/vue/examples/sub-sup/toolbar.vue",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/toolbar.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "sub-sup",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/sub-sup/editor.vue",
          "registry/src/vue/examples/sub-sup/extension.ts",
          "registry/src/vue/examples/sub-sup/index.ts",
          "registry/src/vue/examples/sub-sup/toolbar.vue",
          "registry/src/vue/sample/sample-doc-sub-sup.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-sub-sup",
          "vue-ui-button"
        ]
      }
    },
    {
      "name": "vue-example-table",
      "title": "vue-example-table",
      "type": "registry:block",
      "description": "Table node with row and column operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-table.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-table-handle.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/table/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/table/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/table/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/table/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "table",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/table/editor.vue",
          "registry/src/vue/examples/table/extension.ts",
          "registry/src/vue/examples/table/index.ts",
          "registry/src/vue/sample/sample-doc-table.ts",
          "registry/src/vue/ui/table-handle/index.ts",
          "registry/src/vue/ui/table-handle/table-handle.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-table",
          "vue-ui-table-handle"
        ]
      }
    },
    {
      "name": "vue-example-text-align",
      "title": "vue-example-text-align",
      "type": "registry:block",
      "description": "Text alignment options (left, center, right, justify).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-text-align.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/text-align/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/text-align/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/text-align/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/index.ts"
        },
        {
          "path": "registry/src/vue/examples/text-align/toolbar.vue",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/toolbar.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "text-align",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/text-align/editor.vue",
          "registry/src/vue/examples/text-align/extension.ts",
          "registry/src/vue/examples/text-align/index.ts",
          "registry/src/vue/examples/text-align/toolbar.vue",
          "registry/src/vue/sample/sample-doc-text-align.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-text-align",
          "vue-ui-button"
        ]
      }
    },
    {
      "name": "vue-example-text-color",
      "title": "vue-example-text-color",
      "type": "registry:block",
      "description": "Change text and background color.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-text-color.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/text-color/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/text-color/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/text-color/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/index.ts"
        },
        {
          "path": "registry/src/vue/examples/text-color/inline-menu.vue",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/inline-menu.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "text-color",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/text-color/editor.vue",
          "registry/src/vue/examples/text-color/extension.ts",
          "registry/src/vue/examples/text-color/index.ts",
          "registry/src/vue/examples/text-color/inline-menu.vue",
          "registry/src/vue/sample/sample-doc-text-color.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-text-color",
          "vue-ui-button"
        ]
      }
    },
    {
      "name": "vue-example-toolbar",
      "title": "vue-example-toolbar",
      "type": "registry:block",
      "description": "Formatting toolbar with common editing actions.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/toolbar/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/toolbar/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "toolbar",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/toolbar/editor.vue",
          "registry/src/vue/examples/toolbar/extension.ts",
          "registry/src/vue/examples/toolbar/index.ts",
          "registry/src/vue/sample/sample-uploader.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-uploader",
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-tweet",
      "title": "vue-example-tweet",
      "type": "registry:block",
      "description": "Embed and display Twitter tweets.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-tweet.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3",
        "vue-tweet"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/tweet/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/tweet/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/tweet/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/tweet/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/tweet/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/tweet/index.ts"
        },
        {
          "path": "registry/src/vue/examples/tweet/method-select.vue",
          "type": "registry:component",
          "target": "components/editor/examples/tweet/method-select.vue"
        },
        {
          "path": "registry/src/vue/examples/tweet/tweet-view.vue",
          "type": "registry:component",
          "target": "components/editor/examples/tweet/tweet-view.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "tweet",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/tweet/editor.vue",
          "registry/src/vue/examples/tweet/extension.ts",
          "registry/src/vue/examples/tweet/index.ts",
          "registry/src/vue/examples/tweet/method-select.vue",
          "registry/src/vue/examples/tweet/tweet-view.vue",
          "registry/src/vue/sample/sample-doc-tweet.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-tweet"
        ]
      }
    },
    {
      "name": "vue-example-typography",
      "title": "vue-example-typography",
      "type": "registry:block",
      "description": "Typography enhancements like smart quotes and dashes.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-typography.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-drop-indicator.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/typography/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/typography/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/typography/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/typography/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/typography/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/typography/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "typography",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/typography/editor.vue",
          "registry/src/vue/examples/typography/extension.ts",
          "registry/src/vue/examples/typography/index.ts",
          "registry/src/vue/sample/katex.ts",
          "registry/src/vue/sample/sample-doc-typography.ts",
          "registry/src/vue/ui/block-handle/block-handle.vue",
          "registry/src/vue/ui/block-handle/index.ts",
          "registry/src/vue/ui/drop-indicator/drop-indicator.vue",
          "registry/src/vue/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": [
          "vue-sample-katex",
          "vue-sample-sample-doc-typography",
          "vue-ui-block-handle",
          "vue-ui-drop-indicator"
        ]
      }
    },
    {
      "name": "vue-example-underline",
      "title": "vue-example-underline",
      "type": "registry:block",
      "description": "Example for underline mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-underline.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/underline/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/underline/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/underline/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/underline/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/underline/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/underline/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "underline",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/underline/editor.vue",
          "registry/src/vue/examples/underline/extension.ts",
          "registry/src/vue/examples/underline/index.ts",
          "registry/src/vue/sample/sample-doc-underline.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-underline",
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-example-unmount",
      "title": "vue-example-unmount",
      "type": "registry:block",
      "description": "Properly unmount and remount editor instances.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/unmount/editor-component.vue",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/editor-component.vue"
        },
        {
          "path": "registry/src/vue/examples/unmount/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/unmount/extension-component.vue",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/extension-component.vue"
        },
        {
          "path": "registry/src/vue/examples/unmount/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "unmount",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/unmount/editor-component.vue",
          "registry/src/vue/examples/unmount/editor.vue",
          "registry/src/vue/examples/unmount/extension-component.vue",
          "registry/src/vue/examples/unmount/index.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/inline-menu/index.ts",
          "registry/src/vue/ui/inline-menu/inline-menu.vue"
        ],
        "internalDependencies": [
          "vue-ui-inline-menu"
        ]
      }
    },
    {
      "name": "vue-example-user-menu",
      "title": "vue-example-user-menu",
      "type": "registry:block",
      "description": "Autocomplete menu for @mentions and #hashtag",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/user-menu/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/user-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "user-menu",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/user-menu/editor.vue",
          "registry/src/vue/examples/user-menu/extension.ts",
          "registry/src/vue/examples/user-menu/index.ts",
          "registry/src/vue/sample/sample-tag-data.ts",
          "registry/src/vue/sample/sample-user-data.ts",
          "registry/src/vue/ui/tag-menu/index.ts",
          "registry/src/vue/ui/tag-menu/tag-menu.vue",
          "registry/src/vue/ui/user-menu/index.ts",
          "registry/src/vue/ui/user-menu/user-menu.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-tag-data",
          "vue-sample-sample-user-data",
          "vue-ui-tag-menu",
          "vue-ui-user-menu"
        ]
      }
    },
    {
      "name": "vue-example-user-menu-dynamic",
      "title": "vue-example-user-menu-dynamic",
      "type": "registry:block",
      "description": "Dynamic autocomplete menu with async data loading.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-query-users.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/user-menu-dynamic/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/user-menu-dynamic/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/user-menu-dynamic/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/index.ts"
        },
        {
          "path": "registry/src/vue/examples/user-menu-dynamic/use-user-query.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/use-user-query.ts"
        },
        {
          "path": "registry/src/vue/examples/user-menu-dynamic/user-menu-dynamic.vue",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/user-menu-dynamic.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "user-menu-dynamic",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/user-menu-dynamic/editor.vue",
          "registry/src/vue/examples/user-menu-dynamic/extension.ts",
          "registry/src/vue/examples/user-menu-dynamic/index.ts",
          "registry/src/vue/examples/user-menu-dynamic/use-user-query.ts",
          "registry/src/vue/examples/user-menu-dynamic/user-menu-dynamic.vue",
          "registry/src/vue/sample/sample-query-users.ts",
          "registry/src/vue/sample/sample-user-data.ts",
          "registry/src/vue/ui/user-menu/index.ts",
          "registry/src/vue/ui/user-menu/user-menu.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-query-users",
          "vue-ui-user-menu"
        ]
      }
    },
    {
      "name": "vue-example-view-adapter",
      "title": "vue-example-view-adapter",
      "type": "registry:block",
      "description": "Custom node and mark views using view adapters.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-define-atom-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-view-adapter.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/view-adapter/atom-block-view.vue",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/atom-block-view.vue"
        },
        {
          "path": "registry/src/vue/examples/view-adapter/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/view-adapter/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/view-adapter/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": true,
        "story": "view-adapter",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/view-adapter/atom-block-view.vue",
          "registry/src/vue/examples/view-adapter/editor.vue",
          "registry/src/vue/examples/view-adapter/extension.ts",
          "registry/src/vue/examples/view-adapter/index.ts",
          "registry/src/vue/sample/define-atom-block.ts",
          "registry/src/vue/sample/sample-doc-view-adapter.ts"
        ],
        "internalDependencies": [
          "vue-sample-define-atom-block",
          "vue-sample-sample-doc-view-adapter"
        ]
      }
    },
    {
      "name": "vue-example-word-counter",
      "title": "vue-example-word-counter",
      "type": "registry:block",
      "description": "Display word and character count statistics.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-doc-word-counter.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-word-counter.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/word-counter/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/word-counter/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/word-counter/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "word-counter",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/word-counter/editor.vue",
          "registry/src/vue/examples/word-counter/extension.ts",
          "registry/src/vue/examples/word-counter/index.ts",
          "registry/src/vue/sample/sample-doc-word-counter.ts",
          "registry/src/vue/ui/word-counter/index.ts",
          "registry/src/vue/ui/word-counter/word-counter.vue"
        ],
        "internalDependencies": [
          "vue-sample-sample-doc-word-counter",
          "vue-ui-word-counter"
        ]
      }
    },
    {
      "name": "vue-example-yjs",
      "title": "vue-example-yjs",
      "type": "registry:block",
      "description": "Real-time collaboration using Yjs CRDT library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3",
        "y-websocket",
        "yjs"
      ],
      "files": [
        {
          "path": "registry/src/vue/examples/yjs/editor-component.vue",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/editor-component.vue"
        },
        {
          "path": "registry/src/vue/examples/yjs/editor.vue",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/editor.vue"
        },
        {
          "path": "registry/src/vue/examples/yjs/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/extension.ts"
        },
        {
          "path": "registry/src/vue/examples/yjs/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "yjs",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/examples/yjs/editor-component.vue",
          "registry/src/vue/examples/yjs/editor.vue",
          "registry/src/vue/examples/yjs/extension.ts",
          "registry/src/vue/examples/yjs/index.ts",
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-ui-toolbar"
        ]
      }
    },
    {
      "name": "vue-sample-define-atom-block",
      "title": "vue-sample-define-atom-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/define-atom-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/define-atom-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/define-atom-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-katex",
      "title": "vue-sample-katex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "katex"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/katex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/katex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/katex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-block-handle",
      "title": "vue-sample-sample-doc-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-block-handle.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-block-handle.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-block-handle.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-bold",
      "title": "vue-sample-sample-doc-bold",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-bold.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-bold.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-bold.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-code",
      "title": "vue-sample-sample-doc-code",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-code.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-code.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-code-block",
      "title": "vue-sample-sample-doc-code-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-code-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-code-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-drop-cursor",
      "title": "vue-sample-sample-doc-drop-cursor",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-drop-cursor.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-drop-cursor.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-drop-cursor.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-font-family",
      "title": "vue-sample-sample-doc-font-family",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-font-family.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-font-family.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-font-family.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-full",
      "title": "vue-sample-sample-doc-full",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-full.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-full.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-full.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-gap-cursor",
      "title": "vue-sample-sample-doc-gap-cursor",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-gap-cursor.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-gap-cursor.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-gap-cursor.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-hard-break",
      "title": "vue-sample-sample-doc-hard-break",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-hard-break.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-hard-break.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-hard-break.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-heading",
      "title": "vue-sample-sample-doc-heading",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-heading.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-heading.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-heading.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-highlight",
      "title": "vue-sample-sample-doc-highlight",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-highlight.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-highlight.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-highlight.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-image",
      "title": "vue-sample-sample-doc-image",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-image.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-image.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-image.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-inline-menu",
      "title": "vue-sample-sample-doc-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-inline-menu.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-inline-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-inline-menu.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-italic",
      "title": "vue-sample-sample-doc-italic",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-italic.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-italic.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-italic.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-link",
      "title": "vue-sample-sample-doc-link",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-link.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-link.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-link.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-link-mark-view",
      "title": "vue-sample-sample-doc-link-mark-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-link-mark-view.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-link-mark-view.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-link-mark-view.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-list",
      "title": "vue-sample-sample-doc-list",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-list.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-list.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-list.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-list-custom-checkbox",
      "title": "vue-sample-sample-doc-list-custom-checkbox",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-list-custom-checkbox.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-list-custom-checkbox.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-list-custom-checkbox.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-readonly",
      "title": "vue-sample-sample-doc-readonly",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-readonly.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-readonly.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-readonly.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-rtl",
      "title": "vue-sample-sample-doc-rtl",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-rtl.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-rtl.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-rtl.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-search",
      "title": "vue-sample-sample-doc-search",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-search.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-search.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-search.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-strike",
      "title": "vue-sample-sample-doc-strike",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-strike.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-strike.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-strike.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-sub-sup",
      "title": "vue-sample-sample-doc-sub-sup",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-sub-sup.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-sub-sup.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-sub-sup.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-table",
      "title": "vue-sample-sample-doc-table",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-table.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-table.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-table.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-tex",
      "title": "vue-sample-sample-doc-tex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-tex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-tex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-tex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-text-align",
      "title": "vue-sample-sample-doc-text-align",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-text-align.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-text-align.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-text-align.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-text-color",
      "title": "vue-sample-sample-doc-text-color",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-text-color.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-text-color.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-text-color.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-tweet",
      "title": "vue-sample-sample-doc-tweet",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-tweet.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-tweet.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-tweet.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-typography",
      "title": "vue-sample-sample-doc-typography",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-typography.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-typography.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-typography.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-underline",
      "title": "vue-sample-sample-doc-underline",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-underline.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-underline.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-underline.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-view-adapter",
      "title": "vue-sample-sample-doc-view-adapter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-view-adapter.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-view-adapter.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-view-adapter.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-doc-word-counter",
      "title": "vue-sample-sample-doc-word-counter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-doc-word-counter.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-word-counter.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-doc-word-counter.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-query-users",
      "title": "vue-sample-sample-query-users",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-sample-sample-user-data.json"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-query-users.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-query-users.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-query-users.ts",
          "registry/src/vue/sample/sample-user-data.ts"
        ],
        "internalDependencies": [
          "vue-sample-sample-user-data"
        ]
      }
    },
    {
      "name": "vue-sample-sample-tag-data",
      "title": "vue-sample-sample-tag-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-tag-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-tag-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-tag-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-uploader",
      "title": "vue-sample-sample-uploader",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-uploader.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-uploader.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-uploader.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-sample-sample-user-data",
      "title": "vue-sample-sample-user-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/vue/sample/sample-user-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-user-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/sample/sample-user-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-ui-block-handle",
      "title": "vue-ui-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/block-handle/block-handle.vue",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/block-handle.vue"
        },
        {
          "path": "registry/src/vue/ui/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/block-handle/block-handle.vue",
          "registry/src/vue/ui/block-handle/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "vue-ui-button",
      "title": "vue-ui-button",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/button/button.vue",
          "type": "registry:component",
          "target": "components/editor/ui/button/button.vue"
        },
        {
          "path": "registry/src/vue/ui/button/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/button/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-ui-code-block-view",
      "title": "vue-ui-code-block-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "beautiful-mermaid",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/code-block-view/code-block-view.vue",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/code-block-view.vue"
        },
        {
          "path": "registry/src/vue/ui/code-block-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/code-block-view/code-block-view.vue",
          "registry/src/vue/ui/code-block-view/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-ui-drop-indicator",
      "title": "vue-ui-drop-indicator",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/drop-indicator/drop-indicator.vue",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/drop-indicator.vue"
        },
        {
          "path": "registry/src/vue/ui/drop-indicator/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/drop-indicator/drop-indicator.vue",
          "registry/src/vue/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-ui-image-upload-popover",
      "title": "vue-ui-image-upload-popover",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/image-upload-popover.vue"
        },
        {
          "path": "registry/src/vue/ui/image-upload-popover/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts"
        ],
        "internalDependencies": [
          "vue-ui-button"
        ]
      }
    },
    {
      "name": "vue-ui-image-view",
      "title": "vue-ui-image-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/image-view/image-view.vue",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/image-view.vue"
        },
        {
          "path": "registry/src/vue/ui/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/image-view/image-view.vue",
          "registry/src/vue/ui/image-view/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "vue-ui-inline-menu",
      "title": "vue-ui-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/index.ts"
        },
        {
          "path": "registry/src/vue/ui/inline-menu/inline-menu.vue",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/inline-menu.vue"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/inline-menu/index.ts",
          "registry/src/vue/ui/inline-menu/inline-menu.vue"
        ],
        "internalDependencies": [
          "vue-ui-button"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "vue-ui-search",
      "title": "vue-ui-search",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/search/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/search/index.ts"
        },
        {
          "path": "registry/src/vue/ui/search/search.vue",
          "type": "registry:component",
          "target": "components/editor/ui/search/search.vue"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/search/index.ts",
          "registry/src/vue/ui/search/search.vue"
        ],
        "internalDependencies": [
          "vue-ui-button"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "vue-ui-slash-menu",
      "title": "vue-ui-slash-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/index.ts"
        },
        {
          "path": "registry/src/vue/ui/slash-menu/slash-menu-empty.vue",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-empty.vue"
        },
        {
          "path": "registry/src/vue/ui/slash-menu/slash-menu-item.vue",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-item.vue"
        },
        {
          "path": "registry/src/vue/ui/slash-menu/slash-menu.vue",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/slash-menu/index.ts",
          "registry/src/vue/ui/slash-menu/slash-menu-empty.vue",
          "registry/src/vue/ui/slash-menu/slash-menu-item.vue",
          "registry/src/vue/ui/slash-menu/slash-menu.vue"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-ui-table-handle",
      "title": "vue-ui-table-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/table-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/index.ts"
        },
        {
          "path": "registry/src/vue/ui/table-handle/table-handle.vue",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/table-handle.vue"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/table-handle/index.ts",
          "registry/src/vue/ui/table-handle/table-handle.vue"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "vue-ui-tag-menu",
      "title": "vue-ui-tag-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/tag-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/index.ts"
        },
        {
          "path": "registry/src/vue/ui/tag-menu/tag-menu.vue",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/tag-menu.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/tag-menu/index.ts",
          "registry/src/vue/ui/tag-menu/tag-menu.vue"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-ui-toolbar",
      "title": "vue-ui-toolbar",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-button.json",
        "https://unpkg.com/prosekit-registry/dist/r/vue-ui-image-upload-popover.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/index.ts"
        },
        {
          "path": "registry/src/vue/ui/toolbar/toolbar.vue",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/toolbar.vue"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/button/button.vue",
          "registry/src/vue/ui/button/index.ts",
          "registry/src/vue/ui/image-upload-popover/image-upload-popover.vue",
          "registry/src/vue/ui/image-upload-popover/index.ts",
          "registry/src/vue/ui/toolbar/index.ts",
          "registry/src/vue/ui/toolbar/toolbar.vue"
        ],
        "internalDependencies": [
          "vue-ui-button",
          "vue-ui-image-upload-popover"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "vue-ui-user-menu",
      "title": "vue-ui-user-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/index.ts"
        },
        {
          "path": "registry/src/vue/ui/user-menu/user-menu.vue",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/user-menu.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/user-menu/index.ts",
          "registry/src/vue/ui/user-menu/user-menu.vue"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vue-ui-word-counter",
      "title": "vue-ui-word-counter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vue/ui/word-counter/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/word-counter/index.ts"
        },
        {
          "path": "registry/src/vue/ui/word-counter/word-counter.vue",
          "type": "registry:component",
          "target": "components/editor/ui/word-counter/word-counter.vue"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vue",
        "accumulatedFiles": [
          "registry/src/vue/ui/word-counter/index.ts",
          "registry/src/vue/ui/word-counter/word-counter.vue"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-example-block-handle",
      "title": "lit-example-block-handle",
      "type": "registry:block",
      "description": "A handle that appears on hover, allowing you to drag and re-order blocks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-sample-doc-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/examples/block-handle/editor.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/editor.ts"
        },
        {
          "path": "registry/src/lit/examples/block-handle/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/extension.ts"
        },
        {
          "path": "registry/src/lit/examples/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "block-handle",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/examples/block-handle/editor.ts",
          "registry/src/lit/examples/block-handle/extension.ts",
          "registry/src/lit/examples/block-handle/index.ts",
          "registry/src/lit/sample/sample-doc-block-handle.ts",
          "registry/src/lit/ui/block-handle/block-handle.ts",
          "registry/src/lit/ui/block-handle/index.ts",
          "registry/src/lit/ui/code-block-view/code-block-view.ts",
          "registry/src/lit/ui/code-block-view/index.ts",
          "registry/src/lit/ui/drop-indicator/drop-indicator.ts",
          "registry/src/lit/ui/drop-indicator/index.ts",
          "registry/src/lit/ui/editor-context.ts"
        ],
        "internalDependencies": [
          "lit-sample-sample-doc-block-handle",
          "lit-ui-block-handle",
          "lit-ui-code-block-view",
          "lit-ui-drop-indicator",
          "lit-ui-editor-context"
        ]
      }
    },
    {
      "name": "lit-example-code-block",
      "title": "lit-example-code-block",
      "type": "registry:block",
      "description": "Code block with syntax highlighting and a Mermaid diagram preview.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-toolbar.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/examples/code-block/editor.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/editor.ts"
        },
        {
          "path": "registry/src/lit/examples/code-block/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/extension.ts"
        },
        {
          "path": "registry/src/lit/examples/code-block/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/examples/code-block/editor.ts",
          "registry/src/lit/examples/code-block/extension.ts",
          "registry/src/lit/examples/code-block/index.ts",
          "registry/src/lit/sample/sample-doc-code-block.ts",
          "registry/src/lit/sample/sample-uploader.ts",
          "registry/src/lit/ui/button/button.ts",
          "registry/src/lit/ui/button/index.ts",
          "registry/src/lit/ui/code-block-view/code-block-view.ts",
          "registry/src/lit/ui/code-block-view/index.ts",
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/image-upload-popover/image-upload-popover.ts",
          "registry/src/lit/ui/image-upload-popover/index.ts",
          "registry/src/lit/ui/toolbar/index.ts",
          "registry/src/lit/ui/toolbar/toolbar.ts"
        ],
        "internalDependencies": [
          "lit-sample-sample-doc-code-block",
          "lit-sample-sample-uploader",
          "lit-ui-code-block-view",
          "lit-ui-editor-context",
          "lit-ui-toolbar"
        ]
      }
    },
    {
      "name": "lit-example-full",
      "title": "lit-example-full",
      "type": "registry:block",
      "description": "Full-featured editor with most available features enabled.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-sample-doc-full.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-image-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-toolbar.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-user-menu.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/examples/full/editor.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/editor.ts"
        },
        {
          "path": "registry/src/lit/examples/full/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/extension.ts"
        },
        {
          "path": "registry/src/lit/examples/full/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "full",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/examples/full/editor.ts",
          "registry/src/lit/examples/full/extension.ts",
          "registry/src/lit/examples/full/index.ts",
          "registry/src/lit/sample/katex.ts",
          "registry/src/lit/sample/sample-doc-full.ts",
          "registry/src/lit/sample/sample-tag-data.ts",
          "registry/src/lit/sample/sample-uploader.ts",
          "registry/src/lit/sample/sample-user-data.ts",
          "registry/src/lit/ui/block-handle/block-handle.ts",
          "registry/src/lit/ui/block-handle/index.ts",
          "registry/src/lit/ui/button/button.ts",
          "registry/src/lit/ui/button/index.ts",
          "registry/src/lit/ui/code-block-view/code-block-view.ts",
          "registry/src/lit/ui/code-block-view/index.ts",
          "registry/src/lit/ui/drop-indicator/drop-indicator.ts",
          "registry/src/lit/ui/drop-indicator/index.ts",
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/image-upload-popover/image-upload-popover.ts",
          "registry/src/lit/ui/image-upload-popover/index.ts",
          "registry/src/lit/ui/image-view/image-view.ts",
          "registry/src/lit/ui/image-view/index.ts",
          "registry/src/lit/ui/inline-menu/index.ts",
          "registry/src/lit/ui/inline-menu/inline-menu.ts",
          "registry/src/lit/ui/slash-menu/index.ts",
          "registry/src/lit/ui/slash-menu/slash-menu-empty.ts",
          "registry/src/lit/ui/slash-menu/slash-menu-item.ts",
          "registry/src/lit/ui/slash-menu/slash-menu.ts",
          "registry/src/lit/ui/table-handle/index.ts",
          "registry/src/lit/ui/table-handle/table-handle.ts",
          "registry/src/lit/ui/tag-menu/index.ts",
          "registry/src/lit/ui/tag-menu/tag-menu.ts",
          "registry/src/lit/ui/toolbar/index.ts",
          "registry/src/lit/ui/toolbar/toolbar.ts",
          "registry/src/lit/ui/user-menu/index.ts",
          "registry/src/lit/ui/user-menu/user-menu.ts"
        ],
        "internalDependencies": [
          "lit-sample-katex",
          "lit-sample-sample-doc-full",
          "lit-sample-sample-tag-data",
          "lit-sample-sample-uploader",
          "lit-sample-sample-user-data",
          "lit-ui-block-handle",
          "lit-ui-code-block-view",
          "lit-ui-drop-indicator",
          "lit-ui-editor-context",
          "lit-ui-image-view",
          "lit-ui-inline-menu",
          "lit-ui-slash-menu",
          "lit-ui-table-handle",
          "lit-ui-tag-menu",
          "lit-ui-toolbar",
          "lit-ui-user-menu"
        ]
      }
    },
    {
      "name": "lit-example-inline-menu",
      "title": "lit-example-inline-menu",
      "type": "registry:block",
      "description": "Inline formatting menu that appears on text selection.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-sample-doc-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-inline-menu.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/examples/inline-menu/editor.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/editor.ts"
        },
        {
          "path": "registry/src/lit/examples/inline-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/extension.ts"
        },
        {
          "path": "registry/src/lit/examples/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "inline-menu",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/examples/inline-menu/editor.ts",
          "registry/src/lit/examples/inline-menu/extension.ts",
          "registry/src/lit/examples/inline-menu/index.ts",
          "registry/src/lit/sample/sample-doc-inline-menu.ts",
          "registry/src/lit/ui/button/button.ts",
          "registry/src/lit/ui/button/index.ts",
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/inline-menu/index.ts",
          "registry/src/lit/ui/inline-menu/inline-menu.ts"
        ],
        "internalDependencies": [
          "lit-sample-sample-doc-inline-menu",
          "lit-ui-editor-context",
          "lit-ui-inline-menu"
        ]
      }
    },
    {
      "name": "lit-example-minimal",
      "title": "lit-example-minimal",
      "type": "registry:block",
      "description": "Minimal editor setup with basic functionality.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/examples/minimal/editor.ts",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/editor.ts"
        },
        {
          "path": "registry/src/lit/examples/minimal/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "minimal",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/examples/minimal/editor.ts",
          "registry/src/lit/examples/minimal/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-example-slash-menu",
      "title": "lit-example-slash-menu",
      "type": "registry:block",
      "description": "Command menu triggered by typing slash (/).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-slash-menu.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/examples/slash-menu/editor.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/editor.ts"
        },
        {
          "path": "registry/src/lit/examples/slash-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/extension.ts"
        },
        {
          "path": "registry/src/lit/examples/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "slash-menu",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/examples/slash-menu/editor.ts",
          "registry/src/lit/examples/slash-menu/extension.ts",
          "registry/src/lit/examples/slash-menu/index.ts",
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/slash-menu/index.ts",
          "registry/src/lit/ui/slash-menu/slash-menu-empty.ts",
          "registry/src/lit/ui/slash-menu/slash-menu-item.ts",
          "registry/src/lit/ui/slash-menu/slash-menu.ts"
        ],
        "internalDependencies": [
          "lit-ui-editor-context",
          "lit-ui-slash-menu"
        ]
      }
    },
    {
      "name": "lit-example-table",
      "title": "lit-example-table",
      "type": "registry:block",
      "description": "Table node with row and column operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-sample-doc-table.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-table-handle.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/examples/table/editor.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/editor.ts"
        },
        {
          "path": "registry/src/lit/examples/table/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/extension.ts"
        },
        {
          "path": "registry/src/lit/examples/table/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "table",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/examples/table/editor.ts",
          "registry/src/lit/examples/table/extension.ts",
          "registry/src/lit/examples/table/index.ts",
          "registry/src/lit/sample/sample-doc-table.ts",
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/table-handle/index.ts",
          "registry/src/lit/ui/table-handle/table-handle.ts"
        ],
        "internalDependencies": [
          "lit-sample-sample-doc-table",
          "lit-ui-editor-context",
          "lit-ui-table-handle"
        ]
      }
    },
    {
      "name": "lit-example-toolbar",
      "title": "lit-example-toolbar",
      "type": "registry:block",
      "description": "Formatting toolbar with common editing actions.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-toolbar.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/examples/toolbar/editor.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/editor.ts"
        },
        {
          "path": "registry/src/lit/examples/toolbar/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/extension.ts"
        },
        {
          "path": "registry/src/lit/examples/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "toolbar",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/examples/toolbar/editor.ts",
          "registry/src/lit/examples/toolbar/extension.ts",
          "registry/src/lit/examples/toolbar/index.ts",
          "registry/src/lit/sample/sample-uploader.ts",
          "registry/src/lit/ui/button/button.ts",
          "registry/src/lit/ui/button/index.ts",
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/image-upload-popover/image-upload-popover.ts",
          "registry/src/lit/ui/image-upload-popover/index.ts",
          "registry/src/lit/ui/toolbar/index.ts",
          "registry/src/lit/ui/toolbar/toolbar.ts"
        ],
        "internalDependencies": [
          "lit-sample-sample-uploader",
          "lit-ui-editor-context",
          "lit-ui-toolbar"
        ]
      }
    },
    {
      "name": "lit-sample-katex",
      "title": "lit-sample-katex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "katex"
      ],
      "files": [
        {
          "path": "registry/src/lit/sample/katex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/katex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/sample/katex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-sample-sample-doc-block-handle",
      "title": "lit-sample-sample-doc-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/sample/sample-doc-block-handle.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-block-handle.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/sample/sample-doc-block-handle.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-sample-sample-doc-code-block",
      "title": "lit-sample-sample-doc-code-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/sample/sample-doc-code-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/sample/sample-doc-code-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-sample-sample-doc-full",
      "title": "lit-sample-sample-doc-full",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/sample/sample-doc-full.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-full.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/sample/sample-doc-full.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-sample-sample-doc-inline-menu",
      "title": "lit-sample-sample-doc-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/sample/sample-doc-inline-menu.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-inline-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/sample/sample-doc-inline-menu.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-sample-sample-doc-table",
      "title": "lit-sample-sample-doc-table",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/sample/sample-doc-table.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-table.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/sample/sample-doc-table.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-sample-sample-tag-data",
      "title": "lit-sample-sample-tag-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/lit/sample/sample-tag-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-tag-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/sample/sample-tag-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-sample-sample-uploader",
      "title": "lit-sample-sample-uploader",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/sample/sample-uploader.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-uploader.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/sample/sample-uploader.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-sample-sample-user-data",
      "title": "lit-sample-sample-user-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/lit/sample/sample-user-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-user-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/sample/sample-user-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-ui-block-handle",
      "title": "lit-ui-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/block-handle/block-handle.ts",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/block-handle.ts"
        },
        {
          "path": "registry/src/lit/ui/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/block-handle/block-handle.ts",
          "registry/src/lit/ui/block-handle/index.ts",
          "registry/src/lit/ui/editor-context.ts"
        ],
        "internalDependencies": [
          "lit-ui-editor-context"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "lit-ui-button",
      "title": "lit-ui-button",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/button/button.ts",
          "type": "registry:component",
          "target": "components/editor/ui/button/button.ts"
        },
        {
          "path": "registry/src/lit/ui/button/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/button/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/button/button.ts",
          "registry/src/lit/ui/button/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-ui-code-block-view",
      "title": "lit-ui-code-block-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "beautiful-mermaid",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/code-block-view/code-block-view.ts",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/code-block-view.ts"
        },
        {
          "path": "registry/src/lit/ui/code-block-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/code-block-view/code-block-view.ts",
          "registry/src/lit/ui/code-block-view/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-ui-drop-indicator",
      "title": "lit-ui-drop-indicator",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/drop-indicator/drop-indicator.ts",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/drop-indicator.ts"
        },
        {
          "path": "registry/src/lit/ui/drop-indicator/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/drop-indicator/drop-indicator.ts",
          "registry/src/lit/ui/drop-indicator/index.ts",
          "registry/src/lit/ui/editor-context.ts"
        ],
        "internalDependencies": [
          "lit-ui-editor-context"
        ]
      }
    },
    {
      "name": "lit-ui-editor-context",
      "title": "lit-ui-editor-context",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/editor-context.ts",
          "type": "registry:component",
          "target": "components/editor/ui/editor-context.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/editor-context.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "lit-ui-image-upload-popover",
      "title": "lit-ui-image-upload-popover",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/image-upload-popover/image-upload-popover.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/image-upload-popover.ts"
        },
        {
          "path": "registry/src/lit/ui/image-upload-popover/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/button/button.ts",
          "registry/src/lit/ui/button/index.ts",
          "registry/src/lit/ui/image-upload-popover/image-upload-popover.ts",
          "registry/src/lit/ui/image-upload-popover/index.ts"
        ],
        "internalDependencies": [
          "lit-ui-button"
        ]
      }
    },
    {
      "name": "lit-ui-image-view",
      "title": "lit-ui-image-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/image-view/image-view.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/image-view.ts"
        },
        {
          "path": "registry/src/lit/ui/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/image-view/image-view.ts",
          "registry/src/lit/ui/image-view/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "lit-ui-inline-menu",
      "title": "lit-ui-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-button.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/index.ts"
        },
        {
          "path": "registry/src/lit/ui/inline-menu/inline-menu.ts",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/inline-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/button/button.ts",
          "registry/src/lit/ui/button/index.ts",
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/inline-menu/index.ts",
          "registry/src/lit/ui/inline-menu/inline-menu.ts"
        ],
        "internalDependencies": [
          "lit-ui-button",
          "lit-ui-editor-context"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "lit-ui-slash-menu",
      "title": "lit-ui-slash-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/index.ts"
        },
        {
          "path": "registry/src/lit/ui/slash-menu/slash-menu-empty.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-empty.ts"
        },
        {
          "path": "registry/src/lit/ui/slash-menu/slash-menu-item.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-item.ts"
        },
        {
          "path": "registry/src/lit/ui/slash-menu/slash-menu.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/slash-menu/index.ts",
          "registry/src/lit/ui/slash-menu/slash-menu-empty.ts",
          "registry/src/lit/ui/slash-menu/slash-menu-item.ts",
          "registry/src/lit/ui/slash-menu/slash-menu.ts"
        ],
        "internalDependencies": [
          "lit-ui-editor-context"
        ]
      }
    },
    {
      "name": "lit-ui-table-handle",
      "title": "lit-ui-table-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/table-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/index.ts"
        },
        {
          "path": "registry/src/lit/ui/table-handle/table-handle.ts",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/table-handle.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/table-handle/index.ts",
          "registry/src/lit/ui/table-handle/table-handle.ts"
        ],
        "internalDependencies": [
          "lit-ui-editor-context"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "lit-ui-tag-menu",
      "title": "lit-ui-tag-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/tag-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/index.ts"
        },
        {
          "path": "registry/src/lit/ui/tag-menu/tag-menu.ts",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/tag-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/tag-menu/index.ts",
          "registry/src/lit/ui/tag-menu/tag-menu.ts"
        ],
        "internalDependencies": [
          "lit-ui-editor-context"
        ]
      }
    },
    {
      "name": "lit-ui-toolbar",
      "title": "lit-ui-toolbar",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-button.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json",
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-image-upload-popover.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/index.ts"
        },
        {
          "path": "registry/src/lit/ui/toolbar/toolbar.ts",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/toolbar.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/button/button.ts",
          "registry/src/lit/ui/button/index.ts",
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/image-upload-popover/image-upload-popover.ts",
          "registry/src/lit/ui/image-upload-popover/index.ts",
          "registry/src/lit/ui/toolbar/index.ts",
          "registry/src/lit/ui/toolbar/toolbar.ts"
        ],
        "internalDependencies": [
          "lit-ui-button",
          "lit-ui-editor-context",
          "lit-ui-image-upload-popover"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "lit-ui-user-menu",
      "title": "lit-ui-user-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/lit-ui-editor-context.json"
      ],
      "dependencies": [
        "@lit/context",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/lit/ui/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/index.ts"
        },
        {
          "path": "registry/src/lit/ui/user-menu/user-menu.ts",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/user-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "lit",
        "accumulatedFiles": [
          "registry/src/lit/ui/editor-context.ts",
          "registry/src/lit/ui/user-menu/index.ts",
          "registry/src/lit/ui/user-menu/user-menu.ts"
        ],
        "internalDependencies": [
          "lit-ui-editor-context"
        ]
      }
    },
    {
      "name": "svelte-example-block-handle",
      "title": "svelte-example-block-handle",
      "type": "registry:block",
      "description": "A handle that appears on hover, allowing you to drag and re-order blocks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-drop-indicator.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/block-handle/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/block-handle/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "block-handle",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/block-handle/editor.svelte",
          "registry/src/svelte/examples/block-handle/extension.ts",
          "registry/src/svelte/examples/block-handle/index.ts",
          "registry/src/svelte/sample/sample-doc-block-handle.ts",
          "registry/src/svelte/ui/block-handle/block-handle.svelte",
          "registry/src/svelte/ui/block-handle/index.ts",
          "registry/src/svelte/ui/code-block-view/code-block-view.svelte",
          "registry/src/svelte/ui/code-block-view/index.ts",
          "registry/src/svelte/ui/drop-indicator/drop-indicator.svelte",
          "registry/src/svelte/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-block-handle",
          "svelte-ui-block-handle",
          "svelte-ui-code-block-view",
          "svelte-ui-drop-indicator"
        ]
      }
    },
    {
      "name": "svelte-example-blockquote",
      "title": "svelte-example-blockquote",
      "type": "registry:block",
      "description": "Example for blockquote node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/blockquote/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/blockquote/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/blockquote/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "blockquote",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/blockquote/editor.svelte",
          "registry/src/svelte/examples/blockquote/extension.ts",
          "registry/src/svelte/examples/blockquote/index.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-bold",
      "title": "svelte-example-bold",
      "type": "registry:block",
      "description": "Example for bold mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-bold.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/bold/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/bold/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/bold/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/bold/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/bold/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/bold/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "bold",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/bold/editor.svelte",
          "registry/src/svelte/examples/bold/extension.ts",
          "registry/src/svelte/examples/bold/index.ts",
          "registry/src/svelte/sample/sample-doc-bold.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-bold",
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-change-tracking",
      "title": "svelte-example-change-tracking",
      "type": "registry:block",
      "description": "Track and commit document changes with version history.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/change-tracking/editor-diff.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor-diff.svelte"
        },
        {
          "path": "registry/src/svelte/examples/change-tracking/editor-main.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor-main.svelte"
        },
        {
          "path": "registry/src/svelte/examples/change-tracking/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/change-tracking/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "change-tracking",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/change-tracking/editor-diff.svelte",
          "registry/src/svelte/examples/change-tracking/editor-main.svelte",
          "registry/src/svelte/examples/change-tracking/editor.svelte",
          "registry/src/svelte/examples/change-tracking/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-example-code",
      "title": "svelte-example-code",
      "type": "registry:block",
      "description": "Example for inline code mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-code.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/code/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/code/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/code/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/code/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/code/editor.svelte",
          "registry/src/svelte/examples/code/extension.ts",
          "registry/src/svelte/examples/code/index.ts",
          "registry/src/svelte/sample/sample-doc-code.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-code",
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-code-block",
      "title": "svelte-example-code-block",
      "type": "registry:block",
      "description": "Code block with syntax highlighting and a Mermaid diagram preview.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/code-block/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/code-block/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/code-block/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/code-block/editor.svelte",
          "registry/src/svelte/examples/code-block/extension.ts",
          "registry/src/svelte/examples/code-block/index.ts",
          "registry/src/svelte/sample/sample-doc-code-block.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/code-block-view/code-block-view.svelte",
          "registry/src/svelte/ui/code-block-view/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-code-block",
          "svelte-ui-code-block-view",
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-code-block-themes",
      "title": "svelte-example-code-block-themes",
      "type": "registry:block",
      "description": "Code block with multiple syntax highlighting themes.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-code-block-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/code-block-themes/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/code-block-themes/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/code-block-themes/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/code-block-themes/theme-selector.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/theme-selector.svelte"
        },
        {
          "path": "registry/src/svelte/examples/code-block-themes/toolbar.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/toolbar.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block-themes",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/code-block-themes/editor.svelte",
          "registry/src/svelte/examples/code-block-themes/extension.ts",
          "registry/src/svelte/examples/code-block-themes/index.ts",
          "registry/src/svelte/examples/code-block-themes/theme-selector.svelte",
          "registry/src/svelte/examples/code-block-themes/toolbar.svelte",
          "registry/src/svelte/sample/sample-doc-code-block.ts",
          "registry/src/svelte/ui/code-block-view/code-block-view.svelte",
          "registry/src/svelte/ui/code-block-view/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-code-block",
          "svelte-ui-code-block-view"
        ]
      }
    },
    {
      "name": "svelte-example-drop-cursor",
      "title": "svelte-example-drop-cursor",
      "type": "registry:block",
      "description": "Visual cursor indicator during drag-and-drop operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-drop-cursor.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/drop-cursor/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/drop-cursor/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/drop-cursor/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "drop-cursor",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/drop-cursor/editor.svelte",
          "registry/src/svelte/examples/drop-cursor/extension.ts",
          "registry/src/svelte/examples/drop-cursor/index.ts",
          "registry/src/svelte/sample/sample-doc-drop-cursor.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-drop-cursor"
        ]
      }
    },
    {
      "name": "svelte-example-emoji-rules",
      "title": "svelte-example-emoji-rules",
      "type": "registry:block",
      "description": "Auto-convert text shortcuts to emojis using input rules.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/emoji-rules/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/emoji-rules/emoji.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/emoji.ts"
        },
        {
          "path": "registry/src/svelte/examples/emoji-rules/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/emoji-rules/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "emoji-rules",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/emoji-rules/editor.svelte",
          "registry/src/svelte/examples/emoji-rules/emoji.ts",
          "registry/src/svelte/examples/emoji-rules/extension.ts",
          "registry/src/svelte/examples/emoji-rules/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-example-font-family",
      "title": "svelte-example-font-family",
      "type": "registry:block",
      "description": "Change the font family of text.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-font-family.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/font-family/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/font-family/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/font-family/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/font-family/toolbar.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/toolbar.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "font-family",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/font-family/editor.svelte",
          "registry/src/svelte/examples/font-family/extension.ts",
          "registry/src/svelte/examples/font-family/index.ts",
          "registry/src/svelte/examples/font-family/toolbar.svelte",
          "registry/src/svelte/sample/sample-doc-font-family.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-font-family"
        ]
      }
    },
    {
      "name": "svelte-example-full",
      "title": "svelte-example-full",
      "type": "registry:block",
      "description": "Full-featured editor with most available features enabled.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-full.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-image-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/full/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/full/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/full/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/full/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "full",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/full/editor.svelte",
          "registry/src/svelte/examples/full/extension.ts",
          "registry/src/svelte/examples/full/index.ts",
          "registry/src/svelte/sample/katex.ts",
          "registry/src/svelte/sample/sample-doc-full.ts",
          "registry/src/svelte/sample/sample-tag-data.ts",
          "registry/src/svelte/sample/sample-uploader.ts",
          "registry/src/svelte/sample/sample-user-data.ts",
          "registry/src/svelte/ui/block-handle/block-handle.svelte",
          "registry/src/svelte/ui/block-handle/index.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/code-block-view/code-block-view.svelte",
          "registry/src/svelte/ui/code-block-view/index.ts",
          "registry/src/svelte/ui/drop-indicator/drop-indicator.svelte",
          "registry/src/svelte/ui/drop-indicator/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/image-view/image-view.svelte",
          "registry/src/svelte/ui/image-view/index.ts",
          "registry/src/svelte/ui/inline-menu/index.ts",
          "registry/src/svelte/ui/inline-menu/inline-menu.svelte",
          "registry/src/svelte/ui/slash-menu/index.ts",
          "registry/src/svelte/ui/slash-menu/slash-menu-empty.svelte",
          "registry/src/svelte/ui/slash-menu/slash-menu-item.svelte",
          "registry/src/svelte/ui/slash-menu/slash-menu.svelte",
          "registry/src/svelte/ui/table-handle/index.ts",
          "registry/src/svelte/ui/table-handle/table-handle.svelte",
          "registry/src/svelte/ui/tag-menu/index.ts",
          "registry/src/svelte/ui/tag-menu/tag-menu.svelte",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte",
          "registry/src/svelte/ui/user-menu/index.ts",
          "registry/src/svelte/ui/user-menu/user-menu.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-katex",
          "svelte-sample-sample-doc-full",
          "svelte-sample-sample-tag-data",
          "svelte-sample-sample-uploader",
          "svelte-sample-sample-user-data",
          "svelte-ui-block-handle",
          "svelte-ui-code-block-view",
          "svelte-ui-drop-indicator",
          "svelte-ui-image-view",
          "svelte-ui-inline-menu",
          "svelte-ui-slash-menu",
          "svelte-ui-table-handle",
          "svelte-ui-tag-menu",
          "svelte-ui-toolbar",
          "svelte-ui-user-menu"
        ]
      }
    },
    {
      "name": "svelte-example-gap-cursor",
      "title": "svelte-example-gap-cursor",
      "type": "registry:block",
      "description": "Cursor navigation between non-text block elements.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-gap-cursor.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/gap-cursor/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/gap-cursor/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/gap-cursor/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "gap-cursor",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/gap-cursor/editor.svelte",
          "registry/src/svelte/examples/gap-cursor/extension.ts",
          "registry/src/svelte/examples/gap-cursor/index.ts",
          "registry/src/svelte/sample/sample-doc-gap-cursor.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-gap-cursor"
        ]
      }
    },
    {
      "name": "svelte-example-hard-break",
      "title": "svelte-example-hard-break",
      "type": "registry:block",
      "description": "Example for hard line break node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-hard-break.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/hard-break/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/hard-break/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/hard-break/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/hard-break/toolbar.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/toolbar.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "hard-break",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/hard-break/editor.svelte",
          "registry/src/svelte/examples/hard-break/extension.ts",
          "registry/src/svelte/examples/hard-break/index.ts",
          "registry/src/svelte/examples/hard-break/toolbar.svelte",
          "registry/src/svelte/sample/sample-doc-hard-break.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-hard-break",
          "svelte-ui-button"
        ]
      }
    },
    {
      "name": "svelte-example-heading",
      "title": "svelte-example-heading",
      "type": "registry:block",
      "description": "Example for heading node with multiple levels.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-heading.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/heading/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/heading/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/heading/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/heading/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/heading/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/heading/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "heading",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/heading/editor.svelte",
          "registry/src/svelte/examples/heading/extension.ts",
          "registry/src/svelte/examples/heading/index.ts",
          "registry/src/svelte/sample/sample-doc-heading.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-heading",
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-highlight",
      "title": "svelte-example-highlight",
      "type": "registry:block",
      "description": "Example for highlighting text (like a highlighter pen).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-highlight.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/highlight/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/highlight/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/highlight/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/highlight/toolbar.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/toolbar.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "highlight",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/highlight/editor.svelte",
          "registry/src/svelte/examples/highlight/extension.ts",
          "registry/src/svelte/examples/highlight/index.ts",
          "registry/src/svelte/examples/highlight/toolbar.svelte",
          "registry/src/svelte/sample/sample-doc-highlight.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-highlight",
          "svelte-ui-button"
        ]
      }
    },
    {
      "name": "svelte-example-horizontal-rule",
      "title": "svelte-example-horizontal-rule",
      "type": "registry:block",
      "description": "Example for horizontal rule node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/horizontal-rule/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/horizontal-rule/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/horizontal-rule/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "horizontal-rule",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/horizontal-rule/editor.svelte",
          "registry/src/svelte/examples/horizontal-rule/extension.ts",
          "registry/src/svelte/examples/horizontal-rule/index.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-image-view",
      "title": "svelte-example-image-view",
      "type": "registry:block",
      "description": "Custom image node views with resize support.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-image.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-image-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/image-view/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/image-view/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "image-view",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/image-view/editor.svelte",
          "registry/src/svelte/examples/image-view/extension.ts",
          "registry/src/svelte/examples/image-view/index.ts",
          "registry/src/svelte/sample/sample-doc-image.ts",
          "registry/src/svelte/sample/sample-uploader.ts",
          "registry/src/svelte/ui/image-view/image-view.svelte",
          "registry/src/svelte/ui/image-view/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-image",
          "svelte-sample-sample-uploader",
          "svelte-ui-image-view"
        ]
      }
    },
    {
      "name": "svelte-example-inline-menu",
      "title": "svelte-example-inline-menu",
      "type": "registry:block",
      "description": "Inline formatting menu that appears on text selection.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/inline-menu/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/inline-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "inline-menu",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/inline-menu/editor.svelte",
          "registry/src/svelte/examples/inline-menu/extension.ts",
          "registry/src/svelte/examples/inline-menu/index.ts",
          "registry/src/svelte/sample/sample-doc-inline-menu.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/inline-menu/index.ts",
          "registry/src/svelte/ui/inline-menu/inline-menu.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-inline-menu",
          "svelte-ui-inline-menu"
        ]
      }
    },
    {
      "name": "svelte-example-italic",
      "title": "svelte-example-italic",
      "type": "registry:block",
      "description": "Example for italic mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-italic.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/italic/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/italic/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/italic/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/italic/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/italic/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/italic/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "italic",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/italic/editor.svelte",
          "registry/src/svelte/examples/italic/extension.ts",
          "registry/src/svelte/examples/italic/index.ts",
          "registry/src/svelte/sample/sample-doc-italic.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-italic",
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-katex",
      "title": "svelte-example-katex",
      "type": "registry:block",
      "description": "Math equation rendering using the KaTeX library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-tex.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/katex/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/katex/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/katex/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/katex/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/katex/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/katex/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "katex",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/katex/editor.svelte",
          "registry/src/svelte/examples/katex/extension.ts",
          "registry/src/svelte/examples/katex/index.ts",
          "registry/src/svelte/sample/katex.ts",
          "registry/src/svelte/sample/sample-doc-tex.ts"
        ],
        "internalDependencies": [
          "svelte-sample-katex",
          "svelte-sample-sample-doc-tex"
        ]
      }
    },
    {
      "name": "svelte-example-keymap",
      "title": "svelte-example-keymap",
      "type": "registry:block",
      "description": "Custom keyboard shortcuts and key bindings.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/keymap/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/keymap/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/keymap/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/keymap/toolbar.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/toolbar.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "keymap",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/keymap/editor.svelte",
          "registry/src/svelte/examples/keymap/extension.ts",
          "registry/src/svelte/examples/keymap/index.ts",
          "registry/src/svelte/examples/keymap/toolbar.svelte",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts"
        ],
        "internalDependencies": [
          "svelte-ui-button"
        ]
      }
    },
    {
      "name": "svelte-example-link",
      "title": "svelte-example-link",
      "type": "registry:block",
      "description": "Example for link mark with URL input.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-link.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/link/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/link/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/link/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/link/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "link",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/link/editor.svelte",
          "registry/src/svelte/examples/link/extension.ts",
          "registry/src/svelte/examples/link/index.ts",
          "registry/src/svelte/sample/sample-doc-link.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/inline-menu/index.ts",
          "registry/src/svelte/ui/inline-menu/inline-menu.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-link",
          "svelte-ui-inline-menu"
        ]
      }
    },
    {
      "name": "svelte-example-link-mark-view",
      "title": "svelte-example-link-mark-view",
      "type": "registry:block",
      "description": "An example showing how to render a mark as a custom component.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-link-mark-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/link-mark-view/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/link-mark-view/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/link-mark-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/link-mark-view/link-view.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/link-view.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "link-mark-view",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/link-mark-view/editor.svelte",
          "registry/src/svelte/examples/link-mark-view/extension.ts",
          "registry/src/svelte/examples/link-mark-view/index.ts",
          "registry/src/svelte/examples/link-mark-view/link-view.svelte",
          "registry/src/svelte/sample/sample-doc-link-mark-view.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-link-mark-view"
        ]
      }
    },
    {
      "name": "svelte-example-list",
      "title": "svelte-example-list",
      "type": "registry:block",
      "description": "Example for list node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-list.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/list/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/list/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/list/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/list/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "list",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/list/editor.svelte",
          "registry/src/svelte/examples/list/extension.ts",
          "registry/src/svelte/examples/list/index.ts",
          "registry/src/svelte/sample/sample-doc-list.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-list",
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-list-custom-checkbox",
      "title": "svelte-example-list-custom-checkbox",
      "type": "registry:block",
      "description": "Custom checkbox styling for task lists.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-list-custom-checkbox.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/list-custom-checkbox/custom-list.css",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/custom-list.css"
        },
        {
          "path": "registry/src/svelte/examples/list-custom-checkbox/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/list-custom-checkbox/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/list-custom-checkbox/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "list-custom-checkbox",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/list-custom-checkbox/custom-list.css",
          "registry/src/svelte/examples/list-custom-checkbox/editor.svelte",
          "registry/src/svelte/examples/list-custom-checkbox/extension.ts",
          "registry/src/svelte/examples/list-custom-checkbox/index.ts",
          "registry/src/svelte/sample/sample-doc-list-custom-checkbox.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-list-custom-checkbox",
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-loro",
      "title": "svelte-example-loro",
      "type": "registry:block",
      "description": "Real-time collaboration using Loro CRDT library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "loro-crdt",
        "loro-prosemirror",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/loro/editor-component.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/loro/editor-component.svelte"
        },
        {
          "path": "registry/src/svelte/examples/loro/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/loro/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/loro/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/loro/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/loro/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/loro/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "loro",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/loro/editor-component.svelte",
          "registry/src/svelte/examples/loro/editor.svelte",
          "registry/src/svelte/examples/loro/extension.ts",
          "registry/src/svelte/examples/loro/index.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-mark-rule",
      "title": "svelte-example-mark-rule",
      "type": "registry:block",
      "description": "Input rules for automatic mark formatting.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/mark-rule/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/mark-rule/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/mark-rule/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/mark-rule/issue-link.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/issue-link.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "mark-rule",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/mark-rule/editor.svelte",
          "registry/src/svelte/examples/mark-rule/extension.ts",
          "registry/src/svelte/examples/mark-rule/index.ts",
          "registry/src/svelte/examples/mark-rule/issue-link.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-example-minimal",
      "title": "svelte-example-minimal",
      "type": "registry:block",
      "description": "Minimal editor setup with basic functionality.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/minimal/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/minimal/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "minimal",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/minimal/editor.svelte",
          "registry/src/svelte/examples/minimal/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-example-page",
      "title": "svelte-example-page",
      "type": "registry:block",
      "description": "Page layout with configurable paper settings.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-page.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/page/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/page/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/page/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/page/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/page/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/page/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/page/paper-controller.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/page/paper-controller.svelte"
        },
        {
          "path": "registry/src/svelte/examples/page/zoom.css",
          "type": "registry:component",
          "target": "components/editor/examples/page/zoom.css"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "page",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/page/editor.svelte",
          "registry/src/svelte/examples/page/extension.ts",
          "registry/src/svelte/examples/page/index.ts",
          "registry/src/svelte/examples/page/paper-controller.svelte",
          "registry/src/svelte/examples/page/zoom.css",
          "registry/src/svelte/sample/sample-doc-page.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-page"
        ]
      }
    },
    {
      "name": "svelte-example-placeholder",
      "title": "svelte-example-placeholder",
      "type": "registry:block",
      "description": "Placeholder text displayed.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/placeholder/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/placeholder/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/placeholder/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "placeholder",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/placeholder/editor.svelte",
          "registry/src/svelte/examples/placeholder/extension.ts",
          "registry/src/svelte/examples/placeholder/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-example-readonly",
      "title": "svelte-example-readonly",
      "type": "registry:block",
      "description": "Toggle between read-only and editable mode.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-readonly.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/readonly/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/readonly/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/readonly/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/readonly/toolbar.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/toolbar.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "readonly",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/readonly/editor.svelte",
          "registry/src/svelte/examples/readonly/extension.ts",
          "registry/src/svelte/examples/readonly/index.ts",
          "registry/src/svelte/examples/readonly/toolbar.svelte",
          "registry/src/svelte/sample/sample-doc-readonly.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-readonly",
          "svelte-ui-button"
        ]
      }
    },
    {
      "name": "svelte-example-rtl",
      "title": "svelte-example-rtl",
      "type": "registry:block",
      "description": "Right-to-left text direction support.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-rtl.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/rtl/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/rtl/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/rtl/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/rtl/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "rtl",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/rtl/editor.svelte",
          "registry/src/svelte/examples/rtl/index.ts",
          "registry/src/svelte/sample/sample-doc-rtl.ts",
          "registry/src/svelte/sample/sample-uploader.ts",
          "registry/src/svelte/ui/block-handle/block-handle.svelte",
          "registry/src/svelte/ui/block-handle/index.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/drop-indicator/drop-indicator.svelte",
          "registry/src/svelte/ui/drop-indicator/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/inline-menu/index.ts",
          "registry/src/svelte/ui/inline-menu/inline-menu.svelte",
          "registry/src/svelte/ui/slash-menu/index.ts",
          "registry/src/svelte/ui/slash-menu/slash-menu-empty.svelte",
          "registry/src/svelte/ui/slash-menu/slash-menu-item.svelte",
          "registry/src/svelte/ui/slash-menu/slash-menu.svelte",
          "registry/src/svelte/ui/table-handle/index.ts",
          "registry/src/svelte/ui/table-handle/table-handle.svelte",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-rtl",
          "svelte-sample-sample-uploader",
          "svelte-ui-block-handle",
          "svelte-ui-drop-indicator",
          "svelte-ui-inline-menu",
          "svelte-ui-slash-menu",
          "svelte-ui-table-handle",
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-save-html",
      "title": "svelte-example-save-html",
      "type": "registry:block",
      "description": "Save and load documents as HTML format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/save-html/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/save-html/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/save-html/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-html/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-html",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/save-html/editor.svelte",
          "registry/src/svelte/examples/save-html/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-example-save-json",
      "title": "svelte-example-save-json",
      "type": "registry:block",
      "description": "Save and load documents as JSON format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/save-json/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/save-json/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/save-json/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-json/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-json",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/save-json/editor.svelte",
          "registry/src/svelte/examples/save-json/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-example-save-markdown",
      "title": "svelte-example-save-markdown",
      "type": "registry:block",
      "description": "Save and load documents as Markdown format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3",
        "rehype-parse",
        "rehype-remark",
        "remark-gfm",
        "remark-html",
        "remark-parse",
        "remark-stringify",
        "unified"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/save-markdown/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/save-markdown/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/save-markdown/markdown.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/markdown.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-markdown",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/save-markdown/editor.svelte",
          "registry/src/svelte/examples/save-markdown/index.ts",
          "registry/src/svelte/examples/save-markdown/markdown.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-example-search",
      "title": "svelte-example-search",
      "type": "registry:block",
      "description": "Search and highlight text with navigation.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-search.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-search.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/search/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/search/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/search/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/search/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/search/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/search/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "search",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/search/editor.svelte",
          "registry/src/svelte/examples/search/extension.ts",
          "registry/src/svelte/examples/search/index.ts",
          "registry/src/svelte/sample/sample-doc-search.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/search/index.ts",
          "registry/src/svelte/ui/search/search.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-search",
          "svelte-ui-search"
        ]
      }
    },
    {
      "name": "svelte-example-slash-menu",
      "title": "svelte-example-slash-menu",
      "type": "registry:block",
      "description": "Command menu triggered by typing slash (/).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-slash-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/slash-menu/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/slash-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "slash-menu",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/slash-menu/editor.svelte",
          "registry/src/svelte/examples/slash-menu/extension.ts",
          "registry/src/svelte/examples/slash-menu/index.ts",
          "registry/src/svelte/ui/slash-menu/index.ts",
          "registry/src/svelte/ui/slash-menu/slash-menu-empty.svelte",
          "registry/src/svelte/ui/slash-menu/slash-menu-item.svelte",
          "registry/src/svelte/ui/slash-menu/slash-menu.svelte"
        ],
        "internalDependencies": [
          "svelte-ui-slash-menu"
        ]
      }
    },
    {
      "name": "svelte-example-strike",
      "title": "svelte-example-strike",
      "type": "registry:block",
      "description": "Example for strikethrough mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-strike.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/strike/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/strike/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/strike/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/strike/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/strike/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/strike/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/strike/toolbar.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/strike/toolbar.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "strike",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/strike/editor.svelte",
          "registry/src/svelte/examples/strike/extension.ts",
          "registry/src/svelte/examples/strike/index.ts",
          "registry/src/svelte/examples/strike/toolbar.svelte",
          "registry/src/svelte/sample/sample-doc-strike.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-strike",
          "svelte-ui-button"
        ]
      }
    },
    {
      "name": "svelte-example-sub-sup",
      "title": "svelte-example-sub-sup",
      "type": "registry:block",
      "description": "Example for subscript and superscript marks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-sub-sup.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/sub-sup/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/sub-sup/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/sub-sup/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/sub-sup/toolbar.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/toolbar.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "sub-sup",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/sub-sup/editor.svelte",
          "registry/src/svelte/examples/sub-sup/extension.ts",
          "registry/src/svelte/examples/sub-sup/index.ts",
          "registry/src/svelte/examples/sub-sup/toolbar.svelte",
          "registry/src/svelte/sample/sample-doc-sub-sup.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-sub-sup",
          "svelte-ui-button"
        ]
      }
    },
    {
      "name": "svelte-example-table",
      "title": "svelte-example-table",
      "type": "registry:block",
      "description": "Table node with row and column operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-table.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-table-handle.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/table/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/table/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/table/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/table/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "table",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/table/editor.svelte",
          "registry/src/svelte/examples/table/extension.ts",
          "registry/src/svelte/examples/table/index.ts",
          "registry/src/svelte/sample/sample-doc-table.ts",
          "registry/src/svelte/ui/table-handle/index.ts",
          "registry/src/svelte/ui/table-handle/table-handle.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-table",
          "svelte-ui-table-handle"
        ]
      }
    },
    {
      "name": "svelte-example-text-align",
      "title": "svelte-example-text-align",
      "type": "registry:block",
      "description": "Text alignment options (left, center, right, justify).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-text-align.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/text-align/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/text-align/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/text-align/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/text-align/toolbar.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/toolbar.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "text-align",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/text-align/editor.svelte",
          "registry/src/svelte/examples/text-align/extension.ts",
          "registry/src/svelte/examples/text-align/index.ts",
          "registry/src/svelte/examples/text-align/toolbar.svelte",
          "registry/src/svelte/sample/sample-doc-text-align.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-text-align",
          "svelte-ui-button"
        ]
      }
    },
    {
      "name": "svelte-example-text-color",
      "title": "svelte-example-text-color",
      "type": "registry:block",
      "description": "Change text and background color.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-text-color.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/text-color/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/text-color/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/text-color/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/text-color/inline-menu.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/inline-menu.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "text-color",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/text-color/editor.svelte",
          "registry/src/svelte/examples/text-color/extension.ts",
          "registry/src/svelte/examples/text-color/index.ts",
          "registry/src/svelte/examples/text-color/inline-menu.svelte",
          "registry/src/svelte/sample/sample-doc-text-color.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-text-color",
          "svelte-ui-button"
        ]
      }
    },
    {
      "name": "svelte-example-toolbar",
      "title": "svelte-example-toolbar",
      "type": "registry:block",
      "description": "Formatting toolbar with common editing actions.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/toolbar/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/toolbar/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "toolbar",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/toolbar/editor.svelte",
          "registry/src/svelte/examples/toolbar/extension.ts",
          "registry/src/svelte/examples/toolbar/index.ts",
          "registry/src/svelte/sample/sample-uploader.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-uploader",
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-typography",
      "title": "svelte-example-typography",
      "type": "registry:block",
      "description": "Typography enhancements like smart quotes and dashes.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-typography.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-drop-indicator.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/typography/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/typography/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/typography/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/typography/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/typography/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/typography/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "typography",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/typography/editor.svelte",
          "registry/src/svelte/examples/typography/extension.ts",
          "registry/src/svelte/examples/typography/index.ts",
          "registry/src/svelte/sample/katex.ts",
          "registry/src/svelte/sample/sample-doc-typography.ts",
          "registry/src/svelte/ui/block-handle/block-handle.svelte",
          "registry/src/svelte/ui/block-handle/index.ts",
          "registry/src/svelte/ui/drop-indicator/drop-indicator.svelte",
          "registry/src/svelte/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": [
          "svelte-sample-katex",
          "svelte-sample-sample-doc-typography",
          "svelte-ui-block-handle",
          "svelte-ui-drop-indicator"
        ]
      }
    },
    {
      "name": "svelte-example-underline",
      "title": "svelte-example-underline",
      "type": "registry:block",
      "description": "Example for underline mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-underline.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/underline/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/underline/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/underline/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/underline/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/underline/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/underline/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "underline",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/underline/editor.svelte",
          "registry/src/svelte/examples/underline/extension.ts",
          "registry/src/svelte/examples/underline/index.ts",
          "registry/src/svelte/sample/sample-doc-underline.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-underline",
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-example-unmount",
      "title": "svelte-example-unmount",
      "type": "registry:block",
      "description": "Properly unmount and remount editor instances.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/unmount/editor-component.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/editor-component.svelte"
        },
        {
          "path": "registry/src/svelte/examples/unmount/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/unmount/extension-component.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/extension-component.svelte"
        },
        {
          "path": "registry/src/svelte/examples/unmount/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "unmount",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/unmount/editor-component.svelte",
          "registry/src/svelte/examples/unmount/editor.svelte",
          "registry/src/svelte/examples/unmount/extension-component.svelte",
          "registry/src/svelte/examples/unmount/index.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/inline-menu/index.ts",
          "registry/src/svelte/ui/inline-menu/inline-menu.svelte"
        ],
        "internalDependencies": [
          "svelte-ui-inline-menu"
        ]
      }
    },
    {
      "name": "svelte-example-user-menu",
      "title": "svelte-example-user-menu",
      "type": "registry:block",
      "description": "Autocomplete menu for @mentions and #hashtag",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/user-menu/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/user-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "user-menu",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/user-menu/editor.svelte",
          "registry/src/svelte/examples/user-menu/extension.ts",
          "registry/src/svelte/examples/user-menu/index.ts",
          "registry/src/svelte/sample/sample-tag-data.ts",
          "registry/src/svelte/sample/sample-user-data.ts",
          "registry/src/svelte/ui/tag-menu/index.ts",
          "registry/src/svelte/ui/tag-menu/tag-menu.svelte",
          "registry/src/svelte/ui/user-menu/index.ts",
          "registry/src/svelte/ui/user-menu/user-menu.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-tag-data",
          "svelte-sample-sample-user-data",
          "svelte-ui-tag-menu",
          "svelte-ui-user-menu"
        ]
      }
    },
    {
      "name": "svelte-example-user-menu-dynamic",
      "title": "svelte-example-user-menu-dynamic",
      "type": "registry:block",
      "description": "Dynamic autocomplete menu with async data loading.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-query-users.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/user-menu-dynamic/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/user-menu-dynamic/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/user-menu-dynamic/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/index.ts"
        },
        {
          "path": "registry/src/svelte/examples/user-menu-dynamic/use-user-query.svelte.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/use-user-query.svelte.ts"
        },
        {
          "path": "registry/src/svelte/examples/user-menu-dynamic/user-menu-dynamic.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/user-menu-dynamic.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "user-menu-dynamic",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/user-menu-dynamic/editor.svelte",
          "registry/src/svelte/examples/user-menu-dynamic/extension.ts",
          "registry/src/svelte/examples/user-menu-dynamic/index.ts",
          "registry/src/svelte/examples/user-menu-dynamic/use-user-query.svelte.ts",
          "registry/src/svelte/examples/user-menu-dynamic/user-menu-dynamic.svelte",
          "registry/src/svelte/sample/sample-query-users.ts",
          "registry/src/svelte/sample/sample-user-data.ts",
          "registry/src/svelte/ui/user-menu/index.ts",
          "registry/src/svelte/ui/user-menu/user-menu.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-query-users",
          "svelte-ui-user-menu"
        ]
      }
    },
    {
      "name": "svelte-example-view-adapter",
      "title": "svelte-example-view-adapter",
      "type": "registry:block",
      "description": "Custom node and mark views using view adapters.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-define-atom-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-view-adapter.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/view-adapter/atom-block-view.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/atom-block-view.svelte"
        },
        {
          "path": "registry/src/svelte/examples/view-adapter/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/view-adapter/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/view-adapter/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": true,
        "story": "view-adapter",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/view-adapter/atom-block-view.svelte",
          "registry/src/svelte/examples/view-adapter/editor.svelte",
          "registry/src/svelte/examples/view-adapter/extension.ts",
          "registry/src/svelte/examples/view-adapter/index.ts",
          "registry/src/svelte/sample/define-atom-block.ts",
          "registry/src/svelte/sample/sample-doc-view-adapter.ts"
        ],
        "internalDependencies": [
          "svelte-sample-define-atom-block",
          "svelte-sample-sample-doc-view-adapter"
        ]
      }
    },
    {
      "name": "svelte-example-word-counter",
      "title": "svelte-example-word-counter",
      "type": "registry:block",
      "description": "Display word and character count statistics.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-doc-word-counter.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-word-counter.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/word-counter/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/word-counter/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/word-counter/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "word-counter",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/word-counter/editor.svelte",
          "registry/src/svelte/examples/word-counter/extension.ts",
          "registry/src/svelte/examples/word-counter/index.ts",
          "registry/src/svelte/sample/sample-doc-word-counter.ts",
          "registry/src/svelte/ui/word-counter/index.ts",
          "registry/src/svelte/ui/word-counter/word-counter.svelte"
        ],
        "internalDependencies": [
          "svelte-sample-sample-doc-word-counter",
          "svelte-ui-word-counter"
        ]
      }
    },
    {
      "name": "svelte-example-yjs",
      "title": "svelte-example-yjs",
      "type": "registry:block",
      "description": "Real-time collaboration using Yjs CRDT library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3",
        "y-websocket",
        "yjs"
      ],
      "files": [
        {
          "path": "registry/src/svelte/examples/yjs/editor-component.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/editor-component.svelte"
        },
        {
          "path": "registry/src/svelte/examples/yjs/editor.svelte",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/editor.svelte"
        },
        {
          "path": "registry/src/svelte/examples/yjs/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/extension.ts"
        },
        {
          "path": "registry/src/svelte/examples/yjs/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "yjs",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/examples/yjs/editor-component.svelte",
          "registry/src/svelte/examples/yjs/editor.svelte",
          "registry/src/svelte/examples/yjs/extension.ts",
          "registry/src/svelte/examples/yjs/index.ts",
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-ui-toolbar"
        ]
      }
    },
    {
      "name": "svelte-sample-define-atom-block",
      "title": "svelte-sample-define-atom-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/define-atom-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/define-atom-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/define-atom-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-katex",
      "title": "svelte-sample-katex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "katex"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/katex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/katex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/katex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-block-handle",
      "title": "svelte-sample-sample-doc-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-block-handle.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-block-handle.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-block-handle.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-bold",
      "title": "svelte-sample-sample-doc-bold",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-bold.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-bold.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-bold.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-code",
      "title": "svelte-sample-sample-doc-code",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-code.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-code.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-code-block",
      "title": "svelte-sample-sample-doc-code-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-code-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-code-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-drop-cursor",
      "title": "svelte-sample-sample-doc-drop-cursor",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-drop-cursor.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-drop-cursor.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-drop-cursor.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-font-family",
      "title": "svelte-sample-sample-doc-font-family",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-font-family.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-font-family.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-font-family.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-full",
      "title": "svelte-sample-sample-doc-full",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-full.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-full.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-full.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-gap-cursor",
      "title": "svelte-sample-sample-doc-gap-cursor",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-gap-cursor.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-gap-cursor.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-gap-cursor.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-hard-break",
      "title": "svelte-sample-sample-doc-hard-break",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-hard-break.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-hard-break.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-hard-break.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-heading",
      "title": "svelte-sample-sample-doc-heading",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-heading.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-heading.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-heading.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-highlight",
      "title": "svelte-sample-sample-doc-highlight",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-highlight.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-highlight.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-highlight.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-image",
      "title": "svelte-sample-sample-doc-image",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-image.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-image.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-image.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-inline-menu",
      "title": "svelte-sample-sample-doc-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-inline-menu.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-inline-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-inline-menu.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-italic",
      "title": "svelte-sample-sample-doc-italic",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-italic.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-italic.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-italic.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-link",
      "title": "svelte-sample-sample-doc-link",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-link.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-link.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-link.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-link-mark-view",
      "title": "svelte-sample-sample-doc-link-mark-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-link-mark-view.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-link-mark-view.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-link-mark-view.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-list",
      "title": "svelte-sample-sample-doc-list",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-list.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-list.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-list.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-list-custom-checkbox",
      "title": "svelte-sample-sample-doc-list-custom-checkbox",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-list-custom-checkbox.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-list-custom-checkbox.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-list-custom-checkbox.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-page",
      "title": "svelte-sample-sample-doc-page",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-page.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-page.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-page.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-readonly",
      "title": "svelte-sample-sample-doc-readonly",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-readonly.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-readonly.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-readonly.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-rtl",
      "title": "svelte-sample-sample-doc-rtl",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-rtl.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-rtl.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-rtl.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-search",
      "title": "svelte-sample-sample-doc-search",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-search.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-search.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-search.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-strike",
      "title": "svelte-sample-sample-doc-strike",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-strike.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-strike.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-strike.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-sub-sup",
      "title": "svelte-sample-sample-doc-sub-sup",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-sub-sup.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-sub-sup.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-sub-sup.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-table",
      "title": "svelte-sample-sample-doc-table",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-table.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-table.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-table.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-tex",
      "title": "svelte-sample-sample-doc-tex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-tex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-tex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-tex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-text-align",
      "title": "svelte-sample-sample-doc-text-align",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-text-align.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-text-align.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-text-align.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-text-color",
      "title": "svelte-sample-sample-doc-text-color",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-text-color.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-text-color.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-text-color.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-typography",
      "title": "svelte-sample-sample-doc-typography",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-typography.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-typography.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-typography.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-underline",
      "title": "svelte-sample-sample-doc-underline",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-underline.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-underline.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-underline.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-view-adapter",
      "title": "svelte-sample-sample-doc-view-adapter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-view-adapter.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-view-adapter.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-view-adapter.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-doc-word-counter",
      "title": "svelte-sample-sample-doc-word-counter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-doc-word-counter.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-word-counter.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-doc-word-counter.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-query-users",
      "title": "svelte-sample-sample-query-users",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-sample-sample-user-data.json"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-query-users.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-query-users.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-query-users.ts",
          "registry/src/svelte/sample/sample-user-data.ts"
        ],
        "internalDependencies": [
          "svelte-sample-sample-user-data"
        ]
      }
    },
    {
      "name": "svelte-sample-sample-tag-data",
      "title": "svelte-sample-sample-tag-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-tag-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-tag-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-tag-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-uploader",
      "title": "svelte-sample-sample-uploader",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-uploader.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-uploader.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-uploader.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-sample-sample-user-data",
      "title": "svelte-sample-sample-user-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/svelte/sample/sample-user-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-user-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/sample/sample-user-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-ui-block-handle",
      "title": "svelte-ui-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/block-handle/block-handle.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/block-handle.svelte"
        },
        {
          "path": "registry/src/svelte/ui/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/block-handle/block-handle.svelte",
          "registry/src/svelte/ui/block-handle/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "svelte-ui-button",
      "title": "svelte-ui-button",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/button/button.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/button/button.svelte"
        },
        {
          "path": "registry/src/svelte/ui/button/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/button/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-ui-code-block-view",
      "title": "svelte-ui-code-block-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "beautiful-mermaid",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/code-block-view/code-block-view.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/code-block-view.svelte"
        },
        {
          "path": "registry/src/svelte/ui/code-block-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/code-block-view/code-block-view.svelte",
          "registry/src/svelte/ui/code-block-view/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-ui-drop-indicator",
      "title": "svelte-ui-drop-indicator",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/drop-indicator/drop-indicator.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/drop-indicator.svelte"
        },
        {
          "path": "registry/src/svelte/ui/drop-indicator/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/drop-indicator/drop-indicator.svelte",
          "registry/src/svelte/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-ui-image-upload-popover",
      "title": "svelte-ui-image-upload-popover",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/image-upload-popover.svelte"
        },
        {
          "path": "registry/src/svelte/ui/image-upload-popover/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts"
        ],
        "internalDependencies": [
          "svelte-ui-button"
        ]
      }
    },
    {
      "name": "svelte-ui-image-view",
      "title": "svelte-ui-image-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/image-view/image-view.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/image-view.svelte"
        },
        {
          "path": "registry/src/svelte/ui/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/image-view/image-view.svelte",
          "registry/src/svelte/ui/image-view/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "svelte-ui-inline-menu",
      "title": "svelte-ui-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/index.ts"
        },
        {
          "path": "registry/src/svelte/ui/inline-menu/inline-menu.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/inline-menu.svelte"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/inline-menu/index.ts",
          "registry/src/svelte/ui/inline-menu/inline-menu.svelte"
        ],
        "internalDependencies": [
          "svelte-ui-button"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "svelte-ui-search",
      "title": "svelte-ui-search",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/search/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/search/index.ts"
        },
        {
          "path": "registry/src/svelte/ui/search/search.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/search/search.svelte"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/search/index.ts",
          "registry/src/svelte/ui/search/search.svelte"
        ],
        "internalDependencies": [
          "svelte-ui-button"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "svelte-ui-slash-menu",
      "title": "svelte-ui-slash-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/index.ts"
        },
        {
          "path": "registry/src/svelte/ui/slash-menu/slash-menu-empty.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-empty.svelte"
        },
        {
          "path": "registry/src/svelte/ui/slash-menu/slash-menu-item.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-item.svelte"
        },
        {
          "path": "registry/src/svelte/ui/slash-menu/slash-menu.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/slash-menu/index.ts",
          "registry/src/svelte/ui/slash-menu/slash-menu-empty.svelte",
          "registry/src/svelte/ui/slash-menu/slash-menu-item.svelte",
          "registry/src/svelte/ui/slash-menu/slash-menu.svelte"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-ui-table-handle",
      "title": "svelte-ui-table-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/table-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/index.ts"
        },
        {
          "path": "registry/src/svelte/ui/table-handle/table-handle.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/table-handle.svelte"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/table-handle/index.ts",
          "registry/src/svelte/ui/table-handle/table-handle.svelte"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "svelte-ui-tag-menu",
      "title": "svelte-ui-tag-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/tag-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/index.ts"
        },
        {
          "path": "registry/src/svelte/ui/tag-menu/tag-menu.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/tag-menu.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/tag-menu/index.ts",
          "registry/src/svelte/ui/tag-menu/tag-menu.svelte"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-ui-toolbar",
      "title": "svelte-ui-toolbar",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-button.json",
        "https://unpkg.com/prosekit-registry/dist/r/svelte-ui-image-upload-popover.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/index.ts"
        },
        {
          "path": "registry/src/svelte/ui/toolbar/toolbar.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/toolbar.svelte"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/button/button.svelte",
          "registry/src/svelte/ui/button/index.ts",
          "registry/src/svelte/ui/image-upload-popover/image-upload-popover.svelte",
          "registry/src/svelte/ui/image-upload-popover/index.ts",
          "registry/src/svelte/ui/toolbar/index.ts",
          "registry/src/svelte/ui/toolbar/toolbar.svelte"
        ],
        "internalDependencies": [
          "svelte-ui-button",
          "svelte-ui-image-upload-popover"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "svelte-ui-user-menu",
      "title": "svelte-ui-user-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/index.ts"
        },
        {
          "path": "registry/src/svelte/ui/user-menu/user-menu.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/user-menu.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/user-menu/index.ts",
          "registry/src/svelte/ui/user-menu/user-menu.svelte"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "svelte-ui-word-counter",
      "title": "svelte-ui-word-counter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/svelte/ui/word-counter/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/word-counter/index.ts"
        },
        {
          "path": "registry/src/svelte/ui/word-counter/word-counter.svelte",
          "type": "registry:component",
          "target": "components/editor/ui/word-counter/word-counter.svelte"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "svelte",
        "accumulatedFiles": [
          "registry/src/svelte/ui/word-counter/index.ts",
          "registry/src/svelte/ui/word-counter/word-counter.svelte"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-example-block-handle",
      "title": "solid-example-block-handle",
      "type": "registry:block",
      "description": "A handle that appears on hover, allowing you to drag and re-order blocks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-drop-indicator.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/block-handle/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/block-handle/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "block-handle",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/block-handle/editor.tsx",
          "registry/src/solid/examples/block-handle/extension.ts",
          "registry/src/solid/examples/block-handle/index.ts",
          "registry/src/solid/sample/sample-doc-block-handle.ts",
          "registry/src/solid/ui/block-handle/block-handle.tsx",
          "registry/src/solid/ui/block-handle/index.ts",
          "registry/src/solid/ui/code-block-view/code-block-view.tsx",
          "registry/src/solid/ui/code-block-view/index.ts",
          "registry/src/solid/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/solid/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-block-handle",
          "solid-ui-block-handle",
          "solid-ui-code-block-view",
          "solid-ui-drop-indicator"
        ]
      }
    },
    {
      "name": "solid-example-blockquote",
      "title": "solid-example-blockquote",
      "type": "registry:block",
      "description": "Example for blockquote node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/blockquote/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/blockquote/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/blockquote/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/blockquote/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "blockquote",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/blockquote/editor.tsx",
          "registry/src/solid/examples/blockquote/extension.ts",
          "registry/src/solid/examples/blockquote/index.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-bold",
      "title": "solid-example-bold",
      "type": "registry:block",
      "description": "Example for bold mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-bold.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/bold/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/bold/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/bold/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/bold/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/bold/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/bold/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "bold",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/bold/editor.tsx",
          "registry/src/solid/examples/bold/extension.ts",
          "registry/src/solid/examples/bold/index.ts",
          "registry/src/solid/sample/sample-doc-bold.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-bold",
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-change-tracking",
      "title": "solid-example-change-tracking",
      "type": "registry:block",
      "description": "Track and commit document changes with version history.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/change-tracking/editor-diff.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor-diff.tsx"
        },
        {
          "path": "registry/src/solid/examples/change-tracking/editor-main.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor-main.tsx"
        },
        {
          "path": "registry/src/solid/examples/change-tracking/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/change-tracking/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/change-tracking/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "change-tracking",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/change-tracking/editor-diff.tsx",
          "registry/src/solid/examples/change-tracking/editor-main.tsx",
          "registry/src/solid/examples/change-tracking/editor.tsx",
          "registry/src/solid/examples/change-tracking/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-example-code",
      "title": "solid-example-code",
      "type": "registry:block",
      "description": "Example for inline code mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-code.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/code/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/code/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/code/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/code/editor.tsx",
          "registry/src/solid/examples/code/extension.ts",
          "registry/src/solid/examples/code/index.ts",
          "registry/src/solid/sample/sample-doc-code.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-code",
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-code-block",
      "title": "solid-example-code-block",
      "type": "registry:block",
      "description": "Code block with syntax highlighting and a Mermaid diagram preview.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/code-block/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/code-block/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/code-block/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/code-block/editor.tsx",
          "registry/src/solid/examples/code-block/extension.ts",
          "registry/src/solid/examples/code-block/index.ts",
          "registry/src/solid/sample/sample-doc-code-block.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/code-block-view/code-block-view.tsx",
          "registry/src/solid/ui/code-block-view/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-code-block",
          "solid-ui-code-block-view",
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-code-block-themes",
      "title": "solid-example-code-block-themes",
      "type": "registry:block",
      "description": "Code block with multiple syntax highlighting themes.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-code-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-code-block-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/code-block-themes/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/code-block-themes/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/code-block-themes/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/index.ts"
        },
        {
          "path": "registry/src/solid/examples/code-block-themes/theme-selector.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/theme-selector.tsx"
        },
        {
          "path": "registry/src/solid/examples/code-block-themes/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/code-block-themes/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "code-block-themes",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/code-block-themes/editor.tsx",
          "registry/src/solid/examples/code-block-themes/extension.ts",
          "registry/src/solid/examples/code-block-themes/index.ts",
          "registry/src/solid/examples/code-block-themes/theme-selector.tsx",
          "registry/src/solid/examples/code-block-themes/toolbar.tsx",
          "registry/src/solid/sample/sample-doc-code-block.ts",
          "registry/src/solid/ui/code-block-view/code-block-view.tsx",
          "registry/src/solid/ui/code-block-view/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-code-block",
          "solid-ui-code-block-view"
        ]
      }
    },
    {
      "name": "solid-example-drop-cursor",
      "title": "solid-example-drop-cursor",
      "type": "registry:block",
      "description": "Visual cursor indicator during drag-and-drop operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-drop-cursor.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/drop-cursor/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/drop-cursor/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/drop-cursor/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/drop-cursor/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "drop-cursor",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/drop-cursor/editor.tsx",
          "registry/src/solid/examples/drop-cursor/extension.ts",
          "registry/src/solid/examples/drop-cursor/index.ts",
          "registry/src/solid/sample/sample-doc-drop-cursor.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-drop-cursor"
        ]
      }
    },
    {
      "name": "solid-example-emoji-rules",
      "title": "solid-example-emoji-rules",
      "type": "registry:block",
      "description": "Auto-convert text shortcuts to emojis using input rules.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/emoji-rules/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/emoji-rules/emoji.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/emoji.ts"
        },
        {
          "path": "registry/src/solid/examples/emoji-rules/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/emoji-rules/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/emoji-rules/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "emoji-rules",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/emoji-rules/editor.tsx",
          "registry/src/solid/examples/emoji-rules/emoji.ts",
          "registry/src/solid/examples/emoji-rules/extension.ts",
          "registry/src/solid/examples/emoji-rules/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-example-font-family",
      "title": "solid-example-font-family",
      "type": "registry:block",
      "description": "Change the font family of text.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-font-family.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/font-family/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/font-family/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/font-family/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/index.ts"
        },
        {
          "path": "registry/src/solid/examples/font-family/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/font-family/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "font-family",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/font-family/editor.tsx",
          "registry/src/solid/examples/font-family/extension.ts",
          "registry/src/solid/examples/font-family/index.ts",
          "registry/src/solid/examples/font-family/toolbar.tsx",
          "registry/src/solid/sample/sample-doc-font-family.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-font-family"
        ]
      }
    },
    {
      "name": "solid-example-full",
      "title": "solid-example-full",
      "type": "registry:block",
      "description": "Full-featured editor with most available features enabled.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-full.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-code-block-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-image-view.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/full/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/full/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/full/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/full/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/full/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "full",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/full/editor.tsx",
          "registry/src/solid/examples/full/extension.ts",
          "registry/src/solid/examples/full/index.ts",
          "registry/src/solid/sample/katex.ts",
          "registry/src/solid/sample/sample-doc-full.ts",
          "registry/src/solid/sample/sample-tag-data.ts",
          "registry/src/solid/sample/sample-uploader.ts",
          "registry/src/solid/sample/sample-user-data.ts",
          "registry/src/solid/ui/block-handle/block-handle.tsx",
          "registry/src/solid/ui/block-handle/index.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/code-block-view/code-block-view.tsx",
          "registry/src/solid/ui/code-block-view/index.ts",
          "registry/src/solid/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/solid/ui/drop-indicator/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/image-view/image-view.tsx",
          "registry/src/solid/ui/image-view/index.ts",
          "registry/src/solid/ui/inline-menu/index.ts",
          "registry/src/solid/ui/inline-menu/inline-menu.tsx",
          "registry/src/solid/ui/slash-menu/index.ts",
          "registry/src/solid/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/solid/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/solid/ui/slash-menu/slash-menu.tsx",
          "registry/src/solid/ui/table-handle/index.ts",
          "registry/src/solid/ui/table-handle/table-handle.tsx",
          "registry/src/solid/ui/tag-menu/index.ts",
          "registry/src/solid/ui/tag-menu/tag-menu.tsx",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx",
          "registry/src/solid/ui/user-menu/index.ts",
          "registry/src/solid/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": [
          "solid-sample-katex",
          "solid-sample-sample-doc-full",
          "solid-sample-sample-tag-data",
          "solid-sample-sample-uploader",
          "solid-sample-sample-user-data",
          "solid-ui-block-handle",
          "solid-ui-code-block-view",
          "solid-ui-drop-indicator",
          "solid-ui-image-view",
          "solid-ui-inline-menu",
          "solid-ui-slash-menu",
          "solid-ui-table-handle",
          "solid-ui-tag-menu",
          "solid-ui-toolbar",
          "solid-ui-user-menu"
        ]
      }
    },
    {
      "name": "solid-example-gap-cursor",
      "title": "solid-example-gap-cursor",
      "type": "registry:block",
      "description": "Cursor navigation between non-text block elements.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-gap-cursor.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/gap-cursor/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/gap-cursor/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/gap-cursor/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/gap-cursor/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "gap-cursor",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/gap-cursor/editor.tsx",
          "registry/src/solid/examples/gap-cursor/extension.ts",
          "registry/src/solid/examples/gap-cursor/index.ts",
          "registry/src/solid/sample/sample-doc-gap-cursor.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-gap-cursor"
        ]
      }
    },
    {
      "name": "solid-example-hard-break",
      "title": "solid-example-hard-break",
      "type": "registry:block",
      "description": "Example for hard line break node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-hard-break.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/hard-break/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/hard-break/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/hard-break/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/index.ts"
        },
        {
          "path": "registry/src/solid/examples/hard-break/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/hard-break/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "hard-break",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/hard-break/editor.tsx",
          "registry/src/solid/examples/hard-break/extension.ts",
          "registry/src/solid/examples/hard-break/index.ts",
          "registry/src/solid/examples/hard-break/toolbar.tsx",
          "registry/src/solid/sample/sample-doc-hard-break.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-hard-break",
          "solid-ui-button"
        ]
      }
    },
    {
      "name": "solid-example-heading",
      "title": "solid-example-heading",
      "type": "registry:block",
      "description": "Example for heading node with multiple levels.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-heading.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/heading/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/heading/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/heading/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/heading/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/heading/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/heading/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "heading",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/heading/editor.tsx",
          "registry/src/solid/examples/heading/extension.ts",
          "registry/src/solid/examples/heading/index.ts",
          "registry/src/solid/sample/sample-doc-heading.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-heading",
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-highlight",
      "title": "solid-example-highlight",
      "type": "registry:block",
      "description": "Example for highlighting text (like a highlighter pen).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-highlight.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/highlight/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/highlight/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/highlight/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/index.ts"
        },
        {
          "path": "registry/src/solid/examples/highlight/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/highlight/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "highlight",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/highlight/editor.tsx",
          "registry/src/solid/examples/highlight/extension.ts",
          "registry/src/solid/examples/highlight/index.ts",
          "registry/src/solid/examples/highlight/toolbar.tsx",
          "registry/src/solid/sample/sample-doc-highlight.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-highlight",
          "solid-ui-button"
        ]
      }
    },
    {
      "name": "solid-example-horizontal-rule",
      "title": "solid-example-horizontal-rule",
      "type": "registry:block",
      "description": "Example for horizontal rule node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/horizontal-rule/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/horizontal-rule/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/horizontal-rule/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/horizontal-rule/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "horizontal-rule",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/horizontal-rule/editor.tsx",
          "registry/src/solid/examples/horizontal-rule/extension.ts",
          "registry/src/solid/examples/horizontal-rule/index.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-image-view",
      "title": "solid-example-image-view",
      "type": "registry:block",
      "description": "Custom image node views with resize support.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-image.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-image-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/image-view/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/image-view/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "image-view",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/image-view/editor.tsx",
          "registry/src/solid/examples/image-view/extension.ts",
          "registry/src/solid/examples/image-view/index.ts",
          "registry/src/solid/sample/sample-doc-image.ts",
          "registry/src/solid/sample/sample-uploader.ts",
          "registry/src/solid/ui/image-view/image-view.tsx",
          "registry/src/solid/ui/image-view/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-image",
          "solid-sample-sample-uploader",
          "solid-ui-image-view"
        ]
      }
    },
    {
      "name": "solid-example-inline-menu",
      "title": "solid-example-inline-menu",
      "type": "registry:block",
      "description": "Inline formatting menu that appears on text selection.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/inline-menu/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/inline-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/inline-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "inline-menu",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/inline-menu/editor.tsx",
          "registry/src/solid/examples/inline-menu/extension.ts",
          "registry/src/solid/examples/inline-menu/index.ts",
          "registry/src/solid/sample/sample-doc-inline-menu.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/inline-menu/index.ts",
          "registry/src/solid/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-inline-menu",
          "solid-ui-inline-menu"
        ]
      }
    },
    {
      "name": "solid-example-italic",
      "title": "solid-example-italic",
      "type": "registry:block",
      "description": "Example for italic mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-italic.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/italic/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/italic/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/italic/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/italic/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/italic/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/italic/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "italic",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/italic/editor.tsx",
          "registry/src/solid/examples/italic/extension.ts",
          "registry/src/solid/examples/italic/index.ts",
          "registry/src/solid/sample/sample-doc-italic.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-italic",
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-katex",
      "title": "solid-example-katex",
      "type": "registry:block",
      "description": "Math equation rendering using the KaTeX library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-tex.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/katex/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/katex/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/katex/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/katex/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/katex/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/katex/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "katex",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/katex/editor.tsx",
          "registry/src/solid/examples/katex/extension.ts",
          "registry/src/solid/examples/katex/index.ts",
          "registry/src/solid/sample/katex.ts",
          "registry/src/solid/sample/sample-doc-tex.ts"
        ],
        "internalDependencies": [
          "solid-sample-katex",
          "solid-sample-sample-doc-tex"
        ]
      }
    },
    {
      "name": "solid-example-keymap",
      "title": "solid-example-keymap",
      "type": "registry:block",
      "description": "Custom keyboard shortcuts and key bindings.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/keymap/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/keymap/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/keymap/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/index.ts"
        },
        {
          "path": "registry/src/solid/examples/keymap/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/toolbar.tsx"
        },
        {
          "path": "registry/src/solid/examples/keymap/use-submit-keymap.ts",
          "type": "registry:component",
          "target": "components/editor/examples/keymap/use-submit-keymap.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "keymap",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/keymap/editor.tsx",
          "registry/src/solid/examples/keymap/extension.ts",
          "registry/src/solid/examples/keymap/index.ts",
          "registry/src/solid/examples/keymap/toolbar.tsx",
          "registry/src/solid/examples/keymap/use-submit-keymap.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts"
        ],
        "internalDependencies": [
          "solid-ui-button"
        ]
      }
    },
    {
      "name": "solid-example-link",
      "title": "solid-example-link",
      "type": "registry:block",
      "description": "Example for link mark with URL input.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-link.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/link/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/link/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/link/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/link/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "link",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/link/editor.tsx",
          "registry/src/solid/examples/link/extension.ts",
          "registry/src/solid/examples/link/index.ts",
          "registry/src/solid/sample/sample-doc-link.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/inline-menu/index.ts",
          "registry/src/solid/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-link",
          "solid-ui-inline-menu"
        ]
      }
    },
    {
      "name": "solid-example-link-mark-view",
      "title": "solid-example-link-mark-view",
      "type": "registry:block",
      "description": "An example showing how to render a mark as a custom component.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-link-mark-view.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/link-mark-view/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/link-mark-view/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/link-mark-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/index.ts"
        },
        {
          "path": "registry/src/solid/examples/link-mark-view/link-view.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/link-mark-view/link-view.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "link-mark-view",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/link-mark-view/editor.tsx",
          "registry/src/solid/examples/link-mark-view/extension.ts",
          "registry/src/solid/examples/link-mark-view/index.ts",
          "registry/src/solid/examples/link-mark-view/link-view.tsx",
          "registry/src/solid/sample/sample-doc-link-mark-view.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-link-mark-view"
        ]
      }
    },
    {
      "name": "solid-example-list",
      "title": "solid-example-list",
      "type": "registry:block",
      "description": "Example for list node.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-list.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/list/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/list/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/list/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/list/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "list",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/list/editor.tsx",
          "registry/src/solid/examples/list/extension.ts",
          "registry/src/solid/examples/list/index.ts",
          "registry/src/solid/sample/sample-doc-list.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-list",
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-list-custom-checkbox",
      "title": "solid-example-list-custom-checkbox",
      "type": "registry:block",
      "description": "Custom checkbox styling for task lists.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-list-custom-checkbox.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/list-custom-checkbox/custom-list.css",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/custom-list.css"
        },
        {
          "path": "registry/src/solid/examples/list-custom-checkbox/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/list-custom-checkbox/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/list-custom-checkbox/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/list-custom-checkbox/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "list-custom-checkbox",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/list-custom-checkbox/custom-list.css",
          "registry/src/solid/examples/list-custom-checkbox/editor.tsx",
          "registry/src/solid/examples/list-custom-checkbox/extension.ts",
          "registry/src/solid/examples/list-custom-checkbox/index.ts",
          "registry/src/solid/sample/sample-doc-list-custom-checkbox.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-list-custom-checkbox",
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-loro",
      "title": "solid-example-loro",
      "type": "registry:block",
      "description": "Real-time collaboration using Loro CRDT library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "loro-crdt",
        "loro-prosemirror",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/loro/editor-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/loro/editor-component.tsx"
        },
        {
          "path": "registry/src/solid/examples/loro/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/loro/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/loro/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/loro/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/loro/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/loro/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "loro",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/loro/editor-component.tsx",
          "registry/src/solid/examples/loro/editor.tsx",
          "registry/src/solid/examples/loro/extension.ts",
          "registry/src/solid/examples/loro/index.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-mark-rule",
      "title": "solid-example-mark-rule",
      "type": "registry:block",
      "description": "Input rules for automatic mark formatting.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/mark-rule/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/mark-rule/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/mark-rule/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/index.ts"
        },
        {
          "path": "registry/src/solid/examples/mark-rule/issue-link.ts",
          "type": "registry:component",
          "target": "components/editor/examples/mark-rule/issue-link.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "mark-rule",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/mark-rule/editor.tsx",
          "registry/src/solid/examples/mark-rule/extension.ts",
          "registry/src/solid/examples/mark-rule/index.ts",
          "registry/src/solid/examples/mark-rule/issue-link.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-example-minimal",
      "title": "solid-example-minimal",
      "type": "registry:block",
      "description": "Minimal editor setup with basic functionality.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/minimal/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/minimal/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "minimal",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/minimal/editor.tsx",
          "registry/src/solid/examples/minimal/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-example-placeholder",
      "title": "solid-example-placeholder",
      "type": "registry:block",
      "description": "Placeholder text displayed.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/placeholder/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/placeholder/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/placeholder/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/placeholder/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "placeholder",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/placeholder/editor.tsx",
          "registry/src/solid/examples/placeholder/extension.ts",
          "registry/src/solid/examples/placeholder/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-example-readonly",
      "title": "solid-example-readonly",
      "type": "registry:block",
      "description": "Toggle between read-only and editable mode.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-readonly.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/readonly/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/readonly/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/readonly/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/index.ts"
        },
        {
          "path": "registry/src/solid/examples/readonly/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/toolbar.tsx"
        },
        {
          "path": "registry/src/solid/examples/readonly/use-readonly.ts",
          "type": "registry:component",
          "target": "components/editor/examples/readonly/use-readonly.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "readonly",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/readonly/editor.tsx",
          "registry/src/solid/examples/readonly/extension.ts",
          "registry/src/solid/examples/readonly/index.ts",
          "registry/src/solid/examples/readonly/toolbar.tsx",
          "registry/src/solid/examples/readonly/use-readonly.ts",
          "registry/src/solid/sample/sample-doc-readonly.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-readonly",
          "solid-ui-button"
        ]
      }
    },
    {
      "name": "solid-example-rtl",
      "title": "solid-example-rtl",
      "type": "registry:block",
      "description": "Right-to-left text direction support.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-rtl.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-drop-indicator.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-inline-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-slash-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-table-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/rtl/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/rtl/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/rtl/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/rtl/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "rtl",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/rtl/editor.tsx",
          "registry/src/solid/examples/rtl/index.ts",
          "registry/src/solid/sample/sample-doc-rtl.ts",
          "registry/src/solid/sample/sample-uploader.ts",
          "registry/src/solid/ui/block-handle/block-handle.tsx",
          "registry/src/solid/ui/block-handle/index.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/solid/ui/drop-indicator/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/inline-menu/index.ts",
          "registry/src/solid/ui/inline-menu/inline-menu.tsx",
          "registry/src/solid/ui/slash-menu/index.ts",
          "registry/src/solid/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/solid/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/solid/ui/slash-menu/slash-menu.tsx",
          "registry/src/solid/ui/table-handle/index.ts",
          "registry/src/solid/ui/table-handle/table-handle.tsx",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-rtl",
          "solid-sample-sample-uploader",
          "solid-ui-block-handle",
          "solid-ui-drop-indicator",
          "solid-ui-inline-menu",
          "solid-ui-slash-menu",
          "solid-ui-table-handle",
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-save-html",
      "title": "solid-example-save-html",
      "type": "registry:block",
      "description": "Save and load documents as HTML format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/save-html/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/save-html/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/save-html/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-html/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-html",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/save-html/editor.tsx",
          "registry/src/solid/examples/save-html/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-example-save-json",
      "title": "solid-example-save-json",
      "type": "registry:block",
      "description": "Save and load documents as JSON format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/save-json/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/save-json/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/save-json/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-json/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-json",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/save-json/editor.tsx",
          "registry/src/solid/examples/save-json/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-example-save-markdown",
      "title": "solid-example-save-markdown",
      "type": "registry:block",
      "description": "Save and load documents as Markdown format.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3",
        "rehype-parse",
        "rehype-remark",
        "remark-gfm",
        "remark-html",
        "remark-parse",
        "remark-stringify",
        "unified"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/save-markdown/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/save-markdown/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/index.ts"
        },
        {
          "path": "registry/src/solid/examples/save-markdown/markdown.ts",
          "type": "registry:component",
          "target": "components/editor/examples/save-markdown/markdown.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "save-markdown",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/save-markdown/editor.tsx",
          "registry/src/solid/examples/save-markdown/index.ts",
          "registry/src/solid/examples/save-markdown/markdown.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-example-search",
      "title": "solid-example-search",
      "type": "registry:block",
      "description": "Search and highlight text with navigation.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-search.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-search.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/search/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/search/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/search/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/search/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/search/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/search/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "search",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/search/editor.tsx",
          "registry/src/solid/examples/search/extension.ts",
          "registry/src/solid/examples/search/index.ts",
          "registry/src/solid/sample/sample-doc-search.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/search/index.ts",
          "registry/src/solid/ui/search/search.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-search",
          "solid-ui-search"
        ]
      }
    },
    {
      "name": "solid-example-slash-menu",
      "title": "solid-example-slash-menu",
      "type": "registry:block",
      "description": "Command menu triggered by typing slash (/).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-slash-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/slash-menu/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/slash-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "slash-menu",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/slash-menu/editor.tsx",
          "registry/src/solid/examples/slash-menu/extension.ts",
          "registry/src/solid/examples/slash-menu/index.ts",
          "registry/src/solid/ui/slash-menu/index.ts",
          "registry/src/solid/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/solid/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/solid/ui/slash-menu/slash-menu.tsx"
        ],
        "internalDependencies": [
          "solid-ui-slash-menu"
        ]
      }
    },
    {
      "name": "solid-example-strike",
      "title": "solid-example-strike",
      "type": "registry:block",
      "description": "Example for strikethrough mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-strike.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/strike/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/strike/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/strike/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/strike/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/strike/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/strike/index.ts"
        },
        {
          "path": "registry/src/solid/examples/strike/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/strike/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "strike",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/strike/editor.tsx",
          "registry/src/solid/examples/strike/extension.ts",
          "registry/src/solid/examples/strike/index.ts",
          "registry/src/solid/examples/strike/toolbar.tsx",
          "registry/src/solid/sample/sample-doc-strike.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-strike",
          "solid-ui-button"
        ]
      }
    },
    {
      "name": "solid-example-sub-sup",
      "title": "solid-example-sub-sup",
      "type": "registry:block",
      "description": "Example for subscript and superscript marks.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-sub-sup.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/sub-sup/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/sub-sup/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/sub-sup/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/index.ts"
        },
        {
          "path": "registry/src/solid/examples/sub-sup/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/sub-sup/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "sub-sup",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/sub-sup/editor.tsx",
          "registry/src/solid/examples/sub-sup/extension.ts",
          "registry/src/solid/examples/sub-sup/index.ts",
          "registry/src/solid/examples/sub-sup/toolbar.tsx",
          "registry/src/solid/sample/sample-doc-sub-sup.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-sub-sup",
          "solid-ui-button"
        ]
      }
    },
    {
      "name": "solid-example-table",
      "title": "solid-example-table",
      "type": "registry:block",
      "description": "Table node with row and column operations.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-table.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-table-handle.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/table/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/table/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/table/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/table/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/table/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "table",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/table/editor.tsx",
          "registry/src/solid/examples/table/extension.ts",
          "registry/src/solid/examples/table/index.ts",
          "registry/src/solid/sample/sample-doc-table.ts",
          "registry/src/solid/ui/table-handle/index.ts",
          "registry/src/solid/ui/table-handle/table-handle.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-table",
          "solid-ui-table-handle"
        ]
      }
    },
    {
      "name": "solid-example-text-align",
      "title": "solid-example-text-align",
      "type": "registry:block",
      "description": "Text alignment options (left, center, right, justify).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-text-align.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/text-align/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/text-align/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/text-align/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/index.ts"
        },
        {
          "path": "registry/src/solid/examples/text-align/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-align/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "text-align",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/text-align/editor.tsx",
          "registry/src/solid/examples/text-align/extension.ts",
          "registry/src/solid/examples/text-align/index.ts",
          "registry/src/solid/examples/text-align/toolbar.tsx",
          "registry/src/solid/sample/sample-doc-text-align.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-text-align",
          "solid-ui-button"
        ]
      }
    },
    {
      "name": "solid-example-text-color",
      "title": "solid-example-text-color",
      "type": "registry:block",
      "description": "Change text and background color.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-text-color.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/text-color/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/text-color/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/text-color/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/index.ts"
        },
        {
          "path": "registry/src/solid/examples/text-color/inline-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/text-color/inline-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "text-color",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/text-color/editor.tsx",
          "registry/src/solid/examples/text-color/extension.ts",
          "registry/src/solid/examples/text-color/index.ts",
          "registry/src/solid/examples/text-color/inline-menu.tsx",
          "registry/src/solid/sample/sample-doc-text-color.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-text-color",
          "solid-ui-button"
        ]
      }
    },
    {
      "name": "solid-example-toolbar",
      "title": "solid-example-toolbar",
      "type": "registry:block",
      "description": "Formatting toolbar with common editing actions.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-uploader.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/toolbar/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/toolbar/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/toolbar/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "toolbar",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/toolbar/editor.tsx",
          "registry/src/solid/examples/toolbar/extension.ts",
          "registry/src/solid/examples/toolbar/index.ts",
          "registry/src/solid/sample/sample-uploader.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-uploader",
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-typography",
      "title": "solid-example-typography",
      "type": "registry:block",
      "description": "Typography enhancements like smart quotes and dashes.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-katex.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-typography.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-block-handle.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-drop-indicator.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/typography/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/typography/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/typography/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/typography/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/typography/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/typography/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "typography",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/typography/editor.tsx",
          "registry/src/solid/examples/typography/extension.ts",
          "registry/src/solid/examples/typography/index.ts",
          "registry/src/solid/sample/katex.ts",
          "registry/src/solid/sample/sample-doc-typography.ts",
          "registry/src/solid/ui/block-handle/block-handle.tsx",
          "registry/src/solid/ui/block-handle/index.ts",
          "registry/src/solid/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/solid/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": [
          "solid-sample-katex",
          "solid-sample-sample-doc-typography",
          "solid-ui-block-handle",
          "solid-ui-drop-indicator"
        ]
      }
    },
    {
      "name": "solid-example-underline",
      "title": "solid-example-underline",
      "type": "registry:block",
      "description": "Example for underline mark.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-underline.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/underline/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/underline/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/underline/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/underline/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/underline/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/underline/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "underline",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/underline/editor.tsx",
          "registry/src/solid/examples/underline/extension.ts",
          "registry/src/solid/examples/underline/index.ts",
          "registry/src/solid/sample/sample-doc-underline.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-underline",
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-example-unmount",
      "title": "solid-example-unmount",
      "type": "registry:block",
      "description": "Properly unmount and remount editor instances.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-inline-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/unmount/editor-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/editor-component.tsx"
        },
        {
          "path": "registry/src/solid/examples/unmount/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/unmount/extension-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/extension-component.tsx"
        },
        {
          "path": "registry/src/solid/examples/unmount/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/unmount/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "unmount",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/unmount/editor-component.tsx",
          "registry/src/solid/examples/unmount/editor.tsx",
          "registry/src/solid/examples/unmount/extension-component.tsx",
          "registry/src/solid/examples/unmount/index.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/inline-menu/index.ts",
          "registry/src/solid/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "solid-ui-inline-menu"
        ]
      }
    },
    {
      "name": "solid-example-user-menu",
      "title": "solid-example-user-menu",
      "type": "registry:block",
      "description": "Autocomplete menu for @mentions and #hashtag",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-tag-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-user-data.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-tag-menu.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/user-menu/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/user-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "user-menu",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/user-menu/editor.tsx",
          "registry/src/solid/examples/user-menu/extension.ts",
          "registry/src/solid/examples/user-menu/index.ts",
          "registry/src/solid/sample/sample-tag-data.ts",
          "registry/src/solid/sample/sample-user-data.ts",
          "registry/src/solid/ui/tag-menu/index.ts",
          "registry/src/solid/ui/tag-menu/tag-menu.tsx",
          "registry/src/solid/ui/user-menu/index.ts",
          "registry/src/solid/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-tag-data",
          "solid-sample-sample-user-data",
          "solid-ui-tag-menu",
          "solid-ui-user-menu"
        ]
      }
    },
    {
      "name": "solid-example-user-menu-dynamic",
      "title": "solid-example-user-menu-dynamic",
      "type": "registry:block",
      "description": "Dynamic autocomplete menu with async data loading.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-query-users.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-user-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/user-menu-dynamic/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/user-menu-dynamic/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/user-menu-dynamic/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/index.ts"
        },
        {
          "path": "registry/src/solid/examples/user-menu-dynamic/use-user-query.ts",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/use-user-query.ts"
        },
        {
          "path": "registry/src/solid/examples/user-menu-dynamic/user-menu-dynamic.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/user-menu-dynamic/user-menu-dynamic.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "user-menu-dynamic",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/user-menu-dynamic/editor.tsx",
          "registry/src/solid/examples/user-menu-dynamic/extension.ts",
          "registry/src/solid/examples/user-menu-dynamic/index.ts",
          "registry/src/solid/examples/user-menu-dynamic/use-user-query.ts",
          "registry/src/solid/examples/user-menu-dynamic/user-menu-dynamic.tsx",
          "registry/src/solid/sample/sample-query-users.ts",
          "registry/src/solid/sample/sample-user-data.ts",
          "registry/src/solid/ui/user-menu/index.ts",
          "registry/src/solid/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-query-users",
          "solid-ui-user-menu"
        ]
      }
    },
    {
      "name": "solid-example-view-adapter",
      "title": "solid-example-view-adapter",
      "type": "registry:block",
      "description": "Custom node and mark views using view adapters.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-define-atom-block.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-view-adapter.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/view-adapter/atom-block-view.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/atom-block-view.tsx"
        },
        {
          "path": "registry/src/solid/examples/view-adapter/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/view-adapter/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/view-adapter/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/view-adapter/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": true,
        "story": "view-adapter",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/view-adapter/atom-block-view.tsx",
          "registry/src/solid/examples/view-adapter/editor.tsx",
          "registry/src/solid/examples/view-adapter/extension.ts",
          "registry/src/solid/examples/view-adapter/index.ts",
          "registry/src/solid/sample/define-atom-block.ts",
          "registry/src/solid/sample/sample-doc-view-adapter.ts"
        ],
        "internalDependencies": [
          "solid-sample-define-atom-block",
          "solid-sample-sample-doc-view-adapter"
        ]
      }
    },
    {
      "name": "solid-example-word-counter",
      "title": "solid-example-word-counter",
      "type": "registry:block",
      "description": "Display word and character count statistics.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-doc-word-counter.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-word-counter.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/word-counter/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/word-counter/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/word-counter/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/word-counter/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "word-counter",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/word-counter/editor.tsx",
          "registry/src/solid/examples/word-counter/extension.ts",
          "registry/src/solid/examples/word-counter/index.ts",
          "registry/src/solid/sample/sample-doc-word-counter.ts",
          "registry/src/solid/ui/word-counter/index.ts",
          "registry/src/solid/ui/word-counter/word-counter.tsx"
        ],
        "internalDependencies": [
          "solid-sample-sample-doc-word-counter",
          "solid-ui-word-counter"
        ]
      }
    },
    {
      "name": "solid-example-yjs",
      "title": "solid-example-yjs",
      "type": "registry:block",
      "description": "Real-time collaboration using Yjs CRDT library.",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-toolbar.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3",
        "y-websocket",
        "yjs"
      ],
      "files": [
        {
          "path": "registry/src/solid/examples/yjs/editor-component.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/editor-component.tsx"
        },
        {
          "path": "registry/src/solid/examples/yjs/editor.tsx",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/editor.tsx"
        },
        {
          "path": "registry/src/solid/examples/yjs/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/extension.ts"
        },
        {
          "path": "registry/src/solid/examples/yjs/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/yjs/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "yjs",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/examples/yjs/editor-component.tsx",
          "registry/src/solid/examples/yjs/editor.tsx",
          "registry/src/solid/examples/yjs/extension.ts",
          "registry/src/solid/examples/yjs/index.ts",
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-ui-toolbar"
        ]
      }
    },
    {
      "name": "solid-sample-define-atom-block",
      "title": "solid-sample-define-atom-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/define-atom-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/define-atom-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/define-atom-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-katex",
      "title": "solid-sample-katex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "katex"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/katex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/katex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/katex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-block-handle",
      "title": "solid-sample-sample-doc-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-block-handle.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-block-handle.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-block-handle.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-bold",
      "title": "solid-sample-sample-doc-bold",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-bold.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-bold.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-bold.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-code",
      "title": "solid-sample-sample-doc-code",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-code.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-code.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-code-block",
      "title": "solid-sample-sample-doc-code-block",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-code-block.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-code-block.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-code-block.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-drop-cursor",
      "title": "solid-sample-sample-doc-drop-cursor",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-drop-cursor.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-drop-cursor.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-drop-cursor.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-font-family",
      "title": "solid-sample-sample-doc-font-family",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-font-family.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-font-family.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-font-family.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-full",
      "title": "solid-sample-sample-doc-full",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-full.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-full.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-full.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-gap-cursor",
      "title": "solid-sample-sample-doc-gap-cursor",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-gap-cursor.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-gap-cursor.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-gap-cursor.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-hard-break",
      "title": "solid-sample-sample-doc-hard-break",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-hard-break.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-hard-break.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-hard-break.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-heading",
      "title": "solid-sample-sample-doc-heading",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-heading.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-heading.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-heading.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-highlight",
      "title": "solid-sample-sample-doc-highlight",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-highlight.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-highlight.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-highlight.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-image",
      "title": "solid-sample-sample-doc-image",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-image.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-image.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-image.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-inline-menu",
      "title": "solid-sample-sample-doc-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-inline-menu.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-inline-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-inline-menu.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-italic",
      "title": "solid-sample-sample-doc-italic",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-italic.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-italic.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-italic.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-link",
      "title": "solid-sample-sample-doc-link",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-link.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-link.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-link.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-link-mark-view",
      "title": "solid-sample-sample-doc-link-mark-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-link-mark-view.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-link-mark-view.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-link-mark-view.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-list",
      "title": "solid-sample-sample-doc-list",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-list.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-list.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-list.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-list-custom-checkbox",
      "title": "solid-sample-sample-doc-list-custom-checkbox",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-list-custom-checkbox.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-list-custom-checkbox.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-list-custom-checkbox.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-readonly",
      "title": "solid-sample-sample-doc-readonly",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-readonly.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-readonly.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-readonly.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-rtl",
      "title": "solid-sample-sample-doc-rtl",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-rtl.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-rtl.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-rtl.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-search",
      "title": "solid-sample-sample-doc-search",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-search.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-search.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-search.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-strike",
      "title": "solid-sample-sample-doc-strike",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-strike.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-strike.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-strike.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-sub-sup",
      "title": "solid-sample-sample-doc-sub-sup",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-sub-sup.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-sub-sup.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-sub-sup.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-table",
      "title": "solid-sample-sample-doc-table",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-table.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-table.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-table.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-tex",
      "title": "solid-sample-sample-doc-tex",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-tex.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-tex.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-tex.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-text-align",
      "title": "solid-sample-sample-doc-text-align",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-text-align.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-text-align.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-text-align.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-text-color",
      "title": "solid-sample-sample-doc-text-color",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-text-color.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-text-color.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-text-color.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-typography",
      "title": "solid-sample-sample-doc-typography",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-typography.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-typography.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-typography.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-underline",
      "title": "solid-sample-sample-doc-underline",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-underline.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-underline.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-underline.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-view-adapter",
      "title": "solid-sample-sample-doc-view-adapter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-view-adapter.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-view-adapter.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-view-adapter.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-doc-word-counter",
      "title": "solid-sample-sample-doc-word-counter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-doc-word-counter.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-doc-word-counter.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-doc-word-counter.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-query-users",
      "title": "solid-sample-sample-query-users",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-sample-sample-user-data.json"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-query-users.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-query-users.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-query-users.ts",
          "registry/src/solid/sample/sample-user-data.ts"
        ],
        "internalDependencies": [
          "solid-sample-sample-user-data"
        ]
      }
    },
    {
      "name": "solid-sample-sample-tag-data",
      "title": "solid-sample-sample-tag-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-tag-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-tag-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-tag-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-uploader",
      "title": "solid-sample-sample-uploader",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-uploader.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-uploader.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-uploader.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-sample-sample-user-data",
      "title": "solid-sample-sample-user-data",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/src/solid/sample/sample-user-data.ts",
          "type": "registry:component",
          "target": "components/editor/sample/sample-user-data.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/sample/sample-user-data.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-ui-block-handle",
      "title": "solid-ui-block-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/block-handle/block-handle.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/block-handle.tsx"
        },
        {
          "path": "registry/src/solid/ui/block-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/block-handle/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/block-handle/block-handle.tsx",
          "registry/src/solid/ui/block-handle/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "solid-ui-button",
      "title": "solid-ui-button",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/button/button.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/button/button.tsx"
        },
        {
          "path": "registry/src/solid/ui/button/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/button/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-ui-code-block-view",
      "title": "solid-ui-code-block-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "beautiful-mermaid",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/code-block-view/code-block-view.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/code-block-view.tsx"
        },
        {
          "path": "registry/src/solid/ui/code-block-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/code-block-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/code-block-view/code-block-view.tsx",
          "registry/src/solid/ui/code-block-view/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-ui-drop-indicator",
      "title": "solid-ui-drop-indicator",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/drop-indicator/drop-indicator.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/drop-indicator.tsx"
        },
        {
          "path": "registry/src/solid/ui/drop-indicator/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/drop-indicator/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/drop-indicator/drop-indicator.tsx",
          "registry/src/solid/ui/drop-indicator/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-ui-image-upload-popover",
      "title": "solid-ui-image-upload-popover",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/image-upload-popover.tsx"
        },
        {
          "path": "registry/src/solid/ui/image-upload-popover/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-upload-popover/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts"
        ],
        "internalDependencies": [
          "solid-ui-button"
        ]
      }
    },
    {
      "name": "solid-ui-image-view",
      "title": "solid-ui-image-view",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/image-view/image-view.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/image-view.tsx"
        },
        {
          "path": "registry/src/solid/ui/image-view/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/image-view/index.ts"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/image-view/image-view.tsx",
          "registry/src/solid/ui/image-view/index.ts"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "solid-ui-inline-menu",
      "title": "solid-ui-inline-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/inline-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/index.ts"
        },
        {
          "path": "registry/src/solid/ui/inline-menu/inline-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/inline-menu/inline-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/inline-menu/index.ts",
          "registry/src/solid/ui/inline-menu/inline-menu.tsx"
        ],
        "internalDependencies": [
          "solid-ui-button"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "solid-ui-search",
      "title": "solid-ui-search",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/search/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/search/index.ts"
        },
        {
          "path": "registry/src/solid/ui/search/search.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/search/search.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/search/index.ts",
          "registry/src/solid/ui/search/search.tsx"
        ],
        "internalDependencies": [
          "solid-ui-button"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "solid-ui-slash-menu",
      "title": "solid-ui-slash-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/index.ts"
        },
        {
          "path": "registry/src/solid/ui/slash-menu/slash-menu-empty.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-empty.tsx"
        },
        {
          "path": "registry/src/solid/ui/slash-menu/slash-menu-item.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-item.tsx"
        },
        {
          "path": "registry/src/solid/ui/slash-menu/slash-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/slash-menu/index.ts",
          "registry/src/solid/ui/slash-menu/slash-menu-empty.tsx",
          "registry/src/solid/ui/slash-menu/slash-menu-item.tsx",
          "registry/src/solid/ui/slash-menu/slash-menu.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-ui-table-handle",
      "title": "solid-ui-table-handle",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/table-handle/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/index.ts"
        },
        {
          "path": "registry/src/solid/ui/table-handle/table-handle.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/table-handle/table-handle.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/table-handle/index.ts",
          "registry/src/solid/ui/table-handle/table-handle.tsx"
        ],
        "internalDependencies": []
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "solid-ui-tag-menu",
      "title": "solid-ui-tag-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/tag-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/index.ts"
        },
        {
          "path": "registry/src/solid/ui/tag-menu/tag-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/tag-menu/tag-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/tag-menu/index.ts",
          "registry/src/solid/ui/tag-menu/tag-menu.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-ui-toolbar",
      "title": "solid-ui-toolbar",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-button.json",
        "https://unpkg.com/prosekit-registry/dist/r/solid-ui-image-upload-popover.json"
      ],
      "dependencies": [
        "@egoist/tailwindcss-icons",
        "@iconify-json/lucide",
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/toolbar/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/index.ts"
        },
        {
          "path": "registry/src/solid/ui/toolbar/toolbar.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/toolbar/toolbar.tsx"
        }
      ],
      "meta": {
        "hasIcons": true,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/button/button.tsx",
          "registry/src/solid/ui/button/index.ts",
          "registry/src/solid/ui/image-upload-popover/image-upload-popover.tsx",
          "registry/src/solid/ui/image-upload-popover/index.ts",
          "registry/src/solid/ui/toolbar/index.ts",
          "registry/src/solid/ui/toolbar/toolbar.tsx"
        ],
        "internalDependencies": [
          "solid-ui-button",
          "solid-ui-image-upload-popover"
        ]
      },
      "css": {
        "@plugin @egoist/tailwindcss-icons": {}
      }
    },
    {
      "name": "solid-ui-user-menu",
      "title": "solid-ui-user-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/user-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/index.ts"
        },
        {
          "path": "registry/src/solid/ui/user-menu/user-menu.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/user-menu/user-menu.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/user-menu/index.ts",
          "registry/src/solid/ui/user-menu/user-menu.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "solid-ui-word-counter",
      "title": "solid-ui-word-counter",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/solid/ui/word-counter/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/word-counter/index.ts"
        },
        {
          "path": "registry/src/solid/ui/word-counter/word-counter.tsx",
          "type": "registry:component",
          "target": "components/editor/ui/word-counter/word-counter.tsx"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "solid",
        "accumulatedFiles": [
          "registry/src/solid/ui/word-counter/index.ts",
          "registry/src/solid/ui/word-counter/word-counter.tsx"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vanilla-example-minimal",
      "title": "vanilla-example-minimal",
      "type": "registry:block",
      "description": "Minimal editor setup with basic functionality.",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vanilla/examples/minimal/editor.ts",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/editor.ts"
        },
        {
          "path": "registry/src/vanilla/examples/minimal/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/minimal/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "minimal",
        "framework": "vanilla",
        "accumulatedFiles": [
          "registry/src/vanilla/examples/minimal/editor.ts",
          "registry/src/vanilla/examples/minimal/index.ts"
        ],
        "internalDependencies": []
      }
    },
    {
      "name": "vanilla-example-slash-menu",
      "title": "vanilla-example-slash-menu",
      "type": "registry:block",
      "description": "Command menu triggered by typing slash (/).",
      "registryDependencies": [
        "https://unpkg.com/prosekit-registry/dist/r/vanilla-ui-slash-menu.json"
      ],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vanilla/examples/slash-menu/editor.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/editor.ts"
        },
        {
          "path": "registry/src/vanilla/examples/slash-menu/extension.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/extension.ts"
        },
        {
          "path": "registry/src/vanilla/examples/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/examples/slash-menu/index.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "slash-menu",
        "framework": "vanilla",
        "accumulatedFiles": [
          "registry/src/vanilla/examples/slash-menu/editor.ts",
          "registry/src/vanilla/examples/slash-menu/extension.ts",
          "registry/src/vanilla/examples/slash-menu/index.ts",
          "registry/src/vanilla/ui/slash-menu/index.ts",
          "registry/src/vanilla/ui/slash-menu/slash-menu-empty.ts",
          "registry/src/vanilla/ui/slash-menu/slash-menu-item.ts",
          "registry/src/vanilla/ui/slash-menu/slash-menu.ts"
        ],
        "internalDependencies": [
          "vanilla-ui-slash-menu"
        ]
      }
    },
    {
      "name": "vanilla-ui-slash-menu",
      "title": "vanilla-ui-slash-menu",
      "type": "registry:component",
      "description": "",
      "registryDependencies": [],
      "dependencies": [
        "prosekit@^0.21.3"
      ],
      "files": [
        {
          "path": "registry/src/vanilla/ui/slash-menu/index.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/index.ts"
        },
        {
          "path": "registry/src/vanilla/ui/slash-menu/slash-menu-empty.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-empty.ts"
        },
        {
          "path": "registry/src/vanilla/ui/slash-menu/slash-menu-item.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu-item.ts"
        },
        {
          "path": "registry/src/vanilla/ui/slash-menu/slash-menu.ts",
          "type": "registry:component",
          "target": "components/editor/ui/slash-menu/slash-menu.ts"
        }
      ],
      "meta": {
        "hasIcons": false,
        "hidden": false,
        "story": "",
        "framework": "vanilla",
        "accumulatedFiles": [
          "registry/src/vanilla/ui/slash-menu/index.ts",
          "registry/src/vanilla/ui/slash-menu/slash-menu-empty.ts",
          "registry/src/vanilla/ui/slash-menu/slash-menu-item.ts",
          "registry/src/vanilla/ui/slash-menu/slash-menu.ts"
        ],
        "internalDependencies": []
      }
    }
  ]
}
