nuxt-codemirror 0.0.11 → 0.0.14
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.
package/dist/module.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _nuxt_schema from '@nuxt/schema';
|
|
2
2
|
|
|
3
|
-
declare const _default: _nuxt_schema.NuxtModule<_nuxt_schema.ModuleOptions>;
|
|
3
|
+
declare const _default: _nuxt_schema.NuxtModule<_nuxt_schema.ModuleOptions, _nuxt_schema.ModuleOptions, false>;
|
|
4
4
|
|
|
5
5
|
export { _default as default };
|
package/dist/module.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _nuxt_schema from '@nuxt/schema';
|
|
2
2
|
|
|
3
|
-
declare const _default: _nuxt_schema.NuxtModule<_nuxt_schema.ModuleOptions>;
|
|
3
|
+
declare const _default: _nuxt_schema.NuxtModule<_nuxt_schema.ModuleOptions, _nuxt_schema.ModuleOptions, false>;
|
|
4
4
|
|
|
5
5
|
export { _default as default };
|
package/dist/module.json
CHANGED
|
@@ -70,7 +70,7 @@ export function useNuxtCodeMirror(props) {
|
|
|
70
70
|
indentWithTab: defaultIndentWithTab,
|
|
71
71
|
basicSetup: defaultBasicSetup
|
|
72
72
|
});
|
|
73
|
-
let getExtensions = [updateListener, defaultThemeOption
|
|
73
|
+
let getExtensions = [defaultExtensions, updateListener, defaultThemeOption];
|
|
74
74
|
if (onUpdate && typeof onUpdate === "function") {
|
|
75
75
|
getExtensions.push(EditorView.updateListener.of(onUpdate));
|
|
76
76
|
}
|
|
@@ -1,7 +1,33 @@
|
|
|
1
1
|
import type { Extension } from '@codemirror/state';
|
|
2
|
-
import { type BasicSetupOptions } from '@uiw/codemirror-extensions-basic-setup';
|
|
3
2
|
export * from '@codemirror/theme-one-dark';
|
|
4
3
|
export * from './theme/light.js';
|
|
4
|
+
export interface BasicSetupOptions {
|
|
5
|
+
lineNumbers?: boolean;
|
|
6
|
+
highlightActiveLineGutter?: boolean;
|
|
7
|
+
highlightSpecialChars?: boolean;
|
|
8
|
+
history?: boolean;
|
|
9
|
+
foldGutter?: boolean;
|
|
10
|
+
drawSelection?: boolean;
|
|
11
|
+
dropCursor?: boolean;
|
|
12
|
+
allowMultipleSelections?: boolean;
|
|
13
|
+
indentOnInput?: boolean;
|
|
14
|
+
syntaxHighlighting?: boolean;
|
|
15
|
+
bracketMatching?: boolean;
|
|
16
|
+
closeBrackets?: boolean;
|
|
17
|
+
autocompletion?: boolean;
|
|
18
|
+
rectangularSelection?: boolean;
|
|
19
|
+
crosshairCursor?: boolean;
|
|
20
|
+
highlightActiveLine?: boolean;
|
|
21
|
+
highlightSelectionMatches?: boolean;
|
|
22
|
+
defaultKeymap?: boolean;
|
|
23
|
+
closeBracketsKeymap?: boolean;
|
|
24
|
+
searchKeymap?: boolean;
|
|
25
|
+
historyKeymap?: boolean;
|
|
26
|
+
foldKeymap?: boolean;
|
|
27
|
+
completionKeymap?: boolean;
|
|
28
|
+
lintKeymap?: boolean;
|
|
29
|
+
tabSize?: number;
|
|
30
|
+
}
|
|
5
31
|
export interface DefaultExtensionsOptions {
|
|
6
32
|
indentWithTab?: boolean;
|
|
7
33
|
basicSetup?: boolean | BasicSetupOptions;
|
|
@@ -10,4 +36,9 @@ export interface DefaultExtensionsOptions {
|
|
|
10
36
|
readOnly?: boolean;
|
|
11
37
|
editable?: boolean;
|
|
12
38
|
}
|
|
39
|
+
export declare const minimalSetup: Extension;
|
|
40
|
+
/**
|
|
41
|
+
* Basic setup that includes standard CodeMirror extensions
|
|
42
|
+
*/
|
|
43
|
+
export declare const basicSetup: (options?: BasicSetupOptions) => Extension[];
|
|
13
44
|
export declare const getDefaultExtensions: (optios?: DefaultExtensionsOptions) => Extension[];
|
|
@@ -1,11 +1,90 @@
|
|
|
1
|
-
import { indentWithTab } from "@codemirror/commands";
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
import { indentWithTab, history, defaultKeymap, historyKeymap } from "@codemirror/commands";
|
|
2
|
+
import {
|
|
3
|
+
EditorView,
|
|
4
|
+
keymap,
|
|
5
|
+
placeholder,
|
|
6
|
+
lineNumbers,
|
|
7
|
+
highlightActiveLineGutter,
|
|
8
|
+
highlightSpecialChars,
|
|
9
|
+
drawSelection,
|
|
10
|
+
dropCursor,
|
|
11
|
+
rectangularSelection,
|
|
12
|
+
crosshairCursor,
|
|
13
|
+
highlightActiveLine
|
|
14
|
+
} from "@codemirror/view";
|
|
4
15
|
import { oneDark } from "@codemirror/theme-one-dark";
|
|
5
16
|
import { EditorState } from "@codemirror/state";
|
|
17
|
+
import { highlightSelectionMatches, searchKeymap } from "@codemirror/search";
|
|
18
|
+
import { closeBrackets, autocompletion, closeBracketsKeymap, completionKeymap } from "@codemirror/autocomplete";
|
|
19
|
+
import {
|
|
20
|
+
foldGutter,
|
|
21
|
+
indentOnInput,
|
|
22
|
+
syntaxHighlighting,
|
|
23
|
+
defaultHighlightStyle,
|
|
24
|
+
bracketMatching,
|
|
25
|
+
indentUnit,
|
|
26
|
+
foldKeymap
|
|
27
|
+
} from "@codemirror/language";
|
|
28
|
+
import { lintKeymap } from "@codemirror/lint";
|
|
6
29
|
import { defaultLightThemeOption } from "./theme/light.js";
|
|
7
30
|
export * from "@codemirror/theme-one-dark";
|
|
8
31
|
export * from "./theme/light.js";
|
|
32
|
+
export const minimalSetup = (() => [
|
|
33
|
+
highlightSpecialChars(),
|
|
34
|
+
history(),
|
|
35
|
+
drawSelection(),
|
|
36
|
+
syntaxHighlighting(defaultHighlightStyle, { fallback: true }),
|
|
37
|
+
keymap.of([
|
|
38
|
+
...defaultKeymap,
|
|
39
|
+
...historyKeymap
|
|
40
|
+
])
|
|
41
|
+
])();
|
|
42
|
+
export const basicSetup = (options = {}) => {
|
|
43
|
+
let keymaps = [];
|
|
44
|
+
if (options.closeBracketsKeymap !== false) {
|
|
45
|
+
keymaps = keymaps.concat(closeBracketsKeymap);
|
|
46
|
+
}
|
|
47
|
+
if (options.defaultKeymap !== false) {
|
|
48
|
+
keymaps = keymaps.concat(defaultKeymap);
|
|
49
|
+
}
|
|
50
|
+
if (options.searchKeymap !== false) {
|
|
51
|
+
keymaps = keymaps.concat(searchKeymap);
|
|
52
|
+
}
|
|
53
|
+
if (options.historyKeymap !== false) {
|
|
54
|
+
keymaps = keymaps.concat(historyKeymap);
|
|
55
|
+
}
|
|
56
|
+
if (options.foldKeymap !== false) {
|
|
57
|
+
keymaps = keymaps.concat(foldKeymap);
|
|
58
|
+
}
|
|
59
|
+
if (options.completionKeymap !== false) {
|
|
60
|
+
keymaps = keymaps.concat(completionKeymap);
|
|
61
|
+
}
|
|
62
|
+
if (options.lintKeymap !== false) {
|
|
63
|
+
keymaps = keymaps.concat(lintKeymap);
|
|
64
|
+
}
|
|
65
|
+
const extensions = [];
|
|
66
|
+
if (options.lineNumbers !== false) extensions.push(lineNumbers());
|
|
67
|
+
if (options.highlightActiveLineGutter !== false) extensions.push(highlightActiveLineGutter());
|
|
68
|
+
if (options.highlightSpecialChars !== false) extensions.push(highlightSpecialChars());
|
|
69
|
+
if (options.history !== false) extensions.push(history());
|
|
70
|
+
if (options.foldGutter !== false) extensions.push(foldGutter());
|
|
71
|
+
if (options.drawSelection !== false) extensions.push(drawSelection());
|
|
72
|
+
if (options.dropCursor !== false) extensions.push(dropCursor());
|
|
73
|
+
if (options.allowMultipleSelections !== false) extensions.push(EditorState.allowMultipleSelections.of(true));
|
|
74
|
+
if (options.indentOnInput !== false) extensions.push(indentOnInput());
|
|
75
|
+
if (options.syntaxHighlighting !== false)
|
|
76
|
+
extensions.push(syntaxHighlighting(defaultHighlightStyle));
|
|
77
|
+
if (options.bracketMatching !== false) extensions.push(bracketMatching());
|
|
78
|
+
if (options.closeBrackets !== false) extensions.push(closeBrackets());
|
|
79
|
+
if (options.autocompletion !== false) extensions.push(autocompletion());
|
|
80
|
+
if (options.rectangularSelection !== false) extensions.push(rectangularSelection());
|
|
81
|
+
if (options.crosshairCursor !== false) extensions.push(crosshairCursor());
|
|
82
|
+
if (options.highlightActiveLine !== false) extensions.push(highlightActiveLine());
|
|
83
|
+
if (options.highlightSelectionMatches !== false) extensions.push(highlightSelectionMatches());
|
|
84
|
+
if (options.tabSize && typeof options.tabSize === "number")
|
|
85
|
+
extensions.push(indentUnit.of(" ".repeat(options.tabSize)));
|
|
86
|
+
return extensions.concat([keymap.of(keymaps.flat())]).filter(Boolean);
|
|
87
|
+
};
|
|
9
88
|
export const getDefaultExtensions = (optios = {}) => {
|
|
10
89
|
const {
|
|
11
90
|
indentWithTab: defaultIndentWithTab = true,
|
|
@@ -21,9 +100,9 @@ export const getDefaultExtensions = (optios = {}) => {
|
|
|
21
100
|
}
|
|
22
101
|
if (defaultBasicSetup) {
|
|
23
102
|
if (typeof defaultBasicSetup === "boolean") {
|
|
24
|
-
getExtensions.
|
|
103
|
+
getExtensions.push(basicSetup());
|
|
25
104
|
} else {
|
|
26
|
-
getExtensions.unshift(
|
|
105
|
+
getExtensions.unshift(minimalSetup);
|
|
27
106
|
}
|
|
28
107
|
}
|
|
29
108
|
if (placeholderStr) {
|
|
@@ -48,5 +127,5 @@ export const getDefaultExtensions = (optios = {}) => {
|
|
|
48
127
|
if (readOnly) {
|
|
49
128
|
getExtensions.push(EditorState.readOnly.of(true));
|
|
50
129
|
}
|
|
51
|
-
return
|
|
130
|
+
return getExtensions;
|
|
52
131
|
};
|
package/package.json
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nuxt-codemirror",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.14",
|
|
4
4
|
"description": "Nuxt codemirror module",
|
|
5
5
|
"repository": "https://github.com/ThimoDEV/nuxt-codemirror",
|
|
6
|
+
"homepage": "https://github.com/ThimoDEV/nuxt-codemirror#readme",
|
|
6
7
|
"license": "MIT",
|
|
7
8
|
"type": "module",
|
|
8
9
|
"author": {
|
|
@@ -33,32 +34,36 @@
|
|
|
33
34
|
"test:types": "vue-tsc --noEmit && cd playground && vue-tsc --noEmit"
|
|
34
35
|
},
|
|
35
36
|
"dependencies": {
|
|
36
|
-
"@babel/runtime": "^7.
|
|
37
|
-
"@codemirror/
|
|
38
|
-
"@codemirror/
|
|
39
|
-
"@codemirror/
|
|
40
|
-
"@codemirror/
|
|
41
|
-
"@
|
|
42
|
-
"@
|
|
37
|
+
"@babel/runtime": "^7.26.10",
|
|
38
|
+
"@codemirror/lang-javascript": "^6.2.3",
|
|
39
|
+
"@codemirror/autocomplete": "^6.18.6",
|
|
40
|
+
"@codemirror/commands": "^6.8.0",
|
|
41
|
+
"@codemirror/language": "^6.10.8",
|
|
42
|
+
"@codemirror/lint": "^6.8.4",
|
|
43
|
+
"@codemirror/search": "^6.5.10",
|
|
44
|
+
"@codemirror/state": "6.5.2",
|
|
45
|
+
"@codemirror/theme-one-dark": "^6.1.2",
|
|
46
|
+
"@codemirror/view": "6.36.4",
|
|
47
|
+
"@nuxt/kit": "^3.16.0"
|
|
43
48
|
},
|
|
44
49
|
"devDependencies": {
|
|
45
|
-
"@nuxt/devtools": "^
|
|
46
|
-
"@nuxt/eslint-config": "^
|
|
47
|
-
"@nuxt/module-builder": "^0.8.
|
|
48
|
-
"@nuxt/schema": "^3.
|
|
49
|
-
"@nuxt/test-utils": "^3.
|
|
50
|
-
"@types/node": "^
|
|
51
|
-
"changelogen": "^0.
|
|
52
|
-
"eslint": "^9.
|
|
53
|
-
"nuxt": "^3.
|
|
54
|
-
"typescript": "
|
|
55
|
-
"vitest": "^
|
|
56
|
-
"vue-tsc": "
|
|
50
|
+
"@nuxt/devtools": "^2.2.1",
|
|
51
|
+
"@nuxt/eslint-config": "^1.2.0",
|
|
52
|
+
"@nuxt/module-builder": "^0.8.4",
|
|
53
|
+
"@nuxt/schema": "^3.16.0",
|
|
54
|
+
"@nuxt/test-utils": "^3.17.2",
|
|
55
|
+
"@types/node": "^22.13.10",
|
|
56
|
+
"changelogen": "^0.6.1",
|
|
57
|
+
"eslint": "^9.22.0",
|
|
58
|
+
"nuxt": "^3.16.0",
|
|
59
|
+
"typescript": "5.3.2",
|
|
60
|
+
"vitest": "^3.0.8",
|
|
61
|
+
"vue-tsc": "2.0.29"
|
|
57
62
|
},
|
|
58
63
|
"keywords": [
|
|
59
64
|
"nuxt",
|
|
60
65
|
"codemirror",
|
|
61
66
|
"vue"
|
|
62
67
|
],
|
|
63
|
-
"packageManager": "pnpm@
|
|
64
|
-
}
|
|
68
|
+
"packageManager": "pnpm@10.6.2"
|
|
69
|
+
}
|