diff --git a/ng-app/package.json b/ng-app/package.json
index 608703f..ab84487 100644
--- a/ng-app/package.json
+++ b/ng-app/package.json
@@ -32,6 +32,16 @@
"@lezer/highlight": "^1.0.0",
"@lezer/javascript": "^1.2.0",
"@lezer/lr": "^1.0.0",
+ "@milkdown-lab/plugin-split-editing": "^1.2.3",
+ "@milkdown/core": "^7.4.0",
+ "@milkdown/ctx": "^7.2.0",
+ "@milkdown/plugin-collab": "^7.4.0",
+ "@milkdown/plugin-slash": "^7.4.0",
+ "@milkdown/preset-commonmark": "^7.4.0",
+ "@milkdown/preset-gfm": "^7.4.0",
+ "@milkdown/prose": "^7.2.0",
+ "@milkdown/theme-nord": "^7.4.0",
+ "@milkdown/transformer": "^7.2.0",
"@popperjs/core": "^2.11.8",
"@replit/codemirror-lang-svelte": "^6.0.0",
"@tauri-apps/api": "2.0.0-alpha.8",
@@ -40,14 +50,17 @@
"async-proxy": "^0.4.1",
"classnames": "^2.3.2",
"codemirror": "^6.0.1",
+ "extend": "3.0.2",
"flowbite": "^1.6.5",
"flowbite-svelte": "^0.43.3",
"html5-qrcode": "^2.3.8",
+ "lodash.debounce": "4.0.8",
"ng-sdk-js": "workspace:^0.1.0-preview.1",
"prosemirror-model": "^1.7.1",
"prosemirror-state": "^1.2.3",
"prosemirror-svelte": "^0.2.4",
"prosemirror-view": "^1.9.10",
+ "style-mod": "^4.1.2",
"svelte-codemirror-editor": "^1.4.0",
"svelte-i18n": "^4.0.0",
"svelte-inview": "^4.0.2",
diff --git a/ng-app/src/apps/MilkDownEditor.svelte b/ng-app/src/apps/MilkDownEditor.svelte
new file mode 100644
index 0000000..ef4c80a
--- /dev/null
+++ b/ng-app/src/apps/MilkDownEditor.svelte
@@ -0,0 +1,147 @@
+
+
+
+
+
+
+
+
diff --git a/ng-app/src/apps/PostMdViewer.svelte b/ng-app/src/apps/PostMdViewer.svelte
new file mode 100644
index 0000000..3e7b439
--- /dev/null
+++ b/ng-app/src/apps/PostMdViewer.svelte
@@ -0,0 +1,94 @@
+
+
+
+
+
+
+
+
diff --git a/ng-app/src/apps/ProseMirrorEditor.svelte b/ng-app/src/apps/ProseMirrorEditor.svelte
index fd838ee..15ca620 100644
--- a/ng-app/src/apps/ProseMirrorEditor.svelte
+++ b/ng-app/src/apps/ProseMirrorEditor.svelte
@@ -42,7 +42,6 @@
let view;
ydoc.on('update', async (update, origin) => {
- console.log(update,origin);
if (!origin.local) {
try {
await discrete_update(update, "YXml", commits.heads);
diff --git a/ng-app/src/apps/milkdown-placeholder.ts b/ng-app/src/apps/milkdown-placeholder.ts
new file mode 100644
index 0000000..297ec70
--- /dev/null
+++ b/ng-app/src/apps/milkdown-placeholder.ts
@@ -0,0 +1,102 @@
+/**
+MIT License
+
+Copyright (c) 2022 Mox
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+Source: https://github.com/HexMox/milkdown-plugin-placeholder
+ */
+
+import type { MilkdownPlugin, TimerType } from '@milkdown/ctx'
+import type { EditorView } from '@milkdown/prose/view'
+import { createSlice, createTimer } from '@milkdown/ctx'
+import { InitReady, prosePluginsCtx } from '@milkdown/core'
+import { Plugin, PluginKey } from '@milkdown/prose/state'
+
+export const placeholderCtx = createSlice('Please input here...', 'placeholder')
+export const placeholderTimerCtx = createSlice([] as TimerType[], 'editorStateTimer')
+
+export const PlaceholderReady = createTimer('PlaceholderReady')
+
+const key = new PluginKey('MILKDOWN_PLACEHOLDER')
+
+export const placeholder: MilkdownPlugin = (ctx) => {
+ ctx.inject(placeholderCtx).inject(placeholderTimerCtx, [InitReady]).record(PlaceholderReady)
+
+ return async () => {
+ await ctx.waitTimers(placeholderTimerCtx)
+
+ const prosePlugins = ctx.get(prosePluginsCtx)
+
+ const update = (view: EditorView) => {
+ const placeholder = ctx.get(placeholderCtx)
+ const doc = view.state.doc
+ if (
+ view.editable &&
+ doc.childCount === 1 &&
+ doc.firstChild?.isTextblock &&
+ doc.firstChild?.content.size === 0 &&
+ doc.firstChild?.type.name === 'paragraph'
+ ) {
+ view.dom.classList.add('editor_empty');
+ view.dom.setAttribute('data-placeholder', placeholder);
+ } else {
+ view.dom.classList.remove('editor_empty');
+ }
+ }
+
+ const plugins = [
+ ...prosePlugins,
+ new Plugin({
+ key,
+ // props: {
+ // decorations(state) {
+ // const doc = state.doc
+ // if (
+ // doc.childCount === 1 &&
+ // doc.firstChild?.isTextblock &&
+ // doc.firstChild?.content.size === 0
+ // ) {
+ // return DecorationSet.create(doc, [
+ // Decoration.widget(1, (view) => {
+ // if (view.editable) {
+ // const span = document.createElement('span')
+ // span.classList.add('placeholder')
+ // span.textContent = placeholder
+ // return span
+ // }
+ // }),
+ // ])
+ // }
+ // },
+ // },
+ view(view) {
+ update(view)
+
+ return { update }
+ },
+ }),
+ ]
+
+ ctx.set(prosePluginsCtx, plugins)
+
+ ctx.done(PlaceholderReady)
+ }
+}
\ No newline at end of file
diff --git a/ng-app/src/styles.css b/ng-app/src/styles.css
index a73ca6d..de5428c 100644
--- a/ng-app/src/styles.css
+++ b/ng-app/src/styles.css
@@ -26,7 +26,31 @@ td.hljs {
.splashing {
display: none;
}
-.prosemirror-editor {
+
+.split-editor {
+ display: grid;
+ grid-template-columns: repeat(2, 1fr);
+ grid-template-rows: 1fr;
+}
+
+.split-editor:has(.milkdown-split-editor.hidden) {
+ grid-template-columns: repeat(1, 1fr);
+}
+
+.milkdown-split-editor.hidden {
+ display: none;
+}
+
+.ProseMirror.editor_empty::before {
+ position: absolute;
+ content: attr(data-placeholder);
+ pointer-events: none;
+ color: rgb(170, 170, 170);
+}
+
+.prosemirror-editor,
+.prosemirror-editor .milkdown,
+.prosemirror-editor .milkdown .ProseMirror {
height: 100%;
overflow-wrap: anywhere !important;
}
diff --git a/ng-app/vite.config.ts b/ng-app/vite.config.ts
index b779bc6..3b35fd3 100644
--- a/ng-app/vite.config.ts
+++ b/ng-app/vite.config.ts
@@ -14,7 +14,11 @@ export default defineConfig(async () => {
optimizeDeps: {
exclude: ["codemirror", "@codemirror/*", "@codemirror/language", "@codemirror/state", "@codemirror/view","@codemirror/legacy-modes/mode/sparql",
"@codemirror/lang-javascript", "@codemirror/lang-rust", "@replit/codemirror-lang-svelte", "yjs", "y-codemirror.next", "svelte-codemirror-editor",
- "prosemirror-svelte", "prosemirror-svelte/state", "prosemirror-svelte/helpers", "y-prosemirror", "prosemirror-state", "prosemirror-model", "prosemirror-view", "y-protocols"],
+ "prosemirror-svelte", "prosemirror-svelte/state", "prosemirror-svelte/helpers", "y-prosemirror", "prosemirror-state", "prosemirror-model", "prosemirror-view", "y-protocols",
+ "@milkdown/core", "@milkdown/ctx", "@milkdown/prose", "@milkdown/transformer", "@milkdown/preset-commonmark", "@milkdown/theme-nord", "@milkdown/plugin-collab",
+ "svelte-highlight", "svelte-highlight/languages/typescript", "svelte-highlight/languages/javascript", "svelte-highlight/languages/rust", "@milkdown/preset-gfm",
+ "@milkdown-lab/plugin-split-editing", "@milkdown/plugin-slash"],
+ include: ["debug","extend","highlight.js","highlight.js/lib/core","lodash.debounce"]
},
worker: {
format: 'es',
diff --git a/package.json b/package.json
index 946ad31..80d7eeb 100644
--- a/package.json
+++ b/package.json
@@ -14,5 +14,6 @@
"prettier-plugin-svelte": "^3.2.5"
},
"dependencies": {
+ "style-mod": "^4.1.2"
}
}
\ No newline at end of file
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index a824fd6..3cbfc14 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -47,6 +47,16 @@ importers:
'@lezer/highlight': ^1.0.0
'@lezer/javascript': ^1.2.0
'@lezer/lr': ^1.0.0
+ '@milkdown-lab/plugin-split-editing': ^1.2.3
+ '@milkdown/core': ^7.4.0
+ '@milkdown/ctx': ^7.2.0
+ '@milkdown/plugin-collab': ^7.4.0
+ '@milkdown/plugin-slash': ^7.4.0
+ '@milkdown/preset-commonmark': ^7.4.0
+ '@milkdown/preset-gfm': ^7.4.0
+ '@milkdown/prose': ^7.2.0
+ '@milkdown/theme-nord': ^7.4.0
+ '@milkdown/transformer': ^7.2.0
'@popperjs/core': ^2.11.8
'@replit/codemirror-lang-svelte': ^6.0.0
'@sveltejs/vite-plugin-svelte': ^2.0.0
@@ -62,11 +72,13 @@ importers:
codemirror: ^6.0.1
cross-env: ^7.0.3
dayjs: ^1.11.10
+ extend: 3.0.2
flowbite: ^1.6.5
flowbite-svelte: ^0.43.3
highlight.js: ^11.10.0
html5-qrcode: ^2.3.8
internal-ip: ^7.0.0
+ lodash.debounce: 4.0.8
ng-sdk-js: workspace:^0.1.0-preview.1
node-gzip: ^1.1.2
postcss: ^8.4.23
@@ -115,6 +127,16 @@ importers:
'@lezer/highlight': 1.2.0
'@lezer/javascript': 1.4.17
'@lezer/lr': 1.4.1
+ '@milkdown-lab/plugin-split-editing': 1.2.3_a3dzv35plhvwzkijmviegrpz64
+ '@milkdown/core': 7.4.0_honodruzo53dgte6h6joyje4le
+ '@milkdown/ctx': 7.4.0
+ '@milkdown/plugin-collab': 7.4.0_ifyjutkej4ojnyzkqg4n5g44ji
+ '@milkdown/plugin-slash': 7.4.0_ds5rnvti6hlceu7l5yoqntrjgi
+ '@milkdown/preset-commonmark': 7.4.0_ds5rnvti6hlceu7l5yoqntrjgi
+ '@milkdown/preset-gfm': 7.4.0_pr2a727idfiaf646adnm34e2he
+ '@milkdown/prose': 7.4.0
+ '@milkdown/theme-nord': 7.4.0_nuamxu4mkdll4kxrlkxmwjyqya
+ '@milkdown/transformer': 7.4.0_@milkdown+prose@7.4.0
'@popperjs/core': 2.11.8
'@replit/codemirror-lang-svelte': 6.0.0_lm5kufzbvgjiwtncg4ikhuo3ce
'@tauri-apps/api': 2.0.0-alpha.8
@@ -123,9 +145,11 @@ importers:
async-proxy: 0.4.1
classnames: 2.3.2
codemirror: 6.0.1_@lezer+common@1.2.1
+ extend: 3.0.2
flowbite: 1.6.5
flowbite-svelte: 0.43.3_svelte@3.59.1
html5-qrcode: 2.3.8
+ lodash.debounce: 4.0.8
ng-sdk-js: link:../ng-sdk-js/pkg
prosemirror-model: 1.22.2
prosemirror-state: 1.4.3
@@ -281,6 +305,18 @@ packages:
'@lezer/javascript': 1.4.17
dev: false
+ /@codemirror/lang-markdown/6.2.5:
+ resolution: {integrity: sha512-Hgke565YcO4fd9pe2uLYxnMufHO5rQwRr+AAhFq8ABuhkrjyX8R5p5s+hZUTdV60O0dMRjxKhBLxz8pu/MkUVA==}
+ dependencies:
+ '@codemirror/autocomplete': 6.17.0_y4udqqf6vpekb2i4jypui2pd5e
+ '@codemirror/lang-html': 6.4.9
+ '@codemirror/language': 6.10.2
+ '@codemirror/state': 6.4.1
+ '@codemirror/view': 6.29.1
+ '@lezer/common': 1.2.1
+ '@lezer/markdown': 1.3.0
+ dev: false
+
/@codemirror/lang-rust/6.0.1:
resolution: {integrity: sha512-344EMWFBzWArHWdZn/NcgkwMvZIWUR1GEBdwG8FEp++6o6vT6KL9V7vGs2ONsKxxFUPXKI0SPcWhyYyl2zPYxQ==}
dependencies:
@@ -841,6 +877,13 @@ packages:
'@lezer/common': 1.2.1
dev: false
+ /@lezer/markdown/1.3.0:
+ resolution: {integrity: sha512-ErbEQ15eowmJUyT095e9NJc3BI9yZ894fjSDtHftD0InkfUBGgnKSU6dvan9jqsZuNHg2+ag/1oyDRxNsENupQ==}
+ dependencies:
+ '@lezer/common': 1.2.1
+ '@lezer/highlight': 1.2.0
+ dev: false
+
/@lezer/rust/1.0.2:
resolution: {integrity: sha512-Lz5sIPBdF2FUXcWeCu1//ojFAZqzTQNRga0aYv6dYXqJqPfMdCAI0NzajWUd4Xijj1IKJLtjoXRPMvTKWBcqKg==}
dependencies:
@@ -849,6 +892,210 @@ packages:
'@lezer/lr': 1.4.1
dev: false
+ /@milkdown-lab/plugin-split-editing/1.2.3_a3dzv35plhvwzkijmviegrpz64:
+ resolution: {integrity: sha512-sQI0wrazJ9tHuAF7EpNZBuyygJnHLcNxM72ogp4c7KbaxFZkVF5kEDCzv6aFrAKDPI0RN7PBZRpOwdwEGvoXsA==}
+ peerDependencies:
+ '@milkdown/core': '>=7.0.0'
+ '@milkdown/prose': '>=7.0.0'
+ dependencies:
+ '@codemirror/commands': 6.6.0
+ '@codemirror/lang-markdown': 6.2.5
+ '@codemirror/language': 6.10.2
+ '@codemirror/state': 6.4.1
+ '@codemirror/view': 6.29.1
+ '@milkdown/core': 7.4.0_honodruzo53dgte6h6joyje4le
+ '@milkdown/ctx': 7.4.0
+ '@milkdown/prose': 7.4.0
+ '@milkdown/utils': 7.4.0_ds5rnvti6hlceu7l5yoqntrjgi
+ transitivePeerDependencies:
+ - '@milkdown/transformer'
+ dev: false
+
+ /@milkdown/core/7.4.0_honodruzo53dgte6h6joyje4le:
+ resolution: {integrity: sha512-TKHxVUiiQ6x+RoIP9ofC5jYqX54zO2qZMHX0Bvf+zXV/vpi+STbXa1VWcZC8rlVIivOlp300nw+ebJq1KArYHA==}
+ peerDependencies:
+ '@milkdown/ctx': ^7.2.0
+ '@milkdown/prose': ^7.2.0
+ '@milkdown/transformer': ^7.2.0
+ dependencies:
+ '@milkdown/ctx': 7.4.0
+ '@milkdown/exception': 7.4.0
+ '@milkdown/prose': 7.4.0
+ '@milkdown/transformer': 7.4.0_@milkdown+prose@7.4.0
+ remark-parse: 11.0.0
+ remark-stringify: 11.0.0
+ tslib: 2.5.3
+ unified: 11.0.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@milkdown/ctx/7.4.0:
+ resolution: {integrity: sha512-jSXK/n+ew+vxBTNXKCKCaqf15K0gBa9OpP9sfvjiZeHF3tXh+SJKioA40YvUsVvi5JE/CGHMVnfLiB2AOyMKPg==}
+ dependencies:
+ '@milkdown/exception': 7.4.0
+ tslib: 2.5.3
+ dev: false
+
+ /@milkdown/exception/7.4.0:
+ resolution: {integrity: sha512-id0kZrhIA6QRlpgPsrmNNZY71NPwujJg4RPZUSrbM+4PuXXZfzaVtMWd3LGn5HrDRDhkvmIrRzbEmqqfUnGYLg==}
+ dependencies:
+ tslib: 2.5.3
+ dev: false
+
+ /@milkdown/plugin-collab/7.4.0_ifyjutkej4ojnyzkqg4n5g44ji:
+ resolution: {integrity: sha512-/TBclQTZwBMW7GRWzg/d8XEndNdI+dfkMqxPzQhEBWH9TrLAWKyULV4qQPu4p8TJC+Vne7h6g0P93oqQT2+pfQ==}
+ peerDependencies:
+ '@milkdown/core': ^7.2.0
+ '@milkdown/ctx': ^7.2.0
+ '@milkdown/prose': ^7.2.0
+ y-prosemirror: '*'
+ y-protocols: '*'
+ yjs: '*'
+ dependencies:
+ '@milkdown/core': 7.4.0_honodruzo53dgte6h6joyje4le
+ '@milkdown/ctx': 7.4.0
+ '@milkdown/exception': 7.4.0
+ '@milkdown/prose': 7.4.0
+ '@milkdown/utils': 7.4.0_ds5rnvti6hlceu7l5yoqntrjgi
+ tslib: 2.5.3
+ y-prosemirror: 1.2.10_t5dsb3fc2figoeqqliqhb3exne
+ y-protocols: 1.0.6_yjs@13.6.18
+ yjs: 13.6.18
+ transitivePeerDependencies:
+ - '@milkdown/transformer'
+ dev: false
+
+ /@milkdown/plugin-slash/7.4.0_ds5rnvti6hlceu7l5yoqntrjgi:
+ resolution: {integrity: sha512-oAzgkDThSu1ie8SARr3N+gGxEq1NP1MQJ5byZsOTbr4zChr2PPPBvP7ex3eSqS92xAUfJsEhH2QVKmALW18akg==}
+ peerDependencies:
+ '@milkdown/core': ^7.2.0
+ '@milkdown/ctx': ^7.2.0
+ '@milkdown/prose': ^7.2.0
+ dependencies:
+ '@floating-ui/dom': 1.5.3
+ '@milkdown/core': 7.4.0_honodruzo53dgte6h6joyje4le
+ '@milkdown/ctx': 7.4.0
+ '@milkdown/exception': 7.4.0
+ '@milkdown/prose': 7.4.0
+ '@milkdown/utils': 7.4.0_ds5rnvti6hlceu7l5yoqntrjgi
+ '@types/lodash.debounce': 4.0.9
+ composed-offset-position: 0.0.4
+ lodash.debounce: 4.0.8
+ tslib: 2.5.3
+ transitivePeerDependencies:
+ - '@milkdown/transformer'
+ dev: false
+
+ /@milkdown/preset-commonmark/7.4.0_ds5rnvti6hlceu7l5yoqntrjgi:
+ resolution: {integrity: sha512-L7yJcQZbqDT2bzkgfENV8x+1cZh16NPWasIKcB9Ap5BwlpclPNiyN0HHDMSzZLcNroXEhqI8UxjgCI0n31merg==}
+ peerDependencies:
+ '@milkdown/core': ^7.2.0
+ '@milkdown/ctx': ^7.2.0
+ '@milkdown/prose': ^7.2.0
+ '@milkdown/transformer': ^7.2.0
+ dependencies:
+ '@milkdown/core': 7.4.0_honodruzo53dgte6h6joyje4le
+ '@milkdown/ctx': 7.4.0
+ '@milkdown/exception': 7.4.0
+ '@milkdown/prose': 7.4.0
+ '@milkdown/transformer': 7.4.0_@milkdown+prose@7.4.0
+ '@milkdown/utils': 7.4.0_ds5rnvti6hlceu7l5yoqntrjgi
+ '@sindresorhus/slugify': 2.2.1
+ remark-inline-links: 7.0.0
+ tslib: 2.5.3
+ unist-util-visit: 5.0.0
+ dev: false
+
+ /@milkdown/preset-gfm/7.4.0_pr2a727idfiaf646adnm34e2he:
+ resolution: {integrity: sha512-qOiCzIQrxclLwBETr5eOUts8UaAk0gP1hbqYw8vB9Rui2EPKwwHFOz7tXyHM09zeCr51fgUZeWGplzU+TgSOlQ==}
+ peerDependencies:
+ '@milkdown/core': ^7.2.0
+ '@milkdown/ctx': ^7.2.0
+ '@milkdown/preset-commonmark': ^7.2.0
+ '@milkdown/prose': ^7.2.0
+ '@milkdown/transformer': ^7.2.0
+ dependencies:
+ '@milkdown/core': 7.4.0_honodruzo53dgte6h6joyje4le
+ '@milkdown/ctx': 7.4.0
+ '@milkdown/exception': 7.4.0
+ '@milkdown/preset-commonmark': 7.4.0_ds5rnvti6hlceu7l5yoqntrjgi
+ '@milkdown/prose': 7.4.0
+ '@milkdown/transformer': 7.4.0_@milkdown+prose@7.4.0
+ '@milkdown/utils': 7.4.0_ds5rnvti6hlceu7l5yoqntrjgi
+ remark-gfm: 4.0.0
+ tslib: 2.5.3
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@milkdown/prose/7.4.0:
+ resolution: {integrity: sha512-bumSngLK5LLBrbpL24pCer0kZLPTXwQas1KsUHnJU2vYESi2SezeoxQVe3iYutwGDWeIspJup9r3SBKiKuoHgQ==}
+ dependencies:
+ '@milkdown/exception': 7.4.0
+ prosemirror-changeset: 2.2.1
+ prosemirror-commands: 1.6.0
+ prosemirror-dropcursor: 1.8.1
+ prosemirror-gapcursor: 1.3.2
+ prosemirror-history: 1.4.1
+ prosemirror-inputrules: 1.4.0
+ prosemirror-keymap: 1.2.2
+ prosemirror-model: 1.22.2
+ prosemirror-schema-list: 1.4.1
+ prosemirror-state: 1.4.3
+ prosemirror-tables: 1.4.0
+ prosemirror-transform: 1.9.0
+ prosemirror-view: 1.33.9
+ tslib: 2.5.3
+ dev: false
+
+ /@milkdown/theme-nord/7.4.0_nuamxu4mkdll4kxrlkxmwjyqya:
+ resolution: {integrity: sha512-YfzPuZTXUudN+L5FlzTiILnDyjcytrM/2hziRWyk9uUxDUlnC7a4B+iGEs6V7HYgbwO8U+jXrqlW5baWoy63/w==}
+ peerDependencies:
+ '@milkdown/core': ^7.2.0
+ '@milkdown/ctx': ^7.2.0
+ '@milkdown/prose': ^7.2.0
+ dependencies:
+ '@milkdown/core': 7.4.0_honodruzo53dgte6h6joyje4le
+ '@milkdown/ctx': 7.4.0
+ '@milkdown/prose': 7.4.0
+ clsx: 2.1.1
+ tslib: 2.5.3
+ dev: false
+
+ /@milkdown/transformer/7.4.0_@milkdown+prose@7.4.0:
+ resolution: {integrity: sha512-99bjUjgwtmFaRajbUgKp422evZEJ71sq7tk59ksFVBfuGXZ3aCk4/bm5g8FdHIrWwKIbiqZToG5P4CxiB4w2Ig==}
+ peerDependencies:
+ '@milkdown/prose': ^7.2.0
+ dependencies:
+ '@milkdown/exception': 7.4.0
+ '@milkdown/prose': 7.4.0
+ remark: 15.0.1
+ remark-parse: 11.0.0
+ remark-stringify: 11.0.0
+ tslib: 2.5.3
+ unified: 11.0.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@milkdown/utils/7.4.0_ds5rnvti6hlceu7l5yoqntrjgi:
+ resolution: {integrity: sha512-spGlHJbEVJqNtIvUrQd6xyA10x+8Zaf1eb2cXQGr5qjpoQVVDybazx18pEr5cIKmuCRBID13Agd47NKQgkjS7A==}
+ peerDependencies:
+ '@milkdown/core': ^7.2.0
+ '@milkdown/ctx': ^7.2.0
+ '@milkdown/prose': ^7.2.0
+ '@milkdown/transformer': ^7.2.0
+ dependencies:
+ '@milkdown/core': 7.4.0_honodruzo53dgte6h6joyje4le
+ '@milkdown/ctx': 7.4.0
+ '@milkdown/exception': 7.4.0
+ '@milkdown/prose': 7.4.0
+ '@milkdown/transformer': 7.4.0_@milkdown+prose@7.4.0
+ nanoid: 5.0.7
+ tslib: 2.5.3
+ dev: false
+
/@nodelib/fs.scandir/2.1.5:
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
engines: {node: '>= 8'}
@@ -912,6 +1159,21 @@ packages:
optional: true
dev: false
+ /@sindresorhus/slugify/2.2.1:
+ resolution: {integrity: sha512-MkngSCRZ8JdSOCHRaYd+D01XhvU3Hjy6MGl06zhOk614hp9EOAp5gIkBeQg7wtmxpitU6eAL4kdiRMcJa2dlrw==}
+ engines: {node: '>=12'}
+ dependencies:
+ '@sindresorhus/transliterate': 1.6.0
+ escape-string-regexp: 5.0.0
+ dev: false
+
+ /@sindresorhus/transliterate/1.6.0:
+ resolution: {integrity: sha512-doH1gimEu3A46VX6aVxpHTeHrytJAG6HgdxntYnCFiIFHEM/ZGpG8KiZGBChchjQmG0XFIBL552kBTjVcMZXwQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ escape-string-regexp: 5.0.0
+ dev: false
+
/@sveltejs/vite-plugin-svelte-inspector/1.0.2_qiij5gx4uovhfqjpd2vh63pzyq:
resolution: {integrity: sha512-Cy1dUMcYCnDVV/hPLXa43YZJ2jGKVW5rA0xuNL9dlmYhT0yoS1g7+FOFSRlgk0BXKk/Oc7grs+8BVA5Iz2fr8A==}
engines: {node: ^14.18.0 || >= 16}
@@ -1198,6 +1460,32 @@ packages:
resolution: {integrity: sha512-pYrtLtOwku/7r1i9AMONsJMVYAtk3hzOfiGNekhtq5tYBGA7unMve8RvUclKLMT3PrihvJqUmzsRGh0RP84hKg==}
dev: true
+ /@types/debug/4.1.12:
+ resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
+ dependencies:
+ '@types/ms': 0.7.34
+ dev: false
+
+ /@types/lodash.debounce/4.0.9:
+ resolution: {integrity: sha512-Ma5JcgTREwpLRwMM+XwBR7DaWe96nC38uCBDFKZWbNKD+osjVzdpnUSwBcqCptrp16sSOLBAUb50Car5I0TCsQ==}
+ dependencies:
+ '@types/lodash': 4.17.7
+ dev: false
+
+ /@types/lodash/4.17.7:
+ resolution: {integrity: sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==}
+ dev: false
+
+ /@types/mdast/4.0.4:
+ resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /@types/ms/0.7.34:
+ resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==}
+ dev: false
+
/@types/node/18.16.16:
resolution: {integrity: sha512-NpaM49IGQQAUlBhHMF82QH80J08os4ZmyF9MkpCzWAGuOHqE4gTEbhzd7L3l5LmWuZ6E0OiC1FweQ4tsiW35+g==}
@@ -1205,6 +1493,10 @@ packages:
resolution: {integrity: sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg==}
dev: true
+ /@types/unist/3.0.2:
+ resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==}
+ dev: false
+
/any-promise/1.3.0:
resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
dev: true
@@ -1243,6 +1535,10 @@ packages:
postcss-value-parser: 4.2.0
dev: true
+ /bail/2.0.2:
+ resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==}
+ dev: false
+
/balanced-match/1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
dev: true
@@ -1299,6 +1595,14 @@ packages:
resolution: {integrity: sha512-2efF8SAZwgAX1FJr87KWhvuJxnGJKOnctQa8xLOskAXNXq8oiuqgl6u1kk3fFpsp3GgvzlRjiK1sl63hNtFADw==}
dev: true
+ /ccount/2.0.1:
+ resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
+ dev: false
+
+ /character-entities/2.0.2:
+ resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
+ dev: false
+
/chokidar/3.5.3:
resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
engines: {node: '>= 8.10.0'}
@@ -1329,6 +1633,11 @@ packages:
timers-ext: 0.1.8
dev: false
+ /clsx/2.1.1:
+ resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
+ engines: {node: '>=6'}
+ dev: false
+
/codemirror/6.0.1:
resolution: {integrity: sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==}
dependencies:
@@ -1365,6 +1674,10 @@ packages:
engines: {node: '>= 10'}
dev: true
+ /composed-offset-position/0.0.4:
+ resolution: {integrity: sha512-vMlvu1RuNegVE0YsCDSV/X4X10j56mq7PCIyOKK74FxkXzGLwhOUmdkJLSdOBOMwWycobGUMgft2lp+YgTe8hw==}
+ dev: false
+
/concat-map/0.0.1:
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
dev: true
@@ -1456,7 +1769,12 @@ packages:
optional: true
dependencies:
ms: 2.1.2
- dev: true
+
+ /decode-named-character-reference/1.0.2:
+ resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==}
+ dependencies:
+ character-entities: 2.0.2
+ dev: false
/deepmerge/4.3.1:
resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
@@ -1469,11 +1787,22 @@ packages:
execa: 5.1.1
dev: true
+ /dequal/2.0.3:
+ resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
+ engines: {node: '>=6'}
+ dev: false
+
/detect-indent/6.1.0:
resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==}
engines: {node: '>=8'}
dev: true
+ /devlop/1.1.0:
+ resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
+ dependencies:
+ dequal: 2.0.3
+ dev: false
+
/didyoumean/1.2.2:
resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
dev: true
@@ -1623,6 +1952,11 @@ packages:
engines: {node: '>=6'}
dev: true
+ /escape-string-regexp/5.0.0:
+ resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
+ engines: {node: '>=12'}
+ dev: false
+
/esniff/2.0.1:
resolution: {integrity: sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==}
engines: {node: '>=0.10'}
@@ -1665,6 +1999,10 @@ packages:
type: 2.7.3
dev: false
+ /extend/3.0.2:
+ resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
+ dev: false
+
/fast-glob/3.2.12:
resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==}
engines: {node: '>=8.6.0'}
@@ -1910,6 +2248,11 @@ packages:
engines: {node: '>=0.12.0'}
dev: true
+ /is-plain-obj/4.1.0:
+ resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
+ engines: {node: '>=12'}
+ dev: false
+
/is-promise/2.2.2:
resolution: {integrity: sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==}
dev: false
@@ -1954,6 +2297,14 @@ packages:
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
dev: true
+ /lodash.debounce/4.0.8:
+ resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
+ dev: false
+
+ /longest-streak/3.1.0:
+ resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
+ dev: false
+
/lru-queue/0.1.0:
resolution: {integrity: sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==}
dependencies:
@@ -1974,6 +2325,141 @@ packages:
'@jridgewell/sourcemap-codec': 1.4.15
dev: true
+ /markdown-table/3.0.3:
+ resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==}
+ dev: false
+
+ /mdast-util-definitions/6.0.0:
+ resolution: {integrity: sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.2
+ unist-util-visit: 5.0.0
+ dev: false
+
+ /mdast-util-find-and-replace/3.0.1:
+ resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ escape-string-regexp: 5.0.0
+ unist-util-is: 6.0.0
+ unist-util-visit-parents: 6.0.1
+ dev: false
+
+ /mdast-util-from-markdown/2.0.1:
+ resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.2
+ decode-named-character-reference: 1.0.2
+ devlop: 1.1.0
+ mdast-util-to-string: 4.0.0
+ micromark: 4.0.0
+ micromark-util-decode-numeric-character-reference: 2.0.1
+ micromark-util-decode-string: 2.0.0
+ micromark-util-normalize-identifier: 2.0.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ unist-util-stringify-position: 4.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-gfm-autolink-literal/2.0.0:
+ resolution: {integrity: sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ ccount: 2.0.1
+ devlop: 1.1.0
+ mdast-util-find-and-replace: 3.0.1
+ micromark-util-character: 2.1.0
+ dev: false
+
+ /mdast-util-gfm-footnote/2.0.0:
+ resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.1
+ mdast-util-to-markdown: 2.1.0
+ micromark-util-normalize-identifier: 2.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-gfm-strikethrough/2.0.0:
+ resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-from-markdown: 2.0.1
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-gfm-table/2.0.0:
+ resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ markdown-table: 3.0.3
+ mdast-util-from-markdown: 2.0.1
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-gfm-task-list-item/2.0.0:
+ resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.1
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-gfm/3.0.0:
+ resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==}
+ dependencies:
+ mdast-util-from-markdown: 2.0.1
+ mdast-util-gfm-autolink-literal: 2.0.0
+ mdast-util-gfm-footnote: 2.0.0
+ mdast-util-gfm-strikethrough: 2.0.0
+ mdast-util-gfm-table: 2.0.0
+ mdast-util-gfm-task-list-item: 2.0.0
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-phrasing/4.1.0:
+ resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ unist-util-is: 6.0.0
+ dev: false
+
+ /mdast-util-to-markdown/2.1.0:
+ resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.2
+ longest-streak: 3.1.0
+ mdast-util-phrasing: 4.1.0
+ mdast-util-to-string: 4.0.0
+ micromark-util-decode-string: 2.0.0
+ unist-util-visit: 5.0.0
+ zwitch: 2.0.4
+ dev: false
+
+ /mdast-util-to-string/4.0.0:
+ resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ dev: false
+
/mdn-data/2.0.28:
resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==}
dev: true
@@ -2005,6 +2491,253 @@ packages:
engines: {node: '>= 8'}
dev: true
+ /micromark-core-commonmark/2.0.1:
+ resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==}
+ dependencies:
+ decode-named-character-reference: 1.0.2
+ devlop: 1.1.0
+ micromark-factory-destination: 2.0.0
+ micromark-factory-label: 2.0.0
+ micromark-factory-space: 2.0.0
+ micromark-factory-title: 2.0.0
+ micromark-factory-whitespace: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-chunked: 2.0.0
+ micromark-util-classify-character: 2.0.0
+ micromark-util-html-tag-name: 2.0.0
+ micromark-util-normalize-identifier: 2.0.0
+ micromark-util-resolve-all: 2.0.0
+ micromark-util-subtokenize: 2.0.1
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-extension-gfm-autolink-literal/2.1.0:
+ resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==}
+ dependencies:
+ micromark-util-character: 2.1.0
+ micromark-util-sanitize-uri: 2.0.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-extension-gfm-footnote/2.1.0:
+ resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.1
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-normalize-identifier: 2.0.0
+ micromark-util-sanitize-uri: 2.0.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-extension-gfm-strikethrough/2.1.0:
+ resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-chunked: 2.0.0
+ micromark-util-classify-character: 2.0.0
+ micromark-util-resolve-all: 2.0.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-extension-gfm-table/2.1.0:
+ resolution: {integrity: sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-extension-gfm-tagfilter/2.0.0:
+ resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==}
+ dependencies:
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-extension-gfm-task-list-item/2.1.0:
+ resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-extension-gfm/3.0.0:
+ resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==}
+ dependencies:
+ micromark-extension-gfm-autolink-literal: 2.1.0
+ micromark-extension-gfm-footnote: 2.1.0
+ micromark-extension-gfm-strikethrough: 2.1.0
+ micromark-extension-gfm-table: 2.1.0
+ micromark-extension-gfm-tagfilter: 2.0.0
+ micromark-extension-gfm-task-list-item: 2.1.0
+ micromark-util-combine-extensions: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-destination/2.0.0:
+ resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==}
+ dependencies:
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-label/2.0.0:
+ resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-space/2.0.0:
+ resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==}
+ dependencies:
+ micromark-util-character: 2.1.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-title/2.0.0:
+ resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==}
+ dependencies:
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-whitespace/2.0.0:
+ resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==}
+ dependencies:
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-character/2.1.0:
+ resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-chunked/2.0.0:
+ resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-classify-character/2.0.0:
+ resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==}
+ dependencies:
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-combine-extensions/2.0.0:
+ resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==}
+ dependencies:
+ micromark-util-chunked: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-decode-numeric-character-reference/2.0.1:
+ resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-decode-string/2.0.0:
+ resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==}
+ dependencies:
+ decode-named-character-reference: 1.0.2
+ micromark-util-character: 2.1.0
+ micromark-util-decode-numeric-character-reference: 2.0.1
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-encode/2.0.0:
+ resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==}
+ dev: false
+
+ /micromark-util-html-tag-name/2.0.0:
+ resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==}
+ dev: false
+
+ /micromark-util-normalize-identifier/2.0.0:
+ resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-resolve-all/2.0.0:
+ resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==}
+ dependencies:
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-sanitize-uri/2.0.0:
+ resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==}
+ dependencies:
+ micromark-util-character: 2.1.0
+ micromark-util-encode: 2.0.0
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-subtokenize/2.0.1:
+ resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-chunked: 2.0.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-symbol/2.0.0:
+ resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==}
+ dev: false
+
+ /micromark-util-types/2.0.0:
+ resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==}
+ dev: false
+
+ /micromark/4.0.0:
+ resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==}
+ dependencies:
+ '@types/debug': 4.1.12
+ debug: 4.3.4
+ decode-named-character-reference: 1.0.2
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.1
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-chunked: 2.0.0
+ micromark-util-combine-extensions: 2.0.0
+ micromark-util-decode-numeric-character-reference: 2.0.1
+ micromark-util-encode: 2.0.0
+ micromark-util-normalize-identifier: 2.0.0
+ micromark-util-resolve-all: 2.0.0
+ micromark-util-sanitize-uri: 2.0.0
+ micromark-util-subtokenize: 2.0.1
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/micromatch/4.0.5:
resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
engines: {node: '>=8.6'}
@@ -2051,7 +2784,6 @@ packages:
/ms/2.1.2:
resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
- dev: true
/mz/2.7.0:
resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
@@ -2066,6 +2798,12 @@ packages:
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
+ /nanoid/5.0.7:
+ resolution: {integrity: sha512-oLxFY2gd2IqnjcYyOXD8XGCftpGtZP2AbHbOkthDkvRywH5ayNtPVy9YlOPcHckXzbLTCHpkb7FB+yuxKV13pQ==}
+ engines: {node: ^18 || >=20}
+ hasBin: true
+ dev: false
+
/next-tick/1.1.0:
resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==}
dev: false
@@ -2274,6 +3012,12 @@ packages:
hasBin: true
dev: true
+ /prosemirror-changeset/2.2.1:
+ resolution: {integrity: sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==}
+ dependencies:
+ prosemirror-transform: 1.9.0
+ dev: false
+
/prosemirror-commands/1.6.0:
resolution: {integrity: sha512-xn1U/g36OqXn2tn5nGmvnnimAj/g1pUx2ypJJIe8WkVX83WyJVC5LTARaxZa2AtQRwntu9Jc5zXs9gL9svp/mg==}
dependencies:
@@ -2366,6 +3110,16 @@ packages:
prosemirror-view: 1.33.9
dev: false
+ /prosemirror-tables/1.4.0:
+ resolution: {integrity: sha512-fxryZZkQG12fSCNuZDrYx6Xvo2rLYZTbKLRd8rglOPgNJGMKIS8uvTt6gGC38m7UCu/ENnXIP9pEz5uDaPc+cA==}
+ dependencies:
+ prosemirror-keymap: 1.2.2
+ prosemirror-model: 1.22.2
+ prosemirror-state: 1.4.3
+ prosemirror-transform: 1.9.0
+ prosemirror-view: 1.33.9
+ dev: false
+
/prosemirror-transform/1.9.0:
resolution: {integrity: sha512-5UXkr1LIRx3jmpXXNKDhv8OyAOeLTGuXNwdVfg8x27uASna/wQkr9p6fD3eupGOi4PLJfbezxTyi/7fSJypXHg==}
dependencies:
@@ -2409,6 +3163,57 @@ packages:
engines: {node: '>=8'}
dev: false
+ /remark-gfm/4.0.0:
+ resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-gfm: 3.0.0
+ micromark-extension-gfm: 3.0.0
+ remark-parse: 11.0.0
+ remark-stringify: 11.0.0
+ unified: 11.0.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /remark-inline-links/7.0.0:
+ resolution: {integrity: sha512-4uj1pPM+F495ySZhTIB6ay2oSkTsKgmYaKk/q5HIdhX2fuyLEegpjWa0VdJRJ01sgOqAFo7MBKdDUejIYBMVMQ==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-definitions: 6.0.0
+ unist-util-visit: 5.0.0
+ dev: false
+
+ /remark-parse/11.0.0:
+ resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-from-markdown: 2.0.1
+ micromark-util-types: 2.0.0
+ unified: 11.0.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /remark-stringify/11.0.0:
+ resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-to-markdown: 2.1.0
+ unified: 11.0.5
+ dev: false
+
+ /remark/15.0.1:
+ resolution: {integrity: sha512-Eht5w30ruCXgFmxVUSlNWQ9iiimq07URKeFS3hNc8cUWy1llX4KDWfyEDZRycMc+znsN9Ux5/tJ/BFdgdOwA3A==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ remark-parse: 11.0.0
+ remark-stringify: 11.0.0
+ unified: 11.0.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/resolve-from/4.0.0:
resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
engines: {node: '>=4'}
@@ -2882,6 +3687,10 @@ packages:
is-number: 7.0.0
dev: true
+ /trough/2.2.0:
+ resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==}
+ dev: false
+
/ts-interface-checker/0.1.13:
resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
dev: true
@@ -2905,6 +3714,45 @@ packages:
hasBin: true
dev: true
+ /unified/11.0.5:
+ resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==}
+ dependencies:
+ '@types/unist': 3.0.2
+ bail: 2.0.2
+ devlop: 1.1.0
+ extend: 3.0.2
+ is-plain-obj: 4.1.0
+ trough: 2.2.0
+ vfile: 6.0.2
+ dev: false
+
+ /unist-util-is/6.0.0:
+ resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /unist-util-stringify-position/4.0.0:
+ resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /unist-util-visit-parents/6.0.1:
+ resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-is: 6.0.0
+ dev: false
+
+ /unist-util-visit/5.0.0:
+ resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-is: 6.0.0
+ unist-util-visit-parents: 6.0.1
+ dev: false
+
/update-browserslist-db/1.0.11_browserslist@4.21.7:
resolution: {integrity: sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==}
hasBin: true
@@ -2925,6 +3773,21 @@ packages:
hasBin: true
dev: false
+ /vfile-message/4.0.2:
+ resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-stringify-position: 4.0.0
+ dev: false
+
+ /vfile/6.0.2:
+ resolution: {integrity: sha512-zND7NlS8rJYb/sPqkb13ZvbbUoExdbi4w3SfRrMq6R3FvnLQmmfpajJNITuuYm6AZ5uao9vy4BAos3EXBPf2rg==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-stringify-position: 4.0.0
+ vfile-message: 4.0.2
+ dev: false
+
/vite-plugin-singlefile/0.13.5_vite@4.3.9:
resolution: {integrity: sha512-y/aRGh8qHmw2f1IhaI/C6PJAaov47ESYDvUv1am1YHMhpY+19B5k5Odp8P+tgs+zhfvak6QB1ykrALQErEAo7g==}
engines: {node: ^14.18.0 || >=16.0.0}
@@ -3085,9 +3948,6 @@ packages:
prosemirror-view: ^1.9.10
y-protocols: ^1.0.1
yjs: ^13.5.38
- peerDependenciesMeta:
- y-protocols:
- optional: true
dependencies:
lib0: 0.2.95
prosemirror-model: 1.22.2
@@ -3118,3 +3978,7 @@ packages:
dependencies:
lib0: 0.2.95
dev: false
+
+ /zwitch/2.0.4:
+ resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
+ dev: false