@opensumi/ide-ai-native 3.0.3 → 3.0.4-next-1716367246.0

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 (77) hide show
  1. package/lib/browser/inline-completions/completeProvider.d.ts +5 -3
  2. package/lib/browser/inline-completions/completeProvider.d.ts.map +1 -1
  3. package/lib/browser/inline-completions/completeProvider.js +16 -30
  4. package/lib/browser/inline-completions/completeProvider.js.map +1 -1
  5. package/lib/browser/inline-completions/constants.d.ts +2 -6
  6. package/lib/browser/inline-completions/constants.d.ts.map +1 -1
  7. package/lib/browser/inline-completions/constants.js +81 -4
  8. package/lib/browser/inline-completions/constants.js.map +1 -1
  9. package/lib/browser/inline-completions/prompt/const.d.ts +9 -0
  10. package/lib/browser/inline-completions/prompt/const.d.ts.map +1 -0
  11. package/lib/browser/inline-completions/prompt/const.js +284 -0
  12. package/lib/browser/inline-completions/prompt/const.js.map +1 -0
  13. package/lib/browser/inline-completions/prompt/importedFiles.d.ts +6 -0
  14. package/lib/browser/inline-completions/prompt/importedFiles.d.ts.map +1 -0
  15. package/lib/browser/inline-completions/prompt/importedFiles.js +77 -0
  16. package/lib/browser/inline-completions/prompt/importedFiles.js.map +1 -0
  17. package/lib/browser/inline-completions/prompt/jaccardMatcher.d.ts +31 -0
  18. package/lib/browser/inline-completions/prompt/jaccardMatcher.d.ts.map +1 -0
  19. package/lib/browser/inline-completions/prompt/jaccardMatcher.js +75 -0
  20. package/lib/browser/inline-completions/prompt/jaccardMatcher.js.map +1 -0
  21. package/lib/browser/inline-completions/prompt/languages.d.ts +4 -0
  22. package/lib/browser/inline-completions/prompt/languages.d.ts.map +1 -0
  23. package/lib/browser/inline-completions/prompt/languages.js +67 -0
  24. package/lib/browser/inline-completions/prompt/languages.js.map +1 -0
  25. package/lib/browser/inline-completions/prompt/matcher.d.ts +42 -0
  26. package/lib/browser/inline-completions/prompt/matcher.d.ts.map +1 -0
  27. package/lib/browser/inline-completions/prompt/matcher.js +279 -0
  28. package/lib/browser/inline-completions/prompt/matcher.js.map +1 -0
  29. package/lib/browser/inline-completions/prompt/prompt.d.ts +24 -0
  30. package/lib/browser/inline-completions/prompt/prompt.d.ts.map +1 -0
  31. package/lib/browser/inline-completions/prompt/prompt.js +242 -0
  32. package/lib/browser/inline-completions/prompt/prompt.js.map +1 -0
  33. package/lib/browser/inline-completions/prompt/similarSnippets.d.ts +9 -0
  34. package/lib/browser/inline-completions/prompt/similarSnippets.d.ts.map +1 -0
  35. package/lib/browser/inline-completions/prompt/similarSnippets.js +110 -0
  36. package/lib/browser/inline-completions/prompt/similarSnippets.js.map +1 -0
  37. package/lib/browser/inline-completions/prompt/tokenizer.d.ts +4 -0
  38. package/lib/browser/inline-completions/prompt/tokenizer.d.ts.map +1 -0
  39. package/lib/browser/inline-completions/prompt/tokenizer.js +18 -0
  40. package/lib/browser/inline-completions/prompt/tokenizer.js.map +1 -0
  41. package/lib/browser/inline-completions/provider.d.ts +5 -12
  42. package/lib/browser/inline-completions/provider.d.ts.map +1 -1
  43. package/lib/browser/inline-completions/provider.js +79 -44
  44. package/lib/browser/inline-completions/provider.js.map +1 -1
  45. package/lib/browser/inline-completions/types.d.ts +154 -0
  46. package/lib/browser/inline-completions/types.d.ts.map +1 -0
  47. package/lib/browser/inline-completions/types.js +59 -0
  48. package/lib/browser/inline-completions/types.js.map +1 -0
  49. package/lib/browser/languages/parser.d.ts +6 -0
  50. package/lib/browser/languages/parser.d.ts.map +1 -1
  51. package/lib/browser/languages/parser.js +140 -1
  52. package/lib/browser/languages/parser.js.map +1 -1
  53. package/lib/browser/languages/tree-sitter/language-facts/types.d.ts +1 -1
  54. package/lib/browser/languages/tree-sitter/wasm-manager.d.ts +2 -2
  55. package/lib/browser/languages/tree-sitter/wasm-manager.d.ts.map +1 -1
  56. package/lib/browser/languages/tree-sitter/wasm-manager.js +2 -2
  57. package/lib/browser/languages/tree-sitter/wasm-manager.js.map +1 -1
  58. package/lib/common/utils.d.ts +5 -0
  59. package/lib/common/utils.d.ts.map +1 -0
  60. package/lib/common/utils.js +26 -0
  61. package/lib/common/utils.js.map +1 -0
  62. package/package.json +20 -19
  63. package/src/browser/inline-completions/completeProvider.ts +26 -35
  64. package/src/browser/inline-completions/constants.ts +87 -7
  65. package/src/browser/inline-completions/prompt/const.ts +286 -0
  66. package/src/browser/inline-completions/prompt/importedFiles.ts +92 -0
  67. package/src/browser/inline-completions/prompt/jaccardMatcher.ts +98 -0
  68. package/src/browser/inline-completions/prompt/languages.ts +65 -0
  69. package/src/browser/inline-completions/prompt/matcher.ts +328 -0
  70. package/src/browser/inline-completions/prompt/prompt.ts +297 -0
  71. package/src/browser/inline-completions/prompt/similarSnippets.ts +130 -0
  72. package/src/browser/inline-completions/prompt/tokenizer.ts +16 -0
  73. package/src/browser/inline-completions/provider.ts +107 -42
  74. package/src/browser/inline-completions/types.ts +169 -0
  75. package/src/browser/languages/parser.ts +147 -0
  76. package/src/browser/languages/tree-sitter/wasm-manager.ts +3 -3
  77. package/src/common/utils.ts +23 -0
@@ -0,0 +1,154 @@
1
+ import { URI } from '@opensumi/ide-core-common';
2
+ export declare enum TokenizerName {
3
+ cl100k_base = "cl100k_base",
4
+ gpt2 = "gpt2",
5
+ r50k_base = "r50k_base",
6
+ p50k_base = "p50k_base",
7
+ p50k_edit = "p50k_edit",
8
+ o200k_base = "o200k_base"
9
+ }
10
+ export declare enum StrategyType {
11
+ InterceptBasedOnChar = "InterceptBasedOnChar",
12
+ InterceptBasedOnLine = "InterceptBasedOnLine",
13
+ InterceptBasedOnFunction = "InterceptBasedOnFunction"
14
+ }
15
+ export declare enum SnippetSelectionOption {
16
+ BestMatch = "bestMatch",
17
+ TopK = "topK"
18
+ }
19
+ export declare enum NeighboringTabsOption {
20
+ openFileHistory = "openFileHistory",
21
+ editFileRecent = "editFileRecent",
22
+ editFileHistory = "editFileHistory"
23
+ }
24
+ export declare enum WishListAttributeName {
25
+ beforeCursor = "beforeCursor",
26
+ afterCursor = "afterCursor",
27
+ importedFile = "importedFile",
28
+ languageMarker = "languageMarker",
29
+ pathMarker = "pathMarker",
30
+ similarFile = "similarFile"
31
+ }
32
+ export declare enum SortOption {
33
+ Ascending = "ascending",
34
+ Descending = "descending",
35
+ None = "none"
36
+ }
37
+ export interface BaseWishListType {
38
+ attributeName: WishListAttributeName;
39
+ enable?: boolean;
40
+ ignoreDisabledStateHigherThanVersion?: string;
41
+ extOption?: {
42
+ [key: string]: any;
43
+ };
44
+ priority: number;
45
+ strategy: StrategyType;
46
+ }
47
+ export interface ImportedFileOptions {
48
+ maxTime: number;
49
+ importedFilesMaxNum: number;
50
+ language: string[];
51
+ maxPercent: number;
52
+ patternPrefix: string;
53
+ patternSuffix: string;
54
+ }
55
+ export declare enum SnippetSemantics {
56
+ Function = "function",
57
+ Snippet = "snippet",
58
+ Variable = "variable",
59
+ Parameter = "parameter",
60
+ Method = "method",
61
+ Class = "class",
62
+ Module = "module",
63
+ Alias = "alias",
64
+ Enum = "enum member",
65
+ Interface = "interface"
66
+ }
67
+ export interface SimilarFileOptions {
68
+ maxPercent: number;
69
+ snippetSelectionMode: SnippetSelectionOption;
70
+ neighboringTabsMaxNum: number;
71
+ neighboringTabsOption: NeighboringTabsOption[];
72
+ patternPrefix: string;
73
+ patternSuffix: string;
74
+ similarityThreshold: number;
75
+ snippetMaxNum: number;
76
+ windowSize: number;
77
+ maxTime?: number;
78
+ }
79
+ /**
80
+ * 补全配置项
81
+ * promptTokenSize = beforeCursorTokenSize + afterCursorTokenSize + importedFileTokenSize + pathMarkerTokenSize + languageMarkerTokenSize + similarFileTokenSize
82
+ * maxPromptTokenSize >= promptTokenSize
83
+ */
84
+ export interface ICompletionModel {
85
+ maxPromptTokenSize: number;
86
+ tokenizerName: TokenizerName;
87
+ maxExecuteTimeMillSecond: number;
88
+ wishList: {
89
+ afterCursor: BaseWishListType & {
90
+ extOption: {
91
+ suffixPercent: number;
92
+ minBlockSize: number;
93
+ };
94
+ };
95
+ beforeCursor: BaseWishListType & {
96
+ extOption: {
97
+ prefixPercent: number;
98
+ minBlockSize: number;
99
+ };
100
+ };
101
+ importedFile: BaseWishListType & {
102
+ extOption: ImportedFileOptions;
103
+ };
104
+ languageMarker: BaseWishListType & {
105
+ extOption: {
106
+ language: string[];
107
+ maxPercent: number;
108
+ };
109
+ };
110
+ pathMarker: BaseWishListType;
111
+ similarFile: BaseWishListType & {
112
+ extOption: SimilarFileOptions;
113
+ };
114
+ };
115
+ }
116
+ export interface ICompletionContext {
117
+ prompt: string;
118
+ prefix: string;
119
+ suffix: string;
120
+ filename: string;
121
+ language: string;
122
+ uri: URI;
123
+ }
124
+ export interface CursorContext {
125
+ context: string;
126
+ lineCount: number;
127
+ tokenLength: number;
128
+ tokenizerName: TokenizerName;
129
+ }
130
+ export interface SimilarSnippet {
131
+ score: number;
132
+ startLine: number;
133
+ endLine: number;
134
+ }
135
+ export interface MatchSimilarSnippet extends SimilarSnippet {
136
+ snippet: string;
137
+ semantics: SnippetSemantics;
138
+ }
139
+ export interface ResourceDocument {
140
+ source: string;
141
+ uri: URI;
142
+ languageId: string;
143
+ offset: number;
144
+ }
145
+ export interface MarkerItem {
146
+ attributeName: WishListAttributeName;
147
+ priority: number;
148
+ maxPercent: number;
149
+ enable: boolean;
150
+ content?: string;
151
+ similarSnippets?: [string, MatchSimilarSnippet[]][];
152
+ importedFiles?: (string | string[])[][];
153
+ }
154
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/browser/inline-completions/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAEhD,oBAAY,aAAa;IACvB,WAAW,gBAAgB;IAC3B,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,UAAU,eAAe;CAC1B;AAED,oBAAY,YAAY;IACtB,oBAAoB,yBAAyB;IAC7C,oBAAoB,yBAAyB;IAC7C,wBAAwB,6BAA6B;CACtD;AAED,oBAAY,sBAAsB;IAChC,SAAS,cAAc;IACvB,IAAI,SAAS;CACd;AAED,oBAAY,qBAAqB;IAC/B,eAAe,oBAAoB;IACnC,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;CACpC;AAED,oBAAY,qBAAqB;IAC/B,YAAY,iBAAiB;IAC7B,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;IACjC,UAAU,eAAe;IACzB,WAAW,gBAAgB;CAC5B;AAGD,oBAAY,UAAU;IACpB,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,IAAI,SAAS;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,qBAAqB,CAAC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oCAAoC,CAAC,EAAE,MAAM,CAAC;IAC9C,SAAS,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,oBAAY,gBAAgB;IAC1B,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,IAAI,gBAAgB;IACpB,SAAS,cAAc;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,sBAAsB,CAAC;IAC7C,qBAAqB,EAAE,MAAM,CAAC;IAC9B,qBAAqB,EAAE,qBAAqB,EAAE,CAAC;IAC/C,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,wBAAwB,EAAE,MAAM,CAAC;IACjC,QAAQ,EAAE;QACR,WAAW,EAAE,gBAAgB,GAAG;YAC9B,SAAS,EAAE;gBACT,aAAa,EAAE,MAAM,CAAC;gBACtB,YAAY,EAAE,MAAM,CAAC;aACtB,CAAC;SACH,CAAC;QACF,YAAY,EAAE,gBAAgB,GAAG;YAC/B,SAAS,EAAE;gBACT,aAAa,EAAE,MAAM,CAAC;gBACtB,YAAY,EAAE,MAAM,CAAC;aACtB,CAAC;SACH,CAAC;QACF,YAAY,EAAE,gBAAgB,GAAG;YAC/B,SAAS,EAAE,mBAAmB,CAAC;SAChC,CAAC;QACF,cAAc,EAAE,gBAAgB,GAAG;YACjC,SAAS,EAAE;gBACT,QAAQ,EAAE,MAAM,EAAE,CAAC;gBACnB,UAAU,EAAE,MAAM,CAAC;aACpB,CAAC;SACH,CAAC;QACF,UAAU,EAAE,gBAAgB,CAAC;QAC7B,WAAW,EAAE,gBAAgB,GAAG;YAC9B,SAAS,EAAE,kBAAkB,CAAC;SAC/B,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,GAAG,CAAC;CACV;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,aAAa,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAoB,SAAQ,cAAc;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,GAAG,CAAC;IACT,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,qBAAqB,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC,EAAE,CAAC;IACpD,aAAa,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;CACzC"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SnippetSemantics = exports.SortOption = exports.WishListAttributeName = exports.NeighboringTabsOption = exports.SnippetSelectionOption = exports.StrategyType = exports.TokenizerName = void 0;
4
+ var TokenizerName;
5
+ (function (TokenizerName) {
6
+ TokenizerName["cl100k_base"] = "cl100k_base";
7
+ TokenizerName["gpt2"] = "gpt2";
8
+ TokenizerName["r50k_base"] = "r50k_base";
9
+ TokenizerName["p50k_base"] = "p50k_base";
10
+ TokenizerName["p50k_edit"] = "p50k_edit";
11
+ TokenizerName["o200k_base"] = "o200k_base";
12
+ })(TokenizerName = exports.TokenizerName || (exports.TokenizerName = {}));
13
+ var StrategyType;
14
+ (function (StrategyType) {
15
+ StrategyType["InterceptBasedOnChar"] = "InterceptBasedOnChar";
16
+ StrategyType["InterceptBasedOnLine"] = "InterceptBasedOnLine";
17
+ StrategyType["InterceptBasedOnFunction"] = "InterceptBasedOnFunction";
18
+ })(StrategyType = exports.StrategyType || (exports.StrategyType = {}));
19
+ var SnippetSelectionOption;
20
+ (function (SnippetSelectionOption) {
21
+ SnippetSelectionOption["BestMatch"] = "bestMatch";
22
+ SnippetSelectionOption["TopK"] = "topK";
23
+ })(SnippetSelectionOption = exports.SnippetSelectionOption || (exports.SnippetSelectionOption = {}));
24
+ var NeighboringTabsOption;
25
+ (function (NeighboringTabsOption) {
26
+ NeighboringTabsOption["openFileHistory"] = "openFileHistory";
27
+ NeighboringTabsOption["editFileRecent"] = "editFileRecent";
28
+ NeighboringTabsOption["editFileHistory"] = "editFileHistory";
29
+ })(NeighboringTabsOption = exports.NeighboringTabsOption || (exports.NeighboringTabsOption = {}));
30
+ var WishListAttributeName;
31
+ (function (WishListAttributeName) {
32
+ WishListAttributeName["beforeCursor"] = "beforeCursor";
33
+ WishListAttributeName["afterCursor"] = "afterCursor";
34
+ WishListAttributeName["importedFile"] = "importedFile";
35
+ WishListAttributeName["languageMarker"] = "languageMarker";
36
+ WishListAttributeName["pathMarker"] = "pathMarker";
37
+ WishListAttributeName["similarFile"] = "similarFile";
38
+ })(WishListAttributeName = exports.WishListAttributeName || (exports.WishListAttributeName = {}));
39
+ // Sort Option
40
+ var SortOption;
41
+ (function (SortOption) {
42
+ SortOption["Ascending"] = "ascending";
43
+ SortOption["Descending"] = "descending";
44
+ SortOption["None"] = "none";
45
+ })(SortOption = exports.SortOption || (exports.SortOption = {}));
46
+ var SnippetSemantics;
47
+ (function (SnippetSemantics) {
48
+ SnippetSemantics["Function"] = "function";
49
+ SnippetSemantics["Snippet"] = "snippet";
50
+ SnippetSemantics["Variable"] = "variable";
51
+ SnippetSemantics["Parameter"] = "parameter";
52
+ SnippetSemantics["Method"] = "method";
53
+ SnippetSemantics["Class"] = "class";
54
+ SnippetSemantics["Module"] = "module";
55
+ SnippetSemantics["Alias"] = "alias";
56
+ SnippetSemantics["Enum"] = "enum member";
57
+ SnippetSemantics["Interface"] = "interface";
58
+ })(SnippetSemantics = exports.SnippetSemantics || (exports.SnippetSemantics = {}));
59
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/browser/inline-completions/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,4CAA2B,CAAA;IAC3B,8BAAa,CAAA;IACb,wCAAuB,CAAA;IACvB,wCAAuB,CAAA;IACvB,wCAAuB,CAAA;IACvB,0CAAyB,CAAA;AAC3B,CAAC,EAPW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAOxB;AAED,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,6DAA6C,CAAA;IAC7C,6DAA6C,CAAA;IAC7C,qEAAqD,CAAA;AACvD,CAAC,EAJW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAIvB;AAED,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,iDAAuB,CAAA;IACvB,uCAAa,CAAA;AACf,CAAC,EAHW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAGjC;AAED,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,4DAAmC,CAAA;IACnC,0DAAiC,CAAA;IACjC,4DAAmC,CAAA;AACrC,CAAC,EAJW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAIhC;AAED,IAAY,qBAOX;AAPD,WAAY,qBAAqB;IAC/B,sDAA6B,CAAA;IAC7B,oDAA2B,CAAA;IAC3B,sDAA6B,CAAA;IAC7B,0DAAiC,CAAA;IACjC,kDAAyB,CAAA;IACzB,oDAA2B,CAAA;AAC7B,CAAC,EAPW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAOhC;AAED,cAAc;AACd,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,qCAAuB,CAAA;IACvB,uCAAyB,CAAA;IACzB,2BAAa,CAAA;AACf,CAAC,EAJW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAIrB;AAoBD,IAAY,gBAWX;AAXD,WAAY,gBAAgB;IAC1B,yCAAqB,CAAA;IACrB,uCAAmB,CAAA;IACnB,yCAAqB,CAAA;IACrB,2CAAuB,CAAA;IACvB,qCAAiB,CAAA;IACjB,mCAAe,CAAA;IACf,qCAAiB,CAAA;IACjB,mCAAe,CAAA;IACf,wCAAoB,CAAA;IACpB,2CAAuB,CAAA;AACzB,CAAC,EAXW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAW3B"}
@@ -2,6 +2,7 @@ import Parser from 'web-tree-sitter';
2
2
  import * as monaco from '@opensumi/ide-monaco/lib/common';
3
3
  import { IDisposable } from '@opensumi/ide-utils';
4
4
  import { ICodeBlockInfo, IOtherBlockInfo } from './tree-sitter/language-facts/base';
5
+ export declare const DEFAULT_MIN_BLOCK_COUNT = 20;
5
6
  export declare class LanguageParser implements IDisposable {
6
7
  private language;
7
8
  private parser;
@@ -29,6 +30,11 @@ export declare class LanguageParser implements IDisposable {
29
30
  findCodeBlockWithSyntaxError(sourceCode: string, range: monaco.IRange): Promise<IOtherBlockInfo | null>;
30
31
  provideCodeBlockInfo(model: monaco.ITextModel, position: monaco.Position): Promise<ICodeBlockInfo | null>;
31
32
  provideCodeBlockInfoInRange(model: monaco.ITextModel, range: monaco.IRange): Promise<ICodeBlockInfo | null>;
33
+ trimSuffixSyntaxErrors(code: string, minBlockCount?: number): Promise<string>;
34
+ trimPrefixSyntaxErrors(code: string, minBlockCount?: number): Promise<string>;
35
+ trimToLastCompleteBlock(rootNode: Parser.SyntaxNode, reverse?: boolean): string;
36
+ extractImportPaths(code: string): Promise<string[]>;
37
+ extractInterfaceOrTypeCode(code: string): Promise<string[]>;
32
38
  dispose(): void;
33
39
  }
34
40
  //# sourceMappingURL=parser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/browser/languages/parser.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAGrC,OAAO,KAAK,MAAM,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAY,WAAW,EAAY,MAAM,qBAAqB,CAAC;AAItE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAGpF,qBACa,cAAe,YAAW,WAAW;IAa5B,OAAO,CAAC,QAAQ;IAZpC,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,CAAC,YAAY,CAAwB;IAE5C,OAAO,CAAC,QAAQ,CAAgD;IAGhE,OAAO,CAAC,iBAAiB,CAAoB;IAG7C,OAAO,CAAC,aAAa,CAA0B;IAE/C,OAAO;IAIP,KAAK;IAIE,SAAS,IAAI,MAAM;YAIZ,gBAAgB;IAW9B;;;;;OAKG;IACH,OAAO,CAAC,mCAAmC;IAc3C,OAAO,CAAC,qBAAqB;IAcvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU;IAiBjC,uBAAuB,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;IAS1G;;OAEG;IACG,4BAA4B,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAiDvG,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IA8BzG,2BAA2B,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAgCjH,OAAO;CAIR"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/browser/languages/parser.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAGrC,OAAO,KAAK,MAAM,MAAM,iCAAiC,CAAC;AAC1D,OAAO,EAAY,WAAW,EAAY,MAAM,qBAAqB,CAAC;AAItE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAGpF,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C,qBACa,cAAe,YAAW,WAAW;IAa5B,OAAO,CAAC,QAAQ;IAZpC,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,CAAC,YAAY,CAAwB;IAE5C,OAAO,CAAC,QAAQ,CAAgD;IAGhE,OAAO,CAAC,iBAAiB,CAAoB;IAG7C,OAAO,CAAC,aAAa,CAA0B;IAE/C,OAAO;IAIP,KAAK;IAIE,SAAS,IAAI,MAAM;YAIZ,gBAAgB;IAW9B;;;;;OAKG;IACH,OAAO,CAAC,mCAAmC;IAc3C,OAAO,CAAC,qBAAqB;IAcvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU;IAiBjC,uBAAuB,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;IAS1G;;OAEG;IACG,4BAA4B,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAiDvG,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IA8BzG,2BAA2B,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAgC3G,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,SAA0B,GAAG,OAAO,CAAC,MAAM,CAAC;IAoC9F,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,SAA0B,GAAG,OAAO,CAAC,MAAM,CAAC;IAoCpG,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,EAAE,OAAO,UAAQ;IA0B9D,kBAAkB,CAAC,IAAI,EAAE,MAAM;IAwB/B,0BAA0B,CAAC,IAAI,EAAE,MAAM;IAuB7C,OAAO;CAIR"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LanguageParser = void 0;
3
+ exports.LanguageParser = exports.DEFAULT_MIN_BLOCK_COUNT = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const web_tree_sitter_1 = tslib_1.__importDefault(require("web-tree-sitter"));
6
6
  const di_1 = require("@opensumi/di");
@@ -8,6 +8,7 @@ const ide_utils_1 = require("@opensumi/ide-utils");
8
8
  const common_1 = require("./tree-sitter/common");
9
9
  const language_facts_1 = require("./tree-sitter/language-facts");
10
10
  const wasm_manager_1 = require("./tree-sitter/wasm-manager");
11
+ exports.DEFAULT_MIN_BLOCK_COUNT = 20;
11
12
  let LanguageParser = class LanguageParser {
12
13
  constructor(language) {
13
14
  this.language = language;
@@ -183,6 +184,144 @@ let LanguageParser = class LanguageParser {
183
184
  }
184
185
  return null;
185
186
  }
187
+ async trimSuffixSyntaxErrors(code, minBlockCount = exports.DEFAULT_MIN_BLOCK_COUNT) {
188
+ var _a;
189
+ await this.parserLoaded.promise;
190
+ const tree = (_a = this.parser) === null || _a === void 0 ? void 0 : _a.parse(code);
191
+ const rootNode = tree === null || tree === void 0 ? void 0 : tree.rootNode;
192
+ if (!rootNode) {
193
+ return code;
194
+ }
195
+ const { namedChildren } = rootNode;
196
+ if (!rootNode.hasError || namedChildren.length <= minBlockCount) {
197
+ return this.trimToLastCompleteBlock(rootNode, true);
198
+ }
199
+ let lastErrorNode = null;
200
+ let targetNode = null;
201
+ for (let i = namedChildren.length - 1; i >= minBlockCount; i--) {
202
+ const child = namedChildren[i];
203
+ if (child.hasError && i !== 0) {
204
+ lastErrorNode = child;
205
+ }
206
+ else if (lastErrorNode) {
207
+ targetNode = child;
208
+ break;
209
+ }
210
+ }
211
+ if (!targetNode) {
212
+ targetNode = namedChildren[minBlockCount - 1];
213
+ }
214
+ const lines = code.split('\n');
215
+ const remainingLines = lines.slice(0, targetNode.endPosition.row + 1);
216
+ const lastLine = remainingLines[remainingLines.length - 1].slice(0, targetNode.endPosition.column);
217
+ const correctCode = `${remainingLines.length > 1 ? `${remainingLines.slice(0, -1).join('\n')}\n` : ''}${lastLine}`;
218
+ return correctCode;
219
+ }
220
+ async trimPrefixSyntaxErrors(code, minBlockCount = exports.DEFAULT_MIN_BLOCK_COUNT) {
221
+ var _a;
222
+ await this.parserLoaded.promise;
223
+ const tree = (_a = this.parser) === null || _a === void 0 ? void 0 : _a.parse(code);
224
+ const rootNode = tree === null || tree === void 0 ? void 0 : tree.rootNode;
225
+ if (!rootNode) {
226
+ return code;
227
+ }
228
+ const { namedChildren } = rootNode;
229
+ if (!rootNode.hasError || namedChildren.length <= minBlockCount) {
230
+ return this.trimToLastCompleteBlock(rootNode);
231
+ }
232
+ let firstErrorNode = null;
233
+ let targetNode = null;
234
+ for (let i = 0; i < namedChildren.length - minBlockCount; i++) {
235
+ const child = namedChildren[i];
236
+ if (child.hasError && i !== namedChildren.length - 1) {
237
+ firstErrorNode = child;
238
+ }
239
+ else if (firstErrorNode) {
240
+ targetNode = child;
241
+ break;
242
+ }
243
+ }
244
+ if (!targetNode) {
245
+ targetNode = namedChildren[namedChildren.length - minBlockCount];
246
+ }
247
+ const lines = code.split('\n');
248
+ const remainingLines = lines.slice(targetNode.startPosition.row);
249
+ const firstLine = remainingLines[0].slice(targetNode.startPosition.column);
250
+ const correctCode = `${firstLine}${remainingLines.length > 1 ? `\n${remainingLines.slice(1).join('\n')}` : ''}`;
251
+ return correctCode;
252
+ }
253
+ trimToLastCompleteBlock(rootNode, reverse = false) {
254
+ const { namedChildren } = rootNode;
255
+ if (reverse) {
256
+ const lastNamedChild = namedChildren[namedChildren.length - 2];
257
+ if (lastNamedChild) {
258
+ const lines = rootNode.text.split('\n');
259
+ const remainingLines = lines.slice(0, lastNamedChild.endPosition.row + 1);
260
+ const lastLine = remainingLines[remainingLines.length - 1].slice(0, lastNamedChild.endPosition.column);
261
+ const correctCode = `${remainingLines.length > 1 ? `${remainingLines.slice(0, -1).join('\n')}\n` : ''}${lastLine}`;
262
+ return correctCode;
263
+ }
264
+ }
265
+ else {
266
+ const firstNamedChild = namedChildren[1];
267
+ if (firstNamedChild) {
268
+ const lines = rootNode.text.split('\n');
269
+ const remainingLines = lines.slice(firstNamedChild.startPosition.row);
270
+ const firstLine = remainingLines[0].slice(firstNamedChild.startPosition.column);
271
+ const correctCode = `${firstLine}${remainingLines.length > 1 ? `\n${remainingLines.slice(1).join('\n')}` : ''}`;
272
+ return correctCode;
273
+ }
274
+ }
275
+ return rootNode.text;
276
+ }
277
+ async extractImportPaths(code) {
278
+ var _a, _b;
279
+ const paths = [];
280
+ if (this.language === 'typescript') {
281
+ await this.parserLoaded.promise;
282
+ const tree = (_a = this.parser) === null || _a === void 0 ? void 0 : _a.parse(code);
283
+ const rootNode = tree === null || tree === void 0 ? void 0 : tree.rootNode;
284
+ if (rootNode) {
285
+ for (let i = 0; i < (rootNode === null || rootNode === void 0 ? void 0 : rootNode.childCount); i++) {
286
+ const sourceChild = rootNode.child(i);
287
+ if ((sourceChild === null || sourceChild === void 0 ? void 0 : sourceChild.type) === 'import_statement') {
288
+ let importPath = (_b = sourceChild.child(3)) === null || _b === void 0 ? void 0 : _b.text;
289
+ if ((importPath === null || importPath === void 0 ? void 0 : importPath.includes("'")) || (importPath === null || importPath === void 0 ? void 0 : importPath.includes('"'))) {
290
+ importPath = importPath.slice(1, -1);
291
+ }
292
+ if (importPath) {
293
+ paths.push(importPath);
294
+ }
295
+ }
296
+ }
297
+ }
298
+ }
299
+ return paths;
300
+ }
301
+ async extractInterfaceOrTypeCode(code) {
302
+ var _a;
303
+ const snippets = [];
304
+ if (this.language === 'typescript') {
305
+ await this.parserLoaded.promise;
306
+ const tree = (_a = this.parser) === null || _a === void 0 ? void 0 : _a.parse(code);
307
+ const rootNode = tree === null || tree === void 0 ? void 0 : tree.rootNode;
308
+ if (rootNode) {
309
+ for (let i = 0; i < (rootNode === null || rootNode === void 0 ? void 0 : rootNode.childCount); i++) {
310
+ const sourceChild = rootNode.child(i);
311
+ if ((sourceChild === null || sourceChild === void 0 ? void 0 : sourceChild.type) === 'export_statement') {
312
+ const exportChild = sourceChild.child(1);
313
+ if ((exportChild === null || exportChild === void 0 ? void 0 : exportChild.type) === 'interface_declaration' || (exportChild === null || exportChild === void 0 ? void 0 : exportChild.type) === 'type_alias_declaration') {
314
+ snippets.push(exportChild.text);
315
+ }
316
+ }
317
+ else if ((sourceChild === null || sourceChild === void 0 ? void 0 : sourceChild.type) === 'interface_declaration' || (sourceChild === null || sourceChild === void 0 ? void 0 : sourceChild.type) === 'type_alias_declaration') {
318
+ snippets.push(sourceChild.text);
319
+ }
320
+ }
321
+ }
322
+ }
323
+ return snippets;
324
+ }
186
325
  dispose() {
187
326
  this.parser.delete();
188
327
  this.lruCache.clear();
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/browser/languages/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/browser/languages/parser.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,6 @@ type ValueOf<T> = T[keyof T];
12
12
  export type SupportedLanguages = keyof typeof map;
13
13
  export type SupportedTreeSitterLanguages = ValueOf<typeof map>;
14
14
  export declare const parserNameMap: Record<SupportedLanguages, SupportedTreeSitterLanguages>;
15
- export declare const parserIdentifierMap: Record<SupportedTreeSitterLanguages, "typescript" | "javascript" | "rust" | "python" | "java" | "go" | "typescriptreact" | "javascriptreact">;
15
+ export declare const parserIdentifierMap: Record<SupportedTreeSitterLanguages, "typescript" | "python" | "javascript" | "rust" | "java" | "go" | "typescriptreact" | "javascriptreact">;
16
16
  export {};
17
17
  //# sourceMappingURL=types.d.ts.map
@@ -1,12 +1,12 @@
1
1
  import Parser from 'web-tree-sitter';
2
- import { IRendererRuntime } from '@opensumi/ide-core-browser/lib/application/runtime/types';
2
+ import { RendererRuntime } from '@opensumi/ide-core-browser/lib/application/runtime/types';
3
3
  /**
4
4
  * Managing and caching the wasm module
5
5
  */
6
6
  export declare class WasmModuleManager {
7
7
  private resolvedResourceUriDeferred;
8
8
  private cachedRuntime;
9
- rendererRuntime: IRendererRuntime;
9
+ rendererRuntime: RendererRuntime;
10
10
  private resolveResourceUri;
11
11
  constructor();
12
12
  private parserInitialized;
@@ -1 +1 @@
1
- {"version":3,"file":"wasm-manager.d.ts","sourceRoot":"","sources":["../../../../src/browser/languages/tree-sitter/wasm-manager.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAGrC,OAAO,EAAmB,gBAAgB,EAAE,MAAM,0DAA0D,CAAC;AAG7G;;GAEG;AACH,qBACa,iBAAiB;IAC5B,OAAO,CAAC,2BAA2B,CAA0B;IAE7D,OAAO,CAAC,aAAa,CAAiD;IAGtE,eAAe,EAAE,gBAAgB,CAAC;YAEpB,kBAAkB;;IAShC,OAAO,CAAC,iBAAiB,CAAS;IAE5B,UAAU;IAaV,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;CAe3D"}
1
+ {"version":3,"file":"wasm-manager.d.ts","sourceRoot":"","sources":["../../../../src/browser/languages/tree-sitter/wasm-manager.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAGrC,OAAO,EAAmB,eAAe,EAAE,MAAM,0DAA0D,CAAC;AAG5G;;GAEG;AACH,qBACa,iBAAiB;IAC5B,OAAO,CAAC,2BAA2B,CAA0B;IAE7D,OAAO,CAAC,aAAa,CAAiD;IAGtE,eAAe,EAAE,eAAe,CAAC;YAEnB,kBAAkB;;IAShC,OAAO,CAAC,iBAAiB,CAAS;IAE5B,UAAU;IAaV,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;CAe3D"}
@@ -47,8 +47,8 @@ let WasmModuleManager = class WasmModuleManager {
47
47
  }
48
48
  };
49
49
  tslib_1.__decorate([
50
- (0, di_1.Autowired)(types_1.IRendererRuntime),
51
- tslib_1.__metadata("design:type", Object)
50
+ (0, di_1.Autowired)(types_1.RendererRuntime),
51
+ tslib_1.__metadata("design:type", types_1.RendererRuntime)
52
52
  ], WasmModuleManager.prototype, "rendererRuntime", void 0);
53
53
  WasmModuleManager = tslib_1.__decorate([
54
54
  (0, di_1.Injectable)(),
@@ -1 +1 @@
1
- {"version":3,"file":"wasm-manager.js","sourceRoot":"","sources":["../../../../src/browser/languages/tree-sitter/wasm-manager.ts"],"names":[],"mappings":";;;;AAAA,8EAAqC;AAErC,qCAAqD;AACrD,oFAA6G;AAC7G,mDAA+C;AAE/C;;GAEG;AAEI,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAQpB,KAAK,CAAC,kBAAkB;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,uBAAe,CAAC,uBAAuB,CAAC,CAAC;QACnG,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;IAED;QAZQ,gCAA2B,GAAG,IAAI,oBAAQ,EAAU,CAAC;QAErD,kBAAa,GAAuC,IAAI,GAAG,EAAE,CAAC;QAc9D,sBAAiB,GAAG,KAAK,CAAC;QAHhC,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAID,KAAK,CAAC,UAAU;QACd,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC;QAC/D,MAAM,QAAQ,GAAG,GAAG,OAAO,mBAAmB,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC3B,MAAM,yBAAM,CAAC,IAAI,CAAC;gBAChB,UAAU,EAAE,GAAG,EAAE,CAAC,QAAQ;aAC3B,CAAC,CAAC;YACH,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;SAC/B;QAED,OAAO,IAAI,yBAAM,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACrC,MAAM,QAAQ,GAAG,IAAI,oBAAQ,EAAe,CAAC;YAC7C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC;YAC/D,MAAM,OAAO,GAAG,GAAG,OAAO,gBAAgB,QAAQ,OAAO,CAAC;YAC1D,KAAK,CAAC,OAAO,CAAC;iBACX,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;iBAChC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;SACN;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,OAAO,CAAC;IACnD,CAAC;CACF,CAAA;AA1CC;IAAC,IAAA,cAAS,EAAC,wBAAgB,CAAC;;0DACM;AANvB,iBAAiB;IAD7B,IAAA,eAAU,GAAE;;GACA,iBAAiB,CA+C7B;AA/CY,8CAAiB"}
1
+ {"version":3,"file":"wasm-manager.js","sourceRoot":"","sources":["../../../../src/browser/languages/tree-sitter/wasm-manager.ts"],"names":[],"mappings":";;;;AAAA,8EAAqC;AAErC,qCAAqD;AACrD,oFAA4G;AAC5G,mDAA+C;AAE/C;;GAEG;AAEI,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAQpB,KAAK,CAAC,kBAAkB;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,CAAC,uBAAe,CAAC,uBAAuB,CAAC,CAAC;QACnG,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;IAED;QAZQ,gCAA2B,GAAG,IAAI,oBAAQ,EAAU,CAAC;QAErD,kBAAa,GAAuC,IAAI,GAAG,EAAE,CAAC;QAc9D,sBAAiB,GAAG,KAAK,CAAC;QAHhC,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAID,KAAK,CAAC,UAAU;QACd,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC;QAC/D,MAAM,QAAQ,GAAG,GAAG,OAAO,mBAAmB,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC3B,MAAM,yBAAM,CAAC,IAAI,CAAC;gBAChB,UAAU,EAAE,GAAG,EAAE,CAAC,QAAQ;aAC3B,CAAC,CAAC;YACH,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;SAC/B;QAED,OAAO,IAAI,yBAAM,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAAgB;QACjC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACrC,MAAM,QAAQ,GAAG,IAAI,oBAAQ,EAAe,CAAC;YAC7C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC;YAC/D,MAAM,OAAO,GAAG,GAAG,OAAO,gBAAgB,QAAQ,OAAO,CAAC;YAC1D,KAAK,CAAC,OAAO,CAAC;iBACX,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;iBAChC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;SACN;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,OAAO,CAAC;IACnD,CAAC;CACF,CAAA;AA1CC;IAAC,IAAA,cAAS,EAAC,uBAAe,CAAC;sCACV,uBAAe;0DAAC;AANtB,iBAAiB;IAD7B,IAAA,eAAU,GAAE;;GACA,iBAAiB,CA+C7B;AA/CY,8CAAiB"}
@@ -0,0 +1,5 @@
1
+ import { IEditorDocumentModel } from '@opensumi/ide-editor';
2
+ export declare const isDocumentTooLarge: (document: IEditorDocumentModel) => boolean;
3
+ export declare const isDocumentTooShort: (document: IEditorDocumentModel) => boolean;
4
+ export declare const isDocumentValid: (document: IEditorDocumentModel) => boolean;
5
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/common/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,eAAO,MAAM,kBAAkB,aAAc,oBAAoB,YAShE,CAAC;AAIF,eAAO,MAAM,kBAAkB,aAAc,oBAAoB,YAAiD,CAAC;AAEnH,eAAO,MAAM,eAAe,aAAc,oBAAoB,YAK7D,CAAC"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isDocumentValid = exports.isDocumentTooShort = exports.isDocumentTooLarge = void 0;
4
+ const isDocumentTooLarge = (document) => {
5
+ try {
6
+ document.getText();
7
+ }
8
+ catch (e) {
9
+ if (e instanceof RangeError) {
10
+ return true;
11
+ }
12
+ }
13
+ return false;
14
+ };
15
+ exports.isDocumentTooLarge = isDocumentTooLarge;
16
+ const MIN_PROMPT_CHARS = 10;
17
+ const isDocumentTooShort = (document) => document.getText().length < MIN_PROMPT_CHARS;
18
+ exports.isDocumentTooShort = isDocumentTooShort;
19
+ const isDocumentValid = (document) => {
20
+ if ((0, exports.isDocumentTooLarge)(document) || (0, exports.isDocumentTooShort)(document)) {
21
+ return false;
22
+ }
23
+ return true;
24
+ };
25
+ exports.isDocumentValid = isDocumentValid;
26
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/common/utils.ts"],"names":[],"mappings":";;;AAEO,MAAM,kBAAkB,GAAG,CAAC,QAA8B,EAAE,EAAE;IACnE,IAAI;QACF,QAAQ,CAAC,OAAO,EAAE,CAAC;KACpB;IAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,YAAY,UAAU,EAAE;YAC3B,OAAO,IAAI,CAAC;SACb;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AATW,QAAA,kBAAkB,sBAS7B;AAEF,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAErB,MAAM,kBAAkB,GAAG,CAAC,QAA8B,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,GAAG,gBAAgB,CAAC;AAAtG,QAAA,kBAAkB,sBAAoF;AAE5G,MAAM,eAAe,GAAG,CAAC,QAA8B,EAAE,EAAE;IAChE,IAAI,IAAA,0BAAkB,EAAC,QAAQ,CAAC,IAAI,IAAA,0BAAkB,EAAC,QAAQ,CAAC,EAAE;QAChE,OAAO,KAAK,CAAC;KACd;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AALW,QAAA,eAAe,mBAK1B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensumi/ide-ai-native",
3
- "version": "3.0.3",
3
+ "version": "3.0.4-next-1716367246.0",
4
4
  "files": [
5
5
  "lib",
6
6
  "src"
@@ -19,29 +19,30 @@
19
19
  "url": "git@github.com:opensumi/core.git"
20
20
  },
21
21
  "dependencies": {
22
- "@opensumi/ide-components": "3.0.3",
23
- "@opensumi/ide-core-common": "3.0.3",
24
- "@opensumi/ide-core-node": "3.0.3",
25
- "@opensumi/ide-debug": "3.0.3",
26
- "@opensumi/ide-design": "3.0.3",
27
- "@opensumi/ide-editor": "3.0.3",
28
- "@opensumi/ide-file-service": "3.0.3",
29
- "@opensumi/ide-file-tree-next": "3.0.3",
30
- "@opensumi/ide-main-layout": "3.0.3",
31
- "@opensumi/ide-markers": "3.0.3",
32
- "@opensumi/ide-menu-bar": "3.0.3",
33
- "@opensumi/ide-monaco": "3.0.3",
34
- "@opensumi/ide-overlay": "3.0.3",
35
- "@opensumi/ide-terminal-next": "3.0.3",
36
- "@opensumi/ide-theme": "3.0.3",
37
- "@opensumi/ide-workspace": "3.0.3",
22
+ "@opensumi/ide-components": "3.0.4-next-1716367246.0",
23
+ "@opensumi/ide-core-common": "3.0.4-next-1716367246.0",
24
+ "@opensumi/ide-core-node": "3.0.4-next-1716367246.0",
25
+ "@opensumi/ide-debug": "3.0.4-next-1716367246.0",
26
+ "@opensumi/ide-design": "3.0.4-next-1716367246.0",
27
+ "@opensumi/ide-editor": "3.0.4-next-1716367246.0",
28
+ "@opensumi/ide-file-service": "3.0.4-next-1716367246.0",
29
+ "@opensumi/ide-file-tree-next": "3.0.4-next-1716367246.0",
30
+ "@opensumi/ide-main-layout": "3.0.4-next-1716367246.0",
31
+ "@opensumi/ide-markers": "3.0.4-next-1716367246.0",
32
+ "@opensumi/ide-menu-bar": "3.0.4-next-1716367246.0",
33
+ "@opensumi/ide-monaco": "3.0.4-next-1716367246.0",
34
+ "@opensumi/ide-overlay": "3.0.4-next-1716367246.0",
35
+ "@opensumi/ide-terminal-next": "3.0.4-next-1716367246.0",
36
+ "@opensumi/ide-theme": "3.0.4-next-1716367246.0",
37
+ "@opensumi/ide-workspace": "3.0.4-next-1716367246.0",
38
38
  "dom-align": "^1.7.0",
39
+ "js-tiktoken": "1.0.12",
39
40
  "react-chat-elements": "^12.0.10",
40
41
  "react-highlight": "^0.15.0",
41
42
  "web-tree-sitter": "0.22.6"
42
43
  },
43
44
  "devDependencies": {
44
- "@opensumi/ide-core-browser": "3.0.3"
45
+ "@opensumi/ide-core-browser": "3.0.4-next-1716367246.0"
45
46
  },
46
- "gitHead": "f6c5bd20bf82f28fb3e226eff23fbc772dcae5d2"
47
+ "gitHead": "60062ab4a570c223a849d6a85faafebea0313abb"
47
48
  }