diff --git a/packages/app/package.json b/packages/app/package.json index 8a26eb07e..a5ad88c36 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -9,8 +9,9 @@ "lint": "next lint" }, "dependencies": { - "@blocksuite/blocks": "0.3.0-alpha.1", - "@blocksuite/editor": "0.3.0-alpha.1", + "@blocksuite/blocks": "0.3.0-alpha.4", + "@blocksuite/editor": "0.3.0-alpha.4", + "@blocksuite/store": "0.3.0-alpha.4", "@emotion/css": "^11.10.0", "@emotion/react": "^11.10.4", "@emotion/server": "^11.10.0", diff --git a/packages/app/src/components/edgeless-toolbar/index.tsx b/packages/app/src/components/edgeless-toolbar/index.tsx index 58a93e83d..bb6478a7c 100644 --- a/packages/app/src/components/edgeless-toolbar/index.tsx +++ b/packages/app/src/components/edgeless-toolbar/index.tsx @@ -78,11 +78,11 @@ const UndoRedo = () => { const { editor } = useEditor(); useEffect(() => { if (!editor) return; - const { space } = editor; + const { page } = editor; - space.signals.historyUpdated.on(() => { - setCanUndo(space.canUndo); - setCanRedo(space.canRedo); + page.signals.historyUpdated.on(() => { + setCanUndo(page.canUndo); + setCanRedo(page.canRedo); }); }, [editor]); @@ -92,7 +92,7 @@ const UndoRedo = () => { { - editor?.space?.undo(); + editor?.page?.undo(); }} > @@ -102,7 +102,7 @@ const UndoRedo = () => { { - editor?.space?.redo(); + editor?.page?.redo(); }} > diff --git a/packages/app/src/components/editor.tsx b/packages/app/src/components/editor.tsx index a7ef3ff27..11c29a78a 100644 --- a/packages/app/src/components/editor.tsx +++ b/packages/app/src/components/editor.tsx @@ -2,7 +2,8 @@ import { useEditor } from '@/components/editor-provider'; import '@blocksuite/blocks'; import '@blocksuite/blocks/style'; import type { EditorContainer } from '@blocksuite/editor'; -import { createEditor } from '@blocksuite/editor'; +import { createEditor, BlockSchema } from '@blocksuite/editor'; +import { Workspace } from '@blocksuite/store'; import { forwardRef, Suspense, useEffect, useRef } from 'react'; import pkg from '../../package.json'; import exampleMarkdown from './example-markdown'; @@ -14,7 +15,9 @@ const BlockSuiteEditor = forwardRef(({}, ref) => { if (!containerElement.current) { return; } - const editor = createEditor(); + const workspace = new Workspace({}); + const page = workspace.createPage('page0').register(BlockSchema); + const editor = createEditor(page); containerElement.current.appendChild(editor); if (ref) { if ('current' in ref) { @@ -38,14 +41,14 @@ export const Editor = () => { return; } setEditor(editorRef.current); - const { space } = editorRef.current as EditorContainer; - const pageId = space.addBlock({ + const { page } = editorRef.current as EditorContainer; + const pageId = page.addBlock({ flavour: 'affine:page', title: 'Welcome to the AFFiNE Alpha', }); - const groupId = space.addBlock({ flavour: 'affine:group' }, pageId); + const groupId = page.addBlock({ flavour: 'affine:group' }, pageId); editorRef.current.clipboard.importMarkdown(exampleMarkdown, `${groupId}`); - space.resetHistory(); + page.resetHistory(); }, [setEditor]); useEffect(() => { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1a5634190..1799b5814 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -30,8 +30,9 @@ importers: packages/app: specifiers: - '@blocksuite/blocks': 0.3.0-alpha.1 - '@blocksuite/editor': 0.3.0-alpha.1 + '@blocksuite/blocks': 0.3.0-alpha.4 + '@blocksuite/editor': 0.3.0-alpha.4 + '@blocksuite/store': 0.3.0-alpha.4 '@emotion/css': ^11.10.0 '@emotion/react': ^11.10.4 '@emotion/server': ^11.10.0 @@ -59,8 +60,9 @@ importers: react-dom: 18.2.0 typescript: 4.8.3 dependencies: - '@blocksuite/blocks': 0.3.0-alpha.1 - '@blocksuite/editor': 0.3.0-alpha.1 + '@blocksuite/blocks': 0.3.0-alpha.4 + '@blocksuite/editor': 0.3.0-alpha.4 + '@blocksuite/store': 0.3.0-alpha.4 '@emotion/css': 11.10.0 '@emotion/react': 11.10.4_w5j4k42lgipnm43s3brx6h3c34 '@emotion/server': 11.10.0_@emotion+css@11.10.0 @@ -470,10 +472,10 @@ packages: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true - /@blocksuite/blocks/0.3.0-alpha.1: - resolution: {integrity: sha512-UQVq+qOpiZOSuLoT6hSv+w6Mb+okaecwxOQXhYkcG0ELUtCXXv6roihGHrhCKG6FueNjgw3p6LyZCroF2+UftA==} + /@blocksuite/blocks/0.3.0-alpha.4: + resolution: {integrity: sha512-ij/kKW5ahJQPKMZe2UjwJwvcPNQFQ09/KoRIfFRwBdTBisPGtlSUwunDMlFFoY7CbnH4E+cpg+6XjcJDQniDBw==} dependencies: - '@blocksuite/store': 0.3.0-alpha.1 + '@blocksuite/store': 0.3.0-alpha.4 hotkeys-js: 3.10.0 lit: 2.4.0 quill: 1.3.7 @@ -484,11 +486,11 @@ packages: - utf-8-validate dev: false - /@blocksuite/editor/0.3.0-alpha.1: - resolution: {integrity: sha512-VrJinFIDcXR9bCfT6A3Vk3UddDEONOWZx3kLCJbgcgKzyGAf2ibkB4d2OWYBmbiysx325orG+iZ2BL9R8FU51A==} + /@blocksuite/editor/0.3.0-alpha.4: + resolution: {integrity: sha512-qTNFFIhqQqGT/qwQvUVmgv+EgiBnHB4G5NCPCKn5pdHXM3vrihsY3yG33YVFc1M7+ZwJsfw6sNbtkv+Ih62aaw==} dependencies: - '@blocksuite/blocks': 0.3.0-alpha.1 - '@blocksuite/store': 0.3.0-alpha.1 + '@blocksuite/blocks': 0.3.0-alpha.4 + '@blocksuite/store': 0.3.0-alpha.4 lit: 2.4.0 marked: 4.1.1 turndown: 7.1.1 @@ -498,13 +500,16 @@ packages: - utf-8-validate dev: false - /@blocksuite/store/0.3.0-alpha.1: - resolution: {integrity: sha512-eBRA9iH2Ui+SyRciOy58cwcg9OPa4VL7EIUERY0XcAgXdi1s+JCrnCntHeWEBI985yKc+jVZY2mldqGzgJQwwQ==} + /@blocksuite/store/0.3.0-alpha.4: + resolution: {integrity: sha512-hLXFiTf1e4qdX9T0uU+SsBwYWMLqU3ILTxALHRWCxSgKs4/qw7pu24c/XT9L+AAUWFMbNH4MnAK+lrCBiOS1wg==} dependencies: + flexsearch: 0.7.21 + idb-keyval: 6.2.0 lib0: 0.2.52 y-indexeddb: 9.0.9_yjs@13.5.41 y-protocols: 1.0.5 y-webrtc: 10.2.3 + y-websocket: 1.4.5_yjs@13.5.41 yjs: 13.5.41 transitivePeerDependencies: - bufferutil @@ -1692,6 +1697,30 @@ packages: eslint-visitor-keys: 3.3.0 dev: true + /abstract-leveldown/6.2.3: + resolution: {integrity: sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ==} + engines: {node: '>=6'} + dependencies: + buffer: 5.7.1 + immediate: 3.3.0 + level-concat-iterator: 2.0.1 + level-supports: 1.0.1 + xtend: 4.0.2 + dev: false + optional: true + + /abstract-leveldown/6.3.0: + resolution: {integrity: sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ==} + engines: {node: '>=6'} + dependencies: + buffer: 5.7.1 + immediate: 3.3.0 + level-concat-iterator: 2.0.1 + level-supports: 1.0.1 + xtend: 4.0.2 + dev: false + optional: true + /acorn-jsx/5.3.2_acorn@8.8.0: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -1810,6 +1839,11 @@ packages: resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==} dev: true + /async-limiter/1.0.1: + resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==} + dev: false + optional: true + /axe-core/4.4.3: resolution: {integrity: sha512-32+ub6kkdhhWick/UjvEwRchgoetXqTK14INLqbGm5U2TzBkBNF3nQtLYm8ovxSkQWArjEQvftCKryjZaATu3w==} engines: {node: '>=4'} @@ -1954,6 +1988,14 @@ packages: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} dev: true + /buffer/5.7.1: + resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + dev: false + optional: true + /buffer/6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} dependencies: @@ -2175,6 +2217,15 @@ packages: engines: {node: '>=0.10.0'} dev: true + /deferred-leveldown/5.3.0: + resolution: {integrity: sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw==} + engines: {node: '>=6'} + dependencies: + abstract-leveldown: 6.2.3 + inherits: 2.0.4 + dev: false + optional: true + /define-properties/1.1.4: resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==} engines: {node: '>= 0.4'} @@ -2247,10 +2298,29 @@ packages: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} dev: true + /encoding-down/6.3.0: + resolution: {integrity: sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw==} + engines: {node: '>=6'} + dependencies: + abstract-leveldown: 6.3.0 + inherits: 2.0.4 + level-codec: 9.0.2 + level-errors: 2.0.1 + dev: false + optional: true + /err-code/3.0.1: resolution: {integrity: sha512-GiaH0KJUewYok+eeY05IIgjtAe4Yltygk9Wqp1V5yVWLdhf0hYZchRjNIT9bb0mSwRcIusT3cx7PJUf3zEIfUA==} dev: false + /errno/0.1.8: + resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==} + hasBin: true + dependencies: + prr: 1.0.1 + dev: false + optional: true + /error-ex/1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} dependencies: @@ -2425,7 +2495,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 5.38.0_tg6quxtr5dyl3tikvj7rwonxxi + '@typescript-eslint/parser': 5.38.0_76twfck5d7crjqrmw4yltga7zm debug: 3.2.7 eslint: 8.22.0 eslint-import-resolver-node: 0.3.6 @@ -2444,7 +2514,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 5.38.0_tg6quxtr5dyl3tikvj7rwonxxi + '@typescript-eslint/parser': 5.38.0_76twfck5d7crjqrmw4yltga7zm array-includes: 3.1.5 array.prototype.flat: 1.3.0 debug: 2.6.9 @@ -2778,6 +2848,10 @@ packages: resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} dev: true + /flexsearch/0.7.21: + resolution: {integrity: sha512-W7cHV7Hrwjid6lWmy0IhsWDFQboWSng25U3VVywpHOTJnnAZNPScog67G+cVpeX9f7yDD21ih0WDrMMT+JoaYg==} + dev: false + /fs.realpath/1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} dev: true @@ -2980,6 +3054,12 @@ packages: engines: {node: '>=10.17.0'} dev: true + /idb-keyval/6.2.0: + resolution: {integrity: sha512-uw+MIyQn2jl3+hroD7hF8J7PUviBU7BPKWw4f/ISf32D4LoGu98yHjrzWWJDASu9QNrX10tCJqk9YY0ClWm8Ng==} + dependencies: + safari-14-idb-fix: 3.0.0 + dev: false + /ieee754/1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} dev: false @@ -2989,6 +3069,11 @@ packages: engines: {node: '>= 4'} dev: true + /immediate/3.3.0: + resolution: {integrity: sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q==} + dev: false + optional: true + /import-fresh/3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} @@ -3688,6 +3773,98 @@ packages: language-subtag-registry: 0.3.22 dev: true + /level-codec/9.0.2: + resolution: {integrity: sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ==} + engines: {node: '>=6'} + dependencies: + buffer: 5.7.1 + dev: false + optional: true + + /level-concat-iterator/2.0.1: + resolution: {integrity: sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw==} + engines: {node: '>=6'} + dev: false + optional: true + + /level-errors/2.0.1: + resolution: {integrity: sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw==} + engines: {node: '>=6'} + dependencies: + errno: 0.1.8 + dev: false + optional: true + + /level-iterator-stream/4.0.2: + resolution: {integrity: sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q==} + engines: {node: '>=6'} + dependencies: + inherits: 2.0.4 + readable-stream: 3.6.0 + xtend: 4.0.2 + dev: false + optional: true + + /level-js/5.0.2: + resolution: {integrity: sha512-SnBIDo2pdO5VXh02ZmtAyPP6/+6YTJg2ibLtl9C34pWvmtMEmRTWpra+qO/hifkUtBTOtfx6S9vLDjBsBK4gRg==} + dependencies: + abstract-leveldown: 6.2.3 + buffer: 5.7.1 + inherits: 2.0.4 + ltgt: 2.2.1 + dev: false + optional: true + + /level-packager/5.1.1: + resolution: {integrity: sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ==} + engines: {node: '>=6'} + dependencies: + encoding-down: 6.3.0 + levelup: 4.4.0 + dev: false + optional: true + + /level-supports/1.0.1: + resolution: {integrity: sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg==} + engines: {node: '>=6'} + dependencies: + xtend: 4.0.2 + dev: false + optional: true + + /level/6.0.1: + resolution: {integrity: sha512-psRSqJZCsC/irNhfHzrVZbmPYXDcEYhA5TVNwr+V92jF44rbf86hqGp8fiT702FyiArScYIlPSBTDUASCVNSpw==} + engines: {node: '>=8.6.0'} + dependencies: + level-js: 5.0.2 + level-packager: 5.1.1 + leveldown: 5.6.0 + dev: false + optional: true + + /leveldown/5.6.0: + resolution: {integrity: sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ==} + engines: {node: '>=8.6.0'} + requiresBuild: true + dependencies: + abstract-leveldown: 6.2.3 + napi-macros: 2.0.0 + node-gyp-build: 4.1.1 + dev: false + optional: true + + /levelup/4.4.0: + resolution: {integrity: sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ==} + engines: {node: '>=6'} + dependencies: + deferred-leveldown: 5.3.0 + level-errors: 2.0.1 + level-iterator-stream: 4.0.2 + level-supports: 1.0.1 + xtend: 4.0.2 + dev: false + optional: true + /leven/3.1.0: resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} engines: {node: '>=6'} @@ -3746,6 +3923,10 @@ packages: p-locate: 5.0.0 dev: true + /lodash.debounce/4.0.8: + resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + dev: false + /lodash.memoize/4.1.2: resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} dev: true @@ -3770,6 +3951,11 @@ packages: yallist: 4.0.0 dev: true + /ltgt/2.2.1: + resolution: {integrity: sha512-AI2r85+4MquTw9ZYqabu4nMwy9Oftlfa/e/52t9IjtfG+mGBbTNdAoZ3RQKLHR6r0wQnwZnPIEh/Ya6XTWAKNA==} + dev: false + optional: true + /make-dir/3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} engines: {node: '>=8'} @@ -3848,6 +4034,11 @@ packages: hasBin: true dev: false + /napi-macros/2.0.0: + resolution: {integrity: sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==} + dev: false + optional: true + /natural-compare/1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true @@ -3942,6 +4133,12 @@ packages: - babel-plugin-macros dev: false + /node-gyp-build/4.1.1: + resolution: {integrity: sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ==} + hasBin: true + dev: false + optional: true + /node-int64/0.4.0: resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} dev: true @@ -4208,6 +4405,11 @@ packages: object-assign: 4.1.1 react-is: 16.13.1 + /prr/1.0.1: + resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} + dev: false + optional: true + /punycode/2.1.1: resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==} engines: {node: '>=6'} @@ -4387,6 +4589,10 @@ packages: queue-microtask: 1.2.3 dev: true + /safari-14-idb-fix/3.0.0: + resolution: {integrity: sha512-eBNFLob4PMq8JA1dGyFn6G97q3/WzNtFK4RnzT1fnLq+9RyrGknzYiM/9B12MnKAxuj1IXr7UKYtTNtjyKMBog==} + dev: false + /safe-buffer/5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} dev: false @@ -4899,6 +5105,22 @@ packages: signal-exit: 3.0.7 dev: true + /ws/6.2.2: + resolution: {integrity: sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==} + requiresBuild: true + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + dependencies: + async-limiter: 1.0.1 + dev: false + optional: true + /ws/7.5.9: resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} engines: {node: '>=8.3.0'} @@ -4921,6 +5143,12 @@ packages: object-keys: 0.4.0 dev: false + /xtend/4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + dev: false + optional: true + /y-indexeddb/9.0.9_yjs@13.5.41: resolution: {integrity: sha512-GcJbiJa2eD5hankj46Hea9z4hbDnDjvh1fT62E5SpZRsv8GcEemw34l1hwI2eknGcv5Ih9JfusT37JLx9q3LFg==} peerDependencies: @@ -4930,6 +5158,18 @@ packages: yjs: 13.5.41 dev: false + /y-leveldb/0.1.1_yjs@13.5.41: + resolution: {integrity: sha512-L8Q0MQmxCQ0qWIOuPzLbWn95TNhrCI7M6LaHnilU4I2IX08e4Dmfg5Tgy4JZ3tnl2aiuZyDOJplHl/msIB/IsA==} + requiresBuild: true + peerDependencies: + yjs: ^13.0.0 + dependencies: + level: 6.0.1 + lib0: 0.2.52 + yjs: 13.5.41 + dev: false + optional: true + /y-protocols/1.0.5: resolution: {integrity: sha512-Wil92b7cGk712lRHDqS4T90IczF6RkcvCwAD0A2OPg+adKmOe+nOiT/N2hvpQIWS3zfjmtL4CPaH5sIW1Hkm/A==} dependencies: @@ -4952,6 +5192,24 @@ packages: - utf-8-validate dev: false + /y-websocket/1.4.5_yjs@13.5.41: + resolution: {integrity: sha512-5d9LTSy0GQKqSd/FKRo5DMBlsiTlCipbKcIgPLlno+5xHtfT8bm3uQdcbY9JvLfckojilLZWauXJu0vzDZX05w==} + hasBin: true + peerDependencies: + yjs: ^13.5.6 + dependencies: + lib0: 0.2.52 + lodash.debounce: 4.0.8 + y-protocols: 1.0.5 + yjs: 13.5.41 + optionalDependencies: + ws: 6.2.2 + y-leveldb: 0.1.1_yjs@13.5.41 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + dev: false + /y18n/5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'}