richtor 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (316) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +122 -0
  3. package/dist/abap-Y8Dl9g_6.js +6 -0
  4. package/dist/actionscript-3-DZzbMeqX.js +6 -0
  5. package/dist/ada-vP6ak0IW.js +6 -0
  6. package/dist/andromeeda-BIpZ7gaU.js +4 -0
  7. package/dist/angular-html-DPB4Rf0C.js +32 -0
  8. package/dist/angular-ts-CTOR2ofC.js +21 -0
  9. package/dist/apache-BUjz-sD2.js +6 -0
  10. package/dist/apex-oLhhs58q.js +6 -0
  11. package/dist/apl-CjNiDgad.js +16 -0
  12. package/dist/applescript-BPx7YFFu.js +6 -0
  13. package/dist/ara-Z2fSOxSw.js +6 -0
  14. package/dist/asciidoc-B-pCoB3G.js +6 -0
  15. package/dist/asm-BTWLY5ym.js +6 -0
  16. package/dist/astro-CFFExE8Q.js +18 -0
  17. package/dist/aurora-x-BwoVEUWZ.js +4 -0
  18. package/dist/awk-Fb0P9dkn.js +6 -0
  19. package/dist/ayu-dark-CxPZkpb2.js +4 -0
  20. package/dist/ballerina-oZK-YekG.js +6 -0
  21. package/dist/bash-CPB87Egg.js +377 -0
  22. package/dist/bat-0FvbqU9S.js +6 -0
  23. package/dist/beancount-DqJEb89h.js +6 -0
  24. package/dist/berry-DODBq_Ff.js +6 -0
  25. package/dist/bibtex-EULQRLY5.js +6 -0
  26. package/dist/bicep-BorU73w0.js +6 -0
  27. package/dist/blade-CRa6j5zS.js +20 -0
  28. package/dist/bsl-NkNNwerW.js +8 -0
  29. package/dist/c-Bz1-FJiA.js +277 -0
  30. package/dist/c-eeMepfLm.js +6 -0
  31. package/dist/cadence-02UX7mW8.js +6 -0
  32. package/dist/cairo-DM6WF2e3.js +8 -0
  33. package/dist/catppuccin-frappe-D3cH2rXe.js +4 -0
  34. package/dist/catppuccin-latte-C0LRGUW4.js +4 -0
  35. package/dist/catppuccin-macchiato-c5wQ11TT.js +4 -0
  36. package/dist/catppuccin-mocha-WMD6Qvya.js +4 -0
  37. package/dist/clarity-PKm5CwqM.js +6 -0
  38. package/dist/clojure-CXJfHrL3.js +6 -0
  39. package/dist/cmake-BJz8BOTU.js +6 -0
  40. package/dist/cobol-HihOMwht.js +10 -0
  41. package/dist/codeowners-Bt9yU6NX.js +6 -0
  42. package/dist/codeql-DHkodjjI.js +6 -0
  43. package/dist/coffee-DGBR_nr_.js +8 -0
  44. package/dist/common-lisp-EVqT9Zhp.js +6 -0
  45. package/dist/coq-B0L9upzn.js +6 -0
  46. package/dist/cpp-Cj177cuW.js +18 -0
  47. package/dist/crystal-CRJyc4G-.js +18 -0
  48. package/dist/csharp-AnFv7wyC.js +382 -0
  49. package/dist/csharp-C7yUs7-w.js +6 -0
  50. package/dist/css-BCTOmdxR.js +923 -0
  51. package/dist/css-CECN5uSL.js +6 -0
  52. package/dist/csv-CmYOceLb.js +6 -0
  53. package/dist/cue-ZzumE7IT.js +6 -0
  54. package/dist/cypher-jpdmjtA6.js +6 -0
  55. package/dist/d-CBagWSwH.js +6 -0
  56. package/dist/dark-plus-pUHDTVV0.js +4 -0
  57. package/dist/dart-6ObCrKr9.js +6 -0
  58. package/dist/dax-CcDT-8dH.js +6 -0
  59. package/dist/desktop-B93p9R9O.js +6 -0
  60. package/dist/diff-BxzP2J8R.js +6 -0
  61. package/dist/docker-CsHqm9tx.js +6 -0
  62. package/dist/dotenv-BMjVjUL1.js +6 -0
  63. package/dist/dracula-BtZx2Kac.js +4 -0
  64. package/dist/dracula-soft-BKa-aqBv.js +4 -0
  65. package/dist/dream-maker-PAx17jaB.js +6 -0
  66. package/dist/edge-BYQkOzbF.js +12 -0
  67. package/dist/elixir-Dh036GMp.js +8 -0
  68. package/dist/elm-BtNbw_Cd.js +8 -0
  69. package/dist/emacs-lisp-Cfxdx5D-.js +6 -0
  70. package/dist/erb-CS4zioBv.js +10 -0
  71. package/dist/erlang-DNcDT8Hi.js +8 -0
  72. package/dist/everforest-dark-DMCBqXCK.js +4 -0
  73. package/dist/everforest-light-BbXl82Em.js +4 -0
  74. package/dist/fennel-N4WcXuKx.js +6 -0
  75. package/dist/fish-BTDEUgqH.js +6 -0
  76. package/dist/fluent-BMXUxfv1.js +6 -0
  77. package/dist/fortran-fixed-form-DUsA-VGo.js +8 -0
  78. package/dist/fortran-free-form-DPIT_jbP.js +6 -0
  79. package/dist/fsharp-CYOiIVNx.js +8 -0
  80. package/dist/gdresource-BwtMIoBm.js +10 -0
  81. package/dist/gdscript-BifyeYhI.js +6 -0
  82. package/dist/gdshader-Bk8fF6yr.js +6 -0
  83. package/dist/genie-DzUvd7U9.js +6 -0
  84. package/dist/gherkin-DHRaV0YP.js +6 -0
  85. package/dist/git-commit-Bd32YZ0K.js +8 -0
  86. package/dist/git-rebase-ZWUFO_T4.js +8 -0
  87. package/dist/github-dark-DenFmJkN.js +4 -0
  88. package/dist/github-dark-default-BJPUVz4H.js +4 -0
  89. package/dist/github-dark-dimmed-DUshB20C.js +4 -0
  90. package/dist/github-dark-high-contrast-D3aGCnF8.js +4 -0
  91. package/dist/github-light-JYsPkUQd.js +4 -0
  92. package/dist/github-light-default-D99KPAby.js +4 -0
  93. package/dist/github-light-high-contrast-BbmZE-Mp.js +4 -0
  94. package/dist/gleam-Bv284lvN.js +6 -0
  95. package/dist/glimmer-js-DkxNrfPT.js +14 -0
  96. package/dist/glimmer-ts-D6YZEmK_.js +14 -0
  97. package/dist/glsl-CkUcVZNK.js +8 -0
  98. package/dist/gnuplot-yPG9-sE_.js +6 -0
  99. package/dist/go-ChxJuLYK.js +6 -0
  100. package/dist/go-CkZ9_bn0.js +151 -0
  101. package/dist/graphql-CBu2ehBn.js +14 -0
  102. package/dist/graphql-CHx1gYw6.js +70 -0
  103. package/dist/groovy-CJQTphOW.js +6 -0
  104. package/dist/gruvbox-dark-hard-C5HOtKIh.js +4 -0
  105. package/dist/gruvbox-dark-medium-FVgwJHuz.js +4 -0
  106. package/dist/gruvbox-dark-soft-B46F314v.js +4 -0
  107. package/dist/gruvbox-light-hard-CJD38wDZ.js +4 -0
  108. package/dist/gruvbox-light-medium-BlIhMYTA.js +4 -0
  109. package/dist/gruvbox-light-soft-DoPHyLVZ.js +4 -0
  110. package/dist/hack-ItRNKiEb.js +10 -0
  111. package/dist/haml-NZLVzu_R.js +10 -0
  112. package/dist/handlebars-mxStpSE7.js +14 -0
  113. package/dist/haskell-WeIwNIP6.js +6 -0
  114. package/dist/haxe-TztHsm5T.js +6 -0
  115. package/dist/hcl-D438OF-I.js +6 -0
  116. package/dist/hjson-DYBUbqOl.js +6 -0
  117. package/dist/hlsl-Bk8TCZNL.js +6 -0
  118. package/dist/houston-BDYrDoDW.js +4 -0
  119. package/dist/html-B50bmoVb.js +10 -0
  120. package/dist/html-derivative-C6bxFbFW.js +8 -0
  121. package/dist/http-DLvAkeD-.js +14 -0
  122. package/dist/hurl-CgkFN90t.js +12 -0
  123. package/dist/hxml-GbqSQCLa.js +8 -0
  124. package/dist/hy-Brt5EZ7-.js +6 -0
  125. package/dist/imba-CimUv-Uh.js +6 -0
  126. package/dist/ini-BZIuRIvJ.js +6 -0
  127. package/dist/java-BicX26Pg.js +240 -0
  128. package/dist/java-DY6VlHhP.js +6 -0
  129. package/dist/javascript-C25yR2R2.js +6 -0
  130. package/dist/javascript-DII1YQGr.js +658 -0
  131. package/dist/jinja-CFW5uAwY.js +11 -0
  132. package/dist/jison-DdreslRX.js +8 -0
  133. package/dist/json-C_6Prymp.js +38 -0
  134. package/dist/json-DxJze_jm.js +6 -0
  135. package/dist/json5-BT4Fjg39.js +6 -0
  136. package/dist/jsonc-CHjZD8gR.js +6 -0
  137. package/dist/jsonl-BGuvDmy9.js +6 -0
  138. package/dist/jsonnet-Bx2cfsXg.js +6 -0
  139. package/dist/jssm-BcADi6EI.js +6 -0
  140. package/dist/jsx-BtKADgXT.js +6 -0
  141. package/dist/julia--2-efCjg.js +16 -0
  142. package/dist/kanagawa-dragon-CiKur4Hl.js +4 -0
  143. package/dist/kanagawa-lotus-BKu-smKu.js +4 -0
  144. package/dist/kanagawa-wave-CQwozSzG.js +4 -0
  145. package/dist/kdl-BNOv9TC3.js +6 -0
  146. package/dist/kotlin-BwB8b-YX.js +242 -0
  147. package/dist/kotlin-ByBMgTeR.js +6 -0
  148. package/dist/kusto-VWFLl2T0.js +6 -0
  149. package/dist/laserwave-6a00oqik.js +4 -0
  150. package/dist/latex-Cs75fyNk.js +8 -0
  151. package/dist/lean-D5yRrexI.js +6 -0
  152. package/dist/less-B1GLI2Di.js +6 -0
  153. package/dist/less-DeNOeXmL.js +992 -0
  154. package/dist/light-plus-CZuVqSLX.js +4 -0
  155. package/dist/liquid-CHzkx3jT.js +14 -0
  156. package/dist/llvm-co1rIKs3.js +6 -0
  157. package/dist/log-Al8wyEFV.js +6 -0
  158. package/dist/logo-DBa4JDzV.js +6 -0
  159. package/dist/lua-kX5WP_P5.js +8 -0
  160. package/dist/luau-DtBSxLyz.js +6 -0
  161. package/dist/make-CsMclxtr.js +6 -0
  162. package/dist/makefile-D-gl0qMV.js +67 -0
  163. package/dist/markdown-CrScaQ96.js +6 -0
  164. package/dist/markdown-ga2-2-T7.js +216 -0
  165. package/dist/marko-ls0Jg2j8.js +14 -0
  166. package/dist/material-theme-D6KBX41T.js +4 -0
  167. package/dist/material-theme-darker-CkRroheE.js +4 -0
  168. package/dist/material-theme-lighter-BUBw43Yz.js +4 -0
  169. package/dist/material-theme-ocean-ClGX14Ja.js +4 -0
  170. package/dist/material-theme-palenight-C1RVm8K1.js +4 -0
  171. package/dist/matlab-BOAaUVP0.js +6 -0
  172. package/dist/mdc-uaivvctV.js +12 -0
  173. package/dist/mdx-BOhZZUJ8.js +6 -0
  174. package/dist/mermaid-B0ixDHKN.js +6 -0
  175. package/dist/min-dark-C7ak0t6c.js +4 -0
  176. package/dist/min-light-CKFxVcPp.js +4 -0
  177. package/dist/mipsasm-CTx18fBl.js +6 -0
  178. package/dist/mojo-BD611d7o.js +6 -0
  179. package/dist/monokai-C1KBYcO0.js +4 -0
  180. package/dist/move-F-dICmj2.js +6 -0
  181. package/dist/narrat-DmhDCBs-.js +6 -0
  182. package/dist/nextflow-DmSVRGjG.js +6 -0
  183. package/dist/nginx-5vhPAEw3.js +8 -0
  184. package/dist/night-owl-Bm2rzalh.js +4 -0
  185. package/dist/nim-QAjRdh9w.js +20 -0
  186. package/dist/nix-BZK5F767.js +9 -0
  187. package/dist/nord-CC5OiUXg.js +4 -0
  188. package/dist/nushell-D8j3dhT-.js +6 -0
  189. package/dist/objective-c-Itk8tzmv.js +6 -0
  190. package/dist/objective-cpp-DGt5UKRO.js +6 -0
  191. package/dist/objectivec-CnyrJ13Z.js +237 -0
  192. package/dist/ocaml-eSVK32Eg.js +6 -0
  193. package/dist/one-dark-pro-DTA3VF0_.js +4 -0
  194. package/dist/one-light-D9sNaUtq.js +4 -0
  195. package/dist/openscad-Sp5uZ6f2.js +6 -0
  196. package/dist/pascal-xy8pJNns.js +6 -0
  197. package/dist/perl-DkVrgJBg.js +16 -0
  198. package/dist/php-BL35ZHWM.js +566 -0
  199. package/dist/php-j2zCzTEz.js +18 -0
  200. package/dist/pkl-C-zSNmaA.js +6 -0
  201. package/dist/plastic-CSTz3KZp.js +4 -0
  202. package/dist/plsql-pVbGZfOv.js +6 -0
  203. package/dist/po-BNfHvqmm.js +6 -0
  204. package/dist/poimandres-C-VADXHD.js +4 -0
  205. package/dist/polar-CAZahv3u.js +6 -0
  206. package/dist/postcss-05aHdL-n.js +6 -0
  207. package/dist/powerquery-DI9HkTvs.js +6 -0
  208. package/dist/powershell-Clc4ydu-.js +6 -0
  209. package/dist/prisma-FZjmVtSl.js +6 -0
  210. package/dist/prolog-C5-yg4TO.js +6 -0
  211. package/dist/proto-MmCPeFAD.js +6 -0
  212. package/dist/pug-XOw9Q1Ho.js +12 -0
  213. package/dist/puppet-CUJHmnxV.js +6 -0
  214. package/dist/purescript-rUfGld-4.js +6 -0
  215. package/dist/python-BFNSHbwJ.js +6 -0
  216. package/dist/python-CymlFLB0.js +399 -0
  217. package/dist/qml-rTNXsquU.js +8 -0
  218. package/dist/qmldir-BInDYbpo.js +6 -0
  219. package/dist/qss-AeJTysr_.js +6 -0
  220. package/dist/r-Bm0uF0U2.js +6 -0
  221. package/dist/racket-B83wSAja.js +6 -0
  222. package/dist/raku-nEQ4ZJJ7.js +6 -0
  223. package/dist/razor-B1z-bksM.js +10 -0
  224. package/dist/red-7y8PH7HH.js +4 -0
  225. package/dist/reg-m_s_Kiip.js +6 -0
  226. package/dist/regexp-BazyLpPg.js +6 -0
  227. package/dist/rel-BcRfyd6Q.js +6 -0
  228. package/dist/richtor.css +1 -0
  229. package/dist/riscv-Ce8MAQLP.js +6 -0
  230. package/dist/rose-pine-BKc3yVeu.js +4 -0
  231. package/dist/rose-pine-dawn-BulJcPZT.js +4 -0
  232. package/dist/rose-pine-moon-j6jiXKV8.js +4 -0
  233. package/dist/rosmsg-Cz0w1km8.js +6 -0
  234. package/dist/rst-CcbeA9zE.js +22 -0
  235. package/dist/ruby-DMPw6uKF.js +30 -0
  236. package/dist/rust-CLzF9zIN.js +6 -0
  237. package/dist/sas-fpEvgATw.js +8 -0
  238. package/dist/sass-DxHp5rTx.js +6 -0
  239. package/dist/scala-D4grkFkl.js +6 -0
  240. package/dist/scheme-BCRWuEm4.js +6 -0
  241. package/dist/scss-B1FaCqwR.js +8 -0
  242. package/dist/scss-CknrYxoA.js +908 -0
  243. package/dist/sdbl-B7T8abf4.js +6 -0
  244. package/dist/shadcn-rich-editor.es.js +68529 -0
  245. package/dist/shadcn-rich-editor.umd.js +282 -0
  246. package/dist/shaderlab-Cr62-Wb4.js +8 -0
  247. package/dist/shell-DYrX6oL5.js +25 -0
  248. package/dist/shellscript-InADTalH.js +6 -0
  249. package/dist/shellsession-DiDJNQdy.js +8 -0
  250. package/dist/slack-dark-i7wN4OET.js +4 -0
  251. package/dist/slack-ochin-ndHf0LoP.js +4 -0
  252. package/dist/smalltalk-BlI1_OkM.js +6 -0
  253. package/dist/snazzy-light-BlSJXAu4.js +4 -0
  254. package/dist/solarized-dark-UTmkh7lw.js +4 -0
  255. package/dist/solarized-light-BheCkDPT.js +4 -0
  256. package/dist/solidity-DUWnFhS6.js +6 -0
  257. package/dist/soy-C1-6njHa.js +8 -0
  258. package/dist/sparql-B0KWFEri.js +8 -0
  259. package/dist/splunk-CRXR8A9s.js +6 -0
  260. package/dist/sql-Cn_v3PB0.js +6 -0
  261. package/dist/sql-IeKX8fQ8.js +615 -0
  262. package/dist/ssh-config-DP-hNVbF.js +6 -0
  263. package/dist/stata-B8c5fTjX.js +8 -0
  264. package/dist/stylus-CyKEU1Ej.js +6 -0
  265. package/dist/svelte-5UasyOg7.js +14 -0
  266. package/dist/swift-9UzSvamq.js +6 -0
  267. package/dist/synthwave-84-NU3C_KFZ.js +4 -0
  268. package/dist/system-verilog-BCm7smPJ.js +6 -0
  269. package/dist/systemd-C-4qm6XH.js +6 -0
  270. package/dist/talonscript-CFF3LF_O.js +6 -0
  271. package/dist/tasl-Cg_WBUAe.js +6 -0
  272. package/dist/tcl-DN7buRTF.js +6 -0
  273. package/dist/templ-peLZIM2D.js +12 -0
  274. package/dist/terraform-DGvcn9zM.js +6 -0
  275. package/dist/tex-DpOayVob.js +8 -0
  276. package/dist/tokyo-night-DP4TmcQl.js +4 -0
  277. package/dist/toml-DY62mUL_.js +6 -0
  278. package/dist/ts-tags-ioVe2PKw.js +41 -0
  279. package/dist/tsv-BtvSkaG0.js +6 -0
  280. package/dist/tsx-B8rCNbgL.js +6 -0
  281. package/dist/turtle-_H59FV7D.js +6 -0
  282. package/dist/twig-CcRLVyUg.js +18 -0
  283. package/dist/typescript-RycA9KXf.js +6 -0
  284. package/dist/typescript-SNUkGeOU.js +753 -0
  285. package/dist/typespec-DWqp-kUU.js +6 -0
  286. package/dist/typst-D_1QKWns.js +6 -0
  287. package/dist/v-BPCNiyYe.js +6 -0
  288. package/dist/vala-uxaPR7d1.js +6 -0
  289. package/dist/vb-D8_c5-KN.js +6 -0
  290. package/dist/vbnet-D7PCGZRn.js +122 -0
  291. package/dist/verilog-B-bybjPF.js +6 -0
  292. package/dist/vesper-BckBta1U.js +4 -0
  293. package/dist/vhdl-CUlNa8ac.js +6 -0
  294. package/dist/viml-DsfA-sWm.js +6 -0
  295. package/dist/vite.svg +1 -0
  296. package/dist/vitesse-black-BoGvW84i.js +4 -0
  297. package/dist/vitesse-dark-Cym-eLtO.js +4 -0
  298. package/dist/vitesse-light-CcmG315c.js +4 -0
  299. package/dist/vue-DOVAQqiz.js +31 -0
  300. package/dist/vue-html-C7WI2elu.js +10 -0
  301. package/dist/vue-vine-D386fra9.js +20 -0
  302. package/dist/vyper-CPQuu50u.js +6 -0
  303. package/dist/wasm-BBXxrAl7.js +6 -0
  304. package/dist/wasm-DQxwEHae.js +7 -0
  305. package/dist/wenyan-pbVjoM9_.js +6 -0
  306. package/dist/wgsl-DY4iK1q1.js +6 -0
  307. package/dist/wikitext-Z-MoUasO.js +6 -0
  308. package/dist/wit-CQMQOlTg.js +6 -0
  309. package/dist/wolfram-Dz4KXISs.js +6 -0
  310. package/dist/xml-B7THKYqr.js +219 -0
  311. package/dist/xml-C2J0sS9M.js +8 -0
  312. package/dist/xsl-BmSZphgC.js +8 -0
  313. package/dist/yaml-DaO7k5B1.js +6 -0
  314. package/dist/zenscript-CxBjpf9c.js +6 -0
  315. package/dist/zig-Vm0PO9wB.js +6 -0
  316. package/package.json +136 -0
@@ -0,0 +1,566 @@
1
+ function D(e) {
2
+ const t = e.regex, _ = /(?![A-Za-z0-9])(?![$])/, o = t.concat(
3
+ /[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,
4
+ _
5
+ ), r = t.concat(
6
+ /(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,
7
+ _
8
+ ), I = t.concat(
9
+ /[A-Z]+/,
10
+ _
11
+ ), E = {
12
+ scope: "variable",
13
+ match: "\\$+" + o
14
+ }, M = {
15
+ scope: "meta",
16
+ variants: [
17
+ { begin: /<\?php/, relevance: 10 },
18
+ // boost for obvious PHP
19
+ { begin: /<\?=/ },
20
+ // less relevant per PSR-1 which says not to use short-tags
21
+ { begin: /<\?/, relevance: 0.1 },
22
+ { begin: /\?>/ }
23
+ // end php tag
24
+ ]
25
+ }, g = {
26
+ scope: "subst",
27
+ variants: [
28
+ { begin: /\$\w+/ },
29
+ {
30
+ begin: /\{\$/,
31
+ end: /\}/
32
+ }
33
+ ]
34
+ }, N = e.inherit(e.APOS_STRING_MODE, { illegal: null }), y = e.inherit(e.QUOTE_STRING_MODE, {
35
+ illegal: null,
36
+ contains: e.QUOTE_STRING_MODE.contains.concat(g)
37
+ }), w = {
38
+ begin: /<<<[ \t]*(?:(\w+)|"(\w+)")\n/,
39
+ end: /[ \t]*(\w+)\b/,
40
+ contains: e.QUOTE_STRING_MODE.contains.concat(g),
41
+ "on:begin": (n, a) => {
42
+ a.data._beginMatch = n[1] || n[2];
43
+ },
44
+ "on:end": (n, a) => {
45
+ a.data._beginMatch !== n[1] && a.ignoreMatch();
46
+ }
47
+ }, x = e.END_SAME_AS_BEGIN({
48
+ begin: /<<<[ \t]*'(\w+)'\n/,
49
+ end: /[ \t]*(\w+)\b/
50
+ }), S = `[
51
+ ]`, i = {
52
+ scope: "string",
53
+ variants: [
54
+ y,
55
+ N,
56
+ w,
57
+ x
58
+ ]
59
+ }, s = {
60
+ scope: "number",
61
+ variants: [
62
+ { begin: "\\b0[bB][01]+(?:_[01]+)*\\b" },
63
+ // Binary w/ underscore support
64
+ { begin: "\\b0[oO][0-7]+(?:_[0-7]+)*\\b" },
65
+ // Octals w/ underscore support
66
+ { begin: "\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b" },
67
+ // Hex w/ underscore support
68
+ // Decimals w/ underscore support, with optional fragments and scientific exponent (e) suffix.
69
+ { begin: "(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?" }
70
+ ],
71
+ relevance: 0
72
+ }, d = [
73
+ "false",
74
+ "null",
75
+ "true"
76
+ ], T = [
77
+ // Magic constants:
78
+ // <https://www.php.net/manual/en/language.constants.predefined.php>
79
+ "__CLASS__",
80
+ "__DIR__",
81
+ "__FILE__",
82
+ "__FUNCTION__",
83
+ "__COMPILER_HALT_OFFSET__",
84
+ "__LINE__",
85
+ "__METHOD__",
86
+ "__NAMESPACE__",
87
+ "__TRAIT__",
88
+ // Function that look like language construct or language construct that look like function:
89
+ // List of keywords that may not require parenthesis
90
+ "die",
91
+ "echo",
92
+ "exit",
93
+ "include",
94
+ "include_once",
95
+ "print",
96
+ "require",
97
+ "require_once",
98
+ // These are not language construct (function) but operate on the currently-executing function and can access the current symbol table
99
+ // 'compact extract func_get_arg func_get_args func_num_args get_called_class get_parent_class ' +
100
+ // Other keywords:
101
+ // <https://www.php.net/manual/en/reserved.php>
102
+ // <https://www.php.net/manual/en/language.types.type-juggling.php>
103
+ "array",
104
+ "abstract",
105
+ "and",
106
+ "as",
107
+ "binary",
108
+ "bool",
109
+ "boolean",
110
+ "break",
111
+ "callable",
112
+ "case",
113
+ "catch",
114
+ "class",
115
+ "clone",
116
+ "const",
117
+ "continue",
118
+ "declare",
119
+ "default",
120
+ "do",
121
+ "double",
122
+ "else",
123
+ "elseif",
124
+ "empty",
125
+ "enddeclare",
126
+ "endfor",
127
+ "endforeach",
128
+ "endif",
129
+ "endswitch",
130
+ "endwhile",
131
+ "enum",
132
+ "eval",
133
+ "extends",
134
+ "final",
135
+ "finally",
136
+ "float",
137
+ "for",
138
+ "foreach",
139
+ "from",
140
+ "global",
141
+ "goto",
142
+ "if",
143
+ "implements",
144
+ "instanceof",
145
+ "insteadof",
146
+ "int",
147
+ "integer",
148
+ "interface",
149
+ "isset",
150
+ "iterable",
151
+ "list",
152
+ "match|0",
153
+ "mixed",
154
+ "new",
155
+ "never",
156
+ "object",
157
+ "or",
158
+ "private",
159
+ "protected",
160
+ "public",
161
+ "readonly",
162
+ "real",
163
+ "return",
164
+ "string",
165
+ "switch",
166
+ "throw",
167
+ "trait",
168
+ "try",
169
+ "unset",
170
+ "use",
171
+ "var",
172
+ "void",
173
+ "while",
174
+ "xor",
175
+ "yield"
176
+ ], p = [
177
+ // Standard PHP library:
178
+ // <https://www.php.net/manual/en/book.spl.php>
179
+ "Error|0",
180
+ "AppendIterator",
181
+ "ArgumentCountError",
182
+ "ArithmeticError",
183
+ "ArrayIterator",
184
+ "ArrayObject",
185
+ "AssertionError",
186
+ "BadFunctionCallException",
187
+ "BadMethodCallException",
188
+ "CachingIterator",
189
+ "CallbackFilterIterator",
190
+ "CompileError",
191
+ "Countable",
192
+ "DirectoryIterator",
193
+ "DivisionByZeroError",
194
+ "DomainException",
195
+ "EmptyIterator",
196
+ "ErrorException",
197
+ "Exception",
198
+ "FilesystemIterator",
199
+ "FilterIterator",
200
+ "GlobIterator",
201
+ "InfiniteIterator",
202
+ "InvalidArgumentException",
203
+ "IteratorIterator",
204
+ "LengthException",
205
+ "LimitIterator",
206
+ "LogicException",
207
+ "MultipleIterator",
208
+ "NoRewindIterator",
209
+ "OutOfBoundsException",
210
+ "OutOfRangeException",
211
+ "OuterIterator",
212
+ "OverflowException",
213
+ "ParentIterator",
214
+ "ParseError",
215
+ "RangeException",
216
+ "RecursiveArrayIterator",
217
+ "RecursiveCachingIterator",
218
+ "RecursiveCallbackFilterIterator",
219
+ "RecursiveDirectoryIterator",
220
+ "RecursiveFilterIterator",
221
+ "RecursiveIterator",
222
+ "RecursiveIteratorIterator",
223
+ "RecursiveRegexIterator",
224
+ "RecursiveTreeIterator",
225
+ "RegexIterator",
226
+ "RuntimeException",
227
+ "SeekableIterator",
228
+ "SplDoublyLinkedList",
229
+ "SplFileInfo",
230
+ "SplFileObject",
231
+ "SplFixedArray",
232
+ "SplHeap",
233
+ "SplMaxHeap",
234
+ "SplMinHeap",
235
+ "SplObjectStorage",
236
+ "SplObserver",
237
+ "SplPriorityQueue",
238
+ "SplQueue",
239
+ "SplStack",
240
+ "SplSubject",
241
+ "SplTempFileObject",
242
+ "TypeError",
243
+ "UnderflowException",
244
+ "UnexpectedValueException",
245
+ "UnhandledMatchError",
246
+ // Reserved interfaces:
247
+ // <https://www.php.net/manual/en/reserved.interfaces.php>
248
+ "ArrayAccess",
249
+ "BackedEnum",
250
+ "Closure",
251
+ "Fiber",
252
+ "Generator",
253
+ "Iterator",
254
+ "IteratorAggregate",
255
+ "Serializable",
256
+ "Stringable",
257
+ "Throwable",
258
+ "Traversable",
259
+ "UnitEnum",
260
+ "WeakReference",
261
+ "WeakMap",
262
+ // Reserved classes:
263
+ // <https://www.php.net/manual/en/reserved.classes.php>
264
+ "Directory",
265
+ "__PHP_Incomplete_Class",
266
+ "parent",
267
+ "php_user_filter",
268
+ "self",
269
+ "static",
270
+ "stdClass"
271
+ ], b = {
272
+ keyword: T,
273
+ literal: ((n) => {
274
+ const a = [];
275
+ return n.forEach((c) => {
276
+ a.push(c), c.toLowerCase() === c ? a.push(c.toUpperCase()) : a.push(c.toLowerCase());
277
+ }), a;
278
+ })(d),
279
+ built_in: p
280
+ }, u = (n) => n.map((a) => a.replace(/\|\d+$/, "")), O = { variants: [
281
+ {
282
+ match: [
283
+ /new/,
284
+ t.concat(S, "+"),
285
+ // to prevent built ins from being confused as the class constructor call
286
+ t.concat("(?!", u(p).join("\\b|"), "\\b)"),
287
+ r
288
+ ],
289
+ scope: {
290
+ 1: "keyword",
291
+ 4: "title.class"
292
+ }
293
+ }
294
+ ] }, f = t.concat(o, "\\b(?!\\()"), l = { variants: [
295
+ {
296
+ match: [
297
+ t.concat(
298
+ /::/,
299
+ t.lookahead(/(?!class\b)/)
300
+ ),
301
+ f
302
+ ],
303
+ scope: { 2: "variable.constant" }
304
+ },
305
+ {
306
+ match: [
307
+ /::/,
308
+ /class/
309
+ ],
310
+ scope: { 2: "variable.language" }
311
+ },
312
+ {
313
+ match: [
314
+ r,
315
+ t.concat(
316
+ /::/,
317
+ t.lookahead(/(?!class\b)/)
318
+ ),
319
+ f
320
+ ],
321
+ scope: {
322
+ 1: "title.class",
323
+ 3: "variable.constant"
324
+ }
325
+ },
326
+ {
327
+ match: [
328
+ r,
329
+ t.concat(
330
+ "::",
331
+ t.lookahead(/(?!class\b)/)
332
+ )
333
+ ],
334
+ scope: { 1: "title.class" }
335
+ },
336
+ {
337
+ match: [
338
+ r,
339
+ /::/,
340
+ /class/
341
+ ],
342
+ scope: {
343
+ 1: "title.class",
344
+ 3: "variable.language"
345
+ }
346
+ }
347
+ ] }, C = {
348
+ scope: "attr",
349
+ match: t.concat(o, t.lookahead(":"), t.lookahead(/(?!::)/))
350
+ }, R = {
351
+ relevance: 0,
352
+ begin: /\(/,
353
+ end: /\)/,
354
+ keywords: b,
355
+ contains: [
356
+ C,
357
+ E,
358
+ l,
359
+ e.C_BLOCK_COMMENT_MODE,
360
+ i,
361
+ s,
362
+ O
363
+ ]
364
+ }, A = {
365
+ relevance: 0,
366
+ match: [
367
+ /\b/,
368
+ // to prevent keywords from being confused as the function title
369
+ t.concat("(?!fn\\b|function\\b|", u(T).join("\\b|"), "|", u(p).join("\\b|"), "\\b)"),
370
+ o,
371
+ t.concat(S, "*"),
372
+ t.lookahead(/(?=\()/)
373
+ ],
374
+ scope: { 3: "title.function.invoke" },
375
+ contains: [R]
376
+ };
377
+ R.contains.push(A);
378
+ const m = [
379
+ C,
380
+ l,
381
+ e.C_BLOCK_COMMENT_MODE,
382
+ i,
383
+ s,
384
+ O
385
+ ], v = {
386
+ begin: t.concat(
387
+ /#\[\s*\\?/,
388
+ t.either(
389
+ r,
390
+ I
391
+ )
392
+ ),
393
+ beginScope: "meta",
394
+ end: /]/,
395
+ endScope: "meta",
396
+ keywords: {
397
+ literal: d,
398
+ keyword: [
399
+ "new",
400
+ "array"
401
+ ]
402
+ },
403
+ contains: [
404
+ {
405
+ begin: /\[/,
406
+ end: /]/,
407
+ keywords: {
408
+ literal: d,
409
+ keyword: [
410
+ "new",
411
+ "array"
412
+ ]
413
+ },
414
+ contains: [
415
+ "self",
416
+ ...m
417
+ ]
418
+ },
419
+ ...m,
420
+ {
421
+ scope: "meta",
422
+ variants: [
423
+ { match: r },
424
+ { match: I }
425
+ ]
426
+ }
427
+ ]
428
+ };
429
+ return {
430
+ case_insensitive: !1,
431
+ keywords: b,
432
+ contains: [
433
+ v,
434
+ e.HASH_COMMENT_MODE,
435
+ e.COMMENT("//", "$"),
436
+ e.COMMENT(
437
+ "/\\*",
438
+ "\\*/",
439
+ { contains: [
440
+ {
441
+ scope: "doctag",
442
+ match: "@[A-Za-z]+"
443
+ }
444
+ ] }
445
+ ),
446
+ {
447
+ match: /__halt_compiler\(\);/,
448
+ keywords: "__halt_compiler",
449
+ starts: {
450
+ scope: "comment",
451
+ end: e.MATCH_NOTHING_RE,
452
+ contains: [
453
+ {
454
+ match: /\?>/,
455
+ scope: "meta",
456
+ endsParent: !0
457
+ }
458
+ ]
459
+ }
460
+ },
461
+ M,
462
+ {
463
+ scope: "variable.language",
464
+ match: /\$this\b/
465
+ },
466
+ E,
467
+ A,
468
+ l,
469
+ {
470
+ match: [
471
+ /const/,
472
+ /\s/,
473
+ o
474
+ ],
475
+ scope: {
476
+ 1: "keyword",
477
+ 3: "variable.constant"
478
+ }
479
+ },
480
+ O,
481
+ {
482
+ scope: "function",
483
+ relevance: 0,
484
+ beginKeywords: "fn function",
485
+ end: /[;{]/,
486
+ excludeEnd: !0,
487
+ illegal: "[$%\\[]",
488
+ contains: [
489
+ { beginKeywords: "use" },
490
+ e.UNDERSCORE_TITLE_MODE,
491
+ {
492
+ begin: "=>",
493
+ // No markup, just a relevance booster
494
+ endsParent: !0
495
+ },
496
+ {
497
+ scope: "params",
498
+ begin: "\\(",
499
+ end: "\\)",
500
+ excludeBegin: !0,
501
+ excludeEnd: !0,
502
+ keywords: b,
503
+ contains: [
504
+ "self",
505
+ v,
506
+ E,
507
+ l,
508
+ e.C_BLOCK_COMMENT_MODE,
509
+ i,
510
+ s
511
+ ]
512
+ }
513
+ ]
514
+ },
515
+ {
516
+ scope: "class",
517
+ variants: [
518
+ {
519
+ beginKeywords: "enum",
520
+ illegal: /[($"]/
521
+ },
522
+ {
523
+ beginKeywords: "class interface trait",
524
+ illegal: /[:($"]/
525
+ }
526
+ ],
527
+ relevance: 0,
528
+ end: /\{/,
529
+ excludeEnd: !0,
530
+ contains: [
531
+ { beginKeywords: "extends implements" },
532
+ e.UNDERSCORE_TITLE_MODE
533
+ ]
534
+ },
535
+ // both use and namespace still use "old style" rules (vs multi-match)
536
+ // because the namespace name can include `\` and we still want each
537
+ // element to be treated as its own *individual* title
538
+ {
539
+ beginKeywords: "namespace",
540
+ relevance: 0,
541
+ end: ";",
542
+ illegal: /[.']/,
543
+ contains: [e.inherit(e.UNDERSCORE_TITLE_MODE, { scope: "title.class" })]
544
+ },
545
+ {
546
+ beginKeywords: "use",
547
+ relevance: 0,
548
+ end: ";",
549
+ contains: [
550
+ // TODO: title.function vs title.class
551
+ {
552
+ match: /\b(as|const|function)\b/,
553
+ scope: "keyword"
554
+ },
555
+ // TODO: could be title.class or title.function
556
+ e.UNDERSCORE_TITLE_MODE
557
+ ]
558
+ },
559
+ i,
560
+ s
561
+ ]
562
+ };
563
+ }
564
+ export {
565
+ D as default
566
+ };