@liveblocks/react-lexical 1.12.0-lexical3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/active-selection.js +143 -0
- package/dist/active-selection.js.map +1 -0
- package/dist/active-selection.mjs +123 -0
- package/dist/active-selection.mjs.map +1 -0
- package/dist/comments/ThreadPanel.js +26 -0
- package/dist/comments/ThreadPanel.js.map +1 -0
- package/dist/comments/ThreadPanel.mjs +24 -0
- package/dist/comments/ThreadPanel.mjs.map +1 -0
- package/dist/comments/comment-plugin-provider.js +322 -0
- package/dist/comments/comment-plugin-provider.js.map +1 -0
- package/dist/comments/comment-plugin-provider.mjs +299 -0
- package/dist/comments/comment-plugin-provider.mjs.map +1 -0
- package/dist/comments/floating-composer.js +34 -0
- package/dist/comments/floating-composer.js.map +1 -0
- package/dist/comments/floating-composer.mjs +32 -0
- package/dist/comments/floating-composer.mjs.map +1 -0
- package/dist/comments/get-thread-mark-ids.js +23 -0
- package/dist/comments/get-thread-mark-ids.js.map +1 -0
- package/dist/comments/get-thread-mark-ids.mjs +21 -0
- package/dist/comments/get-thread-mark-ids.mjs.map +1 -0
- package/dist/comments/thread-mark-node.js +138 -0
- package/dist/comments/thread-mark-node.js.map +1 -0
- package/dist/comments/thread-mark-node.mjs +134 -0
- package/dist/comments/thread-mark-node.mjs.map +1 -0
- package/dist/comments/unwrap-thread-mark-node.js +19 -0
- package/dist/comments/unwrap-thread-mark-node.js.map +1 -0
- package/dist/comments/unwrap-thread-mark-node.mjs +17 -0
- package/dist/comments/unwrap-thread-mark-node.mjs.map +1 -0
- package/dist/comments/wrap-selection-in-thread-mark-node.js +63 -0
- package/dist/comments/wrap-selection-in-thread-mark-node.js.map +1 -0
- package/dist/comments/wrap-selection-in-thread-mark-node.mjs +61 -0
- package/dist/comments/wrap-selection-in-thread-mark-node.mjs.map +1 -0
- package/dist/floating-selection-container.js +157 -0
- package/dist/floating-selection-container.js.map +1 -0
- package/dist/floating-selection-container.mjs +155 -0
- package/dist/floating-selection-container.mjs.map +1 -0
- package/dist/index.d.ts +61 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +11 -0
- package/dist/index.mjs.map +1 -0
- package/dist/liveblocks-config.js +89 -0
- package/dist/liveblocks-config.js.map +1 -0
- package/dist/liveblocks-config.mjs +67 -0
- package/dist/liveblocks-config.mjs.map +1 -0
- package/dist/liveblocks-plugin-provider.js +79 -0
- package/dist/liveblocks-plugin-provider.js.map +1 -0
- package/dist/liveblocks-plugin-provider.mjs +76 -0
- package/dist/liveblocks-plugin-provider.mjs.map +1 -0
- package/dist/mentions/avatar.js +49 -0
- package/dist/mentions/avatar.js.map +1 -0
- package/dist/mentions/avatar.mjs +47 -0
- package/dist/mentions/avatar.mjs.map +1 -0
- package/dist/mentions/mention-component.js +63 -0
- package/dist/mentions/mention-component.js.map +1 -0
- package/dist/mentions/mention-component.mjs +60 -0
- package/dist/mentions/mention-component.mjs.map +1 -0
- package/dist/mentions/mention-node.js +105 -0
- package/dist/mentions/mention-node.js.map +1 -0
- package/dist/mentions/mention-node.mjs +84 -0
- package/dist/mentions/mention-node.mjs.map +1 -0
- package/dist/mentions/mention-plugin.js +291 -0
- package/dist/mentions/mention-plugin.js.map +1 -0
- package/dist/mentions/mention-plugin.mjs +284 -0
- package/dist/mentions/mention-plugin.mjs.map +1 -0
- package/dist/mentions/suggestions.js +161 -0
- package/dist/mentions/suggestions.js.map +1 -0
- package/dist/mentions/suggestions.mjs +158 -0
- package/dist/mentions/suggestions.mjs.map +1 -0
- package/dist/mentions/user.js +21 -0
- package/dist/mentions/user.js.map +1 -0
- package/dist/mentions/user.mjs +19 -0
- package/dist/mentions/user.mjs.map +1 -0
- package/dist/version.js +10 -0
- package/dist/version.js.map +1 -0
- package/dist/version.mjs +6 -0
- package/dist/version.mjs.map +1 -0
- package/package.json +102 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"suggestions.mjs","sources":["../../src/mentions/suggestions.tsx"],"sourcesContent":["import { useLexicalComposerContext } from \"@lexical/react/LexicalComposerContext\";\nimport {\n COMMAND_PRIORITY_LOW,\n KEY_ARROW_DOWN_COMMAND,\n KEY_ARROW_UP_COMMAND,\n KEY_ENTER_COMMAND,\n KEY_ESCAPE_COMMAND,\n} from \"lexical\";\nimport type {\n Dispatch,\n HTMLAttributes,\n MouseEvent,\n ReactNode,\n SetStateAction,\n} from \"react\";\nimport React, {\n createContext,\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\n\nimport {\n useOnResetMatchCallback,\n useOnValueSelectCallback,\n useSuggestions,\n} from \"./mention-plugin\";\n\nconst HighlightedIndexContext = createContext<\n [number, Dispatch<SetStateAction<number>>] | null\n>(null);\n\nexport interface ListProps extends HTMLAttributes<HTMLDivElement> {\n children: ReactNode;\n}\n\nconst List = forwardRef<HTMLDivElement, ListProps>(\n function (props, forwardedRef) {\n const { children, ...divProps } = props;\n const [editor] = useLexicalComposerContext();\n const [highlightedIndex, setHighlightedIndex] = useState(0);\n const values = useSuggestions();\n const onValueSelect = useOnValueSelectCallback();\n const onEscapeKeyDown = useOnResetMatchCallback();\n\n useEffect(() => {\n function onKeyArrowDown(event: KeyboardEvent): boolean {\n if (values.length === 0) return true;\n if (highlightedIndex === null) return true;\n\n // If the highlighted index is at the last suggestion, then we loop back to the first suggestion, otherwise we increment the index.\n const nextIndex =\n highlightedIndex === values.length - 1 ? 0 : highlightedIndex + 1;\n setHighlightedIndex(nextIndex);\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n return true;\n }\n\n return editor.registerCommand(\n KEY_ARROW_DOWN_COMMAND,\n onKeyArrowDown,\n COMMAND_PRIORITY_LOW\n );\n }, [editor, highlightedIndex, values]);\n\n useEffect(() => {\n function onKeyArrowUp(event: KeyboardEvent): boolean {\n if (values.length === 0) return true;\n if (highlightedIndex === null) return true;\n\n // If the highlighted index is at the first suggestion, then we loop back to the last suggestion, otherwise we decrement the index.\n const nextIndex =\n highlightedIndex === 0 ? values.length - 1 : highlightedIndex - 1;\n setHighlightedIndex(nextIndex);\n\n event.preventDefault();\n event.stopImmediatePropagation();\n return true;\n }\n\n return editor.registerCommand(\n KEY_ARROW_UP_COMMAND,\n onKeyArrowUp,\n COMMAND_PRIORITY_LOW\n );\n }, [editor, highlightedIndex, values]);\n\n useEffect(() => {\n function onKeyEscape(event: KeyboardEvent): boolean {\n event.preventDefault();\n event.stopImmediatePropagation();\n\n onEscapeKeyDown();\n return true;\n }\n\n return editor.registerCommand<KeyboardEvent>(\n KEY_ESCAPE_COMMAND,\n onKeyEscape,\n COMMAND_PRIORITY_LOW\n );\n }, [editor, onEscapeKeyDown]);\n\n useEffect(() => {\n function onKeyEnter(event: KeyboardEvent | null): boolean {\n if (values.length === 0) return true;\n\n onValueSelect(values[highlightedIndex]);\n\n if (event === null) return true;\n\n event.preventDefault();\n event.stopImmediatePropagation();\n return true;\n }\n\n return editor.registerCommand(\n KEY_ENTER_COMMAND,\n onKeyEnter,\n COMMAND_PRIORITY_LOW\n );\n }, [editor, onValueSelect, highlightedIndex, values]);\n\n useEffect(() => {\n const root = editor.getRootElement();\n if (root === null) return;\n\n root.setAttribute(\n \"aria-activedescendant\",\n `typeahead-item-${highlightedIndex}`\n );\n\n return () => {\n root.removeAttribute(\"aria-activedescendant\");\n };\n }, [editor, highlightedIndex]);\n\n return (\n <HighlightedIndexContext.Provider\n value={[highlightedIndex, setHighlightedIndex]}\n >\n <div role=\"listbox\" {...divProps} ref={forwardedRef}>\n {children}\n </div>\n </HighlightedIndexContext.Provider>\n );\n }\n);\n\ninterface ItemProps extends HTMLAttributes<HTMLDivElement> {\n value: string;\n}\n\nconst Item = forwardRef<HTMLDivElement | null, ItemProps>(\n function Item(props, forwardedRef) {\n const { children, value, onMouseEnter, onClick, ...divProps } = props;\n const divRef = useRef<HTMLDivElement>(null);\n\n const [highlightedIndex, setHighlightedIndex] = useHighlightedIndex();\n const suggestions = useSuggestions();\n const onValueSelect = useOnValueSelectCallback();\n\n const isHighlighted = suggestions[highlightedIndex] === value;\n\n useImperativeHandle<HTMLDivElement | null, HTMLDivElement | null>(\n forwardedRef,\n () => divRef.current\n );\n\n useEffect(() => {\n if (!isHighlighted) return;\n\n const div = divRef.current;\n if (div === null) return;\n\n div.scrollIntoView({ block: \"nearest\" });\n }, [isHighlighted]);\n\n function handleMouseEnter(event: MouseEvent<HTMLDivElement>) {\n onMouseEnter?.(event);\n\n if (event.isDefaultPrevented()) return;\n\n const index = suggestions.indexOf(value);\n if (index === -1) return;\n\n setHighlightedIndex(index);\n }\n\n function handleClick(event: MouseEvent<HTMLDivElement>) {\n onClick?.(event);\n\n if (event.isDefaultPrevented()) return;\n\n onValueSelect(value);\n }\n\n return (\n <div\n role=\"option\"\n data-highlighted={isHighlighted || undefined}\n onMouseEnter={handleMouseEnter}\n onClick={handleClick}\n {...divProps}\n ref={divRef}\n >\n {children}\n </div>\n );\n }\n);\n\nfunction useHighlightedIndex(): [\n number,\n React.Dispatch<React.SetStateAction<number>>,\n] {\n const context = React.useContext(HighlightedIndexContext);\n if (context === null) {\n throw new Error(\n \"useHighlightedIndex must be used within a HighlightedIndexProvider\"\n );\n }\n return context;\n}\n\nexport { Item, List };\n"],"names":["React","Item"],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var react = require('@liveblocks/react');
|
|
4
|
+
var React = require('react');
|
|
5
|
+
|
|
6
|
+
const User = React.forwardRef(
|
|
7
|
+
function User2(props, forwardedRef) {
|
|
8
|
+
const { userId, ...spanProps } = props;
|
|
9
|
+
const { useUser } = react.useSharedContextBundle();
|
|
10
|
+
const { user, isLoading } = useUser(userId);
|
|
11
|
+
const name = user === void 0 ? "Anonymous" : user.name;
|
|
12
|
+
return /* @__PURE__ */ React.createElement("span", {
|
|
13
|
+
"data-loading": isLoading ? "" : void 0,
|
|
14
|
+
...spanProps,
|
|
15
|
+
ref: forwardedRef
|
|
16
|
+
}, isLoading ? null : name);
|
|
17
|
+
}
|
|
18
|
+
);
|
|
19
|
+
|
|
20
|
+
module.exports = User;
|
|
21
|
+
//# sourceMappingURL=user.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.js","sources":["../../src/mentions/user.tsx"],"sourcesContent":["import { useSharedContextBundle } from \"@liveblocks/react\";\nimport type { HTMLAttributes } from \"react\";\nimport React, { forwardRef } from \"react\";\n\nexport interface UserProps\n extends Omit<HTMLAttributes<HTMLSpanElement>, \"children\"> {\n userId: string;\n}\n\nconst User = forwardRef<HTMLSpanElement, UserProps>(\n function User(props, forwardedRef) {\n const { userId, ...spanProps } = props;\n const { useUser } = useSharedContextBundle();\n\n const { user, isLoading } = useUser(userId);\n\n const name = user === undefined ? \"Anonymous\" : user.name;\n\n return (\n <span\n data-loading={isLoading ? \"\" : undefined}\n {...spanProps}\n ref={forwardedRef}\n >\n {isLoading ? null : name}\n </span>\n );\n }\n);\n\nexport default User;\n"],"names":["forwardRef","User","useSharedContextBundle"],"mappings":";;;;;AASA,MAAM,IAAO,GAAAA,gBAAA;AAAA,EACX,SAASC,KAAK,CAAA,KAAA,EAAO,YAAc,EAAA;AACjC,IAAM,MAAA,EAAE,MAAW,EAAA,GAAA,SAAA,EAAc,GAAA,KAAA,CAAA;AACjC,IAAM,MAAA,EAAE,OAAQ,EAAA,GAAIC,4BAAuB,EAAA,CAAA;AAE3C,IAAA,MAAM,EAAE,IAAA,EAAM,SAAU,EAAA,GAAI,QAAQ,MAAM,CAAA,CAAA;AAE1C,IAAA,MAAM,IAAO,GAAA,IAAA,KAAS,KAAY,CAAA,GAAA,WAAA,GAAc,IAAK,CAAA,IAAA,CAAA;AAErD,IAAA,uBACG,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAA,MACC,cAAA,EAAc,YAAY,EAAK,GAAA,KAAA,CAAA;AAAA,MAC9B,GAAG,SAAA;AAAA,MACJ,GAAK,EAAA,YAAA;AAAA,KAEJ,EAAA,SAAA,GAAY,OAAO,IACtB,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { useSharedContextBundle } from '@liveblocks/react';
|
|
2
|
+
import React__default, { forwardRef } from 'react';
|
|
3
|
+
|
|
4
|
+
const User = forwardRef(
|
|
5
|
+
function User2(props, forwardedRef) {
|
|
6
|
+
const { userId, ...spanProps } = props;
|
|
7
|
+
const { useUser } = useSharedContextBundle();
|
|
8
|
+
const { user, isLoading } = useUser(userId);
|
|
9
|
+
const name = user === void 0 ? "Anonymous" : user.name;
|
|
10
|
+
return /* @__PURE__ */ React__default.createElement("span", {
|
|
11
|
+
"data-loading": isLoading ? "" : void 0,
|
|
12
|
+
...spanProps,
|
|
13
|
+
ref: forwardedRef
|
|
14
|
+
}, isLoading ? null : name);
|
|
15
|
+
}
|
|
16
|
+
);
|
|
17
|
+
|
|
18
|
+
export { User as default };
|
|
19
|
+
//# sourceMappingURL=user.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.mjs","sources":["../../src/mentions/user.tsx"],"sourcesContent":["import { useSharedContextBundle } from \"@liveblocks/react\";\nimport type { HTMLAttributes } from \"react\";\nimport React, { forwardRef } from \"react\";\n\nexport interface UserProps\n extends Omit<HTMLAttributes<HTMLSpanElement>, \"children\"> {\n userId: string;\n}\n\nconst User = forwardRef<HTMLSpanElement, UserProps>(\n function User(props, forwardedRef) {\n const { userId, ...spanProps } = props;\n const { useUser } = useSharedContextBundle();\n\n const { user, isLoading } = useUser(userId);\n\n const name = user === undefined ? \"Anonymous\" : user.name;\n\n return (\n <span\n data-loading={isLoading ? \"\" : undefined}\n {...spanProps}\n ref={forwardedRef}\n >\n {isLoading ? null : name}\n </span>\n );\n }\n);\n\nexport default User;\n"],"names":["User","React"],"mappings":";;;AASA,MAAM,IAAO,GAAA,UAAA;AAAA,EACX,SAASA,KAAK,CAAA,KAAA,EAAO,YAAc,EAAA;AACjC,IAAM,MAAA,EAAE,MAAW,EAAA,GAAA,SAAA,EAAc,GAAA,KAAA,CAAA;AACjC,IAAM,MAAA,EAAE,OAAQ,EAAA,GAAI,sBAAuB,EAAA,CAAA;AAE3C,IAAA,MAAM,EAAE,IAAA,EAAM,SAAU,EAAA,GAAI,QAAQ,MAAM,CAAA,CAAA;AAE1C,IAAA,MAAM,IAAO,GAAA,IAAA,KAAS,KAAY,CAAA,GAAA,WAAA,GAAc,IAAK,CAAA,IAAA,CAAA;AAErD,IAAA,uBACGC,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA;AAAA,MACC,cAAA,EAAc,YAAY,EAAK,GAAA,KAAA,CAAA;AAAA,MAC9B,GAAG,SAAA;AAAA,MACJ,GAAK,EAAA,YAAA;AAAA,KAEJ,EAAA,SAAA,GAAY,OAAO,IACtB,CAAA,CAAA;AAAA,GAEJ;AACF;;;;"}
|
package/dist/version.js
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const PKG_NAME = "@liveblocks/react-lexical";
|
|
4
|
+
const PKG_VERSION = typeof "1.12.0-lexical2" === "string" && "1.12.0-lexical2";
|
|
5
|
+
const PKG_FORMAT = typeof "cjs" === "string" && "cjs";
|
|
6
|
+
|
|
7
|
+
exports.PKG_FORMAT = PKG_FORMAT;
|
|
8
|
+
exports.PKG_NAME = PKG_NAME;
|
|
9
|
+
exports.PKG_VERSION = PKG_VERSION;
|
|
10
|
+
//# sourceMappingURL=version.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.js","sources":["../src/version.ts"],"sourcesContent":["declare const __VERSION__: string;\ndeclare const TSUP_FORMAT: string;\n\nexport const PKG_NAME = \"@liveblocks/react-lexical\";\nexport const PKG_VERSION = typeof __VERSION__ === \"string\" && __VERSION__;\nexport const PKG_FORMAT = typeof TSUP_FORMAT === \"string\" && TSUP_FORMAT;\n"],"names":[],"mappings":";;AAGO,MAAM,QAAW,GAAA,4BAAA;AACX,MAAA,WAAA,GAAc,OAAO,iBAAA,KAAgB,QAAY,IAAA,kBAAA;AACjD,MAAA,UAAA,GAAa,OAAO,KAAA,KAAgB,QAAY,IAAA;;;;;;"}
|
package/dist/version.mjs
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
const PKG_NAME = "@liveblocks/react-lexical";
|
|
2
|
+
const PKG_VERSION = typeof "1.12.0-lexical2" === "string" && "1.12.0-lexical2";
|
|
3
|
+
const PKG_FORMAT = typeof "esm" === "string" && "esm";
|
|
4
|
+
|
|
5
|
+
export { PKG_FORMAT, PKG_NAME, PKG_VERSION };
|
|
6
|
+
//# sourceMappingURL=version.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.mjs","sources":["../src/version.ts"],"sourcesContent":["declare const __VERSION__: string;\ndeclare const TSUP_FORMAT: string;\n\nexport const PKG_NAME = \"@liveblocks/react-lexical\";\nexport const PKG_VERSION = typeof __VERSION__ === \"string\" && __VERSION__;\nexport const PKG_FORMAT = typeof TSUP_FORMAT === \"string\" && TSUP_FORMAT;\n"],"names":[],"mappings":"AAGO,MAAM,QAAW,GAAA,4BAAA;AACX,MAAA,WAAA,GAAc,OAAO,iBAAA,KAAgB,QAAY,IAAA,kBAAA;AACjD,MAAA,UAAA,GAAa,OAAO,KAAA,KAAgB,QAAY,IAAA;;;;"}
|
package/package.json
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@liveblocks/react-lexical",
|
|
3
|
+
"version": "1.12.0-lexical3",
|
|
4
|
+
"description": "A lexical react plugin to enable collaboration, comments, live cursors, and more.",
|
|
5
|
+
"license": "Apache-2.0",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"types": "./dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"import": {
|
|
11
|
+
"types": "./dist/index.d.mts",
|
|
12
|
+
"default": "./dist/index.mjs"
|
|
13
|
+
},
|
|
14
|
+
"require": {
|
|
15
|
+
"types": "./dist/index.d.ts",
|
|
16
|
+
"module": "./dist/index.mjs",
|
|
17
|
+
"default": "./dist/index.js"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"./styles.css": "./styles.css"
|
|
21
|
+
},
|
|
22
|
+
"files": [
|
|
23
|
+
"dist/**",
|
|
24
|
+
"README.md"
|
|
25
|
+
],
|
|
26
|
+
"scripts": {
|
|
27
|
+
"dev": "rollup --config rollup.config.ts --configPlugin @rollup/plugin-typescript --watch",
|
|
28
|
+
"build": "rollup --config rollup.config.ts --configPlugin @rollup/plugin-typescript",
|
|
29
|
+
"start": "npm run dev",
|
|
30
|
+
"format": "eslint --fix src/; stylelint --fix src/styles/; prettier --write src/",
|
|
31
|
+
"lint": "eslint src/; stylelint src/styles/",
|
|
32
|
+
"test": "jest --silent --verbose --color=always",
|
|
33
|
+
"test:watch": "jest --silent --verbose --color=always --watch"
|
|
34
|
+
},
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"@liveblocks/client": "1.12.0-lexical2",
|
|
37
|
+
"@liveblocks/core": "1.12.0-lexical2",
|
|
38
|
+
"@liveblocks/react": "1.12.0-lexical2",
|
|
39
|
+
"@liveblocks/react-comments": "1.12.0-lexical2",
|
|
40
|
+
"@liveblocks/yjs": "1.12.0-lexical2",
|
|
41
|
+
"use-sync-external-store": "^1.2.2",
|
|
42
|
+
"yjs": "^13.6.14"
|
|
43
|
+
},
|
|
44
|
+
"peerDependencies": {
|
|
45
|
+
"@lexical/react": "^0.10.0",
|
|
46
|
+
"@lexical/selection": "^0.14.3",
|
|
47
|
+
"@lexical/utils": "^0.14.3",
|
|
48
|
+
"lexical": "^0.10.0",
|
|
49
|
+
"react": "^16.14.0 || ^17 || ^18"
|
|
50
|
+
},
|
|
51
|
+
"devDependencies": {
|
|
52
|
+
"@lexical/react": "^0.14.2",
|
|
53
|
+
"@liveblocks/eslint-config": "*",
|
|
54
|
+
"@liveblocks/jest-config": "*",
|
|
55
|
+
"@rollup/plugin-node-resolve": "^15.2.3",
|
|
56
|
+
"@rollup/plugin-replace": "^5.0.5",
|
|
57
|
+
"@rollup/plugin-typescript": "^11.1.2",
|
|
58
|
+
"@testing-library/jest-dom": "^5.16.5",
|
|
59
|
+
"@types/use-sync-external-store": "^0.0.6",
|
|
60
|
+
"eslint-plugin-react": "^7.33.2",
|
|
61
|
+
"eslint-plugin-react-hooks": "^4.6.0",
|
|
62
|
+
"lexical": "^0.14.2",
|
|
63
|
+
"msw": "^0.27.1",
|
|
64
|
+
"rollup": "^3.28.0",
|
|
65
|
+
"rollup-plugin-dts": "^5.3.1",
|
|
66
|
+
"rollup-plugin-esbuild": "^5.0.0",
|
|
67
|
+
"rollup-plugin-preserve-directives": "^0.2.0",
|
|
68
|
+
"stylelint": "^15.10.2",
|
|
69
|
+
"stylelint-config-standard": "^34.0.0",
|
|
70
|
+
"stylelint-order": "^6.0.3",
|
|
71
|
+
"stylelint-plugin-logical-css": "^0.13.2"
|
|
72
|
+
},
|
|
73
|
+
"sideEffects": false,
|
|
74
|
+
"bugs": {
|
|
75
|
+
"url": "https://github.com/liveblocks/liveblocks/issues"
|
|
76
|
+
},
|
|
77
|
+
"repository": {
|
|
78
|
+
"type": "git",
|
|
79
|
+
"url": "https://github.com/liveblocks/liveblocks.git",
|
|
80
|
+
"directory": "packages/liveblocks-react-comments"
|
|
81
|
+
},
|
|
82
|
+
"homepage": "https://liveblocks.io",
|
|
83
|
+
"keywords": [
|
|
84
|
+
"lexical",
|
|
85
|
+
"react",
|
|
86
|
+
"comments",
|
|
87
|
+
"threads",
|
|
88
|
+
"liveblocks",
|
|
89
|
+
"real-time",
|
|
90
|
+
"toolkit",
|
|
91
|
+
"multiplayer",
|
|
92
|
+
"websockets",
|
|
93
|
+
"collaboration",
|
|
94
|
+
"collaborative",
|
|
95
|
+
"presence",
|
|
96
|
+
"crdts",
|
|
97
|
+
"synchronize",
|
|
98
|
+
"rooms",
|
|
99
|
+
"documents",
|
|
100
|
+
"conflict resolution"
|
|
101
|
+
]
|
|
102
|
+
}
|