groove-dev 0.15.1 → 0.16.1

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 (334) hide show
  1. package/docs/FILE-EDITOR-PLAN.md +253 -0
  2. package/node_modules/@codemirror/autocomplete/.github/workflows/dispatch.yml +16 -0
  3. package/node_modules/@codemirror/autocomplete/CHANGELOG.md +639 -0
  4. package/node_modules/@codemirror/autocomplete/LICENSE +21 -0
  5. package/node_modules/@codemirror/autocomplete/README.md +43 -0
  6. package/node_modules/@codemirror/autocomplete/dist/index.cjs +2151 -0
  7. package/node_modules/@codemirror/autocomplete/dist/index.d.cts +648 -0
  8. package/node_modules/@codemirror/autocomplete/dist/index.d.ts +648 -0
  9. package/node_modules/@codemirror/autocomplete/dist/index.js +2120 -0
  10. package/node_modules/@codemirror/autocomplete/package.json +41 -0
  11. package/node_modules/@codemirror/commands/.github/workflows/dispatch.yml +16 -0
  12. package/node_modules/@codemirror/commands/CHANGELOG.md +386 -0
  13. package/node_modules/@codemirror/commands/LICENSE +21 -0
  14. package/node_modules/@codemirror/commands/README.md +35 -0
  15. package/node_modules/@codemirror/commands/dist/index.cjs +1909 -0
  16. package/node_modules/@codemirror/commands/dist/index.d.cts +650 -0
  17. package/node_modules/@codemirror/commands/dist/index.d.ts +650 -0
  18. package/node_modules/@codemirror/commands/dist/index.js +1795 -0
  19. package/node_modules/@codemirror/commands/package.json +42 -0
  20. package/node_modules/@codemirror/lang-css/.github/workflows/dispatch.yml +16 -0
  21. package/node_modules/@codemirror/lang-css/CHANGELOG.md +106 -0
  22. package/node_modules/@codemirror/lang-css/LICENSE +21 -0
  23. package/node_modules/@codemirror/lang-css/README.md +50 -0
  24. package/node_modules/@codemirror/lang-css/dist/index.cjs +269 -0
  25. package/node_modules/@codemirror/lang-css/dist/index.d.cts +28 -0
  26. package/node_modules/@codemirror/lang-css/dist/index.d.ts +28 -0
  27. package/node_modules/@codemirror/lang-css/dist/index.js +264 -0
  28. package/node_modules/@codemirror/lang-css/package.json +42 -0
  29. package/node_modules/@codemirror/lang-html/.github/workflows/dispatch.yml +16 -0
  30. package/node_modules/@codemirror/lang-html/CHANGELOG.md +210 -0
  31. package/node_modules/@codemirror/lang-html/LICENSE +21 -0
  32. package/node_modules/@codemirror/lang-html/README.md +147 -0
  33. package/node_modules/@codemirror/lang-html/dist/index.cjs +667 -0
  34. package/node_modules/@codemirror/lang-html/dist/index.d.cts +115 -0
  35. package/node_modules/@codemirror/lang-html/dist/index.d.ts +115 -0
  36. package/node_modules/@codemirror/lang-html/dist/index.js +661 -0
  37. package/node_modules/@codemirror/lang-html/package.json +46 -0
  38. package/node_modules/@codemirror/lang-javascript/.github/workflows/dispatch.yml +16 -0
  39. package/node_modules/@codemirror/lang-javascript/CHANGELOG.md +206 -0
  40. package/node_modules/@codemirror/lang-javascript/LICENSE +21 -0
  41. package/node_modules/@codemirror/lang-javascript/README.md +125 -0
  42. package/node_modules/@codemirror/lang-javascript/dist/index.cjs +526 -0
  43. package/node_modules/@codemirror/lang-javascript/dist/index.d.cts +93 -0
  44. package/node_modules/@codemirror/lang-javascript/dist/index.d.ts +93 -0
  45. package/node_modules/@codemirror/lang-javascript/dist/index.js +513 -0
  46. package/node_modules/@codemirror/lang-javascript/package.json +45 -0
  47. package/node_modules/@codemirror/lang-json/.github/workflows/dispatch.yml +16 -0
  48. package/node_modules/@codemirror/lang-json/CHANGELOG.md +59 -0
  49. package/node_modules/@codemirror/lang-json/LICENSE +21 -0
  50. package/node_modules/@codemirror/lang-json/README.md +56 -0
  51. package/node_modules/@codemirror/lang-json/dist/index.cjs +68 -0
  52. package/node_modules/@codemirror/lang-json/dist/index.d.cts +22 -0
  53. package/node_modules/@codemirror/lang-json/dist/index.d.ts +22 -0
  54. package/node_modules/@codemirror/lang-json/dist/index.js +64 -0
  55. package/node_modules/@codemirror/lang-json/package.json +39 -0
  56. package/node_modules/@codemirror/lang-markdown/.github/workflows/dispatch.yml +16 -0
  57. package/node_modules/@codemirror/lang-markdown/CHANGELOG.md +246 -0
  58. package/node_modules/@codemirror/lang-markdown/LICENSE +21 -0
  59. package/node_modules/@codemirror/lang-markdown/README.md +162 -0
  60. package/node_modules/@codemirror/lang-markdown/dist/index.cjs +501 -0
  61. package/node_modules/@codemirror/lang-markdown/dist/index.d.cts +124 -0
  62. package/node_modules/@codemirror/lang-markdown/dist/index.d.ts +124 -0
  63. package/node_modules/@codemirror/lang-markdown/dist/index.js +492 -0
  64. package/node_modules/@codemirror/lang-markdown/package.json +44 -0
  65. package/node_modules/@codemirror/lang-python/.github/workflows/dispatch.yml +16 -0
  66. package/node_modules/@codemirror/lang-python/CHANGELOG.md +174 -0
  67. package/node_modules/@codemirror/lang-python/LICENSE +21 -0
  68. package/node_modules/@codemirror/lang-python/README.md +61 -0
  69. package/node_modules/@codemirror/lang-python/dist/index.cjs +313 -0
  70. package/node_modules/@codemirror/lang-python/dist/index.d.cts +26 -0
  71. package/node_modules/@codemirror/lang-python/dist/index.d.ts +26 -0
  72. package/node_modules/@codemirror/lang-python/dist/index.js +308 -0
  73. package/node_modules/@codemirror/lang-python/package.json +42 -0
  74. package/node_modules/@codemirror/language/.github/workflows/dispatch.yml +16 -0
  75. package/node_modules/@codemirror/language/CHANGELOG.md +412 -0
  76. package/node_modules/@codemirror/language/LICENSE +21 -0
  77. package/node_modules/@codemirror/language/README.md +66 -0
  78. package/node_modules/@codemirror/language/dist/index.cjs +2742 -0
  79. package/node_modules/@codemirror/language/dist/index.d.cts +1220 -0
  80. package/node_modules/@codemirror/language/dist/index.d.ts +1220 -0
  81. package/node_modules/@codemirror/language/dist/index.js +2687 -0
  82. package/node_modules/@codemirror/language/package.json +44 -0
  83. package/node_modules/@codemirror/lint/.github/workflows/dispatch.yml +16 -0
  84. package/node_modules/@codemirror/lint/CHANGELOG.md +318 -0
  85. package/node_modules/@codemirror/lint/LICENSE +21 -0
  86. package/node_modules/@codemirror/lint/README.md +18 -0
  87. package/node_modules/@codemirror/lint/dist/index.cjs +958 -0
  88. package/node_modules/@codemirror/lint/dist/index.d.cts +195 -0
  89. package/node_modules/@codemirror/lint/dist/index.d.ts +195 -0
  90. package/node_modules/@codemirror/lint/dist/index.js +945 -0
  91. package/node_modules/@codemirror/lint/package.json +40 -0
  92. package/node_modules/@codemirror/search/.github/workflows/dispatch.yml +16 -0
  93. package/node_modules/@codemirror/search/CHANGELOG.md +324 -0
  94. package/node_modules/@codemirror/search/LICENSE +21 -0
  95. package/node_modules/@codemirror/search/README.md +18 -0
  96. package/node_modules/@codemirror/search/dist/index.cjs +1237 -0
  97. package/node_modules/@codemirror/search/dist/index.d.cts +385 -0
  98. package/node_modules/@codemirror/search/dist/index.d.ts +385 -0
  99. package/node_modules/@codemirror/search/dist/index.js +1217 -0
  100. package/node_modules/@codemirror/search/package.json +40 -0
  101. package/node_modules/@codemirror/state/.github/workflows/dispatch.yml +16 -0
  102. package/node_modules/@codemirror/state/CHANGELOG.md +308 -0
  103. package/node_modules/@codemirror/state/LICENSE +21 -0
  104. package/node_modules/@codemirror/state/README.md +18 -0
  105. package/node_modules/@codemirror/state/dist/index.cjs +3922 -0
  106. package/node_modules/@codemirror/state/dist/index.d.cts +1713 -0
  107. package/node_modules/@codemirror/state/dist/index.d.ts +1713 -0
  108. package/node_modules/@codemirror/state/dist/index.js +3892 -0
  109. package/node_modules/@codemirror/state/package.json +38 -0
  110. package/node_modules/@codemirror/theme-one-dark/.github/workflows/dispatch.yml +16 -0
  111. package/node_modules/@codemirror/theme-one-dark/CHANGELOG.md +97 -0
  112. package/node_modules/@codemirror/theme-one-dark/LICENSE +21 -0
  113. package/node_modules/@codemirror/theme-one-dark/README.md +46 -0
  114. package/node_modules/@codemirror/theme-one-dark/dist/index.cjs +139 -0
  115. package/node_modules/@codemirror/theme-one-dark/dist/index.d.cts +39 -0
  116. package/node_modules/@codemirror/theme-one-dark/dist/index.d.ts +39 -0
  117. package/node_modules/@codemirror/theme-one-dark/dist/index.js +134 -0
  118. package/node_modules/@codemirror/theme-one-dark/package.json +41 -0
  119. package/node_modules/@codemirror/view/.github/workflows/dispatch.yml +16 -0
  120. package/node_modules/@codemirror/view/CHANGELOG.md +2284 -0
  121. package/node_modules/@codemirror/view/LICENSE +21 -0
  122. package/node_modules/@codemirror/view/README.md +37 -0
  123. package/node_modules/@codemirror/view/dist/index.cjs +11796 -0
  124. package/node_modules/@codemirror/view/dist/index.d.cts +2389 -0
  125. package/node_modules/@codemirror/view/dist/index.d.ts +2389 -0
  126. package/node_modules/@codemirror/view/dist/index.js +11745 -0
  127. package/node_modules/@codemirror/view/package.json +41 -0
  128. package/node_modules/@groove-dev/daemon/src/api.js +268 -2
  129. package/node_modules/@groove-dev/daemon/src/filewatcher.js +59 -0
  130. package/node_modules/@groove-dev/daemon/src/index.js +28 -1
  131. package/node_modules/@groove-dev/daemon/src/mimetypes.js +43 -0
  132. package/node_modules/@groove-dev/gui/dist/assets/index-BQSznoq0.js +103 -0
  133. package/node_modules/@groove-dev/gui/dist/index.html +1 -1
  134. package/node_modules/@groove-dev/gui/package.json +15 -2
  135. package/node_modules/@groove-dev/gui/src/App.jsx +3 -0
  136. package/node_modules/@groove-dev/gui/src/components/CodeEditor.jsx +143 -0
  137. package/node_modules/@groove-dev/gui/src/components/EditorTabs.jsx +83 -0
  138. package/node_modules/@groove-dev/gui/src/components/FileTree.jsx +492 -0
  139. package/node_modules/@groove-dev/gui/src/components/MediaViewer.jsx +104 -0
  140. package/node_modules/@groove-dev/gui/src/stores/groove.js +287 -1
  141. package/node_modules/@groove-dev/gui/src/views/FileEditor.jsx +149 -0
  142. package/node_modules/@lezer/common/LICENSE +21 -0
  143. package/node_modules/@lezer/common/README.md +14 -0
  144. package/node_modules/@lezer/common/dist/index.cjs +2209 -0
  145. package/node_modules/@lezer/common/dist/index.d.cts +1174 -0
  146. package/node_modules/@lezer/common/dist/index.d.ts +1174 -0
  147. package/node_modules/@lezer/common/dist/index.js +2196 -0
  148. package/node_modules/@lezer/common/package.json +32 -0
  149. package/node_modules/@lezer/css/CHANGELOG.md +307 -0
  150. package/node_modules/@lezer/css/LICENSE +21 -0
  151. package/node_modules/@lezer/css/README.md +6 -0
  152. package/node_modules/@lezer/css/dist/index.cjs +151 -0
  153. package/node_modules/@lezer/css/dist/index.d.cts +3 -0
  154. package/node_modules/@lezer/css/dist/index.d.ts +3 -0
  155. package/node_modules/@lezer/css/dist/index.js +147 -0
  156. package/node_modules/@lezer/css/package.json +36 -0
  157. package/node_modules/@lezer/css/rollup.config.js +16 -0
  158. package/node_modules/@lezer/css/src/css.grammar +290 -0
  159. package/node_modules/@lezer/css/src/highlight.js +36 -0
  160. package/node_modules/@lezer/css/src/parser.js +31 -0
  161. package/node_modules/@lezer/css/src/parser.terms.js +63 -0
  162. package/node_modules/@lezer/css/src/tokens.js +75 -0
  163. package/node_modules/@lezer/css/test/declarations.txt +241 -0
  164. package/node_modules/@lezer/css/test/selector.txt +178 -0
  165. package/node_modules/@lezer/css/test/statements.txt +227 -0
  166. package/node_modules/@lezer/css/test/test-css.js +16 -0
  167. package/node_modules/@lezer/highlight/LICENSE +21 -0
  168. package/node_modules/@lezer/highlight/README.md +14 -0
  169. package/node_modules/@lezer/highlight/dist/index.cjs +936 -0
  170. package/node_modules/@lezer/highlight/dist/index.d.cts +623 -0
  171. package/node_modules/@lezer/highlight/dist/index.d.ts +623 -0
  172. package/node_modules/@lezer/highlight/dist/index.js +927 -0
  173. package/node_modules/@lezer/highlight/package.json +31 -0
  174. package/node_modules/@lezer/html/CHANGELOG.md +303 -0
  175. package/node_modules/@lezer/html/LICENSE +21 -0
  176. package/node_modules/@lezer/html/README.md +37 -0
  177. package/node_modules/@lezer/html/dist/index.cjs +354 -0
  178. package/node_modules/@lezer/html/dist/index.d.cts +14 -0
  179. package/node_modules/@lezer/html/dist/index.d.ts +14 -0
  180. package/node_modules/@lezer/html/dist/index.js +349 -0
  181. package/node_modules/@lezer/html/package.json +37 -0
  182. package/node_modules/@lezer/html/rollup.config.js +16 -0
  183. package/node_modules/@lezer/html/src/.tern-port +1 -0
  184. package/node_modules/@lezer/html/src/content.js +87 -0
  185. package/node_modules/@lezer/html/src/highlight.js +15 -0
  186. package/node_modules/@lezer/html/src/html.grammar +181 -0
  187. package/node_modules/@lezer/html/src/index.js +2 -0
  188. package/node_modules/@lezer/html/src/parser.js +27 -0
  189. package/node_modules/@lezer/html/src/parser.terms.js +53 -0
  190. package/node_modules/@lezer/html/src/tokens.js +199 -0
  191. package/node_modules/@lezer/html/test/mixed.txt +69 -0
  192. package/node_modules/@lezer/html/test/tags.txt +370 -0
  193. package/node_modules/@lezer/html/test/test-html.js +29 -0
  194. package/node_modules/@lezer/html/test/test-incremental.js +97 -0
  195. package/node_modules/@lezer/html/test/vue.txt +56 -0
  196. package/node_modules/@lezer/javascript/CHANGELOG.md +485 -0
  197. package/node_modules/@lezer/javascript/LICENSE +21 -0
  198. package/node_modules/@lezer/javascript/README.md +14 -0
  199. package/node_modules/@lezer/javascript/dist/index.cjs +196 -0
  200. package/node_modules/@lezer/javascript/dist/index.d.cts +3 -0
  201. package/node_modules/@lezer/javascript/dist/index.d.ts +3 -0
  202. package/node_modules/@lezer/javascript/dist/index.js +192 -0
  203. package/node_modules/@lezer/javascript/package.json +36 -0
  204. package/node_modules/@lezer/javascript/rollup.config.js +16 -0
  205. package/node_modules/@lezer/javascript/src/highlight.js +62 -0
  206. package/node_modules/@lezer/javascript/src/javascript.grammar +735 -0
  207. package/node_modules/@lezer/javascript/src/parser.js +33 -0
  208. package/node_modules/@lezer/javascript/src/parser.terms.js +177 -0
  209. package/node_modules/@lezer/javascript/src/tokens.js +87 -0
  210. package/node_modules/@lezer/javascript/test/decorator.txt +64 -0
  211. package/node_modules/@lezer/javascript/test/expression.txt +686 -0
  212. package/node_modules/@lezer/javascript/test/jsx.txt +79 -0
  213. package/node_modules/@lezer/javascript/test/semicolon.txt +77 -0
  214. package/node_modules/@lezer/javascript/test/statement.txt +404 -0
  215. package/node_modules/@lezer/javascript/test/test-javascript.js +17 -0
  216. package/node_modules/@lezer/javascript/test/typescript.txt +401 -0
  217. package/node_modules/@lezer/json/CHANGELOG.md +79 -0
  218. package/node_modules/@lezer/json/LICENSE +21 -0
  219. package/node_modules/@lezer/json/README.md +7 -0
  220. package/node_modules/@lezer/json/dist/index.cjs +41 -0
  221. package/node_modules/@lezer/json/dist/index.d.cts +3 -0
  222. package/node_modules/@lezer/json/dist/index.d.ts +3 -0
  223. package/node_modules/@lezer/json/dist/index.js +37 -0
  224. package/node_modules/@lezer/json/package.json +36 -0
  225. package/node_modules/@lezer/json/rollup.config.js +15 -0
  226. package/node_modules/@lezer/json/src/highlight.js +12 -0
  227. package/node_modules/@lezer/json/src/json.grammar +38 -0
  228. package/node_modules/@lezer/json/src/parser.js +23 -0
  229. package/node_modules/@lezer/json/src/parser.terms.js +12 -0
  230. package/node_modules/@lezer/json/test/arrays.txt +34 -0
  231. package/node_modules/@lezer/json/test/literals.txt +23 -0
  232. package/node_modules/@lezer/json/test/numbers.txt +87 -0
  233. package/node_modules/@lezer/json/test/objects.txt +34 -0
  234. package/node_modules/@lezer/json/test/strings.txt +50 -0
  235. package/node_modules/@lezer/json/test/test-json.js +17 -0
  236. package/node_modules/@lezer/lr/LICENSE +21 -0
  237. package/node_modules/@lezer/lr/README.md +25 -0
  238. package/node_modules/@lezer/lr/dist/constants.d.ts +45 -0
  239. package/node_modules/@lezer/lr/dist/constants.js +5 -0
  240. package/node_modules/@lezer/lr/dist/index.cjs +1891 -0
  241. package/node_modules/@lezer/lr/dist/index.d.cts +303 -0
  242. package/node_modules/@lezer/lr/dist/index.d.ts +303 -0
  243. package/node_modules/@lezer/lr/dist/index.js +1884 -0
  244. package/node_modules/@lezer/lr/package.json +32 -0
  245. package/node_modules/@lezer/markdown/CHANGELOG.md +279 -0
  246. package/node_modules/@lezer/markdown/LICENSE +21 -0
  247. package/node_modules/@lezer/markdown/README.md +725 -0
  248. package/node_modules/@lezer/markdown/bin/build-readme.cjs +39 -0
  249. package/node_modules/@lezer/markdown/build.js +16 -0
  250. package/node_modules/@lezer/markdown/dist/index.cjs +2352 -0
  251. package/node_modules/@lezer/markdown/dist/index.d.cts +600 -0
  252. package/node_modules/@lezer/markdown/dist/index.d.ts +600 -0
  253. package/node_modules/@lezer/markdown/dist/index.js +2335 -0
  254. package/node_modules/@lezer/markdown/package.json +37 -0
  255. package/node_modules/@lezer/markdown/src/README.md +83 -0
  256. package/node_modules/@lezer/markdown/src/extension.ts +301 -0
  257. package/node_modules/@lezer/markdown/src/index.ts +5 -0
  258. package/node_modules/@lezer/markdown/src/markdown.ts +1961 -0
  259. package/node_modules/@lezer/markdown/src/nest.ts +46 -0
  260. package/node_modules/@lezer/markdown/test/compare-tree.ts +14 -0
  261. package/node_modules/@lezer/markdown/test/spec.ts +79 -0
  262. package/node_modules/@lezer/markdown/test/test-extension.ts +269 -0
  263. package/node_modules/@lezer/markdown/test/test-incremental.ts +265 -0
  264. package/node_modules/@lezer/markdown/test/test-markdown.ts +3574 -0
  265. package/node_modules/@lezer/markdown/test/test-nesting.ts +86 -0
  266. package/node_modules/@lezer/markdown/test/tsconfig.json +12 -0
  267. package/node_modules/@lezer/markdown/tsconfig.json +14 -0
  268. package/node_modules/@lezer/python/CHANGELOG.md +243 -0
  269. package/node_modules/@lezer/python/LICENSE +21 -0
  270. package/node_modules/@lezer/python/README.md +6 -0
  271. package/node_modules/@lezer/python/dist/index.cjs +330 -0
  272. package/node_modules/@lezer/python/dist/index.d.cts +3 -0
  273. package/node_modules/@lezer/python/dist/index.d.ts +3 -0
  274. package/node_modules/@lezer/python/dist/index.js +326 -0
  275. package/node_modules/@lezer/python/package.json +36 -0
  276. package/node_modules/@lezer/python/rollup.config.js +16 -0
  277. package/node_modules/@lezer/python/src/highlight.js +35 -0
  278. package/node_modules/@lezer/python/src/python.grammar +381 -0
  279. package/node_modules/@lezer/python/src/tokens.js +224 -0
  280. package/node_modules/@lezer/python/test/expression.txt +231 -0
  281. package/node_modules/@lezer/python/test/statement.txt +442 -0
  282. package/node_modules/@lezer/python/test/test-incremental.js +33 -0
  283. package/node_modules/@lezer/python/test/test-python.js +17 -0
  284. package/node_modules/@marijn/find-cluster-break/LICENSE +21 -0
  285. package/node_modules/@marijn/find-cluster-break/README.md +28 -0
  286. package/node_modules/@marijn/find-cluster-break/dist/index.cjs +85 -0
  287. package/node_modules/@marijn/find-cluster-break/dist/index.d.cts +15 -0
  288. package/node_modules/@marijn/find-cluster-break/package.json +35 -0
  289. package/node_modules/@marijn/find-cluster-break/rollup.config.js +7 -0
  290. package/node_modules/@marijn/find-cluster-break/src/index.d.ts +15 -0
  291. package/node_modules/@marijn/find-cluster-break/src/index.js +87 -0
  292. package/node_modules/@marijn/find-cluster-break/test/test-cluster.js +30 -0
  293. package/node_modules/crelt/LICENSE +19 -0
  294. package/node_modules/crelt/README.md +23 -0
  295. package/node_modules/crelt/dist/index.cjs +31 -0
  296. package/node_modules/crelt/dist/index.d.cts +4 -0
  297. package/node_modules/crelt/index.d.ts +4 -0
  298. package/node_modules/crelt/index.js +28 -0
  299. package/node_modules/crelt/package.json +35 -0
  300. package/node_modules/crelt/rollup.config.js +13 -0
  301. package/node_modules/style-mod/LICENSE +19 -0
  302. package/node_modules/style-mod/README.md +98 -0
  303. package/node_modules/style-mod/dist/style-mod.cjs +165 -0
  304. package/node_modules/style-mod/dist/style-mod.d.cts +16 -0
  305. package/node_modules/style-mod/package.json +39 -0
  306. package/node_modules/style-mod/src/README.md +34 -0
  307. package/node_modules/style-mod/src/style-mod.d.ts +16 -0
  308. package/node_modules/style-mod/src/style-mod.js +172 -0
  309. package/node_modules/style-mod/test/test-style-mod.js +104 -0
  310. package/node_modules/w3c-keyname/.tern-port +1 -0
  311. package/node_modules/w3c-keyname/LICENSE +19 -0
  312. package/node_modules/w3c-keyname/README.md +18 -0
  313. package/node_modules/w3c-keyname/index.cjs +127 -0
  314. package/node_modules/w3c-keyname/index.d.cts +5 -0
  315. package/node_modules/w3c-keyname/index.d.ts +5 -0
  316. package/node_modules/w3c-keyname/index.js +119 -0
  317. package/node_modules/w3c-keyname/package.json +37 -0
  318. package/package.json +1 -1
  319. package/packages/daemon/src/api.js +268 -2
  320. package/packages/daemon/src/filewatcher.js +59 -0
  321. package/packages/daemon/src/index.js +28 -1
  322. package/packages/daemon/src/mimetypes.js +43 -0
  323. package/packages/gui/dist/assets/index-BQSznoq0.js +103 -0
  324. package/packages/gui/dist/index.html +1 -1
  325. package/packages/gui/package.json +15 -2
  326. package/packages/gui/src/App.jsx +3 -0
  327. package/packages/gui/src/components/CodeEditor.jsx +143 -0
  328. package/packages/gui/src/components/EditorTabs.jsx +83 -0
  329. package/packages/gui/src/components/FileTree.jsx +492 -0
  330. package/packages/gui/src/components/MediaViewer.jsx +104 -0
  331. package/packages/gui/src/stores/groove.js +287 -1
  332. package/packages/gui/src/views/FileEditor.jsx +149 -0
  333. package/node_modules/@groove-dev/gui/dist/assets/index-8Kqi_LVo.js +0 -74
  334. package/packages/gui/dist/assets/index-8Kqi_LVo.js +0 -74
@@ -0,0 +1,686 @@
1
+ # Minimal
2
+
3
+ 0
4
+
5
+ ==>
6
+
7
+ Script(ExpressionStatement(Number))
8
+
9
+ # Strings
10
+
11
+ "A string with \"double\" and 'single' quotes";
12
+ 'A string with "double" and \'single\' quotes';
13
+ '\\';
14
+ "\\";
15
+
16
+ 'A string with new \
17
+ line';
18
+
19
+ ==>
20
+
21
+ Script(ExpressionStatement(String(Escape,Escape)),
22
+ ExpressionStatement(String(Escape,Escape)),
23
+ ExpressionStatement(String(Escape)),
24
+ ExpressionStatement(String(Escape)),
25
+ ExpressionStatement(String(Escape)))
26
+
27
+ # Numbers
28
+
29
+ 101;
30
+ 3.14;
31
+ 3.14e+1;
32
+ 0x1ABCDEFabcdef;
33
+ 0o7632157312;
34
+ 0b1010101001;
35
+ 1e+3;
36
+
37
+ ==>
38
+
39
+ Script(
40
+ ExpressionStatement(Number),
41
+ ExpressionStatement(Number),
42
+ ExpressionStatement(Number),
43
+ ExpressionStatement(Number),
44
+ ExpressionStatement(Number),
45
+ ExpressionStatement(Number),
46
+ ExpressionStatement(Number))
47
+
48
+ # Identifiers
49
+
50
+ theVar;
51
+ theVar2;
52
+ $_;
53
+ é象𫝄;
54
+ últimaVez;
55
+ 県;
56
+
57
+ ==>
58
+
59
+ Script(
60
+ ExpressionStatement(VariableName),
61
+ ExpressionStatement(VariableName),
62
+ ExpressionStatement(VariableName),
63
+ ExpressionStatement(VariableName),
64
+ ExpressionStatement(VariableName),
65
+ ExpressionStatement(VariableName))
66
+
67
+ # RegExps
68
+
69
+ /one\\/;
70
+ /one/g;
71
+ /one/i;
72
+ /one/gim;
73
+ /on\/e/gim;
74
+ /on[^/]afe/gim;
75
+ /[\]/]/;
76
+
77
+ ==>
78
+
79
+ Script(
80
+ ExpressionStatement(RegExp),
81
+ ExpressionStatement(RegExp),
82
+ ExpressionStatement(RegExp),
83
+ ExpressionStatement(RegExp),
84
+ ExpressionStatement(RegExp),
85
+ ExpressionStatement(RegExp),
86
+ ExpressionStatement(RegExp))
87
+
88
+ # Arrays
89
+
90
+ [];
91
+ [ "item1" ];
92
+ [ "item1", ];
93
+ [ "item1", item2 ];
94
+ [ , item2 ];
95
+ [ item2 = 5 ];
96
+ [ a, ...b, c ];
97
+
98
+ ==>
99
+
100
+ Script(
101
+ ExpressionStatement(ArrayExpression),
102
+ ExpressionStatement(ArrayExpression(String)),
103
+ ExpressionStatement(ArrayExpression(String)),
104
+ ExpressionStatement(ArrayExpression(String,VariableName)),
105
+ ExpressionStatement(ArrayExpression(VariableName)),
106
+ ExpressionStatement(ArrayExpression(AssignmentExpression(VariableName,Equals,Number))),
107
+ ExpressionStatement(ArrayExpression(VariableName, Spread, VariableName, VariableName)))
108
+
109
+ # Functions
110
+
111
+ [
112
+ function() {},
113
+ function(arg1, ...arg2) {
114
+ arg2;
115
+ },
116
+ function stuff() {},
117
+ function trailing(a,) {},
118
+ function trailing(a,b,) {}
119
+ ]
120
+
121
+ ==>
122
+
123
+ Script(ExpressionStatement(ArrayExpression(
124
+ FunctionExpression(function,ParamList,Block),
125
+ FunctionExpression(function,ParamList(VariableDefinition,Spread,VariableDefinition), Block(ExpressionStatement(VariableName))),
126
+ FunctionExpression(function,VariableDefinition,ParamList,Block),
127
+ FunctionExpression(function,VariableDefinition,ParamList(VariableDefinition), Block),
128
+ FunctionExpression(function,VariableDefinition,ParamList(VariableDefinition,VariableDefinition),Block))))
129
+
130
+ # Arrow functions
131
+
132
+ a => 1;
133
+ () => 2;
134
+ (d, e) => 3;
135
+ (f, g,) => {
136
+ return h;
137
+ };
138
+ async () => 4;
139
+
140
+ ==>
141
+
142
+ Script(
143
+ ExpressionStatement(ArrowFunction(ParamList(VariableDefinition),Arrow,Number)),
144
+ ExpressionStatement(ArrowFunction(ParamList,Arrow,Number)),
145
+ ExpressionStatement(ArrowFunction(ParamList(VariableDefinition,VariableDefinition),Arrow,Number)),
146
+ ExpressionStatement(ArrowFunction(ParamList(VariableDefinition,VariableDefinition),Arrow,Block(ReturnStatement(return,VariableName)))),
147
+ ExpressionStatement(ArrowFunction(async,ParamList,Arrow,Number)))
148
+
149
+ # Arrow function followed by comma
150
+
151
+ ({
152
+ a: () => 1,
153
+ b: "x"
154
+ })
155
+
156
+ ==>
157
+
158
+ Script(ExpressionStatement(ParenthesizedExpression(ObjectExpression(
159
+ Property(PropertyDefinition,ArrowFunction(ParamList,Arrow,Number)),
160
+ Property(PropertyDefinition,String)))))
161
+
162
+ # Long potential arrow function
163
+
164
+ (assign = [to, from], from = assign[0], to = assign[1]);
165
+
166
+ ==>
167
+
168
+ Script(ExpressionStatement(ParenthesizedExpression(SequenceExpression(
169
+ AssignmentExpression(VariableName,Equals,ArrayExpression(VariableName,VariableName)),
170
+ AssignmentExpression(VariableName,Equals,MemberExpression(VariableName,Number)),
171
+ AssignmentExpression(VariableName,Equals,MemberExpression(VariableName,Number))))))
172
+
173
+ # Ternary operator
174
+
175
+ condition ? case1 : case2;
176
+
177
+ x.y = some.condition ? 2**x : 1 - 2;
178
+
179
+ ==>
180
+
181
+ Script(
182
+ ExpressionStatement(ConditionalExpression(VariableName,LogicOp,VariableName,LogicOp,VariableName)),
183
+ ExpressionStatement(AssignmentExpression(
184
+ MemberExpression(VariableName,PropertyName),Equals,
185
+ ConditionalExpression(
186
+ MemberExpression(VariableName,PropertyName),LogicOp,
187
+ BinaryExpression(Number,ArithOp,VariableName),LogicOp,
188
+ BinaryExpression(Number,ArithOp,Number)))))
189
+
190
+ # Type operators
191
+
192
+ typeof x;
193
+ x instanceof String;
194
+
195
+ ==>
196
+
197
+ Script(ExpressionStatement(UnaryExpression(typeof,VariableName)),
198
+ ExpressionStatement(BinaryExpression(VariableName,instanceof,VariableName)))
199
+
200
+ # Delete
201
+
202
+ delete thing['prop'];
203
+ true ? delete thing.prop : null;
204
+
205
+ ==>
206
+
207
+ Script(
208
+ ExpressionStatement(UnaryExpression(delete,MemberExpression(VariableName,String))),
209
+ ExpressionStatement(ConditionalExpression(BooleanLiteral,LogicOp,
210
+ UnaryExpression(delete,MemberExpression(VariableName,PropertyName)),LogicOp,null)))
211
+
212
+ # Void
213
+
214
+ a = void b();
215
+
216
+ ==>
217
+
218
+ Script(ExpressionStatement(AssignmentExpression(VariableName,Equals,UnaryExpression(void,CallExpression(VariableName,ArgList)))))
219
+
220
+ # Augmented assignment
221
+
222
+ s |= 1;
223
+ t %= 2;
224
+ w ^= 3;
225
+ x += 4;
226
+ y.z *= 5;
227
+ z += 1;
228
+ a >>= 1;
229
+ b >>>= 1;
230
+ c <<= 1;
231
+
232
+ ==>
233
+
234
+ Script(
235
+ ExpressionStatement(AssignmentExpression(VariableName,UpdateOp,Number)),
236
+ ExpressionStatement(AssignmentExpression(VariableName,UpdateOp,Number)),
237
+ ExpressionStatement(AssignmentExpression(VariableName,UpdateOp,Number)),
238
+ ExpressionStatement(AssignmentExpression(VariableName,UpdateOp,Number)),
239
+ ExpressionStatement(AssignmentExpression(MemberExpression(VariableName,PropertyName),UpdateOp,Number)),
240
+ ExpressionStatement(AssignmentExpression(VariableName,UpdateOp,Number)),
241
+ ExpressionStatement(AssignmentExpression(VariableName,UpdateOp,Number)),
242
+ ExpressionStatement(AssignmentExpression(VariableName,UpdateOp,Number)),
243
+ ExpressionStatement(AssignmentExpression(VariableName,UpdateOp,Number)))
244
+
245
+ # Operator precedence
246
+
247
+ a <= b && c >= d;
248
+ a.b = c ? d : e;
249
+ a && b(c) && d;
250
+ a && new b(c) && d;
251
+ typeof a == b && c instanceof d;
252
+
253
+ ==>
254
+
255
+ Script(
256
+ ExpressionStatement(BinaryExpression(BinaryExpression(VariableName,CompareOp,VariableName),LogicOp,
257
+ BinaryExpression(VariableName,CompareOp,VariableName))),
258
+ ExpressionStatement(AssignmentExpression(MemberExpression(VariableName,PropertyName),Equals,
259
+ ConditionalExpression(VariableName,LogicOp,VariableName,LogicOp,VariableName))),
260
+ ExpressionStatement(BinaryExpression(BinaryExpression(VariableName,LogicOp,CallExpression(VariableName,ArgList(VariableName))),LogicOp,
261
+ VariableName)),
262
+ ExpressionStatement(BinaryExpression(BinaryExpression(VariableName,LogicOp,NewExpression(new,VariableName,ArgList(VariableName))),LogicOp,
263
+ VariableName)),
264
+ ExpressionStatement(BinaryExpression(BinaryExpression(UnaryExpression(typeof,VariableName),CompareOp,VariableName),LogicOp,
265
+ BinaryExpression(VariableName,instanceof,VariableName))))
266
+
267
+ # Rest args
268
+
269
+ foo(...rest);
270
+
271
+ ==>
272
+
273
+ Script(ExpressionStatement(CallExpression(VariableName,ArgList(Spread,VariableName))))
274
+
275
+ # Forward slashes after parenthesized expressions
276
+
277
+ (foo - bar) / baz;
278
+ if (foo - bar) /baz/;
279
+ (this.a() / this.b() - 1) / 2;
280
+
281
+ ==>
282
+
283
+ Script(
284
+ ExpressionStatement(BinaryExpression(ParenthesizedExpression(BinaryExpression(VariableName,ArithOp,VariableName)),ArithOp,VariableName)),
285
+ IfStatement(if,ParenthesizedExpression(BinaryExpression(VariableName,ArithOp,VariableName)),
286
+ ExpressionStatement(RegExp)),
287
+ ExpressionStatement(BinaryExpression(ParenthesizedExpression(
288
+ BinaryExpression(
289
+ BinaryExpression(
290
+ CallExpression(MemberExpression(this,PropertyName),ArgList),ArithOp,
291
+ CallExpression(MemberExpression(this,PropertyName),ArgList)),ArithOp,Number)),ArithOp,Number)))
292
+
293
+ # Yield expressions
294
+
295
+ yield db.users.where('[endpoint+email]');
296
+ yield* a;
297
+ yield [22];
298
+
299
+ ==>
300
+
301
+ Script(
302
+ ExpressionStatement(YieldExpression(yield,
303
+ CallExpression(MemberExpression(MemberExpression(VariableName,PropertyName),PropertyName),ArgList(String)))),
304
+ ExpressionStatement(YieldExpression(yield,Star,VariableName)),
305
+ ExpressionStatement(YieldExpression(yield,ArrayExpression(Number))))
306
+
307
+ # Template strings
308
+
309
+ `one line`;
310
+ `multi
311
+ line`;
312
+
313
+ `multi
314
+ ${2 + 2}
315
+ hello
316
+ ${1, 2}
317
+ line`;
318
+
319
+ `$$$$`;
320
+ `$`;
321
+ `$$$$${ async }`;
322
+
323
+ `\\\``;
324
+
325
+ `one${`two${`three`}`}`;
326
+
327
+ f`hi${there}`;
328
+
329
+ ==>
330
+
331
+ Script(
332
+ ExpressionStatement(TemplateString),
333
+ ExpressionStatement(TemplateString),
334
+ ExpressionStatement(TemplateString(
335
+ Interpolation(InterpolationStart,BinaryExpression(Number,ArithOp,Number),InterpolationEnd),
336
+ Interpolation(InterpolationStart,SequenceExpression(Number,Number),InterpolationEnd))),
337
+ ExpressionStatement(TemplateString),
338
+ ExpressionStatement(TemplateString),
339
+ ExpressionStatement(TemplateString(Interpolation(InterpolationStart,VariableName,InterpolationEnd))),
340
+ ExpressionStatement(TemplateString(Escape,Escape)),
341
+ ExpressionStatement(TemplateString(Interpolation(InterpolationStart,TemplateString(
342
+ Interpolation(InterpolationStart,TemplateString,InterpolationEnd)),InterpolationEnd))),
343
+ ExpressionStatement(TaggedTemplateExpression(VariableName,TemplateString(
344
+ Interpolation(InterpolationStart,VariableName,InterpolationEnd)))))
345
+
346
+ # Atoms
347
+
348
+ this;
349
+ null;
350
+ undefined;
351
+ true;
352
+ false;
353
+
354
+ ==>
355
+
356
+ Script(
357
+ ExpressionStatement(this),
358
+ ExpressionStatement(null),
359
+ ExpressionStatement(VariableName),
360
+ ExpressionStatement(BooleanLiteral),
361
+ ExpressionStatement(BooleanLiteral))
362
+
363
+ # Objects
364
+
365
+ foo({},
366
+ { a: "b" },
367
+ { c: "d", "e": f, 1: 2 },
368
+ {
369
+ g,
370
+ [methodName]() {}
371
+ },
372
+ {b, get},
373
+ {a,});
374
+
375
+ ==>
376
+
377
+ Script(ExpressionStatement(CallExpression(VariableName,ArgList(
378
+ ObjectExpression,
379
+ ObjectExpression(Property(PropertyDefinition,String)),
380
+ ObjectExpression(Property(PropertyDefinition,String),Property(String,VariableName),Property(Number,Number)),
381
+ ObjectExpression(Property(PropertyDefinition),Property(VariableName,ParamList,Block)),
382
+ ObjectExpression(Property(PropertyDefinition),Property(PropertyDefinition)),
383
+ ObjectExpression(Property(PropertyDefinition))))))
384
+
385
+ # Method definitions
386
+
387
+ ({
388
+ foo: true,
389
+
390
+ add(a, b) {
391
+ return a + b;
392
+ },
393
+
394
+ get bar() { return c; },
395
+
396
+ set bar(a) { c = a; },
397
+
398
+ *barGenerator() { yield c; },
399
+
400
+ get() { return 1; }
401
+ });
402
+
403
+ ==>
404
+
405
+ Script(ExpressionStatement(ParenthesizedExpression(ObjectExpression(
406
+ Property(PropertyDefinition,BooleanLiteral),
407
+ Property(PropertyDefinition,ParamList(VariableDefinition,VariableDefinition),
408
+ Block(ReturnStatement(return,BinaryExpression(VariableName,ArithOp,VariableName)))),
409
+ Property(get,PropertyDefinition,ParamList,Block(ReturnStatement(return,VariableName))),
410
+ Property(set,PropertyDefinition,ParamList(VariableDefinition),
411
+ Block(ExpressionStatement(AssignmentExpression(VariableName,Equals,VariableName)))),
412
+ Property(Star,PropertyDefinition,ParamList,Block(ExpressionStatement(YieldExpression(yield,VariableName)))),
413
+ Property(PropertyDefinition,ParamList,Block(ReturnStatement(return,Number)))))))
414
+
415
+ # Keyword property names
416
+
417
+ ({
418
+ finally() {},
419
+ catch() {},
420
+ get: function () {},
421
+ set() {},
422
+ static: true,
423
+ async: true,
424
+ });
425
+
426
+ ==>
427
+
428
+ Script(ExpressionStatement(ParenthesizedExpression(ObjectExpression(
429
+ Property(PropertyDefinition,ParamList,Block),
430
+ Property(PropertyDefinition,ParamList,Block),
431
+ Property(PropertyDefinition,FunctionExpression(function,ParamList,Block)),
432
+ Property(PropertyDefinition,ParamList,Block),
433
+ Property(PropertyDefinition,BooleanLiteral),
434
+ Property(PropertyDefinition,BooleanLiteral)))))
435
+
436
+ # Generator functions
437
+
438
+ [
439
+ function *() {},
440
+ function *generateStuff(arg1, arg2) {
441
+ yield;
442
+ yield arg2;
443
+ }
444
+ ];
445
+
446
+ ==>
447
+
448
+ Script(ExpressionStatement(ArrayExpression(
449
+ FunctionExpression(function,Star,ParamList,Block),
450
+ FunctionExpression(function,Star,VariableDefinition,ParamList(VariableDefinition,VariableDefinition),Block(
451
+ ExpressionStatement(VariableName),
452
+ ExpressionStatement(YieldExpression(yield,VariableName)))))))
453
+
454
+ # Member expressions
455
+
456
+ x.someProperty;
457
+ x?.other;
458
+ x[someVariable];
459
+ f()["some-string"];
460
+ return returned.promise().done(a).fail(b);
461
+
462
+ ==>
463
+
464
+ Script(
465
+ ExpressionStatement(MemberExpression(VariableName,PropertyName)),
466
+ ExpressionStatement(MemberExpression(VariableName,PropertyName)),
467
+ ExpressionStatement(MemberExpression(VariableName,VariableName)),
468
+ ExpressionStatement(MemberExpression(CallExpression(VariableName,ArgList),String)),
469
+ ReturnStatement(return,CallExpression(MemberExpression(CallExpression(MemberExpression(CallExpression(
470
+ MemberExpression(VariableName,PropertyName),ArgList),PropertyName),ArgList(VariableName)),PropertyName),ArgList(VariableName))))
471
+
472
+ # Callback chain
473
+
474
+ return this.map(function (a) {
475
+ return a.b;
476
+ })
477
+
478
+ // a comment
479
+
480
+ .filter(function (c) {
481
+ return 2;
482
+ });
483
+
484
+ ==>
485
+
486
+ Script(ReturnStatement(return,CallExpression(MemberExpression(CallExpression(MemberExpression(this,PropertyName),
487
+ ArgList(FunctionExpression(function,ParamList(VariableDefinition),Block(ReturnStatement(return,MemberExpression(VariableName,PropertyName)))))),
488
+ LineComment,PropertyName),ArgList(FunctionExpression(function,ParamList(VariableDefinition),Block(ReturnStatement(return,Number)))))))
489
+
490
+ # Function calls
491
+
492
+ x.someMethod(arg1, "arg2");
493
+ (function(x, y) {
494
+
495
+ }(a, b));
496
+ f(new foo.bar(1), 2);
497
+
498
+ ==>
499
+
500
+ Script(
501
+ ExpressionStatement(CallExpression(MemberExpression(VariableName,PropertyName),ArgList(VariableName,String))),
502
+ ExpressionStatement(ParenthesizedExpression(CallExpression(FunctionExpression(function,ParamList(VariableDefinition,VariableDefinition),Block),
503
+ ArgList(VariableName,VariableName)))),
504
+ ExpressionStatement(CallExpression(VariableName,ArgList(NewExpression(new,MemberExpression(VariableName,PropertyName),ArgList(Number)),Number))))
505
+
506
+ # Constructor calls
507
+
508
+ new foo(1);
509
+ new module.Klass(1, "two");
510
+ new Thing;
511
+
512
+ ==>
513
+
514
+ Script(
515
+ ExpressionStatement(NewExpression(new,VariableName,ArgList(Number))),
516
+ ExpressionStatement(NewExpression(new,MemberExpression(VariableName,PropertyName),ArgList(Number,String))),
517
+ ExpressionStatement(NewExpression(new,VariableName)))
518
+
519
+ # Await Expressions
520
+
521
+ await asyncFunction();
522
+ await asyncPromise;
523
+
524
+ ==>
525
+
526
+ Script(
527
+ ExpressionStatement(AwaitExpression(await,CallExpression(VariableName,ArgList))),
528
+ ExpressionStatement(AwaitExpression(await,VariableName)))
529
+
530
+ # Numeric operators
531
+
532
+ i++;
533
+ i--;
534
+ i + j * 3 - j % 5;
535
+ 2 ** i * 3;
536
+ 2 * i ** 3;
537
+ +x;
538
+ -x;
539
+
540
+ ==>
541
+
542
+ Script(
543
+ ExpressionStatement(PostfixExpression(VariableName,ArithOp)),
544
+ ExpressionStatement(PostfixExpression(VariableName,ArithOp)),
545
+ ExpressionStatement(BinaryExpression(BinaryExpression(VariableName,ArithOp,BinaryExpression(VariableName,ArithOp,Number)),ArithOp,BinaryExpression(VariableName,ArithOp,Number))),
546
+ ExpressionStatement(BinaryExpression(BinaryExpression(Number,ArithOp,VariableName),ArithOp,Number)),
547
+ ExpressionStatement(BinaryExpression(Number,ArithOp,BinaryExpression(VariableName,ArithOp,Number))),
548
+ ExpressionStatement(UnaryExpression(ArithOp,VariableName)),
549
+ ExpressionStatement(UnaryExpression(ArithOp,VariableName)))
550
+
551
+ # Boolean operators
552
+
553
+ i || j;
554
+ i && j;
555
+ i ?? j;
556
+ !a && !b || !c && !d;
557
+
558
+ ==>
559
+
560
+ Script(
561
+ ExpressionStatement(BinaryExpression(VariableName,LogicOp,VariableName)),
562
+ ExpressionStatement(BinaryExpression(VariableName,LogicOp,VariableName)),
563
+ ExpressionStatement(BinaryExpression(VariableName,LogicOp,VariableName)),
564
+ ExpressionStatement(BinaryExpression(BinaryExpression(UnaryExpression(LogicOp,VariableName),LogicOp,
565
+ UnaryExpression(LogicOp,VariableName)),LogicOp,BinaryExpression(UnaryExpression(LogicOp,VariableName),LogicOp,
566
+ UnaryExpression(LogicOp,VariableName)))))
567
+
568
+ # Bitwise operators
569
+
570
+ i >> j;
571
+ i >>> j;
572
+ i << j;
573
+ i & j;
574
+ i | j;
575
+ ~i ^ ~j;
576
+
577
+ ==>
578
+
579
+ Script(
580
+ ExpressionStatement(BinaryExpression(VariableName,BitOp,VariableName)),
581
+ ExpressionStatement(BinaryExpression(VariableName,BitOp,VariableName)),
582
+ ExpressionStatement(BinaryExpression(VariableName,BitOp,VariableName)),
583
+ ExpressionStatement(BinaryExpression(VariableName,BitOp,VariableName)),
584
+ ExpressionStatement(BinaryExpression(VariableName,BitOp,VariableName)),
585
+ ExpressionStatement(BinaryExpression(UnaryExpression(BitOp,VariableName),BitOp,UnaryExpression(BitOp,VariableName))))
586
+
587
+ # Relational operators
588
+
589
+ x < y;
590
+ x <= y;
591
+ x == y;
592
+ x === y;
593
+ x != y;
594
+ x !== y;
595
+ x > y;
596
+ x >= y;
597
+
598
+ ==>
599
+
600
+ Script(
601
+ ExpressionStatement(BinaryExpression(VariableName,CompareOp,VariableName)),
602
+ ExpressionStatement(BinaryExpression(VariableName,CompareOp,VariableName)),
603
+ ExpressionStatement(BinaryExpression(VariableName,CompareOp,VariableName)),
604
+ ExpressionStatement(BinaryExpression(VariableName,CompareOp,VariableName)),
605
+ ExpressionStatement(BinaryExpression(VariableName,CompareOp,VariableName)),
606
+ ExpressionStatement(BinaryExpression(VariableName,CompareOp,VariableName)),
607
+ ExpressionStatement(BinaryExpression(VariableName,CompareOp,VariableName)),
608
+ ExpressionStatement(BinaryExpression(VariableName,CompareOp,VariableName)))
609
+
610
+ # Word operators
611
+
612
+ x in y;
613
+ x instanceof y;
614
+ !x instanceof y;
615
+
616
+ ==>
617
+
618
+ Script(
619
+ ExpressionStatement(BinaryExpression(VariableName,in,VariableName)),
620
+ ExpressionStatement(BinaryExpression(VariableName,instanceof,VariableName)),
621
+ ExpressionStatement(BinaryExpression(UnaryExpression(LogicOp,VariableName),instanceof,VariableName)))
622
+
623
+ # Assignments
624
+
625
+ x = 0;
626
+ x.y = 0;
627
+ x["y"] = 0;
628
+ async = 0;
629
+ [a, b = 2] = foo;
630
+ ({a, b, ...d} = c);
631
+
632
+ ==>
633
+
634
+ Script(
635
+ ExpressionStatement(AssignmentExpression(VariableName,Equals,Number)),
636
+ ExpressionStatement(AssignmentExpression(MemberExpression(VariableName,PropertyName),Equals,Number)),
637
+ ExpressionStatement(AssignmentExpression(MemberExpression(VariableName,String),Equals,Number)),
638
+ ExpressionStatement(AssignmentExpression(VariableName,Equals,Number)),
639
+ ExpressionStatement(AssignmentExpression(ArrayPattern(VariableDefinition,VariableDefinition,Equals,Number),Equals,VariableName)),
640
+ ExpressionStatement(ParenthesizedExpression(AssignmentExpression(ObjectPattern(
641
+ PatternProperty(PropertyName),PatternProperty(PropertyName),PatternProperty(Spread,VariableDefinition)),Equals,VariableName))))
642
+
643
+ # Comma operator
644
+
645
+ a = 1, b = 2;
646
+ c = {d: (3, 4 + 5)};
647
+
648
+ ==>
649
+
650
+ Script(
651
+ ExpressionStatement(SequenceExpression(AssignmentExpression(VariableName,Equals,Number),AssignmentExpression(VariableName,Equals,Number))),
652
+ ExpressionStatement(AssignmentExpression(VariableName,Equals,ObjectExpression(
653
+ Property(PropertyDefinition,ParenthesizedExpression(SequenceExpression(Number,BinaryExpression(Number,ArithOp,Number))))))))
654
+
655
+ # Punctuation
656
+
657
+ (foo(1, 2), bar);
658
+
659
+ ==>
660
+
661
+ Script(ExpressionStatement(ParenthesizedExpression(
662
+ "(",SequenceExpression(CallExpression(VariableName,ArgList("(",Number,Number,")")),",",VariableName),")")))
663
+
664
+ # Doesn't choke on unfinished ternary operator
665
+
666
+ 1?1
667
+
668
+ ==>
669
+
670
+ Script(ExpressionStatement(ConditionalExpression(Number,LogicOp,Number,⚠)))
671
+
672
+ # Can handle unterminated template literals
673
+
674
+ `f
675
+
676
+ ==>
677
+
678
+ Script(ExpressionStatement(TemplateString(⚠)))
679
+
680
+ # Ternary with leading-dot number
681
+
682
+ a?.2:.3
683
+
684
+ ==>
685
+
686
+ Script(ExpressionStatement(ConditionalExpression(VariableName,LogicOp,Number,LogicOp,Number)))