@mirascript/monaco 0.1.87 → 0.1.89

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.
Files changed (54) hide show
  1. package/dist/basic/highlighter-manager.d.ts +7 -0
  2. package/dist/basic/highlighter-manager.d.ts.map +1 -0
  3. package/dist/basic/index.js +2 -2
  4. package/dist/basic/language-configuration.d.ts.map +1 -1
  5. package/dist/basic/textmate-to-monaco.d.ts +3 -0
  6. package/dist/basic/textmate-to-monaco.d.ts.map +1 -0
  7. package/dist/basic/tokens-provider.d.ts.map +1 -1
  8. package/dist/{chunk-JOHUNWDB.js → chunk-HULIQQS3.js} +6 -2
  9. package/dist/{chunk-JOHUNWDB.js.map → chunk-HULIQQS3.js.map} +1 -1
  10. package/dist/{chunk-6QSF4YTT.js → chunk-NW3ZHO3C.js} +70 -91
  11. package/dist/chunk-NW3ZHO3C.js.map +6 -0
  12. package/dist/contribute.d.ts +5 -1
  13. package/dist/contribute.d.ts.map +1 -1
  14. package/dist/index.js +7 -6
  15. package/dist/index.js.map +1 -1
  16. package/dist/lsp/index.d.ts +1 -1
  17. package/dist/lsp/index.d.ts.map +1 -1
  18. package/dist/lsp/index.js +252 -241
  19. package/dist/lsp/index.js.map +3 -3
  20. package/dist/lsp/providers/completion-item-provider/common-global-suggestions.d.ts +5 -0
  21. package/dist/lsp/providers/completion-item-provider/common-global-suggestions.d.ts.map +1 -0
  22. package/dist/lsp/providers/completion-item-provider/complete-fields.d.ts +5 -0
  23. package/dist/lsp/providers/completion-item-provider/complete-fields.d.ts.map +1 -0
  24. package/dist/lsp/providers/completion-item-provider/complete-global.d.ts +5 -0
  25. package/dist/lsp/providers/completion-item-provider/complete-global.d.ts.map +1 -0
  26. package/dist/lsp/providers/completion-item-provider/complete-local.d.ts +5 -0
  27. package/dist/lsp/providers/completion-item-provider/complete-local.d.ts.map +1 -0
  28. package/dist/lsp/providers/{completion-item-provider.d.ts → completion-item-provider/index.d.ts} +3 -11
  29. package/dist/lsp/providers/completion-item-provider/index.d.ts.map +1 -0
  30. package/dist/lsp/providers/completion-item-provider/interface.d.ts +16 -0
  31. package/dist/lsp/providers/completion-item-provider/interface.d.ts.map +1 -0
  32. package/dist/lsp/providers/completion-item-provider/utils.d.ts +11 -0
  33. package/dist/lsp/providers/completion-item-provider/utils.d.ts.map +1 -0
  34. package/dist/lsp/utils.d.ts +0 -2
  35. package/dist/lsp/utils.d.ts.map +1 -1
  36. package/package.json +6 -6
  37. package/src/basic/highlighter-manager.ts +38 -0
  38. package/src/basic/language-configuration.ts +16 -13
  39. package/src/basic/textmate-to-monaco.ts +49 -0
  40. package/src/basic/tokens-provider.ts +18 -127
  41. package/src/contribute.ts +5 -1
  42. package/src/index.ts +6 -6
  43. package/src/lsp/index.ts +1 -1
  44. package/src/lsp/providers/completion-item-provider/common-global-suggestions.ts +155 -0
  45. package/src/lsp/providers/completion-item-provider/complete-fields.ts +64 -0
  46. package/src/lsp/providers/completion-item-provider/complete-global.ts +82 -0
  47. package/src/lsp/providers/completion-item-provider/complete-local.ts +57 -0
  48. package/src/lsp/providers/completion-item-provider/index.ts +141 -0
  49. package/src/lsp/providers/completion-item-provider/interface.ts +17 -0
  50. package/src/lsp/providers/completion-item-provider/utils.ts +61 -0
  51. package/src/lsp/utils.ts +0 -13
  52. package/dist/chunk-6QSF4YTT.js.map +0 -6
  53. package/dist/lsp/providers/completion-item-provider.d.ts.map +0 -1
  54. package/src/lsp/providers/completion-item-provider.ts +0 -536
@@ -0,0 +1,141 @@
1
+ import { DiagnosticCode } from '@mirascript/mirascript/subtle';
2
+ import type { editor, languages, CancellationToken, IRange, Position } from '../../../monaco-api.js';
3
+ import { Provider } from '../base.js';
4
+ import { strictContainsPosition, wordAt } from '../../monaco-utils.js';
5
+ import { codeblock, valueDoc } from '../../utils.js';
6
+ import { COMMON_GLOBAL_SUGGESTIONS, kwSuggestion } from './common-global-suggestions.js';
7
+ import type { CustomCompletionItem } from './interface.js';
8
+ import { toCompletionItemRanges } from './utils.js';
9
+ import { completeFields } from './complete-fields.js';
10
+ import { completeGlobal } from './complete-global.js';
11
+ import { completeLocal } from './complete-local.js';
12
+
13
+ /**
14
+ * 自动完成
15
+ */
16
+ export class CompletionItemProvider extends Provider implements languages.CompletionItemProvider {
17
+ readonly triggerCharacters: string[] = ['.', ':'];
18
+
19
+ /** @inheritdoc */
20
+ async provideCompletionItems(
21
+ model: editor.ITextModel,
22
+ position: Position,
23
+ context: languages.CompletionContext,
24
+ token: CancellationToken,
25
+ ): Promise<languages.CompletionList | undefined> {
26
+ const compiled = await this.getCompileResult(model);
27
+ if (!compiled) return undefined;
28
+
29
+ if (context.triggerCharacter === '.') {
30
+ const prevWord = model.getWordAtPosition({
31
+ lineNumber: position.lineNumber,
32
+ column: position.column - 1,
33
+ });
34
+ if (prevWord?.word === 'global') {
35
+ const globals = await completeGlobal(
36
+ model,
37
+ undefined,
38
+ [],
39
+ toCompletionItemRanges(position, {
40
+ startLineNumber: position.lineNumber,
41
+ startColumn: position.column,
42
+ endLineNumber: position.lineNumber,
43
+ endColumn: position.column,
44
+ }),
45
+ true,
46
+ );
47
+ return { suggestions: globals };
48
+ }
49
+ }
50
+
51
+ const word = wordAt(model, position);
52
+ const prev = model.getValueInRange({
53
+ startLineNumber: position.lineNumber,
54
+ startColumn: (word?.range.startColumn ?? position.column) - 2,
55
+ endLineNumber: position.lineNumber,
56
+ endColumn: word?.range.startColumn ?? position.column,
57
+ });
58
+
59
+ if (prev !== '::' && context.triggerCharacter === ':') {
60
+ return undefined; // 不是 :: 触发的
61
+ }
62
+
63
+ // suggest variables
64
+ let char: string | undefined;
65
+ let range: IRange;
66
+ const def = compiled.variableAccessAt(model, position);
67
+ if (def) {
68
+ if (def.ref == null) {
69
+ // 输入位置是变量定义
70
+ const suggestions: languages.CompletionItem[] = [];
71
+ if (
72
+ word &&
73
+ compiled.tags.some(
74
+ (t) => strictContainsPosition(t.range, position) && t.code === DiagnosticCode.MatchExpression,
75
+ )
76
+ ) {
77
+ suggestions.push(
78
+ kwSuggestion('case', toCompletionItemRanges(position, word.range)),
79
+ kwSuggestion('if', toCompletionItemRanges(position, word.range)),
80
+ );
81
+ }
82
+ return { suggestions };
83
+ }
84
+ const d = def.def;
85
+ range = d.references[def.ref]!.range;
86
+ char = model.getValueInRange({
87
+ startLineNumber: range.startLineNumber,
88
+ startColumn: range.startColumn,
89
+ endLineNumber: range.startLineNumber,
90
+ endColumn: range.startColumn + 1,
91
+ });
92
+ } else if (word) {
93
+ range = word.range;
94
+ char = word.word[0];
95
+ } else {
96
+ range = {
97
+ startLineNumber: position.lineNumber,
98
+ startColumn: position.column,
99
+ endLineNumber: position.lineNumber,
100
+ endColumn: position.column,
101
+ };
102
+ }
103
+ char = char?.toLowerCase();
104
+
105
+ const completionRange = toCompletionItemRanges(position, range);
106
+
107
+ if (/[^.]\.$/u.test(prev)) {
108
+ const suggestions = await completeFields(model, position, char, completionRange);
109
+ return { suggestions };
110
+ }
111
+
112
+ const suggestions = COMMON_GLOBAL_SUGGESTIONS(completionRange, prev === '::');
113
+ const locals = await completeLocal(model, position, char, completionRange);
114
+ const globals = await completeGlobal(model, char, locals, completionRange, false);
115
+ suggestions.push(...locals, ...globals);
116
+
117
+ return { suggestions };
118
+ }
119
+
120
+ /** @inheritdoc */
121
+ resolveCompletionItem(
122
+ item: languages.CompletionItem,
123
+ token: CancellationToken,
124
+ ): languages.CompletionItem | undefined {
125
+ if (typeof item.label == 'string') {
126
+ // not a dynamic completion item
127
+ return item;
128
+ }
129
+ const { vmValue, isField, vmParent } = item as CustomCompletionItem;
130
+ const { label } = item.label;
131
+ if (vmValue !== undefined || vmParent) {
132
+ if (item.documentation) return item;
133
+ const last = label.split('.').pop()!;
134
+ const def = valueDoc(last, vmValue, isField ? 'field' : 'hint', vmParent ?? null);
135
+ item.documentation = {
136
+ value: `${codeblock('\0' + def.script)}\n${def.doc.join('\n')}`,
137
+ };
138
+ }
139
+ return item;
140
+ }
141
+ }
@@ -0,0 +1,17 @@
1
+ import type { VmValue, VmExtern, VmModule } from '@mirascript/mirascript';
2
+ import type { languages } from '../../../monaco-api.js';
3
+ import type { MonacoContext } from '../base.js';
4
+
5
+ /** 扩展完成项 */
6
+ export interface CustomCompletionItem extends languages.CompletionItem {
7
+ /** 是否为字段 */
8
+ isField: boolean;
9
+ /** 对应的父值 */
10
+ vmParent?: MonacoContext | VmExtern | VmModule;
11
+ /** 对应的变量值 */
12
+ vmValue?: VmValue;
13
+ }
14
+
15
+ export const DESC_GLOBAL = '(global)';
16
+ export const DESC_LOCAL = '(local)';
17
+ export const DESC_FIELD = '(field)';
@@ -0,0 +1,61 @@
1
+ import { getVmFunctionInfo, type VmValue, isVmExtern, isVmModule, type VmFunctionInfo } from '@mirascript/mirascript';
2
+ import { type editor, type IPosition, type IRange, languages, Range } from '../../../monaco-api.js';
3
+ import { paramsList } from '../../utils.js';
4
+ import type { LocalDefinition } from '../../compile-result.js';
5
+ import type { CustomCompletionItem } from './interface.js';
6
+
7
+ /** 构造 filterText */
8
+ export function filterText(key: string, char: string | undefined): string {
9
+ if (char == null || key.startsWith(char)) return key;
10
+ if (key.startsWith('@')) return key.replace(/^@+/, '');
11
+ if (key.startsWith('$')) return key.replace(/^\$+/, '');
12
+ return key;
13
+ }
14
+
15
+ /** 构造选项 */
16
+ export function completion(
17
+ model: editor.ITextModel,
18
+ description: string,
19
+ key: string,
20
+ value: VmValue | undefined,
21
+ fn: VmFunctionInfo | LocalDefinition['fn'] | undefined,
22
+ field: boolean,
23
+ ): Pick<CustomCompletionItem, 'label' | 'kind' | 'commitCharacters' | 'vmValue' | 'isField'> {
24
+ let detail = '';
25
+ let kind: languages.CompletionItemKind;
26
+ if (fn == null && typeof value == 'function') {
27
+ fn = getVmFunctionInfo(value);
28
+ }
29
+ if (fn != null) {
30
+ detail = paramsList(model, fn);
31
+ kind = field ? languages.CompletionItemKind.Function : languages.CompletionItemKind.Method;
32
+ } else if (isVmModule(value)) {
33
+ kind = languages.CompletionItemKind.Module;
34
+ } else if (isVmExtern(value) && typeof value.value == 'function') {
35
+ if (value.value.prototype != null && (key[0] ?? '').toUpperCase() === key[0]) {
36
+ kind = languages.CompletionItemKind.Class;
37
+ } else {
38
+ detail = '(..)';
39
+ kind = value.thisArg ? languages.CompletionItemKind.Method : languages.CompletionItemKind.Function;
40
+ }
41
+ } else if (!field && key.startsWith('@')) {
42
+ kind = languages.CompletionItemKind.Constant;
43
+ } else {
44
+ kind = field ? languages.CompletionItemKind.Field : languages.CompletionItemKind.Variable;
45
+ }
46
+ return {
47
+ label: { label: key, description, detail },
48
+ kind,
49
+ commitCharacters: fn ? ['!', '('] : ['!', '.', '[', '('],
50
+ vmValue: value,
51
+ isField: field,
52
+ };
53
+ }
54
+
55
+ /** 获取完成范围 */
56
+ export function toCompletionItemRanges(position: IPosition, range: IRange): languages.CompletionItemRanges {
57
+ return {
58
+ replace: range,
59
+ insert: Range.fromPositions(Range.getStartPosition(range), position),
60
+ };
61
+ }
package/src/lsp/utils.ts CHANGED
@@ -481,19 +481,6 @@ export function getField(obj: VmAny, key: string | number): VmAny {
481
481
  }
482
482
  }
483
483
 
484
- /** 列出属性 */
485
- export function listFields(obj: VmAny, includeNonEnumerable: boolean): Array<string | number> {
486
- if (obj == null || typeof obj != 'object') return [];
487
- if (isVmWrapper(obj)) {
488
- try {
489
- return obj.keys(includeNonEnumerable);
490
- } catch {
491
- return [];
492
- }
493
- }
494
- return lib.keys(obj);
495
- }
496
-
497
484
  /** 是否已弃用 */
498
485
  export function isDeprecatedGlobal(globals: MonacoContext, name: string): VmFunctionInfo['deprecated'] {
499
486
  if (!globals.has(name)) {
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/constants.ts", "../src/basic/language-configuration.ts", "../src/basic/tokens-provider.ts", "../src/basic/index.ts"],
4
- "mappings": "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",
5
- "names": []
6
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"completion-item-provider.d.ts","sourceRoot":"","sources":["../../../src/lsp/providers/completion-item-provider.ts"],"names":[],"mappings":"AAaA,OAAO,EACH,KAAK,MAAM,EACX,SAAS,EACT,KAAK,iBAAiB,EAGtB,KAAK,QAAQ,EAEhB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAsB,MAAM,WAAW,CAAC;AA2NzD;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,QAAS,YAAW,SAAS,CAAC,sBAAsB;IAC5F,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAc;IAClD,aAAa;YACC,cAAc;IA2E5B,aAAa;YACC,aAAa;IAuC3B,aAAa;YACC,cAAc;IA0C5B,aAAa;IACb,OAAO,CAAC,sBAAsB;IAO9B,kBAAkB;IACZ,sBAAsB,CACxB,KAAK,EAAE,MAAM,CAAC,UAAU,EACxB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,SAAS,CAAC,iBAAiB,EACpC,KAAK,EAAE,iBAAiB,GACzB,OAAO,CAAC,SAAS,CAAC,cAAc,GAAG,SAAS,CAAC;IA+FhD,kBAAkB;IAClB,qBAAqB,CACjB,IAAI,EAAE,SAAS,CAAC,cAAc,EAC9B,KAAK,EAAE,iBAAiB,GACzB,SAAS,CAAC,cAAc,GAAG,SAAS;CAiB1C"}