@sapui5/sap.ui.richtexteditor 1.96.24 → 1.96.26

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 (629) hide show
  1. package/package.json +1 -1
  2. package/src/sap/ui/richtexteditor/.library +15 -6
  3. package/src/sap/ui/richtexteditor/RTESplitButton.js +1 -1
  4. package/src/sap/ui/richtexteditor/RichTextEditor.js +365 -229
  5. package/src/sap/ui/richtexteditor/RichTextEditorRenderer.js +14 -5
  6. package/src/sap/ui/richtexteditor/ToolbarWrapper.js +563 -316
  7. package/src/sap/ui/richtexteditor/ToolbarWrapperRenderer.js +3 -4
  8. package/src/sap/ui/richtexteditor/js/tiny_mce5/icons/default/icons.js +11 -1
  9. package/src/sap/ui/richtexteditor/js/tiny_mce5/icons/default/icons.min.js +1 -1
  10. package/src/sap/ui/richtexteditor/js/tiny_mce5/jquery.tinymce.min.js +88 -0
  11. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/ar.js +1 -420
  12. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/bg_BG.js +1 -419
  13. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/bn_BD.js +21 -179
  14. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/ca.js +1 -419
  15. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/cs.js +1 -419
  16. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/cs_CZ.js +221 -19
  17. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/cy.js +61 -18
  18. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/da.js +1 -419
  19. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/de.js +1 -419
  20. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/el.js +1 -261
  21. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/es.js +1 -419
  22. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/es_419.js +462 -0
  23. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/es_MX.js +1 -419
  24. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/et.js +21 -179
  25. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/eu.js +1 -419
  26. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/fa.js +1 -419
  27. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/fa_IR.js +69 -197
  28. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/fi.js +1 -419
  29. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/fr_FR.js +1 -419
  30. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/gl.js +20 -155
  31. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/he_IL.js +1 -420
  32. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/hr.js +1 -418
  33. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/hu_HU.js +1 -419
  34. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/id.js +1 -419
  35. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/it.js +1 -419
  36. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/ja.js +1 -419
  37. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/kk.js +1 -418
  38. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/ko_KR.js +1 -419
  39. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/lt.js +21 -179
  40. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/nb_NO.js +1 -419
  41. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/nl.js +1 -419
  42. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/nl_BE.js +445 -0
  43. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/pl.js +1 -419
  44. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/pt_BR.js +1 -419
  45. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/pt_PT.js +1 -419
  46. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/ro.js +1 -418
  47. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/ru.js +1 -419
  48. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/ru_RU.js +445 -0
  49. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/sk.js +1 -418
  50. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/sl.js +59 -14
  51. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/sl_SI.js +1 -388
  52. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/sq.js +219 -0
  53. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/sv_SE.js +1 -419
  54. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/ta.js +60 -17
  55. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/ta_IN.js +60 -17
  56. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/th_TH.js +1 -419
  57. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/tr.js +1 -419
  58. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/tr_TR.js +81 -8
  59. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/ug.js +221 -19
  60. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/uk.js +1 -419
  61. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/zh_CN.js +1 -419
  62. package/src/sap/ui/richtexteditor/js/tiny_mce5/langs/zh_TW.js +1 -419
  63. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advcode/changelog.txt +8 -0
  64. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advcode/codemirror.min.css +1 -1
  65. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advcode/codemirror.min.js +4023 -4246
  66. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advcode/customeditor.js +5 -5
  67. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advcode/customeditor.min.js +5 -5
  68. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advcode/plugin.js +5 -5
  69. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advcode/plugin.min.js +5 -5
  70. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advcode/readme.txt +1 -1
  71. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advcode/version.txt +1 -1
  72. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advlist/plugin.js +33 -48
  73. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/advlist/plugin.min.js +4 -2
  74. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/anchor/plugin.js +10 -8
  75. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/anchor/plugin.min.js +4 -2
  76. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/autolink/plugin.js +60 -30
  77. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/autolink/plugin.min.js +4 -2
  78. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/autoresize/plugin.js +27 -12
  79. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/autoresize/plugin.min.js +4 -2
  80. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/autosave/plugin.js +12 -12
  81. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/autosave/plugin.min.js +4 -2
  82. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/bbcode/plugin.js +8 -6
  83. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/bbcode/plugin.min.js +4 -2
  84. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/charmap/plugin.js +59 -67
  85. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/charmap/plugin.min.js +4 -2
  86. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/code/plugin.js +11 -10
  87. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/code/plugin.min.js +4 -2
  88. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/codesample/plugin.js +1934 -1310
  89. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/codesample/plugin.min.js +4 -2
  90. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/colorpicker/plugin.js +3 -2
  91. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/colorpicker/plugin.min.js +4 -2
  92. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/contextmenu/plugin.js +3 -2
  93. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/contextmenu/plugin.min.js +4 -2
  94. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/directionality/plugin.js +200 -59
  95. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/directionality/plugin.min.js +4 -2
  96. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/emoticons/js/emojiimages.js +9424 -0
  97. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/emoticons/js/emojiimages.min.js +3 -0
  98. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/emoticons/js/emojis.js +1914 -1506
  99. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/emoticons/js/emojis.min.js +2 -2
  100. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/emoticons/plugin.js +255 -181
  101. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/emoticons/plugin.min.js +4 -2
  102. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/fullpage/plugin.js +51 -49
  103. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/fullpage/plugin.min.js +4 -2
  104. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/fullscreen/plugin.js +542 -163
  105. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/fullscreen/plugin.min.js +4 -2
  106. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/help/plugin.js +113 -105
  107. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/help/plugin.min.js +4 -2
  108. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/hr/plugin.js +11 -10
  109. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/hr/plugin.min.js +4 -2
  110. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/image/plugin.js +187 -170
  111. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/image/plugin.min.js +4 -2
  112. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/imagetools/plugin.js +625 -433
  113. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/imagetools/plugin.min.js +4 -2
  114. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/importcss/plugin.js +54 -53
  115. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/importcss/plugin.min.js +4 -2
  116. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/insertdatetime/plugin.js +24 -17
  117. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/insertdatetime/plugin.min.js +4 -2
  118. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/legacyoutput/plugin.js +10 -8
  119. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/legacyoutput/plugin.min.js +4 -2
  120. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/link/plugin.js +145 -131
  121. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/link/plugin.min.js +4 -2
  122. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/lists/plugin.js +440 -270
  123. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/lists/plugin.min.js +4 -2
  124. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/media/plugin.js +232 -186
  125. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/media/plugin.min.js +4 -2
  126. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/nonbreaking/plugin.js +15 -14
  127. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/nonbreaking/plugin.min.js +4 -2
  128. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/noneditable/plugin.js +8 -6
  129. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/noneditable/plugin.min.js +4 -2
  130. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/pagebreak/plugin.js +29 -30
  131. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/pagebreak/plugin.min.js +4 -2
  132. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/paste/plugin.js +388 -290
  133. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/paste/plugin.min.js +4 -2
  134. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/CHANGELOG.md +345 -0
  135. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/js/wordimport.js +1826 -1696
  136. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/ar.js +12 -9
  137. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/bg_BG.js +4 -4
  138. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/ca.js +10 -7
  139. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/cs.js +12 -9
  140. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/da.js +11 -8
  141. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/de.js +10 -7
  142. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/el.js +12 -9
  143. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/es.js +10 -7
  144. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/eu.js +4 -4
  145. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/fa.js +12 -9
  146. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/fi.js +12 -9
  147. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/fr_FR.js +11 -8
  148. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/he_IL.js +12 -9
  149. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/hr.js +11 -8
  150. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/hu_HU.js +12 -9
  151. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/id.js +4 -4
  152. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/it.js +10 -7
  153. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/ja.js +12 -9
  154. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/kk.js +12 -9
  155. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/ko_KR.js +12 -9
  156. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/nb_NO.js +11 -8
  157. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/nl.js +8 -5
  158. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/pl.js +10 -7
  159. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/pt_BR.js +11 -8
  160. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/pt_PT.js +11 -8
  161. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/ro.js +12 -9
  162. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/ru.js +12 -9
  163. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/sk.js +12 -9
  164. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/sl_SI.js +11 -8
  165. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/sv_SE.js +10 -7
  166. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/th_TH.js +12 -9
  167. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/tr.js +11 -8
  168. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/uk.js +12 -9
  169. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/zh_CN.js +13 -10
  170. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/langs/zh_TW.js +13 -10
  171. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/plugin.js +5 -5
  172. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/plugin.min.js +5 -5
  173. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/readme.txt +1 -1
  174. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/powerpaste/version.txt +1 -1
  175. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/preview/plugin.js +18 -17
  176. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/preview/plugin.min.js +4 -2
  177. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/print/plugin.js +15 -14
  178. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/print/plugin.min.js +4 -2
  179. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/quickbars/plugin.js +76 -85
  180. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/quickbars/plugin.min.js +4 -2
  181. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/save/plugin.js +11 -8
  182. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/save/plugin.min.js +4 -2
  183. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/searchreplace/plugin.js +108 -103
  184. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/searchreplace/plugin.min.js +4 -2
  185. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/spellchecker/plugin.js +54 -59
  186. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/spellchecker/plugin.min.js +4 -2
  187. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/tabfocus/plugin.js +31 -28
  188. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/tabfocus/plugin.min.js +4 -2
  189. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/table/plugin.js +4394 -3142
  190. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/table/plugin.min.js +4 -2
  191. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/template/plugin.js +89 -73
  192. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/template/plugin.min.js +4 -2
  193. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/textcolor/plugin.js +3 -2
  194. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/textcolor/plugin.min.js +4 -2
  195. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/textpattern/plugin.js +111 -122
  196. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/textpattern/plugin.min.js +4 -2
  197. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/toc/plugin.js +33 -29
  198. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/toc/plugin.min.js +4 -2
  199. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/visualblocks/plugin.js +12 -11
  200. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/visualblocks/plugin.min.js +4 -2
  201. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/visualchars/plugin.js +89 -101
  202. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/visualchars/plugin.min.js +4 -2
  203. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/wordcount/plugin.js +69 -58
  204. package/src/sap/ui/richtexteditor/js/tiny_mce5/plugins/wordcount/plugin.min.js +4 -2
  205. package/src/sap/ui/richtexteditor/js/tiny_mce5/readme.txt +1 -1
  206. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/content.css +10 -6
  207. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/content.inline.css +10 -6
  208. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/content.inline.min.css +1 -1
  209. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/content.inline.min.css.map +1 -1
  210. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/content.min.css +1 -1
  211. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/content.min.css.map +1 -1
  212. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/skin.css +104 -29
  213. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/skin.min.css +1 -1
  214. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/skin.min.css.map +1 -1
  215. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/skin.shadowdom.css +37 -0
  216. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/skin.shadowdom.min.css +8 -0
  217. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide/skin.shadowdom.min.css.map +1 -0
  218. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/content.css +9 -5
  219. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/content.inline.css +10 -6
  220. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/content.inline.min.css +1 -1
  221. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/content.inline.min.css.map +1 -1
  222. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/content.min.css +1 -1
  223. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/content.min.css.map +1 -1
  224. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/skin.css +104 -29
  225. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/skin.min.css +1 -1
  226. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/skin.min.css.map +1 -1
  227. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/skin.shadowdom.css +37 -0
  228. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/skin.shadowdom.min.css +8 -0
  229. package/src/sap/ui/richtexteditor/js/tiny_mce5/skins/ui/oxide-dark/skin.shadowdom.min.css.map +1 -0
  230. package/src/sap/ui/richtexteditor/js/tiny_mce5/themes/mobile/theme.js +2890 -3335
  231. package/src/sap/ui/richtexteditor/js/tiny_mce5/themes/mobile/theme.min.js +4 -2
  232. package/src/sap/ui/richtexteditor/js/tiny_mce5/themes/silver/theme.js +15720 -15353
  233. package/src/sap/ui/richtexteditor/js/tiny_mce5/themes/silver/theme.min.js +4 -2
  234. package/src/sap/ui/richtexteditor/js/tiny_mce5/tinymce.d.ts +768 -552
  235. package/src/sap/ui/richtexteditor/js/tiny_mce5/tinymce.js +6762 -6159
  236. package/src/sap/ui/richtexteditor/js/tiny_mce5/tinymce.min.js +4 -2
  237. package/src/sap/ui/richtexteditor/js/tiny_mce5/version.txt +1 -1
  238. package/src/sap/ui/richtexteditor/js/tiny_mce6/icons/default/icons.js +197 -0
  239. package/src/sap/ui/richtexteditor/js/tiny_mce6/icons/default/icons.min.js +7 -0
  240. package/src/sap/ui/richtexteditor/js/tiny_mce6/icons/default/index.js +13 -0
  241. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ar.js +7 -0
  242. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/bg_BG.js +7 -0
  243. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ca.js +7 -0
  244. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/cs.js +7 -0
  245. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/cy.js +1 -0
  246. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/da.js +7 -0
  247. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/de.js +7 -0
  248. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/dv.js +1 -0
  249. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/el.js +7 -0
  250. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/en_GB.js +261 -0
  251. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/es.js +7 -0
  252. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/es_MX.js +1 -0
  253. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/et.js +1 -0
  254. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/eu.js +7 -0
  255. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/fa.js +7 -0
  256. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/fi.js +7 -0
  257. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/fr_FR.js +7 -0
  258. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/he_IL.js +7 -0
  259. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/hi.js +7 -0
  260. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/hr.js +7 -0
  261. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/hu_HU.js +7 -0
  262. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/id.js +7 -0
  263. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/it.js +7 -0
  264. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ja.js +7 -0
  265. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/kk.js +7 -0
  266. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ko_KR.js +7 -0
  267. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/lt.js +1 -0
  268. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/lv.js +1 -0
  269. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ms.js +7 -0
  270. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/nb_NO.js +7 -0
  271. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/nl.js +7 -0
  272. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/pl.js +7 -0
  273. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/pt_BR.js +7 -0
  274. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/pt_PT.js +7 -0
  275. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ro.js +7 -0
  276. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/ru.js +7 -0
  277. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/sk.js +7 -0
  278. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/sl_SI.js +7 -0
  279. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/sr.js +1 -0
  280. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/sv_SE.js +7 -0
  281. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/th_TH.js +7 -0
  282. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/tr.js +7 -0
  283. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/uk.js +7 -0
  284. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/vi.js +7 -0
  285. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/zh_CN.js +7 -0
  286. package/src/sap/ui/richtexteditor/js/tiny_mce6/langs/zh_TW.js +7 -0
  287. package/src/sap/ui/richtexteditor/js/tiny_mce6/license.txt +5 -0
  288. package/src/sap/ui/richtexteditor/js/tiny_mce6/models/dom/index.js +13 -0
  289. package/src/sap/ui/richtexteditor/js/tiny_mce6/models/dom/model.js +8045 -0
  290. package/src/sap/ui/richtexteditor/js/tiny_mce6/models/dom/model.min.js +9 -0
  291. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/accordion/index.js +13 -0
  292. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/accordion/plugin.js +1038 -0
  293. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/accordion/plugin.min.js +9 -0
  294. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/CHANGELOG.md +110 -0
  295. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/codemirror.min.css +13 -0
  296. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/codemirror.min.js +13 -0
  297. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/customeditor.js +10 -0
  298. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/customeditor.min.js +10 -0
  299. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/ar.js +15 -0
  300. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/bg_BG.js +15 -0
  301. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/ca.js +15 -0
  302. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/cs.js +15 -0
  303. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/da.js +15 -0
  304. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/de.js +15 -0
  305. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/el.js +15 -0
  306. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/es.js +15 -0
  307. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/eu.js +15 -0
  308. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/fa.js +15 -0
  309. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/fi.js +15 -0
  310. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/fr_FR.js +15 -0
  311. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/he_IL.js +15 -0
  312. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/hi.js +15 -0
  313. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/hr.js +15 -0
  314. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/hu_HU.js +15 -0
  315. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/id.js +15 -0
  316. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/it.js +15 -0
  317. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/ja.js +15 -0
  318. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/kk.js +15 -0
  319. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/ko_KR.js +15 -0
  320. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/ms.js +15 -0
  321. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/nb_NO.js +15 -0
  322. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/nl.js +15 -0
  323. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/pl.js +15 -0
  324. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/pt_BR.js +15 -0
  325. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/pt_PT.js +15 -0
  326. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/ro.js +15 -0
  327. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/ru.js +15 -0
  328. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/sk.js +15 -0
  329. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/sl_SI.js +15 -0
  330. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/sv_SE.js +15 -0
  331. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/th_TH.js +15 -0
  332. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/tr.js +15 -0
  333. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/uk.js +15 -0
  334. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/vi.js +15 -0
  335. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/zh_CN.js +15 -0
  336. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/langs/zh_TW.js +15 -0
  337. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/license.txt +5 -0
  338. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/plugin.js +10 -0
  339. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/plugin.min.js +10 -0
  340. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/readme.txt +10 -0
  341. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advcode/version.txt +1 -0
  342. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advlist/index.js +13 -0
  343. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advlist/plugin.js +264 -0
  344. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/advlist/plugin.min.js +9 -0
  345. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/anchor/index.js +13 -0
  346. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/anchor/plugin.js +219 -0
  347. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/anchor/plugin.min.js +9 -0
  348. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autolink/index.js +13 -0
  349. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autolink/plugin.js +233 -0
  350. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autolink/plugin.min.js +9 -0
  351. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autoresize/index.js +13 -0
  352. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autoresize/plugin.js +197 -0
  353. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autoresize/plugin.min.js +9 -0
  354. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autosave/index.js +13 -0
  355. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autosave/plugin.js +238 -0
  356. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/autosave/plugin.min.js +9 -0
  357. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/charmap/index.js +13 -0
  358. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/charmap/plugin.js +1663 -0
  359. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/charmap/plugin.min.js +9 -0
  360. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/code/index.js +13 -0
  361. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/code/plugin.js +90 -0
  362. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/code/plugin.min.js +9 -0
  363. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/codesample/index.js +13 -0
  364. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/codesample/plugin.js +2468 -0
  365. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/codesample/plugin.min.js +9 -0
  366. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/directionality/index.js +13 -0
  367. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/directionality/plugin.js +400 -0
  368. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/directionality/plugin.min.js +9 -0
  369. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/emoticons/index.js +13 -0
  370. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/emoticons/js/emojiimages.js +7 -0
  371. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/emoticons/js/emojiimages.min.js +9 -0
  372. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/emoticons/js/emojis.js +7 -0
  373. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/emoticons/js/emojis.min.js +8 -0
  374. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/emoticons/plugin.js +600 -0
  375. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/emoticons/plugin.min.js +9 -0
  376. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/fullscreen/index.js +13 -0
  377. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/fullscreen/plugin.js +1201 -0
  378. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/fullscreen/plugin.min.js +9 -0
  379. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/index.js +13 -0
  380. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ar.js +96 -0
  381. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/bg_BG.js +96 -0
  382. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ca.js +96 -0
  383. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/cs.js +96 -0
  384. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/da.js +96 -0
  385. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/de.js +96 -0
  386. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/el.js +96 -0
  387. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/en.js +96 -0
  388. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/es.js +96 -0
  389. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/eu.js +96 -0
  390. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/fa.js +96 -0
  391. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/fi.js +96 -0
  392. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/fr_FR.js +96 -0
  393. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/he_IL.js +96 -0
  394. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/hi.js +96 -0
  395. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/hr.js +96 -0
  396. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/hu_HU.js +96 -0
  397. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/id.js +96 -0
  398. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/it.js +96 -0
  399. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ja.js +96 -0
  400. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/kk.js +96 -0
  401. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ko_KR.js +96 -0
  402. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ms.js +96 -0
  403. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/nb_NO.js +96 -0
  404. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/nl.js +96 -0
  405. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/pl.js +96 -0
  406. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/pt_BR.js +96 -0
  407. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/pt_PT.js +96 -0
  408. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ro.js +96 -0
  409. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/ru.js +96 -0
  410. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/sk.js +96 -0
  411. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/sl_SI.js +96 -0
  412. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/sv_SE.js +96 -0
  413. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/th_TH.js +96 -0
  414. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/tr.js +96 -0
  415. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/uk.js +96 -0
  416. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/vi.js +96 -0
  417. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/zh_CN.js +90 -0
  418. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/js/i18n/keynav/zh_TW.js +96 -0
  419. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/plugin.js +898 -0
  420. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/help/plugin.min.js +9 -0
  421. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/image/index.js +13 -0
  422. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/image/plugin.js +1509 -0
  423. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/image/plugin.min.js +9 -0
  424. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/importcss/index.js +13 -0
  425. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/importcss/plugin.js +349 -0
  426. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/importcss/plugin.min.js +9 -0
  427. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/insertdatetime/index.js +13 -0
  428. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/insertdatetime/plugin.js +192 -0
  429. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/insertdatetime/plugin.min.js +9 -0
  430. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/link/index.js +13 -0
  431. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/link/plugin.js +1246 -0
  432. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/link/plugin.min.js +9 -0
  433. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/lists/index.js +13 -0
  434. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/lists/plugin.js +1953 -0
  435. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/lists/plugin.min.js +9 -0
  436. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/media/index.js +13 -0
  437. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/media/plugin.js +1240 -0
  438. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/media/plugin.min.js +9 -0
  439. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/nonbreaking/index.js +13 -0
  440. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/nonbreaking/plugin.js +128 -0
  441. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/nonbreaking/plugin.min.js +9 -0
  442. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/pagebreak/index.js +13 -0
  443. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/pagebreak/plugin.js +122 -0
  444. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/pagebreak/plugin.min.js +9 -0
  445. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/CHANGELOG.md +402 -0
  446. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/js/wordimport.js +3498 -0
  447. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ar.js +20 -0
  448. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/bg_BG.js +20 -0
  449. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ca.js +20 -0
  450. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/cs.js +20 -0
  451. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/da.js +20 -0
  452. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/de.js +20 -0
  453. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/el.js +20 -0
  454. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/es.js +20 -0
  455. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/eu.js +20 -0
  456. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/fa.js +20 -0
  457. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/fi.js +20 -0
  458. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/fr_FR.js +20 -0
  459. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/he_IL.js +20 -0
  460. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/hi.js +20 -0
  461. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/hr.js +20 -0
  462. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/hu_HU.js +20 -0
  463. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/id.js +20 -0
  464. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/it.js +20 -0
  465. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ja.js +20 -0
  466. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/kk.js +20 -0
  467. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ko_KR.js +20 -0
  468. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ms.js +20 -0
  469. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/nb_NO.js +20 -0
  470. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/nl.js +20 -0
  471. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/pl.js +20 -0
  472. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/pt_BR.js +20 -0
  473. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/pt_PT.js +20 -0
  474. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ro.js +20 -0
  475. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/ru.js +20 -0
  476. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/sk.js +20 -0
  477. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/sl_SI.js +20 -0
  478. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/sv_SE.js +20 -0
  479. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/th_TH.js +20 -0
  480. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/tr.js +20 -0
  481. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/uk.js +20 -0
  482. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/vi.js +20 -0
  483. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/zh_CN.js +20 -0
  484. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/langs/zh_TW.js +20 -0
  485. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/license.txt +5 -0
  486. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/plugin.js +10 -0
  487. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/plugin.min.js +10 -0
  488. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/readme.txt +10 -0
  489. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/powerpaste/version.txt +1 -0
  490. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/preview/index.js +13 -0
  491. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/preview/plugin.js +102 -0
  492. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/preview/plugin.min.js +9 -0
  493. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/quickbars/index.js +13 -0
  494. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/quickbars/plugin.js +443 -0
  495. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/quickbars/plugin.min.js +9 -0
  496. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/save/index.js +13 -0
  497. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/save/plugin.js +123 -0
  498. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/save/plugin.min.js +9 -0
  499. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/searchreplace/index.js +13 -0
  500. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/searchreplace/plugin.js +1098 -0
  501. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/searchreplace/plugin.min.js +9 -0
  502. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/table/index.js +13 -0
  503. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/table/plugin.js +3467 -0
  504. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/table/plugin.min.js +9 -0
  505. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/template/index.js +13 -0
  506. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/template/plugin.js +572 -0
  507. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/template/plugin.min.js +9 -0
  508. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/visualblocks/index.js +13 -0
  509. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/visualblocks/plugin.js +103 -0
  510. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/visualblocks/plugin.min.js +9 -0
  511. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/visualchars/index.js +13 -0
  512. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/visualchars/plugin.js +565 -0
  513. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/visualchars/plugin.min.js +9 -0
  514. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/wordcount/index.js +13 -0
  515. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/wordcount/plugin.js +410 -0
  516. package/src/sap/ui/richtexteditor/js/tiny_mce6/plugins/wordcount/plugin.min.js +9 -0
  517. package/src/sap/ui/richtexteditor/js/tiny_mce6/readme.txt +12 -0
  518. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/dark/content.css +72 -0
  519. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/dark/content.min.css +7 -0
  520. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/default/content.css +67 -0
  521. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/default/content.min.css +7 -0
  522. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/document/content.css +72 -0
  523. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/document/content.min.css +7 -0
  524. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/tinymce-5/content.css +67 -0
  525. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/tinymce-5/content.min.css +7 -0
  526. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/tinymce-5-dark/content.css +72 -0
  527. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/tinymce-5-dark/content.min.css +7 -0
  528. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/writer/content.css +68 -0
  529. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/content/writer/content.min.css +7 -0
  530. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/content.css +791 -0
  531. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/content.inline.css +785 -0
  532. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/content.inline.min.css +7 -0
  533. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/content.min.css +7 -0
  534. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/skin.css +3694 -0
  535. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/skin.min.css +7 -0
  536. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/skin.shadowdom.css +36 -0
  537. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide/skin.shadowdom.min.css +7 -0
  538. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/content.css +772 -0
  539. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/content.inline.css +785 -0
  540. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/content.inline.min.css +7 -0
  541. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/content.min.css +7 -0
  542. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/skin.css +3697 -0
  543. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/skin.min.css +7 -0
  544. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/skin.shadowdom.css +36 -0
  545. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/oxide-dark/skin.shadowdom.min.css +7 -0
  546. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/content.css +791 -0
  547. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/content.inline.css +785 -0
  548. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/content.inline.min.css +7 -0
  549. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/content.min.css +7 -0
  550. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/skin.css +3788 -0
  551. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/skin.min.css +7 -0
  552. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/skin.shadowdom.css +36 -0
  553. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5/skin.shadowdom.min.css +7 -0
  554. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/content.css +772 -0
  555. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/content.inline.css +785 -0
  556. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/content.inline.min.css +7 -0
  557. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/content.min.css +7 -0
  558. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/skin.css +3788 -0
  559. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/skin.min.css +7 -0
  560. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/skin.shadowdom.css +36 -0
  561. package/src/sap/ui/richtexteditor/js/tiny_mce6/skins/ui/tinymce-5-dark/skin.shadowdom.min.css +7 -0
  562. package/src/sap/ui/richtexteditor/js/tiny_mce6/themes/silver/index.js +13 -0
  563. package/src/sap/ui/richtexteditor/js/tiny_mce6/themes/silver/theme.js +30172 -0
  564. package/src/sap/ui/richtexteditor/js/tiny_mce6/themes/silver/theme.min.js +9 -0
  565. package/src/sap/ui/richtexteditor/js/tiny_mce6/tinymce.d.ts +3206 -0
  566. package/src/sap/ui/richtexteditor/js/tiny_mce6/tinymce.js +31303 -0
  567. package/src/sap/ui/richtexteditor/js/tiny_mce6/tinymce.min.js +9 -0
  568. package/src/sap/ui/richtexteditor/js/tiny_mce6/version.txt +1 -0
  569. package/src/sap/ui/richtexteditor/library.js +64 -27
  570. package/src/sap/ui/richtexteditor/messagebundle_ar.properties +54 -0
  571. package/src/sap/ui/richtexteditor/messagebundle_bg.properties +54 -0
  572. package/src/sap/ui/richtexteditor/messagebundle_ca.properties +54 -0
  573. package/src/sap/ui/richtexteditor/messagebundle_cnr.properties +105 -0
  574. package/src/sap/ui/richtexteditor/messagebundle_cs.properties +54 -0
  575. package/src/sap/ui/richtexteditor/messagebundle_cy.properties +54 -0
  576. package/src/sap/ui/richtexteditor/messagebundle_da.properties +54 -0
  577. package/src/sap/ui/richtexteditor/messagebundle_de.properties +54 -0
  578. package/src/sap/ui/richtexteditor/messagebundle_el.properties +54 -0
  579. package/src/sap/ui/richtexteditor/messagebundle_en.properties +54 -0
  580. package/src/sap/ui/richtexteditor/messagebundle_en_GB.properties +54 -0
  581. package/src/sap/ui/richtexteditor/messagebundle_en_US_saprigi.properties +106 -52
  582. package/src/sap/ui/richtexteditor/messagebundle_es.properties +54 -0
  583. package/src/sap/ui/richtexteditor/messagebundle_es_MX.properties +54 -0
  584. package/src/sap/ui/richtexteditor/messagebundle_et.properties +54 -0
  585. package/src/sap/ui/richtexteditor/messagebundle_fi.properties +54 -0
  586. package/src/sap/ui/richtexteditor/messagebundle_fr.properties +54 -0
  587. package/src/sap/ui/richtexteditor/messagebundle_fr_CA.properties +54 -0
  588. package/src/sap/ui/richtexteditor/messagebundle_hi.properties +54 -0
  589. package/src/sap/ui/richtexteditor/messagebundle_hr.properties +54 -0
  590. package/src/sap/ui/richtexteditor/messagebundle_hu.properties +54 -0
  591. package/src/sap/ui/richtexteditor/messagebundle_id.properties +54 -0
  592. package/src/sap/ui/richtexteditor/messagebundle_it.properties +54 -0
  593. package/src/sap/ui/richtexteditor/messagebundle_iw.properties +54 -0
  594. package/src/sap/ui/richtexteditor/messagebundle_ja.properties +54 -0
  595. package/src/sap/ui/richtexteditor/messagebundle_kk.properties +54 -0
  596. package/src/sap/ui/richtexteditor/messagebundle_ko.properties +54 -0
  597. package/src/sap/ui/richtexteditor/messagebundle_lt.properties +54 -0
  598. package/src/sap/ui/richtexteditor/messagebundle_lv.properties +54 -0
  599. package/src/sap/ui/richtexteditor/messagebundle_ms.properties +54 -0
  600. package/src/sap/ui/richtexteditor/messagebundle_nl.properties +54 -0
  601. package/src/sap/ui/richtexteditor/messagebundle_no.properties +54 -0
  602. package/src/sap/ui/richtexteditor/messagebundle_pl.properties +54 -0
  603. package/src/sap/ui/richtexteditor/messagebundle_pt.properties +54 -0
  604. package/src/sap/ui/richtexteditor/messagebundle_pt_PT.properties +54 -0
  605. package/src/sap/ui/richtexteditor/messagebundle_ro.properties +54 -0
  606. package/src/sap/ui/richtexteditor/messagebundle_ru.properties +54 -0
  607. package/src/sap/ui/richtexteditor/messagebundle_sh.properties +54 -0
  608. package/src/sap/ui/richtexteditor/messagebundle_sk.properties +54 -0
  609. package/src/sap/ui/richtexteditor/messagebundle_sl.properties +54 -0
  610. package/src/sap/ui/richtexteditor/messagebundle_sr.properties +54 -0
  611. package/src/sap/ui/richtexteditor/messagebundle_sv.properties +54 -0
  612. package/src/sap/ui/richtexteditor/messagebundle_th.properties +54 -0
  613. package/src/sap/ui/richtexteditor/messagebundle_tr.properties +54 -0
  614. package/src/sap/ui/richtexteditor/messagebundle_uk.properties +54 -0
  615. package/src/sap/ui/richtexteditor/messagebundle_vi.properties +54 -0
  616. package/src/sap/ui/richtexteditor/messagebundle_zh_CN.properties +54 -0
  617. package/src/sap/ui/richtexteditor/messagebundle_zh_TW.properties +54 -0
  618. package/src/sap/ui/richtexteditor/themes/base/RichTextEditor.less +25 -84
  619. package/src/sap/ui/richtexteditor/themes/sap_belize/RichTextEditor.less +33 -0
  620. package/src/sap/ui/richtexteditor/themes/sap_belize/library.source.less +3 -1
  621. package/src/sap/ui/richtexteditor/themes/sap_belize_hcb/RichTextEditor.less +29 -0
  622. package/src/sap/ui/richtexteditor/themes/sap_belize_hcb/library.source.less +2 -0
  623. package/src/sap/ui/richtexteditor/themes/sap_belize_hcw/RichTextEditor.less +30 -0
  624. package/src/sap/ui/richtexteditor/themes/sap_belize_hcw/library.source.less +2 -0
  625. package/src/sap/ui/richtexteditor/themes/sap_fiori_3/RichTextEditor.less +4 -5
  626. package/src/sap/ui/richtexteditor/themes/sap_fiori_3_dark/RichTextEditor.less +4 -5
  627. package/src/sap/ui/richtexteditor/themes/sap_fiori_3_hcb/RichTextEditor.less +4 -5
  628. package/src/sap/ui/richtexteditor/themes/sap_fiori_3_hcw/RichTextEditor.less +4 -5
  629. package/src/sap/ui/richtexteditor/themes/sap_horizon/RichTextEditor.less +15 -30
@@ -1,8 +1,10 @@
1
-
2
- (function (domGlobals) {
1
+ /**
2
+ * Copyright (c) Tiny Technologies, Inc. All rights reserved.
3
+ */
4
+ (function () {
3
5
  'use strict';
4
6
 
5
- var global = tinymce.util.Tools.resolve('tinymce.PluginManager');
7
+ var global$2 = tinymce.util.Tools.resolve('tinymce.PluginManager');
6
8
 
7
9
  var noop = function () {
8
10
  };
@@ -11,6 +13,9 @@
11
13
  return value;
12
14
  };
13
15
  };
16
+ var identity = function (x) {
17
+ return x;
18
+ };
14
19
  var never = constant(false);
15
20
  var always = constant(true);
16
21
 
@@ -18,20 +23,14 @@
18
23
  return NONE;
19
24
  };
20
25
  var NONE = function () {
21
- var eq = function (o) {
22
- return o.isNone();
23
- };
24
26
  var call = function (thunk) {
25
27
  return thunk();
26
28
  };
27
- var id = function (n) {
28
- return n;
29
- };
29
+ var id = identity;
30
30
  var me = {
31
31
  fold: function (n, _s) {
32
32
  return n();
33
33
  },
34
- is: never,
35
34
  isSome: never,
36
35
  isNone: always,
37
36
  getOr: id,
@@ -48,9 +47,9 @@
48
47
  bind: none,
49
48
  exists: never,
50
49
  forall: always,
51
- filter: none,
52
- equals: eq,
53
- equals_: eq,
50
+ filter: function () {
51
+ return none();
52
+ },
54
53
  toArray: function () {
55
54
  return [];
56
55
  },
@@ -70,9 +69,6 @@
70
69
  fold: function (n, s) {
71
70
  return s(a);
72
71
  },
73
- is: function (v) {
74
- return a === v;
75
- },
76
72
  isSome: always,
77
73
  isNone: never,
78
74
  getOr: constant_a,
@@ -99,14 +95,6 @@
99
95
  },
100
96
  toString: function () {
101
97
  return 'some(' + a + ')';
102
- },
103
- equals: function (o) {
104
- return o.is(a);
105
- },
106
- equals_: function (o, elementEq) {
107
- return o.fold(never, function (b) {
108
- return elementEq(a, b);
109
- });
110
98
  }
111
99
  };
112
100
  return me;
@@ -114,1361 +102,2005 @@
114
102
  var from = function (value) {
115
103
  return value === null || value === undefined ? NONE : some(value);
116
104
  };
117
- var Option = {
105
+ var Optional = {
118
106
  some: some,
119
107
  none: none,
120
108
  from: from
121
109
  };
122
110
 
111
+ var get$1 = function (xs, i) {
112
+ return i >= 0 && i < xs.length ? Optional.some(xs[i]) : Optional.none();
113
+ };
123
114
  var head = function (xs) {
124
- return xs.length === 0 ? Option.none() : Option.some(xs[0]);
115
+ return get$1(xs, 0);
116
+ };
117
+
118
+ var someIf = function (b, a) {
119
+ return b ? Optional.some(a) : Optional.none();
125
120
  };
126
121
 
127
122
  var global$1 = tinymce.util.Tools.resolve('tinymce.dom.DOMUtils');
128
123
 
129
- function isCodeSample(elm) {
124
+ var isCodeSample = function (elm) {
130
125
  return elm && elm.nodeName === 'PRE' && elm.className.indexOf('language-') !== -1;
131
- }
132
- function trimArg(predicateFn) {
126
+ };
127
+ var trimArg = function (predicateFn) {
133
128
  return function (arg1, arg2) {
134
129
  return predicateFn(arg2);
135
130
  };
136
- }
131
+ };
137
132
 
138
- var Global = typeof domGlobals.window !== 'undefined' ? domGlobals.window : Function('return this;')();
133
+ var Global = typeof window !== 'undefined' ? window : Function('return this;')();
139
134
 
140
- var exports$1 = {}, module = { exports: exports$1 }, global$2 = {};
135
+ var exports$1 = {}, module = { exports: exports$1 }, global = {};
141
136
  (function (define, exports, module, require) {
142
137
  var oldprism = window.Prism;
143
138
  window.Prism = { manual: true };
144
- (function (f) {
145
- if (typeof exports === 'object' && typeof module !== 'undefined') {
146
- module.exports = f();
147
- } else if (typeof define === 'function' && define.amd) {
148
- define([], f);
149
- } else {
150
- var g;
151
- if (typeof window !== 'undefined') {
152
- g = window;
153
- } else if (typeof global$2 !== 'undefined') {
154
- g = global$2;
155
- } else if (typeof self !== 'undefined') {
156
- g = self;
157
- } else {
158
- g = this;
159
- }
160
- g.EphoxContactWrapper = f();
161
- }
162
- }(function () {
163
- return function () {
164
- function r(e, n, t) {
165
- function o(i, f) {
166
- if (!n[i]) {
167
- if (!e[i]) {
168
- var c = 'function' == typeof require && require;
169
- if (!f && c)
170
- return c(i, !0);
171
- if (u)
172
- return u(i, !0);
173
- var a = new Error('Cannot find module \'' + i + '\'');
174
- throw a.code = 'MODULE_NOT_FOUND', a;
175
- }
176
- var p = n[i] = { exports: {} };
177
- e[i][0].call(p.exports, function (r) {
178
- var n = e[i][1][r];
179
- return o(n || r);
180
- }, p, p.exports, r, e, n, t);
181
- }
182
- return n[i].exports;
183
- }
184
- for (var u = 'function' == typeof require && require, i = 0; i < t.length; i++)
185
- o(t[i]);
186
- return o;
187
- }
188
- return r;
189
- }()({
190
- 1: [
191
- function (require, module, exports) {
192
- Prism.languages.c = Prism.languages.extend('clike', {
193
- 'class-name': {
194
- pattern: /(\b(?:enum|struct)\s+)\w+/,
195
- lookbehind: true
139
+ (function (global, factory) {
140
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.EphoxContactWrapper = factory());
141
+ }(this, function () {
142
+ var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
143
+ var prismCore = { exports: {} };
144
+ (function (module) {
145
+ var _self = typeof window !== 'undefined' ? window : typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope ? self : {};
146
+ var Prism = function (_self) {
147
+ var lang = /\blang(?:uage)?-([\w-]+)\b/i;
148
+ var uniqueId = 0;
149
+ var plainTextGrammar = {};
150
+ var _ = {
151
+ manual: _self.Prism && _self.Prism.manual,
152
+ disableWorkerMessageHandler: _self.Prism && _self.Prism.disableWorkerMessageHandler,
153
+ util: {
154
+ encode: function encode(tokens) {
155
+ if (tokens instanceof Token) {
156
+ return new Token(tokens.type, encode(tokens.content), tokens.alias);
157
+ } else if (Array.isArray(tokens)) {
158
+ return tokens.map(encode);
159
+ } else {
160
+ return tokens.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/\u00a0/g, ' ');
161
+ }
196
162
  },
197
- 'keyword': /\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,
198
- 'operator': />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,
199
- 'number': /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i
200
- });
201
- Prism.languages.insertBefore('c', 'string', {
202
- 'macro': {
203
- pattern: /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,
204
- lookbehind: true,
205
- alias: 'property',
206
- inside: {
207
- 'string': {
208
- pattern: /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,
209
- lookbehind: true
210
- },
211
- 'directive': {
212
- pattern: /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,
213
- lookbehind: true,
214
- alias: 'keyword'
215
- }
163
+ type: function (o) {
164
+ return Object.prototype.toString.call(o).slice(8, -1);
165
+ },
166
+ objId: function (obj) {
167
+ if (!obj['__id']) {
168
+ Object.defineProperty(obj, '__id', { value: ++uniqueId });
216
169
  }
170
+ return obj['__id'];
217
171
  },
218
- 'constant': /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/
219
- });
220
- delete Prism.languages.c['boolean'];
221
- },
222
- {}
223
- ],
224
- 2: [
225
- function (require, module, exports) {
226
- Prism.languages.clike = {
227
- 'comment': [
228
- {
229
- pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
230
- lookbehind: true
231
- },
232
- {
233
- pattern: /(^|[^\\:])\/\/.*/,
234
- lookbehind: true,
235
- greedy: true
172
+ clone: function deepClone(o, visited) {
173
+ visited = visited || {};
174
+ var clone;
175
+ var id;
176
+ switch (_.util.type(o)) {
177
+ case 'Object':
178
+ id = _.util.objId(o);
179
+ if (visited[id]) {
180
+ return visited[id];
181
+ }
182
+ clone = {};
183
+ visited[id] = clone;
184
+ for (var key in o) {
185
+ if (o.hasOwnProperty(key)) {
186
+ clone[key] = deepClone(o[key], visited);
187
+ }
188
+ }
189
+ return clone;
190
+ case 'Array':
191
+ id = _.util.objId(o);
192
+ if (visited[id]) {
193
+ return visited[id];
194
+ }
195
+ clone = [];
196
+ visited[id] = clone;
197
+ o.forEach(function (v, i) {
198
+ clone[i] = deepClone(v, visited);
199
+ });
200
+ return clone;
201
+ default:
202
+ return o;
236
203
  }
237
- ],
238
- 'string': {
239
- pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
240
- greedy: true
241
204
  },
242
- 'class-name': {
243
- pattern: /(\b(?:class|interface|extends|implements|trait|instanceof|new)\s+|\bcatch\s+\()[\w.\\]+/i,
244
- lookbehind: true,
245
- inside: { 'punctuation': /[.\\]/ }
205
+ getLanguage: function (element) {
206
+ while (element && !lang.test(element.className)) {
207
+ element = element.parentElement;
208
+ }
209
+ if (element) {
210
+ return (element.className.match(lang) || [
211
+ ,
212
+ 'none'
213
+ ])[1].toLowerCase();
214
+ }
215
+ return 'none';
246
216
  },
247
- 'keyword': /\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,
248
- 'boolean': /\b(?:true|false)\b/,
249
- 'function': /\w+(?=\()/,
250
- 'number': /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,
251
- 'operator': /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,
252
- 'punctuation': /[{}[\];(),.:]/
253
- };
254
- },
255
- {}
256
- ],
257
- 3: [
258
- function (require, module, exports) {
259
- (function (global) {
260
- var _self = typeof window !== 'undefined' ? window : typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope ? self : {};
261
- var Prism = function (_self) {
262
- var lang = /\blang(?:uage)?-([\w-]+)\b/i;
263
- var uniqueId = 0;
264
- var _ = {
265
- manual: _self.Prism && _self.Prism.manual,
266
- disableWorkerMessageHandler: _self.Prism && _self.Prism.disableWorkerMessageHandler,
267
- util: {
268
- encode: function (tokens) {
269
- if (tokens instanceof Token) {
270
- return new Token(tokens.type, _.util.encode(tokens.content), tokens.alias);
271
- } else if (Array.isArray(tokens)) {
272
- return tokens.map(_.util.encode);
273
- } else {
274
- return tokens.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/\u00a0/g, ' ');
275
- }
276
- },
277
- type: function (o) {
278
- return Object.prototype.toString.call(o).slice(8, -1);
279
- },
280
- objId: function (obj) {
281
- if (!obj['__id']) {
282
- Object.defineProperty(obj, '__id', { value: ++uniqueId });
283
- }
284
- return obj['__id'];
285
- },
286
- clone: function deepClone(o, visited) {
287
- var clone, id, type = _.util.type(o);
288
- visited = visited || {};
289
- switch (type) {
290
- case 'Object':
291
- id = _.util.objId(o);
292
- if (visited[id]) {
293
- return visited[id];
294
- }
295
- clone = {};
296
- visited[id] = clone;
297
- for (var key in o) {
298
- if (o.hasOwnProperty(key)) {
299
- clone[key] = deepClone(o[key], visited);
300
- }
301
- }
302
- return clone;
303
- case 'Array':
304
- id = _.util.objId(o);
305
- if (visited[id]) {
306
- return visited[id];
307
- }
308
- clone = [];
309
- visited[id] = clone;
310
- o.forEach(function (v, i) {
311
- clone[i] = deepClone(v, visited);
312
- });
313
- return clone;
314
- default:
315
- return o;
316
- }
317
- },
318
- getLanguage: function (element) {
319
- while (element && !lang.test(element.className)) {
320
- element = element.parentElement;
321
- }
322
- if (element) {
323
- return (element.className.match(lang) || [
324
- ,
325
- 'none'
326
- ])[1].toLowerCase();
327
- }
328
- return 'none';
329
- },
330
- currentScript: function () {
331
- if (typeof document === 'undefined') {
332
- return null;
333
- }
334
- if ('currentScript' in document) {
335
- return document.currentScript;
336
- }
337
- try {
338
- throw new Error();
339
- } catch (err) {
340
- var src = (/at [^(\r\n]*\((.*):.+:.+\)$/i.exec(err.stack) || [])[1];
341
- if (src) {
342
- var scripts = document.getElementsByTagName('script');
343
- for (var i in scripts) {
344
- if (scripts[i].src == src) {
345
- return scripts[i];
346
- }
347
- }
348
- }
349
- return null;
217
+ currentScript: function () {
218
+ if (typeof document === 'undefined') {
219
+ return null;
220
+ }
221
+ if ('currentScript' in document && 1 < 2) {
222
+ return document.currentScript;
223
+ }
224
+ try {
225
+ throw new Error();
226
+ } catch (err) {
227
+ var src = (/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(err.stack) || [])[1];
228
+ if (src) {
229
+ var scripts = document.getElementsByTagName('script');
230
+ for (var i in scripts) {
231
+ if (scripts[i].src == src) {
232
+ return scripts[i];
350
233
  }
351
234
  }
352
- },
353
- languages: {
354
- extend: function (id, redef) {
355
- var lang = _.util.clone(_.languages[id]);
356
- for (var key in redef) {
357
- lang[key] = redef[key];
358
- }
359
- return lang;
360
- },
361
- insertBefore: function (inside, before, insert, root) {
362
- root = root || _.languages;
363
- var grammar = root[inside];
364
- var ret = {};
365
- for (var token in grammar) {
366
- if (grammar.hasOwnProperty(token)) {
367
- if (token == before) {
368
- for (var newToken in insert) {
369
- if (insert.hasOwnProperty(newToken)) {
370
- ret[newToken] = insert[newToken];
371
- }
372
- }
373
- }
374
- if (!insert.hasOwnProperty(token)) {
375
- ret[token] = grammar[token];
376
- }
377
- }
378
- }
379
- var old = root[inside];
380
- root[inside] = ret;
381
- _.languages.DFS(_.languages, function (key, value) {
382
- if (value === old && key != inside) {
383
- this[key] = ret;
384
- }
385
- });
386
- return ret;
387
- },
388
- DFS: function DFS(o, callback, type, visited) {
389
- visited = visited || {};
390
- var objId = _.util.objId;
391
- for (var i in o) {
392
- if (o.hasOwnProperty(i)) {
393
- callback.call(o, i, o[i], type || i);
394
- var property = o[i], propertyType = _.util.type(property);
395
- if (propertyType === 'Object' && !visited[objId(property)]) {
396
- visited[objId(property)] = true;
397
- DFS(property, callback, null, visited);
398
- } else if (propertyType === 'Array' && !visited[objId(property)]) {
399
- visited[objId(property)] = true;
400
- DFS(property, callback, i, visited);
401
- }
235
+ }
236
+ return null;
237
+ }
238
+ },
239
+ isActive: function (element, className, defaultActivation) {
240
+ var no = 'no-' + className;
241
+ while (element) {
242
+ var classList = element.classList;
243
+ if (classList.contains(className)) {
244
+ return true;
245
+ }
246
+ if (classList.contains(no)) {
247
+ return false;
248
+ }
249
+ element = element.parentElement;
250
+ }
251
+ return !!defaultActivation;
252
+ }
253
+ },
254
+ languages: {
255
+ plain: plainTextGrammar,
256
+ plaintext: plainTextGrammar,
257
+ text: plainTextGrammar,
258
+ txt: plainTextGrammar,
259
+ extend: function (id, redef) {
260
+ var lang = _.util.clone(_.languages[id]);
261
+ for (var key in redef) {
262
+ lang[key] = redef[key];
263
+ }
264
+ return lang;
265
+ },
266
+ insertBefore: function (inside, before, insert, root) {
267
+ root = root || _.languages;
268
+ var grammar = root[inside];
269
+ var ret = {};
270
+ for (var token in grammar) {
271
+ if (grammar.hasOwnProperty(token)) {
272
+ if (token == before) {
273
+ for (var newToken in insert) {
274
+ if (insert.hasOwnProperty(newToken)) {
275
+ ret[newToken] = insert[newToken];
402
276
  }
403
277
  }
404
278
  }
405
- },
406
- plugins: {},
407
- highlightAll: function (async, callback) {
408
- _.highlightAllUnder(document, async, callback);
409
- },
410
- highlightAllUnder: function (container, async, callback) {
411
- var env = {
412
- callback: callback,
413
- container: container,
414
- selector: 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'
415
- };
416
- _.hooks.run('before-highlightall', env);
417
- env.elements = Array.prototype.slice.apply(env.container.querySelectorAll(env.selector));
418
- _.hooks.run('before-all-elements-highlight', env);
419
- for (var i = 0, element; element = env.elements[i++];) {
420
- _.highlightElement(element, async === true, env.callback);
279
+ if (!insert.hasOwnProperty(token)) {
280
+ ret[token] = grammar[token];
421
281
  }
422
- },
423
- highlightElement: function (element, async, callback) {
424
- var language = _.util.getLanguage(element);
425
- var grammar = _.languages[language];
426
- element.className = element.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
427
- var parent = element.parentNode;
428
- if (parent && parent.nodeName.toLowerCase() === 'pre') {
429
- parent.className = parent.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
430
- }
431
- var code = element.textContent;
432
- var env = {
433
- element: element,
434
- language: language,
435
- grammar: grammar,
436
- code: code
437
- };
438
- function insertHighlightedCode(highlightedCode) {
439
- env.highlightedCode = highlightedCode;
440
- _.hooks.run('before-insert', env);
441
- env.element.innerHTML = env.highlightedCode;
442
- _.hooks.run('after-highlight', env);
443
- _.hooks.run('complete', env);
444
- callback && callback.call(env.element);
445
- }
446
- _.hooks.run('before-sanity-check', env);
447
- if (!env.code) {
448
- _.hooks.run('complete', env);
449
- callback && callback.call(env.element);
450
- return;
282
+ }
283
+ }
284
+ var old = root[inside];
285
+ root[inside] = ret;
286
+ _.languages.DFS(_.languages, function (key, value) {
287
+ if (value === old && key != inside) {
288
+ this[key] = ret;
289
+ }
290
+ });
291
+ return ret;
292
+ },
293
+ DFS: function DFS(o, callback, type, visited) {
294
+ visited = visited || {};
295
+ var objId = _.util.objId;
296
+ for (var i in o) {
297
+ if (o.hasOwnProperty(i)) {
298
+ callback.call(o, i, o[i], type || i);
299
+ var property = o[i];
300
+ var propertyType = _.util.type(property);
301
+ if (propertyType === 'Object' && !visited[objId(property)]) {
302
+ visited[objId(property)] = true;
303
+ DFS(property, callback, null, visited);
304
+ } else if (propertyType === 'Array' && !visited[objId(property)]) {
305
+ visited[objId(property)] = true;
306
+ DFS(property, callback, i, visited);
451
307
  }
452
- _.hooks.run('before-highlight', env);
453
- if (!env.grammar) {
454
- insertHighlightedCode(_.util.encode(env.code));
455
- return;
308
+ }
309
+ }
310
+ }
311
+ },
312
+ plugins: {},
313
+ highlightAll: function (async, callback) {
314
+ _.highlightAllUnder(document, async, callback);
315
+ },
316
+ highlightAllUnder: function (container, async, callback) {
317
+ var env = {
318
+ callback: callback,
319
+ container: container,
320
+ selector: 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'
321
+ };
322
+ _.hooks.run('before-highlightall', env);
323
+ env.elements = Array.prototype.slice.apply(env.container.querySelectorAll(env.selector));
324
+ _.hooks.run('before-all-elements-highlight', env);
325
+ for (var i = 0, element; element = env.elements[i++];) {
326
+ _.highlightElement(element, async === true, env.callback);
327
+ }
328
+ },
329
+ highlightElement: function (element, async, callback) {
330
+ var language = _.util.getLanguage(element);
331
+ var grammar = _.languages[language];
332
+ element.className = element.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
333
+ var parent = element.parentElement;
334
+ if (parent && parent.nodeName.toLowerCase() === 'pre') {
335
+ parent.className = parent.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
336
+ }
337
+ var code = element.textContent;
338
+ var env = {
339
+ element: element,
340
+ language: language,
341
+ grammar: grammar,
342
+ code: code
343
+ };
344
+ function insertHighlightedCode(highlightedCode) {
345
+ env.highlightedCode = highlightedCode;
346
+ _.hooks.run('before-insert', env);
347
+ env.element.innerHTML = env.highlightedCode;
348
+ _.hooks.run('after-highlight', env);
349
+ _.hooks.run('complete', env);
350
+ callback && callback.call(env.element);
351
+ }
352
+ _.hooks.run('before-sanity-check', env);
353
+ parent = env.element.parentElement;
354
+ if (parent && parent.nodeName.toLowerCase() === 'pre' && !parent.hasAttribute('tabindex')) {
355
+ parent.setAttribute('tabindex', '0');
356
+ }
357
+ if (!env.code) {
358
+ _.hooks.run('complete', env);
359
+ callback && callback.call(env.element);
360
+ return;
361
+ }
362
+ _.hooks.run('before-highlight', env);
363
+ if (!env.grammar) {
364
+ insertHighlightedCode(_.util.encode(env.code));
365
+ return;
366
+ }
367
+ if (async && _self.Worker) {
368
+ var worker = new Worker(_.filename);
369
+ worker.onmessage = function (evt) {
370
+ insertHighlightedCode(evt.data);
371
+ };
372
+ worker.postMessage(JSON.stringify({
373
+ language: env.language,
374
+ code: env.code,
375
+ immediateClose: true
376
+ }));
377
+ } else {
378
+ insertHighlightedCode(_.highlight(env.code, env.grammar, env.language));
379
+ }
380
+ },
381
+ highlight: function (text, grammar, language) {
382
+ var env = {
383
+ code: text,
384
+ grammar: grammar,
385
+ language: language
386
+ };
387
+ _.hooks.run('before-tokenize', env);
388
+ env.tokens = _.tokenize(env.code, env.grammar);
389
+ _.hooks.run('after-tokenize', env);
390
+ return Token.stringify(_.util.encode(env.tokens), env.language);
391
+ },
392
+ tokenize: function (text, grammar) {
393
+ var rest = grammar.rest;
394
+ if (rest) {
395
+ for (var token in rest) {
396
+ grammar[token] = rest[token];
397
+ }
398
+ delete grammar.rest;
399
+ }
400
+ var tokenList = new LinkedList();
401
+ addAfter(tokenList, tokenList.head, text);
402
+ matchGrammar(text, tokenList, grammar, tokenList.head, 0);
403
+ return toArray(tokenList);
404
+ },
405
+ hooks: {
406
+ all: {},
407
+ add: function (name, callback) {
408
+ var hooks = _.hooks.all;
409
+ hooks[name] = hooks[name] || [];
410
+ hooks[name].push(callback);
411
+ },
412
+ run: function (name, env) {
413
+ var callbacks = _.hooks.all[name];
414
+ if (!callbacks || !callbacks.length) {
415
+ return;
416
+ }
417
+ for (var i = 0, callback; callback = callbacks[i++];) {
418
+ callback(env);
419
+ }
420
+ }
421
+ },
422
+ Token: Token
423
+ };
424
+ _self.Prism = _;
425
+ function Token(type, content, alias, matchedStr) {
426
+ this.type = type;
427
+ this.content = content;
428
+ this.alias = alias;
429
+ this.length = (matchedStr || '').length | 0;
430
+ }
431
+ Token.stringify = function stringify(o, language) {
432
+ if (typeof o == 'string') {
433
+ return o;
434
+ }
435
+ if (Array.isArray(o)) {
436
+ var s = '';
437
+ o.forEach(function (e) {
438
+ s += stringify(e, language);
439
+ });
440
+ return s;
441
+ }
442
+ var env = {
443
+ type: o.type,
444
+ content: stringify(o.content, language),
445
+ tag: 'span',
446
+ classes: [
447
+ 'token',
448
+ o.type
449
+ ],
450
+ attributes: {},
451
+ language: language
452
+ };
453
+ var aliases = o.alias;
454
+ if (aliases) {
455
+ if (Array.isArray(aliases)) {
456
+ Array.prototype.push.apply(env.classes, aliases);
457
+ } else {
458
+ env.classes.push(aliases);
459
+ }
460
+ }
461
+ _.hooks.run('wrap', env);
462
+ var attributes = '';
463
+ for (var name in env.attributes) {
464
+ attributes += ' ' + name + '="' + (env.attributes[name] || '').replace(/"/g, '&quot;') + '"';
465
+ }
466
+ return '<' + env.tag + ' class="' + env.classes.join(' ') + '"' + attributes + '>' + env.content + '</' + env.tag + '>';
467
+ };
468
+ function matchPattern(pattern, pos, text, lookbehind) {
469
+ pattern.lastIndex = pos;
470
+ var match = pattern.exec(text);
471
+ if (match && lookbehind && match[1]) {
472
+ var lookbehindLength = match[1].length;
473
+ match.index += lookbehindLength;
474
+ match[0] = match[0].slice(lookbehindLength);
475
+ }
476
+ return match;
477
+ }
478
+ function matchGrammar(text, tokenList, grammar, startNode, startPos, rematch) {
479
+ for (var token in grammar) {
480
+ if (!grammar.hasOwnProperty(token) || !grammar[token]) {
481
+ continue;
482
+ }
483
+ var patterns = grammar[token];
484
+ patterns = Array.isArray(patterns) ? patterns : [patterns];
485
+ for (var j = 0; j < patterns.length; ++j) {
486
+ if (rematch && rematch.cause == token + ',' + j) {
487
+ return;
488
+ }
489
+ var patternObj = patterns[j];
490
+ var inside = patternObj.inside;
491
+ var lookbehind = !!patternObj.lookbehind;
492
+ var greedy = !!patternObj.greedy;
493
+ var alias = patternObj.alias;
494
+ if (greedy && !patternObj.pattern.global) {
495
+ var flags = patternObj.pattern.toString().match(/[imsuy]*$/)[0];
496
+ patternObj.pattern = RegExp(patternObj.pattern.source, flags + 'g');
497
+ }
498
+ var pattern = patternObj.pattern || patternObj;
499
+ for (var currentNode = startNode.next, pos = startPos; currentNode !== tokenList.tail; pos += currentNode.value.length, currentNode = currentNode.next) {
500
+ if (rematch && pos >= rematch.reach) {
501
+ break;
502
+ }
503
+ var str = currentNode.value;
504
+ if (tokenList.length > text.length) {
505
+ return;
506
+ }
507
+ if (str instanceof Token) {
508
+ continue;
509
+ }
510
+ var removeCount = 1;
511
+ var match;
512
+ if (greedy) {
513
+ match = matchPattern(pattern, pos, text, lookbehind);
514
+ if (!match) {
515
+ break;
456
516
  }
457
- if (async && _self.Worker) {
458
- var worker = new Worker(_.filename);
459
- worker.onmessage = function (evt) {
460
- insertHighlightedCode(evt.data);
461
- };
462
- worker.postMessage(JSON.stringify({
463
- language: env.language,
464
- code: env.code,
465
- immediateClose: true
466
- }));
467
- } else {
468
- insertHighlightedCode(_.highlight(env.code, env.grammar, env.language));
517
+ var from = match.index;
518
+ var to = match.index + match[0].length;
519
+ var p = pos;
520
+ p += currentNode.value.length;
521
+ while (from >= p) {
522
+ currentNode = currentNode.next;
523
+ p += currentNode.value.length;
469
524
  }
470
- },
471
- highlight: function (text, grammar, language) {
472
- var env = {
473
- code: text,
474
- grammar: grammar,
475
- language: language
476
- };
477
- _.hooks.run('before-tokenize', env);
478
- env.tokens = _.tokenize(env.code, env.grammar);
479
- _.hooks.run('after-tokenize', env);
480
- return Token.stringify(_.util.encode(env.tokens), env.language);
481
- },
482
- matchGrammar: function (text, strarr, grammar, index, startPos, oneshot, target) {
483
- for (var token in grammar) {
484
- if (!grammar.hasOwnProperty(token) || !grammar[token]) {
485
- continue;
486
- }
487
- var patterns = grammar[token];
488
- patterns = Array.isArray(patterns) ? patterns : [patterns];
489
- for (var j = 0; j < patterns.length; ++j) {
490
- if (target && target == token + ',' + j) {
491
- return;
492
- }
493
- var pattern = patterns[j], inside = pattern.inside, lookbehind = !!pattern.lookbehind, greedy = !!pattern.greedy, lookbehindLength = 0, alias = pattern.alias;
494
- if (greedy && !pattern.pattern.global) {
495
- var flags = pattern.pattern.toString().match(/[imsuy]*$/)[0];
496
- pattern.pattern = RegExp(pattern.pattern.source, flags + 'g');
497
- }
498
- pattern = pattern.pattern || pattern;
499
- for (var i = index, pos = startPos; i < strarr.length; pos += strarr[i].length, ++i) {
500
- var str = strarr[i];
501
- if (strarr.length > text.length) {
502
- return;
503
- }
504
- if (str instanceof Token) {
505
- continue;
506
- }
507
- if (greedy && i != strarr.length - 1) {
508
- pattern.lastIndex = pos;
509
- var match = pattern.exec(text);
510
- if (!match) {
511
- break;
512
- }
513
- var from = match.index + (lookbehind && match[1] ? match[1].length : 0), to = match.index + match[0].length, k = i, p = pos;
514
- for (var len = strarr.length; k < len && (p < to || !strarr[k].type && !strarr[k - 1].greedy); ++k) {
515
- p += strarr[k].length;
516
- if (from >= p) {
517
- ++i;
518
- pos = p;
519
- }
520
- }
521
- if (strarr[i] instanceof Token) {
522
- continue;
523
- }
524
- delNum = k - i;
525
- str = text.slice(pos, p);
526
- match.index -= pos;
527
- } else {
528
- pattern.lastIndex = 0;
529
- var match = pattern.exec(str), delNum = 1;
530
- }
531
- if (!match) {
532
- if (oneshot) {
533
- break;
534
- }
535
- continue;
536
- }
537
- if (lookbehind) {
538
- lookbehindLength = match[1] ? match[1].length : 0;
539
- }
540
- var from = match.index + lookbehindLength, match = match[0].slice(lookbehindLength), to = from + match.length, before = str.slice(0, from), after = str.slice(to);
541
- var args = [
542
- i,
543
- delNum
544
- ];
545
- if (before) {
546
- ++i;
547
- pos += before.length;
548
- args.push(before);
549
- }
550
- var wrapped = new Token(token, inside ? _.tokenize(match, inside) : match, alias, match, greedy);
551
- args.push(wrapped);
552
- if (after) {
553
- args.push(after);
554
- }
555
- Array.prototype.splice.apply(strarr, args);
556
- if (delNum != 1)
557
- _.matchGrammar(text, strarr, grammar, i, pos, true, token + ',' + j);
558
- if (oneshot)
559
- break;
560
- }
561
- }
525
+ p -= currentNode.value.length;
526
+ pos = p;
527
+ if (currentNode.value instanceof Token) {
528
+ continue;
562
529
  }
563
- },
564
- tokenize: function (text, grammar) {
565
- var strarr = [text];
566
- var rest = grammar.rest;
567
- if (rest) {
568
- for (var token in rest) {
569
- grammar[token] = rest[token];
570
- }
571
- delete grammar.rest;
530
+ for (var k = currentNode; k !== tokenList.tail && (p < to || typeof k.value === 'string'); k = k.next) {
531
+ removeCount++;
532
+ p += k.value.length;
572
533
  }
573
- _.matchGrammar(text, strarr, grammar, 0, 0, false);
574
- return strarr;
575
- },
576
- hooks: {
577
- all: {},
578
- add: function (name, callback) {
579
- var hooks = _.hooks.all;
580
- hooks[name] = hooks[name] || [];
581
- hooks[name].push(callback);
582
- },
583
- run: function (name, env) {
584
- var callbacks = _.hooks.all[name];
585
- if (!callbacks || !callbacks.length) {
586
- return;
587
- }
588
- for (var i = 0, callback; callback = callbacks[i++];) {
589
- callback(env);
590
- }
534
+ removeCount--;
535
+ str = text.slice(pos, p);
536
+ match.index -= pos;
537
+ } else {
538
+ match = matchPattern(pattern, 0, str, lookbehind);
539
+ if (!match) {
540
+ continue;
591
541
  }
592
- },
593
- Token: Token
594
- };
595
- _self.Prism = _;
596
- function Token(type, content, alias, matchedStr, greedy) {
597
- this.type = type;
598
- this.content = content;
599
- this.alias = alias;
600
- this.length = (matchedStr || '').length | 0;
601
- this.greedy = !!greedy;
602
- }
603
- Token.stringify = function (o, language) {
604
- if (typeof o == 'string') {
605
- return o;
606
542
  }
607
- if (Array.isArray(o)) {
608
- return o.map(function (element) {
609
- return Token.stringify(element, language);
610
- }).join('');
543
+ var from = match.index;
544
+ var matchStr = match[0];
545
+ var before = str.slice(0, from);
546
+ var after = str.slice(from + matchStr.length);
547
+ var reach = pos + str.length;
548
+ if (rematch && reach > rematch.reach) {
549
+ rematch.reach = reach;
611
550
  }
612
- var env = {
613
- type: o.type,
614
- content: Token.stringify(o.content, language),
615
- tag: 'span',
616
- classes: [
617
- 'token',
618
- o.type
619
- ],
620
- attributes: {},
621
- language: language
622
- };
623
- if (o.alias) {
624
- var aliases = Array.isArray(o.alias) ? o.alias : [o.alias];
625
- Array.prototype.push.apply(env.classes, aliases);
626
- }
627
- _.hooks.run('wrap', env);
628
- var attributes = Object.keys(env.attributes).map(function (name) {
629
- return name + '="' + (env.attributes[name] || '').replace(/"/g, '&quot;') + '"';
630
- }).join(' ');
631
- return '<' + env.tag + ' class="' + env.classes.join(' ') + '"' + (attributes ? ' ' + attributes : '') + '>' + env.content + '</' + env.tag + '>';
632
- };
633
- if (!_self.document) {
634
- if (!_self.addEventListener) {
635
- return _;
551
+ var removeFrom = currentNode.prev;
552
+ if (before) {
553
+ removeFrom = addAfter(tokenList, removeFrom, before);
554
+ pos += before.length;
636
555
  }
637
- if (!_.disableWorkerMessageHandler) {
638
- _self.addEventListener('message', function (evt) {
639
- var message = JSON.parse(evt.data), lang = message.language, code = message.code, immediateClose = message.immediateClose;
640
- _self.postMessage(_.highlight(code, _.languages[lang], lang));
641
- if (immediateClose) {
642
- _self.close();
643
- }
644
- }, false);
645
- }
646
- return _;
647
- }
648
- var script = _.util.currentScript();
649
- if (script) {
650
- _.filename = script.src;
651
- if (script.hasAttribute('data-manual')) {
652
- _.manual = true;
556
+ removeRange(tokenList, removeFrom, removeCount);
557
+ var wrapped = new Token(token, inside ? _.tokenize(matchStr, inside) : matchStr, alias, matchStr);
558
+ currentNode = addAfter(tokenList, removeFrom, wrapped);
559
+ if (after) {
560
+ addAfter(tokenList, currentNode, after);
653
561
  }
654
- }
655
- if (!_.manual) {
656
- var highlightAutomaticallyCallback = function () {
657
- if (!_.manual) {
658
- _.highlightAll();
659
- }
660
- };
661
- var readyState = document.readyState;
662
- if (readyState === 'loading' || readyState === 'interactive' && script && script.defer) {
663
- document.addEventListener('DOMContentLoaded', highlightAutomaticallyCallback);
664
- } else {
665
- if (window.requestAnimationFrame) {
666
- window.requestAnimationFrame(highlightAutomaticallyCallback);
667
- } else {
668
- window.setTimeout(highlightAutomaticallyCallback, 16);
562
+ if (removeCount > 1) {
563
+ var nestedRematch = {
564
+ cause: token + ',' + j,
565
+ reach: reach
566
+ };
567
+ matchGrammar(text, tokenList, grammar, currentNode.prev, pos, nestedRematch);
568
+ if (rematch && nestedRematch.reach > rematch.reach) {
569
+ rematch.reach = nestedRematch.reach;
669
570
  }
670
571
  }
671
572
  }
672
- return _;
673
- }(_self);
674
- if (typeof module !== 'undefined' && module.exports) {
675
- module.exports = Prism;
676
573
  }
677
- if (typeof global !== 'undefined') {
678
- global.Prism = Prism;
574
+ }
575
+ }
576
+ function LinkedList() {
577
+ var head = {
578
+ value: null,
579
+ prev: null,
580
+ next: null
581
+ };
582
+ var tail = {
583
+ value: null,
584
+ prev: head,
585
+ next: null
586
+ };
587
+ head.next = tail;
588
+ this.head = head;
589
+ this.tail = tail;
590
+ this.length = 0;
591
+ }
592
+ function addAfter(list, node, value) {
593
+ var next = node.next;
594
+ var newNode = {
595
+ value: value,
596
+ prev: node,
597
+ next: next
598
+ };
599
+ node.next = newNode;
600
+ next.prev = newNode;
601
+ list.length++;
602
+ return newNode;
603
+ }
604
+ function removeRange(list, node, count) {
605
+ var next = node.next;
606
+ for (var i = 0; i < count && next !== list.tail; i++) {
607
+ next = next.next;
608
+ }
609
+ node.next = next;
610
+ next.prev = node;
611
+ list.length -= i;
612
+ }
613
+ function toArray(list) {
614
+ var array = [];
615
+ var node = list.head.next;
616
+ while (node !== list.tail) {
617
+ array.push(node.value);
618
+ node = node.next;
619
+ }
620
+ return array;
621
+ }
622
+ if (!_self.document) {
623
+ if (!_self.addEventListener) {
624
+ return _;
625
+ }
626
+ if (!_.disableWorkerMessageHandler) {
627
+ _self.addEventListener('message', function (evt) {
628
+ var message = JSON.parse(evt.data);
629
+ var lang = message.language;
630
+ var code = message.code;
631
+ var immediateClose = message.immediateClose;
632
+ _self.postMessage(_.highlight(code, _.languages[lang], lang));
633
+ if (immediateClose) {
634
+ _self.close();
635
+ }
636
+ }, false);
637
+ }
638
+ return _;
639
+ }
640
+ var script = _.util.currentScript();
641
+ if (script) {
642
+ _.filename = script.src;
643
+ if (script.hasAttribute('data-manual')) {
644
+ _.manual = true;
645
+ }
646
+ }
647
+ function highlightAutomaticallyCallback() {
648
+ if (!_.manual) {
649
+ _.highlightAll();
650
+ }
651
+ }
652
+ if (!_.manual) {
653
+ var readyState = document.readyState;
654
+ if (readyState === 'loading' || readyState === 'interactive' && script && script.defer) {
655
+ document.addEventListener('DOMContentLoaded', highlightAutomaticallyCallback);
656
+ } else {
657
+ if (window.requestAnimationFrame) {
658
+ window.requestAnimationFrame(highlightAutomaticallyCallback);
659
+ } else {
660
+ window.setTimeout(highlightAutomaticallyCallback, 16);
679
661
  }
680
- }.call(this, typeof global$2 !== 'undefined' ? global$2 : typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : {}));
662
+ }
663
+ }
664
+ return _;
665
+ }(_self);
666
+ if (module.exports) {
667
+ module.exports = Prism;
668
+ }
669
+ if (typeof commonjsGlobal !== 'undefined') {
670
+ commonjsGlobal.Prism = Prism;
671
+ }
672
+ }(prismCore));
673
+ Prism.languages.clike = {
674
+ 'comment': [
675
+ {
676
+ pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
677
+ lookbehind: true,
678
+ greedy: true
681
679
  },
682
- {}
680
+ {
681
+ pattern: /(^|[^\\:])\/\/.*/,
682
+ lookbehind: true,
683
+ greedy: true
684
+ }
683
685
  ],
684
- 4: [
685
- function (require, module, exports) {
686
- Prism.languages.cpp = Prism.languages.extend('c', {
687
- 'class-name': {
688
- pattern: /(\b(?:class|enum|struct)\s+)\w+/,
686
+ 'string': {
687
+ pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
688
+ greedy: true
689
+ },
690
+ 'class-name': {
691
+ pattern: /(\b(?:class|interface|extends|implements|trait|instanceof|new)\s+|\bcatch\s+\()[\w.\\]+/i,
692
+ lookbehind: true,
693
+ inside: { 'punctuation': /[.\\]/ }
694
+ },
695
+ 'keyword': /\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,
696
+ 'boolean': /\b(?:true|false)\b/,
697
+ 'function': /\b\w+(?=\()/,
698
+ 'number': /\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,
699
+ 'operator': /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,
700
+ 'punctuation': /[{}[\];(),.:]/
701
+ };
702
+ (function (Prism) {
703
+ function getPlaceholder(language, index) {
704
+ return '___' + language.toUpperCase() + index + '___';
705
+ }
706
+ Object.defineProperties(Prism.languages['markup-templating'] = {}, {
707
+ buildPlaceholders: {
708
+ value: function (env, language, placeholderPattern, replaceFilter) {
709
+ if (env.language !== language) {
710
+ return;
711
+ }
712
+ var tokenStack = env.tokenStack = [];
713
+ env.code = env.code.replace(placeholderPattern, function (match) {
714
+ if (typeof replaceFilter === 'function' && !replaceFilter(match)) {
715
+ return match;
716
+ }
717
+ var i = tokenStack.length;
718
+ var placeholder;
719
+ while (env.code.indexOf(placeholder = getPlaceholder(language, i)) !== -1) {
720
+ ++i;
721
+ }
722
+ tokenStack[i] = match;
723
+ return placeholder;
724
+ });
725
+ env.grammar = Prism.languages.markup;
726
+ }
727
+ },
728
+ tokenizePlaceholders: {
729
+ value: function (env, language) {
730
+ if (env.language !== language || !env.tokenStack) {
731
+ return;
732
+ }
733
+ env.grammar = Prism.languages[language];
734
+ var j = 0;
735
+ var keys = Object.keys(env.tokenStack);
736
+ function walkTokens(tokens) {
737
+ for (var i = 0; i < tokens.length; i++) {
738
+ if (j >= keys.length) {
739
+ break;
740
+ }
741
+ var token = tokens[i];
742
+ if (typeof token === 'string' || token.content && typeof token.content === 'string') {
743
+ var k = keys[j];
744
+ var t = env.tokenStack[k];
745
+ var s = typeof token === 'string' ? token : token.content;
746
+ var placeholder = getPlaceholder(language, k);
747
+ var index = s.indexOf(placeholder);
748
+ if (index > -1) {
749
+ ++j;
750
+ var before = s.substring(0, index);
751
+ var middle = new Prism.Token(language, Prism.tokenize(t, env.grammar), 'language-' + language, t);
752
+ var after = s.substring(index + placeholder.length);
753
+ var replacement = [];
754
+ if (before) {
755
+ replacement.push.apply(replacement, walkTokens([before]));
756
+ }
757
+ replacement.push(middle);
758
+ if (after) {
759
+ replacement.push.apply(replacement, walkTokens([after]));
760
+ }
761
+ if (typeof token === 'string') {
762
+ tokens.splice.apply(tokens, [
763
+ i,
764
+ 1
765
+ ].concat(replacement));
766
+ } else {
767
+ token.content = replacement;
768
+ }
769
+ }
770
+ } else if (token.content) {
771
+ walkTokens(token.content);
772
+ }
773
+ }
774
+ return tokens;
775
+ }
776
+ walkTokens(env.tokens);
777
+ }
778
+ }
779
+ });
780
+ }(Prism));
781
+ Prism.languages.c = Prism.languages.extend('clike', {
782
+ 'comment': {
783
+ pattern: /\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,
784
+ greedy: true
785
+ },
786
+ 'class-name': {
787
+ pattern: /(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,
788
+ lookbehind: true
789
+ },
790
+ 'keyword': /\b(?:__attribute__|_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,
791
+ 'function': /\b[a-z_]\w*(?=\s*\()/i,
792
+ 'number': /(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,
793
+ 'operator': />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/
794
+ });
795
+ Prism.languages.insertBefore('c', 'string', {
796
+ 'macro': {
797
+ pattern: /(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,
798
+ lookbehind: true,
799
+ greedy: true,
800
+ alias: 'property',
801
+ inside: {
802
+ 'string': [
803
+ {
804
+ pattern: /^(#\s*include\s*)<[^>]+>/,
689
805
  lookbehind: true
690
806
  },
691
- 'keyword': /\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|class|compl|const|constexpr|const_cast|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|float|for|friend|goto|if|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|mutable|namespace|new|noexcept|nullptr|operator|private|protected|public|register|reinterpret_cast|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,
692
- 'number': {
693
- pattern: /(?:\b0b[01']+|\b0x(?:[\da-f']+\.?[\da-f']*|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+\.?[\d']*|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]*/i,
694
- greedy: true
807
+ Prism.languages.c['string']
808
+ ],
809
+ 'comment': Prism.languages.c['comment'],
810
+ 'macro-name': [
811
+ {
812
+ pattern: /(^#\s*define\s+)\w+\b(?!\()/i,
813
+ lookbehind: true
695
814
  },
696
- 'operator': />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,
697
- 'boolean': /\b(?:true|false)\b/
698
- });
699
- Prism.languages.insertBefore('cpp', 'string', {
700
- 'raw-string': {
701
- pattern: /R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,
702
- alias: 'string',
703
- greedy: true
815
+ {
816
+ pattern: /(^#\s*define\s+)\w+\b(?=\()/i,
817
+ lookbehind: true,
818
+ alias: 'function'
819
+ }
820
+ ],
821
+ 'directive': {
822
+ pattern: /^(#\s*)[a-z]+/,
823
+ lookbehind: true,
824
+ alias: 'keyword'
825
+ },
826
+ 'directive-hash': /^#/,
827
+ 'punctuation': /##|\\(?=[\r\n])/,
828
+ 'expression': {
829
+ pattern: /\S[\s\S]*/,
830
+ inside: Prism.languages.c
831
+ }
832
+ }
833
+ },
834
+ 'constant': /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/
835
+ });
836
+ delete Prism.languages.c['boolean'];
837
+ (function (Prism) {
838
+ var keyword = /\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char8_t|char16_t|char32_t|class|compl|concept|const|consteval|constexpr|constinit|const_cast|continue|co_await|co_return|co_yield|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int8_t|int16_t|int32_t|int64_t|uint8_t|uint16_t|uint32_t|uint64_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/;
839
+ var modName = /\b(?!<keyword>)\w+(?:\s*\.\s*\w+)*\b/.source.replace(/<keyword>/g, function () {
840
+ return keyword.source;
841
+ });
842
+ Prism.languages.cpp = Prism.languages.extend('c', {
843
+ 'class-name': [
844
+ {
845
+ pattern: RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!<keyword>)\w+/.source.replace(/<keyword>/g, function () {
846
+ return keyword.source;
847
+ })),
848
+ lookbehind: true
849
+ },
850
+ /\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,
851
+ /\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,
852
+ /\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/
853
+ ],
854
+ 'keyword': keyword,
855
+ 'number': {
856
+ pattern: /(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,
857
+ greedy: true
858
+ },
859
+ 'operator': />>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,
860
+ 'boolean': /\b(?:true|false)\b/
861
+ });
862
+ Prism.languages.insertBefore('cpp', 'string', {
863
+ 'module': {
864
+ pattern: RegExp(/(\b(?:module|import)\s+)/.source + '(?:' + /"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source + '|' + /<mod-name>(?:\s*:\s*<mod-name>)?|:\s*<mod-name>/.source.replace(/<mod-name>/g, function () {
865
+ return modName;
866
+ }) + ')'),
867
+ lookbehind: true,
868
+ greedy: true,
869
+ inside: {
870
+ 'string': /^[<"][\s\S]+/,
871
+ 'operator': /:/,
872
+ 'punctuation': /\./
873
+ }
874
+ },
875
+ 'raw-string': {
876
+ pattern: /R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,
877
+ alias: 'string',
878
+ greedy: true
879
+ }
880
+ });
881
+ Prism.languages.insertBefore('cpp', 'keyword', {
882
+ 'generic-function': {
883
+ pattern: /\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,
884
+ inside: {
885
+ 'function': /^\w+/,
886
+ 'generic': {
887
+ pattern: /<[\s\S]+/,
888
+ alias: 'class-name',
889
+ inside: Prism.languages.cpp
704
890
  }
891
+ }
892
+ }
893
+ });
894
+ Prism.languages.insertBefore('cpp', 'operator', {
895
+ 'double-colon': {
896
+ pattern: /::/,
897
+ alias: 'punctuation'
898
+ }
899
+ });
900
+ Prism.languages.insertBefore('cpp', 'class-name', {
901
+ 'base-clause': {
902
+ pattern: /(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,
903
+ lookbehind: true,
904
+ greedy: true,
905
+ inside: Prism.languages.extend('cpp', {})
906
+ }
907
+ });
908
+ Prism.languages.insertBefore('inside', 'double-colon', { 'class-name': /\b[a-z_]\w*\b(?!\s*::)/i }, Prism.languages.cpp['base-clause']);
909
+ }(Prism));
910
+ (function (Prism) {
911
+ function replace(pattern, replacements) {
912
+ return pattern.replace(/<<(\d+)>>/g, function (m, index) {
913
+ return '(?:' + replacements[+index] + ')';
914
+ });
915
+ }
916
+ function re(pattern, replacements, flags) {
917
+ return RegExp(replace(pattern, replacements), flags || '');
918
+ }
919
+ function nested(pattern, depthLog2) {
920
+ for (var i = 0; i < depthLog2; i++) {
921
+ pattern = pattern.replace(/<<self>>/g, function () {
922
+ return '(?:' + pattern + ')';
705
923
  });
924
+ }
925
+ return pattern.replace(/<<self>>/g, '[^\\s\\S]');
926
+ }
927
+ var keywordKinds = {
928
+ type: 'bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void',
929
+ typeDeclaration: 'class enum interface record struct',
930
+ contextual: 'add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)',
931
+ other: 'abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield'
932
+ };
933
+ function keywordsToPattern(words) {
934
+ return '\\b(?:' + words.trim().replace(/ /g, '|') + ')\\b';
935
+ }
936
+ var typeDeclarationKeywords = keywordsToPattern(keywordKinds.typeDeclaration);
937
+ var keywords = RegExp(keywordsToPattern(keywordKinds.type + ' ' + keywordKinds.typeDeclaration + ' ' + keywordKinds.contextual + ' ' + keywordKinds.other));
938
+ var nonTypeKeywords = keywordsToPattern(keywordKinds.typeDeclaration + ' ' + keywordKinds.contextual + ' ' + keywordKinds.other);
939
+ var nonContextualKeywords = keywordsToPattern(keywordKinds.type + ' ' + keywordKinds.typeDeclaration + ' ' + keywordKinds.other);
940
+ var generic = nested(/<(?:[^<>;=+\-*/%&|^]|<<self>>)*>/.source, 2);
941
+ var nestedRound = nested(/\((?:[^()]|<<self>>)*\)/.source, 2);
942
+ var name = /@?\b[A-Za-z_]\w*\b/.source;
943
+ var genericName = replace(/<<0>>(?:\s*<<1>>)?/.source, [
944
+ name,
945
+ generic
946
+ ]);
947
+ var identifier = replace(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source, [
948
+ nonTypeKeywords,
949
+ genericName
950
+ ]);
951
+ var array = /\[\s*(?:,\s*)*\]/.source;
952
+ var typeExpressionWithoutTuple = replace(/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source, [
953
+ identifier,
954
+ array
955
+ ]);
956
+ var tupleElement = replace(/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source, [
957
+ generic,
958
+ nestedRound,
959
+ array
960
+ ]);
961
+ var tuple = replace(/\(<<0>>+(?:,<<0>>+)+\)/.source, [tupleElement]);
962
+ var typeExpression = replace(/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source, [
963
+ tuple,
964
+ identifier,
965
+ array
966
+ ]);
967
+ var typeInside = {
968
+ 'keyword': keywords,
969
+ 'punctuation': /[<>()?,.:[\]]/
970
+ };
971
+ var character = /'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source;
972
+ var regularString = /"(?:\\.|[^\\"\r\n])*"/.source;
973
+ var verbatimString = /@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;
974
+ Prism.languages.csharp = Prism.languages.extend('clike', {
975
+ 'string': [
976
+ {
977
+ pattern: re(/(^|[^$\\])<<0>>/.source, [verbatimString]),
978
+ lookbehind: true,
979
+ greedy: true
980
+ },
981
+ {
982
+ pattern: re(/(^|[^@$\\])<<0>>/.source, [regularString]),
983
+ lookbehind: true,
984
+ greedy: true
985
+ },
986
+ {
987
+ pattern: RegExp(character),
988
+ greedy: true,
989
+ alias: 'character'
990
+ }
991
+ ],
992
+ 'class-name': [
993
+ {
994
+ pattern: re(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source, [identifier]),
995
+ lookbehind: true,
996
+ inside: typeInside
997
+ },
998
+ {
999
+ pattern: re(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source, [
1000
+ name,
1001
+ typeExpression
1002
+ ]),
1003
+ lookbehind: true,
1004
+ inside: typeInside
1005
+ },
1006
+ {
1007
+ pattern: re(/(\busing\s+)<<0>>(?=\s*=)/.source, [name]),
1008
+ lookbehind: true
1009
+ },
1010
+ {
1011
+ pattern: re(/(\b<<0>>\s+)<<1>>/.source, [
1012
+ typeDeclarationKeywords,
1013
+ genericName
1014
+ ]),
1015
+ lookbehind: true,
1016
+ inside: typeInside
1017
+ },
1018
+ {
1019
+ pattern: re(/(\bcatch\s*\(\s*)<<0>>/.source, [identifier]),
1020
+ lookbehind: true,
1021
+ inside: typeInside
1022
+ },
1023
+ {
1024
+ pattern: re(/(\bwhere\s+)<<0>>/.source, [name]),
1025
+ lookbehind: true
1026
+ },
1027
+ {
1028
+ pattern: re(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source, [typeExpressionWithoutTuple]),
1029
+ lookbehind: true,
1030
+ inside: typeInside
1031
+ },
1032
+ {
1033
+ pattern: re(/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/.source, [
1034
+ typeExpression,
1035
+ nonContextualKeywords,
1036
+ name
1037
+ ]),
1038
+ inside: typeInside
1039
+ }
1040
+ ],
1041
+ 'keyword': keywords,
1042
+ 'number': /(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:ul|lu|[dflmu])?\b/i,
1043
+ 'operator': />>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,
1044
+ 'punctuation': /\?\.?|::|[{}[\];(),.:]/
1045
+ });
1046
+ Prism.languages.insertBefore('csharp', 'number', {
1047
+ 'range': {
1048
+ pattern: /\.\./,
1049
+ alias: 'operator'
1050
+ }
1051
+ });
1052
+ Prism.languages.insertBefore('csharp', 'punctuation', {
1053
+ 'named-parameter': {
1054
+ pattern: re(/([(,]\s*)<<0>>(?=\s*:)/.source, [name]),
1055
+ lookbehind: true,
1056
+ alias: 'punctuation'
1057
+ }
1058
+ });
1059
+ Prism.languages.insertBefore('csharp', 'class-name', {
1060
+ 'namespace': {
1061
+ pattern: re(/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source, [name]),
1062
+ lookbehind: true,
1063
+ inside: { 'punctuation': /\./ }
706
1064
  },
707
- {}
708
- ],
709
- 5: [
710
- function (require, module, exports) {
711
- Prism.languages.csharp = Prism.languages.extend('clike', {
712
- 'keyword': /\b(?:abstract|add|alias|as|ascending|async|await|base|bool|break|byte|case|catch|char|checked|class|const|continue|decimal|default|delegate|descending|do|double|dynamic|else|enum|event|explicit|extern|false|finally|fixed|float|for|foreach|from|get|global|goto|group|if|implicit|in|int|interface|internal|into|is|join|let|lock|long|namespace|new|null|object|operator|orderby|out|override|params|partial|private|protected|public|readonly|ref|remove|return|sbyte|sealed|select|set|short|sizeof|stackalloc|static|string|struct|switch|this|throw|true|try|typeof|uint|ulong|unchecked|unsafe|ushort|using|value|var|virtual|void|volatile|where|while|yield)\b/,
713
- 'string': [
714
- {
715
- pattern: /@("|')(?:\1\1|\\[\s\S]|(?!\1)[^\\])*\1/,
716
- greedy: true
717
- },
718
- {
719
- pattern: /("|')(?:\\.|(?!\1)[^\\\r\n])*?\1/,
720
- greedy: true
721
- }
722
- ],
723
- 'class-name': [
724
- {
725
- pattern: /\b[A-Z]\w*(?:\.\w+)*\b(?=\s+\w+)/,
726
- inside: { punctuation: /\./ }
727
- },
728
- {
729
- pattern: /(\[)[A-Z]\w*(?:\.\w+)*\b/,
730
- lookbehind: true,
731
- inside: { punctuation: /\./ }
732
- },
733
- {
734
- pattern: /(\b(?:class|interface)\s+[A-Z]\w*(?:\.\w+)*\s*:\s*)[A-Z]\w*(?:\.\w+)*\b/,
1065
+ 'type-expression': {
1066
+ pattern: re(/(\b(?:default|typeof|sizeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/.source, [nestedRound]),
1067
+ lookbehind: true,
1068
+ alias: 'class-name',
1069
+ inside: typeInside
1070
+ },
1071
+ 'return-type': {
1072
+ pattern: re(/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source, [
1073
+ typeExpression,
1074
+ identifier
1075
+ ]),
1076
+ inside: typeInside,
1077
+ alias: 'class-name'
1078
+ },
1079
+ 'constructor-invocation': {
1080
+ pattern: re(/(\bnew\s+)<<0>>(?=\s*[[({])/.source, [typeExpression]),
1081
+ lookbehind: true,
1082
+ inside: typeInside,
1083
+ alias: 'class-name'
1084
+ },
1085
+ 'generic-method': {
1086
+ pattern: re(/<<0>>\s*<<1>>(?=\s*\()/.source, [
1087
+ name,
1088
+ generic
1089
+ ]),
1090
+ inside: {
1091
+ 'function': re(/^<<0>>/.source, [name]),
1092
+ 'generic': {
1093
+ pattern: RegExp(generic),
1094
+ alias: 'class-name',
1095
+ inside: typeInside
1096
+ }
1097
+ }
1098
+ },
1099
+ 'type-list': {
1100
+ pattern: re(/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/.source, [
1101
+ typeDeclarationKeywords,
1102
+ genericName,
1103
+ name,
1104
+ typeExpression,
1105
+ keywords.source,
1106
+ nestedRound,
1107
+ /\bnew\s*\(\s*\)/.source
1108
+ ]),
1109
+ lookbehind: true,
1110
+ inside: {
1111
+ 'record-arguments': {
1112
+ pattern: re(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source, [
1113
+ genericName,
1114
+ nestedRound
1115
+ ]),
1116
+ lookbehind: true,
1117
+ greedy: true,
1118
+ inside: Prism.languages.csharp
1119
+ },
1120
+ 'keyword': keywords,
1121
+ 'class-name': {
1122
+ pattern: RegExp(typeExpression),
1123
+ greedy: true,
1124
+ inside: typeInside
1125
+ },
1126
+ 'punctuation': /[,()]/
1127
+ }
1128
+ },
1129
+ 'preprocessor': {
1130
+ pattern: /(^[\t ]*)#.*/m,
1131
+ lookbehind: true,
1132
+ alias: 'property',
1133
+ inside: {
1134
+ 'directive': {
1135
+ pattern: /(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,
1136
+ lookbehind: true,
1137
+ alias: 'keyword'
1138
+ }
1139
+ }
1140
+ }
1141
+ });
1142
+ var regularStringOrCharacter = regularString + '|' + character;
1143
+ var regularStringCharacterOrComment = replace(/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source, [regularStringOrCharacter]);
1144
+ var roundExpression = nested(replace(/[^"'/()]|<<0>>|\(<<self>>*\)/.source, [regularStringCharacterOrComment]), 2);
1145
+ var attrTarget = /\b(?:assembly|event|field|method|module|param|property|return|type)\b/.source;
1146
+ var attr = replace(/<<0>>(?:\s*\(<<1>>*\))?/.source, [
1147
+ identifier,
1148
+ roundExpression
1149
+ ]);
1150
+ Prism.languages.insertBefore('csharp', 'class-name', {
1151
+ 'attribute': {
1152
+ pattern: re(/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/.source, [
1153
+ attrTarget,
1154
+ attr
1155
+ ]),
1156
+ lookbehind: true,
1157
+ greedy: true,
1158
+ inside: {
1159
+ 'target': {
1160
+ pattern: re(/^<<0>>(?=\s*:)/.source, [attrTarget]),
1161
+ alias: 'keyword'
1162
+ },
1163
+ 'attribute-arguments': {
1164
+ pattern: re(/\(<<0>>*\)/.source, [roundExpression]),
1165
+ inside: Prism.languages.csharp
1166
+ },
1167
+ 'class-name': {
1168
+ pattern: RegExp(identifier),
1169
+ inside: { 'punctuation': /\./ }
1170
+ },
1171
+ 'punctuation': /[:,]/
1172
+ }
1173
+ }
1174
+ });
1175
+ var formatString = /:[^}\r\n]+/.source;
1176
+ var mInterpolationRound = nested(replace(/[^"'/()]|<<0>>|\(<<self>>*\)/.source, [regularStringCharacterOrComment]), 2);
1177
+ var mInterpolation = replace(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source, [
1178
+ mInterpolationRound,
1179
+ formatString
1180
+ ]);
1181
+ var sInterpolationRound = nested(replace(/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<<self>>*\)/.source, [regularStringOrCharacter]), 2);
1182
+ var sInterpolation = replace(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source, [
1183
+ sInterpolationRound,
1184
+ formatString
1185
+ ]);
1186
+ function createInterpolationInside(interpolation, interpolationRound) {
1187
+ return {
1188
+ 'interpolation': {
1189
+ pattern: re(/((?:^|[^{])(?:\{\{)*)<<0>>/.source, [interpolation]),
1190
+ lookbehind: true,
1191
+ inside: {
1192
+ 'format-string': {
1193
+ pattern: re(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source, [
1194
+ interpolationRound,
1195
+ formatString
1196
+ ]),
735
1197
  lookbehind: true,
736
- inside: { punctuation: /\./ }
1198
+ inside: { 'punctuation': /^:/ }
737
1199
  },
738
- {
739
- pattern: /((?:\b(?:class|interface|new)\s+)|(?:catch\s+\())[A-Z]\w*(?:\.\w+)*\b/,
740
- lookbehind: true,
741
- inside: { punctuation: /\./ }
742
- }
743
- ],
744
- 'number': /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)f?/i,
745
- 'operator': />>=?|<<=?|[-=]>|([-+&|?])\1|~|[-+*/%&|^!=<>]=?/,
746
- 'punctuation': /\?\.?|::|[{}[\];(),.:]/
747
- });
748
- Prism.languages.insertBefore('csharp', 'class-name', {
749
- 'generic-method': {
750
- pattern: /\w+\s*<[^>\r\n]+?>\s*(?=\()/,
751
- inside: {
752
- function: /^\w+/,
753
- 'class-name': {
754
- pattern: /\b[A-Z]\w*(?:\.\w+)*\b/,
755
- inside: { punctuation: /\./ }
756
- },
757
- keyword: Prism.languages.csharp.keyword,
758
- punctuation: /[<>(),.:]/
1200
+ 'punctuation': /^\{|\}$/,
1201
+ 'expression': {
1202
+ pattern: /[\s\S]+/,
1203
+ alias: 'language-csharp',
1204
+ inside: Prism.languages.csharp
759
1205
  }
760
- },
761
- 'preprocessor': {
762
- pattern: /(^\s*)#.*/m,
1206
+ }
1207
+ },
1208
+ 'string': /[\s\S]+/
1209
+ };
1210
+ }
1211
+ Prism.languages.insertBefore('csharp', 'string', {
1212
+ 'interpolation-string': [
1213
+ {
1214
+ pattern: re(/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source, [mInterpolation]),
1215
+ lookbehind: true,
1216
+ greedy: true,
1217
+ inside: createInterpolationInside(mInterpolation, mInterpolationRound)
1218
+ },
1219
+ {
1220
+ pattern: re(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source, [sInterpolation]),
1221
+ lookbehind: true,
1222
+ greedy: true,
1223
+ inside: createInterpolationInside(sInterpolation, sInterpolationRound)
1224
+ }
1225
+ ]
1226
+ });
1227
+ }(Prism));
1228
+ Prism.languages.dotnet = Prism.languages.cs = Prism.languages.csharp;
1229
+ (function (Prism) {
1230
+ var string = /(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;
1231
+ Prism.languages.css = {
1232
+ 'comment': /\/\*[\s\S]*?\*\//,
1233
+ 'atrule': {
1234
+ pattern: /@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,
1235
+ inside: {
1236
+ 'rule': /^@[\w-]+/,
1237
+ 'selector-function-argument': {
1238
+ pattern: /(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,
763
1239
  lookbehind: true,
764
- alias: 'property',
1240
+ alias: 'selector'
1241
+ },
1242
+ 'keyword': {
1243
+ pattern: /(^|[^\w-])(?:and|not|only|or)(?![\w-])/,
1244
+ lookbehind: true
1245
+ }
1246
+ }
1247
+ },
1248
+ 'url': {
1249
+ pattern: RegExp('\\burl\\((?:' + string.source + '|' + /(?:[^\\\r\n()"']|\\[\s\S])*/.source + ')\\)', 'i'),
1250
+ greedy: true,
1251
+ inside: {
1252
+ 'function': /^url/i,
1253
+ 'punctuation': /^\(|\)$/,
1254
+ 'string': {
1255
+ pattern: RegExp('^' + string.source + '$'),
1256
+ alias: 'url'
1257
+ }
1258
+ }
1259
+ },
1260
+ 'selector': {
1261
+ pattern: RegExp('(^|[{}\\s])[^{}\\s](?:[^{};"\'\\s]|\\s+(?![\\s{])|' + string.source + ')*(?=\\s*\\{)'),
1262
+ lookbehind: true
1263
+ },
1264
+ 'string': {
1265
+ pattern: string,
1266
+ greedy: true
1267
+ },
1268
+ 'property': {
1269
+ pattern: /(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,
1270
+ lookbehind: true
1271
+ },
1272
+ 'important': /!important\b/i,
1273
+ 'function': {
1274
+ pattern: /(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,
1275
+ lookbehind: true
1276
+ },
1277
+ 'punctuation': /[(){};:,]/
1278
+ };
1279
+ Prism.languages.css['atrule'].inside.rest = Prism.languages.css;
1280
+ var markup = Prism.languages.markup;
1281
+ if (markup) {
1282
+ markup.tag.addInlined('style', 'css');
1283
+ markup.tag.addAttribute('style', 'css');
1284
+ }
1285
+ }(Prism));
1286
+ (function (Prism) {
1287
+ var keywords = /\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/;
1288
+ var classNamePrefix = /(^|[^\w.])(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/.source;
1289
+ var className = {
1290
+ pattern: RegExp(classNamePrefix + /[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),
1291
+ lookbehind: true,
1292
+ inside: {
1293
+ 'namespace': {
1294
+ pattern: /^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,
1295
+ inside: { 'punctuation': /\./ }
1296
+ },
1297
+ 'punctuation': /\./
1298
+ }
1299
+ };
1300
+ Prism.languages.java = Prism.languages.extend('clike', {
1301
+ 'class-name': [
1302
+ className,
1303
+ {
1304
+ pattern: RegExp(classNamePrefix + /[A-Z]\w*(?=\s+\w+\s*[;,=()])/.source),
1305
+ lookbehind: true,
1306
+ inside: className.inside
1307
+ }
1308
+ ],
1309
+ 'keyword': keywords,
1310
+ 'function': [
1311
+ Prism.languages.clike.function,
1312
+ {
1313
+ pattern: /(::\s*)[a-z_]\w*/,
1314
+ lookbehind: true
1315
+ }
1316
+ ],
1317
+ 'number': /\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,
1318
+ 'operator': {
1319
+ pattern: /(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,
1320
+ lookbehind: true
1321
+ }
1322
+ });
1323
+ Prism.languages.insertBefore('java', 'string', {
1324
+ 'triple-quoted-string': {
1325
+ pattern: /"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,
1326
+ greedy: true,
1327
+ alias: 'string'
1328
+ }
1329
+ });
1330
+ Prism.languages.insertBefore('java', 'class-name', {
1331
+ 'annotation': {
1332
+ pattern: /(^|[^.])@\w+(?:\s*\.\s*\w+)*/,
1333
+ lookbehind: true,
1334
+ alias: 'punctuation'
1335
+ },
1336
+ 'generics': {
1337
+ pattern: /<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,
1338
+ inside: {
1339
+ 'class-name': className,
1340
+ 'keyword': keywords,
1341
+ 'punctuation': /[<>(),.:]/,
1342
+ 'operator': /[?&|]/
1343
+ }
1344
+ },
1345
+ 'namespace': {
1346
+ pattern: RegExp(/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)(?!<keyword>)[a-z]\w*(?:\.[a-z]\w*)*\.?/.source.replace(/<keyword>/g, function () {
1347
+ return keywords.source;
1348
+ })),
1349
+ lookbehind: true,
1350
+ inside: { 'punctuation': /\./ }
1351
+ }
1352
+ });
1353
+ }(Prism));
1354
+ Prism.languages.javascript = Prism.languages.extend('clike', {
1355
+ 'class-name': [
1356
+ Prism.languages.clike['class-name'],
1357
+ {
1358
+ pattern: /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:prototype|constructor))/,
1359
+ lookbehind: true
1360
+ }
1361
+ ],
1362
+ 'keyword': [
1363
+ {
1364
+ pattern: /((?:^|\})\s*)catch\b/,
1365
+ lookbehind: true
1366
+ },
1367
+ {
1368
+ pattern: /(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,
1369
+ lookbehind: true
1370
+ }
1371
+ ],
1372
+ 'function': /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,
1373
+ 'number': /\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,
1374
+ 'operator': /--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/
1375
+ });
1376
+ Prism.languages.javascript['class-name'][0].pattern = /(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/;
1377
+ Prism.languages.insertBefore('javascript', 'keyword', {
1378
+ 'regex': {
1379
+ pattern: /((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,
1380
+ lookbehind: true,
1381
+ greedy: true,
1382
+ inside: {
1383
+ 'regex-source': {
1384
+ pattern: /^(\/)[\s\S]+(?=\/[a-z]*$)/,
1385
+ lookbehind: true,
1386
+ alias: 'language-regex',
1387
+ inside: Prism.languages.regex
1388
+ },
1389
+ 'regex-delimiter': /^\/|\/$/,
1390
+ 'regex-flags': /^[a-z]+$/
1391
+ }
1392
+ },
1393
+ 'function-variable': {
1394
+ pattern: /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,
1395
+ alias: 'function'
1396
+ },
1397
+ 'parameter': [
1398
+ {
1399
+ pattern: /(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,
1400
+ lookbehind: true,
1401
+ inside: Prism.languages.javascript
1402
+ },
1403
+ {
1404
+ pattern: /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,
1405
+ lookbehind: true,
1406
+ inside: Prism.languages.javascript
1407
+ },
1408
+ {
1409
+ pattern: /(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,
1410
+ lookbehind: true,
1411
+ inside: Prism.languages.javascript
1412
+ },
1413
+ {
1414
+ pattern: /((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,
1415
+ lookbehind: true,
1416
+ inside: Prism.languages.javascript
1417
+ }
1418
+ ],
1419
+ 'constant': /\b[A-Z](?:[A-Z_]|\dx?)*\b/
1420
+ });
1421
+ Prism.languages.insertBefore('javascript', 'string', {
1422
+ 'hashbang': {
1423
+ pattern: /^#!.*/,
1424
+ greedy: true,
1425
+ alias: 'comment'
1426
+ },
1427
+ 'template-string': {
1428
+ pattern: /`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,
1429
+ greedy: true,
1430
+ inside: {
1431
+ 'template-punctuation': {
1432
+ pattern: /^`|`$/,
1433
+ alias: 'string'
1434
+ },
1435
+ 'interpolation': {
1436
+ pattern: /((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,
1437
+ lookbehind: true,
1438
+ inside: {
1439
+ 'interpolation-punctuation': {
1440
+ pattern: /^\$\{|\}$/,
1441
+ alias: 'punctuation'
1442
+ },
1443
+ rest: Prism.languages.javascript
1444
+ }
1445
+ },
1446
+ 'string': /[\s\S]+/
1447
+ }
1448
+ }
1449
+ });
1450
+ if (Prism.languages.markup) {
1451
+ Prism.languages.markup.tag.addInlined('script', 'javascript');
1452
+ Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source, 'javascript');
1453
+ }
1454
+ Prism.languages.js = Prism.languages.javascript;
1455
+ Prism.languages.markup = {
1456
+ 'comment': {
1457
+ pattern: /<!--(?:(?!<!--)[\s\S])*?-->/,
1458
+ greedy: true
1459
+ },
1460
+ 'prolog': {
1461
+ pattern: /<\?[\s\S]+?\?>/,
1462
+ greedy: true
1463
+ },
1464
+ 'doctype': {
1465
+ pattern: /<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,
1466
+ greedy: true,
1467
+ inside: {
1468
+ 'internal-subset': {
1469
+ pattern: /(^[^\[]*\[)[\s\S]+(?=\]>$)/,
1470
+ lookbehind: true,
1471
+ greedy: true,
1472
+ inside: null
1473
+ },
1474
+ 'string': {
1475
+ pattern: /"[^"]*"|'[^']*'/,
1476
+ greedy: true
1477
+ },
1478
+ 'punctuation': /^<!|>$|[[\]]/,
1479
+ 'doctype-tag': /^DOCTYPE/i,
1480
+ 'name': /[^\s<>'"]+/
1481
+ }
1482
+ },
1483
+ 'cdata': {
1484
+ pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i,
1485
+ greedy: true
1486
+ },
1487
+ 'tag': {
1488
+ pattern: /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,
1489
+ greedy: true,
1490
+ inside: {
1491
+ 'tag': {
1492
+ pattern: /^<\/?[^\s>\/]+/,
1493
+ inside: {
1494
+ 'punctuation': /^<\/?/,
1495
+ 'namespace': /^[^\s>\/:]+:/
1496
+ }
1497
+ },
1498
+ 'special-attr': [],
1499
+ 'attr-value': {
1500
+ pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,
1501
+ inside: {
1502
+ 'punctuation': [
1503
+ {
1504
+ pattern: /^=/,
1505
+ alias: 'attr-equals'
1506
+ },
1507
+ /"|'/
1508
+ ]
1509
+ }
1510
+ },
1511
+ 'punctuation': /\/?>/,
1512
+ 'attr-name': {
1513
+ pattern: /[^\s>\/]+/,
1514
+ inside: { 'namespace': /^[^\s>\/:]+:/ }
1515
+ }
1516
+ }
1517
+ },
1518
+ 'entity': [
1519
+ {
1520
+ pattern: /&[\da-z]{1,8};/i,
1521
+ alias: 'named-entity'
1522
+ },
1523
+ /&#x?[\da-f]{1,8};/i
1524
+ ]
1525
+ };
1526
+ Prism.languages.markup['tag'].inside['attr-value'].inside['entity'] = Prism.languages.markup['entity'];
1527
+ Prism.languages.markup['doctype'].inside['internal-subset'].inside = Prism.languages.markup;
1528
+ Prism.hooks.add('wrap', function (env) {
1529
+ if (env.type === 'entity') {
1530
+ env.attributes['title'] = env.content.replace(/&amp;/, '&');
1531
+ }
1532
+ });
1533
+ Object.defineProperty(Prism.languages.markup.tag, 'addInlined', {
1534
+ value: function addInlined(tagName, lang) {
1535
+ var includedCdataInside = {};
1536
+ includedCdataInside['language-' + lang] = {
1537
+ pattern: /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,
1538
+ lookbehind: true,
1539
+ inside: Prism.languages[lang]
1540
+ };
1541
+ includedCdataInside['cdata'] = /^<!\[CDATA\[|\]\]>$/i;
1542
+ var inside = {
1543
+ 'included-cdata': {
1544
+ pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i,
1545
+ inside: includedCdataInside
1546
+ }
1547
+ };
1548
+ inside['language-' + lang] = {
1549
+ pattern: /[\s\S]+/,
1550
+ inside: Prism.languages[lang]
1551
+ };
1552
+ var def = {};
1553
+ def[tagName] = {
1554
+ pattern: RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g, function () {
1555
+ return tagName;
1556
+ }), 'i'),
1557
+ lookbehind: true,
1558
+ greedy: true,
1559
+ inside: inside
1560
+ };
1561
+ Prism.languages.insertBefore('markup', 'cdata', def);
1562
+ }
1563
+ });
1564
+ Object.defineProperty(Prism.languages.markup.tag, 'addAttribute', {
1565
+ value: function (attrName, lang) {
1566
+ Prism.languages.markup.tag.inside['special-attr'].push({
1567
+ pattern: RegExp(/(^|["'\s])/.source + '(?:' + attrName + ')' + /\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source, 'i'),
1568
+ lookbehind: true,
1569
+ inside: {
1570
+ 'attr-name': /^[^\s=]+/,
1571
+ 'attr-value': {
1572
+ pattern: /=[\s\S]+/,
765
1573
  inside: {
766
- 'directive': {
767
- pattern: /(\s*#)\b(?:define|elif|else|endif|endregion|error|if|line|pragma|region|undef|warning)\b/,
1574
+ 'value': {
1575
+ pattern: /(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,
768
1576
  lookbehind: true,
769
- alias: 'keyword'
770
- }
1577
+ alias: [
1578
+ lang,
1579
+ 'language-' + lang
1580
+ ],
1581
+ inside: Prism.languages[lang]
1582
+ },
1583
+ 'punctuation': [
1584
+ {
1585
+ pattern: /^=/,
1586
+ alias: 'attr-equals'
1587
+ },
1588
+ /"|'/
1589
+ ]
771
1590
  }
772
1591
  }
773
- });
774
- Prism.languages.dotnet = Prism.languages.cs = Prism.languages.csharp;
1592
+ }
1593
+ });
1594
+ }
1595
+ });
1596
+ Prism.languages.html = Prism.languages.markup;
1597
+ Prism.languages.mathml = Prism.languages.markup;
1598
+ Prism.languages.svg = Prism.languages.markup;
1599
+ Prism.languages.xml = Prism.languages.extend('markup', {});
1600
+ Prism.languages.ssml = Prism.languages.xml;
1601
+ Prism.languages.atom = Prism.languages.xml;
1602
+ Prism.languages.rss = Prism.languages.xml;
1603
+ (function (Prism) {
1604
+ var comment = /\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/;
1605
+ var constant = [
1606
+ {
1607
+ pattern: /\b(?:false|true)\b/i,
1608
+ alias: 'boolean'
775
1609
  },
776
- {}
777
- ],
778
- 6: [
779
- function (require, module, exports) {
780
- (function (Prism) {
781
- var string = /("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;
782
- Prism.languages.css = {
783
- 'comment': /\/\*[\s\S]*?\*\//,
784
- 'atrule': {
785
- pattern: /@[\w-]+[\s\S]*?(?:;|(?=\s*\{))/,
786
- inside: { 'rule': /@[\w-]+/ }
787
- },
788
- 'url': {
789
- pattern: RegExp('url\\((?:' + string.source + '|[^\n\r()]*)\\)', 'i'),
790
- inside: {
791
- 'function': /^url/i,
792
- 'punctuation': /^\(|\)$/
793
- }
794
- },
795
- 'selector': RegExp('[^{}\\s](?:[^{};"\']|' + string.source + ')*?(?=\\s*\\{)'),
796
- 'string': {
797
- pattern: string,
798
- greedy: true
799
- },
800
- 'property': /[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i,
801
- 'important': /!important\b/i,
802
- 'function': /[-a-z0-9]+(?=\()/i,
803
- 'punctuation': /[(){};:,]/
804
- };
805
- Prism.languages.css['atrule'].inside.rest = Prism.languages.css;
806
- var markup = Prism.languages.markup;
807
- if (markup) {
808
- markup.tag.addInlined('style', 'css');
809
- Prism.languages.insertBefore('inside', 'attr-value', {
810
- 'style-attr': {
811
- pattern: /\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,
812
- inside: {
813
- 'attr-name': {
814
- pattern: /^\s*style/i,
815
- inside: markup.tag.inside
816
- },
817
- 'punctuation': /^\s*=\s*['"]|['"]\s*$/,
818
- 'attr-value': {
819
- pattern: /.+/i,
820
- inside: Prism.languages.css
821
- }
822
- },
823
- alias: 'language-css'
824
- }
825
- }, markup.tag);
826
- }
827
- }(Prism));
1610
+ {
1611
+ pattern: /(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,
1612
+ greedy: true,
1613
+ lookbehind: true
828
1614
  },
829
- {}
830
- ],
831
- 7: [
832
- function (require, module, exports) {
833
- (function (Prism) {
834
- var keywords = /\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|null|open|opens|package|private|protected|provides|public|requires|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/;
835
- var className = /\b[A-Z](?:\w*[a-z]\w*)?\b/;
836
- Prism.languages.java = Prism.languages.extend('clike', {
837
- 'class-name': [
838
- className,
839
- /\b[A-Z]\w*(?=\s+\w+\s*[;,=())])/
840
- ],
841
- 'keyword': keywords,
842
- 'function': [
843
- Prism.languages.clike.function,
844
- {
845
- pattern: /(\:\:)[a-z_]\w*/,
846
- lookbehind: true
847
- }
848
- ],
849
- 'number': /\b0b[01][01_]*L?\b|\b0x[\da-f_]*\.?[\da-f_p+-]+\b|(?:\b\d[\d_]*\.?[\d_]*|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,
850
- 'operator': {
851
- pattern: /(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,
852
- lookbehind: true
853
- }
854
- });
855
- Prism.languages.insertBefore('java', 'string', {
856
- 'triple-quoted-string': {
857
- pattern: /"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,
858
- greedy: true,
859
- alias: 'string'
860
- }
861
- });
862
- Prism.languages.insertBefore('java', 'class-name', {
863
- 'annotation': {
864
- alias: 'punctuation',
865
- pattern: /(^|[^.])@\w+/,
866
- lookbehind: true
867
- },
868
- 'namespace': {
869
- pattern: /(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)[a-z]\w*(?:\.[a-z]\w*)+/,
870
- lookbehind: true,
871
- inside: { 'punctuation': /\./ }
872
- },
873
- 'generics': {
874
- pattern: /<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/,
875
- inside: {
876
- 'class-name': className,
877
- 'keyword': keywords,
878
- 'punctuation': /[<>(),.:]/,
879
- 'operator': /[?&|]/
880
- }
881
- }
882
- });
883
- }(Prism));
1615
+ {
1616
+ pattern: /(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,
1617
+ greedy: true,
1618
+ lookbehind: true
884
1619
  },
885
- {}
886
- ],
887
- 8: [
888
- function (require, module, exports) {
889
- Prism.languages.javascript = Prism.languages.extend('clike', {
890
- 'class-name': [
891
- Prism.languages.clike['class-name'],
892
- {
893
- pattern: /(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,
894
- lookbehind: true
895
- }
1620
+ /\b(?:null)\b/i,
1621
+ /\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/
1622
+ ];
1623
+ var number = /\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i;
1624
+ var operator = /<?=>|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/;
1625
+ var punctuation = /[{}\[\](),:;]/;
1626
+ Prism.languages.php = {
1627
+ 'delimiter': {
1628
+ pattern: /\?>$|^<\?(?:php(?=\s)|=)?/i,
1629
+ alias: 'important'
1630
+ },
1631
+ 'comment': comment,
1632
+ 'variable': /\$+(?:\w+\b|(?=\{))/i,
1633
+ 'package': {
1634
+ pattern: /(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,
1635
+ lookbehind: true,
1636
+ inside: { 'punctuation': /\\/ }
1637
+ },
1638
+ 'class-name-definition': {
1639
+ pattern: /(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,
1640
+ lookbehind: true,
1641
+ alias: 'class-name'
1642
+ },
1643
+ 'function-definition': {
1644
+ pattern: /(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,
1645
+ lookbehind: true,
1646
+ alias: 'function'
1647
+ },
1648
+ 'keyword': [
1649
+ {
1650
+ pattern: /(\(\s*)\b(?:bool|boolean|int|integer|float|string|object|array)\b(?=\s*\))/i,
1651
+ alias: 'type-casting',
1652
+ greedy: true,
1653
+ lookbehind: true
1654
+ },
1655
+ {
1656
+ pattern: /([(,?]\s*)\b(?:bool|int|float|string|object|array(?!\s*\()|mixed|self|static|callable|iterable|(?:null|false)(?=\s*\|))\b(?=\s*\$)/i,
1657
+ alias: 'type-hint',
1658
+ greedy: true,
1659
+ lookbehind: true
1660
+ },
1661
+ {
1662
+ pattern: /([(,?]\s*[\w|]\|\s*)(?:null|false)\b(?=\s*\$)/i,
1663
+ alias: 'type-hint',
1664
+ greedy: true,
1665
+ lookbehind: true
1666
+ },
1667
+ {
1668
+ pattern: /(\)\s*:\s*(?:\?\s*)?)\b(?:bool|int|float|string|object|void|array(?!\s*\()|mixed|self|static|callable|iterable|(?:null|false)(?=\s*\|))\b/i,
1669
+ alias: 'return-type',
1670
+ greedy: true,
1671
+ lookbehind: true
1672
+ },
1673
+ {
1674
+ pattern: /(\)\s*:\s*(?:\?\s*)?[\w|]\|\s*)(?:null|false)\b/i,
1675
+ alias: 'return-type',
1676
+ greedy: true,
1677
+ lookbehind: true
1678
+ },
1679
+ {
1680
+ pattern: /\b(?:bool|int|float|string|object|void|array(?!\s*\()|mixed|iterable|(?:null|false)(?=\s*\|))\b/i,
1681
+ alias: 'type-declaration',
1682
+ greedy: true
1683
+ },
1684
+ {
1685
+ pattern: /(\|\s*)(?:null|false)\b/i,
1686
+ alias: 'type-declaration',
1687
+ greedy: true,
1688
+ lookbehind: true
1689
+ },
1690
+ {
1691
+ pattern: /\b(?:parent|self|static)(?=\s*::)/i,
1692
+ alias: 'static-context',
1693
+ greedy: true
1694
+ },
1695
+ {
1696
+ pattern: /(\byield\s+)from\b/i,
1697
+ lookbehind: true
1698
+ },
1699
+ /\bclass\b/i,
1700
+ {
1701
+ pattern: /((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:__halt_compiler|abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|namespace|match|new|or|parent|print|private|protected|public|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield)\b/i,
1702
+ lookbehind: true
1703
+ }
1704
+ ],
1705
+ 'argument-name': {
1706
+ pattern: /([(,]\s+)\b[a-z_]\w*(?=\s*:(?!:))/i,
1707
+ lookbehind: true
1708
+ },
1709
+ 'class-name': [
1710
+ {
1711
+ pattern: /(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,
1712
+ greedy: true,
1713
+ lookbehind: true
1714
+ },
1715
+ {
1716
+ pattern: /(\|\s*)\b[a-z_]\w*(?!\\)\b/i,
1717
+ greedy: true,
1718
+ lookbehind: true
1719
+ },
1720
+ {
1721
+ pattern: /\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,
1722
+ greedy: true
1723
+ },
1724
+ {
1725
+ pattern: /(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,
1726
+ alias: 'class-name-fully-qualified',
1727
+ greedy: true,
1728
+ lookbehind: true,
1729
+ inside: { 'punctuation': /\\/ }
1730
+ },
1731
+ {
1732
+ pattern: /(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,
1733
+ alias: 'class-name-fully-qualified',
1734
+ greedy: true,
1735
+ inside: { 'punctuation': /\\/ }
1736
+ },
1737
+ {
1738
+ pattern: /(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,
1739
+ alias: 'class-name-fully-qualified',
1740
+ greedy: true,
1741
+ lookbehind: true,
1742
+ inside: { 'punctuation': /\\/ }
1743
+ },
1744
+ {
1745
+ pattern: /\b[a-z_]\w*(?=\s*\$)/i,
1746
+ alias: 'type-declaration',
1747
+ greedy: true
1748
+ },
1749
+ {
1750
+ pattern: /(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,
1751
+ alias: [
1752
+ 'class-name-fully-qualified',
1753
+ 'type-declaration'
896
1754
  ],
897
- 'keyword': [
898
- {
899
- pattern: /((?:^|})\s*)(?:catch|finally)\b/,
900
- lookbehind: true
901
- },
902
- {
903
- pattern: /(^|[^.]|\.\.\.\s*)\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,
904
- lookbehind: true
905
- }
1755
+ greedy: true,
1756
+ inside: { 'punctuation': /\\/ }
1757
+ },
1758
+ {
1759
+ pattern: /\b[a-z_]\w*(?=\s*::)/i,
1760
+ alias: 'static-context',
1761
+ greedy: true
1762
+ },
1763
+ {
1764
+ pattern: /(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,
1765
+ alias: [
1766
+ 'class-name-fully-qualified',
1767
+ 'static-context'
906
1768
  ],
907
- 'number': /\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,
908
- 'function': /#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,
909
- 'operator': /--|\+\+|\*\*=?|=>|&&|\|\||[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?[.?]?|[~:]/
910
- });
911
- Prism.languages.javascript['class-name'][0].pattern = /(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/;
912
- Prism.languages.insertBefore('javascript', 'keyword', {
913
- 'regex': {
914
- pattern: /((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=(?:\s|\/\*[\s\S]*?\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,
915
- lookbehind: true,
916
- greedy: true
917
- },
918
- 'function-variable': {
919
- pattern: /#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,
920
- alias: 'function'
921
- },
922
- 'parameter': [
923
- {
924
- pattern: /(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,
925
- lookbehind: true,
926
- inside: Prism.languages.javascript
927
- },
928
- {
929
- pattern: /[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,
930
- inside: Prism.languages.javascript
931
- },
932
- {
933
- pattern: /(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,
934
- lookbehind: true,
935
- inside: Prism.languages.javascript
936
- },
937
- {
938
- pattern: /((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,
939
- lookbehind: true,
940
- inside: Prism.languages.javascript
941
- }
1769
+ greedy: true,
1770
+ inside: { 'punctuation': /\\/ }
1771
+ },
1772
+ {
1773
+ pattern: /([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,
1774
+ alias: 'type-hint',
1775
+ greedy: true,
1776
+ lookbehind: true
1777
+ },
1778
+ {
1779
+ pattern: /([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,
1780
+ alias: [
1781
+ 'class-name-fully-qualified',
1782
+ 'type-hint'
942
1783
  ],
943
- 'constant': /\b[A-Z](?:[A-Z_]|\dx?)*\b/
944
- });
945
- Prism.languages.insertBefore('javascript', 'string', {
946
- 'template-string': {
947
- pattern: /`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\${)[^\\`])*`/,
948
- greedy: true,
949
- inside: {
950
- 'template-punctuation': {
951
- pattern: /^`|`$/,
952
- alias: 'string'
953
- },
954
- 'interpolation': {
955
- pattern: /((?:^|[^\\])(?:\\{2})*)\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,
956
- lookbehind: true,
957
- inside: {
958
- 'interpolation-punctuation': {
959
- pattern: /^\${|}$/,
960
- alias: 'punctuation'
961
- },
962
- rest: Prism.languages.javascript
963
- }
964
- },
965
- 'string': /[\s\S]+/
966
- }
967
- }
968
- });
969
- if (Prism.languages.markup) {
970
- Prism.languages.markup.tag.addInlined('script', 'javascript');
1784
+ greedy: true,
1785
+ lookbehind: true,
1786
+ inside: { 'punctuation': /\\/ }
1787
+ },
1788
+ {
1789
+ pattern: /(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,
1790
+ alias: 'return-type',
1791
+ greedy: true,
1792
+ lookbehind: true
1793
+ },
1794
+ {
1795
+ pattern: /(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,
1796
+ alias: [
1797
+ 'class-name-fully-qualified',
1798
+ 'return-type'
1799
+ ],
1800
+ greedy: true,
1801
+ lookbehind: true,
1802
+ inside: { 'punctuation': /\\/ }
971
1803
  }
972
- Prism.languages.js = Prism.languages.javascript;
1804
+ ],
1805
+ 'constant': constant,
1806
+ 'function': {
1807
+ pattern: /(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,
1808
+ lookbehind: true,
1809
+ inside: { 'punctuation': /\\/ }
973
1810
  },
974
- {}
975
- ],
976
- 9: [
977
- function (require, module, exports) {
978
- (function (Prism) {
979
- function getPlaceholder(language, index) {
980
- return '___' + language.toUpperCase() + index + '___';
1811
+ 'property': {
1812
+ pattern: /(->\s*)\w+/,
1813
+ lookbehind: true
1814
+ },
1815
+ 'number': number,
1816
+ 'operator': operator,
1817
+ 'punctuation': punctuation
1818
+ };
1819
+ var string_interpolation = {
1820
+ pattern: /\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,
1821
+ lookbehind: true,
1822
+ inside: Prism.languages.php
1823
+ };
1824
+ var string = [
1825
+ {
1826
+ pattern: /<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,
1827
+ alias: 'nowdoc-string',
1828
+ greedy: true,
1829
+ inside: {
1830
+ 'delimiter': {
1831
+ pattern: /^<<<'[^']+'|[a-z_]\w*;$/i,
1832
+ alias: 'symbol',
1833
+ inside: { 'punctuation': /^<<<'?|[';]$/ }
981
1834
  }
982
- Object.defineProperties(Prism.languages['markup-templating'] = {}, {
983
- buildPlaceholders: {
984
- value: function (env, language, placeholderPattern, replaceFilter) {
985
- if (env.language !== language) {
986
- return;
987
- }
988
- var tokenStack = env.tokenStack = [];
989
- env.code = env.code.replace(placeholderPattern, function (match) {
990
- if (typeof replaceFilter === 'function' && !replaceFilter(match)) {
991
- return match;
992
- }
993
- var i = tokenStack.length;
994
- var placeholder;
995
- while (env.code.indexOf(placeholder = getPlaceholder(language, i)) !== -1)
996
- ++i;
997
- tokenStack[i] = match;
998
- return placeholder;
999
- });
1000
- env.grammar = Prism.languages.markup;
1001
- }
1002
- },
1003
- tokenizePlaceholders: {
1004
- value: function (env, language) {
1005
- if (env.language !== language || !env.tokenStack) {
1006
- return;
1007
- }
1008
- env.grammar = Prism.languages[language];
1009
- var j = 0;
1010
- var keys = Object.keys(env.tokenStack);
1011
- function walkTokens(tokens) {
1012
- for (var i = 0; i < tokens.length; i++) {
1013
- if (j >= keys.length) {
1014
- break;
1015
- }
1016
- var token = tokens[i];
1017
- if (typeof token === 'string' || token.content && typeof token.content === 'string') {
1018
- var k = keys[j];
1019
- var t = env.tokenStack[k];
1020
- var s = typeof token === 'string' ? token : token.content;
1021
- var placeholder = getPlaceholder(language, k);
1022
- var index = s.indexOf(placeholder);
1023
- if (index > -1) {
1024
- ++j;
1025
- var before = s.substring(0, index);
1026
- var middle = new Prism.Token(language, Prism.tokenize(t, env.grammar), 'language-' + language, t);
1027
- var after = s.substring(index + placeholder.length);
1028
- var replacement = [];
1029
- if (before) {
1030
- replacement.push.apply(replacement, walkTokens([before]));
1031
- }
1032
- replacement.push(middle);
1033
- if (after) {
1034
- replacement.push.apply(replacement, walkTokens([after]));
1035
- }
1036
- if (typeof token === 'string') {
1037
- tokens.splice.apply(tokens, [
1038
- i,
1039
- 1
1040
- ].concat(replacement));
1041
- } else {
1042
- token.content = replacement;
1043
- }
1044
- }
1045
- } else if (token.content) {
1046
- walkTokens(token.content);
1047
- }
1048
- }
1049
- return tokens;
1050
- }
1051
- walkTokens(env.tokens);
1052
- }
1053
- }
1054
- });
1055
- }(Prism));
1835
+ }
1056
1836
  },
1057
- {}
1058
- ],
1059
- 10: [
1060
- function (require, module, exports) {
1061
- Prism.languages.markup = {
1062
- 'comment': /<!--[\s\S]*?-->/,
1063
- 'prolog': /<\?[\s\S]+?\?>/,
1064
- 'doctype': {
1065
- pattern: /<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:(?!<!--)[^"'\]]|"[^"]*"|'[^']*'|<!--[\s\S]*?-->)*\]\s*)?>/i,
1066
- greedy: true
1837
+ {
1838
+ pattern: /<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,
1839
+ alias: 'heredoc-string',
1840
+ greedy: true,
1841
+ inside: {
1842
+ 'delimiter': {
1843
+ pattern: /^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,
1844
+ alias: 'symbol',
1845
+ inside: { 'punctuation': /^<<<"?|[";]$/ }
1067
1846
  },
1068
- 'cdata': /<!\[CDATA\[[\s\S]*?]]>/i,
1069
- 'tag': {
1070
- pattern: /<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/i,
1071
- greedy: true,
1847
+ 'interpolation': string_interpolation
1848
+ }
1849
+ },
1850
+ {
1851
+ pattern: /`(?:\\[\s\S]|[^\\`])*`/,
1852
+ alias: 'backtick-quoted-string',
1853
+ greedy: true
1854
+ },
1855
+ {
1856
+ pattern: /'(?:\\[\s\S]|[^\\'])*'/,
1857
+ alias: 'single-quoted-string',
1858
+ greedy: true
1859
+ },
1860
+ {
1861
+ pattern: /"(?:\\[\s\S]|[^\\"])*"/,
1862
+ alias: 'double-quoted-string',
1863
+ greedy: true,
1864
+ inside: { 'interpolation': string_interpolation }
1865
+ }
1866
+ ];
1867
+ Prism.languages.insertBefore('php', 'variable', {
1868
+ 'string': string,
1869
+ 'attribute': {
1870
+ pattern: /#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,
1871
+ greedy: true,
1872
+ inside: {
1873
+ 'attribute-content': {
1874
+ pattern: /^(#\[)[\s\S]+(?=\]$)/,
1875
+ lookbehind: true,
1072
1876
  inside: {
1073
- 'tag': {
1074
- pattern: /^<\/?[^\s>\/]+/i,
1075
- inside: {
1076
- 'punctuation': /^<\/?/,
1077
- 'namespace': /^[^\s>\/:]+:/
1078
- }
1079
- },
1080
- 'attr-value': {
1081
- pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i,
1082
- inside: {
1083
- 'punctuation': [
1084
- /^=/,
1085
- {
1086
- pattern: /^(\s*)["']|["']$/,
1087
- lookbehind: true
1088
- }
1089
- ]
1877
+ 'comment': comment,
1878
+ 'string': string,
1879
+ 'attribute-class-name': [
1880
+ {
1881
+ pattern: /([^:]|^)\b[a-z_]\w*(?!\\)\b/i,
1882
+ alias: 'class-name',
1883
+ greedy: true,
1884
+ lookbehind: true
1885
+ },
1886
+ {
1887
+ pattern: /([^:]|^)(?:\\?\b[a-z_]\w*)+/i,
1888
+ alias: [
1889
+ 'class-name',
1890
+ 'class-name-fully-qualified'
1891
+ ],
1892
+ greedy: true,
1893
+ lookbehind: true,
1894
+ inside: { 'punctuation': /\\/ }
1090
1895
  }
1091
- },
1092
- 'punctuation': /\/?>/,
1093
- 'attr-name': {
1094
- pattern: /[^\s>\/]+/,
1095
- inside: { 'namespace': /^[^\s>\/:]+:/ }
1096
- }
1896
+ ],
1897
+ 'constant': constant,
1898
+ 'number': number,
1899
+ 'operator': operator,
1900
+ 'punctuation': punctuation
1097
1901
  }
1098
1902
  },
1099
- 'entity': /&#?[\da-z]{1,8};/i
1100
- };
1101
- Prism.languages.markup['tag'].inside['attr-value'].inside['entity'] = Prism.languages.markup['entity'];
1102
- Prism.hooks.add('wrap', function (env) {
1103
- if (env.type === 'entity') {
1104
- env.attributes['title'] = env.content.replace(/&amp;/, '&');
1105
- }
1106
- });
1107
- Object.defineProperty(Prism.languages.markup.tag, 'addInlined', {
1108
- value: function addInlined(tagName, lang) {
1109
- var includedCdataInside = {};
1110
- includedCdataInside['language-' + lang] = {
1111
- pattern: /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,
1112
- lookbehind: true,
1113
- inside: Prism.languages[lang]
1114
- };
1115
- includedCdataInside['cdata'] = /^<!\[CDATA\[|\]\]>$/i;
1116
- var inside = {
1117
- 'included-cdata': {
1118
- pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i,
1119
- inside: includedCdataInside
1120
- }
1121
- };
1122
- inside['language-' + lang] = {
1123
- pattern: /[\s\S]+/,
1124
- inside: Prism.languages[lang]
1125
- };
1126
- var def = {};
1127
- def[tagName] = {
1128
- pattern: RegExp(/(<__[\s\S]*?>)(?:<!\[CDATA\[[\s\S]*?\]\]>\s*|[\s\S])*?(?=<\/__>)/.source.replace(/__/g, tagName), 'i'),
1129
- lookbehind: true,
1130
- greedy: true,
1131
- inside: inside
1132
- };
1133
- Prism.languages.insertBefore('markup', 'cdata', def);
1903
+ 'delimiter': {
1904
+ pattern: /^#\[|\]$/,
1905
+ alias: 'punctuation'
1134
1906
  }
1135
- });
1136
- Prism.languages.xml = Prism.languages.extend('markup', {});
1137
- Prism.languages.html = Prism.languages.markup;
1138
- Prism.languages.mathml = Prism.languages.markup;
1139
- Prism.languages.svg = Prism.languages.markup;
1140
- },
1141
- {}
1142
- ],
1143
- 11: [
1144
- function (require, module, exports) {
1145
- (function (Prism) {
1146
- Prism.languages.php = Prism.languages.extend('clike', {
1147
- 'keyword': /\b(?:__halt_compiler|abstract|and|array|as|break|callable|case|catch|class|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|eval|exit|extends|final|finally|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|namespace|new|or|parent|print|private|protected|public|require|require_once|return|static|switch|throw|trait|try|unset|use|var|while|xor|yield)\b/i,
1148
- 'boolean': {
1149
- pattern: /\b(?:false|true)\b/i,
1150
- alias: 'constant'
1151
- },
1152
- 'constant': [
1153
- /\b[A-Z_][A-Z0-9_]*\b/,
1154
- /\b(?:null)\b/i
1155
- ],
1156
- 'comment': {
1157
- pattern: /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,
1158
- lookbehind: true
1159
- }
1160
- });
1161
- Prism.languages.insertBefore('php', 'string', {
1162
- 'shell-comment': {
1163
- pattern: /(^|[^\\])#.*/,
1164
- lookbehind: true,
1165
- alias: 'comment'
1166
- }
1167
- });
1168
- Prism.languages.insertBefore('php', 'comment', {
1169
- 'delimiter': {
1170
- pattern: /\?>$|^<\?(?:php(?=\s)|=)?/i,
1171
- alias: 'important'
1172
- }
1173
- });
1174
- Prism.languages.insertBefore('php', 'keyword', {
1175
- 'variable': /\$+(?:\w+\b|(?={))/i,
1176
- 'package': {
1177
- pattern: /(\\|namespace\s+|use\s+)[\w\\]+/,
1178
- lookbehind: true,
1179
- inside: { punctuation: /\\/ }
1180
- }
1181
- });
1182
- Prism.languages.insertBefore('php', 'operator', {
1183
- 'property': {
1184
- pattern: /(->)[\w]+/,
1907
+ }
1908
+ }
1909
+ });
1910
+ Prism.hooks.add('before-tokenize', function (env) {
1911
+ if (!/<\?/.test(env.code)) {
1912
+ return;
1913
+ }
1914
+ var phpPattern = /<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/gi;
1915
+ Prism.languages['markup-templating'].buildPlaceholders(env, 'php', phpPattern);
1916
+ });
1917
+ Prism.hooks.add('after-tokenize', function (env) {
1918
+ Prism.languages['markup-templating'].tokenizePlaceholders(env, 'php');
1919
+ });
1920
+ }(Prism));
1921
+ Prism.languages.python = {
1922
+ 'comment': {
1923
+ pattern: /(^|[^\\])#.*/,
1924
+ lookbehind: true
1925
+ },
1926
+ 'string-interpolation': {
1927
+ pattern: /(?:f|rf|fr)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,
1928
+ greedy: true,
1929
+ inside: {
1930
+ 'interpolation': {
1931
+ pattern: /((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,
1932
+ lookbehind: true,
1933
+ inside: {
1934
+ 'format-spec': {
1935
+ pattern: /(:)[^:(){}]+(?=\}$)/,
1185
1936
  lookbehind: true
1186
- }
1187
- });
1188
- var string_interpolation = {
1189
- pattern: /{\$(?:{(?:{[^{}]+}|[^{}]+)}|[^{}])+}|(^|[^\\{])\$+(?:\w+(?:\[.+?]|->\w+)*)/,
1190
- lookbehind: true,
1191
- inside: Prism.languages.php
1192
- };
1193
- Prism.languages.insertBefore('php', 'string', {
1194
- 'nowdoc-string': {
1195
- pattern: /<<<'([^']+)'(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;/,
1196
- greedy: true,
1197
- alias: 'string',
1198
- inside: {
1199
- 'delimiter': {
1200
- pattern: /^<<<'[^']+'|[a-z_]\w*;$/i,
1201
- alias: 'symbol',
1202
- inside: { 'punctuation': /^<<<'?|[';]$/ }
1203
- }
1204
- }
1205
- },
1206
- 'heredoc-string': {
1207
- pattern: /<<<(?:"([^"]+)"(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\1;|([a-z_]\w*)(?:\r\n?|\n)(?:.*(?:\r\n?|\n))*?\2;)/i,
1208
- greedy: true,
1209
- alias: 'string',
1210
- inside: {
1211
- 'delimiter': {
1212
- pattern: /^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,
1213
- alias: 'symbol',
1214
- inside: { 'punctuation': /^<<<"?|[";]$/ }
1215
- },
1216
- 'interpolation': string_interpolation
1217
- }
1218
1937
  },
1219
- 'single-quoted-string': {
1220
- pattern: /'(?:\\[\s\S]|[^\\'])*'/,
1221
- greedy: true,
1222
- alias: 'string'
1938
+ 'conversion-option': {
1939
+ pattern: /![sra](?=[:}]$)/,
1940
+ alias: 'punctuation'
1223
1941
  },
1224
- 'double-quoted-string': {
1225
- pattern: /"(?:\\[\s\S]|[^\\"])*"/,
1226
- greedy: true,
1227
- alias: 'string',
1228
- inside: { 'interpolation': string_interpolation }
1229
- }
1230
- });
1231
- delete Prism.languages.php['string'];
1232
- Prism.hooks.add('before-tokenize', function (env) {
1233
- if (!/<\?/.test(env.code)) {
1234
- return;
1235
- }
1236
- var phpPattern = /<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#)(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|\/\*[\s\S]*?(?:\*\/|$))*?(?:\?>|$)/ig;
1237
- Prism.languages['markup-templating'].buildPlaceholders(env, 'php', phpPattern);
1238
- });
1239
- Prism.hooks.add('after-tokenize', function (env) {
1240
- Prism.languages['markup-templating'].tokenizePlaceholders(env, 'php');
1241
- });
1242
- }(Prism));
1942
+ rest: null
1943
+ }
1944
+ },
1945
+ 'string': /[\s\S]+/
1946
+ }
1947
+ },
1948
+ 'triple-quoted-string': {
1949
+ pattern: /(?:[rub]|rb|br)?("""|''')[\s\S]*?\1/i,
1950
+ greedy: true,
1951
+ alias: 'string'
1952
+ },
1953
+ 'string': {
1954
+ pattern: /(?:[rub]|rb|br)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,
1955
+ greedy: true
1956
+ },
1957
+ 'function': {
1958
+ pattern: /((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,
1959
+ lookbehind: true
1960
+ },
1961
+ 'class-name': {
1962
+ pattern: /(\bclass\s+)\w+/i,
1963
+ lookbehind: true
1964
+ },
1965
+ 'decorator': {
1966
+ pattern: /(^[\t ]*)@\w+(?:\.\w+)*/im,
1967
+ lookbehind: true,
1968
+ alias: [
1969
+ 'annotation',
1970
+ 'punctuation'
1971
+ ],
1972
+ inside: { 'punctuation': /\./ }
1973
+ },
1974
+ 'keyword': /\b(?:and|as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,
1975
+ 'builtin': /\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,
1976
+ 'boolean': /\b(?:True|False|None)\b/,
1977
+ 'number': /\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?\b/i,
1978
+ 'operator': /[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,
1979
+ 'punctuation': /[{}[\];(),.:]/
1980
+ };
1981
+ Prism.languages.python['string-interpolation'].inside['interpolation'].inside.rest = Prism.languages.python;
1982
+ Prism.languages.py = Prism.languages.python;
1983
+ (function (Prism) {
1984
+ Prism.languages.ruby = Prism.languages.extend('clike', {
1985
+ 'comment': [
1986
+ /#.*/,
1987
+ {
1988
+ pattern: /^=begin\s[\s\S]*?^=end/m,
1989
+ greedy: true
1990
+ }
1991
+ ],
1992
+ 'class-name': {
1993
+ pattern: /(\b(?:class)\s+|\bcatch\s+\()[\w.\\]+/i,
1994
+ lookbehind: true,
1995
+ inside: { 'punctuation': /[.\\]/ }
1243
1996
  },
1244
- {}
1245
- ],
1246
- 12: [
1247
- function (require, module, exports) {
1248
- Prism.languages.python = {
1249
- 'comment': {
1250
- pattern: /(^|[^\\])#.*/,
1251
- lookbehind: true
1252
- },
1253
- 'string-interpolation': {
1254
- pattern: /(?:f|rf|fr)(?:("""|''')[\s\S]+?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,
1255
- greedy: true,
1256
- inside: {
1257
- 'interpolation': {
1258
- pattern: /((?:^|[^{])(?:{{)*){(?!{)(?:[^{}]|{(?!{)(?:[^{}]|{(?!{)(?:[^{}])+})+})+}/,
1259
- lookbehind: true,
1260
- inside: {
1261
- 'format-spec': {
1262
- pattern: /(:)[^:(){}]+(?=}$)/,
1263
- lookbehind: true
1264
- },
1265
- 'conversion-option': {
1266
- pattern: /![sra](?=[:}]$)/,
1267
- alias: 'punctuation'
1268
- },
1269
- rest: null
1270
- }
1271
- },
1272
- 'string': /[\s\S]+/
1273
- }
1274
- },
1275
- 'triple-quoted-string': {
1276
- pattern: /(?:[rub]|rb|br)?("""|''')[\s\S]+?\1/i,
1277
- greedy: true,
1278
- alias: 'string'
1279
- },
1280
- 'string': {
1281
- pattern: /(?:[rub]|rb|br)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,
1282
- greedy: true
1283
- },
1284
- 'function': {
1285
- pattern: /((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,
1286
- lookbehind: true
1287
- },
1288
- 'class-name': {
1289
- pattern: /(\bclass\s+)\w+/i,
1290
- lookbehind: true
1291
- },
1292
- 'decorator': {
1293
- pattern: /(^\s*)@\w+(?:\.\w+)*/im,
1294
- lookbehind: true,
1295
- alias: [
1296
- 'annotation',
1297
- 'punctuation'
1298
- ],
1299
- inside: { 'punctuation': /\./ }
1300
- },
1301
- 'keyword': /\b(?:and|as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,
1302
- 'builtin': /\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,
1303
- 'boolean': /\b(?:True|False|None)\b/,
1304
- 'number': /(?:\b(?=\d)|\B(?=\.))(?:0[bo])?(?:(?:\d|0x[\da-f])[\da-f]*\.?\d*|\.\d+)(?:e[+-]?\d+)?j?\b/i,
1305
- 'operator': /[-+%=]=?|!=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,
1306
- 'punctuation': /[{}[\];(),.:]/
1307
- };
1308
- Prism.languages.python['string-interpolation'].inside['interpolation'].inside.rest = Prism.languages.python;
1309
- Prism.languages.py = Prism.languages.python;
1997
+ 'keyword': /\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/
1998
+ });
1999
+ var interpolation = {
2000
+ pattern: /#\{[^}]+\}/,
2001
+ inside: {
2002
+ 'delimiter': {
2003
+ pattern: /^#\{|\}$/,
2004
+ alias: 'tag'
2005
+ },
2006
+ rest: Prism.languages.ruby
2007
+ }
2008
+ };
2009
+ delete Prism.languages.ruby.function;
2010
+ Prism.languages.insertBefore('ruby', 'keyword', {
2011
+ 'regex': [
2012
+ {
2013
+ pattern: RegExp(/%r/.source + '(?:' + [
2014
+ /([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,
2015
+ /\((?:[^()\\]|\\[\s\S])*\)/.source,
2016
+ /\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/.source,
2017
+ /\[(?:[^\[\]\\]|\\[\s\S])*\]/.source,
2018
+ /<(?:[^<>\\]|\\[\s\S])*>/.source
2019
+ ].join('|') + ')' + /[egimnosux]{0,6}/.source),
2020
+ greedy: true,
2021
+ inside: { 'interpolation': interpolation }
2022
+ },
2023
+ {
2024
+ pattern: /(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,
2025
+ lookbehind: true,
2026
+ greedy: true,
2027
+ inside: { 'interpolation': interpolation }
2028
+ }
2029
+ ],
2030
+ 'variable': /[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,
2031
+ 'symbol': {
2032
+ pattern: /(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/,
2033
+ lookbehind: true
1310
2034
  },
1311
- {}
1312
- ],
1313
- 13: [
1314
- function (require, module, exports) {
1315
- (function (Prism) {
1316
- Prism.languages.ruby = Prism.languages.extend('clike', {
1317
- 'comment': [
1318
- /#.*/,
1319
- {
1320
- pattern: /^=begin\s[\s\S]*?^=end/m,
1321
- greedy: true
1322
- }
1323
- ],
1324
- 'class-name': {
1325
- pattern: /(\b(?:class)\s+|\bcatch\s+\()[\w.\\]+/i,
1326
- lookbehind: true,
1327
- inside: { 'punctuation': /[.\\]/ }
1328
- },
1329
- 'keyword': /\b(?:alias|and|BEGIN|begin|break|case|class|def|define_method|defined|do|each|else|elsif|END|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|protected|private|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/
1330
- });
1331
- var interpolation = {
1332
- pattern: /#\{[^}]+\}/,
1333
- inside: {
1334
- 'delimiter': {
1335
- pattern: /^#\{|\}$/,
1336
- alias: 'tag'
1337
- },
1338
- rest: Prism.languages.ruby
1339
- }
1340
- };
1341
- delete Prism.languages.ruby.function;
1342
- Prism.languages.insertBefore('ruby', 'keyword', {
1343
- 'regex': [
1344
- {
1345
- pattern: /%r([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1[gim]{0,3}/,
1346
- greedy: true,
1347
- inside: { 'interpolation': interpolation }
1348
- },
1349
- {
1350
- pattern: /%r\((?:[^()\\]|\\[\s\S])*\)[gim]{0,3}/,
1351
- greedy: true,
1352
- inside: { 'interpolation': interpolation }
1353
- },
1354
- {
1355
- pattern: /%r\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}[gim]{0,3}/,
1356
- greedy: true,
1357
- inside: { 'interpolation': interpolation }
1358
- },
1359
- {
1360
- pattern: /%r\[(?:[^\[\]\\]|\\[\s\S])*\][gim]{0,3}/,
1361
- greedy: true,
1362
- inside: { 'interpolation': interpolation }
1363
- },
1364
- {
1365
- pattern: /%r<(?:[^<>\\]|\\[\s\S])*>[gim]{0,3}/,
1366
- greedy: true,
1367
- inside: { 'interpolation': interpolation }
1368
- },
1369
- {
1370
- pattern: /(^|[^/])\/(?!\/)(?:\[.+?]|\\.|[^/\\\r\n])+\/[gim]{0,3}(?=\s*(?:$|[\r\n,.;})]))/,
1371
- lookbehind: true,
1372
- greedy: true
1373
- }
1374
- ],
1375
- 'variable': /[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,
1376
- 'symbol': {
1377
- pattern: /(^|[^:]):[a-zA-Z_]\w*(?:[?!]|\b)/,
1378
- lookbehind: true
1379
- },
1380
- 'method-definition': {
1381
- pattern: /(\bdef\s+)[\w.]+/,
1382
- lookbehind: true,
1383
- inside: {
1384
- 'function': /\w+$/,
1385
- rest: Prism.languages.ruby
1386
- }
1387
- }
1388
- });
1389
- Prism.languages.insertBefore('ruby', 'number', {
1390
- 'builtin': /\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/,
1391
- 'constant': /\b[A-Z]\w*(?:[?!]|\b)/
1392
- });
1393
- Prism.languages.ruby.string = [
1394
- {
1395
- pattern: /%[qQiIwWxs]?([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/,
1396
- greedy: true,
1397
- inside: { 'interpolation': interpolation }
1398
- },
1399
- {
1400
- pattern: /%[qQiIwWxs]?\((?:[^()\\]|\\[\s\S])*\)/,
1401
- greedy: true,
1402
- inside: { 'interpolation': interpolation }
1403
- },
1404
- {
1405
- pattern: /%[qQiIwWxs]?\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/,
1406
- greedy: true,
1407
- inside: { 'interpolation': interpolation }
1408
- },
1409
- {
1410
- pattern: /%[qQiIwWxs]?\[(?:[^\[\]\\]|\\[\s\S])*\]/,
1411
- greedy: true,
1412
- inside: { 'interpolation': interpolation }
1413
- },
1414
- {
1415
- pattern: /%[qQiIwWxs]?<(?:[^<>\\]|\\[\s\S])*>/,
1416
- greedy: true,
1417
- inside: { 'interpolation': interpolation }
1418
- },
1419
- {
1420
- pattern: /("|')(?:#\{[^}]+\}|\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
1421
- greedy: true,
1422
- inside: { 'interpolation': interpolation }
1423
- }
1424
- ];
1425
- Prism.languages.rb = Prism.languages.ruby;
1426
- }(Prism));
2035
+ 'method-definition': {
2036
+ pattern: /(\bdef\s+)[\w.]+/,
2037
+ lookbehind: true,
2038
+ inside: {
2039
+ 'function': /\w+$/,
2040
+ rest: Prism.languages.ruby
2041
+ }
2042
+ }
2043
+ });
2044
+ Prism.languages.insertBefore('ruby', 'number', {
2045
+ 'builtin': /\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Stat|Fixnum|Float|Hash|Integer|IO|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|String|Struct|TMS|Symbol|ThreadGroup|Thread|Time|TrueClass)\b/,
2046
+ 'constant': /\b[A-Z]\w*(?:[?!]|\b)/
2047
+ });
2048
+ Prism.languages.ruby.string = [
2049
+ {
2050
+ pattern: RegExp(/%[qQiIwWxs]?/.source + '(?:' + [
2051
+ /([^a-zA-Z0-9\s{(\[<])(?:(?!\1)[^\\]|\\[\s\S])*\1/.source,
2052
+ /\((?:[^()\\]|\\[\s\S])*\)/.source,
2053
+ /\{(?:[^#{}\\]|#(?:\{[^}]+\})?|\\[\s\S])*\}/.source,
2054
+ /\[(?:[^\[\]\\]|\\[\s\S])*\]/.source,
2055
+ /<(?:[^<>\\]|\\[\s\S])*>/.source
2056
+ ].join('|') + ')'),
2057
+ greedy: true,
2058
+ inside: { 'interpolation': interpolation }
1427
2059
  },
1428
- {}
1429
- ],
1430
- 14: [
1431
- function (require, module, exports) {
1432
- var Prism = require('prismjs/components/prism-core');
1433
- require('prismjs/components/prism-clike');
1434
- require('prismjs/components/prism-markup-templating');
1435
- require('prismjs/components/prism-c');
1436
- require('prismjs/components/prism-cpp');
1437
- require('prismjs/components/prism-csharp');
1438
- require('prismjs/components/prism-css');
1439
- require('prismjs/components/prism-java');
1440
- require('prismjs/components/prism-javascript');
1441
- require('prismjs/components/prism-markup');
1442
- require('prismjs/components/prism-php');
1443
- require('prismjs/components/prism-python');
1444
- require('prismjs/components/prism-ruby');
1445
- module.exports = { boltExport: Prism };
2060
+ {
2061
+ pattern: /("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,
2062
+ greedy: true,
2063
+ inside: { 'interpolation': interpolation }
2064
+ },
2065
+ {
2066
+ pattern: /<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,
2067
+ alias: 'heredoc-string',
2068
+ greedy: true,
2069
+ inside: {
2070
+ 'delimiter': {
2071
+ pattern: /^<<[-~]?[a-z_]\w*|[a-z_]\w*$/i,
2072
+ alias: 'symbol',
2073
+ inside: { 'punctuation': /^<<[-~]?/ }
2074
+ },
2075
+ 'interpolation': interpolation
2076
+ }
1446
2077
  },
1447
2078
  {
1448
- 'prismjs/components/prism-c': 1,
1449
- 'prismjs/components/prism-clike': 2,
1450
- 'prismjs/components/prism-core': 3,
1451
- 'prismjs/components/prism-cpp': 4,
1452
- 'prismjs/components/prism-csharp': 5,
1453
- 'prismjs/components/prism-css': 6,
1454
- 'prismjs/components/prism-java': 7,
1455
- 'prismjs/components/prism-javascript': 8,
1456
- 'prismjs/components/prism-markup': 10,
1457
- 'prismjs/components/prism-markup-templating': 9,
1458
- 'prismjs/components/prism-php': 11,
1459
- 'prismjs/components/prism-python': 12,
1460
- 'prismjs/components/prism-ruby': 13
2079
+ pattern: /<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,
2080
+ alias: 'heredoc-string',
2081
+ greedy: true,
2082
+ inside: {
2083
+ 'delimiter': {
2084
+ pattern: /^<<[-~]?'[a-z_]\w*'|[a-z_]\w*$/i,
2085
+ alias: 'symbol',
2086
+ inside: { 'punctuation': /^<<[-~]?'|'$/ }
2087
+ }
2088
+ }
1461
2089
  }
1462
- ]
1463
- }, {}, [14])(14);
2090
+ ];
2091
+ Prism.languages.rb = Prism.languages.ruby;
2092
+ }(Prism));
2093
+ var Prism$1 = prismCore.exports;
2094
+ var prismjs = { boltExport: Prism$1 };
2095
+ return prismjs;
1464
2096
  }));
1465
2097
  var prism = window.Prism;
1466
2098
  window.Prism = oldprism;
1467
2099
  return prism;
1468
- }(undefined, exports$1, module, undefined));
2100
+ }(undefined, exports$1, module));
1469
2101
  var Prism$1 = module.exports.boltExport;
1470
2102
 
1471
- var getLanguages = function (editor) {
2103
+ var getLanguages$1 = function (editor) {
1472
2104
  return editor.getParam('codesample_languages');
1473
2105
  };
1474
2106
  var useGlobalPrismJS = function (editor) {
@@ -1481,10 +2113,7 @@
1481
2113
 
1482
2114
  var getSelectedCodeSample = function (editor) {
1483
2115
  var node = editor.selection ? editor.selection.getNode() : null;
1484
- if (isCodeSample(node)) {
1485
- return Option.some(node);
1486
- }
1487
- return Option.none();
2116
+ return someIf(isCodeSample(node), node);
1488
2117
  };
1489
2118
  var insertCodeSample = function (editor, language, code) {
1490
2119
  editor.undoManager.transact(function () {
@@ -1503,14 +2132,12 @@
1503
2132
  };
1504
2133
  var getCurrentCode = function (editor) {
1505
2134
  var node = getSelectedCodeSample(editor);
1506
- return node.fold(function () {
1507
- return '';
1508
- }, function (n) {
2135
+ return node.fold(constant(''), function (n) {
1509
2136
  return n.textContent;
1510
2137
  });
1511
2138
  };
1512
2139
 
1513
- var getLanguages$1 = function (editor) {
2140
+ var getLanguages = function (editor) {
1514
2141
  var defaultLanguages = [
1515
2142
  {
1516
2143
  text: 'HTML/XML',
@@ -1553,7 +2180,7 @@
1553
2180
  value: 'cpp'
1554
2181
  }
1555
2182
  ];
1556
- var customLanguages = getLanguages(editor);
2183
+ var customLanguages = getLanguages$1(editor);
1557
2184
  return customLanguages ? customLanguages : defaultLanguages;
1558
2185
  };
1559
2186
  var getCurrentLanguage = function (editor, fallback) {
@@ -1567,10 +2194,8 @@
1567
2194
  };
1568
2195
 
1569
2196
  var open = function (editor) {
1570
- var languages = getLanguages$1(editor);
1571
- var defaultLanguage = head(languages).fold(function () {
1572
- return '';
1573
- }, function (l) {
2197
+ var languages = getLanguages(editor);
2198
+ var defaultLanguage = head(languages).fold(constant(''), function (l) {
1574
2199
  return l.value;
1575
2200
  });
1576
2201
  var currentLanguage = getCurrentLanguage(editor, defaultLanguage);
@@ -1619,7 +2244,7 @@
1619
2244
  });
1620
2245
  };
1621
2246
 
1622
- var register = function (editor) {
2247
+ var register$1 = function (editor) {
1623
2248
  editor.addCommand('codesample', function () {
1624
2249
  var node = editor.selection.getNode();
1625
2250
  if (editor.selection.isCollapsed() || isCodeSample(node)) {
@@ -1666,13 +2291,14 @@
1666
2291
  var node = editor.selection.getStart();
1667
2292
  return editor.dom.is(node, 'pre[class*="language-"]');
1668
2293
  };
1669
- var register$1 = function (editor) {
2294
+ var register = function (editor) {
2295
+ var onAction = function () {
2296
+ return editor.execCommand('codesample');
2297
+ };
1670
2298
  editor.ui.registry.addToggleButton('codesample', {
1671
2299
  icon: 'code-sample',
1672
2300
  tooltip: 'Insert/edit code sample',
1673
- onAction: function () {
1674
- return open(editor);
1675
- },
2301
+ onAction: onAction,
1676
2302
  onSetup: function (api) {
1677
2303
  var nodeChangeHandler = function () {
1678
2304
  api.setActive(isCodeSampleSelection(editor));
@@ -1686,17 +2312,15 @@
1686
2312
  editor.ui.registry.addMenuItem('codesample', {
1687
2313
  text: 'Code sample...',
1688
2314
  icon: 'code-sample',
1689
- onAction: function () {
1690
- return open(editor);
1691
- }
2315
+ onAction: onAction
1692
2316
  });
1693
2317
  };
1694
2318
 
1695
2319
  function Plugin () {
1696
- global.add('codesample', function (editor) {
2320
+ global$2.add('codesample', function (editor) {
1697
2321
  setup(editor);
1698
- register$1(editor);
1699
2322
  register(editor);
2323
+ register$1(editor);
1700
2324
  editor.on('dblclick', function (ev) {
1701
2325
  if (isCodeSample(ev.target)) {
1702
2326
  open(editor);
@@ -1707,4 +2331,4 @@
1707
2331
 
1708
2332
  Plugin();
1709
2333
 
1710
- }(window));
2334
+ }());