diff --git a/packages/core/editor/package.json b/packages/core/editor/package.json index 094dd1807..fd1273194 100644 --- a/packages/core/editor/package.json +++ b/packages/core/editor/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/editor", - "version": "4.8.2", + "version": "4.8.3", "license": "MIT", "private": false, "main": "dist/index.js", diff --git a/packages/core/exports/package.json b/packages/core/exports/package.json index 06a4d35e7..7e8faac41 100644 --- a/packages/core/exports/package.json +++ b/packages/core/exports/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/exports", - "version": "4.8.2", + "version": "4.8.3", "description": "Serialize/deserialize exports in different formats for Yoopta-Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/development/src/pages/dev/index.tsx b/packages/development/src/pages/dev/index.tsx index fb3537bd7..daa2046c2 100644 --- a/packages/development/src/pages/dev/index.tsx +++ b/packages/development/src/pages/dev/index.tsx @@ -1,16 +1,9 @@ -import YooptaEditor, { - Blocks, - createYooptaEditor, - YooEditor, - YooptaBlockData, - YooptaContentValue, -} from '@yoopta/editor'; +import YooptaEditor, { createYooptaEditor, YooEditor, YooptaBlockData, YooptaContentValue } from '@yoopta/editor'; import { useEffect, useMemo, useRef, useState } from 'react'; import { MARKS } from '../../utils/yoopta/marks'; import { YOOPTA_PLUGINS } from '../../utils/yoopta/plugins'; import { TOOLS } from '../../utils/yoopta/tools'; -import { LinkCommands } from '@yoopta/link'; import { FixedToolbar } from '../../components/FixedToolbar/FixedToolbar'; export type YooptaChildrenValue = Record; @@ -23,163 +16,7 @@ const BasicExample = () => { const editor: YooEditor = useMemo(() => createYooptaEditor(), []); const selectionRef = useRef(null); const [readOnly, setReadOnly] = useState(false); - const [value, setValue] = useState({ - '208e71cc-aa15-4fe8-93e1-446fc9b1053f': { - id: '208e71cc-aa15-4fe8-93e1-446fc9b1053f', - value: [ - { - id: 'c2971883-6dd0-4cb7-bb7e-f9a3d3454cbe', - type: 'table', - children: [ - { - id: '705cf815-5d00-4013-b92b-8934fb93454f', - type: 'table-row', - children: [ - { - id: 'c9021d7e-4336-4c68-a876-d0b76b83aee2', - type: 'table-data-cell', - children: [ - { - text: 'First column', - }, - ], - props: { - width: 200, - asHeader: false, - }, - }, - { - id: '76893065-3256-47a2-95c2-9731922b69c8', - type: 'table-data-cell', - children: [ - { - text: '', - }, - ], - props: { - width: 200, - asHeader: false, - }, - }, - { - id: 'e57acf66-0327-4247-b4ff-bfc38bb1ccad', - type: 'table-data-cell', - children: [ - { - text: '', - }, - ], - props: { - width: 200, - asHeader: false, - }, - }, - ], - }, - { - id: '31ee10c5-7d17-4113-ae28-e81bbdbe0d70', - type: 'table-row', - children: [ - { - id: '65d46e0d-35fd-4668-8784-83d7b6a8c0f3', - type: 'table-data-cell', - children: [ - { - text: '', - }, - ], - props: { - width: 200, - asHeader: false, - }, - }, - { - id: 'f75c1bd0-9302-4404-8f25-4854bdc554eb', - type: 'table-data-cell', - children: [ - { - text: '', - }, - ], - props: { - width: 200, - asHeader: false, - }, - }, - { - id: '2a90d671-024e-4b69-9b8c-647a4a52093e', - type: 'table-data-cell', - children: [ - { - text: '', - }, - ], - props: { - width: 200, - asHeader: false, - }, - }, - ], - }, - { - id: 'f3916ae1-d479-48d8-bcb2-055d7c152093', - type: 'table-row', - children: [ - { - id: '616fe6fa-0d21-4ab2-82ee-c00d2a5cfb8d', - type: 'table-data-cell', - children: [ - { - text: '', - }, - ], - props: { - width: 200, - asHeader: false, - }, - }, - { - id: 'bf01e43c-fa1e-44bc-b815-90b6a29a6624', - type: 'table-data-cell', - children: [ - { - text: '', - }, - ], - props: { - width: 200, - asHeader: false, - }, - }, - { - id: 'd6d969fb-6c43-4b9a-9770-7984d89a9824', - type: 'table-data-cell', - children: [ - { - text: '', - }, - ], - props: { - width: 200, - asHeader: false, - }, - }, - ], - }, - ], - props: { - headerColumn: false, - headerRow: false, - }, - }, - ], - type: 'Table', - meta: { - order: 0, - depth: 0, - }, - }, - }); + const [value, setValue] = useState(); useEffect(() => { editor.on('change', (value: YooptaChildrenValue) => { @@ -187,8 +24,6 @@ const BasicExample = () => { }); }, [editor]); - console.log(value); - return ( <>
diff --git a/packages/development/src/utils/yoopta/plugins.tsx b/packages/development/src/utils/yoopta/plugins.tsx index cafdaa430..e90a81ceb 100644 --- a/packages/development/src/utils/yoopta/plugins.tsx +++ b/packages/development/src/utils/yoopta/plugins.tsx @@ -17,7 +17,49 @@ import { uploadToCloudinary } from '../cloudinary'; import { Elements } from '@yoopta/editor'; export const YOOPTA_PLUGINS = [ - Table, + Table.extend({ + renders: { + table: (props) => { + return ( +
+ + {props.children} +
+
+ ); + }, + 'table-row': (props) => { + return ( + + {props.children} + + ); + }, + 'table-data-cell': (props) => { + const Node = props.isDataCellAsHeader ? 'th' : 'td'; + const style = { + maxWidth: props.width, + minWidth: props.height, + backgroundColor: props.selected ? '#f0f0f0' : 'transparent', + }; + + return ( + + {props.children} + + ); + }, + }, + options: { + HTMLAttributes: { + className: 'table-element-extended', + }, + }, + }), Divider.extend({ elementProps: { divider: (props) => ({ diff --git a/packages/marks/package.json b/packages/marks/package.json index edbf2af67..0ea21397b 100644 --- a/packages/marks/package.json +++ b/packages/marks/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/marks", - "version": "4.8.2", + "version": "4.8.3", "description": "Marks for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/accordion/package.json b/packages/plugins/accordion/package.json index 67a042e8c..1818acace 100644 --- a/packages/plugins/accordion/package.json +++ b/packages/plugins/accordion/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/accordion", - "version": "4.8.2", + "version": "4.8.3", "description": "Accordion plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/blockquote/package.json b/packages/plugins/blockquote/package.json index 272eeabe4..05e4f968a 100644 --- a/packages/plugins/blockquote/package.json +++ b/packages/plugins/blockquote/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/blockquote", - "version": "4.8.2", + "version": "4.8.3", "description": "Blockquote plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/callout/package.json b/packages/plugins/callout/package.json index cc98c2962..e96629f9f 100644 --- a/packages/plugins/callout/package.json +++ b/packages/plugins/callout/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/callout", - "version": "4.8.2", + "version": "4.8.3", "description": "Callout plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/code/package.json b/packages/plugins/code/package.json index d86930dca..481866420 100644 --- a/packages/plugins/code/package.json +++ b/packages/plugins/code/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/code", - "version": "4.8.2", + "version": "4.8.3", "description": "Code plugin with syntax highlighting for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/divider/package.json b/packages/plugins/divider/package.json index 38373a427..839588e17 100644 --- a/packages/plugins/divider/package.json +++ b/packages/plugins/divider/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/divider", - "version": "4.8.2", + "version": "4.8.3", "description": "Divider plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/divider/rollup.config.js b/packages/plugins/divider/rollup.config.js index d8f0b5d46..f7a04d2ac 100644 --- a/packages/plugins/divider/rollup.config.js +++ b/packages/plugins/divider/rollup.config.js @@ -3,5 +3,5 @@ import { createRollupConfig } from '../../../config/rollup'; const pkg = require('./package.json'); export default createRollupConfig({ pkg, - tailwindConfig: { content: ['./src/**/*.{js,ts,jsx,tsx,mdx}'] }, + tailwindConfig: { content: ['./src/**/*.{js,ts,jsx,tsx,mdx}'], prefix: 'yoo-divider-' }, }); diff --git a/packages/plugins/divider/src/components/DividerBlockOptions.tsx b/packages/plugins/divider/src/components/DividerBlockOptions.tsx index 22b094cad..ad7ac22c3 100644 --- a/packages/plugins/divider/src/components/DividerBlockOptions.tsx +++ b/packages/plugins/divider/src/components/DividerBlockOptions.tsx @@ -32,53 +32,71 @@ const DividerBlockOptions = ({ editor, block, props: dividerProps }: Props) => { diff --git a/packages/plugins/divider/src/ui/Divider.tsx b/packages/plugins/divider/src/elements/Divider.tsx similarity index 100% rename from packages/plugins/divider/src/ui/Divider.tsx rename to packages/plugins/divider/src/elements/Divider.tsx diff --git a/packages/plugins/divider/src/plugin/index.tsx b/packages/plugins/divider/src/plugin/index.tsx index 42a965eb7..d35fc2880 100644 --- a/packages/plugins/divider/src/plugin/index.tsx +++ b/packages/plugins/divider/src/plugin/index.tsx @@ -2,7 +2,7 @@ import { generateId, YooptaPlugin } from '@yoopta/editor'; import { DividerCommands } from '../commands'; import { onKeyDown } from '../events/onKeyDown'; import { DividerElementMap } from '../types'; -import { DividerRender } from '../ui/Divider'; +import { DividerRender } from '../elements/Divider'; const Divider = new YooptaPlugin({ type: 'Divider', diff --git a/packages/plugins/embed/package.json b/packages/plugins/embed/package.json index 9091d6302..0fd007b0d 100644 --- a/packages/plugins/embed/package.json +++ b/packages/plugins/embed/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/embed", - "version": "4.8.2", + "version": "4.8.3", "description": "Embed plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/file/package.json b/packages/plugins/file/package.json index 18adf81b9..13315ad81 100644 --- a/packages/plugins/file/package.json +++ b/packages/plugins/file/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/file", - "version": "4.8.2", + "version": "4.8.3", "description": "File plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/headings/package.json b/packages/plugins/headings/package.json index 8a9c1060b..d0e20e79a 100644 --- a/packages/plugins/headings/package.json +++ b/packages/plugins/headings/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/headings", - "version": "4.8.2", + "version": "4.8.3", "description": "Headings plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/image/package.json b/packages/plugins/image/package.json index 4d7f21d1b..af4900b2f 100644 --- a/packages/plugins/image/package.json +++ b/packages/plugins/image/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/image", - "version": "4.8.2", + "version": "4.8.3", "description": "Image plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/link/package.json b/packages/plugins/link/package.json index 59ea956c9..859a8fe93 100644 --- a/packages/plugins/link/package.json +++ b/packages/plugins/link/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/link", - "version": "4.8.2", + "version": "4.8.3", "description": "Link plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/lists/package.json b/packages/plugins/lists/package.json index 9b4ebacfa..025ce3451 100644 --- a/packages/plugins/lists/package.json +++ b/packages/plugins/lists/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/lists", - "version": "4.8.2", + "version": "4.8.3", "description": "Lists plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/paragraph/package.json b/packages/plugins/paragraph/package.json index bd7b5438c..2df741a72 100644 --- a/packages/plugins/paragraph/package.json +++ b/packages/plugins/paragraph/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/paragraph", - "version": "4.8.2", + "version": "4.8.3", "description": "Paragraph plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/table/package.json b/packages/plugins/table/package.json index e9333854a..767f9bfd9 100644 --- a/packages/plugins/table/package.json +++ b/packages/plugins/table/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/table", - "version": "4.8.2", + "version": "4.8.3", "description": "Table plugin for Yoopta Editor [IN PROGRESS]", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/plugins/table/rollup.config.js b/packages/plugins/table/rollup.config.js index e89a0359b..371182fcf 100644 --- a/packages/plugins/table/rollup.config.js +++ b/packages/plugins/table/rollup.config.js @@ -1,4 +1,7 @@ import { createRollupConfig } from '../../../config/rollup'; const pkg = require('./package.json'); -export default createRollupConfig({ pkg, tailwindConfig: { content: ['./src/**/*.{js,ts,jsx,tsx,mdx}'] } }); +export default createRollupConfig({ + pkg, + tailwindConfig: { content: ['./src/**/*.{js,ts,jsx,tsx,mdx}'], prefix: 'yoo-table-' }, +}); diff --git a/packages/plugins/table/src/components/ResizeHandle.tsx b/packages/plugins/table/src/components/ResizeHandle.tsx index 481301ff2..5d74e6fac 100644 --- a/packages/plugins/table/src/components/ResizeHandle.tsx +++ b/packages/plugins/table/src/components/ResizeHandle.tsx @@ -6,6 +6,7 @@ const ResizeHandle = ({ onResize, tdWidth, columnIndex }) => { const startX = useRef(0); useEffect(() => { + // [TODO] - Get by table id const tableEl = document.querySelector('.yoopta-table') as HTMLElement; if (!tableEl) return; @@ -51,8 +52,8 @@ const ResizeHandle = ({ onResize, tdWidth, columnIndex }) => { }, [columnIndex, tdWidth]); return ( -
-
+
+
); }; diff --git a/packages/plugins/table/src/components/TableBlockOptions.tsx b/packages/plugins/table/src/components/TableBlockOptions.tsx index 82de5a94b..38a5f3c6c 100644 --- a/packages/plugins/table/src/components/TableBlockOptions.tsx +++ b/packages/plugins/table/src/components/TableBlockOptions.tsx @@ -30,21 +30,33 @@ const TableBlockOptions = ({ editor, block, table }: Props) => { - - diff --git a/packages/plugins/table/src/components/TableColumnDragButton.tsx b/packages/plugins/table/src/components/TableColumnDragButton.tsx index 729ec4ffd..cc23f420f 100644 --- a/packages/plugins/table/src/components/TableColumnDragButton.tsx +++ b/packages/plugins/table/src/components/TableColumnDragButton.tsx @@ -1,5 +1,5 @@ import { Elements, SlateElement, YooEditor } from '@yoopta/editor'; -import { useFloating, inline, flip, shift, offset } from '@floating-ui/react'; +import { useFloating, inline, flip, shift, offset, autoUpdate } from '@floating-ui/react'; import { useState } from 'react'; import DragIcon from '../icons/drag.svg'; import { TableColumnOptions } from './TableColumnOptions'; @@ -19,6 +19,7 @@ const TableColumnDragButton = ({ editor, blockId, tdElement }: TableRowProps) => open: isTableColumnActionsOpen, onOpenChange: setIsTableColumnActionsOpen, middleware: [inline(), flip(), shift(), offset(10)], + whileElementsMounted: autoUpdate, }); const onClick = () => { diff --git a/packages/plugins/table/src/components/TableRowDragButton.tsx b/packages/plugins/table/src/components/TableRowDragButton.tsx index 1868d757a..7daf22f48 100644 --- a/packages/plugins/table/src/components/TableRowDragButton.tsx +++ b/packages/plugins/table/src/components/TableRowDragButton.tsx @@ -1,5 +1,5 @@ import { Elements, SlateElement, YooEditor } from '@yoopta/editor'; -import { useFloating, inline, flip, shift, offset } from '@floating-ui/react'; +import { useFloating, inline, flip, shift, offset, autoUpdate } from '@floating-ui/react'; import { useState } from 'react'; import { TableRowOptions } from './TableRowOptions'; import DragIcon from '../icons/drag.svg'; @@ -19,6 +19,7 @@ const TableRowDragButton = ({ editor, blockId, tdElement }: TableRowProps) => { open: isTableRowActionsOpen, onOpenChange: setIsTableRowActionsOpen, middleware: [inline(), flip(), shift(), offset(10)], + whileElementsMounted: autoUpdate, }); const onClick = () => { @@ -55,7 +56,10 @@ const TableRowDragButton = ({ editor, blockId, tdElement }: TableRowProps) => { className="yoopta-table-row-button" style={isTableRowActionsOpen ? { opacity: 1 } : undefined} > - + ); diff --git a/packages/plugins/table/src/elements/Table.tsx b/packages/plugins/table/src/elements/Table.tsx index 7eff2ddf8..7ce5601b1 100644 --- a/packages/plugins/table/src/elements/Table.tsx +++ b/packages/plugins/table/src/elements/Table.tsx @@ -1,10 +1,9 @@ import { PluginElementRenderProps, useBlockData, useYooptaEditor } from '@yoopta/editor'; -import { useMemo } from 'react'; import { TableBlockOptions } from '../components/TableBlockOptions'; import { TableElement } from '../types'; import { TABLE_SLATE_TO_SELECTION_SET } from '../utils/weakMaps'; -const Table = ({ attributes, children, blockId, element, HTMLAttributes }: PluginElementRenderProps) => { +const Table = ({ attributes, children, blockId, element, HTMLAttributes, extendRender }: PluginElementRenderProps) => { const editor = useYooptaEditor(); const slate = editor.blockEditorsMap[blockId]; const blockData = useBlockData(blockId); @@ -12,9 +11,16 @@ const Table = ({ attributes, children, blockId, element, HTMLAttributes }: Plugi const isSelecting = TABLE_SLATE_TO_SELECTION_SET.get(slate); + if (extendRender) { + // @ts-ignore [FIXME] - add generic type for extendRender props + return extendRender({ attributes, children, blockId, element, HTMLAttributes, isSelecting }); + } + + const { className, ...htmlAttrs } = HTMLAttributes || {}; + return ( -
- +
+
{children}
{!isReadOnly && } diff --git a/packages/plugins/table/src/elements/TableDataCell.tsx b/packages/plugins/table/src/elements/TableDataCell.tsx index 855a6d0e5..8f833443b 100644 --- a/packages/plugins/table/src/elements/TableDataCell.tsx +++ b/packages/plugins/table/src/elements/TableDataCell.tsx @@ -8,7 +8,14 @@ import { TableCommands } from '../commands'; import { TableCellElement, TableElement, TableElementProps } from '../types'; import { TABLE_SLATE_TO_SELECTION_SET } from '../utils/weakMaps'; -const TableDataCell = ({ attributes, children, element, blockId }: PluginElementRenderProps) => { +const TableDataCell = ({ + attributes, + children, + element, + blockId, + HTMLAttributes, + extendRender, +}: PluginElementRenderProps) => { const editor = useYooptaEditor(); const slate = editor.blockEditorsMap[blockId]; @@ -62,9 +69,27 @@ const TableDataCell = ({ attributes, children, element, blockId }: PluginElement minWidth: elementWidth, }; + const { className: extendedClassName, ...htmlAttrs } = HTMLAttributes || {}; + const className = isDataCellAsHeader - ? 'yoopta-table-data-cell yoopta-table-data-cell-head' - : 'yoopta-table-data-cell'; + ? `yoopta-table-data-cell yoopta-table-data-cell-head ${extendedClassName}` + : `yoopta-table-data-cell ${extendedClassName}`; + + if (extendRender) { + return extendRender({ + attributes, + children, + blockId, + element, + HTMLAttributes, + // @ts-ignore [FIXME] - add generic type for extendRender props + isDataCellAsHeader, + onResize, + width: elementWidth, + height: elementWidth, + selected, + }); + } return (
diff --git a/packages/plugins/table/src/elements/TableRow.tsx b/packages/plugins/table/src/elements/TableRow.tsx index 23d98ccbd..34e917e4d 100644 --- a/packages/plugins/table/src/elements/TableRow.tsx +++ b/packages/plugins/table/src/elements/TableRow.tsx @@ -1,8 +1,22 @@ import { PluginElementRenderProps, useYooptaEditor } from '@yoopta/editor'; -const TableRow = ({ attributes, children, element }: PluginElementRenderProps) => { +const TableRow = ({ + attributes, + children, + element, + blockId, + HTMLAttributes, + extendRender, +}: PluginElementRenderProps) => { + if (extendRender) { + // @ts-ignore [FIXME] - add generic type for extendRender props + return extendRender({ attributes, children, blockId, element, HTMLAttributes }); + } + + const { className, ...htmlAttrs } = HTMLAttributes || {}; + return ( - + {children} ); diff --git a/packages/plugins/table/src/styles.css b/packages/plugins/table/src/styles.css index 7afe9f56f..e4ee0cac8 100644 --- a/packages/plugins/table/src/styles.css +++ b/packages/plugins/table/src/styles.css @@ -1,7 +1,7 @@ @tailwind utilities; .yoopta-table-block { - @apply w-full pt-2 pb-2 overflow-x-auto overflow-y-hidden relative; + @apply yoo-table-w-full yoo-table-pt-2 yoo-table-pb-2 yoo-table-overflow-x-auto yoo-table-overflow-y-hidden yoo-table-relative; } .yoopta-table-block .yoopta-table-options { @@ -15,7 +15,7 @@ } .yoopta-table { - @apply select-none border-collapse border-spacing-0 w-auto caption-bottom text-sm table-fixed; + @apply yoo-table-select-none yoo-table-border-collapse yoo-table-border-spacing-0 yoo-table-w-auto yoo-table-caption-bottom yoo-table-text-sm yoo-table-table-fixed; } .yoopta-table-selecting *::selection { @@ -23,11 +23,11 @@ } .yoopta-table tbody { - @apply select-none; + @apply yoo-table-select-none; } .yoopta-table-row { - @apply transition-colors relative; + @apply yoo-table-transition-colors yoo-table-relative; } .yoopta-table-row-selected { @@ -36,7 +36,7 @@ } .yoopta-table-data-cell { - @apply transition-colors text-inherit fill-current border relative align-top min-h-[32px]; + @apply yoo-table-transition-colors yoo-table-text-inherit yoo-table-fill-current yoo-table-border yoo-table-relative yoo-table-align-top yoo-table-min-h-[32px]; border: 1px solid #e9e9e7; } @@ -57,36 +57,36 @@ } .yoopta-table-data-cell-content { - @apply max-w-full w-full whitespace-pre-wrap break-words p-[7px_9px] bg-transparent text-[14px] leading-[20px]; + @apply yoo-table-max-w-full yoo-table-w-full yoo-table-whitespace-pre-wrap yoo-table-break-words yoo-table-p-[7px_9px] yoo-table-bg-transparent yoo-table-text-[14px] yoo-table-leading-[20px]; caret-color: rgb(55, 53, 47); } .yoopta-table-column-button { - @apply opacity-0 cursor-pointer select-none transition-opacity duration-[150ms] cursor-pointer absolute flex items-center justify-center rounded-[4px] bg-white z-[4] top-[-8px] left-[calc(50%-13px)] h-[16px] w-[26px] p-[2px_4px]; + @apply yoo-table-opacity-0 yoo-table-cursor-pointer yoo-table-select-none yoo-table-transition-opacity yoo-table-duration-[150ms] yoo-table-cursor-pointer yoo-table-absolute yoo-table-flex yoo-table-items-center yoo-table-justify-center yoo-table-rounded-[4px] yoo-table-bg-white yoo-table-z-[4] yoo-table-top-[-8px] yoo-table-left-[calc(50%-13px)] yoo-table-h-[16px] yoo-table-w-[26px] yoo-table-p-[2px_4px]; composes: yoopta-button; fill: rgba(55, 53, 47, 0.35); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), hsla(0, 0%, 6%, .1) 0px 0px 0px 1px, hsla(0, 0%, 6%, .1) 0px 2px 4px; } .yoopta-table-row-button { - @apply opacity-0 cursor-pointer select-none transition-opacity duration-[150ms] cursor-pointer absolute flex items-center justify-center rounded-[4px] bg-white z-[4] top-[calc(50%-13px)] left-[-8px] w-[16px] h-[26px] p-[4px_2px]; + @apply yoo-table-opacity-0 yoo-table-cursor-pointer yoo-table-select-none yoo-table-transition-opacity yoo-table-duration-[150ms] yoo-table-cursor-pointer yoo-table-absolute yoo-table-flex yoo-table-items-center yoo-table-justify-center yoo-table-rounded-[4px] yoo-table-bg-white yoo-table-z-[4] yoo-table-top-[calc(50%-13px)] yoo-table-left-[-8px] yoo-table-w-[16px] yoo-table-h-[26px] yoo-table-p-[4px_2px]; composes: yoopta-button; fill: rgba(55, 53, 47, 0.35); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), hsla(0, 0%, 6%, .1) 0px 0px 0px 1px, hsla(0, 0%, 6%, .1) 0px 2px 4px; } .yoopta-table-icons { - @apply w-4 h-4 mr-2; + @apply yoo-table-w-4 yoo-table-h-4 yoo-table-mr-2; } -.resize-handle { - @apply select-none absolute right-0 w-0 top-0 flex-grow-0 h-full z-[1] +.yoopta-table-resize-handle { + @apply yoo-table-select-none yoo-table-absolute yoo-table-right-0 yoo-table-w-0 yoo-table-top-0 yoo-table-flex-grow-0 yoo-table-h-full yoo-table-z-[1]; } -.resize-handle-inner { - @apply select-none absolute w-[3px] -ml-[1px] -mt-[1px] h-[calc(100%+2px)] transition-[background] duration-[150ms] delay-[50ms] bg-[#2383e200] cursor-col-resize +.yoopta-table-resize-handle-inner { + @apply yoo-table-select-none yoo-table-absolute yoo-table-w-[3px] yoo-table--ml-[1px] yoo-table--mt-[1px] yoo-table-h-[calc(100%+2px)] yoo-table-transition-[background] yoo-table-duration-[150ms] yoo-table-delay-[50ms] yoo-table-bg-[#2383e200] yoo-table-cursor-col-resize; } -.resize-handle-inner:hover { +.yoopta-table-resize-handle-inner:hover { background-color: #74b6db; } \ No newline at end of file diff --git a/packages/plugins/table/src/types.ts b/packages/plugins/table/src/types.ts index cc0addb90..b7daf6385 100644 --- a/packages/plugins/table/src/types.ts +++ b/packages/plugins/table/src/types.ts @@ -1,4 +1,4 @@ -import { PluginOptions, SlateElement } from '@yoopta/editor'; +import { SlateElement } from '@yoopta/editor'; export type TablePluginElementKeys = 'table' | 'table-row' | 'table-data-cell'; diff --git a/packages/plugins/video/package.json b/packages/plugins/video/package.json index 71289e890..acfdc59bf 100644 --- a/packages/plugins/video/package.json +++ b/packages/plugins/video/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/video", - "version": "4.8.2", + "version": "4.8.3", "description": "Video plugin for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/tools/action-menu/package.json b/packages/tools/action-menu/package.json index 7897ecbe6..321be0290 100644 --- a/packages/tools/action-menu/package.json +++ b/packages/tools/action-menu/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/action-menu-list", - "version": "4.8.2", + "version": "4.8.3", "description": "ActionMenuList tool for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/tools/link-tool/package.json b/packages/tools/link-tool/package.json index f51f543fe..9bc51e0cc 100644 --- a/packages/tools/link-tool/package.json +++ b/packages/tools/link-tool/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/link-tool", - "version": "4.8.2", + "version": "4.8.3", "description": "Link tool for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/packages/tools/toolbar/package.json b/packages/tools/toolbar/package.json index f30b7dbac..cb83e8300 100644 --- a/packages/tools/toolbar/package.json +++ b/packages/tools/toolbar/package.json @@ -1,6 +1,6 @@ { "name": "@yoopta/toolbar", - "version": "4.8.2", + "version": "4.8.3", "description": "Toolbar tool for Yoopta Editor", "author": "Darginec05 ", "homepage": "https://github.com/Darginec05/Editor-Yoopta#readme", diff --git a/web/next-example/package.json b/web/next-example/package.json index 9c9d61b90..a6f82fdec 100644 --- a/web/next-example/package.json +++ b/web/next-example/package.json @@ -24,28 +24,28 @@ "@types/js-beautify": "^1.14.3", "@uiw/codemirror-theme-vscode": "^4.21.24", "@uiw/react-codemirror": "^4.21.25", - "@yoopta/accordion": "^4.8.2", - "@yoopta/action-menu-list": "^4.8.2", - "@yoopta/blockquote": "^4.8.2", - "@yoopta/callout": "^4.8.2", - "@yoopta/code": "^4.8.2", - "@yoopta/divider": "^4.8.2", - "@yoopta/editor": "^4.8.2", - "@yoopta/embed": "^4.8.2", - "@yoopta/exports": "^4.8.2", - "@yoopta/file": "^4.8.2", - "@yoopta/headings": "^4.8.2", - "@yoopta/image": "^4.8.2", - "@yoopta/link": "^4.8.2", - "@yoopta/link-tool": "^4.8.2", - "@yoopta/lists": "^4.8.2", - "@yoopta/marks": "^4.8.2", - "@yoopta/paragraph": "^4.8.2", - "@yoopta/starter-kit": "^4.7.1-alpha.3", - "@yoopta/table": "^4.8.2", - "@yoopta/toolbar": "^4.8.2", - "@yoopta/video": "^4.8.2", "class-variance-authority": "^0.7.0", + "@yoopta/accordion": "^4.8.3-rc.0", + "@yoopta/action-menu-list": "^4.8.3-rc.0", + "@yoopta/blockquote": "^4.8.3-rc.0", + "@yoopta/callout": "^4.8.3-rc.0", + "@yoopta/code": "^4.8.3-rc.0", + "@yoopta/divider": "^4.8.3-rc.0", + "@yoopta/editor": "^4.8.3-rc.0", + "@yoopta/embed": "^4.8.3-rc.0", + "@yoopta/exports": "^4.8.3-rc.0", + "@yoopta/file": "^4.8.3-rc.0", + "@yoopta/headings": "^4.8.3-rc.0", + "@yoopta/image": "^4.8.3-rc.0", + "@yoopta/link": "^4.8.3-rc.0", + "@yoopta/link-tool": "^4.8.3-rc.0", + "@yoopta/lists": "^4.8.3-rc.0", + "@yoopta/marks": "^4.8.3-rc.0", + "@yoopta/paragraph": "^4.8.3-rc.0", + "@yoopta/starter-kit": "^4.7.1-alpha.3", + "@yoopta/table": "^4.8.3-rc.0", + "@yoopta/toolbar": "^4.8.3-rc.0", + "@yoopta/video": "^4.8.3-rc.0", "classnames": "^2.5.1", "clsx": "^2.1.0", "codemirror": "^6.0.1", diff --git a/web/next-example/src/components/examples/withShadcnUILibrary/index.tsx b/web/next-example/src/components/examples/withShadcnUILibrary/index.tsx index 66f8131a3..6b08c74fa 100644 --- a/web/next-example/src/components/examples/withShadcnUILibrary/index.tsx +++ b/web/next-example/src/components/examples/withShadcnUILibrary/index.tsx @@ -28,17 +28,14 @@ import { TypographyH2 } from '@/components/libraries/shadcn/TypographyH2'; import { TypographyH3 } from '@/components/libraries/shadcn/TypographyH3'; import { TypographyBlockquote } from '@/components/libraries/shadcn/TypographyBlockquote'; import { TypographyLink } from '@/components/libraries/shadcn/TypographyLink'; -import { - AccordionItem as AccordionItemShadcn, - Accordion as AccordionShadcn, - AccordionContent as AccordionContentShadcn, -} from '@/components/ui/accordion'; + import { AccordionList, AccordionListItem, AccordionListItemContent, AccordionListItemHeading, } from '@/components/libraries/shadcn/Accordion'; +import { TableRow, Table as TableShadcn, TableDataCell } from '@/components/libraries/shadcn/Table'; const plugins = [ Paragraph.extend({ @@ -81,7 +78,13 @@ const plugins = [ 'accordion-list-item-heading': AccordionListItemHeading, }, }), - Table, + Table.extend({ + renders: { + table: TableShadcn, + 'table-row': TableRow, + 'table-data-cell': TableDataCell, + }, + }), NumberedList, BulletedList, TodoList, diff --git a/web/next-example/src/components/examples/withShadcnUILibrary/initValue.ts b/web/next-example/src/components/examples/withShadcnUILibrary/initValue.ts index eb7341f12..962f7ec55 100644 --- a/web/next-example/src/components/examples/withShadcnUILibrary/initValue.ts +++ b/web/next-example/src/components/examples/withShadcnUILibrary/initValue.ts @@ -584,7 +584,7 @@ export const initValue = { type: 'accordion-list-item-heading', children: [ { - text: 'Is it legal?', + text: 'What the best football club?', }, ], props: { @@ -596,7 +596,7 @@ export const initValue = { type: 'accordion-list-item-content', children: [ { - text: 'Yes. It adheres to the WAI-ARIA design pattern.', + text: 'Chelsea FC is the best football club in the world', }, ], props: { diff --git a/web/next-example/src/components/libraries/shadcn/Table.tsx b/web/next-example/src/components/libraries/shadcn/Table.tsx index 577bccd65..d8cdf24c5 100644 --- a/web/next-example/src/components/libraries/shadcn/Table.tsx +++ b/web/next-example/src/components/libraries/shadcn/Table.tsx @@ -3,24 +3,37 @@ import { PluginElementRenderProps } from '@yoopta/editor'; // https://ui.shadcn.com/docs/components/typography export function Table(props: PluginElementRenderProps) { return ( -

- {props.children} -

+
+ + {props.children} +
+
); } export function TableRow(props: PluginElementRenderProps) { return ( -

+ {props.children} -

+ ); } export function TableDataCell(props: PluginElementRenderProps) { + const Node = props.isDataCellAsHeader ? 'th' : 'td'; + const style = { + maxWidth: props.width, + minWidth: props.height, + backgroundColor: props.selected ? '#f0f0f0' : 'transparent', + }; + return ( -

+ {props.children} -

+ ); } diff --git a/web/next-example/src/pages/examples/[example].tsx b/web/next-example/src/pages/examples/[example].tsx index 88db5fa17..e55c79a51 100644 --- a/web/next-example/src/pages/examples/[example].tsx +++ b/web/next-example/src/pages/examples/[example].tsx @@ -46,6 +46,7 @@ export const EXAMPLES: Record React.JSX.Element> = { withCustomRenders, withCustomElementProps, withExtendedPlugin, + withMultiPageEditors, withChatSlack, withDarkTheme, withMediaAndVoids, @@ -56,7 +57,6 @@ export const EXAMPLES: Record React.JSX.Element> = { withSavingToDatabase, withCustomStyles, withLargeDocuments, - withMultiPageEditors, // withStarterKit, // withCustomHTMLAttributes, // withEditorFocusBlur, diff --git a/web/next-example/yarn.lock b/web/next-example/yarn.lock index a04ff6f81..b1fe32a5e 100644 --- a/web/next-example/yarn.lock +++ b/web/next-example/yarn.lock @@ -2688,10 +2688,10 @@ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" integrity sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ== -"@yoopta/accordion@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/accordion/-/accordion-4.8.2.tgz#e1a46892285e62b1069b293ce72987b82088936a" - integrity sha512-ZlH2lwJlra+HNoxWqxwwXca9wGczbtG1XEIOh8FYMFZLU3rkFbwDmXZFCzuBIFVPrUpxYSmYDuKtSdDWyFWIwg== +"@yoopta/accordion@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/accordion/-/accordion-4.8.3-rc.0.tgz#86e673e903c9ec7df23ada7ee5e10f84231a8352" + integrity sha512-bB5pGxjqMxk4bgIFZqvVmyzcxRXeCqUY43KVpgcNXwsIaGkK6VFUxg2V+w6M9fBr3uxddcW75A4V7oHzg7EHgg== dependencies: lucide-react "^0.378.0" @@ -2702,10 +2702,10 @@ dependencies: lucide-react "^0.378.0" -"@yoopta/action-menu-list@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/action-menu-list/-/action-menu-list-4.8.2.tgz#26f815f945bae46ad3866d1e0dead15c458c40b3" - integrity sha512-kuHBJ7ehQQ/kPWboxIArhCws4/XDvqi3EKnLLt4OMw386rNZh7eT4i/pxFTRc6obeZZvavnkkBtRBOYreqs3PQ== +"@yoopta/action-menu-list@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/action-menu-list/-/action-menu-list-4.8.3-rc.0.tgz#a6724e693c57fe45419604e629c296047457b4dc" + integrity sha512-Gx1zs8IVv5nfkmgpmCiVjMEeJ6UHa3bFmlyMUhAQQv0ntp1m6zCRWTSSbHClEmLG7NYm3XPT2JcyxKjDufxsBA== dependencies: "@floating-ui/react" "^0.26.9" "@radix-ui/react-icons" "^1.3.0" @@ -2718,30 +2718,30 @@ "@floating-ui/react" "^0.26.9" "@radix-ui/react-icons" "^1.3.0" -"@yoopta/blockquote@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/blockquote/-/blockquote-4.8.2.tgz#cf0995708777ae6e4c3cf76184806cc5284136fb" - integrity sha512-0DbTRFG32fmNEi5fxYSLnNy8v1wFY2sIrSdEZDOvsUZJiGPuwjk+K1efL0KyIzUq9iC55e+fcIM9zTMaSVvJKQ== +"@yoopta/blockquote@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/blockquote/-/blockquote-4.8.3-rc.0.tgz#7256a903e45a3afb98f315573a4738ed686da26d" + integrity sha512-GjGb4km/dlXHiyKHBUMM+5b1PUxh4UDRV5OJu7skLWfcpjH+Em2RKPeoTipS5ykBQYC1390nTHNgzL/ufazPng== "@yoopta/blockquote@latest": version "4.7.1-rc.6" resolved "https://registry.yarnpkg.com/@yoopta/blockquote/-/blockquote-4.7.1-rc.6.tgz#ec315d955dda681d543114c6a3c089bedf791078" integrity sha512-rmUURmKjRPkiN3wI4zWFZu0JdENf+zPH/Wwqh1hmnPQxAKaWlGPo1dCQy6F3b4WGXcU2SGOQqRyQsj/bWcQpzw== -"@yoopta/callout@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/callout/-/callout-4.8.2.tgz#a9f62099eebab77015e7af6dbb91eabeca1db5a9" - integrity sha512-wWZH5g2iyaJNTs7cFZYeyn0DVLoQUOW1T7KcozNd85eGPK5SR5Wcayba2BJvcwtc2BmAfY44QB93UtA8Ei76OA== +"@yoopta/callout@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/callout/-/callout-4.8.3-rc.0.tgz#afd687f6f05fba3a3adecb9638242c7079178797" + integrity sha512-8DMHeOknDTwSwYTSyJMXXMz1Y8AIKrdVNHeXbUi956wBzxhbyxbc1RvfYUYQG8F1DgEWkuOw5k7OUrssAdMKhg== "@yoopta/callout@latest": version "4.7.1-rc.6" resolved "https://registry.yarnpkg.com/@yoopta/callout/-/callout-4.7.1-rc.6.tgz#3196c86de559661eaf9f4a479202100dfe77ce22" integrity sha512-/+0o4lZ9S2wA5GGAWK2dkS9XKdgH/6bdJXdpJ6s6MuBv4C4QqaO+izGUd4lV3UCJp7FYyqECsqEVxJKEs74oLg== -"@yoopta/code@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/code/-/code-4.8.2.tgz#d06284ec7dbcd93bce07d569915d2d766a6727c5" - integrity sha512-fMGAaqHNBN+X4tXSbqzOCjzIA8T78KS4aBhEq5TsZeaTxMbSNus5oogG1XcFGfv7p7WVT4HVL8FVhUgJy/rv4Q== +"@yoopta/code@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/code/-/code-4.8.3-rc.0.tgz#821e290d406b865eae672145521575d3a86c9c4e" + integrity sha512-2bzUMih52C6m5H/5ZwVOZDnIg9QKT29fykwYmNKdRhm5rokMmVOIQ8uC8J8l0LsZtS5vOOXXjpYidhKstXFj0g== dependencies: "@codemirror/lang-angular" "^0.1.3" "@codemirror/lang-cpp" "^6.0.2" @@ -2812,15 +2812,15 @@ codemirror "^6.0.1" copy-to-clipboard "^3.3.3" -"@yoopta/divider@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/divider/-/divider-4.8.2.tgz#580babdfb3fbc2b447aa18e7147949e410217033" - integrity sha512-7ZhTnUiwxy/UwToP4AkYU7m5FzR86y4XxU0uXu+RPn4LjD+x+pesJP4/vTJMNdvAIDHfi3K0+ENqkLGpIXZBGQ== +"@yoopta/divider@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/divider/-/divider-4.8.3-rc.0.tgz#c9e24d5d131fc7e0dfc968f2367d4a4aaa76ec83" + integrity sha512-MS+ENRmcfTBH02+dGiuWnhev3/J0yYCJgalNBeFAiJ27yFCz3I8jQGk+2nPDZw+FWJppSAZTNliWJ3FB6Rp97w== -"@yoopta/editor@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/editor/-/editor-4.8.2.tgz#8c7ca80c8daf368768643de5281be22f29249296" - integrity sha512-cPdONXtY13VneL0ug7IcKjtPfzO7fp9q7CcK3Hh889lj7mVZCs0zuCUXwDAfzGw7/iKzYbvzYVxXrUSbFegBUA== +"@yoopta/editor@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/editor/-/editor-4.8.3-rc.0.tgz#8f7cecb295eaa37907be5fe5a43e3da26fcdfc81" + integrity sha512-dsctklnm6ymYvEYA0rO2KHTDpIqws/nzOhN4zHTfLy1d5Clcpzyiujpx7X4tVuMgNJOGgm6cQevDpeQQcT4toA== dependencies: "@dnd-kit/core" "^6.1.0" "@dnd-kit/sortable" "^8.0.0" @@ -2849,10 +2849,10 @@ lodash.clonedeep "^4.5.0" slate-history "^0.100.0" -"@yoopta/embed@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/embed/-/embed-4.8.2.tgz#d03524996f9d91285210f69255b0c76ca6bca194" - integrity sha512-6TuTzxA0OV20TFOw4nQMjpD7CNaNHZO3vtn5tNqj1nAH0uC5p4BNGIJtmpouiJbCHbZ1iF90c3+fjqdPr7/Mfw== +"@yoopta/embed@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/embed/-/embed-4.8.3-rc.0.tgz#ba8cebdee2620934b613c618ac6bc686489af1bc" + integrity sha512-meaqKd+ISPxvJf+1Bzo9TTeduNF2G4X0s2mTfdtKHXIvSED83w0182WMrdXarYqBTl8QaF8RHWiiKPb0tJx6qQ== dependencies: "@floating-ui/react" "^0.26.9" "@radix-ui/react-icons" "^1.3.0" @@ -2867,10 +2867,10 @@ "@radix-ui/react-icons" "^1.3.0" re-resizable "^6.9.11" -"@yoopta/exports@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/exports/-/exports-4.8.2.tgz#62bfb5ac9c4be9b34677a3ccaaaddfc392e2bf26" - integrity sha512-KJEg68sIq32hag/WLGfiRL3XiO1AbRj2k9TPqtMtppHQQMRlr0PtlKx8mlINblwJSQXHkc2qHfKuCUc+ue4QAA== +"@yoopta/exports@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/exports/-/exports-4.8.3-rc.0.tgz#6e6cbd1c240cd3d62b7a07b265d541bc9781a61e" + integrity sha512-CDwG1DiIEvc/rQTjButlYZ7m5AvDmOPqIvFTpKaIn5Y00hAUHJbB0I4GcSFwY+Rk5cWpezHjEbFXbW0SiNDcfA== dependencies: marked "^13.0.0" @@ -2881,10 +2881,10 @@ dependencies: marked "^13.0.0" -"@yoopta/file@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/file/-/file-4.8.2.tgz#b3ef0bb8ce18eec48239d49be58acf6224d2e002" - integrity sha512-U9BM4E8zX6O8kUyuHZ+tIB8I9BDFynQ2kkK5jI/j9P9humfC3uHn66bIFUKa4Wmc866i5vdLdLzCB4RBUcMKVQ== +"@yoopta/file@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/file/-/file-4.8.3-rc.0.tgz#3320ea4e8fa15dc3c5879a3b939e8aa44e417f49" + integrity sha512-81aGwXcwUbk04VNy/ruRRxdQYkSXIeKCFtI4QiuMlzJHaneYZ1X1XDiBt+jO6mhJj8MMZrNASsCFQ4B+fPPpzQ== dependencies: "@floating-ui/react" "^0.26.9" "@radix-ui/react-icons" "^1.3.0" @@ -2897,20 +2897,20 @@ "@floating-ui/react" "^0.26.9" "@radix-ui/react-icons" "^1.3.0" -"@yoopta/headings@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/headings/-/headings-4.8.2.tgz#d25c3072edba9275a4db600d86879fa89506adb6" - integrity sha512-AH1a+nS8c+ph/hgG2VoXuTsMquTKqZp5F42P8bDFOT5KH0xU+Xv+QZJKIJlpgSjDvcwRoFRbZTTylB9B748CeA== +"@yoopta/headings@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/headings/-/headings-4.8.3-rc.0.tgz#85252d60873d0674d393ab1690dde5e21a333794" + integrity sha512-Ms4PngW4LzsuFrZGc+YHac0HuhtkgSu7ejwQonnHorHj1G84f8kiHQPhJ0H6veDH8pJSoRIBP6LKqjPlK8IW/g== "@yoopta/headings@latest": version "4.7.1-rc.6" resolved "https://registry.yarnpkg.com/@yoopta/headings/-/headings-4.7.1-rc.6.tgz#db3255edd92f47fc759c6e12a0867210b90b7c48" integrity sha512-cHOxszG0wwDDtj9E1VNLn1oQOZJeRkHgAIyZWxe8Yb9uFktfYW0DBWsfoq8PUAZ6JJCazcbTKWUJH4JXPNvwmQ== -"@yoopta/image@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/image/-/image-4.8.2.tgz#4539bd6b0e2254f8136703af3e9a515f4057d6e5" - integrity sha512-y2D5RAynanY8YdbrZuayIf+GT3a8nzQB+z8GvROPfkRCGgwu7tRFAQRxfgSxHJH4S+kn/++jyPohuXULse9cVg== +"@yoopta/image@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/image/-/image-4.8.3-rc.0.tgz#7dc9f86dfea741f99fab97aedb4bdab2382c74fb" + integrity sha512-dBWAjH+HWydHQ79F06Esxdln5NPgGm1D1gMo94JouO3FY+EOPSfzOKOphNhRQYb0jcBSRU8hsNCoTIXK+byKyw== dependencies: "@floating-ui/react" "^0.26.9" "@radix-ui/react-icons" "^1.3.0" @@ -2925,20 +2925,20 @@ "@radix-ui/react-icons" "^1.3.0" re-resizable "^6.9.11" -"@yoopta/link-tool@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/link-tool/-/link-tool-4.8.2.tgz#85e47806c8375a018f0a39415b869f4978d332d0" - integrity sha512-7YWKj8cd6wbVP+sUaQHBhdIBTtkZP3xrMdqpUuS2cySlrXMXslpcIjKhd+zxs+57y5a1TFfXRD/TtO3eDdOndg== +"@yoopta/link-tool@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/link-tool/-/link-tool-4.8.3-rc.0.tgz#43517b6a56b2ad3dd3db88d9146e3b5a686b8d73" + integrity sha512-BDKKNYh7NjghqUTvh9/680wwMtHaLi0nf0xPbrW37/D9cHp+EurGveaoyAHfdT0ATdioSXh1ERP8+wVfIYgrWg== "@yoopta/link-tool@latest": version "4.7.1-rc.6" resolved "https://registry.yarnpkg.com/@yoopta/link-tool/-/link-tool-4.7.1-rc.6.tgz#3edb978db8269fb5649e97c7f2d62d5abc88d8ed" integrity sha512-l2rBXnyNs6ijseiLR6LZAQP8Amup/slFzb9J1xK35/CfvjGAPX64rp4+XYZGNFFalJtTcQJkBbC+gkwvLRmaDA== -"@yoopta/link@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/link/-/link-4.8.2.tgz#593a328de8851ca73c7a9d1e6d47a66880540a3c" - integrity sha512-MdQKm+z7EF38pmSW7HfFCEUMYM9OFFWE/r4pknD+kE3sHcbLj8S+fAyXYAm5S74oldL1iWAmuYX5NizIFa8CEQ== +"@yoopta/link@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/link/-/link-4.8.3-rc.0.tgz#49ffb3c22204103ba57e2dd25b21b61941786c31" + integrity sha512-7dsjrOxUmXcKSkQNY96t7aFvnFNaFlrQt1Yx9AH7B5u6GZgAVzxRQPmojFxuMF3er4PSv/q68Lomp6r720bT0A== dependencies: lucide-react "^0.379.0" @@ -2949,30 +2949,30 @@ dependencies: lucide-react "^0.379.0" -"@yoopta/lists@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/lists/-/lists-4.8.2.tgz#d7ec14ae1d676a38dc563493980406ff0643078a" - integrity sha512-7ywk9mi6cTApX+UL87QHYSFFa84dznbFABHxOkRdjiOEw049R3stePEjmAS1GzVZ/0DMegiTvKUaNwRXtUV16w== +"@yoopta/lists@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/lists/-/lists-4.8.3-rc.0.tgz#a7d42ceedb862f688f5f9ea9c5126a74da09d4c3" + integrity sha512-DXVcetd3jOjrfUETIWCt1D599phUFXMxWcU6K+Dh1SyL5piLJEuLQyk1NCS834GnyEOr6iCzZjovWoLnlE3k7g== "@yoopta/lists@latest": version "4.7.1-rc.6" resolved "https://registry.yarnpkg.com/@yoopta/lists/-/lists-4.7.1-rc.6.tgz#40f0958f234c3d88b148fb5ccadf91ba207e0499" integrity sha512-Rhnnaze7V4rzandATOhLRBnZU5Nozt77DfrRzQvwjuWmuilsUIGpsGlQ0QaBKGTR6EXDYpbxDAXCCacvr+SliA== -"@yoopta/marks@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/marks/-/marks-4.8.2.tgz#167f6bbf9fe75d06d12e4bf86ac8f07c30affdf7" - integrity sha512-FnGJVTodZ+/rFqLA3o4t2BI7OxcnKmExzbfeees5QfM23zCydJ0bYsstR2i+36Cnkv6K5dJhS7J8Lnw2lfu73w== +"@yoopta/marks@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/marks/-/marks-4.8.3-rc.0.tgz#71a218ac9703127c666f4304b01eeeaffb0b4275" + integrity sha512-y3uTnxfNG3JPhQ1gF7azXTh/AJcY35T39OaYyLQoyPnKLiNw/DJfKFvsqPXh4wDo02JgWSytlAR9MHTzYBfRkg== "@yoopta/marks@latest": version "4.7.1-rc.6" resolved "https://registry.yarnpkg.com/@yoopta/marks/-/marks-4.7.1-rc.6.tgz#108217ff4bca3f42ec0be324ad506e134739f2e3" integrity sha512-N0MqhQioAJo86zPEIgeFkcZsm91KNtXlEjDnQAZzG0VByI986ngs6tZzE5YwihTRegBLgEAt4E8mf76Yjqvfyw== -"@yoopta/paragraph@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/paragraph/-/paragraph-4.8.2.tgz#f122e2092b26599ed09fa2254338b7bf6f912367" - integrity sha512-fRXn57K3KnbBKDPL7QtC8TGU6qgu7bd4jVHxSdYizn7XThX3pPp06tfwtRgAvCwxh+wwI2LfWiu61TvCDXik5A== +"@yoopta/paragraph@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/paragraph/-/paragraph-4.8.3-rc.0.tgz#525c1f0076604520101e8da1f6d15075a3ff5be1" + integrity sha512-bjD2keq1KZ1XB42HCTl2nrrzAaqCa1nYyQlbh7ch7qTOiRBzDIUdxtNgP6UaalKPrGQi01qgkbykICBvN1xVbA== "@yoopta/paragraph@latest": version "4.7.1-rc.6" @@ -3006,10 +3006,10 @@ slate "^0.102.0" slate-react "^0.102.0" -"@yoopta/table@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/table/-/table-4.8.2.tgz#f5b7bf8bd9f11288fbcd449fdcebdfdb72ee36f5" - integrity sha512-eTt0jhJGo6nytGh/Dukqx/Lb6UA95cMgdmEOQGEbA8MxCzoFO4ZKIRvfu7Plx1zH/gx3TBQZpL1Myw+koP5FmQ== +"@yoopta/table@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/table/-/table-4.8.3-rc.0.tgz#4da27ef8ac8666eb0fe1bcbea13d85200e61f8dc" + integrity sha512-t4+cr/aY2g+Dn0ebDMCMfswwAgGW5Lp4a+YwUOKM9GdJPP1KFZiHhWU3wHs8ABY8i/wU8Jc1eeW91eZXFU8cJQ== dependencies: "@floating-ui/react" "^0.26.22" lucide-react "^0.436.0" @@ -3022,10 +3022,10 @@ "@floating-ui/react" "^0.26.22" lucide-react "^0.436.0" -"@yoopta/toolbar@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/toolbar/-/toolbar-4.8.2.tgz#761cfb12718c2b6d9a4a47a9019a20216bc6d523" - integrity sha512-PEj6sgKXVhCY7b4664K1k67FNEH2s3IdoDvw9I7vJh+M1JeJW1DhS2ELvenNSRAsUounfXb0yO6UAFongiy1+g== +"@yoopta/toolbar@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/toolbar/-/toolbar-4.8.3-rc.0.tgz#7867dc1bba08412743db7cb85719b7e09e102eed" + integrity sha512-D/ynsmLDkcP8uUGI+zqUu/IM+68GnQkdcH8H2HLxh2g72Ccgc5LX/hunmDyHIX0Nd7O4gPwLHeWq+wiMCWaI8Q== dependencies: "@floating-ui/react" "^0.26.9" "@radix-ui/react-icons" "^1.3.0" @@ -3042,10 +3042,10 @@ "@radix-ui/react-toolbar" "^1.0.4" lodash.throttle "^4.1.1" -"@yoopta/video@^4.8.2": - version "4.8.2" - resolved "https://registry.yarnpkg.com/@yoopta/video/-/video-4.8.2.tgz#c9c39a834216afe97a7244e240136807b13a339c" - integrity sha512-9pq/PKNkntnRk4us/5+8gyJDzgF+9z5R8+Cm0IH8SXhpD6TCzP1bgPERVk9xnmGM0pvGYggl+Pteozi66yuFWw== +"@yoopta/video@^4.8.3-rc.0": + version "4.8.3-rc.0" + resolved "https://registry.yarnpkg.com/@yoopta/video/-/video-4.8.3-rc.0.tgz#d61b995001abdc5366358fd9572743361f6aa951" + integrity sha512-FRwfNrljSpXqGgaAIP1Syrz+qkNcTxERRwWXQ9htQ81QFf98r1B7M4ycgSjX1Uk8eOme0DWZchjbFwlmdtnRyw== dependencies: "@floating-ui/react" "^0.26.9" "@radix-ui/react-icons" "^1.3.0"