@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,441 +0,0 @@
1
- /**
2
- * @enum number
3
- */
4
- const State = {
5
- TopLevelContent: 1,
6
- AfterOpeningAngleBracket: 2,
7
- InsideOpeningTag: 3,
8
- InsideOpeningTagAndHasSeenWhitespace: 4,
9
- AfterClosingTagAngleBrackets: 5,
10
- AfterClosingTagName: 6,
11
- AfterAttributeName: 7,
12
- AfterAttributeEqualSign: 8,
13
- InsideAttributeDoubleQuote: 9,
14
- InsideBlockComment: 10,
15
- None: 11,
16
- InsideDoubleQuoteString: 12,
17
- InsideSingleQuoteString: 13,
18
- AfterTripleBackTick: 14,
19
- AfterTripleBackTickAfterLanguageId: 15,
20
- InsideBackTickString: 16,
21
- }
22
-
23
- export const StateMap = {}
24
-
25
- /**
26
- * @enum number
27
- */
28
- export const TokenType = {
29
- None: 99999999,
30
- Numeric: 30,
31
- String: 50,
32
- Whitespace: 0,
33
- Comment: 60,
34
- Text: 117,
35
- PunctuationTag: 228,
36
- TagName: 118,
37
- AttributeName: 119,
38
- Punctuation: 10,
39
- Error: 141,
40
- PunctuationString: 11,
41
- NewLine: 891,
42
- Heading: 13,
43
- MarkdownString: 18,
44
- MarkdownLinkName: 19,
45
- MarkdownLinkUrl: 20,
46
- }
47
-
48
- export const TokenMap = {
49
- [TokenType.None]: 'None',
50
- [TokenType.Numeric]: 'Numeric',
51
- [TokenType.String]: 'String',
52
- [TokenType.Whitespace]: 'Whitespace',
53
- [TokenType.Comment]: 'Comment',
54
- [TokenType.Text]: 'Text',
55
- [TokenType.PunctuationTag]: 'PunctuationTag',
56
- [TokenType.TagName]: 'TagName',
57
- [TokenType.AttributeName]: 'AttributeName',
58
- [TokenType.Punctuation]: 'Punctuation',
59
- [TokenType.Error]: 'Error',
60
- [TokenType.PunctuationString]: 'PunctuationString',
61
- [TokenType.Heading]: 'Heading',
62
- [TokenType.MarkdownString]: 'MarkdownString',
63
- [TokenType.MarkdownLinkName]: 'MarkdownLinkName',
64
- [TokenType.MarkdownLinkUrl]: 'MarkdownLinkUrl',
65
- }
66
-
67
- const RE_ANGLE_BRACKET_CLOSE = /^>/
68
- const RE_ANGLE_BRACKET_ONLY = /^</
69
- const RE_ANGLE_BRACKET_OPEN = /^</
70
- const RE_ANGLE_BRACKET_OPEN_TAG = /^<(?!\s)/
71
- const RE_ANY_TEXT = /^[^\n]+/
72
- const RE_ATTRIBUTE_NAME = /^[a-zA-Z\d\-]+/
73
- const RE_BLOCK_COMMENT_CONTENT = /^.(?:.*?)(?=-->|$)/s
74
- const RE_BLOCK_COMMENT_END = /^-->/
75
- const RE_BLOCK_COMMENT_START = /^<!--/
76
- const RE_DASH_DASH = /^\-\-/
77
- const RE_DOUBLE_QUOTE = /^"/
78
- const RE_EQUAL_SIGN = /^=/
79
- const RE_EXCLAMATION_MARK = /^!/
80
- const RE_INVALID_INSIDE_ClOSING_TAG = /^[^a-zA-Z>]/
81
- const RE_INVALID_INSIDE_OPENING_TAG = /^[^a-zA-Z>]/
82
- const RE_NEWLINE = /^\n/
83
- const RE_NEWLINE_WHITESPACE = /^\n\s*/
84
- const RE_NOT_TAGNAME = /^[^a-zA-Z\d]+/
85
- const RE_PUNCTUATION = /^[<;'".,]/
86
- const RE_PUNCTUATION_SELF_CLOSING = /^\/>/
87
- const RE_SELF_CLOSING = /^\/>/
88
- const RE_SINGLE_QUOTE = /^'/
89
- const RE_QUOTE_BACKTICK = /^`/
90
- const RE_SLASH = /^\//
91
- const RE_STRING_BACKTICK_QUOTE_CONTENT = /^[^`]+/
92
- const RE_STRING_DOUBLE_QUOTE_CONTENT = /^[^"]+/
93
- const RE_STRING_SINGLE_QUOTE_CONTENT = /^[^']+/
94
- const RE_TAG_TEXT = /^[^\s>]+/
95
- const RE_TAGNAME = /^[!\w]+/
96
- const RE_TEXT = /^[^<>\n\`\[\]]+/
97
- const RE_WHITESPACE = /^\s+/
98
- const RE_WORD = /^[^\s]+/
99
- const RE_HEADING = /^\#.*/s
100
- const RE_TRIPLE_BACKTICK = /^`{3,}/
101
- const RE_TRIPLE_QUOTED_STRING_CONTENT = /[^`]+/s
102
- const RE_STRING_ESCAPE = /^\\./
103
- const RE_LINK = /^\[([^\[\]\\]+?)\]\((.*)\)/
104
- const RE_ANYTHING_UNTIL_END = /^.+/s
105
- const RE_ATTRIBUTE_VALUE_UNQUOTED = /^[^<>\s]+/
106
-
107
- /**
108
- *
109
- * @param {string} attribute
110
- * @returns {string}
111
- */
112
- const getEmbeddedLanguageId = (attribute) => {
113
- switch (attribute) {
114
- case 'js':
115
- return 'javascript'
116
- case 'shell':
117
- return 'shellscript'
118
- case 'md':
119
- return 'markdown'
120
- case 'text':
121
- return 'plaintext'
122
- default:
123
- if (attribute.includes(':')) {
124
- const parts = attribute.split(':')
125
- const firstPart = parts[0]
126
- return getEmbeddedLanguageId(firstPart)
127
- }
128
- return attribute
129
- }
130
- }
131
-
132
- export const initialLineState = {
133
- state: State.TopLevelContent,
134
- embeddedLanguage: '',
135
- embeddedLanguageStart: 0,
136
- embeddedLanguageEnd: 0,
137
- }
138
-
139
- /**
140
- *
141
- * @param {any} lineStateA
142
- * @param {any} lineStateB
143
- * @returns
144
- */
145
- export const isLineStateEqual = (lineStateA, lineStateB) => {
146
- return lineStateA.state === lineStateB.state
147
- }
148
-
149
- export const hasArrayReturn = true
150
-
151
- /**
152
- *
153
- * @param {string} line
154
- * @param {any} lineState
155
- * @returns
156
- */
157
- export const tokenizeLine = (line, lineState) => {
158
- let next = null
159
- let index = 0
160
- let tokens = []
161
- let token = TokenType.None
162
- let state = lineState.state
163
- let embeddedLanguage = lineState.embeddedLanguage
164
- let embeddedLanguageStart = lineState.embeddedLanguageStart
165
- let embeddedLanguageEnd = lineState.embeddedLanguageEnd
166
- while (index < line.length) {
167
- const part = line.slice(index)
168
- switch (state) {
169
- case State.TopLevelContent:
170
- if ((next = part.match(RE_BLOCK_COMMENT_START))) {
171
- token = TokenType.Comment
172
- state = State.InsideBlockComment
173
- } else if ((next = part.match(RE_ANGLE_BRACKET_OPEN_TAG))) {
174
- token = TokenType.PunctuationTag
175
- state = State.AfterOpeningAngleBracket
176
- } else if ((next = part.match(RE_HEADING))) {
177
- token = TokenType.Heading
178
- } else if ((next = part.match(RE_TRIPLE_BACKTICK))) {
179
- token = TokenType.PunctuationString
180
- state = State.AfterTripleBackTick
181
- } else if ((next = part.match(RE_TEXT))) {
182
- token = TokenType.Text
183
- state = State.TopLevelContent
184
- } else if ((next = part.match(RE_QUOTE_BACKTICK))) {
185
- token = TokenType.Punctuation
186
- state = State.InsideBackTickString
187
- } else if ((next = part.match(RE_ANGLE_BRACKET_CLOSE))) {
188
- token = TokenType.Text
189
- state = State.TopLevelContent
190
- } else if ((next = part.match(RE_ANGLE_BRACKET_OPEN))) {
191
- token = TokenType.Text
192
- state = State.TopLevelContent
193
- } else if ((next = part.match(RE_LINK))) {
194
- const tokenLength = next[0].length
195
- index += tokenLength
196
- const linkName = next[1]
197
- const linkUrl = next[2]
198
- tokens.push(
199
- TokenType.Punctuation,
200
- 1,
201
- TokenType.MarkdownLinkName,
202
- linkName.length,
203
- TokenType.Punctuation,
204
- 1,
205
- TokenType.Punctuation,
206
- 1,
207
- TokenType.MarkdownLinkUrl,
208
- linkUrl.length,
209
- TokenType.Punctuation,
210
- 1
211
- )
212
- tokens.push(token, tokenLength)
213
- continue
214
- } else if ((next = part.match(RE_ANYTHING_UNTIL_END))) {
215
- token = TokenType.Text
216
- state = State.TopLevelContent
217
- } else {
218
- part //?
219
- console.log({ part })
220
- throw new Error('no')
221
- }
222
- break
223
- case State.AfterOpeningAngleBracket:
224
- if ((next = part.match(RE_TAGNAME))) {
225
- token = TokenType.TagName
226
- state = State.InsideOpeningTag
227
- } else if ((next = part.match(RE_SLASH))) {
228
- token = TokenType.PunctuationTag
229
- state = State.AfterClosingTagAngleBrackets
230
- } else if ((next = part.match(RE_ANGLE_BRACKET_CLOSE))) {
231
- token = TokenType.PunctuationTag
232
- state = State.TopLevelContent
233
- } else if ((next = part.match(RE_ANY_TEXT))) {
234
- token = TokenType.Text
235
- state = State.TopLevelContent
236
- } else {
237
- part //?
238
- throw new Error('no')
239
- }
240
- break
241
- case State.InsideOpeningTag:
242
- if ((next = part.match(RE_ANGLE_BRACKET_CLOSE))) {
243
- token = TokenType.PunctuationTag
244
- state = State.TopLevelContent
245
- } else if ((next = part.match(RE_EXCLAMATION_MARK))) {
246
- token = TokenType.PunctuationTag
247
- state = State.InsideOpeningTag
248
- } else if ((next = part.match(RE_WHITESPACE))) {
249
- token = TokenType.Whitespace
250
- state = State.InsideOpeningTagAndHasSeenWhitespace
251
- } else if ((next = part.match(RE_DASH_DASH))) {
252
- token = TokenType.Comment
253
- state = State.InsideBlockComment
254
- } else if ((next = part.match(RE_TAG_TEXT))) {
255
- token = TokenType.Text
256
- state = State.InsideOpeningTag
257
- } else {
258
- part //?
259
- throw new Error('no')
260
- }
261
- break
262
- case State.AfterClosingTagAngleBrackets:
263
- if ((next = part.match(RE_TAGNAME))) {
264
- token = TokenType.TagName
265
- state = State.AfterClosingTagName
266
- } else if ((next = part.match(RE_ANY_TEXT))) {
267
- token = TokenType.Text
268
- state = State.TopLevelContent
269
- } else {
270
- part //?
271
- throw new Error('no')
272
- }
273
- break
274
- case State.AfterClosingTagName:
275
- if ((next = part.match(RE_ANGLE_BRACKET_CLOSE))) {
276
- token = TokenType.PunctuationTag
277
- state = State.TopLevelContent
278
- } else if ((next = part.match(RE_TEXT))) {
279
- token = TokenType.Text
280
- state = State.TopLevelContent
281
- } else {
282
- throw new Error('no')
283
- }
284
- break
285
- case State.InsideOpeningTagAndHasSeenWhitespace:
286
- if ((next = part.match(RE_ATTRIBUTE_NAME))) {
287
- token = TokenType.AttributeName
288
- state = State.AfterAttributeName
289
- } else if ((next = part.match(RE_SELF_CLOSING))) {
290
- token = TokenType.PunctuationTag
291
- state = State.TopLevelContent
292
- } else if ((next = part.match(RE_ANGLE_BRACKET_CLOSE))) {
293
- token = TokenType.PunctuationTag
294
- state = State.TopLevelContent
295
- } else if ((next = part.match(RE_TAG_TEXT))) {
296
- token = TokenType.Text
297
- state = State.TopLevelContent
298
- } else {
299
- part //?
300
- throw new Error('no')
301
- }
302
- break
303
- case State.AfterAttributeName:
304
- if ((next = part.match(RE_ANGLE_BRACKET_CLOSE))) {
305
- token = TokenType.PunctuationTag
306
- state = State.TopLevelContent
307
- } else if ((next = part.match(RE_EQUAL_SIGN))) {
308
- token = TokenType.Punctuation
309
- state = State.AfterAttributeEqualSign
310
- } else if ((next = part.match(RE_DOUBLE_QUOTE))) {
311
- token = TokenType.PunctuationString
312
- state = State.InsideDoubleQuoteString
313
- } else if ((next = part.match(RE_SINGLE_QUOTE))) {
314
- token = TokenType.PunctuationString
315
- state = State.InsideSingleQuoteString
316
- } else if ((next = part.match(RE_TAG_TEXT))) {
317
- token = TokenType.Text
318
- state = State.InsideOpeningTag
319
- } else if ((next = part.match(RE_WHITESPACE))) {
320
- token = TokenType.Whitespace
321
- state = State.InsideOpeningTagAndHasSeenWhitespace
322
- } else {
323
- // TODO check quotation mark
324
- part //?
325
- throw new Error('no')
326
- }
327
- break
328
- case State.AfterAttributeEqualSign:
329
- if ((next = part.match(RE_DOUBLE_QUOTE))) {
330
- token = TokenType.PunctuationString
331
- state = State.InsideDoubleQuoteString
332
- } else if ((next = part.match(RE_SINGLE_QUOTE))) {
333
- token = TokenType.PunctuationString
334
- state = State.InsideSingleQuoteString
335
- } else if ((next = part.match(RE_ANGLE_BRACKET_CLOSE))) {
336
- token = TokenType.PunctuationTag
337
- state = State.TopLevelContent
338
- } else if ((next = part.match(RE_ATTRIBUTE_VALUE_UNQUOTED))) {
339
- token = TokenType.String
340
- state = State.InsideOpeningTag
341
- } else {
342
- throw new Error('no')
343
- }
344
- break
345
- case State.InsideDoubleQuoteString:
346
- if ((next = part.match(RE_DOUBLE_QUOTE))) {
347
- token = TokenType.PunctuationString
348
- state = State.InsideOpeningTag
349
- } else if ((next = part.match(RE_STRING_DOUBLE_QUOTE_CONTENT))) {
350
- token = TokenType.String
351
- state = State.InsideDoubleQuoteString
352
- } else {
353
- throw new Error('no')
354
- }
355
- break
356
- case State.InsideSingleQuoteString:
357
- if ((next = part.match(RE_SINGLE_QUOTE))) {
358
- token = TokenType.PunctuationString
359
- state = State.InsideOpeningTag
360
- } else if ((next = part.match(RE_STRING_SINGLE_QUOTE_CONTENT))) {
361
- token = TokenType.String
362
- state = State.InsideSingleQuoteString
363
- } else {
364
- throw new Error('no')
365
- }
366
- break
367
- case State.InsideBlockComment:
368
- if ((next = part.match(RE_BLOCK_COMMENT_END))) {
369
- token = TokenType.Comment
370
- state = State.TopLevelContent
371
- } else if ((next = part.match(RE_BLOCK_COMMENT_CONTENT))) {
372
- token = TokenType.Comment
373
- state = State.InsideBlockComment
374
- } else {
375
- throw new Error('no')
376
- }
377
- break
378
- case State.AfterTripleBackTick:
379
- if ((next = part.match(RE_WORD))) {
380
- token = TokenType.String
381
- state = State.AfterTripleBackTickAfterLanguageId
382
- embeddedLanguage = getEmbeddedLanguageId(next[0])
383
- embeddedLanguageStart = index + next[0].length
384
- } else if ((next = part.match(RE_WHITESPACE))) {
385
- token = TokenType.Whitespace
386
- state = State.AfterTripleBackTick
387
- } else {
388
- throw new Error('no')
389
- }
390
- break
391
- case State.AfterTripleBackTickAfterLanguageId:
392
- if ((next = part.match(RE_TRIPLE_BACKTICK))) {
393
- token = TokenType.PunctuationString
394
- state = State.TopLevelContent
395
- embeddedLanguage = ''
396
- embeddedLanguageStart = 0
397
- embeddedLanguageEnd = 0
398
- } else if ((next = part.match(RE_TRIPLE_QUOTED_STRING_CONTENT))) {
399
- token = TokenType.String
400
- state = State.AfterTripleBackTickAfterLanguageId
401
- embeddedLanguageStart = Math.min(embeddedLanguageStart, index)
402
- embeddedLanguageEnd = index + next[0].length
403
- } else if ((next = part.match(RE_QUOTE_BACKTICK))) {
404
- token = TokenType.Text
405
- state = State.AfterTripleBackTickAfterLanguageId
406
- embeddedLanguageEnd = index + next[0].length
407
- } else {
408
- part
409
- throw new Error('no')
410
- }
411
- break
412
- case State.InsideBackTickString:
413
- if ((next = part.match(RE_QUOTE_BACKTICK))) {
414
- token = TokenType.Punctuation
415
- state = State.TopLevelContent
416
- } else if ((next = part.match(RE_STRING_BACKTICK_QUOTE_CONTENT))) {
417
- token = TokenType.MarkdownString
418
- state = State.InsideBackTickString
419
- } else if ((next = part.match(RE_STRING_ESCAPE))) {
420
- token = TokenType.String
421
- state = State.InsideBackTickString
422
- } else {
423
- throw new Error('no')
424
- }
425
- break
426
- default:
427
- state
428
- throw new Error('no')
429
- }
430
- const tokenLength = next[0].length
431
- index += tokenLength
432
- tokens.push(token, tokenLength)
433
- }
434
- return {
435
- state,
436
- tokens,
437
- embeddedLanguage,
438
- embeddedLanguageStart,
439
- embeddedLanguageEnd,
440
- }
441
- }
@@ -1,14 +0,0 @@
1
- # Language Basics Mdx
2
-
3
- ## Contributing
4
-
5
- ```sh
6
- git clone git@github.com:lvce-editor/language-basics-mdx.git &&
7
- cd language-basics-mdx &&
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-mdx)
@@ -1,12 +0,0 @@
1
- {
2
- "id": "builtin.language-basics-mdx",
3
- "name": "Language Basics Mdx",
4
- "description": "Provides syntax highlighting and bracket matching in Mdx files.",
5
- "languages": [
6
- {
7
- "id": "mdx",
8
- "extensions": [".mdx"],
9
- "tokenize": "src/tokenizeMdx.js"
10
- }
11
- ]
12
- }