@milkdown/crepe 7.5.1 → 7.5.3

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 (499) hide show
  1. package/lib/cjs/{index-udZSknd8.js → index-TGmNEvsj.js} +7 -7
  2. package/lib/cjs/index-TGmNEvsj.js.map +1 -0
  3. package/lib/cjs/index-fhKBUFkq.js +46 -0
  4. package/lib/cjs/index-fhKBUFkq.js.map +1 -0
  5. package/lib/cjs/{index-tqAbVyds.js → index-rLAgJeYn.js} +4 -4
  6. package/lib/cjs/index-rLAgJeYn.js.map +1 -0
  7. package/lib/cjs/index.js +3 -3
  8. package/lib/cjs/index.js.map +1 -1
  9. package/lib/esm/{index-v3rvbocl.js → index-amuALmzU.js} +2 -2
  10. package/lib/esm/{index-v3rvbocl.js.map → index-amuALmzU.js.map} +1 -1
  11. package/lib/esm/index-jU_6odT9.js +44 -0
  12. package/lib/esm/index-jU_6odT9.js.map +1 -0
  13. package/lib/esm/{index-lm00PM0y.js → index-w69wbtEZ.js} +2 -2
  14. package/lib/esm/{index-lm00PM0y.js.map → index-w69wbtEZ.js.map} +1 -1
  15. package/lib/esm/index.js +3 -3
  16. package/lib/esm/index.js.map +1 -1
  17. package/package.json +3 -5
  18. package/lib/cjs/apl-99bWvYTf.js +0 -145
  19. package/lib/cjs/apl-99bWvYTf.js.map +0 -1
  20. package/lib/cjs/asciiarmor-cf0JLIr_.js +0 -59
  21. package/lib/cjs/asciiarmor-cf0JLIr_.js.map +0 -1
  22. package/lib/cjs/asn1-H4XzAvBS.js +0 -195
  23. package/lib/cjs/asn1-H4XzAvBS.js.map +0 -1
  24. package/lib/cjs/asterisk-0FgJEfZB.js +0 -190
  25. package/lib/cjs/asterisk-0FgJEfZB.js.map +0 -1
  26. package/lib/cjs/brainfuck-JX7vRZy7.js +0 -73
  27. package/lib/cjs/brainfuck-JX7vRZy7.js.map +0 -1
  28. package/lib/cjs/clike-ueXlMQy5.js +0 -1034
  29. package/lib/cjs/clike-ueXlMQy5.js.map +0 -1
  30. package/lib/cjs/clojure-6iDAG5oi.js +0 -277
  31. package/lib/cjs/clojure-6iDAG5oi.js.map +0 -1
  32. package/lib/cjs/clsx-dASsG01A.js +0 -6
  33. package/lib/cjs/clsx-dASsG01A.js.map +0 -1
  34. package/lib/cjs/cmake-L0RIBnfc.js +0 -84
  35. package/lib/cjs/cmake-L0RIBnfc.js.map +0 -1
  36. package/lib/cjs/cobol-oxkMh1GJ.js +0 -238
  37. package/lib/cjs/cobol-oxkMh1GJ.js.map +0 -1
  38. package/lib/cjs/coffeescript--eauIeRQ.js +0 -332
  39. package/lib/cjs/coffeescript--eauIeRQ.js.map +0 -1
  40. package/lib/cjs/commonlisp-pgSu-q6f.js +0 -111
  41. package/lib/cjs/commonlisp-pgSu-q6f.js.map +0 -1
  42. package/lib/cjs/crystal-2y3I5ibZ.js +0 -422
  43. package/lib/cjs/crystal-2y3I5ibZ.js.map +0 -1
  44. package/lib/cjs/css-WH69cXzo.js +0 -855
  45. package/lib/cjs/css-WH69cXzo.js.map +0 -1
  46. package/lib/cjs/cypher-da-dqVyQ.js +0 -125
  47. package/lib/cjs/cypher-da-dqVyQ.js.map +0 -1
  48. package/lib/cjs/d-58J7EOkP.js +0 -208
  49. package/lib/cjs/d-58J7EOkP.js.map +0 -1
  50. package/lib/cjs/diff-437Hfzqm.js +0 -33
  51. package/lib/cjs/diff-437Hfzqm.js.map +0 -1
  52. package/lib/cjs/dockerfile-7i0OoaQe.js +0 -202
  53. package/lib/cjs/dockerfile-7i0OoaQe.js.map +0 -1
  54. package/lib/cjs/dtd-AKekCPPB.js +0 -124
  55. package/lib/cjs/dtd-AKekCPPB.js.map +0 -1
  56. package/lib/cjs/dylan-DLEmvz1I.js +0 -340
  57. package/lib/cjs/dylan-DLEmvz1I.js.map +0 -1
  58. package/lib/cjs/ebnf-36cJWqxB.js +0 -154
  59. package/lib/cjs/ebnf-36cJWqxB.js.map +0 -1
  60. package/lib/cjs/ecl-UWr5vJKJ.js +0 -193
  61. package/lib/cjs/ecl-UWr5vJKJ.js.map +0 -1
  62. package/lib/cjs/eiffel-Su-C9LAY.js +0 -149
  63. package/lib/cjs/eiffel-Su-C9LAY.js.map +0 -1
  64. package/lib/cjs/elm-vNNfVJj7.js +0 -233
  65. package/lib/cjs/elm-vNNfVJj7.js.map +0 -1
  66. package/lib/cjs/erlang-NM9dgYaS.js +0 -584
  67. package/lib/cjs/erlang-NM9dgYaS.js.map +0 -1
  68. package/lib/cjs/factor-RWs-4aWg.js +0 -68
  69. package/lib/cjs/factor-RWs-4aWg.js.map +0 -1
  70. package/lib/cjs/fcl-acUhGCfs.js +0 -157
  71. package/lib/cjs/fcl-acUhGCfs.js.map +0 -1
  72. package/lib/cjs/forth-sDkE6z3A.js +0 -167
  73. package/lib/cjs/forth-sDkE6z3A.js.map +0 -1
  74. package/lib/cjs/fortran-gkb4yvdk.js +0 -175
  75. package/lib/cjs/fortran-gkb4yvdk.js.map +0 -1
  76. package/lib/cjs/gas-mNA0qvkv.js +0 -347
  77. package/lib/cjs/gas-mNA0qvkv.js.map +0 -1
  78. package/lib/cjs/gherkin-5uyKpXXh.js +0 -150
  79. package/lib/cjs/gherkin-5uyKpXXh.js.map +0 -1
  80. package/lib/cjs/go-5XitXoIZ.js +0 -167
  81. package/lib/cjs/go-5XitXoIZ.js.map +0 -1
  82. package/lib/cjs/groovy-mz3pWMKN.js +0 -233
  83. package/lib/cjs/groovy-mz3pWMKN.js.map +0 -1
  84. package/lib/cjs/haskell-9KaSS7kb.js +0 -242
  85. package/lib/cjs/haskell-9KaSS7kb.js.map +0 -1
  86. package/lib/cjs/haxe-L8h6Pvni.js +0 -494
  87. package/lib/cjs/haxe-L8h6Pvni.js.map +0 -1
  88. package/lib/cjs/http-BFQQnRR-.js +0 -92
  89. package/lib/cjs/http-BFQQnRR-.js.map +0 -1
  90. package/lib/cjs/idl-29T-AzAy.js +0 -277
  91. package/lib/cjs/idl-29T-AzAy.js.map +0 -1
  92. package/lib/cjs/index--2zEz40J.js +0 -93
  93. package/lib/cjs/index--2zEz40J.js.map +0 -1
  94. package/lib/cjs/index-5n9R-QCl.js +0 -390
  95. package/lib/cjs/index-5n9R-QCl.js.map +0 -1
  96. package/lib/cjs/index-HEdBw63r.js +0 -428
  97. package/lib/cjs/index-HEdBw63r.js.map +0 -1
  98. package/lib/cjs/index-Hlt9dRH5.js +0 -113
  99. package/lib/cjs/index-Hlt9dRH5.js.map +0 -1
  100. package/lib/cjs/index-KCW2CzRk.js +0 -2504
  101. package/lib/cjs/index-KCW2CzRk.js.map +0 -1
  102. package/lib/cjs/index-KSZhahYb.js +0 -146
  103. package/lib/cjs/index-KSZhahYb.js.map +0 -1
  104. package/lib/cjs/index-NNo_VSEA.js +0 -684
  105. package/lib/cjs/index-NNo_VSEA.js.map +0 -1
  106. package/lib/cjs/index-O1bDbloo.js +0 -383
  107. package/lib/cjs/index-O1bDbloo.js.map +0 -1
  108. package/lib/cjs/index-OPh9naof.js +0 -141
  109. package/lib/cjs/index-OPh9naof.js.map +0 -1
  110. package/lib/cjs/index-PAhfZtcH.js +0 -517
  111. package/lib/cjs/index-PAhfZtcH.js.map +0 -1
  112. package/lib/cjs/index-PeRHVz4A.js +0 -759
  113. package/lib/cjs/index-PeRHVz4A.js.map +0 -1
  114. package/lib/cjs/index-U7GWrg-w.js +0 -25251
  115. package/lib/cjs/index-U7GWrg-w.js.map +0 -1
  116. package/lib/cjs/index-UTb0Az5e.js +0 -1877
  117. package/lib/cjs/index-UTb0Az5e.js.map +0 -1
  118. package/lib/cjs/index-UnEAyH8X.js +0 -194
  119. package/lib/cjs/index-UnEAyH8X.js.map +0 -1
  120. package/lib/cjs/index-VCkq0ru1.js +0 -188
  121. package/lib/cjs/index-VCkq0ru1.js.map +0 -1
  122. package/lib/cjs/index-WQl7Du53.js +0 -248
  123. package/lib/cjs/index-WQl7Du53.js.map +0 -1
  124. package/lib/cjs/index-ahL5MvrQ.js +0 -1014
  125. package/lib/cjs/index-ahL5MvrQ.js.map +0 -1
  126. package/lib/cjs/index-bpgWLeRY.js +0 -104
  127. package/lib/cjs/index-bpgWLeRY.js.map +0 -1
  128. package/lib/cjs/index-fZupvR_f.js +0 -341
  129. package/lib/cjs/index-fZupvR_f.js.map +0 -1
  130. package/lib/cjs/index-gSM-jgti.js +0 -449
  131. package/lib/cjs/index-gSM-jgti.js.map +0 -1
  132. package/lib/cjs/index-jlPr_A_N.js +0 -66
  133. package/lib/cjs/index-jlPr_A_N.js.map +0 -1
  134. package/lib/cjs/index-tqAbVyds.js.map +0 -1
  135. package/lib/cjs/index-udZSknd8.js.map +0 -1
  136. package/lib/cjs/index-urB-WDqA.js +0 -1030
  137. package/lib/cjs/index-urB-WDqA.js.map +0 -1
  138. package/lib/cjs/index-xWgWtxUR.js +0 -347
  139. package/lib/cjs/index-xWgWtxUR.js.map +0 -1
  140. package/lib/cjs/javascript-5-BTydbD.js +0 -928
  141. package/lib/cjs/javascript-5-BTydbD.js.map +0 -1
  142. package/lib/cjs/jinja2-BWMz4gPk.js +0 -174
  143. package/lib/cjs/jinja2-BWMz4gPk.js.map +0 -1
  144. package/lib/cjs/julia-dtR9J3KZ.js +0 -372
  145. package/lib/cjs/julia-dtR9J3KZ.js.map +0 -1
  146. package/lib/cjs/livescript-YxT0INe3.js +0 -262
  147. package/lib/cjs/livescript-YxT0INe3.js.map +0 -1
  148. package/lib/cjs/lua-h7_AXjy9.js +0 -140
  149. package/lib/cjs/lua-h7_AXjy9.js.map +0 -1
  150. package/lib/cjs/mathematica-Zc57fOr3.js +0 -156
  151. package/lib/cjs/mathematica-Zc57fOr3.js.map +0 -1
  152. package/lib/cjs/mbox-ltKsKgJd.js +0 -117
  153. package/lib/cjs/mbox-ltKsKgJd.js.map +0 -1
  154. package/lib/cjs/mirc-xTLeWqmy.js +0 -179
  155. package/lib/cjs/mirc-xTLeWqmy.js.map +0 -1
  156. package/lib/cjs/mllike-xukl-Kjp.js +0 -351
  157. package/lib/cjs/mllike-xukl-Kjp.js.map +0 -1
  158. package/lib/cjs/modelica-LsXtAawk.js +0 -195
  159. package/lib/cjs/modelica-LsXtAawk.js.map +0 -1
  160. package/lib/cjs/mscgen-9HooYIVW.js +0 -154
  161. package/lib/cjs/mscgen-9HooYIVW.js.map +0 -1
  162. package/lib/cjs/mumps-VXqGp84f.js +0 -132
  163. package/lib/cjs/mumps-VXqGp84f.js.map +0 -1
  164. package/lib/cjs/nginx-UrubUbn1.js +0 -166
  165. package/lib/cjs/nginx-UrubUbn1.js.map +0 -1
  166. package/lib/cjs/nsis-c2AYwqyy.js +0 -83
  167. package/lib/cjs/nsis-c2AYwqyy.js.map +0 -1
  168. package/lib/cjs/ntriples-N1nwiheD.js +0 -144
  169. package/lib/cjs/ntriples-N1nwiheD.js.map +0 -1
  170. package/lib/cjs/octave-ElonStfZ.js +0 -115
  171. package/lib/cjs/octave-ElonStfZ.js.map +0 -1
  172. package/lib/cjs/oz-7VQTnCfu.js +0 -238
  173. package/lib/cjs/oz-7VQTnCfu.js.map +0 -1
  174. package/lib/cjs/pascal-yq2Cb88Q.js +0 -127
  175. package/lib/cjs/pascal-yq2Cb88Q.js.map +0 -1
  176. package/lib/cjs/perl-hJq4byS9.js +0 -822
  177. package/lib/cjs/perl-hJq4byS9.js.map +0 -1
  178. package/lib/cjs/pig-2syuOlAa.js +0 -152
  179. package/lib/cjs/pig-2syuOlAa.js.map +0 -1
  180. package/lib/cjs/powershell-NDwxuSDg.js +0 -384
  181. package/lib/cjs/powershell-NDwxuSDg.js.map +0 -1
  182. package/lib/cjs/properties-wacODxDJ.js +0 -65
  183. package/lib/cjs/properties-wacODxDJ.js.map +0 -1
  184. package/lib/cjs/protobuf-zVHZwskk.js +0 -57
  185. package/lib/cjs/protobuf-zVHZwskk.js.map +0 -1
  186. package/lib/cjs/puppet-koQikqO-.js +0 -208
  187. package/lib/cjs/puppet-koQikqO-.js.map +0 -1
  188. package/lib/cjs/python-P3UsKHbj.js +0 -394
  189. package/lib/cjs/python-P3UsKHbj.js.map +0 -1
  190. package/lib/cjs/q-Z_d2uXoA.js +0 -126
  191. package/lib/cjs/q-Z_d2uXoA.js.map +0 -1
  192. package/lib/cjs/r-J6Jl9z1i.js +0 -177
  193. package/lib/cjs/r-J6Jl9z1i.js.map +0 -1
  194. package/lib/cjs/rpm-6C0Omumu.js +0 -93
  195. package/lib/cjs/rpm-6C0Omumu.js.map +0 -1
  196. package/lib/cjs/ruby-POVyUmsb.js +0 -290
  197. package/lib/cjs/ruby-POVyUmsb.js.map +0 -1
  198. package/lib/cjs/sas-vDtpSmFr.js +0 -271
  199. package/lib/cjs/sas-vDtpSmFr.js.map +0 -1
  200. package/lib/cjs/scheme-5AA5BH7S.js +0 -266
  201. package/lib/cjs/scheme-5AA5BH7S.js.map +0 -1
  202. package/lib/cjs/shell-_ztDMiW6.js +0 -148
  203. package/lib/cjs/shell-_ztDMiW6.js.map +0 -1
  204. package/lib/cjs/sieve-R_vzlbvH.js +0 -181
  205. package/lib/cjs/sieve-R_vzlbvH.js.map +0 -1
  206. package/lib/cjs/simple-mode-ZwmNbV0h.js +0 -138
  207. package/lib/cjs/simple-mode-ZwmNbV0h.js.map +0 -1
  208. package/lib/cjs/smalltalk-dWLp5zN8.js +0 -156
  209. package/lib/cjs/smalltalk-dWLp5zN8.js.map +0 -1
  210. package/lib/cjs/solr-wSmvjKI8.js +0 -83
  211. package/lib/cjs/solr-wSmvjKI8.js.map +0 -1
  212. package/lib/cjs/sparql-GNU_0xKB.js +0 -173
  213. package/lib/cjs/sparql-GNU_0xKB.js.map +0 -1
  214. package/lib/cjs/spreadsheet-BiqYLk6M.js +0 -101
  215. package/lib/cjs/spreadsheet-BiqYLk6M.js.map +0 -1
  216. package/lib/cjs/sql-9GpHBPsC.js +0 -497
  217. package/lib/cjs/sql-9GpHBPsC.js.map +0 -1
  218. package/lib/cjs/stex-1V41CNLk.js +0 -250
  219. package/lib/cjs/stex-1V41CNLk.js.map +0 -1
  220. package/lib/cjs/stylus-H6hn9z_G.js +0 -753
  221. package/lib/cjs/stylus-H6hn9z_G.js.map +0 -1
  222. package/lib/cjs/swift-Xv5f8zgN.js +0 -205
  223. package/lib/cjs/swift-Xv5f8zgN.js.map +0 -1
  224. package/lib/cjs/tcl-LI-LOw_t.js +0 -128
  225. package/lib/cjs/tcl-LI-LOw_t.js.map +0 -1
  226. package/lib/cjs/textile-3NvRPUgg.js +0 -444
  227. package/lib/cjs/textile-3NvRPUgg.js.map +0 -1
  228. package/lib/cjs/tiddlywiki-PkMzy8_R.js +0 -281
  229. package/lib/cjs/tiddlywiki-PkMzy8_R.js.map +0 -1
  230. package/lib/cjs/tiki-Zk_GnEC8.js +0 -292
  231. package/lib/cjs/tiki-Zk_GnEC8.js.map +0 -1
  232. package/lib/cjs/toml-36gJ0YCq.js +0 -78
  233. package/lib/cjs/toml-36gJ0YCq.js.map +0 -1
  234. package/lib/cjs/troff-RLZ_o61o.js +0 -67
  235. package/lib/cjs/troff-RLZ_o61o.js.map +0 -1
  236. package/lib/cjs/ttcn-cfg-twaoJYvf.js +0 -204
  237. package/lib/cjs/ttcn-cfg-twaoJYvf.js.map +0 -1
  238. package/lib/cjs/ttcn-kGwvGb2v.js +0 -260
  239. package/lib/cjs/ttcn-kGwvGb2v.js.map +0 -1
  240. package/lib/cjs/turtle-nnevat7b.js +0 -144
  241. package/lib/cjs/turtle-nnevat7b.js.map +0 -1
  242. package/lib/cjs/vb-fO_I9s3s.js +0 -252
  243. package/lib/cjs/vb-fO_I9s3s.js.map +0 -1
  244. package/lib/cjs/vbscript-HXnn40y4.js +0 -324
  245. package/lib/cjs/vbscript-HXnn40y4.js.map +0 -1
  246. package/lib/cjs/velocity-Wn-ZfFzr.js +0 -189
  247. package/lib/cjs/velocity-Wn-ZfFzr.js.map +0 -1
  248. package/lib/cjs/verilog-y1ev34z6.js +0 -569
  249. package/lib/cjs/verilog-y1ev34z6.js.map +0 -1
  250. package/lib/cjs/vhdl-LF0oeXxc.js +0 -177
  251. package/lib/cjs/vhdl-LF0oeXxc.js.map +0 -1
  252. package/lib/cjs/webidl-6kI5KbeC.js +0 -182
  253. package/lib/cjs/webidl-6kI5KbeC.js.map +0 -1
  254. package/lib/cjs/xquery-BavrmwsO.js +0 -428
  255. package/lib/cjs/xquery-BavrmwsO.js.map +0 -1
  256. package/lib/cjs/yacas-1g_AbTrl.js +0 -185
  257. package/lib/cjs/yacas-1g_AbTrl.js.map +0 -1
  258. package/lib/cjs/z80-QYzKAAp7.js +0 -106
  259. package/lib/cjs/z80-QYzKAAp7.js.map +0 -1
  260. package/lib/esm/apl-eHQxyJFn.js +0 -143
  261. package/lib/esm/apl-eHQxyJFn.js.map +0 -1
  262. package/lib/esm/asciiarmor-Z-IGYCI4.js +0 -57
  263. package/lib/esm/asciiarmor-Z-IGYCI4.js.map +0 -1
  264. package/lib/esm/asn1-gF7x-q1y.js +0 -193
  265. package/lib/esm/asn1-gF7x-q1y.js.map +0 -1
  266. package/lib/esm/asterisk-swk20ftp.js +0 -188
  267. package/lib/esm/asterisk-swk20ftp.js.map +0 -1
  268. package/lib/esm/brainfuck-IFQdiQoR.js +0 -71
  269. package/lib/esm/brainfuck-IFQdiQoR.js.map +0 -1
  270. package/lib/esm/clike-q3hUF2Cx.js +0 -1019
  271. package/lib/esm/clike-q3hUF2Cx.js.map +0 -1
  272. package/lib/esm/clojure-I2Krbr2M.js +0 -275
  273. package/lib/esm/clojure-I2Krbr2M.js.map +0 -1
  274. package/lib/esm/clsx-RxCLxYpD.js +0 -4
  275. package/lib/esm/clsx-RxCLxYpD.js.map +0 -1
  276. package/lib/esm/cmake-ewwXLeuZ.js +0 -82
  277. package/lib/esm/cmake-ewwXLeuZ.js.map +0 -1
  278. package/lib/esm/cobol-fpN1nAnR.js +0 -236
  279. package/lib/esm/cobol-fpN1nAnR.js.map +0 -1
  280. package/lib/esm/coffeescript--eTFR-bH.js +0 -330
  281. package/lib/esm/coffeescript--eTFR-bH.js.map +0 -1
  282. package/lib/esm/commonlisp-XLSwVdLc.js +0 -109
  283. package/lib/esm/commonlisp-XLSwVdLc.js.map +0 -1
  284. package/lib/esm/crystal-_r3Aa1_a.js +0 -420
  285. package/lib/esm/crystal-_r3Aa1_a.js.map +0 -1
  286. package/lib/esm/css-hgwYGMKZ.js +0 -848
  287. package/lib/esm/css-hgwYGMKZ.js.map +0 -1
  288. package/lib/esm/cypher-bbJyAa-4.js +0 -123
  289. package/lib/esm/cypher-bbJyAa-4.js.map +0 -1
  290. package/lib/esm/d-5MyulviS.js +0 -206
  291. package/lib/esm/d-5MyulviS.js.map +0 -1
  292. package/lib/esm/diff-neOaT_vk.js +0 -31
  293. package/lib/esm/diff-neOaT_vk.js.map +0 -1
  294. package/lib/esm/dockerfile-lzx42-zz.js +0 -200
  295. package/lib/esm/dockerfile-lzx42-zz.js.map +0 -1
  296. package/lib/esm/dtd-FmzPLZcQ.js +0 -122
  297. package/lib/esm/dtd-FmzPLZcQ.js.map +0 -1
  298. package/lib/esm/dylan-1HtRK4GO.js +0 -338
  299. package/lib/esm/dylan-1HtRK4GO.js.map +0 -1
  300. package/lib/esm/ebnf-Nz-pnLHy.js +0 -152
  301. package/lib/esm/ebnf-Nz-pnLHy.js.map +0 -1
  302. package/lib/esm/ecl-lQsZhQz0.js +0 -191
  303. package/lib/esm/ecl-lQsZhQz0.js.map +0 -1
  304. package/lib/esm/eiffel-R_HiEkhx.js +0 -147
  305. package/lib/esm/eiffel-R_HiEkhx.js.map +0 -1
  306. package/lib/esm/elm-KYv4VTDg.js +0 -231
  307. package/lib/esm/elm-KYv4VTDg.js.map +0 -1
  308. package/lib/esm/erlang-7YaHCBIe.js +0 -582
  309. package/lib/esm/erlang-7YaHCBIe.js.map +0 -1
  310. package/lib/esm/factor-opBU9aTK.js +0 -66
  311. package/lib/esm/factor-opBU9aTK.js.map +0 -1
  312. package/lib/esm/fcl-jm31FmFz.js +0 -155
  313. package/lib/esm/fcl-jm31FmFz.js.map +0 -1
  314. package/lib/esm/forth-5NKbjnWh.js +0 -165
  315. package/lib/esm/forth-5NKbjnWh.js.map +0 -1
  316. package/lib/esm/fortran-dXm_-cb9.js +0 -173
  317. package/lib/esm/fortran-dXm_-cb9.js.map +0 -1
  318. package/lib/esm/gas-nsYVnsy-.js +0 -344
  319. package/lib/esm/gas-nsYVnsy-.js.map +0 -1
  320. package/lib/esm/gherkin-fzKpjm3M.js +0 -148
  321. package/lib/esm/gherkin-fzKpjm3M.js.map +0 -1
  322. package/lib/esm/go-Pn1qh7yl.js +0 -165
  323. package/lib/esm/go-Pn1qh7yl.js.map +0 -1
  324. package/lib/esm/groovy-DZY-8keZ.js +0 -231
  325. package/lib/esm/groovy-DZY-8keZ.js.map +0 -1
  326. package/lib/esm/haskell-JGh2upDd.js +0 -240
  327. package/lib/esm/haskell-JGh2upDd.js.map +0 -1
  328. package/lib/esm/haxe-1hvVK-Fy.js +0 -491
  329. package/lib/esm/haxe-1hvVK-Fy.js.map +0 -1
  330. package/lib/esm/http-mY1M77wn.js +0 -90
  331. package/lib/esm/http-mY1M77wn.js.map +0 -1
  332. package/lib/esm/idl-dy_653wH.js +0 -275
  333. package/lib/esm/idl-dy_653wH.js.map +0 -1
  334. package/lib/esm/index-1NetiFdJ.js +0 -90
  335. package/lib/esm/index-1NetiFdJ.js.map +0 -1
  336. package/lib/esm/index-2I_xbjAZ.js +0 -1012
  337. package/lib/esm/index-2I_xbjAZ.js.map +0 -1
  338. package/lib/esm/index-2huXYfuJ.js +0 -138
  339. package/lib/esm/index-2huXYfuJ.js.map +0 -1
  340. package/lib/esm/index-4x6_TVZv.js +0 -100
  341. package/lib/esm/index-4x6_TVZv.js.map +0 -1
  342. package/lib/esm/index-A-dNwMMf.js +0 -1872
  343. package/lib/esm/index-A-dNwMMf.js.map +0 -1
  344. package/lib/esm/index-AV99ipmP.js +0 -446
  345. package/lib/esm/index-AV99ipmP.js.map +0 -1
  346. package/lib/esm/index-PC2bahtq.js +0 -110
  347. package/lib/esm/index-PC2bahtq.js.map +0 -1
  348. package/lib/esm/index-QBYz82jZ.js +0 -378
  349. package/lib/esm/index-QBYz82jZ.js.map +0 -1
  350. package/lib/esm/index-W1pAMr_8.js +0 -142
  351. package/lib/esm/index-W1pAMr_8.js.map +0 -1
  352. package/lib/esm/index-Xzdc2jbA.js +0 -25207
  353. package/lib/esm/index-Xzdc2jbA.js.map +0 -1
  354. package/lib/esm/index-ZAtZWqJQ.js +0 -191
  355. package/lib/esm/index-ZAtZWqJQ.js.map +0 -1
  356. package/lib/esm/index-bnSKBrbD.js +0 -386
  357. package/lib/esm/index-bnSKBrbD.js.map +0 -1
  358. package/lib/esm/index-ftnOhuRS.js +0 -244
  359. package/lib/esm/index-ftnOhuRS.js.map +0 -1
  360. package/lib/esm/index-iQPB0Rdl.js +0 -343
  361. package/lib/esm/index-iQPB0Rdl.js.map +0 -1
  362. package/lib/esm/index-kPj3-TKp.js +0 -63
  363. package/lib/esm/index-kPj3-TKp.js.map +0 -1
  364. package/lib/esm/index-kgOR7SZ6.js +0 -336
  365. package/lib/esm/index-kgOR7SZ6.js.map +0 -1
  366. package/lib/esm/index-m49Bj3q7.js +0 -185
  367. package/lib/esm/index-m49Bj3q7.js.map +0 -1
  368. package/lib/esm/index-sWVjGw-3.js +0 -2497
  369. package/lib/esm/index-sWVjGw-3.js.map +0 -1
  370. package/lib/esm/index-twh8lL5o.js +0 -671
  371. package/lib/esm/index-twh8lL5o.js.map +0 -1
  372. package/lib/esm/index-v02MCz4_.js +0 -744
  373. package/lib/esm/index-v02MCz4_.js.map +0 -1
  374. package/lib/esm/index-wEXT8mbN.js +0 -512
  375. package/lib/esm/index-wEXT8mbN.js.map +0 -1
  376. package/lib/esm/index-wFIac5Kw.js +0 -1023
  377. package/lib/esm/index-wFIac5Kw.js.map +0 -1
  378. package/lib/esm/index-wg94ewRo.js +0 -425
  379. package/lib/esm/index-wg94ewRo.js.map +0 -1
  380. package/lib/esm/javascript-TMTz-YQH.js +0 -923
  381. package/lib/esm/javascript-TMTz-YQH.js.map +0 -1
  382. package/lib/esm/jinja2-sRIdliZK.js +0 -172
  383. package/lib/esm/jinja2-sRIdliZK.js.map +0 -1
  384. package/lib/esm/julia-fK0wmpGL.js +0 -370
  385. package/lib/esm/julia-fK0wmpGL.js.map +0 -1
  386. package/lib/esm/livescript-FRbAot3D.js +0 -260
  387. package/lib/esm/livescript-FRbAot3D.js.map +0 -1
  388. package/lib/esm/lua-t4FHEjvK.js +0 -138
  389. package/lib/esm/lua-t4FHEjvK.js.map +0 -1
  390. package/lib/esm/mathematica-sn_KGlYj.js +0 -154
  391. package/lib/esm/mathematica-sn_KGlYj.js.map +0 -1
  392. package/lib/esm/mbox-KvVC319E.js +0 -115
  393. package/lib/esm/mbox-KvVC319E.js.map +0 -1
  394. package/lib/esm/mirc-PzJ0zKSk.js +0 -177
  395. package/lib/esm/mirc-PzJ0zKSk.js.map +0 -1
  396. package/lib/esm/mllike-ZK411xkN.js +0 -347
  397. package/lib/esm/mllike-ZK411xkN.js.map +0 -1
  398. package/lib/esm/modelica-ZaHlRCbp.js +0 -193
  399. package/lib/esm/modelica-ZaHlRCbp.js.map +0 -1
  400. package/lib/esm/mscgen-Kkq4o4Zm.js +0 -150
  401. package/lib/esm/mscgen-Kkq4o4Zm.js.map +0 -1
  402. package/lib/esm/mumps-M8a87-rl.js +0 -130
  403. package/lib/esm/mumps-M8a87-rl.js.map +0 -1
  404. package/lib/esm/nginx-2LJIX23E.js +0 -164
  405. package/lib/esm/nginx-2LJIX23E.js.map +0 -1
  406. package/lib/esm/nsis-zvfFgMLi.js +0 -81
  407. package/lib/esm/nsis-zvfFgMLi.js.map +0 -1
  408. package/lib/esm/ntriples-tVkHy5bk.js +0 -142
  409. package/lib/esm/ntriples-tVkHy5bk.js.map +0 -1
  410. package/lib/esm/octave-mE4T5MF5.js +0 -113
  411. package/lib/esm/octave-mE4T5MF5.js.map +0 -1
  412. package/lib/esm/oz-q-LCsuVg.js +0 -236
  413. package/lib/esm/oz-q-LCsuVg.js.map +0 -1
  414. package/lib/esm/pascal-0IgUAn4C.js +0 -125
  415. package/lib/esm/pascal-0IgUAn4C.js.map +0 -1
  416. package/lib/esm/perl-AqxdYGac.js +0 -820
  417. package/lib/esm/perl-AqxdYGac.js.map +0 -1
  418. package/lib/esm/pig-ESM-IjQj.js +0 -150
  419. package/lib/esm/pig-ESM-IjQj.js.map +0 -1
  420. package/lib/esm/powershell-CLFP0L55.js +0 -382
  421. package/lib/esm/powershell-CLFP0L55.js.map +0 -1
  422. package/lib/esm/properties-oWHNzvb9.js +0 -63
  423. package/lib/esm/properties-oWHNzvb9.js.map +0 -1
  424. package/lib/esm/protobuf-c7eMmdcc.js +0 -55
  425. package/lib/esm/protobuf-c7eMmdcc.js.map +0 -1
  426. package/lib/esm/puppet-FjzvdRJr.js +0 -206
  427. package/lib/esm/puppet-FjzvdRJr.js.map +0 -1
  428. package/lib/esm/python-3Pv0tnvt.js +0 -390
  429. package/lib/esm/python-3Pv0tnvt.js.map +0 -1
  430. package/lib/esm/q-IImW8da6.js +0 -124
  431. package/lib/esm/q-IImW8da6.js.map +0 -1
  432. package/lib/esm/r-CnEkTvR0.js +0 -175
  433. package/lib/esm/r-CnEkTvR0.js.map +0 -1
  434. package/lib/esm/rpm-Q55-fEHj.js +0 -90
  435. package/lib/esm/rpm-Q55-fEHj.js.map +0 -1
  436. package/lib/esm/ruby-zhaGB3Kh.js +0 -288
  437. package/lib/esm/ruby-zhaGB3Kh.js.map +0 -1
  438. package/lib/esm/sas-Ur9jZIOV.js +0 -269
  439. package/lib/esm/sas-Ur9jZIOV.js.map +0 -1
  440. package/lib/esm/scheme-daT5-Rya.js +0 -264
  441. package/lib/esm/scheme-daT5-Rya.js.map +0 -1
  442. package/lib/esm/shell-cwFL0AYP.js +0 -146
  443. package/lib/esm/shell-cwFL0AYP.js.map +0 -1
  444. package/lib/esm/sieve-MlNXFFUq.js +0 -179
  445. package/lib/esm/sieve-MlNXFFUq.js.map +0 -1
  446. package/lib/esm/simple-mode-m1rsX7Gw.js +0 -136
  447. package/lib/esm/simple-mode-m1rsX7Gw.js.map +0 -1
  448. package/lib/esm/smalltalk-xrQICp9e.js +0 -154
  449. package/lib/esm/smalltalk-xrQICp9e.js.map +0 -1
  450. package/lib/esm/solr-PU3oPgQz.js +0 -81
  451. package/lib/esm/solr-PU3oPgQz.js.map +0 -1
  452. package/lib/esm/sparql--u8NRBii.js +0 -171
  453. package/lib/esm/sparql--u8NRBii.js.map +0 -1
  454. package/lib/esm/spreadsheet-QCp0LifX.js +0 -99
  455. package/lib/esm/spreadsheet-QCp0LifX.js.map +0 -1
  456. package/lib/esm/sql-dsGfl64h.js +0 -482
  457. package/lib/esm/sql-dsGfl64h.js.map +0 -1
  458. package/lib/esm/stex-WcLBzvkD.js +0 -247
  459. package/lib/esm/stex-WcLBzvkD.js.map +0 -1
  460. package/lib/esm/stylus--A5XAqOX.js +0 -751
  461. package/lib/esm/stylus--A5XAqOX.js.map +0 -1
  462. package/lib/esm/swift-qAm73i7G.js +0 -203
  463. package/lib/esm/swift-qAm73i7G.js.map +0 -1
  464. package/lib/esm/tcl-Kdc7qxc-.js +0 -126
  465. package/lib/esm/tcl-Kdc7qxc-.js.map +0 -1
  466. package/lib/esm/textile--sz8UrIz.js +0 -442
  467. package/lib/esm/textile--sz8UrIz.js.map +0 -1
  468. package/lib/esm/tiddlywiki-xNXTeBlQ.js +0 -279
  469. package/lib/esm/tiddlywiki-xNXTeBlQ.js.map +0 -1
  470. package/lib/esm/tiki-LCXjrNH3.js +0 -290
  471. package/lib/esm/tiki-LCXjrNH3.js.map +0 -1
  472. package/lib/esm/toml-Ac4tlBMn.js +0 -76
  473. package/lib/esm/toml-Ac4tlBMn.js.map +0 -1
  474. package/lib/esm/troff-LLW1x1Yz.js +0 -65
  475. package/lib/esm/troff-LLW1x1Yz.js.map +0 -1
  476. package/lib/esm/ttcn-ZYZ9FS3u.js +0 -258
  477. package/lib/esm/ttcn-ZYZ9FS3u.js.map +0 -1
  478. package/lib/esm/ttcn-cfg-qsvf3MfB.js +0 -202
  479. package/lib/esm/ttcn-cfg-qsvf3MfB.js.map +0 -1
  480. package/lib/esm/turtle-wq3TqOth.js +0 -142
  481. package/lib/esm/turtle-wq3TqOth.js.map +0 -1
  482. package/lib/esm/vb-86M_JuNP.js +0 -250
  483. package/lib/esm/vb-86M_JuNP.js.map +0 -1
  484. package/lib/esm/vbscript-GueAeVug.js +0 -321
  485. package/lib/esm/vbscript-GueAeVug.js.map +0 -1
  486. package/lib/esm/velocity-7PW9GXO2.js +0 -187
  487. package/lib/esm/velocity-7PW9GXO2.js.map +0 -1
  488. package/lib/esm/verilog-PXtXH14C.js +0 -566
  489. package/lib/esm/verilog-PXtXH14C.js.map +0 -1
  490. package/lib/esm/vhdl-I8eyK83X.js +0 -175
  491. package/lib/esm/vhdl-I8eyK83X.js.map +0 -1
  492. package/lib/esm/webidl-1f8ATJ66.js +0 -180
  493. package/lib/esm/webidl-1f8ATJ66.js.map +0 -1
  494. package/lib/esm/xquery-IYp28Wx6.js +0 -426
  495. package/lib/esm/xquery-IYp28Wx6.js.map +0 -1
  496. package/lib/esm/yacas-wkENB05f.js +0 -183
  497. package/lib/esm/yacas-wkENB05f.js.map +0 -1
  498. package/lib/esm/z80-GaXiLdiV.js +0 -103
  499. package/lib/esm/z80-GaXiLdiV.js.map +0 -1
@@ -1,928 +0,0 @@
1
- 'use strict';
2
-
3
- function mkJavaScript(parserConfig) {
4
- var statementIndent = parserConfig.statementIndent;
5
- var jsonldMode = parserConfig.jsonld;
6
- var jsonMode = parserConfig.json || jsonldMode;
7
- var isTS = parserConfig.typescript;
8
- var wordRE = parserConfig.wordCharacters || /[\w$\xa1-\uffff]/;
9
-
10
- // Tokenizer
11
-
12
- var keywords = function(){
13
- function kw(type) {return {type: type, style: "keyword"};}
14
- var A = kw("keyword a"), B = kw("keyword b"), C = kw("keyword c"), D = kw("keyword d");
15
- var operator = kw("operator"), atom = {type: "atom", style: "atom"};
16
-
17
- return {
18
- "if": kw("if"), "while": A, "with": A, "else": B, "do": B, "try": B, "finally": B,
19
- "return": D, "break": D, "continue": D, "new": kw("new"), "delete": C, "void": C, "throw": C,
20
- "debugger": kw("debugger"), "var": kw("var"), "const": kw("var"), "let": kw("var"),
21
- "function": kw("function"), "catch": kw("catch"),
22
- "for": kw("for"), "switch": kw("switch"), "case": kw("case"), "default": kw("default"),
23
- "in": operator, "typeof": operator, "instanceof": operator,
24
- "true": atom, "false": atom, "null": atom, "undefined": atom, "NaN": atom, "Infinity": atom,
25
- "this": kw("this"), "class": kw("class"), "super": kw("atom"),
26
- "yield": C, "export": kw("export"), "import": kw("import"), "extends": C,
27
- "await": C
28
- };
29
- }();
30
-
31
- var isOperatorChar = /[+\-*&%=<>!?|~^@]/;
32
- var isJsonldKeyword = /^@(context|id|value|language|type|container|list|set|reverse|index|base|vocab|graph)"/;
33
-
34
- function readRegexp(stream) {
35
- var escaped = false, next, inSet = false;
36
- while ((next = stream.next()) != null) {
37
- if (!escaped) {
38
- if (next == "/" && !inSet) return;
39
- if (next == "[") inSet = true;
40
- else if (inSet && next == "]") inSet = false;
41
- }
42
- escaped = !escaped && next == "\\";
43
- }
44
- }
45
-
46
- // Used as scratch variables to communicate multiple values without
47
- // consing up tons of objects.
48
- var type, content;
49
- function ret(tp, style, cont) {
50
- type = tp; content = cont;
51
- return style;
52
- }
53
- function tokenBase(stream, state) {
54
- var ch = stream.next();
55
- if (ch == '"' || ch == "'") {
56
- state.tokenize = tokenString(ch);
57
- return state.tokenize(stream, state);
58
- } else if (ch == "." && stream.match(/^\d[\d_]*(?:[eE][+\-]?[\d_]+)?/)) {
59
- return ret("number", "number");
60
- } else if (ch == "." && stream.match("..")) {
61
- return ret("spread", "meta");
62
- } else if (/[\[\]{}\(\),;\:\.]/.test(ch)) {
63
- return ret(ch);
64
- } else if (ch == "=" && stream.eat(">")) {
65
- return ret("=>", "operator");
66
- } else if (ch == "0" && stream.match(/^(?:x[\dA-Fa-f_]+|o[0-7_]+|b[01_]+)n?/)) {
67
- return ret("number", "number");
68
- } else if (/\d/.test(ch)) {
69
- stream.match(/^[\d_]*(?:n|(?:\.[\d_]*)?(?:[eE][+\-]?[\d_]+)?)?/);
70
- return ret("number", "number");
71
- } else if (ch == "/") {
72
- if (stream.eat("*")) {
73
- state.tokenize = tokenComment;
74
- return tokenComment(stream, state);
75
- } else if (stream.eat("/")) {
76
- stream.skipToEnd();
77
- return ret("comment", "comment");
78
- } else if (expressionAllowed(stream, state, 1)) {
79
- readRegexp(stream);
80
- stream.match(/^\b(([gimyus])(?![gimyus]*\2))+\b/);
81
- return ret("regexp", "string.special");
82
- } else {
83
- stream.eat("=");
84
- return ret("operator", "operator", stream.current());
85
- }
86
- } else if (ch == "`") {
87
- state.tokenize = tokenQuasi;
88
- return tokenQuasi(stream, state);
89
- } else if (ch == "#" && stream.peek() == "!") {
90
- stream.skipToEnd();
91
- return ret("meta", "meta");
92
- } else if (ch == "#" && stream.eatWhile(wordRE)) {
93
- return ret("variable", "property")
94
- } else if (ch == "<" && stream.match("!--") ||
95
- (ch == "-" && stream.match("->") && !/\S/.test(stream.string.slice(0, stream.start)))) {
96
- stream.skipToEnd();
97
- return ret("comment", "comment")
98
- } else if (isOperatorChar.test(ch)) {
99
- if (ch != ">" || !state.lexical || state.lexical.type != ">") {
100
- if (stream.eat("=")) {
101
- if (ch == "!" || ch == "=") stream.eat("=");
102
- } else if (/[<>*+\-|&?]/.test(ch)) {
103
- stream.eat(ch);
104
- if (ch == ">") stream.eat(ch);
105
- }
106
- }
107
- if (ch == "?" && stream.eat(".")) return ret(".")
108
- return ret("operator", "operator", stream.current());
109
- } else if (wordRE.test(ch)) {
110
- stream.eatWhile(wordRE);
111
- var word = stream.current();
112
- if (state.lastType != ".") {
113
- if (keywords.propertyIsEnumerable(word)) {
114
- var kw = keywords[word];
115
- return ret(kw.type, kw.style, word)
116
- }
117
- if (word == "async" && stream.match(/^(\s|\/\*([^*]|\*(?!\/))*?\*\/)*[\[\(\w]/, false))
118
- return ret("async", "keyword", word)
119
- }
120
- return ret("variable", "variable", word)
121
- }
122
- }
123
-
124
- function tokenString(quote) {
125
- return function(stream, state) {
126
- var escaped = false, next;
127
- if (jsonldMode && stream.peek() == "@" && stream.match(isJsonldKeyword)){
128
- state.tokenize = tokenBase;
129
- return ret("jsonld-keyword", "meta");
130
- }
131
- while ((next = stream.next()) != null) {
132
- if (next == quote && !escaped) break;
133
- escaped = !escaped && next == "\\";
134
- }
135
- if (!escaped) state.tokenize = tokenBase;
136
- return ret("string", "string");
137
- };
138
- }
139
-
140
- function tokenComment(stream, state) {
141
- var maybeEnd = false, ch;
142
- while (ch = stream.next()) {
143
- if (ch == "/" && maybeEnd) {
144
- state.tokenize = tokenBase;
145
- break;
146
- }
147
- maybeEnd = (ch == "*");
148
- }
149
- return ret("comment", "comment");
150
- }
151
-
152
- function tokenQuasi(stream, state) {
153
- var escaped = false, next;
154
- while ((next = stream.next()) != null) {
155
- if (!escaped && (next == "`" || next == "$" && stream.eat("{"))) {
156
- state.tokenize = tokenBase;
157
- break;
158
- }
159
- escaped = !escaped && next == "\\";
160
- }
161
- return ret("quasi", "string.special", stream.current());
162
- }
163
-
164
- var brackets = "([{}])";
165
- // This is a crude lookahead trick to try and notice that we're
166
- // parsing the argument patterns for a fat-arrow function before we
167
- // actually hit the arrow token. It only works if the arrow is on
168
- // the same line as the arguments and there's no strange noise
169
- // (comments) in between. Fallback is to only notice when we hit the
170
- // arrow, and not declare the arguments as locals for the arrow
171
- // body.
172
- function findFatArrow(stream, state) {
173
- if (state.fatArrowAt) state.fatArrowAt = null;
174
- var arrow = stream.string.indexOf("=>", stream.start);
175
- if (arrow < 0) return;
176
-
177
- if (isTS) { // Try to skip TypeScript return type declarations after the arguments
178
- var m = /:\s*(?:\w+(?:<[^>]*>|\[\])?|\{[^}]*\})\s*$/.exec(stream.string.slice(stream.start, arrow));
179
- if (m) arrow = m.index;
180
- }
181
-
182
- var depth = 0, sawSomething = false;
183
- for (var pos = arrow - 1; pos >= 0; --pos) {
184
- var ch = stream.string.charAt(pos);
185
- var bracket = brackets.indexOf(ch);
186
- if (bracket >= 0 && bracket < 3) {
187
- if (!depth) { ++pos; break; }
188
- if (--depth == 0) { if (ch == "(") sawSomething = true; break; }
189
- } else if (bracket >= 3 && bracket < 6) {
190
- ++depth;
191
- } else if (wordRE.test(ch)) {
192
- sawSomething = true;
193
- } else if (/["'\/`]/.test(ch)) {
194
- for (;; --pos) {
195
- if (pos == 0) return
196
- var next = stream.string.charAt(pos - 1);
197
- if (next == ch && stream.string.charAt(pos - 2) != "\\") { pos--; break }
198
- }
199
- } else if (sawSomething && !depth) {
200
- ++pos;
201
- break;
202
- }
203
- }
204
- if (sawSomething && !depth) state.fatArrowAt = pos;
205
- }
206
-
207
- // Parser
208
-
209
- var atomicTypes = {"atom": true, "number": true, "variable": true, "string": true,
210
- "regexp": true, "this": true, "import": true, "jsonld-keyword": true};
211
-
212
- function JSLexical(indented, column, type, align, prev, info) {
213
- this.indented = indented;
214
- this.column = column;
215
- this.type = type;
216
- this.prev = prev;
217
- this.info = info;
218
- if (align != null) this.align = align;
219
- }
220
-
221
- function inScope(state, varname) {
222
- for (var v = state.localVars; v; v = v.next)
223
- if (v.name == varname) return true;
224
- for (var cx = state.context; cx; cx = cx.prev) {
225
- for (var v = cx.vars; v; v = v.next)
226
- if (v.name == varname) return true;
227
- }
228
- }
229
-
230
- function parseJS(state, style, type, content, stream) {
231
- var cc = state.cc;
232
- // Communicate our context to the combinators.
233
- // (Less wasteful than consing up a hundred closures on every call.)
234
- cx.state = state; cx.stream = stream; cx.marked = null; cx.cc = cc; cx.style = style;
235
-
236
- if (!state.lexical.hasOwnProperty("align"))
237
- state.lexical.align = true;
238
-
239
- while(true) {
240
- var combinator = cc.length ? cc.pop() : jsonMode ? expression : statement;
241
- if (combinator(type, content)) {
242
- while(cc.length && cc[cc.length - 1].lex)
243
- cc.pop()();
244
- if (cx.marked) return cx.marked;
245
- if (type == "variable" && inScope(state, content)) return "variableName.local";
246
- return style;
247
- }
248
- }
249
- }
250
-
251
- // Combinator utils
252
-
253
- var cx = {state: null, column: null, marked: null, cc: null};
254
- function pass() {
255
- for (var i = arguments.length - 1; i >= 0; i--) cx.cc.push(arguments[i]);
256
- }
257
- function cont() {
258
- pass.apply(null, arguments);
259
- return true;
260
- }
261
- function inList(name, list) {
262
- for (var v = list; v; v = v.next) if (v.name == name) return true
263
- return false;
264
- }
265
- function register(varname) {
266
- var state = cx.state;
267
- cx.marked = "def";
268
- if (state.context) {
269
- if (state.lexical.info == "var" && state.context && state.context.block) {
270
- // FIXME function decls are also not block scoped
271
- var newContext = registerVarScoped(varname, state.context);
272
- if (newContext != null) {
273
- state.context = newContext;
274
- return
275
- }
276
- } else if (!inList(varname, state.localVars)) {
277
- state.localVars = new Var(varname, state.localVars);
278
- return
279
- }
280
- }
281
- // Fall through means this is global
282
- if (parserConfig.globalVars && !inList(varname, state.globalVars))
283
- state.globalVars = new Var(varname, state.globalVars);
284
- }
285
- function registerVarScoped(varname, context) {
286
- if (!context) {
287
- return null
288
- } else if (context.block) {
289
- var inner = registerVarScoped(varname, context.prev);
290
- if (!inner) return null
291
- if (inner == context.prev) return context
292
- return new Context(inner, context.vars, true)
293
- } else if (inList(varname, context.vars)) {
294
- return context
295
- } else {
296
- return new Context(context.prev, new Var(varname, context.vars), false)
297
- }
298
- }
299
-
300
- function isModifier(name) {
301
- return name == "public" || name == "private" || name == "protected" || name == "abstract" || name == "readonly"
302
- }
303
-
304
- // Combinators
305
-
306
- function Context(prev, vars, block) { this.prev = prev; this.vars = vars; this.block = block; }
307
- function Var(name, next) { this.name = name; this.next = next; }
308
-
309
- var defaultVars = new Var("this", new Var("arguments", null));
310
- function pushcontext() {
311
- cx.state.context = new Context(cx.state.context, cx.state.localVars, false);
312
- cx.state.localVars = defaultVars;
313
- }
314
- function pushblockcontext() {
315
- cx.state.context = new Context(cx.state.context, cx.state.localVars, true);
316
- cx.state.localVars = null;
317
- }
318
- pushcontext.lex = pushblockcontext.lex = true;
319
- function popcontext() {
320
- cx.state.localVars = cx.state.context.vars;
321
- cx.state.context = cx.state.context.prev;
322
- }
323
- popcontext.lex = true;
324
- function pushlex(type, info) {
325
- var result = function() {
326
- var state = cx.state, indent = state.indented;
327
- if (state.lexical.type == "stat") indent = state.lexical.indented;
328
- else for (var outer = state.lexical; outer && outer.type == ")" && outer.align; outer = outer.prev)
329
- indent = outer.indented;
330
- state.lexical = new JSLexical(indent, cx.stream.column(), type, null, state.lexical, info);
331
- };
332
- result.lex = true;
333
- return result;
334
- }
335
- function poplex() {
336
- var state = cx.state;
337
- if (state.lexical.prev) {
338
- if (state.lexical.type == ")")
339
- state.indented = state.lexical.indented;
340
- state.lexical = state.lexical.prev;
341
- }
342
- }
343
- poplex.lex = true;
344
-
345
- function expect(wanted) {
346
- function exp(type) {
347
- if (type == wanted) return cont();
348
- else if (wanted == ";" || type == "}" || type == ")" || type == "]") return pass();
349
- else return cont(exp);
350
- } return exp;
351
- }
352
-
353
- function statement(type, value) {
354
- if (type == "var") return cont(pushlex("vardef", value), vardef, expect(";"), poplex);
355
- if (type == "keyword a") return cont(pushlex("form"), parenExpr, statement, poplex);
356
- if (type == "keyword b") return cont(pushlex("form"), statement, poplex);
357
- if (type == "keyword d") return cx.stream.match(/^\s*$/, false) ? cont() : cont(pushlex("stat"), maybeexpression, expect(";"), poplex);
358
- if (type == "debugger") return cont(expect(";"));
359
- if (type == "{") return cont(pushlex("}"), pushblockcontext, block, poplex, popcontext);
360
- if (type == ";") return cont();
361
- if (type == "if") {
362
- if (cx.state.lexical.info == "else" && cx.state.cc[cx.state.cc.length - 1] == poplex)
363
- cx.state.cc.pop()();
364
- return cont(pushlex("form"), parenExpr, statement, poplex, maybeelse);
365
- }
366
- if (type == "function") return cont(functiondef);
367
- if (type == "for") return cont(pushlex("form"), pushblockcontext, forspec, statement, popcontext, poplex);
368
- if (type == "class" || (isTS && value == "interface")) {
369
- cx.marked = "keyword";
370
- return cont(pushlex("form", type == "class" ? type : value), className, poplex)
371
- }
372
- if (type == "variable") {
373
- if (isTS && value == "declare") {
374
- cx.marked = "keyword";
375
- return cont(statement)
376
- } else if (isTS && (value == "module" || value == "enum" || value == "type") && cx.stream.match(/^\s*\w/, false)) {
377
- cx.marked = "keyword";
378
- if (value == "enum") return cont(enumdef);
379
- else if (value == "type") return cont(typename, expect("operator"), typeexpr, expect(";"));
380
- else return cont(pushlex("form"), pattern, expect("{"), pushlex("}"), block, poplex, poplex)
381
- } else if (isTS && value == "namespace") {
382
- cx.marked = "keyword";
383
- return cont(pushlex("form"), expression, statement, poplex)
384
- } else if (isTS && value == "abstract") {
385
- cx.marked = "keyword";
386
- return cont(statement)
387
- } else {
388
- return cont(pushlex("stat"), maybelabel);
389
- }
390
- }
391
- if (type == "switch") return cont(pushlex("form"), parenExpr, expect("{"), pushlex("}", "switch"), pushblockcontext,
392
- block, poplex, poplex, popcontext);
393
- if (type == "case") return cont(expression, expect(":"));
394
- if (type == "default") return cont(expect(":"));
395
- if (type == "catch") return cont(pushlex("form"), pushcontext, maybeCatchBinding, statement, poplex, popcontext);
396
- if (type == "export") return cont(pushlex("stat"), afterExport, poplex);
397
- if (type == "import") return cont(pushlex("stat"), afterImport, poplex);
398
- if (type == "async") return cont(statement)
399
- if (value == "@") return cont(expression, statement)
400
- return pass(pushlex("stat"), expression, expect(";"), poplex);
401
- }
402
- function maybeCatchBinding(type) {
403
- if (type == "(") return cont(funarg, expect(")"))
404
- }
405
- function expression(type, value) {
406
- return expressionInner(type, value, false);
407
- }
408
- function expressionNoComma(type, value) {
409
- return expressionInner(type, value, true);
410
- }
411
- function parenExpr(type) {
412
- if (type != "(") return pass()
413
- return cont(pushlex(")"), maybeexpression, expect(")"), poplex)
414
- }
415
- function expressionInner(type, value, noComma) {
416
- if (cx.state.fatArrowAt == cx.stream.start) {
417
- var body = noComma ? arrowBodyNoComma : arrowBody;
418
- if (type == "(") return cont(pushcontext, pushlex(")"), commasep(funarg, ")"), poplex, expect("=>"), body, popcontext);
419
- else if (type == "variable") return pass(pushcontext, pattern, expect("=>"), body, popcontext);
420
- }
421
-
422
- var maybeop = noComma ? maybeoperatorNoComma : maybeoperatorComma;
423
- if (atomicTypes.hasOwnProperty(type)) return cont(maybeop);
424
- if (type == "function") return cont(functiondef, maybeop);
425
- if (type == "class" || (isTS && value == "interface")) { cx.marked = "keyword"; return cont(pushlex("form"), classExpression, poplex); }
426
- if (type == "keyword c" || type == "async") return cont(noComma ? expressionNoComma : expression);
427
- if (type == "(") return cont(pushlex(")"), maybeexpression, expect(")"), poplex, maybeop);
428
- if (type == "operator" || type == "spread") return cont(noComma ? expressionNoComma : expression);
429
- if (type == "[") return cont(pushlex("]"), arrayLiteral, poplex, maybeop);
430
- if (type == "{") return contCommasep(objprop, "}", null, maybeop);
431
- if (type == "quasi") return pass(quasi, maybeop);
432
- if (type == "new") return cont(maybeTarget(noComma));
433
- return cont();
434
- }
435
- function maybeexpression(type) {
436
- if (type.match(/[;\}\)\],]/)) return pass();
437
- return pass(expression);
438
- }
439
-
440
- function maybeoperatorComma(type, value) {
441
- if (type == ",") return cont(maybeexpression);
442
- return maybeoperatorNoComma(type, value, false);
443
- }
444
- function maybeoperatorNoComma(type, value, noComma) {
445
- var me = noComma == false ? maybeoperatorComma : maybeoperatorNoComma;
446
- var expr = noComma == false ? expression : expressionNoComma;
447
- if (type == "=>") return cont(pushcontext, noComma ? arrowBodyNoComma : arrowBody, popcontext);
448
- if (type == "operator") {
449
- if (/\+\+|--/.test(value) || isTS && value == "!") return cont(me);
450
- if (isTS && value == "<" && cx.stream.match(/^([^<>]|<[^<>]*>)*>\s*\(/, false))
451
- return cont(pushlex(">"), commasep(typeexpr, ">"), poplex, me);
452
- if (value == "?") return cont(expression, expect(":"), expr);
453
- return cont(expr);
454
- }
455
- if (type == "quasi") { return pass(quasi, me); }
456
- if (type == ";") return;
457
- if (type == "(") return contCommasep(expressionNoComma, ")", "call", me);
458
- if (type == ".") return cont(property, me);
459
- if (type == "[") return cont(pushlex("]"), maybeexpression, expect("]"), poplex, me);
460
- if (isTS && value == "as") { cx.marked = "keyword"; return cont(typeexpr, me) }
461
- if (type == "regexp") {
462
- cx.state.lastType = cx.marked = "operator";
463
- cx.stream.backUp(cx.stream.pos - cx.stream.start - 1);
464
- return cont(expr)
465
- }
466
- }
467
- function quasi(type, value) {
468
- if (type != "quasi") return pass();
469
- if (value.slice(value.length - 2) != "${") return cont(quasi);
470
- return cont(maybeexpression, continueQuasi);
471
- }
472
- function continueQuasi(type) {
473
- if (type == "}") {
474
- cx.marked = "string.special";
475
- cx.state.tokenize = tokenQuasi;
476
- return cont(quasi);
477
- }
478
- }
479
- function arrowBody(type) {
480
- findFatArrow(cx.stream, cx.state);
481
- return pass(type == "{" ? statement : expression);
482
- }
483
- function arrowBodyNoComma(type) {
484
- findFatArrow(cx.stream, cx.state);
485
- return pass(type == "{" ? statement : expressionNoComma);
486
- }
487
- function maybeTarget(noComma) {
488
- return function(type) {
489
- if (type == ".") return cont(noComma ? targetNoComma : target);
490
- else if (type == "variable" && isTS) return cont(maybeTypeArgs, noComma ? maybeoperatorNoComma : maybeoperatorComma)
491
- else return pass(noComma ? expressionNoComma : expression);
492
- };
493
- }
494
- function target(_, value) {
495
- if (value == "target") { cx.marked = "keyword"; return cont(maybeoperatorComma); }
496
- }
497
- function targetNoComma(_, value) {
498
- if (value == "target") { cx.marked = "keyword"; return cont(maybeoperatorNoComma); }
499
- }
500
- function maybelabel(type) {
501
- if (type == ":") return cont(poplex, statement);
502
- return pass(maybeoperatorComma, expect(";"), poplex);
503
- }
504
- function property(type) {
505
- if (type == "variable") {cx.marked = "property"; return cont();}
506
- }
507
- function objprop(type, value) {
508
- if (type == "async") {
509
- cx.marked = "property";
510
- return cont(objprop);
511
- } else if (type == "variable" || cx.style == "keyword") {
512
- cx.marked = "property";
513
- if (value == "get" || value == "set") return cont(getterSetter);
514
- var m; // Work around fat-arrow-detection complication for detecting typescript typed arrow params
515
- if (isTS && cx.state.fatArrowAt == cx.stream.start && (m = cx.stream.match(/^\s*:\s*/, false)))
516
- cx.state.fatArrowAt = cx.stream.pos + m[0].length;
517
- return cont(afterprop);
518
- } else if (type == "number" || type == "string") {
519
- cx.marked = jsonldMode ? "property" : (cx.style + " property");
520
- return cont(afterprop);
521
- } else if (type == "jsonld-keyword") {
522
- return cont(afterprop);
523
- } else if (isTS && isModifier(value)) {
524
- cx.marked = "keyword";
525
- return cont(objprop)
526
- } else if (type == "[") {
527
- return cont(expression, maybetype, expect("]"), afterprop);
528
- } else if (type == "spread") {
529
- return cont(expressionNoComma, afterprop);
530
- } else if (value == "*") {
531
- cx.marked = "keyword";
532
- return cont(objprop);
533
- } else if (type == ":") {
534
- return pass(afterprop)
535
- }
536
- }
537
- function getterSetter(type) {
538
- if (type != "variable") return pass(afterprop);
539
- cx.marked = "property";
540
- return cont(functiondef);
541
- }
542
- function afterprop(type) {
543
- if (type == ":") return cont(expressionNoComma);
544
- if (type == "(") return pass(functiondef);
545
- }
546
- function commasep(what, end, sep) {
547
- function proceed(type, value) {
548
- if (sep ? sep.indexOf(type) > -1 : type == ",") {
549
- var lex = cx.state.lexical;
550
- if (lex.info == "call") lex.pos = (lex.pos || 0) + 1;
551
- return cont(function(type, value) {
552
- if (type == end || value == end) return pass()
553
- return pass(what)
554
- }, proceed);
555
- }
556
- if (type == end || value == end) return cont();
557
- if (sep && sep.indexOf(";") > -1) return pass(what)
558
- return cont(expect(end));
559
- }
560
- return function(type, value) {
561
- if (type == end || value == end) return cont();
562
- return pass(what, proceed);
563
- };
564
- }
565
- function contCommasep(what, end, info) {
566
- for (var i = 3; i < arguments.length; i++)
567
- cx.cc.push(arguments[i]);
568
- return cont(pushlex(end, info), commasep(what, end), poplex);
569
- }
570
- function block(type) {
571
- if (type == "}") return cont();
572
- return pass(statement, block);
573
- }
574
- function maybetype(type, value) {
575
- if (isTS) {
576
- if (type == ":") return cont(typeexpr);
577
- if (value == "?") return cont(maybetype);
578
- }
579
- }
580
- function maybetypeOrIn(type, value) {
581
- if (isTS && (type == ":" || value == "in")) return cont(typeexpr)
582
- }
583
- function mayberettype(type) {
584
- if (isTS && type == ":") {
585
- if (cx.stream.match(/^\s*\w+\s+is\b/, false)) return cont(expression, isKW, typeexpr)
586
- else return cont(typeexpr)
587
- }
588
- }
589
- function isKW(_, value) {
590
- if (value == "is") {
591
- cx.marked = "keyword";
592
- return cont()
593
- }
594
- }
595
- function typeexpr(type, value) {
596
- if (value == "keyof" || value == "typeof" || value == "infer" || value == "readonly") {
597
- cx.marked = "keyword";
598
- return cont(value == "typeof" ? expressionNoComma : typeexpr)
599
- }
600
- if (type == "variable" || value == "void") {
601
- cx.marked = "type";
602
- return cont(afterType)
603
- }
604
- if (value == "|" || value == "&") return cont(typeexpr)
605
- if (type == "string" || type == "number" || type == "atom") return cont(afterType);
606
- if (type == "[") return cont(pushlex("]"), commasep(typeexpr, "]", ","), poplex, afterType)
607
- if (type == "{") return cont(pushlex("}"), typeprops, poplex, afterType)
608
- if (type == "(") return cont(commasep(typearg, ")"), maybeReturnType, afterType)
609
- if (type == "<") return cont(commasep(typeexpr, ">"), typeexpr)
610
- if (type == "quasi") return pass(quasiType, afterType)
611
- }
612
- function maybeReturnType(type) {
613
- if (type == "=>") return cont(typeexpr)
614
- }
615
- function typeprops(type) {
616
- if (type.match(/[\}\)\]]/)) return cont()
617
- if (type == "," || type == ";") return cont(typeprops)
618
- return pass(typeprop, typeprops)
619
- }
620
- function typeprop(type, value) {
621
- if (type == "variable" || cx.style == "keyword") {
622
- cx.marked = "property";
623
- return cont(typeprop)
624
- } else if (value == "?" || type == "number" || type == "string") {
625
- return cont(typeprop)
626
- } else if (type == ":") {
627
- return cont(typeexpr)
628
- } else if (type == "[") {
629
- return cont(expect("variable"), maybetypeOrIn, expect("]"), typeprop)
630
- } else if (type == "(") {
631
- return pass(functiondecl, typeprop)
632
- } else if (!type.match(/[;\}\)\],]/)) {
633
- return cont()
634
- }
635
- }
636
- function quasiType(type, value) {
637
- if (type != "quasi") return pass();
638
- if (value.slice(value.length - 2) != "${") return cont(quasiType);
639
- return cont(typeexpr, continueQuasiType);
640
- }
641
- function continueQuasiType(type) {
642
- if (type == "}") {
643
- cx.marked = "string.special";
644
- cx.state.tokenize = tokenQuasi;
645
- return cont(quasiType);
646
- }
647
- }
648
- function typearg(type, value) {
649
- if (type == "variable" && cx.stream.match(/^\s*[?:]/, false) || value == "?") return cont(typearg)
650
- if (type == ":") return cont(typeexpr)
651
- if (type == "spread") return cont(typearg)
652
- return pass(typeexpr)
653
- }
654
- function afterType(type, value) {
655
- if (value == "<") return cont(pushlex(">"), commasep(typeexpr, ">"), poplex, afterType)
656
- if (value == "|" || type == "." || value == "&") return cont(typeexpr)
657
- if (type == "[") return cont(typeexpr, expect("]"), afterType)
658
- if (value == "extends" || value == "implements") { cx.marked = "keyword"; return cont(typeexpr) }
659
- if (value == "?") return cont(typeexpr, expect(":"), typeexpr)
660
- }
661
- function maybeTypeArgs(_, value) {
662
- if (value == "<") return cont(pushlex(">"), commasep(typeexpr, ">"), poplex, afterType)
663
- }
664
- function typeparam() {
665
- return pass(typeexpr, maybeTypeDefault)
666
- }
667
- function maybeTypeDefault(_, value) {
668
- if (value == "=") return cont(typeexpr)
669
- }
670
- function vardef(_, value) {
671
- if (value == "enum") {cx.marked = "keyword"; return cont(enumdef)}
672
- return pass(pattern, maybetype, maybeAssign, vardefCont);
673
- }
674
- function pattern(type, value) {
675
- if (isTS && isModifier(value)) { cx.marked = "keyword"; return cont(pattern) }
676
- if (type == "variable") { register(value); return cont(); }
677
- if (type == "spread") return cont(pattern);
678
- if (type == "[") return contCommasep(eltpattern, "]");
679
- if (type == "{") return contCommasep(proppattern, "}");
680
- }
681
- function proppattern(type, value) {
682
- if (type == "variable" && !cx.stream.match(/^\s*:/, false)) {
683
- register(value);
684
- return cont(maybeAssign);
685
- }
686
- if (type == "variable") cx.marked = "property";
687
- if (type == "spread") return cont(pattern);
688
- if (type == "}") return pass();
689
- if (type == "[") return cont(expression, expect(']'), expect(':'), proppattern);
690
- return cont(expect(":"), pattern, maybeAssign);
691
- }
692
- function eltpattern() {
693
- return pass(pattern, maybeAssign)
694
- }
695
- function maybeAssign(_type, value) {
696
- if (value == "=") return cont(expressionNoComma);
697
- }
698
- function vardefCont(type) {
699
- if (type == ",") return cont(vardef);
700
- }
701
- function maybeelse(type, value) {
702
- if (type == "keyword b" && value == "else") return cont(pushlex("form", "else"), statement, poplex);
703
- }
704
- function forspec(type, value) {
705
- if (value == "await") return cont(forspec);
706
- if (type == "(") return cont(pushlex(")"), forspec1, poplex);
707
- }
708
- function forspec1(type) {
709
- if (type == "var") return cont(vardef, forspec2);
710
- if (type == "variable") return cont(forspec2);
711
- return pass(forspec2)
712
- }
713
- function forspec2(type, value) {
714
- if (type == ")") return cont()
715
- if (type == ";") return cont(forspec2)
716
- if (value == "in" || value == "of") { cx.marked = "keyword"; return cont(expression, forspec2) }
717
- return pass(expression, forspec2)
718
- }
719
- function functiondef(type, value) {
720
- if (value == "*") {cx.marked = "keyword"; return cont(functiondef);}
721
- if (type == "variable") {register(value); return cont(functiondef);}
722
- if (type == "(") return cont(pushcontext, pushlex(")"), commasep(funarg, ")"), poplex, mayberettype, statement, popcontext);
723
- if (isTS && value == "<") return cont(pushlex(">"), commasep(typeparam, ">"), poplex, functiondef)
724
- }
725
- function functiondecl(type, value) {
726
- if (value == "*") {cx.marked = "keyword"; return cont(functiondecl);}
727
- if (type == "variable") {register(value); return cont(functiondecl);}
728
- if (type == "(") return cont(pushcontext, pushlex(")"), commasep(funarg, ")"), poplex, mayberettype, popcontext);
729
- if (isTS && value == "<") return cont(pushlex(">"), commasep(typeparam, ">"), poplex, functiondecl)
730
- }
731
- function typename(type, value) {
732
- if (type == "keyword" || type == "variable") {
733
- cx.marked = "type";
734
- return cont(typename)
735
- } else if (value == "<") {
736
- return cont(pushlex(">"), commasep(typeparam, ">"), poplex)
737
- }
738
- }
739
- function funarg(type, value) {
740
- if (value == "@") cont(expression, funarg);
741
- if (type == "spread") return cont(funarg);
742
- if (isTS && isModifier(value)) { cx.marked = "keyword"; return cont(funarg); }
743
- if (isTS && type == "this") return cont(maybetype, maybeAssign)
744
- return pass(pattern, maybetype, maybeAssign);
745
- }
746
- function classExpression(type, value) {
747
- // Class expressions may have an optional name.
748
- if (type == "variable") return className(type, value);
749
- return classNameAfter(type, value);
750
- }
751
- function className(type, value) {
752
- if (type == "variable") {register(value); return cont(classNameAfter);}
753
- }
754
- function classNameAfter(type, value) {
755
- if (value == "<") return cont(pushlex(">"), commasep(typeparam, ">"), poplex, classNameAfter)
756
- if (value == "extends" || value == "implements" || (isTS && type == ",")) {
757
- if (value == "implements") cx.marked = "keyword";
758
- return cont(isTS ? typeexpr : expression, classNameAfter);
759
- }
760
- if (type == "{") return cont(pushlex("}"), classBody, poplex);
761
- }
762
- function classBody(type, value) {
763
- if (type == "async" ||
764
- (type == "variable" &&
765
- (value == "static" || value == "get" || value == "set" || (isTS && isModifier(value))) &&
766
- cx.stream.match(/^\s+#?[\w$\xa1-\uffff]/, false))) {
767
- cx.marked = "keyword";
768
- return cont(classBody);
769
- }
770
- if (type == "variable" || cx.style == "keyword") {
771
- cx.marked = "property";
772
- return cont(classfield, classBody);
773
- }
774
- if (type == "number" || type == "string") return cont(classfield, classBody);
775
- if (type == "[")
776
- return cont(expression, maybetype, expect("]"), classfield, classBody)
777
- if (value == "*") {
778
- cx.marked = "keyword";
779
- return cont(classBody);
780
- }
781
- if (isTS && type == "(") return pass(functiondecl, classBody)
782
- if (type == ";" || type == ",") return cont(classBody);
783
- if (type == "}") return cont();
784
- if (value == "@") return cont(expression, classBody)
785
- }
786
- function classfield(type, value) {
787
- if (value == "!" || value == "?") return cont(classfield)
788
- if (type == ":") return cont(typeexpr, maybeAssign)
789
- if (value == "=") return cont(expressionNoComma)
790
- var context = cx.state.lexical.prev, isInterface = context && context.info == "interface";
791
- return pass(isInterface ? functiondecl : functiondef)
792
- }
793
- function afterExport(type, value) {
794
- if (value == "*") { cx.marked = "keyword"; return cont(maybeFrom, expect(";")); }
795
- if (value == "default") { cx.marked = "keyword"; return cont(expression, expect(";")); }
796
- if (type == "{") return cont(commasep(exportField, "}"), maybeFrom, expect(";"));
797
- return pass(statement);
798
- }
799
- function exportField(type, value) {
800
- if (value == "as") { cx.marked = "keyword"; return cont(expect("variable")); }
801
- if (type == "variable") return pass(expressionNoComma, exportField);
802
- }
803
- function afterImport(type) {
804
- if (type == "string") return cont();
805
- if (type == "(") return pass(expression);
806
- if (type == ".") return pass(maybeoperatorComma);
807
- return pass(importSpec, maybeMoreImports, maybeFrom);
808
- }
809
- function importSpec(type, value) {
810
- if (type == "{") return contCommasep(importSpec, "}");
811
- if (type == "variable") register(value);
812
- if (value == "*") cx.marked = "keyword";
813
- return cont(maybeAs);
814
- }
815
- function maybeMoreImports(type) {
816
- if (type == ",") return cont(importSpec, maybeMoreImports)
817
- }
818
- function maybeAs(_type, value) {
819
- if (value == "as") { cx.marked = "keyword"; return cont(importSpec); }
820
- }
821
- function maybeFrom(_type, value) {
822
- if (value == "from") { cx.marked = "keyword"; return cont(expression); }
823
- }
824
- function arrayLiteral(type) {
825
- if (type == "]") return cont();
826
- return pass(commasep(expressionNoComma, "]"));
827
- }
828
- function enumdef() {
829
- return pass(pushlex("form"), pattern, expect("{"), pushlex("}"), commasep(enummember, "}"), poplex, poplex)
830
- }
831
- function enummember() {
832
- return pass(pattern, maybeAssign);
833
- }
834
-
835
- function isContinuedStatement(state, textAfter) {
836
- return state.lastType == "operator" || state.lastType == "," ||
837
- isOperatorChar.test(textAfter.charAt(0)) ||
838
- /[,.]/.test(textAfter.charAt(0));
839
- }
840
-
841
- function expressionAllowed(stream, state, backUp) {
842
- return state.tokenize == tokenBase &&
843
- /^(?:operator|sof|keyword [bcd]|case|new|export|default|spread|[\[{}\(,;:]|=>)$/.test(state.lastType) ||
844
- (state.lastType == "quasi" && /\{\s*$/.test(stream.string.slice(0, stream.pos - (backUp || 0))))
845
- }
846
-
847
- // Interface
848
-
849
- return {
850
- name: parserConfig.name,
851
-
852
- startState: function(indentUnit) {
853
- var state = {
854
- tokenize: tokenBase,
855
- lastType: "sof",
856
- cc: [],
857
- lexical: new JSLexical(-indentUnit, 0, "block", false),
858
- localVars: parserConfig.localVars,
859
- context: parserConfig.localVars && new Context(null, null, false),
860
- indented: 0
861
- };
862
- if (parserConfig.globalVars && typeof parserConfig.globalVars == "object")
863
- state.globalVars = parserConfig.globalVars;
864
- return state;
865
- },
866
-
867
- token: function(stream, state) {
868
- if (stream.sol()) {
869
- if (!state.lexical.hasOwnProperty("align"))
870
- state.lexical.align = false;
871
- state.indented = stream.indentation();
872
- findFatArrow(stream, state);
873
- }
874
- if (state.tokenize != tokenComment && stream.eatSpace()) return null;
875
- var style = state.tokenize(stream, state);
876
- if (type == "comment") return style;
877
- state.lastType = type == "operator" && (content == "++" || content == "--") ? "incdec" : type;
878
- return parseJS(state, style, type, content, stream);
879
- },
880
-
881
- indent: function(state, textAfter, cx) {
882
- if (state.tokenize == tokenComment || state.tokenize == tokenQuasi) return null;
883
- if (state.tokenize != tokenBase) return 0;
884
- var firstChar = textAfter && textAfter.charAt(0), lexical = state.lexical, top;
885
- // Kludge to prevent 'maybelse' from blocking lexical scope pops
886
- if (!/^\s*else\b/.test(textAfter)) for (var i = state.cc.length - 1; i >= 0; --i) {
887
- var c = state.cc[i];
888
- if (c == poplex) lexical = lexical.prev;
889
- else if (c != maybeelse && c != popcontext) break;
890
- }
891
- while ((lexical.type == "stat" || lexical.type == "form") &&
892
- (firstChar == "}" || ((top = state.cc[state.cc.length - 1]) &&
893
- (top == maybeoperatorComma || top == maybeoperatorNoComma) &&
894
- !/^[,\.=+\-*:?[\(]/.test(textAfter))))
895
- lexical = lexical.prev;
896
- if (statementIndent && lexical.type == ")" && lexical.prev.type == "stat")
897
- lexical = lexical.prev;
898
- var type = lexical.type, closing = firstChar == type;
899
-
900
- if (type == "vardef") return lexical.indented + (state.lastType == "operator" || state.lastType == "," ? lexical.info.length + 1 : 0);
901
- else if (type == "form" && firstChar == "{") return lexical.indented;
902
- else if (type == "form") return lexical.indented + cx.unit;
903
- else if (type == "stat")
904
- return lexical.indented + (isContinuedStatement(state, textAfter) ? statementIndent || cx.unit : 0);
905
- else if (lexical.info == "switch" && !closing && parserConfig.doubleIndentSwitch != false)
906
- return lexical.indented + (/^(?:case|default)\b/.test(textAfter) ? cx.unit : 2 * cx.unit);
907
- else if (lexical.align) return lexical.column + (closing ? 0 : 1);
908
- else return lexical.indented + (closing ? 0 : cx.unit);
909
- },
910
-
911
- languageData: {
912
- indentOnInput: /^\s*(?:case .*?:|default:|\{|\})$/,
913
- commentTokens: jsonMode ? undefined : {line: "//", block: {open: "/*", close: "*/"}},
914
- closeBrackets: {brackets: ["(", "[", "{", "'", '"', "`"]},
915
- wordChars: "$"
916
- }
917
- };
918
- }
919
- const javascript = mkJavaScript({name: "javascript"});
920
- const json = mkJavaScript({name: "json", json: true});
921
- const jsonld = mkJavaScript({name: "json", jsonld: true});
922
- const typescript = mkJavaScript({name: "typescript", typescript: true});
923
-
924
- exports.javascript = javascript;
925
- exports.json = json;
926
- exports.jsonld = jsonld;
927
- exports.typescript = typescript;
928
- //# sourceMappingURL=javascript-5-BTydbD.js.map