mirror of
https://github.com/payloadcms/payload.git
synced 2026-09-14 20:07:19 +08:00
refactor(richtext-lexical): upgrade lexical to 0.50.0 (3.x) (#18148)
Upgrades `lexical` and every installed `@lexical/*` package from `0.41.0` to `0.50.0` for Payload 3.x. Updates the dependency pins, lockfile, and `lexicalTargetVersion`. Also exposes the 15 React entry points added on main in [#17554](https://github.com/payloadcms/payload/pull/17554) through `@payloadcms/richtext-lexical/lexical/react/*`, so custom features can use these APIs through Payload. ## Breaking changes **No application changes or data migration are needed when using Payload's built-in rich text features.** If you maintain custom rich text features, check that they still compile and that custom content loads, copies, and pastes correctly. Lexical removed some older APIs, tightened TypeScript types, and changed how custom nodes are loaded and copied. Tests that inspect the editor's HTML may also need updated selectors or snapshots because Lexical adds some internal markup. **Do not install `lexical` or `@lexical/*` yourself for use with Payload.** Remove any direct dependencies you added for the editor and use Payload's re-exports from `@payloadcms/richtext-lexical/lexical` and `@payloadcms/richtext-lexical/lexical/*`. Payload supplies the matching versions; mixing versions can break the editor. This is the existing [custom feature requirement](https://payloadcms.com/docs/rich-text/custom-features). The 3.x Markdown implementation and converter defaults are preserved. This does not backport the v4 Markdown API changes. ## Breaking changes and Payload migrations Reviewed [0.42.0](https://github.com/facebook/lexical/releases/tag/v0.42.0), [0.43.0](https://github.com/facebook/lexical/releases/tag/v0.43.0), [0.44.0](https://github.com/facebook/lexical/releases/tag/v0.44.0), [0.45.0](https://github.com/facebook/lexical/releases/tag/v0.45.0), [0.46.0](https://github.com/facebook/lexical/releases/tag/v0.46.0), [0.47.0](https://github.com/facebook/lexical/releases/tag/v0.47.0), [0.48.0](https://github.com/facebook/lexical/releases/tag/v0.48.0), [0.49.0](https://github.com/facebook/lexical/releases/tag/v0.49.0), [0.50.0](https://github.com/facebook/lexical/releases/tag/v0.50.0). Listed below are breaking API/type changes and behavior changes explicitly identified as breaking in the release notes. Deprecations and routine bug fixes are omitted. **Yes** means we had to change Payload code; **No** means no Payload migration was required. | Release | Breaking change | Required migration in Payload | Changes made | | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | 0.42 | [Experimental `hasFitNestedTables` moves out of the table package into the playground](https://github.com/facebook/lexical/pull/8210). | No | - | | 0.42 | [The deprecated context-menu plugin is removed](https://github.com/facebook/lexical/pull/8199). | Yes | Removed the invalid `LexicalContextMenuPlugin` proxy and package export. Custom consumers must use `@payloadcms/richtext-lexical/lexical/react/LexicalNodeContextMenuPlugin` and adapt to its node-context-menu API. | | 0.43 | [Nested editors delegate asynchronously to their parent](https://github.com/facebook/lexical/pull/8308), restoring the behavior from before 0.42.0. | No | - | | 0.45 | [`$getReconciledDirection` now inherits direction through shadow-root nodes](https://github.com/facebook/lexical/pull/8479). | No | - | | 0.45 | [Backspace at the start of a non-empty block preserves the current block type and formatting](https://github.com/facebook/lexical/pull/8493). | No | - | | 0.45 | [Moving nodes between parents adjusts selection offsets](https://github.com/facebook/lexical/pull/8501). | No | - | | 0.45 | [Markdown shortcuts can trigger when IME composition commits](https://github.com/facebook/lexical/pull/8503). | No | - | | 0.45 | [Rich/plain text automatically removes empty inline elements](https://github.com/facebook/lexical/pull/8497). | No | - | | 0.45 | [Triple-click selection normalization moves from core into rich/plain text registration](https://github.com/facebook/lexical/pull/8520). Editors bypassing that registration must add `NormalizeTripleClickSelectionExtension`. | No | - | | 0.45 | [`DOMSlot` and the DOM rendering override APIs are generalized](https://github.com/facebook/lexical/pull/8519); playground `AutocompleteNode` is replaced by `VisibleLineBreakExtension`. | No | - | | 0.46 | [`static importJSON` widens its parameter to `SerializedLexicalNode & Record<string, unknown>`](https://github.com/payloadcms/payload/pull/17554). Overrides using serialized interfaces can fail TypeScript checks. | No | - | | 0.46 | [Node lookups and traversal no longer infer unchecked subclass types](https://github.com/facebook/lexical/pull/8661). Explicit unchecked traversal generics are deprecated. | Yes | Removed the upload drawer’s assumption that a node lookup returns `UploadNode`. Added `$isUploadNode` before reading or updating upload data. | | 0.46 | [DOM lookups of the editor root return `RootNode` instead of `null`](https://github.com/facebook/lexical/pull/8588). Selection-capture handling is also generalized beyond decorators. | No | - | | 0.46 | [`insertNodes` preserves leading line breaks, and managed line breaks receive a DOM marker](https://github.com/facebook/lexical/pull/8615). | No | - | | 0.46 | [Experimental DOM-import rules register through node extensions](https://github.com/facebook/lexical/pull/8662); the separate per-package import extensions become deprecated aliases. | No | - | | 0.46 | [Experimental named slots change the Yjs sync signature](https://github.com/facebook/lexical/pull/8603): `syncLexicalUpdateToYjsV2__EXPERIMENTAL` gains a `dirtyLeaves` parameter. | No | - | | 0.46 | [Copying an element through `NodeSelection` includes its children](https://github.com/facebook/lexical/pull/8603), instead of copying an empty shell. | No | - | | 0.46 | [Previously deprecated exports are removed](https://github.com/facebook/lexical/pull/8704): `toggleLink`, `insertList`, `removeList`, and ContentEditable’s `Props` alias. Replacements are `$toggleLink`, `$insertList`, `$removeList`, and `ContentEditableProps`. | No | - | | 0.47 | [React 17 support is removed](https://github.com/facebook/lexical/pull/8782); React 18 or later is required. | No | - | | 0.47 | [Segmented text temporarily switches to normal mode during IME composition while keeping its DOM](https://github.com/facebook/lexical/pull/8784). Subclasses must tolerate that temporary mode. | No | - | | 0.49 | [Built-in nodes adopt `$config()`](https://github.com/facebook/lexical/pull/8640). Direct static `importJSON`, `importDOM`, `clone`, and `transform` implementations change; `__type` becomes readonly and automatic node construction needs zero-argument defaults. Custom static implementations remain supported. | No | - | | 0.49 | [`LexicalCommand<T>` checks its payload type more strictly](https://github.com/facebook/lexical/pull/8877). `LexicalCommand<unknown>` is no longer a safe catch-all. | Yes | Focus and blur commands were incorrectly registered with `MouseEvent`. Removed the explicit types so Lexical infers `FocusEvent`. | | 0.50 | [Named-slot values cannot be replaced with `LexicalNode.replace()`](https://github.com/facebook/lexical/pull/8938). Block converters also [skip slot values](https://github.com/facebook/lexical/pull/8905). | No | - | | 0.50 | [Lexical JSON clipboard copying checks `excludeFromCopy('clone')`, not `'html'`](https://github.com/facebook/lexical/pull/8995). | No | - | Also updated the copied table action menu for merged-cell bounds, header toggles, and merge/unmerge selection, and fixed the upload alignment test’s image selector. Formatting and diff checks pass for the upload selector fix. Verified all 15 new entry points through source and published export maps with runtime imports and TypeScript checks. ESLint and formatting checks pass. ## Previous Lexical upgrades - [#15760](https://github.com/payloadcms/payload/pull/15760) — 0.35.0 → 0.41.0 - [#13715](https://github.com/payloadcms/payload/pull/13715) — 0.34.0 → 0.35.0 - [#13622](https://github.com/payloadcms/payload/pull/13622) — 0.28.0 → 0.34.0
This commit is contained in:
@@ -183,11 +183,6 @@
|
||||
"types": "./src/lexical-proxy/@lexical-react/LexicalContentEditable.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/LexicalContentEditable.ts"
|
||||
},
|
||||
"./lexical/react/LexicalContextMenuPlugin": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.ts"
|
||||
},
|
||||
"./lexical/react/LexicalNodeContextMenuPlugin": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/LexicalNodeContextMenuPlugin.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/LexicalNodeContextMenuPlugin.ts",
|
||||
@@ -328,6 +323,81 @@
|
||||
"types": "./src/lexical-proxy/@lexical-react/useLexicalTextEntity.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/useLexicalTextEntity.ts"
|
||||
},
|
||||
"./lexical/react/ExtensionComponent": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/ExtensionComponent.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/ExtensionComponent.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/ExtensionComponent.ts"
|
||||
},
|
||||
"./lexical/react/LexicalExtensionComposer": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/LexicalExtensionComposer.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/LexicalExtensionComposer.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/LexicalExtensionComposer.ts"
|
||||
},
|
||||
"./lexical/react/LexicalExtensionEditorComposer": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.ts"
|
||||
},
|
||||
"./lexical/react/LexicalSelectionAlwaysOnDisplay": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.ts"
|
||||
},
|
||||
"./lexical/react/ReactExtension": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/ReactExtension.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/ReactExtension.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/ReactExtension.ts"
|
||||
},
|
||||
"./lexical/react/ReactPluginHostExtension": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/ReactPluginHostExtension.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/ReactPluginHostExtension.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/ReactPluginHostExtension.ts"
|
||||
},
|
||||
"./lexical/react/ReactProviderExtension": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/ReactProviderExtension.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/ReactProviderExtension.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/ReactProviderExtension.ts"
|
||||
},
|
||||
"./lexical/react/TreeViewExtension": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/TreeViewExtension.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/TreeViewExtension.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/TreeViewExtension.ts"
|
||||
},
|
||||
"./lexical/react/useExtensionComponent": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/useExtensionComponent.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/useExtensionComponent.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/useExtensionComponent.ts"
|
||||
},
|
||||
"./lexical/react/useExtensionSignalValue": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/useExtensionSignalValue.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/useExtensionSignalValue.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/useExtensionSignalValue.ts"
|
||||
},
|
||||
"./lexical/react/useLexicalAriaLiveRegion": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.ts"
|
||||
},
|
||||
"./lexical/react/useLexicalFocusManagerRef": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.ts"
|
||||
},
|
||||
"./lexical/react/useLexicalFocusTrapRef": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.ts"
|
||||
},
|
||||
"./lexical/react/useLexicalRovingTabIndexRef": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.ts"
|
||||
},
|
||||
"./lexical/react/useLexicalSlotRef": {
|
||||
"import": "./src/lexical-proxy/@lexical-react/useLexicalSlotRef.ts",
|
||||
"types": "./src/lexical-proxy/@lexical-react/useLexicalSlotRef.ts",
|
||||
"default": "./src/lexical-proxy/@lexical-react/useLexicalSlotRef.ts"
|
||||
},
|
||||
"./ast/mdx": {
|
||||
"import": "./src/exports/server/ast/mdx.ts",
|
||||
"types": "./src/exports/server/ast/mdx.ts",
|
||||
@@ -372,17 +442,17 @@
|
||||
]
|
||||
},
|
||||
"dependencies": {
|
||||
"@lexical/clipboard": "0.41.0",
|
||||
"@lexical/headless": "0.41.0",
|
||||
"@lexical/html": "0.41.0",
|
||||
"@lexical/link": "0.41.0",
|
||||
"@lexical/list": "0.41.0",
|
||||
"@lexical/mark": "0.41.0",
|
||||
"@lexical/react": "0.41.0",
|
||||
"@lexical/rich-text": "0.41.0",
|
||||
"@lexical/selection": "0.41.0",
|
||||
"@lexical/table": "0.41.0",
|
||||
"@lexical/utils": "0.41.0",
|
||||
"@lexical/clipboard": "0.50.0",
|
||||
"@lexical/headless": "0.50.0",
|
||||
"@lexical/html": "0.50.0",
|
||||
"@lexical/link": "0.50.0",
|
||||
"@lexical/list": "0.50.0",
|
||||
"@lexical/mark": "0.50.0",
|
||||
"@lexical/react": "0.50.0",
|
||||
"@lexical/rich-text": "0.50.0",
|
||||
"@lexical/selection": "0.50.0",
|
||||
"@lexical/table": "0.50.0",
|
||||
"@lexical/utils": "0.50.0",
|
||||
"@payloadcms/translations": "workspace:*",
|
||||
"@payloadcms/ui": "workspace:*",
|
||||
"acorn": "8.16.0",
|
||||
@@ -391,7 +461,7 @@
|
||||
"dequal": "2.0.3",
|
||||
"escape-html": "1.0.3",
|
||||
"jsox": "1.2.121",
|
||||
"lexical": "0.41.0",
|
||||
"lexical": "0.50.0",
|
||||
"mdast-util-from-markdown": "2.0.2",
|
||||
"mdast-util-mdx-jsx": "3.1.3",
|
||||
"micromark-extension-mdx-jsx": "3.0.1",
|
||||
@@ -406,7 +476,7 @@
|
||||
"@babel/preset-env": "7.27.2",
|
||||
"@babel/preset-react": "7.27.1",
|
||||
"@babel/preset-typescript": "7.27.1",
|
||||
"@lexical/eslint-plugin": "0.41.0",
|
||||
"@lexical/eslint-plugin": "0.50.0",
|
||||
"@payloadcms/eslint-config": "workspace:*",
|
||||
"@types/escape-html": "1.0.4",
|
||||
"@types/json-schema": "7.0.15",
|
||||
@@ -593,11 +663,6 @@
|
||||
"types": "./dist/lexical-proxy/@lexical-react/LexicalContentEditable.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/LexicalContentEditable.js"
|
||||
},
|
||||
"./lexical/react/LexicalContextMenuPlugin": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/LexicalContextMenuPlugin.js"
|
||||
},
|
||||
"./lexical/react/LexicalNodeContextMenuPlugin": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/LexicalNodeContextMenuPlugin.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/LexicalNodeContextMenuPlugin.d.ts",
|
||||
@@ -738,6 +803,81 @@
|
||||
"types": "./dist/lexical-proxy/@lexical-react/useLexicalTextEntity.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/useLexicalTextEntity.js"
|
||||
},
|
||||
"./lexical/react/ExtensionComponent": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/ExtensionComponent.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/ExtensionComponent.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/ExtensionComponent.js"
|
||||
},
|
||||
"./lexical/react/LexicalExtensionComposer": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/LexicalExtensionComposer.js"
|
||||
},
|
||||
"./lexical/react/LexicalExtensionEditorComposer": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/LexicalExtensionEditorComposer.js"
|
||||
},
|
||||
"./lexical/react/LexicalSelectionAlwaysOnDisplay": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/LexicalSelectionAlwaysOnDisplay.js"
|
||||
},
|
||||
"./lexical/react/ReactExtension": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/ReactExtension.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/ReactExtension.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/ReactExtension.js"
|
||||
},
|
||||
"./lexical/react/ReactPluginHostExtension": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/ReactPluginHostExtension.js"
|
||||
},
|
||||
"./lexical/react/ReactProviderExtension": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/ReactProviderExtension.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/ReactProviderExtension.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/ReactProviderExtension.js"
|
||||
},
|
||||
"./lexical/react/TreeViewExtension": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/TreeViewExtension.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/TreeViewExtension.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/TreeViewExtension.js"
|
||||
},
|
||||
"./lexical/react/useExtensionComponent": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/useExtensionComponent.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/useExtensionComponent.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/useExtensionComponent.js"
|
||||
},
|
||||
"./lexical/react/useExtensionSignalValue": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/useExtensionSignalValue.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/useExtensionSignalValue.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/useExtensionSignalValue.js"
|
||||
},
|
||||
"./lexical/react/useLexicalAriaLiveRegion": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/useLexicalAriaLiveRegion.js"
|
||||
},
|
||||
"./lexical/react/useLexicalFocusManagerRef": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/useLexicalFocusManagerRef.js"
|
||||
},
|
||||
"./lexical/react/useLexicalFocusTrapRef": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/useLexicalFocusTrapRef.js"
|
||||
},
|
||||
"./lexical/react/useLexicalRovingTabIndexRef": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/useLexicalRovingTabIndexRef.js"
|
||||
},
|
||||
"./lexical/react/useLexicalSlotRef": {
|
||||
"import": "./dist/lexical-proxy/@lexical-react/useLexicalSlotRef.js",
|
||||
"types": "./dist/lexical-proxy/@lexical-react/useLexicalSlotRef.d.ts",
|
||||
"default": "./dist/lexical-proxy/@lexical-react/useLexicalSlotRef.js"
|
||||
},
|
||||
"./ast/mdx": {
|
||||
"import": "./dist/exports/server/ast/mdx.js",
|
||||
"types": "./dist/exports/server/ast/mdx.d.ts",
|
||||
|
||||
+18
@@ -0,0 +1,18 @@
|
||||
import type { TableSelection } from '@lexical/table'
|
||||
|
||||
import { $computeTableCellRectBoundary, $computeTableMap, $getNodeTriplet } from '@lexical/table'
|
||||
|
||||
export function $computeSelectionCount({ selection }: { selection: TableSelection }): {
|
||||
columns: number
|
||||
rows: number
|
||||
} {
|
||||
const [anchorCell, , table] = $getNodeTriplet(selection.anchor)
|
||||
const [focusCell] = $getNodeTriplet(selection.focus)
|
||||
const [map, anchor, focus] = $computeTableMap(table, anchorCell, focusCell)
|
||||
const { maxColumn, maxRow, minColumn, minRow } = $computeTableCellRectBoundary(map, anchor, focus)
|
||||
|
||||
return {
|
||||
columns: maxColumn - minColumn + 1,
|
||||
rows: maxRow - minRow + 1,
|
||||
}
|
||||
}
|
||||
+20
-59
@@ -1,18 +1,17 @@
|
||||
'use client'
|
||||
|
||||
import type { TableObserver, TableSelection } from '@lexical/table'
|
||||
import type { TableObserver } from '@lexical/table'
|
||||
import type { ElementNode } from 'lexical'
|
||||
import type { JSX } from 'react'
|
||||
|
||||
import { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext'
|
||||
import { useLexicalEditable } from '@lexical/react/useLexicalEditable'
|
||||
import {
|
||||
$computeTableMapSkipCellCheck,
|
||||
$computeTableMap,
|
||||
$deleteTableColumnAtSelection,
|
||||
$deleteTableRowAtSelection,
|
||||
$getNodeTriplet,
|
||||
$getTableCellNodeFromLexicalNode,
|
||||
$getTableColumnIndexFromTableCellNode,
|
||||
$getTableNodeFromLexicalNodeOrThrow,
|
||||
$getTableRowIndexFromTableCellNode,
|
||||
$insertTableColumnAtSelection,
|
||||
@@ -20,6 +19,8 @@ import {
|
||||
$isTableCellNode,
|
||||
$isTableSelection,
|
||||
$mergeCells,
|
||||
$setTableColumnIsHeader,
|
||||
$setTableRowIsHeader,
|
||||
$unmergeCell,
|
||||
getTableElement,
|
||||
getTableObserverFromTableElement,
|
||||
@@ -47,17 +48,7 @@ import type { PluginComponentWithAnchor } from '../../../../typesClient.js'
|
||||
|
||||
import './index.scss'
|
||||
import { MeatballsIcon } from '../../../../../lexical/ui/icons/Meatballs/index.js'
|
||||
|
||||
function computeSelectionCount(selection: TableSelection): {
|
||||
columns: number
|
||||
rows: number
|
||||
} {
|
||||
const selectionShape = selection.getShape()
|
||||
return {
|
||||
columns: selectionShape.toX - selectionShape.fromX + 1,
|
||||
rows: selectionShape.toY - selectionShape.fromY + 1,
|
||||
}
|
||||
}
|
||||
import { $computeSelectionCount } from './computeSelectionCount.js'
|
||||
|
||||
function $canUnmerge(): boolean {
|
||||
const selection = $getSelection()
|
||||
@@ -130,10 +121,14 @@ function TableActionMenu({
|
||||
const selection = $getSelection()
|
||||
// Merge cells
|
||||
if ($isTableSelection(selection)) {
|
||||
const currentSelectionCounts = computeSelectionCount(selection)
|
||||
updateSelectionCounts(computeSelectionCount(selection))
|
||||
const currentSelectionCounts = $computeSelectionCount({ selection })
|
||||
updateSelectionCounts(currentSelectionCounts)
|
||||
|
||||
setCanMergeCells(currentSelectionCounts.columns > 1 || currentSelectionCounts.rows > 1)
|
||||
const isCollapsedTableSelection = selection.anchor.is(selection.focus)
|
||||
setCanMergeCells(
|
||||
!isCollapsedTableSelection &&
|
||||
(currentSelectionCounts.columns > 1 || currentSelectionCounts.rows > 1),
|
||||
)
|
||||
}
|
||||
// Unmerge cell
|
||||
setCanUnmergeCell($canUnmerge())
|
||||
@@ -232,6 +227,7 @@ function TableActionMenu({
|
||||
editor.update(() => {
|
||||
$unmergeCell()
|
||||
})
|
||||
clearTableSelection()
|
||||
}
|
||||
|
||||
const insertTableRowAtSelection = useCallback(
|
||||
@@ -286,27 +282,9 @@ function TableActionMenu({
|
||||
editor.update(() => {
|
||||
const tableNode = $getTableNodeFromLexicalNodeOrThrow(tableCellNode)
|
||||
|
||||
const tableRowIndex = $getTableRowIndexFromTableCellNode(tableCellNode)
|
||||
|
||||
const [gridMap] = $computeTableMapSkipCellCheck(tableNode, null, null)
|
||||
|
||||
const rowCells = new Set<TableCellNode>()
|
||||
|
||||
const newStyle = tableCellNode.getHeaderStyles() ^ TableCellHeaderStates.ROW
|
||||
if (gridMap[tableRowIndex]) {
|
||||
for (let col = 0; col < gridMap[tableRowIndex].length; col++) {
|
||||
const mapCell = gridMap[tableRowIndex][col]
|
||||
|
||||
if (!mapCell?.cell) {
|
||||
continue
|
||||
}
|
||||
|
||||
if (!rowCells.has(mapCell.cell)) {
|
||||
rowCells.add(mapCell.cell)
|
||||
mapCell.cell.setHeaderStyles(newStyle, TableCellHeaderStates.ROW)
|
||||
}
|
||||
}
|
||||
}
|
||||
const rowIndex = $getTableRowIndexFromTableCellNode(tableCellNode)
|
||||
const isHeader = !tableCellNode.hasHeaderState(TableCellHeaderStates.ROW)
|
||||
$setTableRowIsHeader(tableNode, rowIndex, isHeader)
|
||||
|
||||
clearTableSelection()
|
||||
onClose()
|
||||
@@ -317,27 +295,10 @@ function TableActionMenu({
|
||||
editor.update(() => {
|
||||
const tableNode = $getTableNodeFromLexicalNodeOrThrow(tableCellNode)
|
||||
|
||||
const tableColumnIndex = $getTableColumnIndexFromTableCellNode(tableCellNode)
|
||||
|
||||
const [gridMap] = $computeTableMapSkipCellCheck(tableNode, null, null)
|
||||
|
||||
const columnCells = new Set<TableCellNode>()
|
||||
|
||||
const newStyle = tableCellNode.getHeaderStyles() ^ TableCellHeaderStates.COLUMN
|
||||
if (gridMap) {
|
||||
for (let row = 0; row < gridMap.length; row++) {
|
||||
const mapCell = gridMap?.[row]?.[tableColumnIndex]
|
||||
|
||||
if (!mapCell?.cell) {
|
||||
continue
|
||||
}
|
||||
|
||||
if (!columnCells.has(mapCell.cell)) {
|
||||
columnCells.add(mapCell.cell)
|
||||
mapCell.cell.setHeaderStyles(newStyle, TableCellHeaderStates.COLUMN)
|
||||
}
|
||||
}
|
||||
}
|
||||
// Merged cells can make the grid column differ from the cell's index in its row.
|
||||
const [, cellMap] = $computeTableMap(tableNode, tableCellNode, tableCellNode)
|
||||
const isHeader = !tableCellNode.hasHeaderState(TableCellHeaderStates.COLUMN)
|
||||
$setTableColumnIsHeader(tableNode, cellMap.startColumn, isHeader)
|
||||
|
||||
clearTableSelection()
|
||||
onClose()
|
||||
|
||||
@@ -141,7 +141,9 @@ export function useToolbarStates(
|
||||
useEffect(() => {
|
||||
void runDeprioritized(updateStates)
|
||||
|
||||
const listener = () => runDeprioritized(updateStates)
|
||||
const listener = () => {
|
||||
void runDeprioritized(updateStates)
|
||||
}
|
||||
|
||||
const cleanup = mergeRegister(editor.registerUpdateListener(listener))
|
||||
document.addEventListener('mouseup', listener)
|
||||
|
||||
@@ -20,13 +20,13 @@ import React, { useCallback, useId, useReducer, useRef, useState } from 'react'
|
||||
import type { BaseClientFeatureProps } from '../../../typesClient.js'
|
||||
import type { UploadData } from '../../server/nodes/UploadNode.js'
|
||||
import type { UploadFeaturePropsClient } from '../index.js'
|
||||
import type { UploadNode } from '../nodes/UploadNode.js'
|
||||
|
||||
import { useEditorConfigContext } from '../../../../lexical/config/client/EditorConfigProvider.js'
|
||||
import { FieldsDrawer } from '../../../../utilities/fieldsDrawer/Drawer.js'
|
||||
import { useLexicalDocumentDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDocumentDrawer.js'
|
||||
import { useLexicalDrawer } from '../../../../utilities/fieldsDrawer/useLexicalDrawer.js'
|
||||
import { INSERT_UPLOAD_WITH_DRAWER_COMMAND } from '../drawer/commands.js'
|
||||
import { $isUploadNode } from '../nodes/UploadNode.js'
|
||||
import './index.scss'
|
||||
|
||||
const initialParams = {
|
||||
@@ -128,8 +128,8 @@ export const UploadComponent: React.FC<ElementProps> = (props) => {
|
||||
(_: FormState, data: JsonObject) => {
|
||||
// Update lexical node (with key nodeKey) with new data
|
||||
editor.update(() => {
|
||||
const uploadNode: null | UploadNode = $getNodeByKey(nodeKey)
|
||||
if (uploadNode) {
|
||||
const uploadNode = $getNodeByKey(nodeKey)
|
||||
if ($isUploadNode(uploadNode)) {
|
||||
const newData: UploadData = {
|
||||
...uploadNode.getData(),
|
||||
fields: data,
|
||||
|
||||
@@ -28,7 +28,7 @@ import { richTextValidateHOC } from './validate/index.js'
|
||||
|
||||
let checkedDependencies = false
|
||||
|
||||
export const lexicalTargetVersion = '0.41.0'
|
||||
export const lexicalTargetVersion = '0.50.0'
|
||||
|
||||
export function lexicalEditor(args?: LexicalEditorProps): LexicalRichTextAdapterProvider {
|
||||
if (
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/ExtensionComponent'
|
||||
-1
@@ -1 +0,0 @@
|
||||
export * from '@lexical/react/LexicalContextMenuPlugin'
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/LexicalExtensionComposer'
|
||||
+1
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/LexicalExtensionEditorComposer'
|
||||
+1
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/LexicalSelectionAlwaysOnDisplay'
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/ReactExtension'
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/ReactPluginHostExtension'
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/ReactProviderExtension'
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/TreeViewExtension'
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/useExtensionComponent'
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/useExtensionSignalValue'
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/useLexicalAriaLiveRegion'
|
||||
+1
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/useLexicalFocusManagerRef'
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/useLexicalFocusTrapRef'
|
||||
+1
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/useLexicalRovingTabIndexRef'
|
||||
@@ -0,0 +1 @@
|
||||
export * from '@lexical/react/useLexicalSlotRef'
|
||||
@@ -62,7 +62,7 @@ export const LexicalEditor: React.FC<
|
||||
editorConfigContext.blurEditor(editorConfigContext)
|
||||
}
|
||||
|
||||
const unregisterFocus = editor.registerCommand<MouseEvent>(
|
||||
const unregisterFocus = editor.registerCommand(
|
||||
FOCUS_COMMAND,
|
||||
() => {
|
||||
handleFocus()
|
||||
@@ -71,7 +71,7 @@ export const LexicalEditor: React.FC<
|
||||
COMMAND_PRIORITY_LOW,
|
||||
)
|
||||
|
||||
const unregisterBlur = editor.registerCommand<MouseEvent>(
|
||||
const unregisterBlur = editor.registerCommand(
|
||||
BLUR_COMMAND,
|
||||
() => {
|
||||
handleBlur()
|
||||
|
||||
Generated
+425
-227
@@ -1380,38 +1380,38 @@ importers:
|
||||
specifier: 2.0.0
|
||||
version: 2.0.0(react-dom@19.2.6(react@19.2.6))(react@19.2.6)
|
||||
'@lexical/clipboard':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(typescript@5.7.3)
|
||||
'@lexical/headless':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0(bufferutil@4.1.0)
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(bufferutil@4.1.0)(typescript@5.7.3)
|
||||
'@lexical/html':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(typescript@5.7.3)
|
||||
'@lexical/link':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(typescript@5.7.3)
|
||||
'@lexical/list':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(typescript@5.7.3)
|
||||
'@lexical/mark':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(typescript@5.7.3)
|
||||
'@lexical/react':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0(react-dom@19.2.6(react@19.2.6))(react@19.2.6)(yjs@13.6.31)
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(react-dom@19.2.6(react@19.2.6))(react@19.2.6)(typescript@5.7.3)(yjs@13.6.31)
|
||||
'@lexical/rich-text':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(typescript@5.7.3)
|
||||
'@lexical/selection':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(typescript@5.7.3)
|
||||
'@lexical/table':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(typescript@5.7.3)
|
||||
'@payloadcms/next':
|
||||
specifier: workspace:*
|
||||
version: link:../next
|
||||
@@ -1440,8 +1440,8 @@ importers:
|
||||
specifier: 1.2.121
|
||||
version: 1.2.121
|
||||
lexical:
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(typescript@5.7.3)
|
||||
mdast-util-from-markdown:
|
||||
specifier: 2.0.2
|
||||
version: 2.0.2
|
||||
@@ -1486,8 +1486,8 @@ importers:
|
||||
specifier: 7.27.1
|
||||
version: 7.27.1(@babel/core@7.27.3)
|
||||
'@lexical/eslint-plugin':
|
||||
specifier: 0.41.0
|
||||
version: 0.41.0(eslint@9.39.2(jiti@2.7.0))
|
||||
specifier: 0.50.0
|
||||
version: 0.50.0(eslint@9.39.2(jiti@2.7.0))(typescript@5.7.3)
|
||||
'@payloadcms/eslint-config':
|
||||
specifier: workspace:*
|
||||
version: link:../eslint-config
|
||||
@@ -5578,87 +5578,214 @@ packages:
|
||||
'@keyv/serialize@1.1.1':
|
||||
resolution: {integrity: sha512-dXn3FZhPv0US+7dtJsIi2R+c7qWYiReoEh5zUntWCf4oSpMNib8FDhSoed6m3QyZdx5hK7iLFkYk3rNxwt8vTA==}
|
||||
|
||||
'@lexical/clipboard@0.41.0':
|
||||
resolution: {integrity: sha512-Ex5lPkb4NBBX1DCPzOAIeHBJFH1bJcmATjREaqpnTfxCbuOeQkt44wchezUA0oDl+iAxNZ3+pLLWiUju9icoSA==}
|
||||
'@lexical/a11y@0.50.0':
|
||||
resolution: {integrity: sha512-qxEe+ZOeti/jueuVTx0fNc0GO8aD6OOBLP6z48VP2ACJkEW+jI15bidI9rfT+FHpDnmWCmYChHUiVL477q6JeQ==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/code@0.41.0':
|
||||
resolution: {integrity: sha512-0hoNi1KC9/N3SBOGcOcFqnT0OpwmcRRAhfxTKMGqfCtCvAMzULVwZ8RWc9/NV9bKYESgBTW5D9xkDANP2mspHg==}
|
||||
'@lexical/clipboard@0.50.0':
|
||||
resolution: {integrity: sha512-Sb+bDluH0JZNRrSURIfry2ZwdkQPTSRMtpV6XHRRKMFh86o4KcR9PMbfSdaGxZOHctHNabTp0JRmkpt/zrItjQ==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/devtools-core@0.41.0':
|
||||
resolution: {integrity: sha512-FzJtluBhBc8bKS11TUZe72KoZN/hnzIyiiM0SPJAsPwGpoXuM01jqpXQGybWf/1bWB+bmmhOae7O4Nywi/Csuw==}
|
||||
'@lexical/code-core@0.50.0':
|
||||
resolution: {integrity: sha512-0KPTDmcPL/4ObLy5N/yFo+t6l/bHE63NODPOsyUN1NACc62i0Pc8NXGwo4xhaLcpgIRDiN1ABZ+h3AVLp5GlWQ==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/devtools-core@0.50.0':
|
||||
resolution: {integrity: sha512-70m994RIZ5sdYjtGEHTo6nIOkUddaWVVl920WGWR0zqNblxYmFuDQAsMgz6nJmA9TNbCbLLufFi5RMPwnBVVOA==}
|
||||
peerDependencies:
|
||||
react: 19.2.6
|
||||
react-dom: 19.2.6
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/dragon@0.41.0':
|
||||
resolution: {integrity: sha512-gBEqkk8Q6ZPruvDaRcOdF1EK9suCVBODzOCcR+EnoJTaTjfDkCM7pkPAm4w90Wa1wCZEtFHvCfas+jU9MDSumg==}
|
||||
|
||||
'@lexical/eslint-plugin@0.41.0':
|
||||
resolution: {integrity: sha512-6nxniBiMd1jQJi44Aw/VZyufWrl1rvzcm3Ey0eQTVxKn/SFzTtLO0AmxjjFdvcA/amWL0A8p+rpdAax5NpzQ9A==}
|
||||
'@lexical/dragon@0.50.0':
|
||||
resolution: {integrity: sha512-JX+uzkRn4QLIljS6bWS93Vg1TYIohTP7TXP2mUz6RrxW+x8iqzJuaAR8tjN4SkpCTxI8VpBNWFU8d6B7I9qnXg==}
|
||||
peerDependencies:
|
||||
eslint: '>=7.31.0 || ^8.0.0'
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/extension@0.41.0':
|
||||
resolution: {integrity: sha512-sF4SPiP72yXvIGchmmIZ7Yg2XZTxNLOpFEIIzdqG7X/1fa1Ham9P/T7VbrblWpF6Ei5LJtK9JgNVB0hb4l3o1g==}
|
||||
'@lexical/eslint-plugin@0.50.0':
|
||||
resolution: {integrity: sha512-PfQR9zSoUTLU//65tKmtA5wrkezgyksmBJIBaCTXpB5ohcWYH1ISF2YtKO0gmMbNYTl5/bA38NugumtP6KZacA==}
|
||||
peerDependencies:
|
||||
eslint: '>=7.31.0'
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/hashtag@0.41.0':
|
||||
resolution: {integrity: sha512-tFWM74RW4KU0E/sj2aowfWl26vmLUTp331CgVESnhQKcZBfT40KJYd57HEqBDTfQKn4MUhylQCCA0hbpw6EeFQ==}
|
||||
'@lexical/extension@0.50.0':
|
||||
resolution: {integrity: sha512-iktLl+eLOVT6hE4BOy2GIQeuIOmsksWoPDT9WhEkIlV5IEM/OBLGAzO23Q2G0UV89tXDq1wKa4p6vwLWlCHWLA==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/headless@0.41.0':
|
||||
resolution: {integrity: sha512-MH8oDuUKdM/Jq0c9vlEEkCL9pEQg4SwyrABBGIbFf+87VBJ5EWDdG9g1vJq7fKSDxfhFux7F5+i+zgUnxOQR/g==}
|
||||
'@lexical/hashtag@0.50.0':
|
||||
resolution: {integrity: sha512-KnkJU+49HV47KrgCoS+zqUQuTZ/e5CtH7ttu0ZgAcZJyNojZ7kHbqtdiH78kZSuqBknD75l+VCNJBpg6ShdtlQ==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/history@0.41.0':
|
||||
resolution: {integrity: sha512-kGoVWsiOn62+RMjRolRa+NXZl8jFwxav6GNDiHH8yzivtoaH8n1SwUfLJELXCzeqzs81HySqD4q30VLJVTGoDg==}
|
||||
'@lexical/headless@0.50.0':
|
||||
resolution: {integrity: sha512-UkJsks5yNZFiBvlr1SM6M6n4D66Tayj7R3ylxpaL/gXbKgOCMUz06Q57QhMIRqaSGGiSIrzZw1Ge5WZE70imGg==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/html@0.41.0':
|
||||
resolution: {integrity: sha512-3RyZy+H/IDKz2D66rNN/NqYx87xVFrngfEbyu1OWtbY963RUFnopiVHCQvsge/8kT04QSZ7U/DzjVFqeNS6clg==}
|
||||
'@lexical/history@0.50.0':
|
||||
resolution: {integrity: sha512-UMbvTWOHxfS3SQA0oWN8uvmG64WrFgurojM1KoYjxuUbPFGjumD6al5zsA06d6+TkCDSw6l639tJ43bFr3HE5A==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/link@0.41.0':
|
||||
resolution: {integrity: sha512-Rjtx5cGWAkKcnacncbVsZ1TqRnUB2Wm4eEVKpaAEG41+kHgqghzM2P+UGT15yROroxJu8KvAC9ISiYFiU4XE1w==}
|
||||
'@lexical/html@0.50.0':
|
||||
resolution: {integrity: sha512-vMdMWvOyD9EXljNCJk3thms/WEBMUR0rLLaJdzcOk/CwUiAv1KPopGp/8vW0zFmnu42n5i9ufERv0BZ/UGzZMw==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/list@0.41.0':
|
||||
resolution: {integrity: sha512-RXvB+xcbzVoQLGRDOBRCacztG7V+bI95tdoTwl8pz5xvgPtAaRnkZWMDP+yMNzMJZsqEChdtpxbf0NgtMkun6g==}
|
||||
'@lexical/internal@0.50.0':
|
||||
resolution: {integrity: sha512-FGfEKY1L1aIHEh/O+RcRxeLRQV0g95MuU5b26YuzGGyd0IX90pliK9bVph54OaqDdS1AQ0MEVEFGXfSXaGJzxg==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/mark@0.41.0':
|
||||
resolution: {integrity: sha512-UO5WVs9uJAYIKHSlYh4Z1gHrBBchTOi21UCYBIZ7eAs4suK84hPzD+3/LAX5CB7ZltL6ke5Sly3FOwNXv/wfpA==}
|
||||
'@lexical/link@0.50.0':
|
||||
resolution: {integrity: sha512-J/Wn7+XzW3Tm56RKCaHeISPIRJrWaSywGasna7yaMwvZykTM9JS5D/bzPCg0pCCxw8qsPeRX29oDQ+nUEixmUA==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/markdown@0.41.0':
|
||||
resolution: {integrity: sha512-bzI73JMXpjGFhqUWNV6KqfjWcgAWzwFT+J3RHtbCF5rysC8HLldBYojOgAAtPfXqfxyv2mDzsY7SoJ75s9uHZA==}
|
||||
'@lexical/list@0.50.0':
|
||||
resolution: {integrity: sha512-eSGU10DUqS+seXkGfTVGJ475M4scdaDE15Vk52nuYODhi0lbO6zNbIoDDGKxaxvzs/CfrHHT3AUGYmruIp/LPw==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/offset@0.41.0':
|
||||
resolution: {integrity: sha512-2RHBXZqC8gm3X9C0AyRb0M8w7zJu5dKiasrif+jSKzsxPjAUeF1m95OtIOsWs1XLNUgASOSUqGovDZxKJslZfA==}
|
||||
'@lexical/mark@0.50.0':
|
||||
resolution: {integrity: sha512-FClGXbLzEHFX0hJRslXb/YdO5xSZLMuPOj9skRoA3fwbWRLsBhfaIYSEz+7pjMF4P8fFqW2vPCFHvgJD+SgYXw==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/overflow@0.41.0':
|
||||
resolution: {integrity: sha512-Iy6ZiJip8X14EBYt1zKPOrXyQ4eG9JLBEoPoSVBTiSbVd+lYicdUvaOThT0k0/qeVTN9nqTaEltBjm56IrVKCQ==}
|
||||
'@lexical/markdown@0.50.0':
|
||||
resolution: {integrity: sha512-H2z7Eed7sVCX+K/UmULqPCpkB5Ch86+/vRHs+VCe7xmDkvBRYZQmErUqx14cV7QwcrQ+wclcDlCojJTUh5MBOQ==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/plain-text@0.41.0':
|
||||
resolution: {integrity: sha512-HIsGgmFUYRUNNyvckun33UQfU7LRzDlxymHUq67+Bxd5bXqdZOrStEKJXuDX+LuLh/GXZbaWNbDLqwLBObfbQg==}
|
||||
'@lexical/overflow@0.50.0':
|
||||
resolution: {integrity: sha512-jeBFFaViAWxg+i7UKoWxN+VImvwNXq9fuRUMEMXFZqfWhgsC37/NvUOMF4oNVf3mppTMsv38n2y1qR51JLujcQ==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/react@0.41.0':
|
||||
resolution: {integrity: sha512-7+GUdZUm6sofWm+zdsWAs6cFBwKNsvsHezZTrf6k8jrZxL461ZQmbz/16b4DvjCGL9r5P1fR7md9/LCmk8TiCg==}
|
||||
'@lexical/plain-text@0.50.0':
|
||||
resolution: {integrity: sha512-X1iH6yamtE6PZRlUB4T2epUOzKA19ONozWja3A87mlXEDVhCM7hxeDFzxzWnbqY1/TWsyy8ZCaFktz8GRzTFvw==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/react@0.50.0':
|
||||
resolution: {integrity: sha512-q9USUeO5tunqPmxDG9D11kydRts5jgXO1WJ62u86WXeHOGjMtSjvVwLY+PfQDhCn0aNYF7XvGaIM3Aa04UxF7A==}
|
||||
peerDependencies:
|
||||
react: 19.2.6
|
||||
react-dom: 19.2.6
|
||||
typescript: 5.7.3
|
||||
yjs: '>=13.5.37'
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
yjs:
|
||||
optional: true
|
||||
|
||||
'@lexical/rich-text@0.41.0':
|
||||
resolution: {integrity: sha512-yUcr7ZaaVTZNi8bow4CK1M8jy2qyyls1Vr+5dVjwBclVShOL/F/nFyzBOSb6RtXXRbd3Ahuk9fEleppX/RNIdw==}
|
||||
|
||||
'@lexical/selection@0.41.0':
|
||||
resolution: {integrity: sha512-1s7/kNyRzcv5uaTwsUL28NpiisqTf5xZ1zNukLsCN1xY+TWbv9RE9OxIv+748wMm4pxNczQe/UbIBODkbeknLw==}
|
||||
|
||||
'@lexical/table@0.41.0':
|
||||
resolution: {integrity: sha512-d3SPThBAr+oZ8O74TXU0iXM3rLbrAVC7/HcOnSAq7/AhWQW8yMutT51JQGN+0fMLP9kqoWSAojNtkdvzXfU/+A==}
|
||||
|
||||
'@lexical/text@0.41.0':
|
||||
resolution: {integrity: sha512-gGA+Anc7ck110EXo4KVKtq6Ui3M7Vz3OpGJ4QE6zJHWW8nV5h273koUGSutAMeoZgRVb6t01Izh3ORoFt/j1CA==}
|
||||
|
||||
'@lexical/utils@0.41.0':
|
||||
resolution: {integrity: sha512-Wlsokr5NQCq83D+7kxZ9qs5yQ3dU3Qaf2M+uXxLRoPoDaXqW8xTWZq1+ZFoEzsHzx06QoPa4Vu/40BZR91uQPg==}
|
||||
|
||||
'@lexical/yjs@0.41.0':
|
||||
resolution: {integrity: sha512-PaKTxSbVC4fpqUjQ7vUL9RkNF1PjL8TFl5jRe03PqoPYpE33buf3VXX6+cOUEfv9+uknSqLCPHoBS/4jN3a97w==}
|
||||
'@lexical/rich-text@0.50.0':
|
||||
resolution: {integrity: sha512-4EDspglulL6zHlV53Azsq4OduRunJqyrDkldZ8ekrE8ujHhvu2UB3Utzq98Z8TSIllFPvNKmW0Qp/9lJ7378Ag==}
|
||||
peerDependencies:
|
||||
yjs: '>=13.5.22'
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/selection@0.50.0':
|
||||
resolution: {integrity: sha512-Lu4W+Ht7xd3+R8fXorzsl1LbDMF7UALgvh0LA/nbY5qlmozEyfHr1z4oaV4HAzXN5F8NxSrxCfDEXt5EHU1bfA==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/table@0.50.0':
|
||||
resolution: {integrity: sha512-K5GDw8oIsujL8IQY9L5PJXxkODs0c9gqL1CROcfLw7kE4icNXeIVrK/kQ7K3SxQ/stpb5NnBLERTK9ohzPEuLQ==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/text@0.50.0':
|
||||
resolution: {integrity: sha512-K2bf6NfzS+PutNrrNlWr47kZx34fCYyiX1vPT4a1/sob8LsGrYwy9mseyFFlNYDlWSP2U/xIKLv2JuaYZX8ohw==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/utils@0.50.0':
|
||||
resolution: {integrity: sha512-iFEKYQufeCtx9I918SteutyMkEKlR6VNldovnCE2ue9ilfKMnj8ghhenMaLzRfslzttvMLrn8d9DP5TWysZqZw==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@lexical/yjs@0.50.0':
|
||||
resolution: {integrity: sha512-AfKaHZs0IpHDUS1uoB7yWbhP1VRVWuUbHZ3HnNI2bqhn0h05SWfxxwt/QCwaldLM0WzY9wszpQc8VFSHipjldA==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
yjs: '>=13.5.37'
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
'@libsql/client@0.14.0':
|
||||
resolution: {integrity: sha512-/9HEKfn6fwXB5aTEEoMeFh4CtG0ZzbncBb1e++OCdVpgKZ/xyMsIVYXm0w7Pv4RUel803vE6LwniB3PqD72R0Q==}
|
||||
@@ -11802,8 +11929,13 @@ packages:
|
||||
resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
|
||||
engines: {node: '>= 0.8.0'}
|
||||
|
||||
lexical@0.41.0:
|
||||
resolution: {integrity: sha512-pNIm5+n+hVnJHB9gYPDYsIO5Y59dNaDU9rJmPPsfqQhP2ojKFnUoPbcRnrI9FJLXB14sSumcY8LUw7Sq70TZqA==}
|
||||
lexical@0.50.0:
|
||||
resolution: {integrity: sha512-m/uySKGi66CEjCjIvmMeLjLgMnckCKAQn1ynFGj+YJfjlr6KtkodH/dpFL+hdLDqqEZHhR75EP64J96MNIMwDw==}
|
||||
peerDependencies:
|
||||
typescript: 5.7.3
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
|
||||
lib0@0.2.117:
|
||||
resolution: {integrity: sha512-DeXj9X5xDCjgKLU/7RR+/HQEVzuuEUiwldwOGsHK/sfAfELGWEyTcf0x+uOvCvK3O2zPmZePXWL85vtia6GyZw==}
|
||||
@@ -13072,10 +13204,6 @@ packages:
|
||||
peerDependencies:
|
||||
react: 19.2.6
|
||||
|
||||
prismjs@1.30.0:
|
||||
resolution: {integrity: sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==}
|
||||
engines: {node: '>=6'}
|
||||
|
||||
proc-log@6.1.0:
|
||||
resolution: {integrity: sha512-iG+GYldRf2BQ0UDUAd6JQ/RwzaQy6mXmsk/IzlYyal4A4SNFw54MeH4/tLkF4I5WoWG9SQwuqWzS99jaFQHBuQ==}
|
||||
engines: {node: ^20.17.0 || >=22.9.0}
|
||||
@@ -13174,11 +13302,6 @@ packages:
|
||||
peerDependencies:
|
||||
react: 19.2.6
|
||||
|
||||
react-error-boundary@6.1.2:
|
||||
resolution: {integrity: sha512-3DpCr5HVdZ0caUjYE/kIHBEJN0mNP3ZCgf16c48uJ5TbWjorKVp+YG8W3XqlJ7vJAVNw6wNIImyPXmFydwmyng==}
|
||||
peerDependencies:
|
||||
react: 19.2.6
|
||||
|
||||
react-hook-form@7.71.1:
|
||||
resolution: {integrity: sha512-9SUJKCGKo8HUSsCO+y0CtqkqI5nNuaDqTxyqPsZPqIwudpj4rCrAz/jZV+jn57bx5gtZKOh3neQu94DXMc+w5w==}
|
||||
engines: {node: '>=18.0.0'}
|
||||
@@ -18314,177 +18437,255 @@ snapshots:
|
||||
|
||||
'@keyv/serialize@1.1.1': {}
|
||||
|
||||
'@lexical/clipboard@0.41.0':
|
||||
'@lexical/a11y@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/html': 0.41.0
|
||||
'@lexical/list': 0.41.0
|
||||
'@lexical/selection': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/code@0.41.0':
|
||||
'@lexical/clipboard@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
prismjs: 1.30.0
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/html': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/list': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/selection': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
'@types/trusted-types': 2.0.7
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/devtools-core@0.41.0(react-dom@19.2.6(react@19.2.6))(react@19.2.6)':
|
||||
'@lexical/code-core@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/html': 0.41.0
|
||||
'@lexical/link': 0.41.0
|
||||
'@lexical/mark': 0.41.0
|
||||
'@lexical/table': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/html': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/devtools-core@0.50.0(react-dom@19.2.6(react@19.2.6))(react@19.2.6)(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/html': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/link': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/mark': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/table': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
react: 19.2.6
|
||||
react-dom: 19.2.6(react@19.2.6)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/dragon@0.41.0':
|
||||
'@lexical/dragon@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/extension': 0.41.0
|
||||
lexical: 0.41.0
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/eslint-plugin@0.41.0(eslint@9.39.2(jiti@2.7.0))':
|
||||
'@lexical/eslint-plugin@0.50.0(eslint@9.39.2(jiti@2.7.0))(typescript@5.7.3)':
|
||||
dependencies:
|
||||
eslint: 9.39.2(jiti@2.7.0)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/extension@0.41.0':
|
||||
'@lexical/extension@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/utils': 0.41.0
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
'@preact/signals-core': 1.14.2
|
||||
lexical: 0.41.0
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/hashtag@0.41.0':
|
||||
'@lexical/hashtag@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/text': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
'@lexical/text': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/headless@0.41.0(bufferutil@4.1.0)':
|
||||
'@lexical/headless@0.50.0(bufferutil@4.1.0)(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
happy-dom: 20.9.0(bufferutil@4.1.0)
|
||||
lexical: 0.41.0
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
transitivePeerDependencies:
|
||||
- bufferutil
|
||||
- utf-8-validate
|
||||
|
||||
'@lexical/history@0.41.0':
|
||||
'@lexical/history@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/extension': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/html@0.41.0':
|
||||
'@lexical/html@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/selection': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/selection': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/link@0.41.0':
|
||||
'@lexical/internal@0.50.0(typescript@5.7.3)':
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/link@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/extension': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
'@lexical/a11y': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/html': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/list@0.41.0':
|
||||
'@lexical/list@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/extension': 0.41.0
|
||||
'@lexical/selection': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/html': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/mark@0.41.0':
|
||||
'@lexical/mark@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/markdown@0.41.0':
|
||||
'@lexical/markdown@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/code': 0.41.0
|
||||
'@lexical/link': 0.41.0
|
||||
'@lexical/list': 0.41.0
|
||||
'@lexical/rich-text': 0.41.0
|
||||
'@lexical/text': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
'@lexical/code-core': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/link': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/list': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/rich-text': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/selection': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/text': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/offset@0.41.0':
|
||||
'@lexical/overflow@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
lexical: 0.41.0
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/overflow@0.41.0':
|
||||
'@lexical/plain-text@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
lexical: 0.41.0
|
||||
'@lexical/clipboard': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/dragon': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/selection': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/plain-text@0.41.0':
|
||||
dependencies:
|
||||
'@lexical/clipboard': 0.41.0
|
||||
'@lexical/dragon': 0.41.0
|
||||
'@lexical/selection': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
|
||||
'@lexical/react@0.41.0(react-dom@19.2.6(react@19.2.6))(react@19.2.6)(yjs@13.6.31)':
|
||||
'@lexical/react@0.50.0(react-dom@19.2.6(react@19.2.6))(react@19.2.6)(typescript@5.7.3)(yjs@13.6.31)':
|
||||
dependencies:
|
||||
'@floating-ui/react': 0.27.19(react-dom@19.2.6(react@19.2.6))(react@19.2.6)
|
||||
'@lexical/devtools-core': 0.41.0(react-dom@19.2.6(react@19.2.6))(react@19.2.6)
|
||||
'@lexical/dragon': 0.41.0
|
||||
'@lexical/extension': 0.41.0
|
||||
'@lexical/hashtag': 0.41.0
|
||||
'@lexical/history': 0.41.0
|
||||
'@lexical/link': 0.41.0
|
||||
'@lexical/list': 0.41.0
|
||||
'@lexical/mark': 0.41.0
|
||||
'@lexical/markdown': 0.41.0
|
||||
'@lexical/overflow': 0.41.0
|
||||
'@lexical/plain-text': 0.41.0
|
||||
'@lexical/rich-text': 0.41.0
|
||||
'@lexical/table': 0.41.0
|
||||
'@lexical/text': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
'@lexical/yjs': 0.41.0(yjs@13.6.31)
|
||||
lexical: 0.41.0
|
||||
'@lexical/a11y': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/devtools-core': 0.50.0(react-dom@19.2.6(react@19.2.6))(react@19.2.6)(typescript@5.7.3)
|
||||
'@lexical/dragon': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/hashtag': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/history': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/link': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/list': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/mark': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/markdown': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/overflow': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/plain-text': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/rich-text': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/table': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/text': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/yjs': 0.50.0(typescript@5.7.3)(yjs@13.6.31)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
react: 19.2.6
|
||||
react-dom: 19.2.6(react@19.2.6)
|
||||
react-error-boundary: 6.1.2(react@19.2.6)
|
||||
transitivePeerDependencies:
|
||||
- yjs
|
||||
|
||||
'@lexical/rich-text@0.41.0':
|
||||
dependencies:
|
||||
'@lexical/clipboard': 0.41.0
|
||||
'@lexical/dragon': 0.41.0
|
||||
'@lexical/selection': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
|
||||
'@lexical/selection@0.41.0':
|
||||
dependencies:
|
||||
lexical: 0.41.0
|
||||
|
||||
'@lexical/table@0.41.0':
|
||||
dependencies:
|
||||
'@lexical/clipboard': 0.41.0
|
||||
'@lexical/extension': 0.41.0
|
||||
'@lexical/utils': 0.41.0
|
||||
lexical: 0.41.0
|
||||
|
||||
'@lexical/text@0.41.0':
|
||||
dependencies:
|
||||
lexical: 0.41.0
|
||||
|
||||
'@lexical/utils@0.41.0':
|
||||
dependencies:
|
||||
'@lexical/selection': 0.41.0
|
||||
lexical: 0.41.0
|
||||
|
||||
'@lexical/yjs@0.41.0(yjs@13.6.31)':
|
||||
dependencies:
|
||||
'@lexical/offset': 0.41.0
|
||||
'@lexical/selection': 0.41.0
|
||||
lexical: 0.41.0
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
yjs: 13.6.31
|
||||
|
||||
'@lexical/rich-text@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/a11y': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/clipboard': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/dragon': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/html': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/selection': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/selection@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/table@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/clipboard': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/extension': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/html': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/utils': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/text@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/utils@0.50.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/selection': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@lexical/yjs@0.50.0(typescript@5.7.3)(yjs@13.6.31)':
|
||||
dependencies:
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
'@lexical/selection': 0.50.0(typescript@5.7.3)
|
||||
lexical: 0.50.0(typescript@5.7.3)
|
||||
yjs: 13.6.31
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
'@libsql/client@0.14.0(bufferutil@4.1.0)':
|
||||
dependencies:
|
||||
'@libsql/core': 0.14.0
|
||||
@@ -21381,8 +21582,7 @@ snapshots:
|
||||
|
||||
'@types/tough-cookie@4.0.5': {}
|
||||
|
||||
'@types/trusted-types@2.0.7':
|
||||
optional: true
|
||||
'@types/trusted-types@2.0.7': {}
|
||||
|
||||
'@types/unist@2.0.11': {}
|
||||
|
||||
@@ -25480,7 +25680,11 @@ snapshots:
|
||||
prelude-ls: 1.2.1
|
||||
type-check: 0.4.0
|
||||
|
||||
lexical@0.41.0: {}
|
||||
lexical@0.50.0(typescript@5.7.3):
|
||||
dependencies:
|
||||
'@lexical/internal': 0.50.0(typescript@5.7.3)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
|
||||
lib0@0.2.117:
|
||||
dependencies:
|
||||
@@ -26982,8 +27186,6 @@ snapshots:
|
||||
clsx: 2.1.1
|
||||
react: 19.2.6
|
||||
|
||||
prismjs@1.30.0: {}
|
||||
|
||||
proc-log@6.1.0: {}
|
||||
|
||||
process-nextick-args@2.0.1: {}
|
||||
@@ -27078,10 +27280,6 @@ snapshots:
|
||||
'@babel/runtime': 7.29.7
|
||||
react: 19.2.6
|
||||
|
||||
react-error-boundary@6.1.2(react@19.2.6):
|
||||
dependencies:
|
||||
react: 19.2.6
|
||||
|
||||
react-hook-form@7.71.1(react@19.2.6):
|
||||
dependencies:
|
||||
react: 19.2.6
|
||||
|
||||
@@ -73,7 +73,7 @@ describe('Lexical Fully Featured', () => {
|
||||
await lexical.drawer.locator('.file-field__remote-file').fill(url)
|
||||
await lexical.drawer.getByText('Add file').click()
|
||||
await lexical.save('drawer')
|
||||
const img = lexical.editor.locator('img').first()
|
||||
const img = lexical.editor.locator('.LexicalEditorTheme__upload img').first()
|
||||
await img.click()
|
||||
const imgBoxBeforeCenter = await img.boundingBox()
|
||||
await expect(() => {
|
||||
|
||||
Reference in New Issue
Block a user