udxcms 1.0.10 → 1.0.11

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 (667) hide show
  1. package/dist/components/basicComponents/AdsBanner.vue +148 -0
  2. package/dist/components/basicComponents/AreaSelect.vue +38 -0
  3. package/dist/components/basicComponents/BaseMenu.vue +131 -0
  4. package/dist/components/basicComponents/BasePopup.vue +27 -0
  5. package/dist/components/basicComponents/CustomDate.vue +117 -0
  6. package/dist/components/basicComponents/Dashboard.vue +263 -0
  7. package/dist/components/basicComponents/DialogBox.vue +167 -0
  8. package/dist/components/basicComponents/ErrMsg.vue +49 -0
  9. package/dist/components/basicComponents/Fullpage.vue +186 -0
  10. package/dist/components/basicComponents/GtForm.vue +161 -0
  11. package/dist/components/basicComponents/Img.vue +34 -0
  12. package/dist/components/basicComponents/Input.vue +296 -0
  13. package/dist/components/basicComponents/LineProcess.vue +186 -0
  14. package/dist/components/basicComponents/ListTag.vue +169 -0
  15. package/dist/components/basicComponents/MenuTag.vue +64 -0
  16. package/dist/components/basicComponents/MessageTips.vue +108 -0
  17. package/dist/components/basicComponents/MsgTips.vue +66 -0
  18. package/dist/components/basicComponents/NoticeMess.vue +95 -0
  19. package/dist/components/basicComponents/Pages.vue +145 -0
  20. package/dist/components/basicComponents/ParentView.vue +10 -0
  21. package/dist/components/basicComponents/PortfolioMenu.vue +156 -0
  22. package/dist/components/basicComponents/PowxBread.vue +110 -0
  23. package/dist/components/basicComponents/SelectPop.vue +78 -0
  24. package/dist/components/basicComponents/SubComfirm.vue +153 -0
  25. package/dist/components/basicComponents/SvgIcon.vue +60 -0
  26. package/dist/components/basicComponents/TokenAmountSelect.vue +309 -0
  27. package/dist/components/basicComponents/UserMenu.vue +260 -0
  28. package/dist/components/basicComponents/WalletConnected.vue +179 -0
  29. package/dist/components/basicComponents/sModal.vue +59 -0
  30. package/dist/components/businessComponents/About.vue +757 -0
  31. package/dist/components/businessComponents/ChainNetWork.vue +365 -0
  32. package/dist/components/businessComponents/CoinSelectList.vue +291 -0
  33. package/dist/components/businessComponents/CountryList.vue +252 -0
  34. package/dist/components/businessComponents/Currency.vue +349 -0
  35. package/dist/components/businessComponents/CustomAnnounceModal.vue +204 -0
  36. package/dist/components/businessComponents/Flag.vue +45 -0
  37. package/dist/components/businessComponents/Footer.vue +374 -0
  38. package/dist/components/businessComponents/FooterPointx.vue +374 -0
  39. package/dist/components/businessComponents/Header.vue +169 -0
  40. package/dist/components/businessComponents/HeaderNetworkSelect.vue +42 -0
  41. package/dist/components/businessComponents/Language.vue +312 -0
  42. package/dist/components/businessComponents/List.vue +177 -0
  43. package/dist/components/businessComponents/ListSelect.vue +164 -0
  44. package/dist/components/businessComponents/LoadingDefault.vue +88 -0
  45. package/dist/components/businessComponents/LoadingDot.vue +118 -0
  46. package/dist/components/businessComponents/LoadingWallet.vue +42 -0
  47. package/dist/components/businessComponents/MarketChartmini.vue +148 -0
  48. package/dist/components/businessComponents/MediaList.vue +49 -0
  49. package/dist/components/businessComponents/Modal.vue +81 -0
  50. package/dist/components/businessComponents/NavInner.vue +80 -0
  51. package/dist/components/businessComponents/NetworkSelect.vue +345 -0
  52. package/dist/components/businessComponents/Networklist.vue +279 -0
  53. package/dist/components/businessComponents/NoticePanel.vue +239 -0
  54. package/dist/components/businessComponents/Partnermedias.vue +151 -0
  55. package/dist/components/businessComponents/SignaturePopup.vue +415 -0
  56. package/dist/components/businessComponents/SiteLoading.vue +71 -0
  57. package/dist/components/businessComponents/SiteLoadingTwo.vue +74 -0
  58. package/dist/components/businessComponents/SubMenuMore.vue +126 -0
  59. package/dist/components/businessComponents/TopMessage.vue +79 -0
  60. package/dist/components/businessComponents/TradeChainNetWork.vue +137 -0
  61. package/dist/components/businessComponents/userPanel.vue +358 -0
  62. package/dist/components/businessComponents/walletPanel.vue +241 -0
  63. package/dist/components/cmsComponents/academy/Academy.vue +414 -0
  64. package/dist/components/cmsComponents/academy/CmsAcademyJoinComunity.vue +202 -0
  65. package/dist/components/cmsComponents/academy/CmsAcademySectionOne.vue +229 -0
  66. package/dist/components/cmsComponents/academy/CmsArticleList.vue +173 -0
  67. package/dist/components/cmsComponents/academy/CmsArticleListGroupByTag.vue +262 -0
  68. package/dist/components/cmsComponents/academy/CmsArticleListWide.vue +155 -0
  69. package/dist/components/cmsComponents/academy/CmsDetail.vue +234 -0
  70. package/dist/components/cmsComponents/academy/CmsItem.vue +128 -0
  71. package/dist/components/cmsComponents/academy/categeItemThree.vue +137 -0
  72. package/dist/components/cmsComponents/academy/categeItemTwo.vue +161 -0
  73. package/dist/components/cmsComponents/api/ApiMain.vue +508 -0
  74. package/dist/components/cmsComponents/api/DocMain.vue +506 -0
  75. package/dist/components/cmsComponents/api/code.js +2 -4
  76. package/dist/components/cmsComponents/api/test.js +2 -4
  77. package/dist/components/cmsComponents/dapps/Dapp copy.vue +543 -0
  78. package/dist/components/cmsComponents/dapps/Dapp.vue +570 -0
  79. package/dist/components/cmsComponents/dapps/Dapplist.vue +219 -0
  80. package/dist/components/cmsComponents/help/Index.vue +540 -0
  81. package/dist/components/cmsComponents/help/detail.vue +119 -0
  82. package/dist/components/cmsComponents/paragen/SubMenu.vue +99 -0
  83. package/dist/components/cmsComponents/sdk/Logo.vue +75 -0
  84. package/dist/components/cmsComponents/sdk/NavBread.vue +104 -0
  85. package/dist/components/cmsComponents/sdk/SiderBar.vue +198 -0
  86. package/dist/components/cmsComponents/sdk/SiderBarItem.vue +60 -0
  87. package/dist/components/cmsComponents/sdk/TitleList.vue +74 -0
  88. package/dist/components/cmsComponents/sdk/demo/marked.js +1558 -0
  89. package/dist/components/cmsComponents/sdk/index.vue +1128 -0
  90. package/dist/components/cmsComponents/sdk/lib/highlight/lib/core.js +2051 -1836
  91. package/dist/components/cmsComponents/sdk/lib/highlight/lib/index.js +3 -1
  92. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/1c.js +509 -424
  93. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/abnf.js +77 -65
  94. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/accesslog.js +89 -84
  95. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/actionscript.js +86 -80
  96. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/ada.js +166 -149
  97. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/angelscript.js +109 -90
  98. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/apache.js +72 -69
  99. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/applescript.js +150 -125
  100. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/arcade.js +150 -144
  101. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/arduino.js +518 -475
  102. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/armasm.js +120 -112
  103. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/asciidoc.js +268 -244
  104. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/aspectj.js +154 -144
  105. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/autohotkey.js +73 -70
  106. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/autoit.js +160 -146
  107. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/avrasm.js +70 -63
  108. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/awk.js +63 -61
  109. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/axapta.js +166 -160
  110. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/bash.js +142 -133
  111. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/basic.js +55 -52
  112. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/bnf.js +27 -25
  113. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/brainfuck.js +36 -30
  114. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/c-like.js +444 -407
  115. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/c.js +267 -247
  116. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/cal.js +91 -77
  117. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/capnproto.js +53 -48
  118. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/ceylon.js +73 -67
  119. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/clean.js +30 -25
  120. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/clojure-repl.js +15 -13
  121. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/clojure.js +145 -134
  122. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/cmake.js +54 -52
  123. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/coffeescript.js +322 -304
  124. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/coq.js +69 -65
  125. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/cos.js +127 -119
  126. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/cpp.js +415 -383
  127. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/crmsh.js +91 -88
  128. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/crystal.js +299 -293
  129. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/csharp.js +416 -407
  130. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/csp.js +25 -23
  131. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/css.js +559 -547
  132. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/d.js +244 -215
  133. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/dart.js +183 -168
  134. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/delphi.js +115 -112
  135. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/diff.js +73 -71
  136. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/django.js +64 -59
  137. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/dns.js +36 -33
  138. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/dockerfile.js +22 -20
  139. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/dos.js +58 -51
  140. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/dsconfig.js +57 -54
  141. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/dts.js +136 -125
  142. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/dust.js +33 -31
  143. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/ebnf.js +43 -37
  144. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/elixir.js +223 -218
  145. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/elm.js +115 -98
  146. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/erb.js +16 -14
  147. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/erlang-repl.js +60 -52
  148. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/erlang.js +180 -171
  149. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/excel.js +54 -51
  150. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/fix.js +29 -27
  151. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/flix.js +45 -39
  152. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/fortran.js +132 -123
  153. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/fsharp.js +71 -67
  154. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/gams.js +175 -164
  155. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/gauss.js +294 -271
  156. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/gcode.js +77 -74
  157. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/gherkin.js +38 -36
  158. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/glsl.js +118 -115
  159. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/gml.js +875 -871
  160. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/go.js +61 -56
  161. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/golo.js +24 -20
  162. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/gradle.js +35 -31
  163. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/groovy.js +140 -126
  164. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/haml.js +102 -96
  165. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/handlebars.js +273 -232
  166. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/haskell.js +158 -143
  167. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/haxe.js +144 -138
  168. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/hsp.js +52 -45
  169. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/htmlbars.js +292 -245
  170. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/http.js +92 -87
  171. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/hy.js +99 -89
  172. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/inform7.js +59 -57
  173. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/ini.js +128 -115
  174. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/irpf90.js +111 -105
  175. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/isbl.js +3198 -2973
  176. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/java.js +160 -146
  177. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/javascript.js +543 -513
  178. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/jboss-cli.js +53 -51
  179. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/json.js +53 -51
  180. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/julia-repl.js +24 -22
  181. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/julia.js +406 -387
  182. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/kotlin.js +258 -236
  183. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/lasso.js +168 -159
  184. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/latex.js +234 -216
  185. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/ldif.js +33 -32
  186. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/leaf.js +39 -37
  187. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/less.js +633 -587
  188. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/lisp.js +100 -94
  189. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/livecodeserver.js +174 -169
  190. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/livescript.js +337 -319
  191. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/llvm.js +124 -118
  192. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/lsl.js +9 -1
  193. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/lua.js +70 -64
  194. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/makefile.js +82 -79
  195. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/markdown.js +228 -218
  196. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/mathematica.js +6752 -6731
  197. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/matlab.js +89 -84
  198. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/maxima.js +408 -402
  199. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/mel.js +226 -223
  200. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/mercury.js +109 -99
  201. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/mipsasm.js +98 -95
  202. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/mizar.js +19 -16
  203. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/mojolicious.js +25 -24
  204. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/monkey.js +78 -69
  205. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/moonscript.js +129 -122
  206. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/n1ql.js +65 -59
  207. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/nginx.js +123 -119
  208. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/nim.js +68 -63
  209. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/nix.js +56 -51
  210. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/node-repl.js +26 -24
  211. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/nsis.js +110 -93
  212. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/objectivec.js +109 -103
  213. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/ocaml.js +71 -62
  214. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/openscad.js +71 -68
  215. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/oxygene.js +87 -76
  216. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/parser3.js +47 -37
  217. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/perl.js +468 -441
  218. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/pf.js +49 -43
  219. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/pgsql.js +594 -574
  220. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/php-template.js +42 -40
  221. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/php.js +185 -175
  222. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/plaintext.js +10 -8
  223. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/pony.js +79 -66
  224. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/powershell.js +317 -273
  225. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/processing.js +48 -46
  226. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/profile.js +35 -33
  227. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/prolog.js +93 -73
  228. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/properties.js +69 -64
  229. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/protobuf.js +35 -33
  230. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/puppet.js +132 -124
  231. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/purebasic.js +67 -61
  232. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/python-repl.js +26 -24
  233. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/python.js +406 -389
  234. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/q.js +27 -20
  235. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/qml.js +190 -176
  236. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/r.js +187 -171
  237. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/reasonml.js +296 -277
  238. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/rib.js +27 -24
  239. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/roboconf.js +69 -62
  240. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/routeros.js +150 -139
  241. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/rsl.js +39 -35
  242. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/ruby.js +339 -314
  243. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/ruleslanguage.js +67 -63
  244. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/rust.js +132 -126
  245. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/sas.js +124 -114
  246. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/scala.js +126 -115
  247. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/scheme.js +188 -168
  248. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/scilab.js +60 -56
  249. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/scss.js +518 -508
  250. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/shell.js +19 -17
  251. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/smali.js +125 -119
  252. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/smalltalk.js +52 -50
  253. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/sml.js +70 -63
  254. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/sqf.js +436 -426
  255. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/sql.js +662 -643
  256. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/sql_more.js +162 -155
  257. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/stan.js +536 -525
  258. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/stata.js +45 -40
  259. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/step21.js +56 -53
  260. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/stylus.js +580 -553
  261. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/subunit.js +43 -41
  262. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/swift.js +770 -679
  263. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/taggerscript.js +43 -38
  264. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/tap.js +44 -42
  265. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/tcl.js +82 -68
  266. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/thrift.js +38 -33
  267. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/tp.js +85 -80
  268. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/twig.js +63 -54
  269. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/typescript.js +625 -587
  270. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/vala.js +52 -48
  271. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/vbnet.js +178 -156
  272. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/vbscript-html.js +13 -11
  273. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/vbscript.js +71 -58
  274. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/verilog.js +120 -113
  275. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/vhdl.js +61 -53
  276. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/vim.js +111 -107
  277. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/x86asm.js +152 -138
  278. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/xl.js +83 -75
  279. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/xml.js +230 -209
  280. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/xquery.js +179 -161
  281. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/yaml.js +164 -154
  282. package/dist/components/cmsComponents/sdk/lib/highlight/lib/languages/zephir.js +125 -118
  283. package/dist/components/cmsComponents/sdk/lib/highlight/styles/vs2015.css +115 -0
  284. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_AMS-Regular.ttf +0 -0
  285. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_AMS-Regular.woff +0 -0
  286. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  287. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  288. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  289. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  290. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  291. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  292. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  293. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  294. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  295. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  296. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  297. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  298. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  299. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-Bold.ttf +0 -0
  300. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-Bold.woff +0 -0
  301. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-Bold.woff2 +0 -0
  302. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  303. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  304. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  305. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-Italic.ttf +0 -0
  306. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-Italic.woff +0 -0
  307. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-Italic.woff2 +0 -0
  308. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-Regular.ttf +0 -0
  309. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-Regular.woff +0 -0
  310. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Main-Regular.woff2 +0 -0
  311. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  312. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  313. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  314. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Math-Italic.ttf +0 -0
  315. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Math-Italic.woff +0 -0
  316. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Math-Italic.woff2 +0 -0
  317. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  318. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  319. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  320. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  321. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  322. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  323. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  324. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  325. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  326. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Script-Regular.ttf +0 -0
  327. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Script-Regular.woff +0 -0
  328. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Script-Regular.woff2 +0 -0
  329. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size1-Regular.ttf +0 -0
  330. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size1-Regular.woff +0 -0
  331. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  332. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size2-Regular.ttf +0 -0
  333. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size2-Regular.woff +0 -0
  334. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  335. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size3-Regular.ttf +0 -0
  336. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size3-Regular.woff +0 -0
  337. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  338. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size4-Regular.ttf +0 -0
  339. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size4-Regular.woff +0 -0
  340. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  341. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  342. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  343. package/dist/components/cmsComponents/sdk/lib/katex/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  344. package/dist/components/cmsComponents/sdk/lib/katex/katex.min.css +1 -0
  345. package/dist/components/cmsComponents/sdk/lib/katex/katex.min.js +1 -0
  346. package/dist/components/cmsComponents/sdk/typora-lark.css +440 -0
  347. package/dist/components/cmsComponents/wiki/Logo.vue +75 -0
  348. package/dist/components/cmsComponents/wiki/NavBread.vue +104 -0
  349. package/dist/components/cmsComponents/wiki/SiderBar.vue +206 -0
  350. package/dist/components/cmsComponents/wiki/SiderBarItem.vue +60 -0
  351. package/dist/components/cmsComponents/wiki/TitleList.vue +74 -0
  352. package/dist/components/cmsComponents/wiki/Wiki.vue +1143 -0
  353. package/dist/components/cmsComponents/wiki/demo/marked.js +1558 -0
  354. package/dist/components/cmsComponents/wiki/lib/highlight/lib/core.js +2051 -1836
  355. package/dist/components/cmsComponents/wiki/lib/highlight/lib/index.js +3 -1
  356. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/1c.js +509 -424
  357. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/abnf.js +77 -65
  358. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/accesslog.js +89 -84
  359. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/actionscript.js +86 -80
  360. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/ada.js +166 -149
  361. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/angelscript.js +109 -90
  362. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/apache.js +72 -69
  363. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/applescript.js +150 -125
  364. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/arcade.js +150 -144
  365. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/arduino.js +518 -475
  366. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/armasm.js +120 -112
  367. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/asciidoc.js +268 -244
  368. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/aspectj.js +154 -144
  369. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/autohotkey.js +73 -70
  370. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/autoit.js +160 -146
  371. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/avrasm.js +70 -63
  372. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/awk.js +63 -61
  373. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/axapta.js +166 -160
  374. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/bash.js +142 -133
  375. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/basic.js +55 -52
  376. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/bnf.js +27 -25
  377. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/brainfuck.js +36 -30
  378. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/c-like.js +444 -407
  379. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/c.js +267 -247
  380. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/cal.js +91 -77
  381. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/capnproto.js +53 -48
  382. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/ceylon.js +73 -67
  383. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/clean.js +30 -25
  384. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/clojure-repl.js +15 -13
  385. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/clojure.js +145 -134
  386. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/cmake.js +54 -52
  387. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/coffeescript.js +322 -304
  388. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/coq.js +69 -65
  389. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/cos.js +127 -119
  390. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/cpp.js +415 -383
  391. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/crmsh.js +91 -88
  392. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/crystal.js +299 -293
  393. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/csharp.js +416 -407
  394. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/csp.js +25 -23
  395. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/css.js +559 -547
  396. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/d.js +244 -215
  397. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/dart.js +183 -168
  398. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/delphi.js +115 -112
  399. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/diff.js +73 -71
  400. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/django.js +64 -59
  401. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/dns.js +36 -33
  402. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/dockerfile.js +22 -20
  403. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/dos.js +58 -51
  404. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/dsconfig.js +57 -54
  405. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/dts.js +136 -125
  406. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/dust.js +33 -31
  407. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/ebnf.js +43 -37
  408. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/elixir.js +223 -218
  409. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/elm.js +115 -98
  410. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/erb.js +16 -14
  411. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/erlang-repl.js +60 -52
  412. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/erlang.js +180 -171
  413. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/excel.js +54 -51
  414. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/fix.js +29 -27
  415. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/flix.js +45 -39
  416. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/fortran.js +132 -123
  417. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/fsharp.js +71 -67
  418. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/gams.js +175 -164
  419. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/gauss.js +294 -271
  420. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/gcode.js +77 -74
  421. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/gherkin.js +38 -36
  422. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/glsl.js +118 -115
  423. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/gml.js +875 -871
  424. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/go.js +61 -56
  425. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/golo.js +24 -20
  426. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/gradle.js +35 -31
  427. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/groovy.js +140 -126
  428. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/haml.js +102 -96
  429. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/handlebars.js +273 -232
  430. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/haskell.js +158 -143
  431. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/haxe.js +144 -138
  432. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/hsp.js +52 -45
  433. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/htmlbars.js +292 -245
  434. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/http.js +92 -87
  435. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/hy.js +99 -89
  436. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/inform7.js +59 -57
  437. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/ini.js +128 -115
  438. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/irpf90.js +111 -105
  439. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/isbl.js +3198 -2973
  440. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/java.js +160 -146
  441. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/javascript.js +543 -513
  442. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/jboss-cli.js +53 -51
  443. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/json.js +53 -51
  444. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/julia-repl.js +24 -22
  445. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/julia.js +406 -387
  446. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/kotlin.js +258 -236
  447. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/lasso.js +168 -159
  448. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/latex.js +234 -216
  449. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/ldif.js +33 -32
  450. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/leaf.js +39 -37
  451. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/less.js +633 -587
  452. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/lisp.js +100 -94
  453. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/livecodeserver.js +174 -169
  454. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/livescript.js +337 -319
  455. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/llvm.js +124 -118
  456. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/lsl.js +9 -1
  457. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/lua.js +70 -64
  458. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/makefile.js +82 -79
  459. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/markdown.js +228 -218
  460. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/mathematica.js +6752 -6731
  461. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/matlab.js +89 -84
  462. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/maxima.js +408 -402
  463. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/mel.js +226 -223
  464. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/mercury.js +109 -99
  465. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/mipsasm.js +98 -95
  466. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/mizar.js +19 -16
  467. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/mojolicious.js +25 -24
  468. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/monkey.js +78 -69
  469. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/moonscript.js +129 -122
  470. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/n1ql.js +65 -59
  471. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/nginx.js +123 -119
  472. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/nim.js +68 -63
  473. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/nix.js +56 -51
  474. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/node-repl.js +26 -24
  475. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/nsis.js +110 -93
  476. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/objectivec.js +109 -103
  477. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/ocaml.js +71 -62
  478. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/openscad.js +71 -68
  479. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/oxygene.js +87 -76
  480. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/parser3.js +47 -37
  481. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/perl.js +468 -441
  482. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/pf.js +49 -43
  483. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/pgsql.js +594 -574
  484. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/php-template.js +42 -40
  485. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/php.js +185 -175
  486. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/plaintext.js +10 -8
  487. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/pony.js +79 -66
  488. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/powershell.js +317 -273
  489. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/processing.js +48 -46
  490. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/profile.js +35 -33
  491. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/prolog.js +93 -73
  492. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/properties.js +69 -64
  493. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/protobuf.js +35 -33
  494. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/puppet.js +132 -124
  495. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/purebasic.js +67 -61
  496. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/python-repl.js +26 -24
  497. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/python.js +406 -389
  498. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/q.js +27 -20
  499. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/qml.js +190 -176
  500. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/r.js +187 -171
  501. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/reasonml.js +296 -277
  502. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/rib.js +27 -24
  503. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/roboconf.js +69 -62
  504. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/routeros.js +150 -139
  505. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/rsl.js +39 -35
  506. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/ruby.js +339 -314
  507. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/ruleslanguage.js +67 -63
  508. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/rust.js +132 -126
  509. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/sas.js +124 -114
  510. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/scala.js +126 -115
  511. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/scheme.js +188 -168
  512. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/scilab.js +60 -56
  513. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/scss.js +518 -508
  514. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/shell.js +19 -17
  515. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/smali.js +125 -119
  516. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/smalltalk.js +52 -50
  517. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/sml.js +70 -63
  518. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/sqf.js +436 -426
  519. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/sql.js +662 -643
  520. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/sql_more.js +162 -155
  521. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/stan.js +536 -525
  522. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/stata.js +45 -40
  523. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/step21.js +56 -53
  524. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/stylus.js +580 -553
  525. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/subunit.js +43 -41
  526. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/swift.js +770 -679
  527. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/taggerscript.js +43 -38
  528. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/tap.js +44 -42
  529. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/tcl.js +82 -68
  530. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/thrift.js +38 -33
  531. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/tp.js +85 -80
  532. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/twig.js +63 -54
  533. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/typescript.js +625 -587
  534. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/vala.js +52 -48
  535. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/vbnet.js +178 -156
  536. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/vbscript-html.js +13 -11
  537. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/vbscript.js +71 -58
  538. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/verilog.js +120 -113
  539. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/vhdl.js +61 -53
  540. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/vim.js +111 -107
  541. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/x86asm.js +152 -138
  542. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/xl.js +83 -75
  543. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/xml.js +230 -209
  544. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/xquery.js +179 -161
  545. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/yaml.js +164 -154
  546. package/dist/components/cmsComponents/wiki/lib/highlight/lib/languages/zephir.js +125 -118
  547. package/dist/components/cmsComponents/wiki/lib/highlight/styles/vs2015.css +115 -0
  548. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_AMS-Regular.ttf +0 -0
  549. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_AMS-Regular.woff +0 -0
  550. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  551. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  552. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  553. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  554. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  555. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  556. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  557. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  558. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  559. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  560. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  561. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  562. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  563. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-Bold.ttf +0 -0
  564. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-Bold.woff +0 -0
  565. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-Bold.woff2 +0 -0
  566. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  567. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  568. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  569. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-Italic.ttf +0 -0
  570. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-Italic.woff +0 -0
  571. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-Italic.woff2 +0 -0
  572. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-Regular.ttf +0 -0
  573. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-Regular.woff +0 -0
  574. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Main-Regular.woff2 +0 -0
  575. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  576. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  577. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  578. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Math-Italic.ttf +0 -0
  579. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Math-Italic.woff +0 -0
  580. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Math-Italic.woff2 +0 -0
  581. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  582. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  583. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  584. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  585. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  586. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  587. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  588. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  589. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  590. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Script-Regular.ttf +0 -0
  591. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Script-Regular.woff +0 -0
  592. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Script-Regular.woff2 +0 -0
  593. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size1-Regular.ttf +0 -0
  594. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size1-Regular.woff +0 -0
  595. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  596. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size2-Regular.ttf +0 -0
  597. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size2-Regular.woff +0 -0
  598. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  599. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size3-Regular.ttf +0 -0
  600. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size3-Regular.woff +0 -0
  601. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  602. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size4-Regular.ttf +0 -0
  603. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size4-Regular.woff +0 -0
  604. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  605. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  606. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  607. package/dist/components/cmsComponents/wiki/lib/katex/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  608. package/dist/components/cmsComponents/wiki/lib/katex/katex.min.css +1 -0
  609. package/dist/components/cmsComponents/wiki/lib/katex/katex.min.js +1 -0
  610. package/dist/components/cmsComponents/wiki/typora-lark.css +440 -0
  611. package/dist/components/h5Components/ChainNetH5Work.vue +250 -0
  612. package/dist/components/h5Components/DateH5.vue +79 -0
  613. package/dist/components/h5Components/GoHistory.vue +83 -0
  614. package/dist/components/h5Components/Language.vue +115 -0
  615. package/dist/components/h5Components/ListSelectH5.vue +63 -0
  616. package/dist/components/h5Components/Menu.vue +449 -0
  617. package/dist/components/h5Components/NavCenter.vue +194 -0
  618. package/dist/components/h5Components/NoRecord.vue +52 -0
  619. package/dist/components/h5Components/NoticeModule.vue +83 -0
  620. package/dist/components/h5Components/OtherNav.vue +115 -0
  621. package/dist/components/h5Components/PopList.vue +82 -0
  622. package/dist/components/h5Components/SearchInput.vue +54 -0
  623. package/dist/components/h5Components/SvgCircle.vue +104 -0
  624. package/dist/components/h5Components/Top.vue +648 -0
  625. package/dist/components/h5Components/walletconnectBottom.vue +667 -0
  626. package/dist/components/index.js +115 -220
  627. package/dist/components/pageComponents/academy/academy_mobi.vue +181 -0
  628. package/dist/components/pageComponents/academy/academy_wallet.vue +202 -0
  629. package/dist/components/pageComponents/h5/IndexCommon.vue +896 -0
  630. package/dist/components/pageComponents/h5/IndexWallet.vue +225 -0
  631. package/dist/components/pageComponents/header/header_2mr.vue +590 -0
  632. package/dist/components/pageComponents/header/header_a.vue +1246 -0
  633. package/dist/components/pageComponents/header/header_auction.vue +1842 -0
  634. package/dist/components/pageComponents/header/header_b.vue +621 -0
  635. package/dist/components/pageComponents/header/header_b1.vue +1821 -0
  636. package/dist/components/pageComponents/header/header_bridge.vue +516 -0
  637. package/dist/components/pageComponents/header/header_c.vue +1629 -0
  638. package/dist/components/pageComponents/header/header_dex.vue +1967 -0
  639. package/dist/components/pageComponents/header/header_dtx.vue +1744 -0
  640. package/dist/components/pageComponents/header/header_dtx2.vue +482 -0
  641. package/dist/components/pageComponents/header/header_insure.vue +1326 -0
  642. package/dist/components/pageComponents/header/header_lending.vue +351 -0
  643. package/dist/components/pageComponents/header/header_morse.vue +673 -0
  644. package/dist/components/pageComponents/header/header_morse_wallet.vue +582 -0
  645. package/dist/components/pageComponents/header/header_paragen.vue +391 -0
  646. package/dist/components/pageComponents/header/header_pointx.vue +472 -0
  647. package/dist/components/pageComponents/header/header_vortex.vue +609 -0
  648. package/dist/components/pageComponents/index/IndexBlank.vue +16 -0
  649. package/dist/components/pageComponents/index/IndexBridge.vue +114 -0
  650. package/dist/components/pageComponents/index/IndexCommon.vue +1475 -0
  651. package/dist/components/pageComponents/index/IndexDemo.vue +1419 -0
  652. package/dist/components/pageComponents/index/IndexDex.vue +1686 -0
  653. package/dist/components/pageComponents/index/IndexExchange.vue +490 -0
  654. package/dist/components/pageComponents/index/IndexMorse.vue +2007 -0
  655. package/dist/components/pageComponents/index/IndexMorseNew.vue +845 -0
  656. package/dist/components/pageComponents/index/IndexNextpublic.vue +26 -0
  657. package/dist/components/pageComponents/index/IndexOrbits.vue +1262 -0
  658. package/dist/components/pageComponents/index/IndexPointx.vue +491 -0
  659. package/dist/components/pageComponents/index/IndexVortex.vue +1715 -0
  660. package/dist/components/pageComponents/index/IndexWallet.vue +696 -0
  661. package/dist/components/pageComponents/index/component/DexFooter.vue +141 -0
  662. package/dist/components/pageComponents/index/component/SubComfirm.vue +128 -0
  663. package/dist/components/pageComponents/index/component/bridge-page.vue +82 -0
  664. package/dist/components/pageComponents/index/component/campaigns-item.vue +129 -0
  665. package/dist/components/pageComponents/index/component/exbang-two.vue +75 -0
  666. package/dist/components/pageComponents/index/component/space-item.vue +119 -0
  667. package/package.json +2 -2
@@ -2,32 +2,35 @@
2
2
  * @param {string} value
3
3
  * @returns {RegExp}
4
4
  * */
5
+
5
6
  /**
6
7
  * @param {RegExp | string } re
7
8
  * @returns {string}
8
9
  */
9
10
  function source(re) {
10
- if (!re)
11
- return null;
12
- if (typeof re === "string")
13
- return re;
14
- return re.source;
11
+ if (!re) return null;
12
+ if (typeof re === "string") return re;
13
+
14
+ return re.source;
15
15
  }
16
+
16
17
  /**
17
18
  * @param {RegExp | string } re
18
19
  * @returns {string}
19
20
  */
20
21
  function lookahead(re) {
21
- return concat('(?=', re, ')');
22
+ return concat('(?=', re, ')');
22
23
  }
24
+
23
25
  /**
24
26
  * @param {...(RegExp | string) } args
25
27
  * @returns {string}
26
28
  */
27
29
  function concat(...args) {
28
- const joined = args.map((x) => source(x)).join("");
29
- return joined;
30
+ const joined = args.map((x) => source(x)).join("");
31
+ return joined;
30
32
  }
33
+
31
34
  /**
32
35
  * Any of the passed expresssions may match
33
36
  *
@@ -36,261 +39,325 @@ function concat(...args) {
36
39
  * @returns {string}
37
40
  */
38
41
  function either(...args) {
39
- const joined = '(' + args.map((x) => source(x)).join("|") + ")";
40
- return joined;
42
+ const joined = '(' + args.map((x) => source(x)).join("|") + ")";
43
+ return joined;
41
44
  }
42
- const keywordWrapper = keyword => concat(/\b/, keyword, /\w$/.test(keyword) ? /\b/ : /\B/);
45
+
46
+ const keywordWrapper = keyword => concat(
47
+ /\b/,
48
+ keyword,
49
+ /\w$/.test(keyword) ? /\b/ : /\B/
50
+ );
51
+
43
52
  // Keywords that require a leading dot.
44
53
  const dotKeywords = [
45
- 'Protocol', // contextual
46
- 'Type' // contextual
54
+ 'Protocol', // contextual
55
+ 'Type' // contextual
47
56
  ].map(keywordWrapper);
57
+
48
58
  // Keywords that may have a leading dot.
49
59
  const optionalDotKeywords = [
50
- 'init',
51
- 'self'
60
+ 'init',
61
+ 'self'
52
62
  ].map(keywordWrapper);
63
+
53
64
  // should register as keyword, not type
54
65
  const keywordTypes = [
55
- 'Any',
56
- 'Self'
66
+ 'Any',
67
+ 'Self'
57
68
  ];
69
+
58
70
  // Regular keywords and literals.
59
71
  const keywords = [
60
- // strings below will be fed into the regular `keywords` engine while regex
61
- // will result in additional modes being created to scan for those keywords to
62
- // avoid conflicts with other rules
63
- 'associatedtype',
64
- 'async',
65
- 'await',
66
- /as\?/, // operator
67
- /as!/, // operator
68
- 'as', // operator
69
- 'break',
70
- 'case',
71
- 'catch',
72
- 'class',
73
- 'continue',
74
- 'convenience', // contextual
75
- 'default',
76
- 'defer',
77
- 'deinit',
78
- 'didSet', // contextual
79
- 'do',
80
- 'dynamic', // contextual
81
- 'else',
82
- 'enum',
83
- 'extension',
84
- 'fallthrough',
85
- /fileprivate\(set\)/,
86
- 'fileprivate',
87
- 'final', // contextual
88
- 'for',
89
- 'func',
90
- 'get', // contextual
91
- 'guard',
92
- 'if',
93
- 'import',
94
- 'indirect', // contextual
95
- 'infix', // contextual
96
- /init\?/,
97
- /init!/,
98
- 'inout',
99
- /internal\(set\)/,
100
- 'internal',
101
- 'in',
102
- 'is', // operator
103
- 'lazy', // contextual
104
- 'let',
105
- 'mutating', // contextual
106
- 'nonmutating', // contextual
107
- /open\(set\)/, // contextual
108
- 'open', // contextual
109
- 'operator',
110
- 'optional', // contextual
111
- 'override', // contextual
112
- 'postfix', // contextual
113
- 'precedencegroup',
114
- 'prefix', // contextual
115
- /private\(set\)/,
116
- 'private',
117
- 'protocol',
118
- /public\(set\)/,
119
- 'public',
120
- 'repeat',
121
- 'required', // contextual
122
- 'rethrows',
123
- 'return',
124
- 'set', // contextual
125
- 'some', // contextual
126
- 'static',
127
- 'struct',
128
- 'subscript',
129
- 'super',
130
- 'switch',
131
- 'throws',
132
- 'throw',
133
- /try\?/, // operator
134
- /try!/, // operator
135
- 'try', // operator
136
- 'typealias',
137
- /unowned\(safe\)/, // contextual
138
- /unowned\(unsafe\)/, // contextual
139
- 'unowned', // contextual
140
- 'var',
141
- 'weak', // contextual
142
- 'where',
143
- 'while',
144
- 'willSet' // contextual
72
+ // strings below will be fed into the regular `keywords` engine while regex
73
+ // will result in additional modes being created to scan for those keywords to
74
+ // avoid conflicts with other rules
75
+ 'associatedtype',
76
+ 'async',
77
+ 'await',
78
+ /as\?/, // operator
79
+ /as!/, // operator
80
+ 'as', // operator
81
+ 'break',
82
+ 'case',
83
+ 'catch',
84
+ 'class',
85
+ 'continue',
86
+ 'convenience', // contextual
87
+ 'default',
88
+ 'defer',
89
+ 'deinit',
90
+ 'didSet', // contextual
91
+ 'do',
92
+ 'dynamic', // contextual
93
+ 'else',
94
+ 'enum',
95
+ 'extension',
96
+ 'fallthrough',
97
+ /fileprivate\(set\)/,
98
+ 'fileprivate',
99
+ 'final', // contextual
100
+ 'for',
101
+ 'func',
102
+ 'get', // contextual
103
+ 'guard',
104
+ 'if',
105
+ 'import',
106
+ 'indirect', // contextual
107
+ 'infix', // contextual
108
+ /init\?/,
109
+ /init!/,
110
+ 'inout',
111
+ /internal\(set\)/,
112
+ 'internal',
113
+ 'in',
114
+ 'is', // operator
115
+ 'lazy', // contextual
116
+ 'let',
117
+ 'mutating', // contextual
118
+ 'nonmutating', // contextual
119
+ /open\(set\)/, // contextual
120
+ 'open', // contextual
121
+ 'operator',
122
+ 'optional', // contextual
123
+ 'override', // contextual
124
+ 'postfix', // contextual
125
+ 'precedencegroup',
126
+ 'prefix', // contextual
127
+ /private\(set\)/,
128
+ 'private',
129
+ 'protocol',
130
+ /public\(set\)/,
131
+ 'public',
132
+ 'repeat',
133
+ 'required', // contextual
134
+ 'rethrows',
135
+ 'return',
136
+ 'set', // contextual
137
+ 'some', // contextual
138
+ 'static',
139
+ 'struct',
140
+ 'subscript',
141
+ 'super',
142
+ 'switch',
143
+ 'throws',
144
+ 'throw',
145
+ /try\?/, // operator
146
+ /try!/, // operator
147
+ 'try', // operator
148
+ 'typealias',
149
+ /unowned\(safe\)/, // contextual
150
+ /unowned\(unsafe\)/, // contextual
151
+ 'unowned', // contextual
152
+ 'var',
153
+ 'weak', // contextual
154
+ 'where',
155
+ 'while',
156
+ 'willSet' // contextual
145
157
  ];
158
+
146
159
  // NOTE: Contextual keywords are reserved only in specific contexts.
147
160
  // Ideally, these should be matched using modes to avoid false positives.
161
+
148
162
  // Literals.
149
163
  const literals = [
150
- 'false',
151
- 'nil',
152
- 'true'
164
+ 'false',
165
+ 'nil',
166
+ 'true'
153
167
  ];
168
+
154
169
  // Keywords used in precedence groups.
155
170
  const precedencegroupKeywords = [
156
- 'assignment',
157
- 'associativity',
158
- 'higherThan',
159
- 'left',
160
- 'lowerThan',
161
- 'none',
162
- 'right'
171
+ 'assignment',
172
+ 'associativity',
173
+ 'higherThan',
174
+ 'left',
175
+ 'lowerThan',
176
+ 'none',
177
+ 'right'
163
178
  ];
179
+
164
180
  // Keywords that start with a number sign (#).
165
181
  // #available is handled separately.
166
182
  const numberSignKeywords = [
167
- '#colorLiteral',
168
- '#column',
169
- '#dsohandle',
170
- '#else',
171
- '#elseif',
172
- '#endif',
173
- '#error',
174
- '#file',
175
- '#fileID',
176
- '#fileLiteral',
177
- '#filePath',
178
- '#function',
179
- '#if',
180
- '#imageLiteral',
181
- '#keyPath',
182
- '#line',
183
- '#selector',
184
- '#sourceLocation',
185
- '#warn_unqualified_access',
186
- '#warning'
183
+ '#colorLiteral',
184
+ '#column',
185
+ '#dsohandle',
186
+ '#else',
187
+ '#elseif',
188
+ '#endif',
189
+ '#error',
190
+ '#file',
191
+ '#fileID',
192
+ '#fileLiteral',
193
+ '#filePath',
194
+ '#function',
195
+ '#if',
196
+ '#imageLiteral',
197
+ '#keyPath',
198
+ '#line',
199
+ '#selector',
200
+ '#sourceLocation',
201
+ '#warn_unqualified_access',
202
+ '#warning'
187
203
  ];
204
+
188
205
  // Global functions in the Standard Library.
189
206
  const builtIns = [
190
- 'abs',
191
- 'all',
192
- 'any',
193
- 'assert',
194
- 'assertionFailure',
195
- 'debugPrint',
196
- 'dump',
197
- 'fatalError',
198
- 'getVaList',
199
- 'isKnownUniquelyReferenced',
200
- 'max',
201
- 'min',
202
- 'numericCast',
203
- 'pointwiseMax',
204
- 'pointwiseMin',
205
- 'precondition',
206
- 'preconditionFailure',
207
- 'print',
208
- 'readLine',
209
- 'repeatElement',
210
- 'sequence',
211
- 'stride',
212
- 'swap',
213
- 'swift_unboxFromSwiftValueWithType',
214
- 'transcode',
215
- 'type',
216
- 'unsafeBitCast',
217
- 'unsafeDowncast',
218
- 'withExtendedLifetime',
219
- 'withUnsafeMutablePointer',
220
- 'withUnsafePointer',
221
- 'withVaList',
222
- 'withoutActuallyEscaping',
223
- 'zip'
207
+ 'abs',
208
+ 'all',
209
+ 'any',
210
+ 'assert',
211
+ 'assertionFailure',
212
+ 'debugPrint',
213
+ 'dump',
214
+ 'fatalError',
215
+ 'getVaList',
216
+ 'isKnownUniquelyReferenced',
217
+ 'max',
218
+ 'min',
219
+ 'numericCast',
220
+ 'pointwiseMax',
221
+ 'pointwiseMin',
222
+ 'precondition',
223
+ 'preconditionFailure',
224
+ 'print',
225
+ 'readLine',
226
+ 'repeatElement',
227
+ 'sequence',
228
+ 'stride',
229
+ 'swap',
230
+ 'swift_unboxFromSwiftValueWithType',
231
+ 'transcode',
232
+ 'type',
233
+ 'unsafeBitCast',
234
+ 'unsafeDowncast',
235
+ 'withExtendedLifetime',
236
+ 'withUnsafeMutablePointer',
237
+ 'withUnsafePointer',
238
+ 'withVaList',
239
+ 'withoutActuallyEscaping',
240
+ 'zip'
224
241
  ];
242
+
225
243
  // Valid first characters for operators.
226
- const operatorHead = either(/[/=\-+!*%<>&|^~?]/, /[\u00A1-\u00A7]/, /[\u00A9\u00AB]/, /[\u00AC\u00AE]/, /[\u00B0\u00B1]/, /[\u00B6\u00BB\u00BF\u00D7\u00F7]/, /[\u2016-\u2017]/, /[\u2020-\u2027]/, /[\u2030-\u203E]/, /[\u2041-\u2053]/, /[\u2055-\u205E]/, /[\u2190-\u23FF]/, /[\u2500-\u2775]/, /[\u2794-\u2BFF]/, /[\u2E00-\u2E7F]/, /[\u3001-\u3003]/, /[\u3008-\u3020]/, /[\u3030]/);
244
+ const operatorHead = either(
245
+ /[/=\-+!*%<>&|^~?]/,
246
+ /[\u00A1-\u00A7]/,
247
+ /[\u00A9\u00AB]/,
248
+ /[\u00AC\u00AE]/,
249
+ /[\u00B0\u00B1]/,
250
+ /[\u00B6\u00BB\u00BF\u00D7\u00F7]/,
251
+ /[\u2016-\u2017]/,
252
+ /[\u2020-\u2027]/,
253
+ /[\u2030-\u203E]/,
254
+ /[\u2041-\u2053]/,
255
+ /[\u2055-\u205E]/,
256
+ /[\u2190-\u23FF]/,
257
+ /[\u2500-\u2775]/,
258
+ /[\u2794-\u2BFF]/,
259
+ /[\u2E00-\u2E7F]/,
260
+ /[\u3001-\u3003]/,
261
+ /[\u3008-\u3020]/,
262
+ /[\u3030]/
263
+ );
264
+
227
265
  // Valid characters for operators.
228
- const operatorCharacter = either(operatorHead, /[\u0300-\u036F]/, /[\u1DC0-\u1DFF]/, /[\u20D0-\u20FF]/, /[\uFE00-\uFE0F]/, /[\uFE20-\uFE2F]/
229
- // TODO: The following characters are also allowed, but the regex isn't supported yet.
230
- // /[\u{E0100}-\u{E01EF}]/u
266
+ const operatorCharacter = either(
267
+ operatorHead,
268
+ /[\u0300-\u036F]/,
269
+ /[\u1DC0-\u1DFF]/,
270
+ /[\u20D0-\u20FF]/,
271
+ /[\uFE00-\uFE0F]/,
272
+ /[\uFE20-\uFE2F]/
273
+ // TODO: The following characters are also allowed, but the regex isn't supported yet.
274
+ // /[\u{E0100}-\u{E01EF}]/u
231
275
  );
276
+
232
277
  // Valid operator.
233
278
  const operator = concat(operatorHead, operatorCharacter, '*');
279
+
234
280
  // Valid first characters for identifiers.
235
- const identifierHead = either(/[a-zA-Z_]/, /[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/, /[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/, /[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/, /[\u1E00-\u1FFF]/, /[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/, /[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/, /[\u2C00-\u2DFF\u2E80-\u2FFF]/, /[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/, /[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/, /[\uFE47-\uFEFE\uFF00-\uFFFD]/ // Should be /[\uFE47-\uFFFD]/, but we have to exclude FEFF.
236
- // The following characters are also allowed, but the regexes aren't supported yet.
237
- // /[\u{10000}-\u{1FFFD}\u{20000-\u{2FFFD}\u{30000}-\u{3FFFD}\u{40000}-\u{4FFFD}]/u,
238
- // /[\u{50000}-\u{5FFFD}\u{60000-\u{6FFFD}\u{70000}-\u{7FFFD}\u{80000}-\u{8FFFD}]/u,
239
- // /[\u{90000}-\u{9FFFD}\u{A0000-\u{AFFFD}\u{B0000}-\u{BFFFD}\u{C0000}-\u{CFFFD}]/u,
240
- // /[\u{D0000}-\u{DFFFD}\u{E0000-\u{EFFFD}]/u
281
+ const identifierHead = either(
282
+ /[a-zA-Z_]/,
283
+ /[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,
284
+ /[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,
285
+ /[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,
286
+ /[\u1E00-\u1FFF]/,
287
+ /[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,
288
+ /[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,
289
+ /[\u2C00-\u2DFF\u2E80-\u2FFF]/,
290
+ /[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,
291
+ /[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,
292
+ /[\uFE47-\uFEFE\uFF00-\uFFFD]/ // Should be /[\uFE47-\uFFFD]/, but we have to exclude FEFF.
293
+ // The following characters are also allowed, but the regexes aren't supported yet.
294
+ // /[\u{10000}-\u{1FFFD}\u{20000-\u{2FFFD}\u{30000}-\u{3FFFD}\u{40000}-\u{4FFFD}]/u,
295
+ // /[\u{50000}-\u{5FFFD}\u{60000-\u{6FFFD}\u{70000}-\u{7FFFD}\u{80000}-\u{8FFFD}]/u,
296
+ // /[\u{90000}-\u{9FFFD}\u{A0000-\u{AFFFD}\u{B0000}-\u{BFFFD}\u{C0000}-\u{CFFFD}]/u,
297
+ // /[\u{D0000}-\u{DFFFD}\u{E0000-\u{EFFFD}]/u
241
298
  );
299
+
242
300
  // Valid characters for identifiers.
243
- const identifierCharacter = either(identifierHead, /\d/, /[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/);
301
+ const identifierCharacter = either(
302
+ identifierHead,
303
+ /\d/,
304
+ /[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/
305
+ );
306
+
244
307
  // Valid identifier.
245
308
  const identifier = concat(identifierHead, identifierCharacter, '*');
309
+
246
310
  // Valid type identifier.
247
311
  const typeIdentifier = concat(/[A-Z]/, identifierCharacter, '*');
312
+
248
313
  // Built-in attributes, which are highlighted as keywords.
249
314
  // @available is handled separately.
250
315
  const keywordAttributes = [
251
- 'autoclosure',
252
- concat(/convention\(/, either('swift', 'block', 'c'), /\)/),
253
- 'discardableResult',
254
- 'dynamicCallable',
255
- 'dynamicMemberLookup',
256
- 'escaping',
257
- 'frozen',
258
- 'GKInspectable',
259
- 'IBAction',
260
- 'IBDesignable',
261
- 'IBInspectable',
262
- 'IBOutlet',
263
- 'IBSegueAction',
264
- 'inlinable',
265
- 'main',
266
- 'nonobjc',
267
- 'NSApplicationMain',
268
- 'NSCopying',
269
- 'NSManaged',
270
- concat(/objc\(/, identifier, /\)/),
271
- 'objc',
272
- 'objcMembers',
273
- 'propertyWrapper',
274
- 'requires_stored_property_inits',
275
- 'testable',
276
- 'UIApplicationMain',
277
- 'unknown',
278
- 'usableFromInline'
316
+ 'autoclosure',
317
+ concat(/convention\(/, either('swift', 'block', 'c'), /\)/),
318
+ 'discardableResult',
319
+ 'dynamicCallable',
320
+ 'dynamicMemberLookup',
321
+ 'escaping',
322
+ 'frozen',
323
+ 'GKInspectable',
324
+ 'IBAction',
325
+ 'IBDesignable',
326
+ 'IBInspectable',
327
+ 'IBOutlet',
328
+ 'IBSegueAction',
329
+ 'inlinable',
330
+ 'main',
331
+ 'nonobjc',
332
+ 'NSApplicationMain',
333
+ 'NSCopying',
334
+ 'NSManaged',
335
+ concat(/objc\(/, identifier, /\)/),
336
+ 'objc',
337
+ 'objcMembers',
338
+ 'propertyWrapper',
339
+ 'requires_stored_property_inits',
340
+ 'testable',
341
+ 'UIApplicationMain',
342
+ 'unknown',
343
+ 'usableFromInline'
279
344
  ];
345
+
280
346
  // Contextual keywords used in @available and #available.
281
347
  const availabilityKeywords = [
282
- 'iOS',
283
- 'iOSApplicationExtension',
284
- 'macOS',
285
- 'macOSApplicationExtension',
286
- 'macCatalyst',
287
- 'macCatalystApplicationExtension',
288
- 'watchOS',
289
- 'watchOSApplicationExtension',
290
- 'tvOS',
291
- 'tvOSApplicationExtension',
292
- 'swift'
348
+ 'iOS',
349
+ 'iOSApplicationExtension',
350
+ 'macOS',
351
+ 'macOSApplicationExtension',
352
+ 'macCatalyst',
353
+ 'macCatalystApplicationExtension',
354
+ 'watchOS',
355
+ 'watchOSApplicationExtension',
356
+ 'tvOS',
357
+ 'tvOSApplicationExtension',
358
+ 'swift'
293
359
  ];
360
+
294
361
  /*
295
362
  Language: Swift
296
363
  Description: Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.
@@ -299,484 +366,508 @@ Contributors: Chris Eidhof <chris@eidhof.nl>, Nate Cook <natecook@gmail.com>, Al
299
366
  Website: https://swift.org
300
367
  Category: common, system
301
368
  */
369
+
302
370
  /** @type LanguageFn */
303
371
  function swift(hljs) {
304
- const WHITESPACE = {
305
- match: /\s+/,
306
- relevance: 0
307
- };
308
- // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID411
309
- const BLOCK_COMMENT = hljs.COMMENT('/\\*', '\\*/', {
310
- contains: ['self']
311
- });
312
- const COMMENTS = [
313
- hljs.C_LINE_COMMENT_MODE,
314
- BLOCK_COMMENT
315
- ];
316
- // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID413
317
- // https://docs.swift.org/swift-book/ReferenceManual/zzSummaryOfTheGrammar.html
318
- const DOT_KEYWORD = {
372
+ const WHITESPACE = {
373
+ match: /\s+/,
374
+ relevance: 0
375
+ };
376
+ // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID411
377
+ const BLOCK_COMMENT = hljs.COMMENT(
378
+ '/\\*',
379
+ '\\*/',
380
+ {
381
+ contains: [ 'self' ]
382
+ }
383
+ );
384
+ const COMMENTS = [
385
+ hljs.C_LINE_COMMENT_MODE,
386
+ BLOCK_COMMENT
387
+ ];
388
+
389
+ // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID413
390
+ // https://docs.swift.org/swift-book/ReferenceManual/zzSummaryOfTheGrammar.html
391
+ const DOT_KEYWORD = {
392
+ className: 'keyword',
393
+ begin: concat(/\./, lookahead(either(...dotKeywords, ...optionalDotKeywords))),
394
+ end: either(...dotKeywords, ...optionalDotKeywords),
395
+ excludeBegin: true
396
+ };
397
+ const KEYWORD_GUARD = {
398
+ // Consume .keyword to prevent highlighting properties and methods as keywords.
399
+ match: concat(/\./, either(...keywords)),
400
+ relevance: 0
401
+ };
402
+ const PLAIN_KEYWORDS = keywords
403
+ .filter(kw => typeof kw === 'string')
404
+ .concat([ "_|0" ]); // seems common, so 0 relevance
405
+ const REGEX_KEYWORDS = keywords
406
+ .filter(kw => typeof kw !== 'string') // find regex
407
+ .concat(keywordTypes)
408
+ .map(keywordWrapper);
409
+ const KEYWORD = {
410
+ variants: [
411
+ {
319
412
  className: 'keyword',
320
- begin: concat(/\./, lookahead(either(...dotKeywords, ...optionalDotKeywords))),
321
- end: either(...dotKeywords, ...optionalDotKeywords),
322
- excludeBegin: true
323
- };
324
- const KEYWORD_GUARD = {
325
- // Consume .keyword to prevent highlighting properties and methods as keywords.
326
- match: concat(/\./, either(...keywords)),
413
+ match: either(...REGEX_KEYWORDS, ...optionalDotKeywords)
414
+ }
415
+ ]
416
+ };
417
+ // find all the regular keywords
418
+ const KEYWORDS = {
419
+ $pattern: either(
420
+ /\b\w+/, // regular keywords
421
+ /#\w+/ // number keywords
422
+ ),
423
+ keyword: PLAIN_KEYWORDS
424
+ .concat(numberSignKeywords),
425
+ literal: literals
426
+ };
427
+ const KEYWORD_MODES = [
428
+ DOT_KEYWORD,
429
+ KEYWORD_GUARD,
430
+ KEYWORD
431
+ ];
432
+
433
+ // https://github.com/apple/swift/tree/main/stdlib/public/core
434
+ const BUILT_IN_GUARD = {
435
+ // Consume .built_in to prevent highlighting properties and methods.
436
+ match: concat(/\./, either(...builtIns)),
437
+ relevance: 0
438
+ };
439
+ const BUILT_IN = {
440
+ className: 'built_in',
441
+ match: concat(/\b/, either(...builtIns), /(?=\()/)
442
+ };
443
+ const BUILT_INS = [
444
+ BUILT_IN_GUARD,
445
+ BUILT_IN
446
+ ];
447
+
448
+ // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID418
449
+ const OPERATOR_GUARD = {
450
+ // Prevent -> from being highlighting as an operator.
451
+ match: /->/,
452
+ relevance: 0
453
+ };
454
+ const OPERATOR = {
455
+ className: 'operator',
456
+ relevance: 0,
457
+ variants: [
458
+ {
459
+ match: operator
460
+ },
461
+ {
462
+ // dot-operator: only operators that start with a dot are allowed to use dots as
463
+ // characters (..., ...<, .*, etc). So there rule here is: a dot followed by one or more
464
+ // characters that may also include dots.
465
+ match: `\\.(\\.|${operatorCharacter})+`
466
+ }
467
+ ]
468
+ };
469
+ const OPERATORS = [
470
+ OPERATOR_GUARD,
471
+ OPERATOR
472
+ ];
473
+
474
+ // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#grammar_numeric-literal
475
+ // TODO: Update for leading `-` after lookbehind is supported everywhere
476
+ const decimalDigits = '([0-9]_*)+';
477
+ const hexDigits = '([0-9a-fA-F]_*)+';
478
+ const NUMBER = {
479
+ className: 'number',
480
+ relevance: 0,
481
+ variants: [
482
+ // decimal floating-point-literal (subsumes decimal-literal)
483
+ {
484
+ match: `\\b(${decimalDigits})(\\.(${decimalDigits}))?` + `([eE][+-]?(${decimalDigits}))?\\b`
485
+ },
486
+ // hexadecimal floating-point-literal (subsumes hexadecimal-literal)
487
+ {
488
+ match: `\\b0x(${hexDigits})(\\.(${hexDigits}))?` + `([pP][+-]?(${decimalDigits}))?\\b`
489
+ },
490
+ // octal-literal
491
+ {
492
+ match: /\b0o([0-7]_*)+\b/
493
+ },
494
+ // binary-literal
495
+ {
496
+ match: /\b0b([01]_*)+\b/
497
+ }
498
+ ]
499
+ };
500
+
501
+ // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#grammar_string-literal
502
+ const ESCAPED_CHARACTER = (rawDelimiter = "") => ({
503
+ className: 'subst',
504
+ variants: [
505
+ {
506
+ match: concat(/\\/, rawDelimiter, /[0\\tnr"']/)
507
+ },
508
+ {
509
+ match: concat(/\\/, rawDelimiter, /u\{[0-9a-fA-F]{1,8}\}/)
510
+ }
511
+ ]
512
+ });
513
+ const ESCAPED_NEWLINE = (rawDelimiter = "") => ({
514
+ className: 'subst',
515
+ match: concat(/\\/, rawDelimiter, /[\t ]*(?:[\r\n]|\r\n)/)
516
+ });
517
+ const INTERPOLATION = (rawDelimiter = "") => ({
518
+ className: 'subst',
519
+ label: "interpol",
520
+ begin: concat(/\\/, rawDelimiter, /\(/),
521
+ end: /\)/
522
+ });
523
+ const MULTILINE_STRING = (rawDelimiter = "") => ({
524
+ begin: concat(rawDelimiter, /"""/),
525
+ end: concat(/"""/, rawDelimiter),
526
+ contains: [
527
+ ESCAPED_CHARACTER(rawDelimiter),
528
+ ESCAPED_NEWLINE(rawDelimiter),
529
+ INTERPOLATION(rawDelimiter)
530
+ ]
531
+ });
532
+ const SINGLE_LINE_STRING = (rawDelimiter = "") => ({
533
+ begin: concat(rawDelimiter, /"/),
534
+ end: concat(/"/, rawDelimiter),
535
+ contains: [
536
+ ESCAPED_CHARACTER(rawDelimiter),
537
+ INTERPOLATION(rawDelimiter)
538
+ ]
539
+ });
540
+ const STRING = {
541
+ className: 'string',
542
+ variants: [
543
+ MULTILINE_STRING(),
544
+ MULTILINE_STRING("#"),
545
+ MULTILINE_STRING("##"),
546
+ MULTILINE_STRING("###"),
547
+ SINGLE_LINE_STRING(),
548
+ SINGLE_LINE_STRING("#"),
549
+ SINGLE_LINE_STRING("##"),
550
+ SINGLE_LINE_STRING("###")
551
+ ]
552
+ };
553
+
554
+ // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID412
555
+ const QUOTED_IDENTIFIER = {
556
+ match: concat(/`/, identifier, /`/)
557
+ };
558
+ const IMPLICIT_PARAMETER = {
559
+ className: 'variable',
560
+ match: /\$\d+/
561
+ };
562
+ const PROPERTY_WRAPPER_PROJECTION = {
563
+ className: 'variable',
564
+ match: `\\$${identifierCharacter}+`
565
+ };
566
+ const IDENTIFIERS = [
567
+ QUOTED_IDENTIFIER,
568
+ IMPLICIT_PARAMETER,
569
+ PROPERTY_WRAPPER_PROJECTION
570
+ ];
571
+
572
+ // https://docs.swift.org/swift-book/ReferenceManual/Attributes.html
573
+ const AVAILABLE_ATTRIBUTE = {
574
+ match: /(@|#)available/,
575
+ className: "keyword",
576
+ starts: {
577
+ contains: [
578
+ {
579
+ begin: /\(/,
580
+ end: /\)/,
581
+ keywords: availabilityKeywords,
582
+ contains: [
583
+ ...OPERATORS,
584
+ NUMBER,
585
+ STRING
586
+ ]
587
+ }
588
+ ]
589
+ }
590
+ };
591
+ const KEYWORD_ATTRIBUTE = {
592
+ className: 'keyword',
593
+ match: concat(/@/, either(...keywordAttributes))
594
+ };
595
+ const USER_DEFINED_ATTRIBUTE = {
596
+ className: 'meta',
597
+ match: concat(/@/, identifier)
598
+ };
599
+ const ATTRIBUTES = [
600
+ AVAILABLE_ATTRIBUTE,
601
+ KEYWORD_ATTRIBUTE,
602
+ USER_DEFINED_ATTRIBUTE
603
+ ];
604
+
605
+ // https://docs.swift.org/swift-book/ReferenceManual/Types.html
606
+ const TYPE = {
607
+ match: lookahead(/\b[A-Z]/),
608
+ relevance: 0,
609
+ contains: [
610
+ { // Common Apple frameworks, for relevance boost
611
+ className: 'type',
612
+ match: concat(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/, identifierCharacter, '+')
613
+ },
614
+ { // Type identifier
615
+ className: 'type',
616
+ match: typeIdentifier,
327
617
  relevance: 0
328
- };
329
- const PLAIN_KEYWORDS = keywords
330
- .filter(kw => typeof kw === 'string')
331
- .concat(["_|0"]); // seems common, so 0 relevance
332
- const REGEX_KEYWORDS = keywords
333
- .filter(kw => typeof kw !== 'string') // find regex
334
- .concat(keywordTypes)
335
- .map(keywordWrapper);
336
- const KEYWORD = {
337
- variants: [
338
- {
339
- className: 'keyword',
340
- match: either(...REGEX_KEYWORDS, ...optionalDotKeywords)
341
- }
342
- ]
343
- };
344
- // find all the regular keywords
345
- const KEYWORDS = {
346
- $pattern: either(/\b\w+/, // regular keywords
347
- /#\w+/ // number keywords
348
- ),
349
- keyword: PLAIN_KEYWORDS
350
- .concat(numberSignKeywords),
351
- literal: literals
352
- };
353
- const KEYWORD_MODES = [
354
- DOT_KEYWORD,
355
- KEYWORD_GUARD,
356
- KEYWORD
357
- ];
358
- // https://github.com/apple/swift/tree/main/stdlib/public/core
359
- const BUILT_IN_GUARD = {
360
- // Consume .built_in to prevent highlighting properties and methods.
361
- match: concat(/\./, either(...builtIns)),
618
+ },
619
+ { // Optional type
620
+ match: /[?!]+/,
362
621
  relevance: 0
363
- };
364
- const BUILT_IN = {
365
- className: 'built_in',
366
- match: concat(/\b/, either(...builtIns), /(?=\()/)
367
- };
368
- const BUILT_INS = [
369
- BUILT_IN_GUARD,
370
- BUILT_IN
371
- ];
372
- // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID418
373
- const OPERATOR_GUARD = {
374
- // Prevent -> from being highlighting as an operator.
375
- match: /->/,
622
+ },
623
+ { // Variadic parameter
624
+ match: /\.\.\./,
376
625
  relevance: 0
377
- };
378
- const OPERATOR = {
379
- className: 'operator',
380
- relevance: 0,
381
- variants: [
382
- {
383
- match: operator
384
- },
385
- {
386
- // dot-operator: only operators that start with a dot are allowed to use dots as
387
- // characters (..., ...<, .*, etc). So there rule here is: a dot followed by one or more
388
- // characters that may also include dots.
389
- match: `\\.(\\.|${operatorCharacter})+`
390
- }
391
- ]
392
- };
393
- const OPERATORS = [
394
- OPERATOR_GUARD,
395
- OPERATOR
396
- ];
397
- // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#grammar_numeric-literal
398
- // TODO: Update for leading `-` after lookbehind is supported everywhere
399
- const decimalDigits = '([0-9]_*)+';
400
- const hexDigits = '([0-9a-fA-F]_*)+';
401
- const NUMBER = {
402
- className: 'number',
403
- relevance: 0,
404
- variants: [
405
- // decimal floating-point-literal (subsumes decimal-literal)
406
- {
407
- match: `\\b(${decimalDigits})(\\.(${decimalDigits}))?` + `([eE][+-]?(${decimalDigits}))?\\b`
408
- },
409
- // hexadecimal floating-point-literal (subsumes hexadecimal-literal)
410
- {
411
- match: `\\b0x(${hexDigits})(\\.(${hexDigits}))?` + `([pP][+-]?(${decimalDigits}))?\\b`
412
- },
413
- // octal-literal
414
- {
415
- match: /\b0o([0-7]_*)+\b/
416
- },
417
- // binary-literal
418
- {
419
- match: /\b0b([01]_*)+\b/
420
- }
421
- ]
422
- };
423
- // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#grammar_string-literal
424
- const ESCAPED_CHARACTER = (rawDelimiter = "") => ({
425
- className: 'subst',
426
- variants: [
427
- {
428
- match: concat(/\\/, rawDelimiter, /[0\\tnr"']/)
429
- },
430
- {
431
- match: concat(/\\/, rawDelimiter, /u\{[0-9a-fA-F]{1,8}\}/)
432
- }
433
- ]
434
- });
435
- const ESCAPED_NEWLINE = (rawDelimiter = "") => ({
436
- className: 'subst',
437
- match: concat(/\\/, rawDelimiter, /[\t ]*(?:[\r\n]|\r\n)/)
438
- });
439
- const INTERPOLATION = (rawDelimiter = "") => ({
440
- className: 'subst',
441
- label: "interpol",
442
- begin: concat(/\\/, rawDelimiter, /\(/),
443
- end: /\)/
444
- });
445
- const MULTILINE_STRING = (rawDelimiter = "") => ({
446
- begin: concat(rawDelimiter, /"""/),
447
- end: concat(/"""/, rawDelimiter),
448
- contains: [
449
- ESCAPED_CHARACTER(rawDelimiter),
450
- ESCAPED_NEWLINE(rawDelimiter),
451
- INTERPOLATION(rawDelimiter)
452
- ]
453
- });
454
- const SINGLE_LINE_STRING = (rawDelimiter = "") => ({
455
- begin: concat(rawDelimiter, /"/),
456
- end: concat(/"/, rawDelimiter),
457
- contains: [
458
- ESCAPED_CHARACTER(rawDelimiter),
459
- INTERPOLATION(rawDelimiter)
460
- ]
461
- });
462
- const STRING = {
463
- className: 'string',
464
- variants: [
465
- MULTILINE_STRING(),
466
- MULTILINE_STRING("#"),
467
- MULTILINE_STRING("##"),
468
- MULTILINE_STRING("###"),
469
- SINGLE_LINE_STRING(),
470
- SINGLE_LINE_STRING("#"),
471
- SINGLE_LINE_STRING("##"),
472
- SINGLE_LINE_STRING("###")
473
- ]
474
- };
475
- // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID412
476
- const QUOTED_IDENTIFIER = {
477
- match: concat(/`/, identifier, /`/)
478
- };
479
- const IMPLICIT_PARAMETER = {
480
- className: 'variable',
481
- match: /\$\d+/
482
- };
483
- const PROPERTY_WRAPPER_PROJECTION = {
484
- className: 'variable',
485
- match: `\\$${identifierCharacter}+`
486
- };
487
- const IDENTIFIERS = [
488
- QUOTED_IDENTIFIER,
489
- IMPLICIT_PARAMETER,
490
- PROPERTY_WRAPPER_PROJECTION
491
- ];
492
- // https://docs.swift.org/swift-book/ReferenceManual/Attributes.html
493
- const AVAILABLE_ATTRIBUTE = {
494
- match: /(@|#)available/,
495
- className: "keyword",
496
- starts: {
497
- contains: [
498
- {
499
- begin: /\(/,
500
- end: /\)/,
501
- keywords: availabilityKeywords,
502
- contains: [
503
- ...OPERATORS,
504
- NUMBER,
505
- STRING
506
- ]
507
- }
508
- ]
509
- }
510
- };
511
- const KEYWORD_ATTRIBUTE = {
626
+ },
627
+ { // Protocol composition
628
+ match: concat(/\s+&\s+/, lookahead(typeIdentifier)),
629
+ relevance: 0
630
+ }
631
+ ]
632
+ };
633
+ const GENERIC_ARGUMENTS = {
634
+ begin: /</,
635
+ end: />/,
636
+ keywords: KEYWORDS,
637
+ contains: [
638
+ ...COMMENTS,
639
+ ...KEYWORD_MODES,
640
+ ...ATTRIBUTES,
641
+ OPERATOR_GUARD,
642
+ TYPE
643
+ ]
644
+ };
645
+ TYPE.contains.push(GENERIC_ARGUMENTS);
646
+
647
+ // https://docs.swift.org/swift-book/ReferenceManual/Expressions.html#ID552
648
+ // Prevents element names from being highlighted as keywords.
649
+ const TUPLE_ELEMENT_NAME = {
650
+ match: concat(identifier, /\s*:/),
651
+ keywords: "_|0",
652
+ relevance: 0
653
+ };
654
+ // Matches tuples as well as the parameter list of a function type.
655
+ const TUPLE = {
656
+ begin: /\(/,
657
+ end: /\)/,
658
+ relevance: 0,
659
+ keywords: KEYWORDS,
660
+ contains: [
661
+ 'self',
662
+ TUPLE_ELEMENT_NAME,
663
+ ...COMMENTS,
664
+ ...KEYWORD_MODES,
665
+ ...BUILT_INS,
666
+ ...OPERATORS,
667
+ NUMBER,
668
+ STRING,
669
+ ...IDENTIFIERS,
670
+ ...ATTRIBUTES,
671
+ TYPE
672
+ ]
673
+ };
674
+
675
+ // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID362
676
+ // Matches both the keyword func and the function title.
677
+ // Grouping these lets us differentiate between the operator function <
678
+ // and the start of the generic parameter clause (also <).
679
+ const FUNC_PLUS_TITLE = {
680
+ beginKeywords: 'func',
681
+ contains: [
682
+ {
683
+ className: 'title',
684
+ match: either(QUOTED_IDENTIFIER.match, identifier, operator),
685
+ // Required to make sure the opening < of the generic parameter clause
686
+ // isn't parsed as a second title.
687
+ endsParent: true,
688
+ relevance: 0
689
+ },
690
+ WHITESPACE
691
+ ]
692
+ };
693
+ const GENERIC_PARAMETERS = {
694
+ begin: /</,
695
+ end: />/,
696
+ contains: [
697
+ ...COMMENTS,
698
+ TYPE
699
+ ]
700
+ };
701
+ const FUNCTION_PARAMETER_NAME = {
702
+ begin: either(
703
+ lookahead(concat(identifier, /\s*:/)),
704
+ lookahead(concat(identifier, /\s+/, identifier, /\s*:/))
705
+ ),
706
+ end: /:/,
707
+ relevance: 0,
708
+ contains: [
709
+ {
512
710
  className: 'keyword',
513
- match: concat(/@/, either(...keywordAttributes))
514
- };
515
- const USER_DEFINED_ATTRIBUTE = {
516
- className: 'meta',
517
- match: concat(/@/, identifier)
518
- };
519
- const ATTRIBUTES = [
520
- AVAILABLE_ATTRIBUTE,
521
- KEYWORD_ATTRIBUTE,
522
- USER_DEFINED_ATTRIBUTE
523
- ];
524
- // https://docs.swift.org/swift-book/ReferenceManual/Types.html
525
- const TYPE = {
526
- match: lookahead(/\b[A-Z]/),
527
- relevance: 0,
528
- contains: [
529
- {
530
- className: 'type',
531
- match: concat(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/, identifierCharacter, '+')
532
- },
533
- {
534
- className: 'type',
535
- match: typeIdentifier,
536
- relevance: 0
537
- },
538
- {
539
- match: /[?!]+/,
540
- relevance: 0
541
- },
542
- {
543
- match: /\.\.\./,
544
- relevance: 0
545
- },
546
- {
547
- match: concat(/\s+&\s+/, lookahead(typeIdentifier)),
548
- relevance: 0
549
- }
550
- ]
551
- };
552
- const GENERIC_ARGUMENTS = {
553
- begin: /</,
554
- end: />/,
555
- keywords: KEYWORDS,
556
- contains: [
557
- ...COMMENTS,
558
- ...KEYWORD_MODES,
559
- ...ATTRIBUTES,
560
- OPERATOR_GUARD,
561
- TYPE
562
- ]
563
- };
564
- TYPE.contains.push(GENERIC_ARGUMENTS);
565
- // https://docs.swift.org/swift-book/ReferenceManual/Expressions.html#ID552
566
- // Prevents element names from being highlighted as keywords.
567
- const TUPLE_ELEMENT_NAME = {
568
- match: concat(identifier, /\s*:/),
569
- keywords: "_|0",
711
+ match: /\b_\b/
712
+ },
713
+ {
714
+ className: 'params',
715
+ match: identifier
716
+ }
717
+ ]
718
+ };
719
+ const FUNCTION_PARAMETERS = {
720
+ begin: /\(/,
721
+ end: /\)/,
722
+ keywords: KEYWORDS,
723
+ contains: [
724
+ FUNCTION_PARAMETER_NAME,
725
+ ...COMMENTS,
726
+ ...KEYWORD_MODES,
727
+ ...OPERATORS,
728
+ NUMBER,
729
+ STRING,
730
+ ...ATTRIBUTES,
731
+ TYPE,
732
+ TUPLE
733
+ ],
734
+ endsParent: true,
735
+ illegal: /["']/
736
+ };
737
+ const FUNCTION = {
738
+ className: 'function',
739
+ match: lookahead(/\bfunc\b/),
740
+ contains: [
741
+ FUNC_PLUS_TITLE,
742
+ GENERIC_PARAMETERS,
743
+ FUNCTION_PARAMETERS,
744
+ WHITESPACE
745
+ ],
746
+ illegal: [
747
+ /\[/,
748
+ /%/
749
+ ]
750
+ };
751
+
752
+ // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID375
753
+ // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID379
754
+ const INIT_SUBSCRIPT = {
755
+ className: 'function',
756
+ match: /\b(subscript|init[?!]?)\s*(?=[<(])/,
757
+ keywords: {
758
+ keyword: "subscript init init? init!",
759
+ $pattern: /\w+[?!]?/
760
+ },
761
+ contains: [
762
+ GENERIC_PARAMETERS,
763
+ FUNCTION_PARAMETERS,
764
+ WHITESPACE
765
+ ],
766
+ illegal: /\[|%/
767
+ };
768
+ // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID380
769
+ const OPERATOR_DECLARATION = {
770
+ beginKeywords: 'operator',
771
+ end: hljs.MATCH_NOTHING_RE,
772
+ contains: [
773
+ {
774
+ className: 'title',
775
+ match: operator,
776
+ endsParent: true,
570
777
  relevance: 0
571
- };
572
- // Matches tuples as well as the parameter list of a function type.
573
- const TUPLE = {
574
- begin: /\(/,
575
- end: /\)/,
576
- relevance: 0,
577
- keywords: KEYWORDS,
578
- contains: [
579
- 'self',
580
- TUPLE_ELEMENT_NAME,
581
- ...COMMENTS,
582
- ...KEYWORD_MODES,
583
- ...BUILT_INS,
584
- ...OPERATORS,
585
- NUMBER,
586
- STRING,
587
- ...IDENTIFIERS,
588
- ...ATTRIBUTES,
589
- TYPE
590
- ]
591
- };
592
- // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID362
593
- // Matches both the keyword func and the function title.
594
- // Grouping these lets us differentiate between the operator function <
595
- // and the start of the generic parameter clause (also <).
596
- const FUNC_PLUS_TITLE = {
597
- beginKeywords: 'func',
598
- contains: [
599
- {
600
- className: 'title',
601
- match: either(QUOTED_IDENTIFIER.match, identifier, operator),
602
- // Required to make sure the opening < of the generic parameter clause
603
- // isn't parsed as a second title.
604
- endsParent: true,
605
- relevance: 0
606
- },
607
- WHITESPACE
608
- ]
609
- };
610
- const GENERIC_PARAMETERS = {
611
- begin: /</,
612
- end: />/,
613
- contains: [
614
- ...COMMENTS,
615
- TYPE
616
- ]
617
- };
618
- const FUNCTION_PARAMETER_NAME = {
619
- begin: either(lookahead(concat(identifier, /\s*:/)), lookahead(concat(identifier, /\s+/, identifier, /\s*:/))),
620
- end: /:/,
778
+ }
779
+ ]
780
+ };
781
+
782
+ // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID550
783
+ const PRECEDENCEGROUP = {
784
+ beginKeywords: 'precedencegroup',
785
+ end: hljs.MATCH_NOTHING_RE,
786
+ contains: [
787
+ {
788
+ className: 'title',
789
+ match: typeIdentifier,
790
+ relevance: 0
791
+ },
792
+ {
793
+ begin: /{/,
794
+ end: /}/,
621
795
  relevance: 0,
622
- contains: [
623
- {
624
- className: 'keyword',
625
- match: /\b_\b/
626
- },
627
- {
628
- className: 'params',
629
- match: identifier
630
- }
631
- ]
632
- };
633
- const FUNCTION_PARAMETERS = {
634
- begin: /\(/,
635
- end: /\)/,
636
- keywords: KEYWORDS,
637
- contains: [
638
- FUNCTION_PARAMETER_NAME,
639
- ...COMMENTS,
640
- ...KEYWORD_MODES,
641
- ...OPERATORS,
642
- NUMBER,
643
- STRING,
644
- ...ATTRIBUTES,
645
- TYPE,
646
- TUPLE
647
- ],
648
796
  endsParent: true,
649
- illegal: /["']/
650
- };
651
- const FUNCTION = {
652
- className: 'function',
653
- match: lookahead(/\bfunc\b/),
654
- contains: [
655
- FUNC_PLUS_TITLE,
656
- GENERIC_PARAMETERS,
657
- FUNCTION_PARAMETERS,
658
- WHITESPACE
797
+ keywords: [
798
+ ...precedencegroupKeywords,
799
+ ...literals
659
800
  ],
660
- illegal: [
661
- /\[/,
662
- /%/
663
- ]
664
- };
665
- // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID375
666
- // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID379
667
- const INIT_SUBSCRIPT = {
668
- className: 'function',
669
- match: /\b(subscript|init[?!]?)\s*(?=[<(])/,
670
- keywords: {
671
- keyword: "subscript init init? init!",
672
- $pattern: /\w+[?!]?/
673
- },
674
- contains: [
675
- GENERIC_PARAMETERS,
676
- FUNCTION_PARAMETERS,
677
- WHITESPACE
678
- ],
679
- illegal: /\[|%/
680
- };
681
- // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID380
682
- const OPERATOR_DECLARATION = {
683
- beginKeywords: 'operator',
684
- end: hljs.MATCH_NOTHING_RE,
685
- contains: [
686
- {
687
- className: 'title',
688
- match: operator,
689
- endsParent: true,
690
- relevance: 0
691
- }
692
- ]
693
- };
694
- // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID550
695
- const PRECEDENCEGROUP = {
696
- beginKeywords: 'precedencegroup',
697
- end: hljs.MATCH_NOTHING_RE,
801
+ contains: [ TYPE ]
802
+ }
803
+ ]
804
+ };
805
+
806
+ // Add supported submodes to string interpolation.
807
+ for (const variant of STRING.variants) {
808
+ const interpolation = variant.contains.find(mode => mode.label === "interpol");
809
+ // TODO: Interpolation can contain any expression, so there's room for improvement here.
810
+ interpolation.keywords = KEYWORDS;
811
+ const submodes = [
812
+ ...KEYWORD_MODES,
813
+ ...BUILT_INS,
814
+ ...OPERATORS,
815
+ NUMBER,
816
+ STRING,
817
+ ...IDENTIFIERS
818
+ ];
819
+ interpolation.contains = [
820
+ ...submodes,
821
+ {
822
+ begin: /\(/,
823
+ end: /\)/,
698
824
  contains: [
699
- {
700
- className: 'title',
701
- match: typeIdentifier,
702
- relevance: 0
703
- },
704
- {
705
- begin: /{/,
706
- end: /}/,
707
- relevance: 0,
708
- endsParent: true,
709
- keywords: [
710
- ...precedencegroupKeywords,
711
- ...literals
712
- ],
713
- contains: [TYPE]
714
- }
825
+ 'self',
826
+ ...submodes
715
827
  ]
716
- };
717
- // Add supported submodes to string interpolation.
718
- for (const variant of STRING.variants) {
719
- const interpolation = variant.contains.find(mode => mode.label === "interpol");
720
- // TODO: Interpolation can contain any expression, so there's room for improvement here.
721
- interpolation.keywords = KEYWORDS;
722
- const submodes = [
723
- ...KEYWORD_MODES,
724
- ...BUILT_INS,
725
- ...OPERATORS,
726
- NUMBER,
727
- STRING,
728
- ...IDENTIFIERS
729
- ];
730
- interpolation.contains = [
731
- ...submodes,
732
- {
733
- begin: /\(/,
734
- end: /\)/,
735
- contains: [
736
- 'self',
737
- ...submodes
738
- ]
739
- }
740
- ];
741
- }
742
- return {
743
- name: 'Swift',
828
+ }
829
+ ];
830
+ }
831
+
832
+ return {
833
+ name: 'Swift',
834
+ keywords: KEYWORDS,
835
+ contains: [
836
+ ...COMMENTS,
837
+ FUNCTION,
838
+ INIT_SUBSCRIPT,
839
+ {
840
+ className: 'class',
841
+ beginKeywords: 'struct protocol class extension enum',
842
+ end: '\\{',
843
+ excludeEnd: true,
744
844
  keywords: KEYWORDS,
745
845
  contains: [
746
- ...COMMENTS,
747
- FUNCTION,
748
- INIT_SUBSCRIPT,
749
- {
750
- className: 'class',
751
- beginKeywords: 'struct protocol class extension enum',
752
- end: '\\{',
753
- excludeEnd: true,
754
- keywords: KEYWORDS,
755
- contains: [
756
- hljs.inherit(hljs.TITLE_MODE, {
757
- begin: /[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/
758
- }),
759
- ...KEYWORD_MODES
760
- ]
761
- },
762
- OPERATOR_DECLARATION,
763
- PRECEDENCEGROUP,
764
- {
765
- beginKeywords: 'import',
766
- end: /$/,
767
- contains: [...COMMENTS],
768
- relevance: 0
769
- },
770
- ...KEYWORD_MODES,
771
- ...BUILT_INS,
772
- ...OPERATORS,
773
- NUMBER,
774
- STRING,
775
- ...IDENTIFIERS,
776
- ...ATTRIBUTES,
777
- TYPE,
778
- TUPLE
846
+ hljs.inherit(hljs.TITLE_MODE, {
847
+ begin: /[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/
848
+ }),
849
+ ...KEYWORD_MODES
779
850
  ]
780
- };
851
+ },
852
+ OPERATOR_DECLARATION,
853
+ PRECEDENCEGROUP,
854
+ {
855
+ beginKeywords: 'import',
856
+ end: /$/,
857
+ contains: [ ...COMMENTS ],
858
+ relevance: 0
859
+ },
860
+ ...KEYWORD_MODES,
861
+ ...BUILT_INS,
862
+ ...OPERATORS,
863
+ NUMBER,
864
+ STRING,
865
+ ...IDENTIFIERS,
866
+ ...ATTRIBUTES,
867
+ TYPE,
868
+ TUPLE
869
+ ]
870
+ };
781
871
  }
872
+
782
873
  module.exports = swift;