editor fix

This commit is contained in:
Igor Lobanov 2022-10-31 21:25:38 +01:00
parent 39c3ca3ef0
commit 3de2f1208c
3 changed files with 15 additions and 7 deletions

View File

@ -25,15 +25,16 @@ const customKeymap = (props: ExtensionsProps): ProseMirrorExtension => ({
})
export const createExtensions = (props: ExtensionsProps): ProseMirrorExtension[] => {
const eee = [
const extensions = [
placeholder(t('Just start typing...')),
customKeymap(props),
base(props.markdown),
selectionMenu(),
scrollPlugin(props.config?.typewriterMode)
]
if (props.markdown) {
eee.push(
extensions.push(
markdown(),
todoList(),
dragHandle(),
@ -54,8 +55,12 @@ export const createExtensions = (props: ExtensionsProps): ProseMirrorExtension[]
*/
)
}
if (props.collab?.room) eee.push(collab(props.y))
return eee
if (props.collab?.room) {
extensions.push(collab(props.y))
}
return extensions
}
export const createEmptyText = () => ({

View File

@ -11,6 +11,7 @@ import { mod } from '../env'
import { serialize, createMarkdownParser } from '../markdown'
import db from '../db'
import { isEmpty, isInitialized } from '../prosemirror/helpers'
import { useRouter } from '../../../stores/router'
const isText = (x) => x && x.doc && x.selection
const isState = (x) => typeof x.lastModified !== 'string' && Array.isArray(x.drafts || [])
@ -177,7 +178,8 @@ export const createCtrl = (initial: State): [Store<State>, EditorActions] => {
const fetchData = async (): Promise<State> => {
const state: State = unwrap(store)
const room = window.location.pathname?.slice(1).trim()
const { searchParams } = useRouter<{ room: string }>()
const room = searchParams().room
const args = { room: room ?? undefined }
const data = await db.get('state')
let parsed: State
@ -309,7 +311,8 @@ export const createCtrl = (initial: State): [Store<State>, EditorActions] => {
const doStartCollab = async (state: State): Promise<State> => {
const backup = state.args?.room && state.collab?.room !== state.args.room
const room = state.args?.room ?? uuidv4()
window.history.replaceState(null, '', `/${room}`)
const { changeSearchParam } = useRouter<{ room: string }>()
changeSearchParam('room', room, true)
const { roomConnect } = await import('../prosemirror/p2p')
const [type, provider] = roomConnect(room)

View File

@ -9,7 +9,7 @@ button {
outline: none;
text-decoration: none;
background: none;
font-family: Muller, Arial, Helvetica, sans-serif;
font-family: inherit;
color: var(--foreground);
border: 1px solid var(--foreground);