@prosekit/vue 0.1.0 → 0.1.1

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.
@@ -150,7 +150,16 @@ declare function useEditor<E extends Extension = any>(options?: {
150
150
  export { useEditor }
151
151
  export { useEditor as useEditor_alias_1 }
152
152
 
153
- export declare function useExtension<T extends Extension = Extension>(extension: Ref<T>): void;
153
+ /**
154
+ * Add an extension to the editor.
155
+ *
156
+ * It accepts a ref to an optional extension. If the extension is changed, the
157
+ * previous extension will be removed and the new one (if not null) will be
158
+ * added.
159
+ */
160
+ declare function useExtension<T extends Extension = Extension>(extension: Ref<T | null>): void;
161
+ export { useExtension }
162
+ export { useExtension as useExtension_alias_1 }
154
163
 
155
164
  declare function useKeymap(keymap: Ref<Keymap>): void;
156
165
  export { useKeymap }
@@ -1,4 +1,5 @@
1
1
  export { ProseKit } from './_tsup-dts-rollup';
2
2
  export { ProseKitProps } from './_tsup-dts-rollup';
3
- export { useKeymap } from './_tsup-dts-rollup';
4
3
  export { useEditor } from './_tsup-dts-rollup';
4
+ export { useExtension } from './_tsup-dts-rollup';
5
+ export { useKeymap } from './_tsup-dts-rollup';
@@ -29,14 +29,6 @@ var ProseKit = defineComponent(
29
29
  { props: ["editor"] }
30
30
  );
31
31
 
32
- // src/hooks/use-keymap.ts
33
- import { defineKeymap } from "@prosekit/core";
34
- import { computed, unref as unref2 } from "vue";
35
-
36
- // src/hooks/use-extension.ts
37
- import "@prosekit/core";
38
- import { unref, watchPostEffect } from "vue";
39
-
40
32
  // src/hooks/use-editor.ts
41
33
  import { defineUpdateHandler } from "@prosekit/core";
42
34
  import {
@@ -61,14 +53,21 @@ function useEditor(options) {
61
53
  }
62
54
 
63
55
  // src/hooks/use-extension.ts
56
+ import "@prosekit/core";
57
+ import { unref, watchPostEffect } from "vue";
64
58
  function useExtension(extension) {
65
59
  const editor = useEditor();
66
60
  watchPostEffect((onCleanup) => {
67
- onCleanup(editor.value.use(unref(extension)));
61
+ const ext = unref(extension);
62
+ if (ext) {
63
+ onCleanup(editor.value.use(ext));
64
+ }
68
65
  });
69
66
  }
70
67
 
71
68
  // src/hooks/use-keymap.ts
69
+ import { defineKeymap } from "@prosekit/core";
70
+ import { computed, unref as unref2 } from "vue";
72
71
  function useKeymap(keymap) {
73
72
  const extension = computed(() => defineKeymap(unref2(keymap)));
74
73
  useExtension(extension);
@@ -76,5 +75,6 @@ function useKeymap(keymap) {
76
75
  export {
77
76
  ProseKit,
78
77
  useEditor,
78
+ useExtension,
79
79
  useKeymap
80
80
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@prosekit/vue",
3
3
  "type": "module",
4
- "version": "0.1.0",
4
+ "version": "0.1.1",
5
5
  "private": false,
6
6
  "author": {
7
7
  "name": "ocavue",
@@ -98,8 +98,8 @@
98
98
  },
99
99
  "devDependencies": {
100
100
  "@prosekit/dev": "*",
101
- "tsup": "^7.2.0",
102
- "typescript": "^5.2.2",
101
+ "tsup": "^8.0.1",
102
+ "typescript": "^5.3.2",
103
103
  "vitest": "^0.34.6",
104
104
  "vue": "^3.3.8"
105
105
  },
package/src/index.ts ADDED
@@ -0,0 +1,4 @@
1
+ export { ProseKit, type ProseKitProps } from './components/prosekit'
2
+ export { useEditor } from './hooks/use-editor'
3
+ export { useExtension } from './hooks/use-extension'
4
+ export { useKeymap } from './hooks/use-keymap'