@blockslides/extension-kit 0.5.2 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -37,6 +37,7 @@ module.exports = __toCommonJS(index_exports);
37
37
 
38
38
  // src/extension-kit.ts
39
39
  var import_core = require("@blockslides/core");
40
+ var import_extension_block_attributes = require("@blockslides/extension-block-attributes");
40
41
  var import_extension_blockquote = require("@blockslides/extension-blockquote");
41
42
  var import_extension_bold = require("@blockslides/extension-bold");
42
43
  var import_extension_code = require("@blockslides/extension-code");
@@ -77,12 +78,11 @@ var import_extension_underline = require("@blockslides/extension-underline");
77
78
  var import_extension_unique_id = require("@blockslides/extension-unique-id");
78
79
  var import_extension_youtube = require("@blockslides/extension-youtube");
79
80
  var import_extension_slide = require("@blockslides/extension-slide");
80
- var import_extension_row = require("@blockslides/extension-row");
81
81
  var import_extension_column = require("@blockslides/extension-column");
82
+ var import_extension_column_group = require("@blockslides/extension-column-group");
82
83
  var import_extension_select_within_slide = require("@blockslides/extension-select-within-slide");
83
84
  var import_extension_add_slide_button = require("@blockslides/extension-add-slide-button");
84
85
  var import_extension_bubble_menu = require("@blockslides/extension-bubble-menu");
85
- var import_extension_bubble_menu_preset = require("@blockslides/extension-bubble-menu-preset");
86
86
  var import_extension_floating_menu = require("@blockslides/extension-floating-menu");
87
87
  var import_extensions = require("@blockslides/extensions");
88
88
  var ExtensionKit = import_core.Extension.create({
@@ -98,6 +98,11 @@ var ExtensionKit = import_core.Extension.create({
98
98
  extensions.push(import_extension_document.Document.configure({}));
99
99
  }
100
100
  }
101
+ if (this.options.blockAttributes !== false) {
102
+ extensions.push(
103
+ import_extension_block_attributes.BlockAttributes.configure(this.options.blockAttributes || {})
104
+ );
105
+ }
101
106
  if (this.options.text !== false) {
102
107
  extensions.push(import_extension_text.Text.configure(this.options.text || {}));
103
108
  }
@@ -229,11 +234,6 @@ var ExtensionKit = import_core.Extension.create({
229
234
  if (this.options.placeholder !== false) {
230
235
  extensions.push(import_extension_placeholder.Placeholder.configure(this.options.placeholder || {}));
231
236
  }
232
- if (this.options.bubbleMenuPreset !== false) {
233
- extensions.push(
234
- import_extension_bubble_menu_preset.BubbleMenuPreset.configure(this.options.bubbleMenuPreset || {})
235
- );
236
- }
237
237
  if (this.options.bubbleMenu !== false) {
238
238
  extensions.push(import_extension_bubble_menu.BubbleMenu.configure(this.options.bubbleMenu || {}));
239
239
  }
@@ -258,8 +258,10 @@ var ExtensionKit = import_core.Extension.create({
258
258
  if (this.options.selectWithinSlide !== false) {
259
259
  extensions.push(import_extension_select_within_slide.SelectWithinSlide);
260
260
  }
261
- extensions.push(import_extension_row.Row.configure({}));
262
261
  extensions.push(import_extension_column.Column.configure({}));
262
+ if (this.options.columnGroup !== false) {
263
+ extensions.push(import_extension_column_group.ColumnGroup.configure(this.options.columnGroup || {}));
264
+ }
263
265
  if (this.options.addSlideButton !== false) {
264
266
  extensions.push(
265
267
  import_extension_add_slide_button.AddSlideButton.configure(this.options.addSlideButton || {})
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/extension-kit.ts"],"sourcesContent":["import { ExtensionKit } from \"./extension-kit.js\";\n\nexport { ExtensionKit } from \"./extension-kit.js\";\nexport type { ExtensionKitOptions } from \"./extension-kit.js\";\nexport default ExtensionKit;\n","import { Extension } from \"@blockslides/core\";\n\n// Import all extensions\nimport type { BlockquoteOptions } from \"@blockslides/extension-blockquote\";\nimport { Blockquote } from \"@blockslides/extension-blockquote\";\nimport type { BoldOptions } from \"@blockslides/extension-bold\";\nimport { Bold } from \"@blockslides/extension-bold\";\nimport type { CodeOptions } from \"@blockslides/extension-code\";\nimport { Code } from \"@blockslides/extension-code\";\nimport type { CodeBlockOptions } from \"@blockslides/extension-code-block\";\nimport { CodeBlock } from \"@blockslides/extension-code-block\";\nimport type { ColorOptions } from \"@blockslides/extension-color\";\nimport { Color } from \"@blockslides/extension-color\";\nimport { Document } from \"@blockslides/extension-document\";\nimport AssetDocument from \"@blockslides/extension-asset-document\";\nimport { Details } from \"@blockslides/extension-details\";\nimport { DetailsContent } from \"@blockslides/extension-details\";\nimport { DetailsSummary } from \"@blockslides/extension-details\";\nimport type { FileHandlerOptions } from \"@blockslides/extension-file-handler\";\nimport { FileHandler } from \"@blockslides/extension-file-handler\";\nimport type { FontFamilyOptions } from \"@blockslides/extension-font-family\";\nimport { FontFamily } from \"@blockslides/extension-font-family\";\nimport type {\n BackgroundColorOptions,\n FontSizeOptions,\n LineHeightOptions,\n} from \"@blockslides/extension-text-style\";\nimport { BackgroundColor, FontSize, LineHeight } from \"@blockslides/extension-text-style\";\nimport type { HardBreakOptions } from \"@blockslides/extension-hard-break\";\nimport { HardBreak } from \"@blockslides/extension-hard-break\";\nimport type { HeadingOptions } from \"@blockslides/extension-heading\";\nimport { Heading } from \"@blockslides/extension-heading\";\nimport type { HighlightOptions } from \"@blockslides/extension-highlight\";\nimport { Highlight } from \"@blockslides/extension-highlight\";\nimport type { HorizontalRuleOptions } from \"@blockslides/extension-horizontal-rule\";\nimport { HorizontalRule } from \"@blockslides/extension-horizontal-rule\";\nimport type { ImageOptions } from \"@blockslides/extension-image\";\nimport { Image } from \"@blockslides/extension-image\";\nimport type { ItalicOptions } from \"@blockslides/extension-italic\";\nimport { Italic } from \"@blockslides/extension-italic\";\nimport type { LinkOptions } from \"@blockslides/extension-link\";\nimport { Link } from \"@blockslides/extension-link\";\nimport type {\n BulletListOptions,\n ListItemOptions,\n ListKeymapOptions,\n OrderedListOptions,\n} from \"@blockslides/extension-list\";\nimport type { ImageBlockOptions } from \"@blockslides/extension-image-block\";\nimport { ImageBlock } from \"@blockslides/extension-image-block\";\nimport {\n BulletList,\n ListItem,\n ListKeymap,\n OrderedList,\n} from \"@blockslides/extension-list\";\nimport type { MathematicsOptions } from \"@blockslides/extension-mathematics\";\nimport { Mathematics } from \"@blockslides/extension-mathematics\";\nimport type { MarkdownExtensionOptions } from \"@blockslides/markdown\";\nimport { Markdown } from \"@blockslides/markdown\";\nimport type { NodeRangeOptions } from \"@blockslides/extension-node-range\";\nimport { NodeRange } from \"@blockslides/extension-node-range\";\nimport type { ParagraphOptions } from \"@blockslides/extension-paragraph\";\nimport { Paragraph } from \"@blockslides/extension-paragraph\";\nimport type { PlaceholderOptions } from \"@blockslides/extension-placeholder\";\nimport { Placeholder } from \"@blockslides/extension-placeholder\";\nimport type { StrikeOptions } from \"@blockslides/extension-strike\";\nimport { Strike } from \"@blockslides/extension-strike\";\nimport type { SubscriptExtensionOptions } from \"@blockslides/extension-subscript\";\nimport { Subscript } from \"@blockslides/extension-subscript\";\nimport type { SuperscriptExtensionOptions } from \"@blockslides/extension-superscript\";\nimport { Superscript } from \"@blockslides/extension-superscript\";\nimport type { TableOptions } from \"@blockslides/extension-table\";\nimport {\n Table,\n TableCell,\n TableHeader,\n TableRow,\n} from \"@blockslides/extension-table\";\nimport type { TableOfContentsOptions } from \"@blockslides/extension-table-of-contents\";\nimport { TableOfContents } from \"@blockslides/extension-table-of-contents\";\nimport { Text } from \"@blockslides/extension-text\";\nimport type { TextAlignOptions } from \"@blockslides/extension-text-align\";\nimport { TextAlign } from \"@blockslides/extension-text-align\";\nimport type { TextStyleOptions } from \"@blockslides/extension-text-style\";\nimport { TextStyle } from \"@blockslides/extension-text-style\";\nimport type { TypographyOptions } from \"@blockslides/extension-typography\";\nimport { Typography } from \"@blockslides/extension-typography\";\nimport type { UnderlineOptions } from \"@blockslides/extension-underline\";\nimport { Underline } from \"@blockslides/extension-underline\";\nimport { UniqueID } from \"@blockslides/extension-unique-id\";\nimport type { UniqueIDOptions } from \"@blockslides/extension-unique-id\";\nimport type { YoutubeOptions } from \"@blockslides/extension-youtube\";\nimport { Youtube } from \"@blockslides/extension-youtube\";\nimport { Slide } from \"@blockslides/extension-slide\";\nimport type { SlideOptions } from \"@blockslides/extension-slide\";\nimport { Row } from \"@blockslides/extension-row\";\nimport { Column } from \"@blockslides/extension-column\";\nimport { SelectWithinSlide } from \"@blockslides/extension-select-within-slide\";\nimport type { AddSlideButtonOptions } from \"@blockslides/extension-add-slide-button\";\nimport { AddSlideButton } from \"@blockslides/extension-add-slide-button\";\nimport type { BubbleMenuOptions } from \"@blockslides/extension-bubble-menu\";\nimport { BubbleMenu } from \"@blockslides/extension-bubble-menu\";\nimport type { BubbleMenuPresetOptions } from \"@blockslides/extension-bubble-menu-preset\";\nimport { BubbleMenuPreset } from \"@blockslides/extension-bubble-menu-preset\";\nimport type { FloatingMenuOptions } from \"@blockslides/extension-floating-menu\";\nimport { FloatingMenu } from \"@blockslides/extension-floating-menu\";\nimport type {\n DropcursorOptions,\n TrailingNodeOptions,\n UndoRedoOptions,\n} from \"@blockslides/extensions\";\nimport {\n Dropcursor,\n Gapcursor,\n TrailingNode,\n UndoRedo,\n} from \"@blockslides/extensions\";\n\n/**\n * ExtensionKit Options Interface\n *\n * Each extension can be:\n * - undefined (default): Extension will be included with default options\n * - false: Extension will be excluded\n * - Partial<ExtensionOptions>: Extension will be included with custom options\n */\nexport interface ExtensionKitOptions {\n /**\n * Select which top-level document node to use.\n * 'slide' => default slideshow doc (slide+)\n * 'asset' => asset doc (block+)\n * @default 'slide'\n */\n topLevelDoc?: \"slide\" | \"asset\";\n /**\n * Add slide button extension\n * @default {}\n * @example addSlideButton: false\n * @example addSlideButton: { content: '➕', buttonStyle: { width: '64px' } }\n */\n addSlideButton?: Partial<AddSlideButtonOptions> | false;\n\n /**\n * Blockquote extension\n * @default {}\n * @example blockquote: false\n * @example blockquote: { HTMLAttributes: { class: 'my-blockquote' } }\n */\n blockquote?: Partial<BlockquoteOptions> | false;\n\n /**\n * Bold extension\n * @default {}\n * @example bold: false\n * @example bold: { HTMLAttributes: { class: 'font-bold' } }\n */\n bold?: Partial<BoldOptions> | false;\n\n /**\n * Bubble menu extension\n * @default {}\n * @example bubbleMenu: false\n */\n bubbleMenu?: Partial<BubbleMenuOptions> | false;\n\n /**\n * Bubble menu preset (text+image dual-mode toolbar)\n * @default {}\n * @example bubbleMenuPreset: false\n * @example bubbleMenuPreset: { items: ['bold', 'italic'] }\n */\n bubbleMenuPreset?: Partial<BubbleMenuPresetOptions> | false;\n\n /**\n * Bullet list extension\n * @default {}\n * @example bulletList: false\n * @example bulletList: { HTMLAttributes: { class: 'list-disc' } }\n */\n bulletList?: Partial<BulletListOptions> | false;\n\n /**\n * Inline code extension\n * @default {}\n * @example code: false\n */\n code?: Partial<CodeOptions> | false;\n\n /**\n * Code block extension\n * @default {}\n * @example codeBlock: false\n * @example codeBlock: { defaultLanguage: 'javascript' }\n */\n codeBlock?: Partial<CodeBlockOptions> | false;\n\n /**\n * Text color extension\n * @default {}\n * @example color: false\n * @example color: { types: ['textStyle'] }\n */\n color?: Partial<ColorOptions> | false;\n\n /**\n * Background color extension\n * @default {}\n * @example backgroundColor: false\n */\n backgroundColor?: Partial<BackgroundColorOptions> | false;\n\n /**\n * Details/Summary (collapsible) extension\n * @default {}\n * @example details: false\n */\n details?: false;\n\n /**\n * Document extension (root node)\n * @default {}\n * @example document: false\n */\n document?: false;\n\n /**\n * Drop cursor extension\n * @default {}\n * @example dropcursor: false\n * @example dropcursor: { color: '#3b82f6', width: 2 }\n */\n dropcursor?: Partial<DropcursorOptions> | false;\n\n /**\n * File handler extension (drag & drop, paste)\n * @default {}\n * @example fileHandler: false\n */\n fileHandler?: Partial<FileHandlerOptions> | false;\n\n /**\n * Floating menu extension\n * @default {}\n * @example floatingMenu: false\n */\n floatingMenu?: Partial<FloatingMenuOptions> | false;\n\n /**\n * Font family extension\n * @default {}\n * @example fontFamily: false\n * @example fontFamily: { types: ['textStyle'] }\n */\n fontFamily?: Partial<FontFamilyOptions> | false;\n\n /**\n * Font size extension\n * @default {}\n * @example fontSize: false\n */\n fontSize?: Partial<FontSizeOptions> | false;\n\n /**\n * Line height extension\n * @default {}\n * @example lineHeight: false\n */\n lineHeight?: Partial<LineHeightOptions> | false;\n\n /**\n * Gap cursor extension\n * @default {}\n * @example gapcursor: false\n */\n gapcursor?: false;\n\n /**\n * Hard break extension\n * @default {}\n * @example hardBreak: false\n */\n hardBreak?: Partial<HardBreakOptions> | false;\n\n /**\n * Heading extension\n * @default {}\n * @example heading: false\n * @example heading: { levels: [1, 2, 3] }\n */\n heading?: Partial<HeadingOptions> | false;\n\n /**\n * Text highlight extension\n * @default {}\n * @example highlight: false\n * @example highlight: { multicolor: true }\n */\n highlight?: Partial<HighlightOptions> | false;\n\n /**\n * Horizontal rule extension\n * @default {}\n * @example horizontalRule: false\n */\n horizontalRule?: Partial<HorizontalRuleOptions> | false;\n\n /**\n * Image extension\n * @default {}\n * @example image: false\n * @example image: { inline: true, allowBase64: true }\n */\n image?: Partial<ImageOptions> | false;\n\n /**\n * Italic extension\n * @default {}\n * @example italic: false\n */\n italic?: Partial<ItalicOptions> | false;\n\n /**\n * Link extension\n * @default {}\n * @example link: false\n * @example link: { openOnClick: false, linkOnPaste: true }\n */\n link?: Partial<LinkOptions> | false;\n\n /**\n * List item extension\n * @default {}\n * @example listItem: false\n */\n listItem?: Partial<ListItemOptions> | false;\n\n /**\n * List keymap extension\n * @default {}\n * @example listKeymap: false\n */\n listKeymap?: Partial<ListKeymapOptions> | false;\n\n /**\n * Mathematics extension (LaTeX/KaTeX)\n * @default {}\n * @example mathematics: false\n */\n mathematics?: Partial<MathematicsOptions> | false;\n\n /**\n * Image block extension\n * @default {}\n * @example imageBlock: false\n */\n imageBlock?: Partial<ImageBlockOptions> | false;\n\n /**\n * Markdown extension (parse/serialize markdown)\n * @default {}\n * @example markdown: false\n */\n markdown?: Partial<MarkdownExtensionOptions> | false;\n\n /**\n * Node range extension\n * @default {}\n * @example nodeRange: false\n */\n nodeRange?: Partial<NodeRangeOptions> | false;\n\n /**\n * Ordered list extension\n * @default {}\n * @example orderedList: false\n */\n orderedList?: Partial<OrderedListOptions> | false;\n\n /**\n * Paragraph extension\n * @default {}\n * @example paragraph: false\n */\n paragraph?: Partial<ParagraphOptions> | false;\n\n /**\n * Placeholder extension\n * @default {}\n * @example placeholder: false\n * @example placeholder: { placeholder: 'Start typing...' }\n */\n placeholder?: Partial<PlaceholderOptions> | false;\n\n /**\n * Slide extension\n * @default {}\n * @example slide: false\n * @example slide: { renderMode: 'fixed' }\n */\n slide?: Partial<SlideOptions> | false;\n\n /**\n * Select-within-slide keyboard shortcut override\n * @default {}\n * @example selectWithinSlide: false\n */\n selectWithinSlide?: false;\n\n /**\n * Strike-through extension\n * @default {}\n * @example strike: false\n */\n strike?: Partial<StrikeOptions> | false;\n\n /**\n * Subscript extension\n * @default {}\n * @example subscript: false\n */\n subscript?: Partial<SubscriptExtensionOptions> | false;\n\n /**\n * Superscript extension\n * @default {}\n * @example superscript: false\n */\n superscript?: Partial<SuperscriptExtensionOptions> | false;\n\n /**\n * Table extension\n * @default {}\n * @example table: false\n * @example table: { resizable: true, cellMinWidth: 50 }\n */\n table?: Partial<TableOptions> | false;\n\n /**\n * Table of contents extension\n * @default {}\n * @example tableOfContents: false\n */\n tableOfContents?: Partial<TableOfContentsOptions> | false;\n\n /**\n * Text extension (base text node)\n * @default {}\n * @example text: false\n */\n text?: false;\n\n /**\n * Text align extension\n * @default {}\n * @example textAlign: false\n * @example textAlign: { types: ['heading', 'paragraph'], alignments: ['left', 'center', 'right'] }\n */\n textAlign?: Partial<TextAlignOptions> | false;\n\n /**\n * Text style extension\n * @default {}\n * @example textStyle: false\n */\n textStyle?: Partial<TextStyleOptions> | false;\n\n /**\n * Typography extension (smart quotes, dashes, etc.)\n * @default {}\n * @example typography: false\n */\n typography?: Partial<TypographyOptions> | false;\n\n /**\n * Underline extension\n * @default {}\n * @example underline: false\n */\n underline?: Partial<UnderlineOptions> | false;\n\n /**\n * Undo/Redo extension\n * @default {}\n * @example undoRedo: false\n */\n undoRedo?: Partial<UndoRedoOptions> | false;\n\n /**\n * Unique ID extension\n * @default {}\n * @example uniqueId: false\n */\n uniqueId?: Partial<UniqueIDOptions> | false;\n\n /**\n * Trailing node extension\n * @default {}\n * @example trailingNode: false\n */\n trailingNode?: Partial<TrailingNodeOptions> | false;\n\n /**\n * YouTube extension\n * @default {}\n * @example youtube: false\n * @example youtube: { width: 640, height: 480 }\n */\n youtube?: Partial<YoutubeOptions> | false;\n}\n\n/**\n * ExtensionKit - A comprehensive bundle of all available extensions\n *\n * This extension allows you to easily configure which extensions to include\n * in your editor and customize their options.\n *\n * @example\n * ```typescript\n * const editor = useSlideEditor({\n * extensions: [\n * ExtensionKit.configure({\n * document: false,\n * heading: { levels: [1, 2, 3] },\n * link: { openOnClick: false },\n * codeBlock: false,\n * })\n * ]\n * })\n * ```\n */\nexport const ExtensionKit = Extension.create<ExtensionKitOptions>({\n name: \"extensionKit\",\n\n addExtensions() {\n const extensions = [];\n\n // Core extensions\n if (this.options.document !== false) {\n const docType = this.options.topLevelDoc ?? \"slide\";\n if (docType === \"asset\") {\n extensions.push(AssetDocument);\n } else {\n extensions.push(Document.configure({}));\n }\n }\n\n if (this.options.text !== false) {\n extensions.push(Text.configure(this.options.text || {}));\n }\n\n if (this.options.paragraph !== false) {\n extensions.push(Paragraph.configure(this.options.paragraph || {}));\n }\n\n // Text formatting extensions\n if (this.options.bold !== false) {\n extensions.push(Bold.configure(this.options.bold || {}));\n }\n\n if (this.options.italic !== false) {\n extensions.push(Italic.configure(this.options.italic || {}));\n }\n\n if (this.options.underline !== false) {\n extensions.push(Underline.configure(this.options.underline || {}));\n }\n\n if (this.options.strike !== false) {\n extensions.push(Strike.configure(this.options.strike || {}));\n }\n\n if (this.options.code !== false) {\n extensions.push(Code.configure(this.options.code || {}));\n }\n\n if (this.options.subscript !== false) {\n extensions.push(Subscript.configure(this.options.subscript || {}));\n }\n\n if (this.options.superscript !== false) {\n extensions.push(Superscript.configure(this.options.superscript || {}));\n }\n\n // Text style extensions\n if (this.options.textStyle !== false) {\n extensions.push(TextStyle.configure(this.options.textStyle || {}));\n }\n\n if (this.options.backgroundColor !== false) {\n extensions.push(\n BackgroundColor.configure(this.options.backgroundColor || {})\n );\n }\n\n if (this.options.color !== false) {\n extensions.push(Color.configure(this.options.color || {}));\n }\n\n if (this.options.fontFamily !== false) {\n extensions.push(FontFamily.configure(this.options.fontFamily || {}));\n }\n\n if (this.options.fontSize !== false) {\n extensions.push(FontSize.configure(this.options.fontSize || {}));\n }\n\n if (this.options.lineHeight !== false) {\n extensions.push(LineHeight.configure(this.options.lineHeight || {}));\n }\n\n if (this.options.highlight !== false) {\n extensions.push(Highlight.configure(this.options.highlight || {}));\n }\n\n if (this.options.textAlign !== false) {\n extensions.push(TextAlign.configure(this.options.textAlign || {}));\n }\n\n // Block extensions\n if (this.options.heading !== false) {\n extensions.push(Heading.configure(this.options.heading || {}));\n }\n\n if (this.options.blockquote !== false) {\n extensions.push(Blockquote.configure(this.options.blockquote || {}));\n }\n\n if (this.options.codeBlock !== false) {\n extensions.push(CodeBlock.configure(this.options.codeBlock || {}));\n }\n\n if (this.options.horizontalRule !== false) {\n extensions.push(\n HorizontalRule.configure(this.options.horizontalRule || {})\n );\n }\n\n // List extensions\n if (this.options.bulletList !== false) {\n extensions.push(BulletList.configure(this.options.bulletList || {}));\n }\n\n if (this.options.orderedList !== false) {\n extensions.push(OrderedList.configure(this.options.orderedList || {}));\n }\n\n if (this.options.listItem !== false) {\n extensions.push(ListItem.configure(this.options.listItem || {}));\n }\n\n if (this.options.listKeymap !== false) {\n extensions.push(ListKeymap.configure(this.options.listKeymap || {}));\n }\n\n // Media extensions\n if (this.options.image !== false) {\n extensions.push(Image.configure(this.options.image || {}));\n }\n\n if (this.options.youtube !== false) {\n extensions.push(Youtube.configure(this.options.youtube || {}));\n }\n\n // Interactive extensions\n if (this.options.link !== false) {\n extensions.push(Link.configure(this.options.link || {}));\n }\n\n if (this.options.details !== false) {\n extensions.push(Details.configure(this.options.details || {}));\n extensions.push(DetailsContent.configure({}));\n extensions.push(DetailsSummary.configure({}));\n }\n\n // Table extensions\n if (this.options.table !== false) {\n extensions.push(Table.configure(this.options.table || {}));\n extensions.push(TableRow.configure({}));\n extensions.push(TableHeader.configure({}));\n extensions.push(TableCell.configure({}));\n }\n\n if (this.options.tableOfContents !== false) {\n extensions.push(\n TableOfContents.configure(this.options.tableOfContents || {})\n );\n }\n\n // Special content extensions\n if (this.options.mathematics !== false) {\n extensions.push(Mathematics.configure(this.options.mathematics || {}));\n }\n\n if (this.options.markdown !== false) {\n extensions.push(Markdown.configure(this.options.markdown || {}));\n }\n\n if (this.options.imageBlock !== false) {\n extensions.push(ImageBlock.configure(this.options.imageBlock || {}));\n } \n\n // Editor behavior extensions\n if (this.options.hardBreak !== false) {\n extensions.push(HardBreak.configure(this.options.hardBreak || {}));\n }\n\n if (this.options.dropcursor !== false) {\n extensions.push(Dropcursor.configure(this.options.dropcursor || {}));\n }\n\n if (this.options.gapcursor !== false) {\n extensions.push(Gapcursor.configure(this.options.gapcursor || {}));\n }\n\n if (this.options.undoRedo !== false) {\n extensions.push(UndoRedo.configure(this.options.undoRedo || {}));\n }\n\n if (this.options.trailingNode !== false) {\n extensions.push(TrailingNode.configure(this.options.trailingNode || {}));\n }\n\n // UI extensions\n if (this.options.placeholder !== false) {\n extensions.push(Placeholder.configure(this.options.placeholder || {}));\n }\n\n if (this.options.bubbleMenuPreset !== false) {\n extensions.push(\n BubbleMenuPreset.configure(this.options.bubbleMenuPreset || {})\n );\n }\n\n if (this.options.bubbleMenu !== false) {\n extensions.push(BubbleMenu.configure(this.options.bubbleMenu || {}));\n }\n\n if (this.options.floatingMenu !== false) {\n extensions.push(FloatingMenu.configure(this.options.floatingMenu || {}));\n }\n\n // Utility extensions\n if (this.options.fileHandler !== false) {\n extensions.push(FileHandler.configure(this.options.fileHandler || {}));\n }\n\n if (this.options.nodeRange !== false) {\n extensions.push(NodeRange.configure(this.options.nodeRange || {}));\n }\n\n if (this.options.typography !== false) {\n extensions.push(Typography.configure(this.options.typography || {}));\n }\n\n if (this.options.uniqueId !== false) {\n extensions.push(UniqueID.configure(this.options.uniqueId || {}));\n }\n\n // Slide-specific extensions\n if (this.options.slide !== false) {\n extensions.push(Slide.configure(this.options.slide || {}));\n }\n\n if (this.options.selectWithinSlide !== false) {\n extensions.push(SelectWithinSlide);\n }\n\n extensions.push(Row.configure({}));\n extensions.push(Column.configure({}));\n\n if (this.options.addSlideButton !== false) {\n extensions.push(\n AddSlideButton.configure(this.options.addSlideButton || {})\n );\n }\n\n return extensions;\n },\n});\n"],"mappings":"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","names":["import_extension_details","import_extension_text_style","AssetDocument"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/extension-kit.ts"],"sourcesContent":["import { ExtensionKit } from \"./extension-kit.js\";\n\nexport { ExtensionKit } from \"./extension-kit.js\";\nexport type { ExtensionKitOptions } from \"./extension-kit.js\";\nexport default ExtensionKit;\n","import { Extension } from \"@blockslides/core\";\n\n// Import all extensions\nimport type { BlockAttributesOptions } from \"@blockslides/extension-block-attributes\";\nimport { BlockAttributes } from \"@blockslides/extension-block-attributes\";\nimport type { BlockquoteOptions } from \"@blockslides/extension-blockquote\";\nimport { Blockquote } from \"@blockslides/extension-blockquote\";\nimport type { BoldOptions } from \"@blockslides/extension-bold\";\nimport { Bold } from \"@blockslides/extension-bold\";\nimport type { CodeOptions } from \"@blockslides/extension-code\";\nimport { Code } from \"@blockslides/extension-code\";\nimport type { CodeBlockOptions } from \"@blockslides/extension-code-block\";\nimport { CodeBlock } from \"@blockslides/extension-code-block\";\nimport type { ColorOptions } from \"@blockslides/extension-color\";\nimport { Color } from \"@blockslides/extension-color\";\nimport { Document } from \"@blockslides/extension-document\";\nimport AssetDocument from \"@blockslides/extension-asset-document\";\nimport { Details } from \"@blockslides/extension-details\";\nimport { DetailsContent } from \"@blockslides/extension-details\";\nimport { DetailsSummary } from \"@blockslides/extension-details\";\nimport type { FileHandlerOptions } from \"@blockslides/extension-file-handler\";\nimport { FileHandler } from \"@blockslides/extension-file-handler\";\nimport type { FontFamilyOptions } from \"@blockslides/extension-font-family\";\nimport { FontFamily } from \"@blockslides/extension-font-family\";\nimport type {\n BackgroundColorOptions,\n FontSizeOptions,\n LineHeightOptions,\n} from \"@blockslides/extension-text-style\";\nimport { BackgroundColor, FontSize, LineHeight } from \"@blockslides/extension-text-style\";\nimport type { HardBreakOptions } from \"@blockslides/extension-hard-break\";\nimport { HardBreak } from \"@blockslides/extension-hard-break\";\nimport type { HeadingOptions } from \"@blockslides/extension-heading\";\nimport { Heading } from \"@blockslides/extension-heading\";\nimport type { HighlightOptions } from \"@blockslides/extension-highlight\";\nimport { Highlight } from \"@blockslides/extension-highlight\";\nimport type { HorizontalRuleOptions } from \"@blockslides/extension-horizontal-rule\";\nimport { HorizontalRule } from \"@blockslides/extension-horizontal-rule\";\nimport type { ImageOptions } from \"@blockslides/extension-image\";\nimport { Image } from \"@blockslides/extension-image\";\nimport type { ItalicOptions } from \"@blockslides/extension-italic\";\nimport { Italic } from \"@blockslides/extension-italic\";\nimport type { LinkOptions } from \"@blockslides/extension-link\";\nimport { Link } from \"@blockslides/extension-link\";\nimport type {\n BulletListOptions,\n ListItemOptions,\n ListKeymapOptions,\n OrderedListOptions,\n} from \"@blockslides/extension-list\";\nimport type { ImageBlockOptions } from \"@blockslides/extension-image-block\";\nimport { ImageBlock } from \"@blockslides/extension-image-block\";\nimport {\n BulletList,\n ListItem,\n ListKeymap,\n OrderedList,\n} from \"@blockslides/extension-list\";\nimport type { MathematicsOptions } from \"@blockslides/extension-mathematics\";\nimport { Mathematics } from \"@blockslides/extension-mathematics\";\nimport type { MarkdownExtensionOptions } from \"@blockslides/markdown\";\nimport { Markdown } from \"@blockslides/markdown\";\nimport type { NodeRangeOptions } from \"@blockslides/extension-node-range\";\nimport { NodeRange } from \"@blockslides/extension-node-range\";\nimport type { ParagraphOptions } from \"@blockslides/extension-paragraph\";\nimport { Paragraph } from \"@blockslides/extension-paragraph\";\nimport type { PlaceholderOptions } from \"@blockslides/extension-placeholder\";\nimport { Placeholder } from \"@blockslides/extension-placeholder\";\nimport type { StrikeOptions } from \"@blockslides/extension-strike\";\nimport { Strike } from \"@blockslides/extension-strike\";\nimport type { SubscriptExtensionOptions } from \"@blockslides/extension-subscript\";\nimport { Subscript } from \"@blockslides/extension-subscript\";\nimport type { SuperscriptExtensionOptions } from \"@blockslides/extension-superscript\";\nimport { Superscript } from \"@blockslides/extension-superscript\";\nimport type { TableOptions } from \"@blockslides/extension-table\";\nimport {\n Table,\n TableCell,\n TableHeader,\n TableRow,\n} from \"@blockslides/extension-table\";\nimport type { TableOfContentsOptions } from \"@blockslides/extension-table-of-contents\";\nimport { TableOfContents } from \"@blockslides/extension-table-of-contents\";\nimport { Text } from \"@blockslides/extension-text\";\nimport type { TextAlignOptions } from \"@blockslides/extension-text-align\";\nimport { TextAlign } from \"@blockslides/extension-text-align\";\nimport type { TextStyleOptions } from \"@blockslides/extension-text-style\";\nimport { TextStyle } from \"@blockslides/extension-text-style\";\nimport type { TypographyOptions } from \"@blockslides/extension-typography\";\nimport { Typography } from \"@blockslides/extension-typography\";\nimport type { UnderlineOptions } from \"@blockslides/extension-underline\";\nimport { Underline } from \"@blockslides/extension-underline\";\nimport { UniqueID } from \"@blockslides/extension-unique-id\";\nimport type { UniqueIDOptions } from \"@blockslides/extension-unique-id\";\nimport type { YoutubeOptions } from \"@blockslides/extension-youtube\";\nimport { Youtube } from \"@blockslides/extension-youtube\";\nimport { Slide } from \"@blockslides/extension-slide\";\nimport type { SlideOptions } from \"@blockslides/extension-slide\";\nimport { Column } from \"@blockslides/extension-column\";\nimport type { ColumnGroupOptions } from \"@blockslides/extension-column-group\";\nimport { ColumnGroup } from \"@blockslides/extension-column-group\";\nimport { SelectWithinSlide } from \"@blockslides/extension-select-within-slide\";\nimport type { AddSlideButtonOptions } from \"@blockslides/extension-add-slide-button\";\nimport { AddSlideButton } from \"@blockslides/extension-add-slide-button\";\nimport type { BubbleMenuOptions } from \"@blockslides/extension-bubble-menu\";\nimport { BubbleMenu } from \"@blockslides/extension-bubble-menu\";\nimport type { FloatingMenuOptions } from \"@blockslides/extension-floating-menu\";\nimport { FloatingMenu } from \"@blockslides/extension-floating-menu\";\nimport type {\n DropcursorOptions,\n TrailingNodeOptions,\n UndoRedoOptions,\n} from \"@blockslides/extensions\";\nimport {\n Dropcursor,\n Gapcursor,\n TrailingNode,\n UndoRedo,\n} from \"@blockslides/extensions\";\n\n/**\n * ExtensionKit Options Interface\n *\n * Each extension can be:\n * - undefined (default): Extension will be included with default options\n * - false: Extension will be excluded\n * - Partial<ExtensionOptions>: Extension will be included with custom options\n */\nexport interface ExtensionKitOptions {\n /**\n * Select which top-level document node to use.\n * 'slide' => default slideshow doc (slide+)\n * 'asset' => asset doc (block+)\n * @default 'slide'\n */\n topLevelDoc?: \"slide\" | \"asset\";\n\n /**\n * Block attributes extension - adds common attributes (align, padding, gap,\n * backgroundColor, borderRadius, fill, etc.) to all block types.\n * @default {}\n * @example blockAttributes: false\n * @example blockAttributes: { types: ['heading', 'paragraph'] }\n */\n blockAttributes?: Partial<BlockAttributesOptions> | false;\n\n /**\n * Add slide button extension\n * @default {}\n * @example addSlideButton: false\n * @example addSlideButton: { content: '➕', buttonStyle: { width: '64px' } }\n */\n addSlideButton?: Partial<AddSlideButtonOptions> | false;\n\n /**\n * Blockquote extension\n * @default {}\n * @example blockquote: false\n * @example blockquote: { HTMLAttributes: { class: 'my-blockquote' } }\n */\n blockquote?: Partial<BlockquoteOptions> | false;\n\n /**\n * Bold extension\n * @default {}\n * @example bold: false\n * @example bold: { HTMLAttributes: { class: 'font-bold' } }\n */\n bold?: Partial<BoldOptions> | false;\n\n /**\n * Bubble menu extension\n * @default {}\n * @example bubbleMenu: false\n */\n bubbleMenu?: Partial<BubbleMenuOptions> | false;\n\n /**\n * Bullet list extension\n * @default {}\n * @example bulletList: false\n * @example bulletList: { HTMLAttributes: { class: 'list-disc' } }\n */\n bulletList?: Partial<BulletListOptions> | false;\n\n /**\n * Inline code extension\n * @default {}\n * @example code: false\n */\n code?: Partial<CodeOptions> | false;\n\n /**\n * Code block extension\n * @default {}\n * @example codeBlock: false\n * @example codeBlock: { defaultLanguage: 'javascript' }\n */\n codeBlock?: Partial<CodeBlockOptions> | false;\n\n /**\n * Text color extension\n * @default {}\n * @example color: false\n * @example color: { types: ['textStyle'] }\n */\n color?: Partial<ColorOptions> | false;\n\n /**\n * Background color extension\n * @default {}\n * @example backgroundColor: false\n */\n backgroundColor?: Partial<BackgroundColorOptions> | false;\n\n /**\n * Details/Summary (collapsible) extension\n * @default {}\n * @example details: false\n */\n details?: false;\n\n /**\n * Document extension (root node)\n * @default {}\n * @example document: false\n */\n document?: false;\n\n /**\n * Drop cursor extension\n * @default {}\n * @example dropcursor: false\n * @example dropcursor: { color: '#3b82f6', width: 2 }\n */\n dropcursor?: Partial<DropcursorOptions> | false;\n\n /**\n * File handler extension (drag & drop, paste)\n * @default {}\n * @example fileHandler: false\n */\n fileHandler?: Partial<FileHandlerOptions> | false;\n\n /**\n * Floating menu extension\n * @default {}\n * @example floatingMenu: false\n */\n floatingMenu?: Partial<FloatingMenuOptions> | false;\n\n /**\n * Font family extension\n * @default {}\n * @example fontFamily: false\n * @example fontFamily: { types: ['textStyle'] }\n */\n fontFamily?: Partial<FontFamilyOptions> | false;\n\n /**\n * Font size extension\n * @default {}\n * @example fontSize: false\n */\n fontSize?: Partial<FontSizeOptions> | false;\n\n /**\n * Line height extension\n * @default {}\n * @example lineHeight: false\n */\n lineHeight?: Partial<LineHeightOptions> | false;\n\n /**\n * Gap cursor extension\n * @default {}\n * @example gapcursor: false\n */\n gapcursor?: false;\n\n /**\n * Hard break extension\n * @default {}\n * @example hardBreak: false\n */\n hardBreak?: Partial<HardBreakOptions> | false;\n\n /**\n * Heading extension\n * @default {}\n * @example heading: false\n * @example heading: { levels: [1, 2, 3] }\n */\n heading?: Partial<HeadingOptions> | false;\n\n /**\n * Text highlight extension\n * @default {}\n * @example highlight: false\n * @example highlight: { multicolor: true }\n */\n highlight?: Partial<HighlightOptions> | false;\n\n /**\n * Horizontal rule extension\n * @default {}\n * @example horizontalRule: false\n */\n horizontalRule?: Partial<HorizontalRuleOptions> | false;\n\n /**\n * Image extension\n * @default {}\n * @example image: false\n * @example image: { inline: true, allowBase64: true }\n */\n image?: Partial<ImageOptions> | false;\n\n /**\n * Italic extension\n * @default {}\n * @example italic: false\n */\n italic?: Partial<ItalicOptions> | false;\n\n /**\n * Link extension\n * @default {}\n * @example link: false\n * @example link: { openOnClick: false, linkOnPaste: true }\n */\n link?: Partial<LinkOptions> | false;\n\n /**\n * List item extension\n * @default {}\n * @example listItem: false\n */\n listItem?: Partial<ListItemOptions> | false;\n\n /**\n * List keymap extension\n * @default {}\n * @example listKeymap: false\n */\n listKeymap?: Partial<ListKeymapOptions> | false;\n\n /**\n * Mathematics extension (LaTeX/KaTeX)\n * @default {}\n * @example mathematics: false\n */\n mathematics?: Partial<MathematicsOptions> | false;\n\n /**\n * Image block extension\n * @default {}\n * @example imageBlock: false\n */\n imageBlock?: Partial<ImageBlockOptions> | false;\n\n /**\n * Markdown extension (parse/serialize markdown)\n * @default {}\n * @example markdown: false\n */\n markdown?: Partial<MarkdownExtensionOptions> | false;\n\n /**\n * Node range extension\n * @default {}\n * @example nodeRange: false\n */\n nodeRange?: Partial<NodeRangeOptions> | false;\n\n /**\n * Ordered list extension\n * @default {}\n * @example orderedList: false\n */\n orderedList?: Partial<OrderedListOptions> | false;\n\n /**\n * Paragraph extension\n * @default {}\n * @example paragraph: false\n */\n paragraph?: Partial<ParagraphOptions> | false;\n\n /**\n * Placeholder extension\n * @default {}\n * @example placeholder: false\n * @example placeholder: { placeholder: 'Start typing...' }\n */\n placeholder?: Partial<PlaceholderOptions> | false;\n\n /**\n * Slide extension\n * @default {}\n * @example slide: false\n * @example slide: { renderMode: 'fixed' }\n */\n slide?: Partial<SlideOptions> | false;\n\n /**\n * Select-within-slide keyboard shortcut override\n * @default {}\n * @example selectWithinSlide: false\n */\n selectWithinSlide?: false;\n\n /**\n * ColumnGroup extension - groups columns horizontally side-by-side\n * @default {}\n * @example columnGroup: false\n * @example columnGroup: { enableLayoutCSS: false }\n */\n columnGroup?: Partial<ColumnGroupOptions> | false;\n\n /**\n * Strike-through extension\n * @default {}\n * @example strike: false\n */\n strike?: Partial<StrikeOptions> | false;\n\n /**\n * Subscript extension\n * @default {}\n * @example subscript: false\n */\n subscript?: Partial<SubscriptExtensionOptions> | false;\n\n /**\n * Superscript extension\n * @default {}\n * @example superscript: false\n */\n superscript?: Partial<SuperscriptExtensionOptions> | false;\n\n /**\n * Table extension\n * @default {}\n * @example table: false\n * @example table: { resizable: true, cellMinWidth: 50 }\n */\n table?: Partial<TableOptions> | false;\n\n /**\n * Table of contents extension\n * @default {}\n * @example tableOfContents: false\n */\n tableOfContents?: Partial<TableOfContentsOptions> | false;\n\n /**\n * Text extension (base text node)\n * @default {}\n * @example text: false\n */\n text?: false;\n\n /**\n * Text align extension\n * @default {}\n * @example textAlign: false\n * @example textAlign: { types: ['heading', 'paragraph'], alignments: ['left', 'center', 'right'] }\n */\n textAlign?: Partial<TextAlignOptions> | false;\n\n /**\n * Text style extension\n * @default {}\n * @example textStyle: false\n */\n textStyle?: Partial<TextStyleOptions> | false;\n\n /**\n * Typography extension (smart quotes, dashes, etc.)\n * @default {}\n * @example typography: false\n */\n typography?: Partial<TypographyOptions> | false;\n\n /**\n * Underline extension\n * @default {}\n * @example underline: false\n */\n underline?: Partial<UnderlineOptions> | false;\n\n /**\n * Undo/Redo extension\n * @default {}\n * @example undoRedo: false\n */\n undoRedo?: Partial<UndoRedoOptions> | false;\n\n /**\n * Unique ID extension\n * @default {}\n * @example uniqueId: false\n */\n uniqueId?: Partial<UniqueIDOptions> | false;\n\n /**\n * Trailing node extension\n * @default {}\n * @example trailingNode: false\n */\n trailingNode?: Partial<TrailingNodeOptions> | false;\n\n /**\n * YouTube extension\n * @default {}\n * @example youtube: false\n * @example youtube: { width: 640, height: 480 }\n */\n youtube?: Partial<YoutubeOptions> | false;\n}\n\n/**\n * ExtensionKit - A comprehensive bundle of all available extensions\n *\n * This extension allows you to easily configure which extensions to include\n * in your editor and customize their options.\n *\n * @example\n * ```typescript\n * const editor = useSlideEditor({\n * extensions: [\n * ExtensionKit.configure({\n * document: false,\n * heading: { levels: [1, 2, 3] },\n * link: { openOnClick: false },\n * codeBlock: false,\n * })\n * ]\n * })\n * ```\n */\nexport const ExtensionKit = Extension.create<ExtensionKitOptions>({\n name: \"extensionKit\",\n\n addExtensions() {\n const extensions = [];\n\n // Core extensions\n if (this.options.document !== false) {\n const docType = this.options.topLevelDoc ?? \"slide\";\n if (docType === \"asset\") {\n extensions.push(AssetDocument);\n } else {\n extensions.push(Document.configure({}));\n }\n }\n\n // Block attributes extension - provides common attributes to all block types\n // Must be registered early so attributes are available to other extensions\n if (this.options.blockAttributes !== false) {\n extensions.push(\n BlockAttributes.configure(this.options.blockAttributes || {})\n );\n }\n\n if (this.options.text !== false) {\n extensions.push(Text.configure(this.options.text || {}));\n }\n\n if (this.options.paragraph !== false) {\n extensions.push(Paragraph.configure(this.options.paragraph || {}));\n }\n\n // Text formatting extensions\n if (this.options.bold !== false) {\n extensions.push(Bold.configure(this.options.bold || {}));\n }\n\n if (this.options.italic !== false) {\n extensions.push(Italic.configure(this.options.italic || {}));\n }\n\n if (this.options.underline !== false) {\n extensions.push(Underline.configure(this.options.underline || {}));\n }\n\n if (this.options.strike !== false) {\n extensions.push(Strike.configure(this.options.strike || {}));\n }\n\n if (this.options.code !== false) {\n extensions.push(Code.configure(this.options.code || {}));\n }\n\n if (this.options.subscript !== false) {\n extensions.push(Subscript.configure(this.options.subscript || {}));\n }\n\n if (this.options.superscript !== false) {\n extensions.push(Superscript.configure(this.options.superscript || {}));\n }\n\n // Text style extensions\n if (this.options.textStyle !== false) {\n extensions.push(TextStyle.configure(this.options.textStyle || {}));\n }\n\n if (this.options.backgroundColor !== false) {\n extensions.push(\n BackgroundColor.configure(this.options.backgroundColor || {})\n );\n }\n\n if (this.options.color !== false) {\n extensions.push(Color.configure(this.options.color || {}));\n }\n\n if (this.options.fontFamily !== false) {\n extensions.push(FontFamily.configure(this.options.fontFamily || {}));\n }\n\n if (this.options.fontSize !== false) {\n extensions.push(FontSize.configure(this.options.fontSize || {}));\n }\n\n if (this.options.lineHeight !== false) {\n extensions.push(LineHeight.configure(this.options.lineHeight || {}));\n }\n\n if (this.options.highlight !== false) {\n extensions.push(Highlight.configure(this.options.highlight || {}));\n }\n\n if (this.options.textAlign !== false) {\n extensions.push(TextAlign.configure(this.options.textAlign || {}));\n }\n\n // Block extensions\n if (this.options.heading !== false) {\n extensions.push(Heading.configure(this.options.heading || {}));\n }\n\n if (this.options.blockquote !== false) {\n extensions.push(Blockquote.configure(this.options.blockquote || {}));\n }\n\n if (this.options.codeBlock !== false) {\n extensions.push(CodeBlock.configure(this.options.codeBlock || {}));\n }\n\n if (this.options.horizontalRule !== false) {\n extensions.push(\n HorizontalRule.configure(this.options.horizontalRule || {})\n );\n }\n\n // List extensions\n if (this.options.bulletList !== false) {\n extensions.push(BulletList.configure(this.options.bulletList || {}));\n }\n\n if (this.options.orderedList !== false) {\n extensions.push(OrderedList.configure(this.options.orderedList || {}));\n }\n\n if (this.options.listItem !== false) {\n extensions.push(ListItem.configure(this.options.listItem || {}));\n }\n\n if (this.options.listKeymap !== false) {\n extensions.push(ListKeymap.configure(this.options.listKeymap || {}));\n }\n\n // Media extensions\n if (this.options.image !== false) {\n extensions.push(Image.configure(this.options.image || {}));\n }\n\n if (this.options.youtube !== false) {\n extensions.push(Youtube.configure(this.options.youtube || {}));\n }\n\n // Interactive extensions\n if (this.options.link !== false) {\n extensions.push(Link.configure(this.options.link || {}));\n }\n\n if (this.options.details !== false) {\n extensions.push(Details.configure(this.options.details || {}));\n extensions.push(DetailsContent.configure({}));\n extensions.push(DetailsSummary.configure({}));\n }\n\n // Table extensions\n if (this.options.table !== false) {\n extensions.push(Table.configure(this.options.table || {}));\n extensions.push(TableRow.configure({}));\n extensions.push(TableHeader.configure({}));\n extensions.push(TableCell.configure({}));\n }\n\n if (this.options.tableOfContents !== false) {\n extensions.push(\n TableOfContents.configure(this.options.tableOfContents || {})\n );\n }\n\n // Special content extensions\n if (this.options.mathematics !== false) {\n extensions.push(Mathematics.configure(this.options.mathematics || {}));\n }\n\n if (this.options.markdown !== false) {\n extensions.push(Markdown.configure(this.options.markdown || {}));\n }\n\n if (this.options.imageBlock !== false) {\n extensions.push(ImageBlock.configure(this.options.imageBlock || {}));\n } \n\n // Editor behavior extensions\n if (this.options.hardBreak !== false) {\n extensions.push(HardBreak.configure(this.options.hardBreak || {}));\n }\n\n if (this.options.dropcursor !== false) {\n extensions.push(Dropcursor.configure(this.options.dropcursor || {}));\n }\n\n if (this.options.gapcursor !== false) {\n extensions.push(Gapcursor.configure(this.options.gapcursor || {}));\n }\n\n if (this.options.undoRedo !== false) {\n extensions.push(UndoRedo.configure(this.options.undoRedo || {}));\n }\n\n if (this.options.trailingNode !== false) {\n extensions.push(TrailingNode.configure(this.options.trailingNode || {}));\n }\n\n // UI extensions\n if (this.options.placeholder !== false) {\n extensions.push(Placeholder.configure(this.options.placeholder || {}));\n }\n\n if (this.options.bubbleMenu !== false) {\n extensions.push(BubbleMenu.configure(this.options.bubbleMenu || {}));\n }\n\n if (this.options.floatingMenu !== false) {\n extensions.push(FloatingMenu.configure(this.options.floatingMenu || {}));\n }\n\n // Utility extensions\n if (this.options.fileHandler !== false) {\n extensions.push(FileHandler.configure(this.options.fileHandler || {}));\n }\n\n if (this.options.nodeRange !== false) {\n extensions.push(NodeRange.configure(this.options.nodeRange || {}));\n }\n\n if (this.options.typography !== false) {\n extensions.push(Typography.configure(this.options.typography || {}));\n }\n\n if (this.options.uniqueId !== false) {\n extensions.push(UniqueID.configure(this.options.uniqueId || {}));\n }\n\n // Slide-specific extensions\n if (this.options.slide !== false) {\n extensions.push(Slide.configure(this.options.slide || {}));\n }\n\n if (this.options.selectWithinSlide !== false) {\n extensions.push(SelectWithinSlide);\n }\n\n // Column extension - for full-width blocks\n extensions.push(Column.configure({}));\n\n // ColumnGroup extension - groups columns horizontally side-by-side\n if (this.options.columnGroup !== false) {\n extensions.push(ColumnGroup.configure(this.options.columnGroup || {}));\n }\n\n if (this.options.addSlideButton !== false) {\n extensions.push(\n AddSlideButton.configure(this.options.addSlideButton || {})\n );\n }\n\n return extensions;\n },\n});\n"],"mappings":"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","names":["import_extension_details","import_extension_text_style","AssetDocument"]}
package/dist/index.d.cts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { Extension } from '@blockslides/core';
2
+ import { BlockAttributesOptions } from '@blockslides/extension-block-attributes';
2
3
  import { BlockquoteOptions } from '@blockslides/extension-blockquote';
3
4
  import { BoldOptions } from '@blockslides/extension-bold';
4
5
  import { CodeOptions } from '@blockslides/extension-code';
@@ -32,9 +33,9 @@ import { UnderlineOptions } from '@blockslides/extension-underline';
32
33
  import { UniqueIDOptions } from '@blockslides/extension-unique-id';
33
34
  import { YoutubeOptions } from '@blockslides/extension-youtube';
34
35
  import { SlideOptions } from '@blockslides/extension-slide';
36
+ import { ColumnGroupOptions } from '@blockslides/extension-column-group';
35
37
  import { AddSlideButtonOptions } from '@blockslides/extension-add-slide-button';
36
38
  import { BubbleMenuOptions } from '@blockslides/extension-bubble-menu';
37
- import { BubbleMenuPresetOptions } from '@blockslides/extension-bubble-menu-preset';
38
39
  import { FloatingMenuOptions } from '@blockslides/extension-floating-menu';
39
40
  import { DropcursorOptions, UndoRedoOptions, TrailingNodeOptions } from '@blockslides/extensions';
40
41
 
@@ -54,6 +55,14 @@ interface ExtensionKitOptions {
54
55
  * @default 'slide'
55
56
  */
56
57
  topLevelDoc?: "slide" | "asset";
58
+ /**
59
+ * Block attributes extension - adds common attributes (align, padding, gap,
60
+ * backgroundColor, borderRadius, fill, etc.) to all block types.
61
+ * @default {}
62
+ * @example blockAttributes: false
63
+ * @example blockAttributes: { types: ['heading', 'paragraph'] }
64
+ */
65
+ blockAttributes?: Partial<BlockAttributesOptions> | false;
57
66
  /**
58
67
  * Add slide button extension
59
68
  * @default {}
@@ -81,13 +90,6 @@ interface ExtensionKitOptions {
81
90
  * @example bubbleMenu: false
82
91
  */
83
92
  bubbleMenu?: Partial<BubbleMenuOptions> | false;
84
- /**
85
- * Bubble menu preset (text+image dual-mode toolbar)
86
- * @default {}
87
- * @example bubbleMenuPreset: false
88
- * @example bubbleMenuPreset: { items: ['bold', 'italic'] }
89
- */
90
- bubbleMenuPreset?: Partial<BubbleMenuPresetOptions> | false;
91
93
  /**
92
94
  * Bullet list extension
93
95
  * @default {}
@@ -291,6 +293,13 @@ interface ExtensionKitOptions {
291
293
  * @example selectWithinSlide: false
292
294
  */
293
295
  selectWithinSlide?: false;
296
+ /**
297
+ * ColumnGroup extension - groups columns horizontally side-by-side
298
+ * @default {}
299
+ * @example columnGroup: false
300
+ * @example columnGroup: { enableLayoutCSS: false }
301
+ */
302
+ columnGroup?: Partial<ColumnGroupOptions> | false;
294
303
  /**
295
304
  * Strike-through extension
296
305
  * @default {}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { Extension } from '@blockslides/core';
2
+ import { BlockAttributesOptions } from '@blockslides/extension-block-attributes';
2
3
  import { BlockquoteOptions } from '@blockslides/extension-blockquote';
3
4
  import { BoldOptions } from '@blockslides/extension-bold';
4
5
  import { CodeOptions } from '@blockslides/extension-code';
@@ -32,9 +33,9 @@ import { UnderlineOptions } from '@blockslides/extension-underline';
32
33
  import { UniqueIDOptions } from '@blockslides/extension-unique-id';
33
34
  import { YoutubeOptions } from '@blockslides/extension-youtube';
34
35
  import { SlideOptions } from '@blockslides/extension-slide';
36
+ import { ColumnGroupOptions } from '@blockslides/extension-column-group';
35
37
  import { AddSlideButtonOptions } from '@blockslides/extension-add-slide-button';
36
38
  import { BubbleMenuOptions } from '@blockslides/extension-bubble-menu';
37
- import { BubbleMenuPresetOptions } from '@blockslides/extension-bubble-menu-preset';
38
39
  import { FloatingMenuOptions } from '@blockslides/extension-floating-menu';
39
40
  import { DropcursorOptions, UndoRedoOptions, TrailingNodeOptions } from '@blockslides/extensions';
40
41
 
@@ -54,6 +55,14 @@ interface ExtensionKitOptions {
54
55
  * @default 'slide'
55
56
  */
56
57
  topLevelDoc?: "slide" | "asset";
58
+ /**
59
+ * Block attributes extension - adds common attributes (align, padding, gap,
60
+ * backgroundColor, borderRadius, fill, etc.) to all block types.
61
+ * @default {}
62
+ * @example blockAttributes: false
63
+ * @example blockAttributes: { types: ['heading', 'paragraph'] }
64
+ */
65
+ blockAttributes?: Partial<BlockAttributesOptions> | false;
57
66
  /**
58
67
  * Add slide button extension
59
68
  * @default {}
@@ -81,13 +90,6 @@ interface ExtensionKitOptions {
81
90
  * @example bubbleMenu: false
82
91
  */
83
92
  bubbleMenu?: Partial<BubbleMenuOptions> | false;
84
- /**
85
- * Bubble menu preset (text+image dual-mode toolbar)
86
- * @default {}
87
- * @example bubbleMenuPreset: false
88
- * @example bubbleMenuPreset: { items: ['bold', 'italic'] }
89
- */
90
- bubbleMenuPreset?: Partial<BubbleMenuPresetOptions> | false;
91
93
  /**
92
94
  * Bullet list extension
93
95
  * @default {}
@@ -291,6 +293,13 @@ interface ExtensionKitOptions {
291
293
  * @example selectWithinSlide: false
292
294
  */
293
295
  selectWithinSlide?: false;
296
+ /**
297
+ * ColumnGroup extension - groups columns horizontally side-by-side
298
+ * @default {}
299
+ * @example columnGroup: false
300
+ * @example columnGroup: { enableLayoutCSS: false }
301
+ */
302
+ columnGroup?: Partial<ColumnGroupOptions> | false;
294
303
  /**
295
304
  * Strike-through extension
296
305
  * @default {}
package/dist/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  // src/extension-kit.ts
2
2
  import { Extension } from "@blockslides/core";
3
+ import { BlockAttributes } from "@blockslides/extension-block-attributes";
3
4
  import { Blockquote } from "@blockslides/extension-blockquote";
4
5
  import { Bold } from "@blockslides/extension-bold";
5
6
  import { Code } from "@blockslides/extension-code";
@@ -50,12 +51,11 @@ import { Underline } from "@blockslides/extension-underline";
50
51
  import { UniqueID } from "@blockslides/extension-unique-id";
51
52
  import { Youtube } from "@blockslides/extension-youtube";
52
53
  import { Slide } from "@blockslides/extension-slide";
53
- import { Row } from "@blockslides/extension-row";
54
54
  import { Column } from "@blockslides/extension-column";
55
+ import { ColumnGroup } from "@blockslides/extension-column-group";
55
56
  import { SelectWithinSlide } from "@blockslides/extension-select-within-slide";
56
57
  import { AddSlideButton } from "@blockslides/extension-add-slide-button";
57
58
  import { BubbleMenu } from "@blockslides/extension-bubble-menu";
58
- import { BubbleMenuPreset } from "@blockslides/extension-bubble-menu-preset";
59
59
  import { FloatingMenu } from "@blockslides/extension-floating-menu";
60
60
  import {
61
61
  Dropcursor,
@@ -76,6 +76,11 @@ var ExtensionKit = Extension.create({
76
76
  extensions.push(Document.configure({}));
77
77
  }
78
78
  }
79
+ if (this.options.blockAttributes !== false) {
80
+ extensions.push(
81
+ BlockAttributes.configure(this.options.blockAttributes || {})
82
+ );
83
+ }
79
84
  if (this.options.text !== false) {
80
85
  extensions.push(Text.configure(this.options.text || {}));
81
86
  }
@@ -207,11 +212,6 @@ var ExtensionKit = Extension.create({
207
212
  if (this.options.placeholder !== false) {
208
213
  extensions.push(Placeholder.configure(this.options.placeholder || {}));
209
214
  }
210
- if (this.options.bubbleMenuPreset !== false) {
211
- extensions.push(
212
- BubbleMenuPreset.configure(this.options.bubbleMenuPreset || {})
213
- );
214
- }
215
215
  if (this.options.bubbleMenu !== false) {
216
216
  extensions.push(BubbleMenu.configure(this.options.bubbleMenu || {}));
217
217
  }
@@ -236,8 +236,10 @@ var ExtensionKit = Extension.create({
236
236
  if (this.options.selectWithinSlide !== false) {
237
237
  extensions.push(SelectWithinSlide);
238
238
  }
239
- extensions.push(Row.configure({}));
240
239
  extensions.push(Column.configure({}));
240
+ if (this.options.columnGroup !== false) {
241
+ extensions.push(ColumnGroup.configure(this.options.columnGroup || {}));
242
+ }
241
243
  if (this.options.addSlideButton !== false) {
242
244
  extensions.push(
243
245
  AddSlideButton.configure(this.options.addSlideButton || {})
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/extension-kit.ts","../src/index.ts"],"sourcesContent":["import { Extension } from \"@blockslides/core\";\n\n// Import all extensions\nimport type { BlockquoteOptions } from \"@blockslides/extension-blockquote\";\nimport { Blockquote } from \"@blockslides/extension-blockquote\";\nimport type { BoldOptions } from \"@blockslides/extension-bold\";\nimport { Bold } from \"@blockslides/extension-bold\";\nimport type { CodeOptions } from \"@blockslides/extension-code\";\nimport { Code } from \"@blockslides/extension-code\";\nimport type { CodeBlockOptions } from \"@blockslides/extension-code-block\";\nimport { CodeBlock } from \"@blockslides/extension-code-block\";\nimport type { ColorOptions } from \"@blockslides/extension-color\";\nimport { Color } from \"@blockslides/extension-color\";\nimport { Document } from \"@blockslides/extension-document\";\nimport AssetDocument from \"@blockslides/extension-asset-document\";\nimport { Details } from \"@blockslides/extension-details\";\nimport { DetailsContent } from \"@blockslides/extension-details\";\nimport { DetailsSummary } from \"@blockslides/extension-details\";\nimport type { FileHandlerOptions } from \"@blockslides/extension-file-handler\";\nimport { FileHandler } from \"@blockslides/extension-file-handler\";\nimport type { FontFamilyOptions } from \"@blockslides/extension-font-family\";\nimport { FontFamily } from \"@blockslides/extension-font-family\";\nimport type {\n BackgroundColorOptions,\n FontSizeOptions,\n LineHeightOptions,\n} from \"@blockslides/extension-text-style\";\nimport { BackgroundColor, FontSize, LineHeight } from \"@blockslides/extension-text-style\";\nimport type { HardBreakOptions } from \"@blockslides/extension-hard-break\";\nimport { HardBreak } from \"@blockslides/extension-hard-break\";\nimport type { HeadingOptions } from \"@blockslides/extension-heading\";\nimport { Heading } from \"@blockslides/extension-heading\";\nimport type { HighlightOptions } from \"@blockslides/extension-highlight\";\nimport { Highlight } from \"@blockslides/extension-highlight\";\nimport type { HorizontalRuleOptions } from \"@blockslides/extension-horizontal-rule\";\nimport { HorizontalRule } from \"@blockslides/extension-horizontal-rule\";\nimport type { ImageOptions } from \"@blockslides/extension-image\";\nimport { Image } from \"@blockslides/extension-image\";\nimport type { ItalicOptions } from \"@blockslides/extension-italic\";\nimport { Italic } from \"@blockslides/extension-italic\";\nimport type { LinkOptions } from \"@blockslides/extension-link\";\nimport { Link } from \"@blockslides/extension-link\";\nimport type {\n BulletListOptions,\n ListItemOptions,\n ListKeymapOptions,\n OrderedListOptions,\n} from \"@blockslides/extension-list\";\nimport type { ImageBlockOptions } from \"@blockslides/extension-image-block\";\nimport { ImageBlock } from \"@blockslides/extension-image-block\";\nimport {\n BulletList,\n ListItem,\n ListKeymap,\n OrderedList,\n} from \"@blockslides/extension-list\";\nimport type { MathematicsOptions } from \"@blockslides/extension-mathematics\";\nimport { Mathematics } from \"@blockslides/extension-mathematics\";\nimport type { MarkdownExtensionOptions } from \"@blockslides/markdown\";\nimport { Markdown } from \"@blockslides/markdown\";\nimport type { NodeRangeOptions } from \"@blockslides/extension-node-range\";\nimport { NodeRange } from \"@blockslides/extension-node-range\";\nimport type { ParagraphOptions } from \"@blockslides/extension-paragraph\";\nimport { Paragraph } from \"@blockslides/extension-paragraph\";\nimport type { PlaceholderOptions } from \"@blockslides/extension-placeholder\";\nimport { Placeholder } from \"@blockslides/extension-placeholder\";\nimport type { StrikeOptions } from \"@blockslides/extension-strike\";\nimport { Strike } from \"@blockslides/extension-strike\";\nimport type { SubscriptExtensionOptions } from \"@blockslides/extension-subscript\";\nimport { Subscript } from \"@blockslides/extension-subscript\";\nimport type { SuperscriptExtensionOptions } from \"@blockslides/extension-superscript\";\nimport { Superscript } from \"@blockslides/extension-superscript\";\nimport type { TableOptions } from \"@blockslides/extension-table\";\nimport {\n Table,\n TableCell,\n TableHeader,\n TableRow,\n} from \"@blockslides/extension-table\";\nimport type { TableOfContentsOptions } from \"@blockslides/extension-table-of-contents\";\nimport { TableOfContents } from \"@blockslides/extension-table-of-contents\";\nimport { Text } from \"@blockslides/extension-text\";\nimport type { TextAlignOptions } from \"@blockslides/extension-text-align\";\nimport { TextAlign } from \"@blockslides/extension-text-align\";\nimport type { TextStyleOptions } from \"@blockslides/extension-text-style\";\nimport { TextStyle } from \"@blockslides/extension-text-style\";\nimport type { TypographyOptions } from \"@blockslides/extension-typography\";\nimport { Typography } from \"@blockslides/extension-typography\";\nimport type { UnderlineOptions } from \"@blockslides/extension-underline\";\nimport { Underline } from \"@blockslides/extension-underline\";\nimport { UniqueID } from \"@blockslides/extension-unique-id\";\nimport type { UniqueIDOptions } from \"@blockslides/extension-unique-id\";\nimport type { YoutubeOptions } from \"@blockslides/extension-youtube\";\nimport { Youtube } from \"@blockslides/extension-youtube\";\nimport { Slide } from \"@blockslides/extension-slide\";\nimport type { SlideOptions } from \"@blockslides/extension-slide\";\nimport { Row } from \"@blockslides/extension-row\";\nimport { Column } from \"@blockslides/extension-column\";\nimport { SelectWithinSlide } from \"@blockslides/extension-select-within-slide\";\nimport type { AddSlideButtonOptions } from \"@blockslides/extension-add-slide-button\";\nimport { AddSlideButton } from \"@blockslides/extension-add-slide-button\";\nimport type { BubbleMenuOptions } from \"@blockslides/extension-bubble-menu\";\nimport { BubbleMenu } from \"@blockslides/extension-bubble-menu\";\nimport type { BubbleMenuPresetOptions } from \"@blockslides/extension-bubble-menu-preset\";\nimport { BubbleMenuPreset } from \"@blockslides/extension-bubble-menu-preset\";\nimport type { FloatingMenuOptions } from \"@blockslides/extension-floating-menu\";\nimport { FloatingMenu } from \"@blockslides/extension-floating-menu\";\nimport type {\n DropcursorOptions,\n TrailingNodeOptions,\n UndoRedoOptions,\n} from \"@blockslides/extensions\";\nimport {\n Dropcursor,\n Gapcursor,\n TrailingNode,\n UndoRedo,\n} from \"@blockslides/extensions\";\n\n/**\n * ExtensionKit Options Interface\n *\n * Each extension can be:\n * - undefined (default): Extension will be included with default options\n * - false: Extension will be excluded\n * - Partial<ExtensionOptions>: Extension will be included with custom options\n */\nexport interface ExtensionKitOptions {\n /**\n * Select which top-level document node to use.\n * 'slide' => default slideshow doc (slide+)\n * 'asset' => asset doc (block+)\n * @default 'slide'\n */\n topLevelDoc?: \"slide\" | \"asset\";\n /**\n * Add slide button extension\n * @default {}\n * @example addSlideButton: false\n * @example addSlideButton: { content: '➕', buttonStyle: { width: '64px' } }\n */\n addSlideButton?: Partial<AddSlideButtonOptions> | false;\n\n /**\n * Blockquote extension\n * @default {}\n * @example blockquote: false\n * @example blockquote: { HTMLAttributes: { class: 'my-blockquote' } }\n */\n blockquote?: Partial<BlockquoteOptions> | false;\n\n /**\n * Bold extension\n * @default {}\n * @example bold: false\n * @example bold: { HTMLAttributes: { class: 'font-bold' } }\n */\n bold?: Partial<BoldOptions> | false;\n\n /**\n * Bubble menu extension\n * @default {}\n * @example bubbleMenu: false\n */\n bubbleMenu?: Partial<BubbleMenuOptions> | false;\n\n /**\n * Bubble menu preset (text+image dual-mode toolbar)\n * @default {}\n * @example bubbleMenuPreset: false\n * @example bubbleMenuPreset: { items: ['bold', 'italic'] }\n */\n bubbleMenuPreset?: Partial<BubbleMenuPresetOptions> | false;\n\n /**\n * Bullet list extension\n * @default {}\n * @example bulletList: false\n * @example bulletList: { HTMLAttributes: { class: 'list-disc' } }\n */\n bulletList?: Partial<BulletListOptions> | false;\n\n /**\n * Inline code extension\n * @default {}\n * @example code: false\n */\n code?: Partial<CodeOptions> | false;\n\n /**\n * Code block extension\n * @default {}\n * @example codeBlock: false\n * @example codeBlock: { defaultLanguage: 'javascript' }\n */\n codeBlock?: Partial<CodeBlockOptions> | false;\n\n /**\n * Text color extension\n * @default {}\n * @example color: false\n * @example color: { types: ['textStyle'] }\n */\n color?: Partial<ColorOptions> | false;\n\n /**\n * Background color extension\n * @default {}\n * @example backgroundColor: false\n */\n backgroundColor?: Partial<BackgroundColorOptions> | false;\n\n /**\n * Details/Summary (collapsible) extension\n * @default {}\n * @example details: false\n */\n details?: false;\n\n /**\n * Document extension (root node)\n * @default {}\n * @example document: false\n */\n document?: false;\n\n /**\n * Drop cursor extension\n * @default {}\n * @example dropcursor: false\n * @example dropcursor: { color: '#3b82f6', width: 2 }\n */\n dropcursor?: Partial<DropcursorOptions> | false;\n\n /**\n * File handler extension (drag & drop, paste)\n * @default {}\n * @example fileHandler: false\n */\n fileHandler?: Partial<FileHandlerOptions> | false;\n\n /**\n * Floating menu extension\n * @default {}\n * @example floatingMenu: false\n */\n floatingMenu?: Partial<FloatingMenuOptions> | false;\n\n /**\n * Font family extension\n * @default {}\n * @example fontFamily: false\n * @example fontFamily: { types: ['textStyle'] }\n */\n fontFamily?: Partial<FontFamilyOptions> | false;\n\n /**\n * Font size extension\n * @default {}\n * @example fontSize: false\n */\n fontSize?: Partial<FontSizeOptions> | false;\n\n /**\n * Line height extension\n * @default {}\n * @example lineHeight: false\n */\n lineHeight?: Partial<LineHeightOptions> | false;\n\n /**\n * Gap cursor extension\n * @default {}\n * @example gapcursor: false\n */\n gapcursor?: false;\n\n /**\n * Hard break extension\n * @default {}\n * @example hardBreak: false\n */\n hardBreak?: Partial<HardBreakOptions> | false;\n\n /**\n * Heading extension\n * @default {}\n * @example heading: false\n * @example heading: { levels: [1, 2, 3] }\n */\n heading?: Partial<HeadingOptions> | false;\n\n /**\n * Text highlight extension\n * @default {}\n * @example highlight: false\n * @example highlight: { multicolor: true }\n */\n highlight?: Partial<HighlightOptions> | false;\n\n /**\n * Horizontal rule extension\n * @default {}\n * @example horizontalRule: false\n */\n horizontalRule?: Partial<HorizontalRuleOptions> | false;\n\n /**\n * Image extension\n * @default {}\n * @example image: false\n * @example image: { inline: true, allowBase64: true }\n */\n image?: Partial<ImageOptions> | false;\n\n /**\n * Italic extension\n * @default {}\n * @example italic: false\n */\n italic?: Partial<ItalicOptions> | false;\n\n /**\n * Link extension\n * @default {}\n * @example link: false\n * @example link: { openOnClick: false, linkOnPaste: true }\n */\n link?: Partial<LinkOptions> | false;\n\n /**\n * List item extension\n * @default {}\n * @example listItem: false\n */\n listItem?: Partial<ListItemOptions> | false;\n\n /**\n * List keymap extension\n * @default {}\n * @example listKeymap: false\n */\n listKeymap?: Partial<ListKeymapOptions> | false;\n\n /**\n * Mathematics extension (LaTeX/KaTeX)\n * @default {}\n * @example mathematics: false\n */\n mathematics?: Partial<MathematicsOptions> | false;\n\n /**\n * Image block extension\n * @default {}\n * @example imageBlock: false\n */\n imageBlock?: Partial<ImageBlockOptions> | false;\n\n /**\n * Markdown extension (parse/serialize markdown)\n * @default {}\n * @example markdown: false\n */\n markdown?: Partial<MarkdownExtensionOptions> | false;\n\n /**\n * Node range extension\n * @default {}\n * @example nodeRange: false\n */\n nodeRange?: Partial<NodeRangeOptions> | false;\n\n /**\n * Ordered list extension\n * @default {}\n * @example orderedList: false\n */\n orderedList?: Partial<OrderedListOptions> | false;\n\n /**\n * Paragraph extension\n * @default {}\n * @example paragraph: false\n */\n paragraph?: Partial<ParagraphOptions> | false;\n\n /**\n * Placeholder extension\n * @default {}\n * @example placeholder: false\n * @example placeholder: { placeholder: 'Start typing...' }\n */\n placeholder?: Partial<PlaceholderOptions> | false;\n\n /**\n * Slide extension\n * @default {}\n * @example slide: false\n * @example slide: { renderMode: 'fixed' }\n */\n slide?: Partial<SlideOptions> | false;\n\n /**\n * Select-within-slide keyboard shortcut override\n * @default {}\n * @example selectWithinSlide: false\n */\n selectWithinSlide?: false;\n\n /**\n * Strike-through extension\n * @default {}\n * @example strike: false\n */\n strike?: Partial<StrikeOptions> | false;\n\n /**\n * Subscript extension\n * @default {}\n * @example subscript: false\n */\n subscript?: Partial<SubscriptExtensionOptions> | false;\n\n /**\n * Superscript extension\n * @default {}\n * @example superscript: false\n */\n superscript?: Partial<SuperscriptExtensionOptions> | false;\n\n /**\n * Table extension\n * @default {}\n * @example table: false\n * @example table: { resizable: true, cellMinWidth: 50 }\n */\n table?: Partial<TableOptions> | false;\n\n /**\n * Table of contents extension\n * @default {}\n * @example tableOfContents: false\n */\n tableOfContents?: Partial<TableOfContentsOptions> | false;\n\n /**\n * Text extension (base text node)\n * @default {}\n * @example text: false\n */\n text?: false;\n\n /**\n * Text align extension\n * @default {}\n * @example textAlign: false\n * @example textAlign: { types: ['heading', 'paragraph'], alignments: ['left', 'center', 'right'] }\n */\n textAlign?: Partial<TextAlignOptions> | false;\n\n /**\n * Text style extension\n * @default {}\n * @example textStyle: false\n */\n textStyle?: Partial<TextStyleOptions> | false;\n\n /**\n * Typography extension (smart quotes, dashes, etc.)\n * @default {}\n * @example typography: false\n */\n typography?: Partial<TypographyOptions> | false;\n\n /**\n * Underline extension\n * @default {}\n * @example underline: false\n */\n underline?: Partial<UnderlineOptions> | false;\n\n /**\n * Undo/Redo extension\n * @default {}\n * @example undoRedo: false\n */\n undoRedo?: Partial<UndoRedoOptions> | false;\n\n /**\n * Unique ID extension\n * @default {}\n * @example uniqueId: false\n */\n uniqueId?: Partial<UniqueIDOptions> | false;\n\n /**\n * Trailing node extension\n * @default {}\n * @example trailingNode: false\n */\n trailingNode?: Partial<TrailingNodeOptions> | false;\n\n /**\n * YouTube extension\n * @default {}\n * @example youtube: false\n * @example youtube: { width: 640, height: 480 }\n */\n youtube?: Partial<YoutubeOptions> | false;\n}\n\n/**\n * ExtensionKit - A comprehensive bundle of all available extensions\n *\n * This extension allows you to easily configure which extensions to include\n * in your editor and customize their options.\n *\n * @example\n * ```typescript\n * const editor = useSlideEditor({\n * extensions: [\n * ExtensionKit.configure({\n * document: false,\n * heading: { levels: [1, 2, 3] },\n * link: { openOnClick: false },\n * codeBlock: false,\n * })\n * ]\n * })\n * ```\n */\nexport const ExtensionKit = Extension.create<ExtensionKitOptions>({\n name: \"extensionKit\",\n\n addExtensions() {\n const extensions = [];\n\n // Core extensions\n if (this.options.document !== false) {\n const docType = this.options.topLevelDoc ?? \"slide\";\n if (docType === \"asset\") {\n extensions.push(AssetDocument);\n } else {\n extensions.push(Document.configure({}));\n }\n }\n\n if (this.options.text !== false) {\n extensions.push(Text.configure(this.options.text || {}));\n }\n\n if (this.options.paragraph !== false) {\n extensions.push(Paragraph.configure(this.options.paragraph || {}));\n }\n\n // Text formatting extensions\n if (this.options.bold !== false) {\n extensions.push(Bold.configure(this.options.bold || {}));\n }\n\n if (this.options.italic !== false) {\n extensions.push(Italic.configure(this.options.italic || {}));\n }\n\n if (this.options.underline !== false) {\n extensions.push(Underline.configure(this.options.underline || {}));\n }\n\n if (this.options.strike !== false) {\n extensions.push(Strike.configure(this.options.strike || {}));\n }\n\n if (this.options.code !== false) {\n extensions.push(Code.configure(this.options.code || {}));\n }\n\n if (this.options.subscript !== false) {\n extensions.push(Subscript.configure(this.options.subscript || {}));\n }\n\n if (this.options.superscript !== false) {\n extensions.push(Superscript.configure(this.options.superscript || {}));\n }\n\n // Text style extensions\n if (this.options.textStyle !== false) {\n extensions.push(TextStyle.configure(this.options.textStyle || {}));\n }\n\n if (this.options.backgroundColor !== false) {\n extensions.push(\n BackgroundColor.configure(this.options.backgroundColor || {})\n );\n }\n\n if (this.options.color !== false) {\n extensions.push(Color.configure(this.options.color || {}));\n }\n\n if (this.options.fontFamily !== false) {\n extensions.push(FontFamily.configure(this.options.fontFamily || {}));\n }\n\n if (this.options.fontSize !== false) {\n extensions.push(FontSize.configure(this.options.fontSize || {}));\n }\n\n if (this.options.lineHeight !== false) {\n extensions.push(LineHeight.configure(this.options.lineHeight || {}));\n }\n\n if (this.options.highlight !== false) {\n extensions.push(Highlight.configure(this.options.highlight || {}));\n }\n\n if (this.options.textAlign !== false) {\n extensions.push(TextAlign.configure(this.options.textAlign || {}));\n }\n\n // Block extensions\n if (this.options.heading !== false) {\n extensions.push(Heading.configure(this.options.heading || {}));\n }\n\n if (this.options.blockquote !== false) {\n extensions.push(Blockquote.configure(this.options.blockquote || {}));\n }\n\n if (this.options.codeBlock !== false) {\n extensions.push(CodeBlock.configure(this.options.codeBlock || {}));\n }\n\n if (this.options.horizontalRule !== false) {\n extensions.push(\n HorizontalRule.configure(this.options.horizontalRule || {})\n );\n }\n\n // List extensions\n if (this.options.bulletList !== false) {\n extensions.push(BulletList.configure(this.options.bulletList || {}));\n }\n\n if (this.options.orderedList !== false) {\n extensions.push(OrderedList.configure(this.options.orderedList || {}));\n }\n\n if (this.options.listItem !== false) {\n extensions.push(ListItem.configure(this.options.listItem || {}));\n }\n\n if (this.options.listKeymap !== false) {\n extensions.push(ListKeymap.configure(this.options.listKeymap || {}));\n }\n\n // Media extensions\n if (this.options.image !== false) {\n extensions.push(Image.configure(this.options.image || {}));\n }\n\n if (this.options.youtube !== false) {\n extensions.push(Youtube.configure(this.options.youtube || {}));\n }\n\n // Interactive extensions\n if (this.options.link !== false) {\n extensions.push(Link.configure(this.options.link || {}));\n }\n\n if (this.options.details !== false) {\n extensions.push(Details.configure(this.options.details || {}));\n extensions.push(DetailsContent.configure({}));\n extensions.push(DetailsSummary.configure({}));\n }\n\n // Table extensions\n if (this.options.table !== false) {\n extensions.push(Table.configure(this.options.table || {}));\n extensions.push(TableRow.configure({}));\n extensions.push(TableHeader.configure({}));\n extensions.push(TableCell.configure({}));\n }\n\n if (this.options.tableOfContents !== false) {\n extensions.push(\n TableOfContents.configure(this.options.tableOfContents || {})\n );\n }\n\n // Special content extensions\n if (this.options.mathematics !== false) {\n extensions.push(Mathematics.configure(this.options.mathematics || {}));\n }\n\n if (this.options.markdown !== false) {\n extensions.push(Markdown.configure(this.options.markdown || {}));\n }\n\n if (this.options.imageBlock !== false) {\n extensions.push(ImageBlock.configure(this.options.imageBlock || {}));\n } \n\n // Editor behavior extensions\n if (this.options.hardBreak !== false) {\n extensions.push(HardBreak.configure(this.options.hardBreak || {}));\n }\n\n if (this.options.dropcursor !== false) {\n extensions.push(Dropcursor.configure(this.options.dropcursor || {}));\n }\n\n if (this.options.gapcursor !== false) {\n extensions.push(Gapcursor.configure(this.options.gapcursor || {}));\n }\n\n if (this.options.undoRedo !== false) {\n extensions.push(UndoRedo.configure(this.options.undoRedo || {}));\n }\n\n if (this.options.trailingNode !== false) {\n extensions.push(TrailingNode.configure(this.options.trailingNode || {}));\n }\n\n // UI extensions\n if (this.options.placeholder !== false) {\n extensions.push(Placeholder.configure(this.options.placeholder || {}));\n }\n\n if (this.options.bubbleMenuPreset !== false) {\n extensions.push(\n BubbleMenuPreset.configure(this.options.bubbleMenuPreset || {})\n );\n }\n\n if (this.options.bubbleMenu !== false) {\n extensions.push(BubbleMenu.configure(this.options.bubbleMenu || {}));\n }\n\n if (this.options.floatingMenu !== false) {\n extensions.push(FloatingMenu.configure(this.options.floatingMenu || {}));\n }\n\n // Utility extensions\n if (this.options.fileHandler !== false) {\n extensions.push(FileHandler.configure(this.options.fileHandler || {}));\n }\n\n if (this.options.nodeRange !== false) {\n extensions.push(NodeRange.configure(this.options.nodeRange || {}));\n }\n\n if (this.options.typography !== false) {\n extensions.push(Typography.configure(this.options.typography || {}));\n }\n\n if (this.options.uniqueId !== false) {\n extensions.push(UniqueID.configure(this.options.uniqueId || {}));\n }\n\n // Slide-specific extensions\n if (this.options.slide !== false) {\n extensions.push(Slide.configure(this.options.slide || {}));\n }\n\n if (this.options.selectWithinSlide !== false) {\n extensions.push(SelectWithinSlide);\n }\n\n extensions.push(Row.configure({}));\n extensions.push(Column.configure({}));\n\n if (this.options.addSlideButton !== false) {\n extensions.push(\n AddSlideButton.configure(this.options.addSlideButton || {})\n );\n }\n\n return extensions;\n },\n});\n","import { ExtensionKit } from \"./extension-kit.js\";\n\nexport { ExtensionKit } from \"./extension-kit.js\";\nexport type { ExtensionKitOptions } from \"./extension-kit.js\";\nexport default ExtensionKit;\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/extension-kit.ts","../src/index.ts"],"sourcesContent":["import { Extension } from \"@blockslides/core\";\n\n// Import all extensions\nimport type { BlockAttributesOptions } from \"@blockslides/extension-block-attributes\";\nimport { BlockAttributes } from \"@blockslides/extension-block-attributes\";\nimport type { BlockquoteOptions } from \"@blockslides/extension-blockquote\";\nimport { Blockquote } from \"@blockslides/extension-blockquote\";\nimport type { BoldOptions } from \"@blockslides/extension-bold\";\nimport { Bold } from \"@blockslides/extension-bold\";\nimport type { CodeOptions } from \"@blockslides/extension-code\";\nimport { Code } from \"@blockslides/extension-code\";\nimport type { CodeBlockOptions } from \"@blockslides/extension-code-block\";\nimport { CodeBlock } from \"@blockslides/extension-code-block\";\nimport type { ColorOptions } from \"@blockslides/extension-color\";\nimport { Color } from \"@blockslides/extension-color\";\nimport { Document } from \"@blockslides/extension-document\";\nimport AssetDocument from \"@blockslides/extension-asset-document\";\nimport { Details } from \"@blockslides/extension-details\";\nimport { DetailsContent } from \"@blockslides/extension-details\";\nimport { DetailsSummary } from \"@blockslides/extension-details\";\nimport type { FileHandlerOptions } from \"@blockslides/extension-file-handler\";\nimport { FileHandler } from \"@blockslides/extension-file-handler\";\nimport type { FontFamilyOptions } from \"@blockslides/extension-font-family\";\nimport { FontFamily } from \"@blockslides/extension-font-family\";\nimport type {\n BackgroundColorOptions,\n FontSizeOptions,\n LineHeightOptions,\n} from \"@blockslides/extension-text-style\";\nimport { BackgroundColor, FontSize, LineHeight } from \"@blockslides/extension-text-style\";\nimport type { HardBreakOptions } from \"@blockslides/extension-hard-break\";\nimport { HardBreak } from \"@blockslides/extension-hard-break\";\nimport type { HeadingOptions } from \"@blockslides/extension-heading\";\nimport { Heading } from \"@blockslides/extension-heading\";\nimport type { HighlightOptions } from \"@blockslides/extension-highlight\";\nimport { Highlight } from \"@blockslides/extension-highlight\";\nimport type { HorizontalRuleOptions } from \"@blockslides/extension-horizontal-rule\";\nimport { HorizontalRule } from \"@blockslides/extension-horizontal-rule\";\nimport type { ImageOptions } from \"@blockslides/extension-image\";\nimport { Image } from \"@blockslides/extension-image\";\nimport type { ItalicOptions } from \"@blockslides/extension-italic\";\nimport { Italic } from \"@blockslides/extension-italic\";\nimport type { LinkOptions } from \"@blockslides/extension-link\";\nimport { Link } from \"@blockslides/extension-link\";\nimport type {\n BulletListOptions,\n ListItemOptions,\n ListKeymapOptions,\n OrderedListOptions,\n} from \"@blockslides/extension-list\";\nimport type { ImageBlockOptions } from \"@blockslides/extension-image-block\";\nimport { ImageBlock } from \"@blockslides/extension-image-block\";\nimport {\n BulletList,\n ListItem,\n ListKeymap,\n OrderedList,\n} from \"@blockslides/extension-list\";\nimport type { MathematicsOptions } from \"@blockslides/extension-mathematics\";\nimport { Mathematics } from \"@blockslides/extension-mathematics\";\nimport type { MarkdownExtensionOptions } from \"@blockslides/markdown\";\nimport { Markdown } from \"@blockslides/markdown\";\nimport type { NodeRangeOptions } from \"@blockslides/extension-node-range\";\nimport { NodeRange } from \"@blockslides/extension-node-range\";\nimport type { ParagraphOptions } from \"@blockslides/extension-paragraph\";\nimport { Paragraph } from \"@blockslides/extension-paragraph\";\nimport type { PlaceholderOptions } from \"@blockslides/extension-placeholder\";\nimport { Placeholder } from \"@blockslides/extension-placeholder\";\nimport type { StrikeOptions } from \"@blockslides/extension-strike\";\nimport { Strike } from \"@blockslides/extension-strike\";\nimport type { SubscriptExtensionOptions } from \"@blockslides/extension-subscript\";\nimport { Subscript } from \"@blockslides/extension-subscript\";\nimport type { SuperscriptExtensionOptions } from \"@blockslides/extension-superscript\";\nimport { Superscript } from \"@blockslides/extension-superscript\";\nimport type { TableOptions } from \"@blockslides/extension-table\";\nimport {\n Table,\n TableCell,\n TableHeader,\n TableRow,\n} from \"@blockslides/extension-table\";\nimport type { TableOfContentsOptions } from \"@blockslides/extension-table-of-contents\";\nimport { TableOfContents } from \"@blockslides/extension-table-of-contents\";\nimport { Text } from \"@blockslides/extension-text\";\nimport type { TextAlignOptions } from \"@blockslides/extension-text-align\";\nimport { TextAlign } from \"@blockslides/extension-text-align\";\nimport type { TextStyleOptions } from \"@blockslides/extension-text-style\";\nimport { TextStyle } from \"@blockslides/extension-text-style\";\nimport type { TypographyOptions } from \"@blockslides/extension-typography\";\nimport { Typography } from \"@blockslides/extension-typography\";\nimport type { UnderlineOptions } from \"@blockslides/extension-underline\";\nimport { Underline } from \"@blockslides/extension-underline\";\nimport { UniqueID } from \"@blockslides/extension-unique-id\";\nimport type { UniqueIDOptions } from \"@blockslides/extension-unique-id\";\nimport type { YoutubeOptions } from \"@blockslides/extension-youtube\";\nimport { Youtube } from \"@blockslides/extension-youtube\";\nimport { Slide } from \"@blockslides/extension-slide\";\nimport type { SlideOptions } from \"@blockslides/extension-slide\";\nimport { Column } from \"@blockslides/extension-column\";\nimport type { ColumnGroupOptions } from \"@blockslides/extension-column-group\";\nimport { ColumnGroup } from \"@blockslides/extension-column-group\";\nimport { SelectWithinSlide } from \"@blockslides/extension-select-within-slide\";\nimport type { AddSlideButtonOptions } from \"@blockslides/extension-add-slide-button\";\nimport { AddSlideButton } from \"@blockslides/extension-add-slide-button\";\nimport type { BubbleMenuOptions } from \"@blockslides/extension-bubble-menu\";\nimport { BubbleMenu } from \"@blockslides/extension-bubble-menu\";\nimport type { FloatingMenuOptions } from \"@blockslides/extension-floating-menu\";\nimport { FloatingMenu } from \"@blockslides/extension-floating-menu\";\nimport type {\n DropcursorOptions,\n TrailingNodeOptions,\n UndoRedoOptions,\n} from \"@blockslides/extensions\";\nimport {\n Dropcursor,\n Gapcursor,\n TrailingNode,\n UndoRedo,\n} from \"@blockslides/extensions\";\n\n/**\n * ExtensionKit Options Interface\n *\n * Each extension can be:\n * - undefined (default): Extension will be included with default options\n * - false: Extension will be excluded\n * - Partial<ExtensionOptions>: Extension will be included with custom options\n */\nexport interface ExtensionKitOptions {\n /**\n * Select which top-level document node to use.\n * 'slide' => default slideshow doc (slide+)\n * 'asset' => asset doc (block+)\n * @default 'slide'\n */\n topLevelDoc?: \"slide\" | \"asset\";\n\n /**\n * Block attributes extension - adds common attributes (align, padding, gap,\n * backgroundColor, borderRadius, fill, etc.) to all block types.\n * @default {}\n * @example blockAttributes: false\n * @example blockAttributes: { types: ['heading', 'paragraph'] }\n */\n blockAttributes?: Partial<BlockAttributesOptions> | false;\n\n /**\n * Add slide button extension\n * @default {}\n * @example addSlideButton: false\n * @example addSlideButton: { content: '➕', buttonStyle: { width: '64px' } }\n */\n addSlideButton?: Partial<AddSlideButtonOptions> | false;\n\n /**\n * Blockquote extension\n * @default {}\n * @example blockquote: false\n * @example blockquote: { HTMLAttributes: { class: 'my-blockquote' } }\n */\n blockquote?: Partial<BlockquoteOptions> | false;\n\n /**\n * Bold extension\n * @default {}\n * @example bold: false\n * @example bold: { HTMLAttributes: { class: 'font-bold' } }\n */\n bold?: Partial<BoldOptions> | false;\n\n /**\n * Bubble menu extension\n * @default {}\n * @example bubbleMenu: false\n */\n bubbleMenu?: Partial<BubbleMenuOptions> | false;\n\n /**\n * Bullet list extension\n * @default {}\n * @example bulletList: false\n * @example bulletList: { HTMLAttributes: { class: 'list-disc' } }\n */\n bulletList?: Partial<BulletListOptions> | false;\n\n /**\n * Inline code extension\n * @default {}\n * @example code: false\n */\n code?: Partial<CodeOptions> | false;\n\n /**\n * Code block extension\n * @default {}\n * @example codeBlock: false\n * @example codeBlock: { defaultLanguage: 'javascript' }\n */\n codeBlock?: Partial<CodeBlockOptions> | false;\n\n /**\n * Text color extension\n * @default {}\n * @example color: false\n * @example color: { types: ['textStyle'] }\n */\n color?: Partial<ColorOptions> | false;\n\n /**\n * Background color extension\n * @default {}\n * @example backgroundColor: false\n */\n backgroundColor?: Partial<BackgroundColorOptions> | false;\n\n /**\n * Details/Summary (collapsible) extension\n * @default {}\n * @example details: false\n */\n details?: false;\n\n /**\n * Document extension (root node)\n * @default {}\n * @example document: false\n */\n document?: false;\n\n /**\n * Drop cursor extension\n * @default {}\n * @example dropcursor: false\n * @example dropcursor: { color: '#3b82f6', width: 2 }\n */\n dropcursor?: Partial<DropcursorOptions> | false;\n\n /**\n * File handler extension (drag & drop, paste)\n * @default {}\n * @example fileHandler: false\n */\n fileHandler?: Partial<FileHandlerOptions> | false;\n\n /**\n * Floating menu extension\n * @default {}\n * @example floatingMenu: false\n */\n floatingMenu?: Partial<FloatingMenuOptions> | false;\n\n /**\n * Font family extension\n * @default {}\n * @example fontFamily: false\n * @example fontFamily: { types: ['textStyle'] }\n */\n fontFamily?: Partial<FontFamilyOptions> | false;\n\n /**\n * Font size extension\n * @default {}\n * @example fontSize: false\n */\n fontSize?: Partial<FontSizeOptions> | false;\n\n /**\n * Line height extension\n * @default {}\n * @example lineHeight: false\n */\n lineHeight?: Partial<LineHeightOptions> | false;\n\n /**\n * Gap cursor extension\n * @default {}\n * @example gapcursor: false\n */\n gapcursor?: false;\n\n /**\n * Hard break extension\n * @default {}\n * @example hardBreak: false\n */\n hardBreak?: Partial<HardBreakOptions> | false;\n\n /**\n * Heading extension\n * @default {}\n * @example heading: false\n * @example heading: { levels: [1, 2, 3] }\n */\n heading?: Partial<HeadingOptions> | false;\n\n /**\n * Text highlight extension\n * @default {}\n * @example highlight: false\n * @example highlight: { multicolor: true }\n */\n highlight?: Partial<HighlightOptions> | false;\n\n /**\n * Horizontal rule extension\n * @default {}\n * @example horizontalRule: false\n */\n horizontalRule?: Partial<HorizontalRuleOptions> | false;\n\n /**\n * Image extension\n * @default {}\n * @example image: false\n * @example image: { inline: true, allowBase64: true }\n */\n image?: Partial<ImageOptions> | false;\n\n /**\n * Italic extension\n * @default {}\n * @example italic: false\n */\n italic?: Partial<ItalicOptions> | false;\n\n /**\n * Link extension\n * @default {}\n * @example link: false\n * @example link: { openOnClick: false, linkOnPaste: true }\n */\n link?: Partial<LinkOptions> | false;\n\n /**\n * List item extension\n * @default {}\n * @example listItem: false\n */\n listItem?: Partial<ListItemOptions> | false;\n\n /**\n * List keymap extension\n * @default {}\n * @example listKeymap: false\n */\n listKeymap?: Partial<ListKeymapOptions> | false;\n\n /**\n * Mathematics extension (LaTeX/KaTeX)\n * @default {}\n * @example mathematics: false\n */\n mathematics?: Partial<MathematicsOptions> | false;\n\n /**\n * Image block extension\n * @default {}\n * @example imageBlock: false\n */\n imageBlock?: Partial<ImageBlockOptions> | false;\n\n /**\n * Markdown extension (parse/serialize markdown)\n * @default {}\n * @example markdown: false\n */\n markdown?: Partial<MarkdownExtensionOptions> | false;\n\n /**\n * Node range extension\n * @default {}\n * @example nodeRange: false\n */\n nodeRange?: Partial<NodeRangeOptions> | false;\n\n /**\n * Ordered list extension\n * @default {}\n * @example orderedList: false\n */\n orderedList?: Partial<OrderedListOptions> | false;\n\n /**\n * Paragraph extension\n * @default {}\n * @example paragraph: false\n */\n paragraph?: Partial<ParagraphOptions> | false;\n\n /**\n * Placeholder extension\n * @default {}\n * @example placeholder: false\n * @example placeholder: { placeholder: 'Start typing...' }\n */\n placeholder?: Partial<PlaceholderOptions> | false;\n\n /**\n * Slide extension\n * @default {}\n * @example slide: false\n * @example slide: { renderMode: 'fixed' }\n */\n slide?: Partial<SlideOptions> | false;\n\n /**\n * Select-within-slide keyboard shortcut override\n * @default {}\n * @example selectWithinSlide: false\n */\n selectWithinSlide?: false;\n\n /**\n * ColumnGroup extension - groups columns horizontally side-by-side\n * @default {}\n * @example columnGroup: false\n * @example columnGroup: { enableLayoutCSS: false }\n */\n columnGroup?: Partial<ColumnGroupOptions> | false;\n\n /**\n * Strike-through extension\n * @default {}\n * @example strike: false\n */\n strike?: Partial<StrikeOptions> | false;\n\n /**\n * Subscript extension\n * @default {}\n * @example subscript: false\n */\n subscript?: Partial<SubscriptExtensionOptions> | false;\n\n /**\n * Superscript extension\n * @default {}\n * @example superscript: false\n */\n superscript?: Partial<SuperscriptExtensionOptions> | false;\n\n /**\n * Table extension\n * @default {}\n * @example table: false\n * @example table: { resizable: true, cellMinWidth: 50 }\n */\n table?: Partial<TableOptions> | false;\n\n /**\n * Table of contents extension\n * @default {}\n * @example tableOfContents: false\n */\n tableOfContents?: Partial<TableOfContentsOptions> | false;\n\n /**\n * Text extension (base text node)\n * @default {}\n * @example text: false\n */\n text?: false;\n\n /**\n * Text align extension\n * @default {}\n * @example textAlign: false\n * @example textAlign: { types: ['heading', 'paragraph'], alignments: ['left', 'center', 'right'] }\n */\n textAlign?: Partial<TextAlignOptions> | false;\n\n /**\n * Text style extension\n * @default {}\n * @example textStyle: false\n */\n textStyle?: Partial<TextStyleOptions> | false;\n\n /**\n * Typography extension (smart quotes, dashes, etc.)\n * @default {}\n * @example typography: false\n */\n typography?: Partial<TypographyOptions> | false;\n\n /**\n * Underline extension\n * @default {}\n * @example underline: false\n */\n underline?: Partial<UnderlineOptions> | false;\n\n /**\n * Undo/Redo extension\n * @default {}\n * @example undoRedo: false\n */\n undoRedo?: Partial<UndoRedoOptions> | false;\n\n /**\n * Unique ID extension\n * @default {}\n * @example uniqueId: false\n */\n uniqueId?: Partial<UniqueIDOptions> | false;\n\n /**\n * Trailing node extension\n * @default {}\n * @example trailingNode: false\n */\n trailingNode?: Partial<TrailingNodeOptions> | false;\n\n /**\n * YouTube extension\n * @default {}\n * @example youtube: false\n * @example youtube: { width: 640, height: 480 }\n */\n youtube?: Partial<YoutubeOptions> | false;\n}\n\n/**\n * ExtensionKit - A comprehensive bundle of all available extensions\n *\n * This extension allows you to easily configure which extensions to include\n * in your editor and customize their options.\n *\n * @example\n * ```typescript\n * const editor = useSlideEditor({\n * extensions: [\n * ExtensionKit.configure({\n * document: false,\n * heading: { levels: [1, 2, 3] },\n * link: { openOnClick: false },\n * codeBlock: false,\n * })\n * ]\n * })\n * ```\n */\nexport const ExtensionKit = Extension.create<ExtensionKitOptions>({\n name: \"extensionKit\",\n\n addExtensions() {\n const extensions = [];\n\n // Core extensions\n if (this.options.document !== false) {\n const docType = this.options.topLevelDoc ?? \"slide\";\n if (docType === \"asset\") {\n extensions.push(AssetDocument);\n } else {\n extensions.push(Document.configure({}));\n }\n }\n\n // Block attributes extension - provides common attributes to all block types\n // Must be registered early so attributes are available to other extensions\n if (this.options.blockAttributes !== false) {\n extensions.push(\n BlockAttributes.configure(this.options.blockAttributes || {})\n );\n }\n\n if (this.options.text !== false) {\n extensions.push(Text.configure(this.options.text || {}));\n }\n\n if (this.options.paragraph !== false) {\n extensions.push(Paragraph.configure(this.options.paragraph || {}));\n }\n\n // Text formatting extensions\n if (this.options.bold !== false) {\n extensions.push(Bold.configure(this.options.bold || {}));\n }\n\n if (this.options.italic !== false) {\n extensions.push(Italic.configure(this.options.italic || {}));\n }\n\n if (this.options.underline !== false) {\n extensions.push(Underline.configure(this.options.underline || {}));\n }\n\n if (this.options.strike !== false) {\n extensions.push(Strike.configure(this.options.strike || {}));\n }\n\n if (this.options.code !== false) {\n extensions.push(Code.configure(this.options.code || {}));\n }\n\n if (this.options.subscript !== false) {\n extensions.push(Subscript.configure(this.options.subscript || {}));\n }\n\n if (this.options.superscript !== false) {\n extensions.push(Superscript.configure(this.options.superscript || {}));\n }\n\n // Text style extensions\n if (this.options.textStyle !== false) {\n extensions.push(TextStyle.configure(this.options.textStyle || {}));\n }\n\n if (this.options.backgroundColor !== false) {\n extensions.push(\n BackgroundColor.configure(this.options.backgroundColor || {})\n );\n }\n\n if (this.options.color !== false) {\n extensions.push(Color.configure(this.options.color || {}));\n }\n\n if (this.options.fontFamily !== false) {\n extensions.push(FontFamily.configure(this.options.fontFamily || {}));\n }\n\n if (this.options.fontSize !== false) {\n extensions.push(FontSize.configure(this.options.fontSize || {}));\n }\n\n if (this.options.lineHeight !== false) {\n extensions.push(LineHeight.configure(this.options.lineHeight || {}));\n }\n\n if (this.options.highlight !== false) {\n extensions.push(Highlight.configure(this.options.highlight || {}));\n }\n\n if (this.options.textAlign !== false) {\n extensions.push(TextAlign.configure(this.options.textAlign || {}));\n }\n\n // Block extensions\n if (this.options.heading !== false) {\n extensions.push(Heading.configure(this.options.heading || {}));\n }\n\n if (this.options.blockquote !== false) {\n extensions.push(Blockquote.configure(this.options.blockquote || {}));\n }\n\n if (this.options.codeBlock !== false) {\n extensions.push(CodeBlock.configure(this.options.codeBlock || {}));\n }\n\n if (this.options.horizontalRule !== false) {\n extensions.push(\n HorizontalRule.configure(this.options.horizontalRule || {})\n );\n }\n\n // List extensions\n if (this.options.bulletList !== false) {\n extensions.push(BulletList.configure(this.options.bulletList || {}));\n }\n\n if (this.options.orderedList !== false) {\n extensions.push(OrderedList.configure(this.options.orderedList || {}));\n }\n\n if (this.options.listItem !== false) {\n extensions.push(ListItem.configure(this.options.listItem || {}));\n }\n\n if (this.options.listKeymap !== false) {\n extensions.push(ListKeymap.configure(this.options.listKeymap || {}));\n }\n\n // Media extensions\n if (this.options.image !== false) {\n extensions.push(Image.configure(this.options.image || {}));\n }\n\n if (this.options.youtube !== false) {\n extensions.push(Youtube.configure(this.options.youtube || {}));\n }\n\n // Interactive extensions\n if (this.options.link !== false) {\n extensions.push(Link.configure(this.options.link || {}));\n }\n\n if (this.options.details !== false) {\n extensions.push(Details.configure(this.options.details || {}));\n extensions.push(DetailsContent.configure({}));\n extensions.push(DetailsSummary.configure({}));\n }\n\n // Table extensions\n if (this.options.table !== false) {\n extensions.push(Table.configure(this.options.table || {}));\n extensions.push(TableRow.configure({}));\n extensions.push(TableHeader.configure({}));\n extensions.push(TableCell.configure({}));\n }\n\n if (this.options.tableOfContents !== false) {\n extensions.push(\n TableOfContents.configure(this.options.tableOfContents || {})\n );\n }\n\n // Special content extensions\n if (this.options.mathematics !== false) {\n extensions.push(Mathematics.configure(this.options.mathematics || {}));\n }\n\n if (this.options.markdown !== false) {\n extensions.push(Markdown.configure(this.options.markdown || {}));\n }\n\n if (this.options.imageBlock !== false) {\n extensions.push(ImageBlock.configure(this.options.imageBlock || {}));\n } \n\n // Editor behavior extensions\n if (this.options.hardBreak !== false) {\n extensions.push(HardBreak.configure(this.options.hardBreak || {}));\n }\n\n if (this.options.dropcursor !== false) {\n extensions.push(Dropcursor.configure(this.options.dropcursor || {}));\n }\n\n if (this.options.gapcursor !== false) {\n extensions.push(Gapcursor.configure(this.options.gapcursor || {}));\n }\n\n if (this.options.undoRedo !== false) {\n extensions.push(UndoRedo.configure(this.options.undoRedo || {}));\n }\n\n if (this.options.trailingNode !== false) {\n extensions.push(TrailingNode.configure(this.options.trailingNode || {}));\n }\n\n // UI extensions\n if (this.options.placeholder !== false) {\n extensions.push(Placeholder.configure(this.options.placeholder || {}));\n }\n\n if (this.options.bubbleMenu !== false) {\n extensions.push(BubbleMenu.configure(this.options.bubbleMenu || {}));\n }\n\n if (this.options.floatingMenu !== false) {\n extensions.push(FloatingMenu.configure(this.options.floatingMenu || {}));\n }\n\n // Utility extensions\n if (this.options.fileHandler !== false) {\n extensions.push(FileHandler.configure(this.options.fileHandler || {}));\n }\n\n if (this.options.nodeRange !== false) {\n extensions.push(NodeRange.configure(this.options.nodeRange || {}));\n }\n\n if (this.options.typography !== false) {\n extensions.push(Typography.configure(this.options.typography || {}));\n }\n\n if (this.options.uniqueId !== false) {\n extensions.push(UniqueID.configure(this.options.uniqueId || {}));\n }\n\n // Slide-specific extensions\n if (this.options.slide !== false) {\n extensions.push(Slide.configure(this.options.slide || {}));\n }\n\n if (this.options.selectWithinSlide !== false) {\n extensions.push(SelectWithinSlide);\n }\n\n // Column extension - for full-width blocks\n extensions.push(Column.configure({}));\n\n // ColumnGroup extension - groups columns horizontally side-by-side\n if (this.options.columnGroup !== false) {\n extensions.push(ColumnGroup.configure(this.options.columnGroup || {}));\n }\n\n if (this.options.addSlideButton !== false) {\n extensions.push(\n AddSlideButton.configure(this.options.addSlideButton || {})\n );\n }\n\n return extensions;\n },\n});\n","import { ExtensionKit } from \"./extension-kit.js\";\n\nexport { ExtensionKit } from \"./extension-kit.js\";\nexport type { ExtensionKitOptions } from \"./extension-kit.js\";\nexport default ExtensionKit;\n"],"mappings":";AAAA,SAAS,iBAAiB;AAI1B,SAAS,uBAAuB;AAEhC,SAAS,kBAAkB;AAE3B,SAAS,YAAY;AAErB,SAAS,YAAY;AAErB,SAAS,iBAAiB;AAE1B,SAAS,aAAa;AACtB,SAAS,gBAAgB;AACzB,OAAO,mBAAmB;AAC1B,SAAS,eAAe;AACxB,SAAS,sBAAsB;AAC/B,SAAS,sBAAsB;AAE/B,SAAS,mBAAmB;AAE5B,SAAS,kBAAkB;AAM3B,SAAS,iBAAiB,UAAU,kBAAkB;AAEtD,SAAS,iBAAiB;AAE1B,SAAS,eAAe;AAExB,SAAS,iBAAiB;AAE1B,SAAS,sBAAsB;AAE/B,SAAS,aAAa;AAEtB,SAAS,cAAc;AAEvB,SAAS,YAAY;AAQrB,SAAS,kBAAkB;AAC3B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,mBAAmB;AAE5B,SAAS,gBAAgB;AAEzB,SAAS,iBAAiB;AAE1B,SAAS,iBAAiB;AAE1B,SAAS,mBAAmB;AAE5B,SAAS,cAAc;AAEvB,SAAS,iBAAiB;AAE1B,SAAS,mBAAmB;AAE5B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,uBAAuB;AAChC,SAAS,YAAY;AAErB,SAAS,iBAAiB;AAE1B,SAAS,iBAAiB;AAE1B,SAAS,kBAAkB;AAE3B,SAAS,iBAAiB;AAC1B,SAAS,gBAAgB;AAGzB,SAAS,eAAe;AACxB,SAAS,aAAa;AAEtB,SAAS,cAAc;AAEvB,SAAS,mBAAmB;AAC5B,SAAS,yBAAyB;AAElC,SAAS,sBAAsB;AAE/B,SAAS,kBAAkB;AAE3B,SAAS,oBAAoB;AAM7B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAwaA,IAAM,eAAe,UAAU,OAA4B;AAAA,EAChE,MAAM;AAAA,EAEN,gBAAgB;AAjiBlB;AAkiBI,UAAM,aAAa,CAAC;AAGpB,QAAI,KAAK,QAAQ,aAAa,OAAO;AACnC,YAAM,WAAU,UAAK,QAAQ,gBAAb,YAA4B;AAC5C,UAAI,YAAY,SAAS;AACvB,mBAAW,KAAK,aAAa;AAAA,MAC/B,OAAO;AACL,mBAAW,KAAK,SAAS,UAAU,CAAC,CAAC,CAAC;AAAA,MACxC;AAAA,IACF;AAIA,QAAI,KAAK,QAAQ,oBAAoB,OAAO;AAC1C,iBAAW;AAAA,QACT,gBAAgB,UAAU,KAAK,QAAQ,mBAAmB,CAAC,CAAC;AAAA,MAC9D;AAAA,IACF;AAEA,QAAI,KAAK,QAAQ,SAAS,OAAO;AAC/B,iBAAW,KAAK,KAAK,UAAU,KAAK,QAAQ,QAAQ,CAAC,CAAC,CAAC;AAAA,IACzD;AAEA,QAAI,KAAK,QAAQ,cAAc,OAAO;AACpC,iBAAW,KAAK,UAAU,UAAU,KAAK,QAAQ,aAAa,CAAC,CAAC,CAAC;AAAA,IACnE;AAGA,QAAI,KAAK,QAAQ,SAAS,OAAO;AAC/B,iBAAW,KAAK,KAAK,UAAU,KAAK,QAAQ,QAAQ,CAAC,CAAC,CAAC;AAAA,IACzD;AAEA,QAAI,KAAK,QAAQ,WAAW,OAAO;AACjC,iBAAW,KAAK,OAAO,UAAU,KAAK,QAAQ,UAAU,CAAC,CAAC,CAAC;AAAA,IAC7D;AAEA,QAAI,KAAK,QAAQ,cAAc,OAAO;AACpC,iBAAW,KAAK,UAAU,UAAU,KAAK,QAAQ,aAAa,CAAC,CAAC,CAAC;AAAA,IACnE;AAEA,QAAI,KAAK,QAAQ,WAAW,OAAO;AACjC,iBAAW,KAAK,OAAO,UAAU,KAAK,QAAQ,UAAU,CAAC,CAAC,CAAC;AAAA,IAC7D;AAEA,QAAI,KAAK,QAAQ,SAAS,OAAO;AAC/B,iBAAW,KAAK,KAAK,UAAU,KAAK,QAAQ,QAAQ,CAAC,CAAC,CAAC;AAAA,IACzD;AAEA,QAAI,KAAK,QAAQ,cAAc,OAAO;AACpC,iBAAW,KAAK,UAAU,UAAU,KAAK,QAAQ,aAAa,CAAC,CAAC,CAAC;AAAA,IACnE;AAEA,QAAI,KAAK,QAAQ,gBAAgB,OAAO;AACtC,iBAAW,KAAK,YAAY,UAAU,KAAK,QAAQ,eAAe,CAAC,CAAC,CAAC;AAAA,IACvE;AAGA,QAAI,KAAK,QAAQ,cAAc,OAAO;AACpC,iBAAW,KAAK,UAAU,UAAU,KAAK,QAAQ,aAAa,CAAC,CAAC,CAAC;AAAA,IACnE;AAEA,QAAI,KAAK,QAAQ,oBAAoB,OAAO;AAC1C,iBAAW;AAAA,QACT,gBAAgB,UAAU,KAAK,QAAQ,mBAAmB,CAAC,CAAC;AAAA,MAC9D;AAAA,IACF;AAEA,QAAI,KAAK,QAAQ,UAAU,OAAO;AAChC,iBAAW,KAAK,MAAM,UAAU,KAAK,QAAQ,SAAS,CAAC,CAAC,CAAC;AAAA,IAC3D;AAEA,QAAI,KAAK,QAAQ,eAAe,OAAO;AACrC,iBAAW,KAAK,WAAW,UAAU,KAAK,QAAQ,cAAc,CAAC,CAAC,CAAC;AAAA,IACrE;AAEA,QAAI,KAAK,QAAQ,aAAa,OAAO;AACnC,iBAAW,KAAK,SAAS,UAAU,KAAK,QAAQ,YAAY,CAAC,CAAC,CAAC;AAAA,IACjE;AAEA,QAAI,KAAK,QAAQ,eAAe,OAAO;AACrC,iBAAW,KAAK,WAAW,UAAU,KAAK,QAAQ,cAAc,CAAC,CAAC,CAAC;AAAA,IACrE;AAEA,QAAI,KAAK,QAAQ,cAAc,OAAO;AACpC,iBAAW,KAAK,UAAU,UAAU,KAAK,QAAQ,aAAa,CAAC,CAAC,CAAC;AAAA,IACnE;AAEA,QAAI,KAAK,QAAQ,cAAc,OAAO;AACpC,iBAAW,KAAK,UAAU,UAAU,KAAK,QAAQ,aAAa,CAAC,CAAC,CAAC;AAAA,IACnE;AAGA,QAAI,KAAK,QAAQ,YAAY,OAAO;AAClC,iBAAW,KAAK,QAAQ,UAAU,KAAK,QAAQ,WAAW,CAAC,CAAC,CAAC;AAAA,IAC/D;AAEA,QAAI,KAAK,QAAQ,eAAe,OAAO;AACrC,iBAAW,KAAK,WAAW,UAAU,KAAK,QAAQ,cAAc,CAAC,CAAC,CAAC;AAAA,IACrE;AAEA,QAAI,KAAK,QAAQ,cAAc,OAAO;AACpC,iBAAW,KAAK,UAAU,UAAU,KAAK,QAAQ,aAAa,CAAC,CAAC,CAAC;AAAA,IACnE;AAEA,QAAI,KAAK,QAAQ,mBAAmB,OAAO;AACzC,iBAAW;AAAA,QACT,eAAe,UAAU,KAAK,QAAQ,kBAAkB,CAAC,CAAC;AAAA,MAC5D;AAAA,IACF;AAGA,QAAI,KAAK,QAAQ,eAAe,OAAO;AACrC,iBAAW,KAAK,WAAW,UAAU,KAAK,QAAQ,cAAc,CAAC,CAAC,CAAC;AAAA,IACrE;AAEA,QAAI,KAAK,QAAQ,gBAAgB,OAAO;AACtC,iBAAW,KAAK,YAAY,UAAU,KAAK,QAAQ,eAAe,CAAC,CAAC,CAAC;AAAA,IACvE;AAEA,QAAI,KAAK,QAAQ,aAAa,OAAO;AACnC,iBAAW,KAAK,SAAS,UAAU,KAAK,QAAQ,YAAY,CAAC,CAAC,CAAC;AAAA,IACjE;AAEA,QAAI,KAAK,QAAQ,eAAe,OAAO;AACrC,iBAAW,KAAK,WAAW,UAAU,KAAK,QAAQ,cAAc,CAAC,CAAC,CAAC;AAAA,IACrE;AAGA,QAAI,KAAK,QAAQ,UAAU,OAAO;AAChC,iBAAW,KAAK,MAAM,UAAU,KAAK,QAAQ,SAAS,CAAC,CAAC,CAAC;AAAA,IAC3D;AAEA,QAAI,KAAK,QAAQ,YAAY,OAAO;AAClC,iBAAW,KAAK,QAAQ,UAAU,KAAK,QAAQ,WAAW,CAAC,CAAC,CAAC;AAAA,IAC/D;AAGA,QAAI,KAAK,QAAQ,SAAS,OAAO;AAC/B,iBAAW,KAAK,KAAK,UAAU,KAAK,QAAQ,QAAQ,CAAC,CAAC,CAAC;AAAA,IACzD;AAEA,QAAI,KAAK,QAAQ,YAAY,OAAO;AAClC,iBAAW,KAAK,QAAQ,UAAU,KAAK,QAAQ,WAAW,CAAC,CAAC,CAAC;AAC7D,iBAAW,KAAK,eAAe,UAAU,CAAC,CAAC,CAAC;AAC5C,iBAAW,KAAK,eAAe,UAAU,CAAC,CAAC,CAAC;AAAA,IAC9C;AAGA,QAAI,KAAK,QAAQ,UAAU,OAAO;AAChC,iBAAW,KAAK,MAAM,UAAU,KAAK,QAAQ,SAAS,CAAC,CAAC,CAAC;AACzD,iBAAW,KAAK,SAAS,UAAU,CAAC,CAAC,CAAC;AACtC,iBAAW,KAAK,YAAY,UAAU,CAAC,CAAC,CAAC;AACzC,iBAAW,KAAK,UAAU,UAAU,CAAC,CAAC,CAAC;AAAA,IACzC;AAEA,QAAI,KAAK,QAAQ,oBAAoB,OAAO;AAC1C,iBAAW;AAAA,QACT,gBAAgB,UAAU,KAAK,QAAQ,mBAAmB,CAAC,CAAC;AAAA,MAC9D;AAAA,IACF;AAGA,QAAI,KAAK,QAAQ,gBAAgB,OAAO;AACtC,iBAAW,KAAK,YAAY,UAAU,KAAK,QAAQ,eAAe,CAAC,CAAC,CAAC;AAAA,IACvE;AAEA,QAAI,KAAK,QAAQ,aAAa,OAAO;AACnC,iBAAW,KAAK,SAAS,UAAU,KAAK,QAAQ,YAAY,CAAC,CAAC,CAAC;AAAA,IACjE;AAEA,QAAI,KAAK,QAAQ,eAAe,OAAO;AACrC,iBAAW,KAAK,WAAW,UAAU,KAAK,QAAQ,cAAc,CAAC,CAAC,CAAC;AAAA,IACrE;AAGA,QAAI,KAAK,QAAQ,cAAc,OAAO;AACpC,iBAAW,KAAK,UAAU,UAAU,KAAK,QAAQ,aAAa,CAAC,CAAC,CAAC;AAAA,IACnE;AAEA,QAAI,KAAK,QAAQ,eAAe,OAAO;AACrC,iBAAW,KAAK,WAAW,UAAU,KAAK,QAAQ,cAAc,CAAC,CAAC,CAAC;AAAA,IACrE;AAEA,QAAI,KAAK,QAAQ,cAAc,OAAO;AACpC,iBAAW,KAAK,UAAU,UAAU,KAAK,QAAQ,aAAa,CAAC,CAAC,CAAC;AAAA,IACnE;AAEA,QAAI,KAAK,QAAQ,aAAa,OAAO;AACnC,iBAAW,KAAK,SAAS,UAAU,KAAK,QAAQ,YAAY,CAAC,CAAC,CAAC;AAAA,IACjE;AAEA,QAAI,KAAK,QAAQ,iBAAiB,OAAO;AACvC,iBAAW,KAAK,aAAa,UAAU,KAAK,QAAQ,gBAAgB,CAAC,CAAC,CAAC;AAAA,IACzE;AAGA,QAAI,KAAK,QAAQ,gBAAgB,OAAO;AACtC,iBAAW,KAAK,YAAY,UAAU,KAAK,QAAQ,eAAe,CAAC,CAAC,CAAC;AAAA,IACvE;AAEA,QAAI,KAAK,QAAQ,eAAe,OAAO;AACrC,iBAAW,KAAK,WAAW,UAAU,KAAK,QAAQ,cAAc,CAAC,CAAC,CAAC;AAAA,IACrE;AAEA,QAAI,KAAK,QAAQ,iBAAiB,OAAO;AACvC,iBAAW,KAAK,aAAa,UAAU,KAAK,QAAQ,gBAAgB,CAAC,CAAC,CAAC;AAAA,IACzE;AAGA,QAAI,KAAK,QAAQ,gBAAgB,OAAO;AACtC,iBAAW,KAAK,YAAY,UAAU,KAAK,QAAQ,eAAe,CAAC,CAAC,CAAC;AAAA,IACvE;AAEA,QAAI,KAAK,QAAQ,cAAc,OAAO;AACpC,iBAAW,KAAK,UAAU,UAAU,KAAK,QAAQ,aAAa,CAAC,CAAC,CAAC;AAAA,IACnE;AAEA,QAAI,KAAK,QAAQ,eAAe,OAAO;AACrC,iBAAW,KAAK,WAAW,UAAU,KAAK,QAAQ,cAAc,CAAC,CAAC,CAAC;AAAA,IACrE;AAEA,QAAI,KAAK,QAAQ,aAAa,OAAO;AACnC,iBAAW,KAAK,SAAS,UAAU,KAAK,QAAQ,YAAY,CAAC,CAAC,CAAC;AAAA,IACjE;AAGA,QAAI,KAAK,QAAQ,UAAU,OAAO;AAChC,iBAAW,KAAK,MAAM,UAAU,KAAK,QAAQ,SAAS,CAAC,CAAC,CAAC;AAAA,IAC3D;AAEA,QAAI,KAAK,QAAQ,sBAAsB,OAAO;AAC5C,iBAAW,KAAK,iBAAiB;AAAA,IACnC;AAGA,eAAW,KAAK,OAAO,UAAU,CAAC,CAAC,CAAC;AAGpC,QAAI,KAAK,QAAQ,gBAAgB,OAAO;AACtC,iBAAW,KAAK,YAAY,UAAU,KAAK,QAAQ,eAAe,CAAC,CAAC,CAAC;AAAA,IACvE;AAEA,QAAI,KAAK,QAAQ,mBAAmB,OAAO;AACzC,iBAAW;AAAA,QACT,eAAe,UAAU,KAAK,QAAQ,kBAAkB,CAAC,CAAC;AAAA,MAC5D;AAAA,IACF;AAEA,WAAO;AAAA,EACT;AACF,CAAC;;;ACzxBD,IAAO,gBAAQ;","names":[]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@blockslides/extension-kit",
3
3
  "description": "Complete extension kit for blockslides - includes all available extensions with configurable options",
4
- "version": "0.5.2",
4
+ "version": "0.6.1",
5
5
  "homepage": "https://github.com/keivanmojmali/blockslides",
6
6
  "keywords": [
7
7
  "blockslides",
@@ -30,52 +30,53 @@
30
30
  "dist/**"
31
31
  ],
32
32
  "dependencies": {
33
- "@blockslides/core": "0.2.0",
34
- "@blockslides/extension-asset-document": "0.1.0",
35
- "@blockslides/extension-add-slide-button": "0.2.1",
36
- "@blockslides/extension-blockquote": "0.1.0",
37
- "@blockslides/extension-bold": "0.1.0",
38
- "@blockslides/extension-bubble-menu": "0.1.0",
39
- "@blockslides/extension-color": "0.1.0",
40
- "@blockslides/extension-code-block": "0.1.0",
41
- "@blockslides/extension-column": "0.1.4",
42
- "@blockslides/extension-document": "0.1.0",
43
- "@blockslides/extension-details": "0.1.0",
44
- "@blockslides/extension-file-handler": "0.1.0",
45
- "@blockslides/extension-floating-menu": "0.1.0",
46
- "@blockslides/extension-font-family": "0.1.0",
47
- "@blockslides/extension-hard-break": "0.1.0",
48
- "@blockslides/extension-code": "0.1.0",
49
- "@blockslides/extension-highlight": "0.1.0",
50
- "@blockslides/extension-horizontal-rule": "0.1.0",
51
- "@blockslides/extension-heading": "0.1.0",
52
- "@blockslides/extension-image": "0.1.0",
53
- "@blockslides/extension-image-block": "0.1.0",
54
- "@blockslides/extension-italic": "0.1.0",
55
- "@blockslides/extension-link": "0.1.0",
56
- "@blockslides/extension-list": "0.1.0",
57
- "@blockslides/extension-mathematics": "0.1.0",
58
- "@blockslides/extension-node-range": "0.1.0",
59
- "@blockslides/extension-paragraph": "0.1.0",
60
- "@blockslides/extension-placeholder": "0.1.0",
61
- "@blockslides/extension-row": "0.1.1",
62
- "@blockslides/extension-select-within-slide": "0.1.0",
63
- "@blockslides/extension-slide": "0.3.2",
64
- "@blockslides/extension-strike": "0.1.0",
65
- "@blockslides/extension-subscript": "0.1.0",
66
- "@blockslides/extension-superscript": "0.1.0",
67
- "@blockslides/extension-table": "0.1.0",
68
- "@blockslides/extension-table-of-contents": "0.1.0",
69
- "@blockslides/extension-text": "0.1.0",
70
- "@blockslides/extension-text-align": "0.1.0",
71
- "@blockslides/extension-underline": "0.1.0",
72
- "@blockslides/extension-text-style": "0.1.0",
73
- "@blockslides/extension-typography": "0.1.0",
74
- "@blockslides/extension-unique-id": "0.1.0",
75
- "@blockslides/extension-code-block-lowlight": "0.1.0",
76
- "@blockslides/extensions": "0.1.0",
77
- "@blockslides/markdown": "0.1.0",
78
- "@blockslides/extension-youtube": "0.1.0"
33
+ "@blockslides/extension-block-attributes": "0.2.1",
34
+ "@blockslides/core": "0.3.1",
35
+ "@blockslides/extension-asset-document": "0.1.1",
36
+ "@blockslides/extension-add-slide-button": "0.2.2",
37
+ "@blockslides/extension-bubble-menu": "0.1.1",
38
+ "@blockslides/extension-blockquote": "0.1.1",
39
+ "@blockslides/extension-bold": "0.1.1",
40
+ "@blockslides/extension-code": "0.1.1",
41
+ "@blockslides/extension-code-block": "0.1.1",
42
+ "@blockslides/extension-code-block-lowlight": "0.1.1",
43
+ "@blockslides/extension-color": "0.1.1",
44
+ "@blockslides/extension-column": "0.2.1",
45
+ "@blockslides/extension-details": "0.1.1",
46
+ "@blockslides/extension-document": "0.1.1",
47
+ "@blockslides/extension-font-family": "0.1.1",
48
+ "@blockslides/extension-heading": "0.1.1",
49
+ "@blockslides/extension-file-handler": "0.1.1",
50
+ "@blockslides/extension-floating-menu": "0.1.1",
51
+ "@blockslides/extension-column-group": "0.2.1",
52
+ "@blockslides/extension-highlight": "0.1.1",
53
+ "@blockslides/extension-horizontal-rule": "0.1.1",
54
+ "@blockslides/extension-image": "0.1.1",
55
+ "@blockslides/extension-image-block": "0.2.1",
56
+ "@blockslides/extension-hard-break": "0.1.1",
57
+ "@blockslides/extension-italic": "0.1.1",
58
+ "@blockslides/extension-link": "0.1.1",
59
+ "@blockslides/extension-mathematics": "0.1.1",
60
+ "@blockslides/extension-node-range": "0.1.1",
61
+ "@blockslides/extension-list": "0.1.1",
62
+ "@blockslides/extension-paragraph": "0.1.1",
63
+ "@blockslides/extension-select-within-slide": "0.1.1",
64
+ "@blockslides/extension-placeholder": "0.1.1",
65
+ "@blockslides/extension-slide": "0.4.1",
66
+ "@blockslides/extension-strike": "0.1.1",
67
+ "@blockslides/extension-subscript": "0.1.1",
68
+ "@blockslides/extension-superscript": "0.1.1",
69
+ "@blockslides/extension-table-of-contents": "0.1.1",
70
+ "@blockslides/extension-text-align": "0.1.1",
71
+ "@blockslides/extension-text": "0.1.1",
72
+ "@blockslides/extension-text-style": "0.1.1",
73
+ "@blockslides/extension-underline": "0.1.1",
74
+ "@blockslides/extension-typography": "0.1.1",
75
+ "@blockslides/extension-table": "0.1.1",
76
+ "@blockslides/extension-unique-id": "0.1.1",
77
+ "@blockslides/extension-youtube": "0.1.1",
78
+ "@blockslides/extensions": "0.1.1",
79
+ "@blockslides/markdown": "0.1.1"
79
80
  },
80
81
  "repository": {
81
82
  "type": "git",