Skip to content

Commit f5c3584

Browse files
committed
chore(autofocus): migrate Autofocus extension to TypeScript
Signed-off-by: Jonas <jonas@freesources.org>
1 parent 918b492 commit f5c3584

2 files changed

Lines changed: 17 additions & 5 deletions

File tree

src/components/Editor.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ import { Collaboration } from '@tiptap/extension-collaboration'
8585
import { useElementSize } from '@vueuse/core'
8686
import { defineComponent, inject, ref, shallowRef, watch } from 'vue'
8787
import { Doc, logUpdate } from 'yjs'
88-
import Autofocus from '../extensions/Autofocus.js'
88+
import Autofocus from '../extensions/Autofocus.ts'
8989
9090
import { provideEditor } from '../composables/useEditor.ts'
9191
import { provideEditorFlags } from '../composables/useEditorFlags.ts'
Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,19 @@
55

66
import { Extension } from '@tiptap/core'
77

8-
export default Extension.create({
8+
export interface AutofocusOptions {
9+
fileId: number | null
10+
}
11+
12+
declare module '@tiptap/core' {
13+
interface Commands<ReturnType> {
14+
autofocus: {
15+
autofocus: () => ReturnType
16+
}
17+
}
18+
}
19+
20+
export default Extension.create<AutofocusOptions>({
921
addOptions() {
1022
return {
1123
fileId: null,
@@ -28,18 +40,18 @@ export default Extension.create({
2840
}
2941

3042
const pos = editor.state.selection.$anchor.pos
31-
sessionStorage.setItem('text-lastPos-' + this.options.fileId, pos)
43+
sessionStorage.setItem('text-lastPos-' + this.options.fileId, String(pos))
3244
},
3345
addCommands() {
3446
return {
3547
autofocus:
3648
() =>
37-
({ commands, editor }) => {
49+
({ commands }) => {
3850
const pos = sessionStorage.getItem(
3951
'text-lastPos-' + this.options.fileId,
4052
)
4153
if (pos) {
42-
return commands.focus(pos)
54+
return commands.focus(Number(pos))
4355
}
4456

4557
return commands.focus('start')

0 commit comments

Comments
 (0)