{"version":3,"sources":["../src/lib/BaseBasicMarksPlugin.ts","../src/lib/BaseBoldPlugin.ts","../src/lib/BaseCodePlugin.ts","../src/lib/BaseItalicPlugin.ts","../src/lib/BaseStrikethroughPlugin.ts","../src/lib/BaseSubscriptPlugin.ts","../src/lib/BaseSuperscriptPlugin.ts","../src/lib/BaseUnderlinePlugin.ts","../src/lib/BaseHighlightPlugin.ts","../src/lib/BaseKbdPlugin.ts"],"sourcesContent":["import { createSlatePlugin } from '@udecode/plate';\n\nimport { BaseBoldPlugin } from './BaseBoldPlugin';\nimport { BaseCodePlugin } from './BaseCodePlugin';\nimport { BaseItalicPlugin } from './BaseItalicPlugin';\nimport { BaseStrikethroughPlugin } from './BaseStrikethroughPlugin';\nimport { BaseSubscriptPlugin } from './BaseSubscriptPlugin';\nimport { BaseSuperscriptPlugin } from './BaseSuperscriptPlugin';\nimport { BaseUnderlinePlugin } from './BaseUnderlinePlugin';\n\nexport const BaseBasicMarksPlugin = createSlatePlugin({\n  plugins: [\n    BaseBoldPlugin,\n    BaseCodePlugin,\n    BaseItalicPlugin,\n    BaseStrikethroughPlugin,\n    BaseSubscriptPlugin,\n    BaseSuperscriptPlugin,\n    BaseUnderlinePlugin,\n  ],\n});\n","import { createSlatePlugin, KEYS, someHtmlElement } from '@udecode/plate';\n\n/** Enables support for bold formatting */\nexport const BaseBoldPlugin = createSlatePlugin({\n  key: KEYS.bold,\n  node: { isLeaf: true },\n  parsers: {\n    html: {\n      deserializer: {\n        rules: [\n          { validNodeName: ['STRONG', 'B'] },\n          {\n            validStyle: {\n              fontWeight: ['600', '700', 'bold'],\n            },\n          },\n        ],\n        query: ({ element }) =>\n          !someHtmlElement(\n            element,\n            (node) => node.style.fontWeight === 'normal'\n          ),\n      },\n    },\n  },\n  render: { as: 'strong' },\n}).extendTransforms(({ editor, type }) => ({\n  toggle: () => {\n    editor.tf.toggleMark(type);\n  },\n}));\n","import { createSlatePlugin, findHtmlParentElement, KEYS } from '@udecode/plate';\n\n/** Enables support for code formatting */\nexport const BaseCodePlugin = createSlatePlugin({\n  key: KEYS.code,\n  node: { isLeaf: true },\n  parsers: {\n    html: {\n      deserializer: {\n        rules: [\n          { validNodeName: ['CODE'] },\n          { validStyle: { fontFamily: 'Consolas' } },\n        ],\n        query({ element }) {\n          const blockAbove = findHtmlParentElement(element, 'P');\n\n          if (blockAbove?.style.fontFamily === 'Consolas') return false;\n\n          return !findHtmlParentElement(element, 'PRE');\n        },\n      },\n    },\n  },\n  render: { as: 'code' },\n}).extendTransforms(({ editor, type }) => ({\n  toggle: () => {\n    editor.tf.toggleMark(type);\n  },\n}));\n","import { createSlatePlugin, KEYS, someHtmlElement } from '@udecode/plate';\n\n/** Enables support for italic formatting. */\nexport const BaseItalicPlugin = createSlatePlugin({\n  key: KEYS.italic,\n  node: { isLeaf: true },\n  parsers: {\n    html: {\n      deserializer: {\n        rules: [\n          { validNodeName: ['EM', 'I'] },\n          { validStyle: { fontStyle: 'italic' } },\n        ],\n        query: ({ element }) =>\n          !someHtmlElement(\n            element,\n            (node) => node.style.fontStyle === 'normal'\n          ),\n      },\n    },\n  },\n  render: { as: 'em' },\n}).extendTransforms(({ editor, type }) => ({\n  toggle: () => {\n    editor.tf.toggleMark(type);\n  },\n}));\n","import { createSlatePlugin, KEYS, someHtmlElement } from '@udecode/plate';\n\n/** Enables support for strikethrough formatting. */\nexport const BaseStrikethroughPlugin = createSlatePlugin({\n  key: KEYS.strikethrough,\n  node: { isLeaf: true },\n  parsers: {\n    html: {\n      deserializer: {\n        rules: [\n          { validNodeName: ['S', 'DEL', 'STRIKE'] },\n          { validStyle: { textDecoration: 'line-through' } },\n        ],\n        query: ({ element }) =>\n          !someHtmlElement(\n            element,\n            (node) => node.style.textDecoration === 'none'\n          ),\n      },\n    },\n  },\n  render: { as: 's' },\n}).extendTransforms(({ editor, type }) => ({\n  toggle: () => {\n    editor.tf.toggleMark(type);\n  },\n}));\n","import { createSlatePlugin, KEYS } from '@udecode/plate';\n\n/** Enables support for subscript formatting. */\nexport const BaseSubscriptPlugin = createSlatePlugin({\n  key: KEYS.sub,\n  node: { isLeaf: true },\n  parsers: {\n    html: {\n      deserializer: {\n        rules: [\n          { validNodeName: ['SUB'] },\n          { validStyle: { verticalAlign: 'sub' } },\n        ],\n      },\n    },\n  },\n  render: { as: 'sub' },\n}).extendTransforms(({ editor, type }) => ({\n  toggle: () => {\n    editor.tf.toggleMark(type, {\n      remove: editor.getType(KEYS.sup),\n    });\n  },\n}));\n","import { createSlatePlugin, KEYS } from '@udecode/plate';\n\n/** Enables support for superscript formatting. */\nexport const BaseSuperscriptPlugin = createSlatePlugin({\n  key: KEYS.sup,\n  node: { isLeaf: true },\n  parsers: {\n    html: {\n      deserializer: {\n        rules: [\n          { validNodeName: ['SUP'] },\n          { validStyle: { verticalAlign: 'super' } },\n        ],\n      },\n    },\n  },\n  render: { as: 'sup' },\n}).extendTransforms(({ editor, type }) => ({\n  toggle: () => {\n    editor.tf.toggleMark(type, {\n      remove: editor.getType(KEYS.sub),\n    });\n  },\n}));\n","import { createSlatePlugin, KEYS, someHtmlElement } from '@udecode/plate';\n\n/** Enables support for underline formatting. */\nexport const BaseUnderlinePlugin = createSlatePlugin({\n  key: KEYS.underline,\n  node: { isLeaf: true },\n  parsers: {\n    html: {\n      deserializer: {\n        rules: [\n          { validNodeName: ['U'] },\n          { validStyle: { textDecoration: ['underline'] } },\n        ],\n        query: ({ element }) =>\n          !someHtmlElement(\n            element,\n            (node) => node.style.textDecoration === 'none'\n          ),\n      },\n    },\n  },\n  render: { as: 'u' },\n}).extendTransforms(({ editor, type }) => ({\n  toggle: () => {\n    editor.tf.toggleMark(type);\n  },\n}));\n","import { createSlatePlugin, KEYS } from '@udecode/plate';\n\n/**\n * Enables support for highlights, useful when reviewing content or highlighting\n * it for future reference.\n */\nexport const BaseHighlightPlugin = createSlatePlugin({\n  key: KEYS.highlight,\n  node: { isLeaf: true },\n  parsers: {\n    html: {\n      deserializer: {\n        rules: [\n          {\n            validNodeName: ['MARK'],\n          },\n        ],\n      },\n    },\n  },\n  render: { as: 'mark' },\n}).extendTransforms(({ editor, type }) => ({\n  toggle: () => {\n    editor.tf.toggleMark(type);\n  },\n}));\n","import { createSlatePlugin, KEYS } from '@udecode/plate';\n\n/** Enables support for code formatting */\nexport const BaseKbdPlugin = createSlatePlugin({\n  key: KEYS.kbd,\n  node: { isLeaf: true },\n  parsers: {\n    html: {\n      deserializer: {\n        rules: [{ validNodeName: ['KBD'] }],\n      },\n    },\n  },\n  render: { as: 'kbd' },\n}).extendTransforms(({ editor, type }) => ({\n  toggle: () => {\n    editor.tf.toggleMark(type);\n  },\n}));\n"],"mappings":"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","names":["createSlatePlugin","createSlatePlugin","KEYS","createSlatePlugin","KEYS","someHtmlElement","createSlatePlugin","KEYS","someHtmlElement","createSlatePlugin","KEYS","createSlatePlugin","KEYS","createSlatePlugin","KEYS","someHtmlElement","createSlatePlugin","createSlatePlugin","KEYS","createSlatePlugin","KEYS"]}