@lvce-editor/shared-process 0.18.7 → 0.18.9

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 (191) hide show
  1. package/package.json +4 -4
  2. package/src/parts/ExportStatic/ExportStatic.js +6 -6
  3. package/src/parts/ExtensionManagement/ExtensionManagementColorTheme.js +1 -6
  4. package/src/parts/ExtensionManagement/ExtensionManagementIconTheme.js +1 -6
  5. package/src/parts/Platform/Platform.js +3 -3
  6. package/src/parts/PlatformPaths/PlatformPaths.js +1 -1
  7. package/extensions/builtin.language-basics-bat/README.md +0 -14
  8. package/extensions/builtin.language-basics-bat/extension.json +0 -12
  9. package/extensions/builtin.language-basics-bat/src/tokenizeBat.js +0 -33
  10. package/extensions/builtin.language-basics-c/README.md +0 -14
  11. package/extensions/builtin.language-basics-c/extension.json +0 -12
  12. package/extensions/builtin.language-basics-c/src/tokenizeC.js +0 -211
  13. package/extensions/builtin.language-basics-coffeescript/README.md +0 -14
  14. package/extensions/builtin.language-basics-coffeescript/extension.json +0 -12
  15. package/extensions/builtin.language-basics-coffeescript/src/tokenizeCoffeeScript.js +0 -257
  16. package/extensions/builtin.language-basics-cpp/README.md +0 -14
  17. package/extensions/builtin.language-basics-cpp/extension.json +0 -32
  18. package/extensions/builtin.language-basics-cpp/languageConfiguration.json +0 -5
  19. package/extensions/builtin.language-basics-cpp/src/tokenizeCpp.js +0 -317
  20. package/extensions/builtin.language-basics-cson/README.md +0 -16
  21. package/extensions/builtin.language-basics-cson/extension.json +0 -13
  22. package/extensions/builtin.language-basics-cson/languageConfiguration.json +0 -21
  23. package/extensions/builtin.language-basics-cson/src/tokenizeCson.js +0 -207
  24. package/extensions/builtin.language-basics-css/README.md +0 -16
  25. package/extensions/builtin.language-basics-css/extension.json +0 -13
  26. package/extensions/builtin.language-basics-css/languageConfiguration.json +0 -21
  27. package/extensions/builtin.language-basics-css/src/tokenizeCss.js +0 -659
  28. package/extensions/builtin.language-basics-dart/README.md +0 -14
  29. package/extensions/builtin.language-basics-dart/extension.json +0 -12
  30. package/extensions/builtin.language-basics-dart/src/tokenizeDart.js +0 -133
  31. package/extensions/builtin.language-basics-desktop/README.md +0 -14
  32. package/extensions/builtin.language-basics-desktop/extension.json +0 -12
  33. package/extensions/builtin.language-basics-desktop/src/tokenizeDesktop.js +0 -166
  34. package/extensions/builtin.language-basics-docker/README.md +0 -14
  35. package/extensions/builtin.language-basics-docker/extension.json +0 -24
  36. package/extensions/builtin.language-basics-docker/src/tokenizeDockerfile.js +0 -131
  37. package/extensions/builtin.language-basics-dotenv/README.md +0 -14
  38. package/extensions/builtin.language-basics-dotenv/extension.json +0 -26
  39. package/extensions/builtin.language-basics-dotenv/src/tokenizeDotenv.js +0 -301
  40. package/extensions/builtin.language-basics-editorconfig/README.md +0 -14
  41. package/extensions/builtin.language-basics-editorconfig/extension.json +0 -12
  42. package/extensions/builtin.language-basics-editorconfig/src/tokenizeEditorConfig.js +0 -173
  43. package/extensions/builtin.language-basics-elixir/README.md +0 -14
  44. package/extensions/builtin.language-basics-elixir/extension.json +0 -12
  45. package/extensions/builtin.language-basics-elixir/src/tokenizeElixir.js +0 -150
  46. package/extensions/builtin.language-basics-elm/README.md +0 -14
  47. package/extensions/builtin.language-basics-elm/extension.json +0 -12
  48. package/extensions/builtin.language-basics-elm/src/tokenizeElm.js +0 -298
  49. package/extensions/builtin.language-basics-gitattributes/README.md +0 -14
  50. package/extensions/builtin.language-basics-gitattributes/extension.json +0 -12
  51. package/extensions/builtin.language-basics-gitattributes/src/tokenizeGitAttributes.js +0 -159
  52. package/extensions/builtin.language-basics-gn/README.md +0 -14
  53. package/extensions/builtin.language-basics-gn/extension.json +0 -12
  54. package/extensions/builtin.language-basics-gn/src/tokenizeGn.js +0 -178
  55. package/extensions/builtin.language-basics-go/README.md +0 -14
  56. package/extensions/builtin.language-basics-go/extension.json +0 -13
  57. package/extensions/builtin.language-basics-go/src/tokenizeGo.js +0 -295
  58. package/extensions/builtin.language-basics-graphql/README.md +0 -14
  59. package/extensions/builtin.language-basics-graphql/extension.json +0 -12
  60. package/extensions/builtin.language-basics-graphql/src/tokenizeGraphql.js +0 -432
  61. package/extensions/builtin.language-basics-html/README.md +0 -14
  62. package/extensions/builtin.language-basics-html/extension.json +0 -13
  63. package/extensions/builtin.language-basics-html/languageConfiguration.json +0 -66
  64. package/extensions/builtin.language-basics-html/src/tokenizeHtml.js +0 -551
  65. package/extensions/builtin.language-basics-java/README.md +0 -14
  66. package/extensions/builtin.language-basics-java/extension.json +0 -13
  67. package/extensions/builtin.language-basics-java/languageConfiguration.json +0 -31
  68. package/extensions/builtin.language-basics-java/src/tokenizeJava.js +0 -253
  69. package/extensions/builtin.language-basics-javascript/README.md +0 -14
  70. package/extensions/builtin.language-basics-javascript/extension.json +0 -14
  71. package/extensions/builtin.language-basics-javascript/languageConfiguration.json +0 -40
  72. package/extensions/builtin.language-basics-javascript/src/tokenizeJavaScript.js +0 -614
  73. package/extensions/builtin.language-basics-json/README.md +0 -14
  74. package/extensions/builtin.language-basics-json/extension.json +0 -60
  75. package/extensions/builtin.language-basics-json/src/tokenizeJson.js +0 -356
  76. package/extensions/builtin.language-basics-jsx/README.md +0 -14
  77. package/extensions/builtin.language-basics-jsx/extension.json +0 -13
  78. package/extensions/builtin.language-basics-jsx/src/tokenizeJsx.js +0 -661
  79. package/extensions/builtin.language-basics-julia/README.md +0 -18
  80. package/extensions/builtin.language-basics-julia/extension.json +0 -12
  81. package/extensions/builtin.language-basics-julia/src/tokenizeJulia.js +0 -181
  82. package/extensions/builtin.language-basics-kotlin/README.md +0 -14
  83. package/extensions/builtin.language-basics-kotlin/extension.json +0 -12
  84. package/extensions/builtin.language-basics-kotlin/src/tokenizeKotlin.js +0 -274
  85. package/extensions/builtin.language-basics-less/LICENSE +0 -21
  86. package/extensions/builtin.language-basics-less/README.md +0 -14
  87. package/extensions/builtin.language-basics-less/extension.json +0 -12
  88. package/extensions/builtin.language-basics-less/languageConfiguration.json +0 -17
  89. package/extensions/builtin.language-basics-less/src/tokenizeLess.js +0 -609
  90. package/extensions/builtin.language-basics-markdown/README.md +0 -14
  91. package/extensions/builtin.language-basics-markdown/extension.json +0 -12
  92. package/extensions/builtin.language-basics-markdown/src/tokenizeMarkdown.js +0 -441
  93. package/extensions/builtin.language-basics-mdx/README.md +0 -14
  94. package/extensions/builtin.language-basics-mdx/extension.json +0 -12
  95. package/extensions/builtin.language-basics-mdx/src/tokenizeMdx.js +0 -395
  96. package/extensions/builtin.language-basics-nvmrc/README.md +0 -14
  97. package/extensions/builtin.language-basics-nvmrc/extension.json +0 -12
  98. package/extensions/builtin.language-basics-nvmrc/src/tokenizeNvmrc.js +0 -30
  99. package/extensions/builtin.language-basics-perl/README.md +0 -14
  100. package/extensions/builtin.language-basics-perl/extension.json +0 -13
  101. package/extensions/builtin.language-basics-perl/src/tokenizePerl.js +0 -200
  102. package/extensions/builtin.language-basics-plaintext/README.md +0 -14
  103. package/extensions/builtin.language-basics-plaintext/extension.json +0 -12
  104. package/extensions/builtin.language-basics-plaintext/src/tokenizePlaintext.js +0 -28
  105. package/extensions/builtin.language-basics-powershell/README.md +0 -14
  106. package/extensions/builtin.language-basics-powershell/extension.json +0 -12
  107. package/extensions/builtin.language-basics-powershell/src/tokenizePowershell.js +0 -141
  108. package/extensions/builtin.language-basics-python/README.md +0 -14
  109. package/extensions/builtin.language-basics-python/extension.json +0 -15
  110. package/extensions/builtin.language-basics-python/languageConfiguration.json +0 -5
  111. package/extensions/builtin.language-basics-python/src/tokenizePython.js +0 -304
  112. package/extensions/builtin.language-basics-r/README.md +0 -14
  113. package/extensions/builtin.language-basics-r/extension.json +0 -12
  114. package/extensions/builtin.language-basics-r/src/tokenizeR.js +0 -71
  115. package/extensions/builtin.language-basics-ruby/README.md +0 -14
  116. package/extensions/builtin.language-basics-ruby/extension.json +0 -48
  117. package/extensions/builtin.language-basics-ruby/src/tokenizeRuby.js +0 -248
  118. package/extensions/builtin.language-basics-rust/LICENSE +0 -21
  119. package/extensions/builtin.language-basics-rust/README.md +0 -14
  120. package/extensions/builtin.language-basics-rust/extension.json +0 -12
  121. package/extensions/builtin.language-basics-rust/languageConfiguration.json +0 -17
  122. package/extensions/builtin.language-basics-rust/src/tokenizeRust.js +0 -158
  123. package/extensions/builtin.language-basics-scss/README.md +0 -14
  124. package/extensions/builtin.language-basics-scss/extension.json +0 -12
  125. package/extensions/builtin.language-basics-scss/src/tokenizeScss.js +0 -28
  126. package/extensions/builtin.language-basics-shellscript/README.md +0 -14
  127. package/extensions/builtin.language-basics-shellscript/extension.json +0 -56
  128. package/extensions/builtin.language-basics-shellscript/src/tokenizeShellScript.js +0 -569
  129. package/extensions/builtin.language-basics-svelte/README.md +0 -14
  130. package/extensions/builtin.language-basics-svelte/extension.json +0 -13
  131. package/extensions/builtin.language-basics-svelte/src/tokenizeSvelte.js +0 -428
  132. package/extensions/builtin.language-basics-toml/README.md +0 -14
  133. package/extensions/builtin.language-basics-toml/extension.json +0 -14
  134. package/extensions/builtin.language-basics-toml/src/tokenizeToml.js +0 -299
  135. package/extensions/builtin.language-basics-typescript/README.md +0 -14
  136. package/extensions/builtin.language-basics-typescript/extension.json +0 -17
  137. package/extensions/builtin.language-basics-typescript/src/tokenizeTypeScript.js +0 -1602
  138. package/extensions/builtin.language-basics-vue/README.md +0 -14
  139. package/extensions/builtin.language-basics-vue/extension.json +0 -13
  140. package/extensions/builtin.language-basics-vue/src/tokenizeVue.js +0 -327
  141. package/extensions/builtin.language-basics-wgsl/README.md +0 -16
  142. package/extensions/builtin.language-basics-wgsl/extension.json +0 -13
  143. package/extensions/builtin.language-basics-wgsl/languageConfiguration.json +0 -21
  144. package/extensions/builtin.language-basics-wgsl/src/tokenizeWgsl.js +0 -226
  145. package/extensions/builtin.language-basics-xml/README.md +0 -14
  146. package/extensions/builtin.language-basics-xml/extension.json +0 -85
  147. package/extensions/builtin.language-basics-xml/src/tokenizeXml.js +0 -328
  148. package/extensions/builtin.language-basics-yaml/README.md +0 -14
  149. package/extensions/builtin.language-basics-yaml/extension.json +0 -13
  150. package/extensions/builtin.language-basics-yaml/src/tokenizeYaml.js +0 -405
  151. package/extensions/builtin.theme-atom-one-dark/README.md +0 -11
  152. package/extensions/builtin.theme-atom-one-dark/color-theme.json +0 -216
  153. package/extensions/builtin.theme-atom-one-dark/extension.json +0 -12
  154. package/extensions/builtin.theme-atom-one-dark/images/demo.png +0 -0
  155. package/extensions/builtin.theme-ayu/README.md +0 -11
  156. package/extensions/builtin.theme-ayu/color-theme.json +0 -217
  157. package/extensions/builtin.theme-ayu/extension.json +0 -12
  158. package/extensions/builtin.theme-cobalt2/README.md +0 -20
  159. package/extensions/builtin.theme-cobalt2/color-theme.json +0 -202
  160. package/extensions/builtin.theme-cobalt2/extension.json +0 -13
  161. package/extensions/builtin.theme-cobalt2/images/demo.png +0 -0
  162. package/extensions/builtin.theme-cobalt2/images/logo.png +0 -0
  163. package/extensions/builtin.theme-gruvbox/README.md +0 -20
  164. package/extensions/builtin.theme-gruvbox/color-theme.json +0 -217
  165. package/extensions/builtin.theme-gruvbox/extension.json +0 -12
  166. package/extensions/builtin.theme-high-contrast/README.md +0 -9
  167. package/extensions/builtin.theme-high-contrast/color-theme.json +0 -86
  168. package/extensions/builtin.theme-high-contrast/extension.json +0 -11
  169. package/extensions/builtin.theme-material/README.md +0 -9
  170. package/extensions/builtin.theme-material/color-theme.json +0 -183
  171. package/extensions/builtin.theme-material/extension.json +0 -12
  172. package/extensions/builtin.theme-monokai/README.md +0 -10
  173. package/extensions/builtin.theme-monokai/color-theme.json +0 -151
  174. package/extensions/builtin.theme-monokai/extension.json +0 -11
  175. package/extensions/builtin.theme-noctis-uva/README.md +0 -11
  176. package/extensions/builtin.theme-noctis-uva/color-theme.json +0 -204
  177. package/extensions/builtin.theme-noctis-uva/extension.json +0 -12
  178. package/extensions/builtin.theme-noctis-uva/images/demo.png +0 -0
  179. package/extensions/builtin.theme-palenight/README.md +0 -11
  180. package/extensions/builtin.theme-palenight/color-theme.json +0 -209
  181. package/extensions/builtin.theme-palenight/extension.json +0 -12
  182. package/extensions/builtin.theme-palenight/images/demo.png +0 -0
  183. package/extensions/builtin.theme-slime/README.md +0 -5
  184. package/extensions/builtin.theme-slime/color-theme.json +0 -290
  185. package/extensions/builtin.theme-slime/extension.json +0 -13
  186. package/extensions/builtin.theme-slime/icon.png +0 -0
  187. package/extensions/builtin.vscode-icons/README.md +0 -20
  188. package/extensions/builtin.vscode-icons/extension.json +0 -13
  189. package/extensions/builtin.vscode-icons/icon-theme.json +0 -3815
  190. package/extensions/builtin.vscode-icons/icon.png +0 -0
  191. package/src/parts/Error/Error.js +0 -30
@@ -1,356 +0,0 @@
1
- /**
2
- * @enum number
3
- */
4
- export const State = {
5
- TopLevelContent: 1,
6
- AfterCurlyOpen: 2,
7
- InsideString: 3,
8
- AfterPropertyName: 4,
9
- AfterPropertyNameAfterColon: 5,
10
- AfterPropertyValue: 6,
11
- JsonPropertyKey: 7,
12
- InsideLineComment: 8,
13
- InsidePropertyNameString: 9,
14
- InsideBlockComment: 10,
15
- }
16
-
17
- export const StateMap = {
18
- [State.TopLevelContent]: 'TopLevelContent',
19
- [State.AfterCurlyOpen]: 'AfterCurlyOpen',
20
- [State.InsideString]: 'InsideString',
21
- [State.AfterPropertyName]: 'AfterPropertyName',
22
- [State.AfterPropertyNameAfterColon]: 'AfterPropertyNameAfterColon',
23
- [State.AfterPropertyValue]: 'AfterPropertyValue',
24
- [State.JsonPropertyKey]: 'JsonPropertyKey',
25
- }
26
-
27
- /**
28
- * @enum number
29
- */
30
- export const TokenType = {
31
- CssSelector: 1,
32
- Whitespace: 2,
33
- Punctuation: 3,
34
- PropertyName: 4,
35
- PropertyValue: 5,
36
- CurlyOpen: 6,
37
- CurlyClose: 7,
38
- PropertyColon: 8,
39
- PropertySemicolon: 9,
40
- String: 10,
41
- LanguageConstant: 11,
42
- NewLine: 12,
43
- JsonPropertyName: 13,
44
- PropertyValueString: 14,
45
- Numeric: 15,
46
- LanguageConstantBoolean: 16,
47
- Comment: 17,
48
- Error: 18,
49
- Unknown: 19,
50
- Text: 20,
51
- JsonPropertyValueString: 21,
52
- }
53
-
54
- export const TokenMap = {
55
- [TokenType.CssSelector]: 'CssSelector',
56
- [TokenType.Whitespace]: 'Whitespace',
57
- [TokenType.Punctuation]: 'Punctuation',
58
- [TokenType.PropertyName]: 'PropertyName',
59
- [TokenType.PropertyValue]: 'PropertyValue',
60
- [TokenType.CurlyOpen]: 'CurlyOpen',
61
- [TokenType.CurlyClose]: 'CurlyClose',
62
- [TokenType.PropertyColon]: 'PropertyColon',
63
- [TokenType.PropertySemicolon]: 'PropertySemicolon',
64
- [TokenType.String]: 'String',
65
- [TokenType.LanguageConstant]: 'LanguageConstant',
66
- [TokenType.LanguageConstantBoolean]: 'LanguageConstantBoolean',
67
- [TokenType.JsonPropertyName]: 'JsonPropertyName',
68
- [TokenType.PropertyValueString]: 'PropertyValueString',
69
- [TokenType.Comment]: 'Comment',
70
- [TokenType.Error]: 'Error',
71
- [TokenType.Unknown]: 'Unknown',
72
- [TokenType.NewLine]: 'NewLine',
73
- [TokenType.Text]: 'Text',
74
- [TokenType.Numeric]: 'Numeric',
75
- [TokenType.JsonPropertyValueString]: 'JsonPropertyValueString',
76
- }
77
-
78
- const RE_SELECTOR = /^[\.a-zA-Z\d\-\:>]+/
79
- const RE_WHITESPACE = /^\s+/
80
- const RE_CURLY_OPEN = /^\{/
81
- const RE_CURLY_CLOSE = /^\}/
82
- const RE_PROPERTY_NAME = /^[a-zA-Z\-]+/
83
- const RE_COLON = /^:/
84
- const RE_PROPERTY_VALUE = /^[^\n;]+/
85
- const RE_SEMICOLON = /^;/
86
- const RE_COMMA = /^,/
87
- const RE_DOUBLE_QUOTE = /^"/
88
- const RE_STRING_DOUBLE_QUOTE_CONTENT = /^[^"\\]+/
89
- const RE_LANGUAGE_CONSTANT = /^(?:true|false|null)/
90
- const RE_SQUARE_OPEN = /^\[/
91
- const RE_SQUARE_CLOSE = /^\]/
92
- const RE_LINE_COMMENT = /^\/\/.*/
93
- const RE_ANYTHING = /^.+/s
94
- const RE_NUMERIC =
95
- /^((0(x|X)[0-9a-fA-F]*)|(\-?([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)\b/
96
- const RE_TEXT = /^[^\s\{\}\[\]]+/
97
- // const RE_ESCAPED_QUOTE = /^\\"/
98
- // const RE_BACK_SLASH = /^\\/
99
- const RE_STRING_ESCAPE = /^\\.?/
100
- const RE_WORD = /^\w+/
101
- const RE_BLOCK_COMMENT_START = /^\/\*/
102
- const RE_BLOCK_COMMENT_CONTENT = /^.+?(?=\*\/)/
103
- const RE_BLOCK_COMMENT_END = /^\*\//
104
- const RE_ANYTHING_UNTIL_END = /^.+/s
105
-
106
- export const initialLineState = {
107
- state: State.TopLevelContent,
108
- stack: [],
109
- }
110
-
111
- export const hasArrayReturn = true
112
-
113
- /**
114
- * @param {string} line
115
- * @param {any} lineState
116
- */
117
- export const tokenizeLine = (line, lineState) => {
118
- let next
119
- let index = 0
120
- let token
121
- let state = lineState.state
122
- let __r = 0
123
- const tokens = []
124
- const stack = lineState.stack
125
- state
126
- while (index < line.length) {
127
- if (__r++ > 100_000_000_000) {
128
- throw new Error('endless loop')
129
- }
130
- const part = line.slice(index)
131
- switch (state) {
132
- case State.TopLevelContent:
133
- if ((next = part.match(RE_CURLY_OPEN))) {
134
- token = TokenType.Punctuation
135
- state = State.AfterCurlyOpen
136
- stack.push(State.TopLevelContent)
137
- } else if ((next = part.match(RE_SQUARE_OPEN))) {
138
- token = TokenType.Punctuation
139
- state = State.TopLevelContent
140
- stack.push(State.TopLevelContent)
141
- } else if ((next = part.match(RE_WHITESPACE))) {
142
- token = TokenType.Whitespace
143
- state = State.TopLevelContent
144
- } else if ((next = part.match(RE_SQUARE_CLOSE))) {
145
- token = TokenType.Punctuation
146
- state = stack.pop()
147
- } else if ((next = part.match(RE_COMMA))) {
148
- token = TokenType.Punctuation
149
- state = State.TopLevelContent
150
- } else if ((next = part.match(RE_NUMERIC))) {
151
- token = TokenType.Numeric
152
- state = State.TopLevelContent
153
- } else if ((next = part.match(RE_LANGUAGE_CONSTANT))) {
154
- token = TokenType.LanguageConstant
155
- state = State.TopLevelContent
156
- } else if ((next = part.match(RE_DOUBLE_QUOTE))) {
157
- token = TokenType.Punctuation
158
- state = State.InsideString
159
- stack.push(State.TopLevelContent)
160
- } else if ((next = part.match(RE_LINE_COMMENT))) {
161
- token = TokenType.Comment
162
- state = State.InsideLineComment
163
- } else if ((next = part.match(RE_CURLY_CLOSE))) {
164
- token = TokenType.CurlyClose
165
- state = stack.pop()
166
- } else if ((next = part.match(RE_BLOCK_COMMENT_START))) {
167
- token = TokenType.Comment
168
- state = State.InsideBlockComment
169
- stack.push(State.TopLevelContent)
170
- } else if ((next = part.match(RE_ANYTHING))) {
171
- token = TokenType.Text
172
- state = State.TopLevelContent
173
- } else {
174
- part //?
175
- throw new Error('no')
176
- }
177
- break
178
- case State.AfterCurlyOpen:
179
- if ((next = part.match(RE_WHITESPACE))) {
180
- token = TokenType.Whitespace
181
- state = State.AfterCurlyOpen
182
- } else if ((next = part.match(RE_DOUBLE_QUOTE))) {
183
- token = TokenType.Punctuation
184
- state = State.InsidePropertyNameString
185
- stack.push(State.AfterPropertyName)
186
- } else if ((next = part.match(RE_CURLY_CLOSE))) {
187
- token = TokenType.Punctuation
188
- state = stack.pop()
189
- if (!state) {
190
- throw new Error('imbalanced json')
191
- }
192
- } else if ((next = part.match(RE_LINE_COMMENT))) {
193
- token = TokenType.Comment
194
- state = State.AfterCurlyOpen
195
- } else if ((next = part.match(RE_WORD))) {
196
- token = TokenType.Text
197
- state = State.AfterPropertyName
198
- } else if ((next = part.match(RE_BLOCK_COMMENT_START))) {
199
- token = TokenType.Comment
200
- state = State.InsideBlockComment
201
- stack.push(State.AfterCurlyOpen)
202
- } else if ((next = part.match(RE_ANYTHING))) {
203
- token = TokenType.Text
204
- state = State.AfterCurlyOpen
205
- } else {
206
- part //?
207
- throw new Error('no')
208
- }
209
- break
210
- case State.InsidePropertyNameString:
211
- if ((next = part.match(RE_STRING_DOUBLE_QUOTE_CONTENT))) {
212
- token = TokenType.JsonPropertyName
213
- state = State.InsidePropertyNameString
214
- } else if ((next = part.match(RE_DOUBLE_QUOTE))) {
215
- token = TokenType.Punctuation
216
- state = stack.pop()
217
- state
218
- } else if ((next = part.match(RE_STRING_ESCAPE))) {
219
- token = TokenType.JsonPropertyName
220
- state = State.InsidePropertyNameString
221
- } else {
222
- throw new Error('no')
223
- }
224
- break
225
- case State.InsideString:
226
- if ((next = part.match(RE_STRING_DOUBLE_QUOTE_CONTENT))) {
227
- token = TokenType.JsonPropertyValueString
228
- state = State.InsideString
229
- } else if ((next = part.match(RE_DOUBLE_QUOTE))) {
230
- token = TokenType.Punctuation
231
- state = stack.pop()
232
- } else if ((next = part.match(RE_STRING_ESCAPE))) {
233
- token = TokenType.String
234
- state = State.InsideString
235
- } else {
236
- line.slice(0, index) //?
237
- part //?
238
- throw new Error('no')
239
- }
240
- break
241
- case State.AfterPropertyName:
242
- if ((next = part.match(RE_COLON))) {
243
- token = TokenType.Punctuation
244
- state = State.AfterPropertyNameAfterColon
245
- } else if ((next = part.match(RE_WHITESPACE))) {
246
- token = TokenType.Whitespace
247
- state = State.AfterPropertyName
248
- } else if ((next = part.match(RE_ANYTHING))) {
249
- token = TokenType.Text
250
- state = State.AfterCurlyOpen
251
- } else {
252
- throw new Error('no')
253
- }
254
- break
255
- case State.AfterPropertyNameAfterColon:
256
- if ((next = part.match(RE_WHITESPACE))) {
257
- token = TokenType.Whitespace
258
- state = State.AfterPropertyNameAfterColon
259
- } else if ((next = part.match(RE_DOUBLE_QUOTE))) {
260
- token = TokenType.Punctuation
261
- state = State.InsideString
262
- stack.push(State.AfterPropertyValue)
263
- } else if ((next = part.match(RE_LANGUAGE_CONSTANT))) {
264
- token = TokenType.LanguageConstant
265
- state = State.AfterPropertyValue
266
- } else if ((next = part.match(RE_NUMERIC))) {
267
- token = TokenType.Numeric
268
- state = State.AfterPropertyValue
269
- } else if ((next = part.match(RE_TEXT))) {
270
- token = TokenType.Text
271
- state = State.AfterCurlyOpen
272
- } else if ((next = part.match(RE_CURLY_OPEN))) {
273
- token = TokenType.Punctuation
274
- state = State.AfterCurlyOpen
275
- stack.push(State.AfterPropertyValue)
276
- } else if ((next = part.match(RE_SQUARE_OPEN))) {
277
- token = TokenType.Punctuation
278
- state = State.TopLevelContent
279
- stack.push(State.AfterPropertyValue)
280
- } else {
281
- line.slice(0, index) //?
282
- throw new Error('no')
283
- }
284
- break
285
- case State.AfterPropertyValue:
286
- if ((next = part.match(RE_CURLY_CLOSE))) {
287
- token = TokenType.Punctuation
288
- state = stack.pop()
289
- if (!state) {
290
- throw new Error('inbalanced json')
291
- }
292
- } else if ((next = part.match(RE_WHITESPACE))) {
293
- token = TokenType.Whitespace
294
- state = State.AfterPropertyValue
295
- } else if ((next = part.match(RE_COMMA))) {
296
- token = TokenType.Punctuation
297
- state = State.AfterCurlyOpen
298
- } else if ((next = part.match(RE_LINE_COMMENT))) {
299
- token = TokenType.Comment
300
- state = State.AfterPropertyValue
301
- } else if ((next = part.match(RE_BLOCK_COMMENT_START))) {
302
- token = TokenType.Comment
303
- state = State.InsideBlockComment
304
- stack.push(State.AfterPropertyValue)
305
- } else if ((next = part.match(RE_ANYTHING))) {
306
- token = TokenType.Text
307
- state = State.AfterCurlyOpen
308
- } else {
309
- part //?
310
- throw new Error('no')
311
- }
312
- break
313
- case State.InsideLineComment:
314
- if ((next = part.match(RE_ANYTHING))) {
315
- token = TokenType.Comment
316
- state = State.TopLevelContent
317
- } else {
318
- throw new Error('no')
319
- }
320
- break
321
- case State.InsideBlockComment:
322
- if ((next = part.match(RE_BLOCK_COMMENT_END))) {
323
- token = TokenType.Comment
324
- state = stack.pop() || State.TopLevelContent
325
- } else if ((next = part.match(RE_BLOCK_COMMENT_CONTENT))) {
326
- token = TokenType.Comment
327
- state = State.InsideBlockComment
328
- } else if ((next = part.match(RE_ANYTHING_UNTIL_END))) {
329
- token = TokenType.Comment
330
- state = State.InsideBlockComment
331
- } else {
332
- throw new Error('no')
333
- }
334
- break
335
- default:
336
- state
337
- throw new Error('no')
338
- }
339
-
340
- const currentTokenText = next[0]
341
- const currentTokenLength = currentTokenText.length
342
- index += currentTokenLength
343
- tokens.push(token, currentTokenLength)
344
- }
345
- if (state === State.InsideLineComment) {
346
- state = State.TopLevelContent
347
- }
348
- if (state === State.AfterPropertyValue) {
349
- state = State.AfterCurlyOpen
350
- }
351
- return {
352
- state,
353
- stack,
354
- tokens,
355
- }
356
- }
@@ -1,14 +0,0 @@
1
- # Language Basics Jsx
2
-
3
- ## Contributing
4
-
5
- ```sh
6
- git clone git@github.com:lvce-editor/language-basics-jsx.git &&
7
- cd language-basics-jsx &&
8
- npm ci &&
9
- npm test
10
- ```
11
-
12
- ## Gitpod
13
-
14
- [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/lvce-editor/language-basics-jsx)
@@ -1,13 +0,0 @@
1
- {
2
- "id": "builtin.language-basics-jsx",
3
- "name": "Language Basics Jsx",
4
- "description": "Provides syntax highlighting and bracket matching in Jsx files.",
5
- "languages": [
6
- {
7
- "id": "jsx",
8
- "extensions": [".jsx"],
9
- "tokenize": "src/tokenizeJsx.js",
10
- "configuration": "./languageConfiguration.json"
11
- }
12
- ]
13
- }