@cherry-markdown/cherry-markdown-dev 0.8.58-dev

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 (319) hide show
  1. package/package.json +149 -0
  2. package/src/Cherry.config.js +625 -0
  3. package/src/Cherry.js +1104 -0
  4. package/src/CherryStatic.js +70 -0
  5. package/src/Editor.js +748 -0
  6. package/src/Engine.js +381 -0
  7. package/src/Event.js +140 -0
  8. package/src/Factory.js +180 -0
  9. package/src/Logger.js +31 -0
  10. package/src/Previewer.js +1183 -0
  11. package/src/Sanitizer.js +4 -0
  12. package/src/Sanitizer.node.js +7 -0
  13. package/src/UrlCache.js +98 -0
  14. package/src/addons/advance/cherry-table-echarts-plugin.js +170 -0
  15. package/src/addons/cherry-code-block-mermaid-plugin.js +158 -0
  16. package/src/addons/cherry-code-block-plantuml-plugin.js +106 -0
  17. package/src/core/HookCenter.js +297 -0
  18. package/src/core/HooksConfig.js +100 -0
  19. package/src/core/ParagraphBase.js +332 -0
  20. package/src/core/SentenceBase.js +65 -0
  21. package/src/core/SyntaxBase.js +194 -0
  22. package/src/core/hooks/AutoLink.js +232 -0
  23. package/src/core/hooks/BackgroundColor.js +46 -0
  24. package/src/core/hooks/Blockquote.js +70 -0
  25. package/src/core/hooks/Br.js +85 -0
  26. package/src/core/hooks/CodeBlock.js +446 -0
  27. package/src/core/hooks/Color.js +46 -0
  28. package/src/core/hooks/CommentReference.js +96 -0
  29. package/src/core/hooks/Detail.js +108 -0
  30. package/src/core/hooks/Emoji.config.js +1825 -0
  31. package/src/core/hooks/Emoji.js +119 -0
  32. package/src/core/hooks/Emphasis.js +113 -0
  33. package/src/core/hooks/Footnote.js +125 -0
  34. package/src/core/hooks/FrontMatter.js +51 -0
  35. package/src/core/hooks/Header.js +234 -0
  36. package/src/core/hooks/HighLight.js +37 -0
  37. package/src/core/hooks/Hr.js +52 -0
  38. package/src/core/hooks/HtmlBlock.js +184 -0
  39. package/src/core/hooks/Image.js +174 -0
  40. package/src/core/hooks/InlineCode.js +48 -0
  41. package/src/core/hooks/InlineMath.js +107 -0
  42. package/src/core/hooks/Link.js +160 -0
  43. package/src/core/hooks/List.js +264 -0
  44. package/src/core/hooks/MathBlock.js +103 -0
  45. package/src/core/hooks/Panel.js +145 -0
  46. package/src/core/hooks/Paragraph.js +84 -0
  47. package/src/core/hooks/Ruby.js +34 -0
  48. package/src/core/hooks/Size.js +51 -0
  49. package/src/core/hooks/Strikethrough.js +54 -0
  50. package/src/core/hooks/Sub.js +47 -0
  51. package/src/core/hooks/SuggestList.js +333 -0
  52. package/src/core/hooks/Suggester.js +707 -0
  53. package/src/core/hooks/Sup.js +47 -0
  54. package/src/core/hooks/Table.js +275 -0
  55. package/src/core/hooks/Toc.js +292 -0
  56. package/src/core/hooks/Transfer.js +47 -0
  57. package/src/core/hooks/Underline.js +37 -0
  58. package/src/index.core.js +29 -0
  59. package/src/index.engine.core.js +68 -0
  60. package/src/index.engine.js +28 -0
  61. package/src/index.js +32 -0
  62. package/src/libs/mermaidAPI.8.4.8.js +1 -0
  63. package/src/libs/mermaidAPI.8.5.2.js +42 -0
  64. package/src/libs/rawdeflate.js +1663 -0
  65. package/src/locales/en_US.js +139 -0
  66. package/src/locales/index.js +25 -0
  67. package/src/locales/ru_RU.js +139 -0
  68. package/src/locales/zh_CN.js +142 -0
  69. package/src/sass/base.scss +26 -0
  70. package/src/sass/bubble_formula.scss +166 -0
  71. package/src/sass/ch-icon.scss +118 -0
  72. package/src/sass/cherry.scss +1116 -0
  73. package/src/sass/components/bubble.scss +173 -0
  74. package/src/sass/components/shortcut_key_config.scss +108 -0
  75. package/src/sass/formula_utils_bubble.scss +82 -0
  76. package/src/sass/icon_template.scss +24 -0
  77. package/src/sass/icons/uEA03-list.svg +19 -0
  78. package/src/sass/icons/uEA04-check.svg +14 -0
  79. package/src/sass/icons/uEA09-square.svg +10 -0
  80. package/src/sass/icons/uEA0A-bold.svg +20 -0
  81. package/src/sass/icons/uEA0B-code.svg +18 -0
  82. package/src/sass/icons/uEA0C-color.svg +13 -0
  83. package/src/sass/icons/uEA0D-header.svg +8 -0
  84. package/src/sass/icons/uEA0E-image.svg +15 -0
  85. package/src/sass/icons/uEA0F-italic.svg +8 -0
  86. package/src/sass/icons/uEA10-link.svg +16 -0
  87. package/src/sass/icons/uEA11-ol.svg +21 -0
  88. package/src/sass/icons/uEA12-size.svg +11 -0
  89. package/src/sass/icons/uEA13-strike.svg +16 -0
  90. package/src/sass/icons/uEA14-table.svg +12 -0
  91. package/src/sass/icons/uEA15-ul.svg +17 -0
  92. package/src/sass/icons/uEA16-underline.svg +13 -0
  93. package/src/sass/icons/uEA17-word.svg +16 -0
  94. package/src/sass/icons/uEA18-blockquote.svg +11 -0
  95. package/src/sass/icons/uEA19-font.svg +10 -0
  96. package/src/sass/icons/uEA1F-insertClass.svg +39 -0
  97. package/src/sass/icons/uEA20-insertFlow.svg +8 -0
  98. package/src/sass/icons/uEA21-insertFormula.svg +23 -0
  99. package/src/sass/icons/uEA22-insertGantt.svg +13 -0
  100. package/src/sass/icons/uEA23-insertGraph.svg +13 -0
  101. package/src/sass/icons/uEA24-insertPie.svg +19 -0
  102. package/src/sass/icons/uEA25-insertSeq.svg +20 -0
  103. package/src/sass/icons/uEA26-insertState.svg +35 -0
  104. package/src/sass/icons/uEA27-line.svg +11 -0
  105. package/src/sass/icons/uEA28-preview.svg +18 -0
  106. package/src/sass/icons/uEA29-previewClose.svg +24 -0
  107. package/src/sass/icons/uEA2A-toc.svg +24 -0
  108. package/src/sass/icons/uEA2D-sub.svg +15 -0
  109. package/src/sass/icons/uEA2E-sup.svg +15 -0
  110. package/src/sass/icons/uEA2F-h1.svg +16 -0
  111. package/src/sass/icons/uEA30-h2.svg +20 -0
  112. package/src/sass/icons/uEA31-h3.svg +23 -0
  113. package/src/sass/icons/uEA32-h4.svg +16 -0
  114. package/src/sass/icons/uEA33-h5.svg +20 -0
  115. package/src/sass/icons/uEA34-h6.svg +17 -0
  116. package/src/sass/icons/uEA35-video.svg +20 -0
  117. package/src/sass/icons/uEA36-insert.svg +25 -0
  118. package/src/sass/icons/uEA37-little_table.svg +30 -0
  119. package/src/sass/icons/uEA38-pdf.svg +27 -0
  120. package/src/sass/icons/uEA39-checklist.svg +22 -0
  121. package/src/sass/icons/uEA40-close.svg +12 -0
  122. package/src/sass/icons/uEA41-fullscreen.svg +81 -0
  123. package/src/sass/icons/uEA42-minscreen.svg +77 -0
  124. package/src/sass/icons/uEA43-insertChart.svg +23 -0
  125. package/src/sass/icons/uEA44-question.svg +25 -0
  126. package/src/sass/icons/uEA45-settings.svg +32 -0
  127. package/src/sass/icons/uEA46-ok.svg +7 -0
  128. package/src/sass/icons/uEA47-br.svg +22 -0
  129. package/src/sass/icons/uEA48-normal.svg +15 -0
  130. package/src/sass/icons/uEA49-undo.svg +19 -0
  131. package/src/sass/icons/uEA50-redo.svg +21 -0
  132. package/src/sass/icons/uEA51-copy.svg +6 -0
  133. package/src/sass/icons/uEA52-phone.svg +5 -0
  134. package/src/sass/icons/uEA53-cherry-table-delete.svg +17 -0
  135. package/src/sass/icons/uEA54-cherry-table-insert-bottom.svg +16 -0
  136. package/src/sass/icons/uEA55-cherry-table-insert-left.svg +15 -0
  137. package/src/sass/icons/uEA56-cherry-table-insert-right.svg +16 -0
  138. package/src/sass/icons/uEA57-cherry-table-insert-top.svg +16 -0
  139. package/src/sass/icons/uEA58-sort-s.svg +13 -0
  140. package/src/sass/icons/uEA59-pinyin.svg +1 -0
  141. package/src/sass/icons/uEA5A-create.svg +24 -0
  142. package/src/sass/icons/uEA5B-download.svg +34 -0
  143. package/src/sass/icons/uEA5C-edit.svg +3 -0
  144. package/src/sass/icons/uEA5D-export.svg +53 -0
  145. package/src/sass/icons/uEA5E-folder-open.svg +3 -0
  146. package/src/sass/icons/uEA5F-folder.svg +3 -0
  147. package/src/sass/icons/uEA60-help.svg +5 -0
  148. package/src/sass/icons/uEA61-pen-fill.svg +13 -0
  149. package/src/sass/icons/uEA62-pen.svg +3 -0
  150. package/src/sass/icons/uEA64-tips.svg +5 -0
  151. package/src/sass/icons/uEA65-warn.svg +5 -0
  152. package/src/sass/icons/uEA66-mistake.svg +4 -0
  153. package/src/sass/icons/uEA67-success.svg +4 -0
  154. package/src/sass/icons/uEA68-danger.svg +4 -0
  155. package/src/sass/icons/uEA69-info.svg +5 -0
  156. package/src/sass/icons/uEA6A-primary.svg +5 -0
  157. package/src/sass/icons/uEA6B-warning.svg +5 -0
  158. package/src/sass/icons/uEA6C-justify.svg +19 -0
  159. package/src/sass/icons/uEA6D-justifyCenter.svg +19 -0
  160. package/src/sass/icons/uEA6E-justifyLeft.svg +19 -0
  161. package/src/sass/icons/uEA6F-justifyRight.svg +19 -0
  162. package/src/sass/icons/uEA70-chevronsLeft.svg +1 -0
  163. package/src/sass/icons/uEA71-chevronsRight.svg +1 -0
  164. package/src/sass/icons/uEA72-trendingUp.svg +1 -0
  165. package/src/sass/icons/uEA74-codeBlock.svg +1 -0
  166. package/src/sass/icons/uEA75-expand.svg +3 -0
  167. package/src/sass/icons/uEA76-unExpand.svg +3 -0
  168. package/src/sass/icons/uEA77-swap-vert.svg +1 -0
  169. package/src/sass/icons/uEA78-swap.svg +1 -0
  170. package/src/sass/icons/uEA79-keyboard.svg +1 -0
  171. package/src/sass/icons/uEA7A-command.svg +1 -0
  172. package/src/sass/icons/uEA7B-search.svg +1 -0
  173. package/src/sass/index.scss +3 -0
  174. package/src/sass/markdown.scss +668 -0
  175. package/src/sass/markdown_pure.scss +9 -0
  176. package/src/sass/prettyprint/prettyprint.scss +118 -0
  177. package/src/sass/previewer.scss +179 -0
  178. package/src/sass/print.scss +13 -0
  179. package/src/sass/prism/coy.scss +220 -0
  180. package/src/sass/prism/dark.scss +132 -0
  181. package/src/sass/prism/default.scss +143 -0
  182. package/src/sass/prism/funky.scss +133 -0
  183. package/src/sass/prism/okaidia.scss +126 -0
  184. package/src/sass/prism/one-dark.scss +440 -0
  185. package/src/sass/prism/one-light.scss +428 -0
  186. package/src/sass/prism/solarized-light.scss +153 -0
  187. package/src/sass/prism/tomorrow-night.scss +125 -0
  188. package/src/sass/prism/twilight.scss +202 -0
  189. package/src/sass/prism/vs-dark.scss +275 -0
  190. package/src/sass/prism/vs-light.scss +168 -0
  191. package/src/sass/themes/blue.scss +411 -0
  192. package/src/sass/themes/dark.scss +517 -0
  193. package/src/sass/themes/default.scss +255 -0
  194. package/src/sass/themes/green.scss +395 -0
  195. package/src/sass/themes/light.scss +368 -0
  196. package/src/sass/themes/red.scss +397 -0
  197. package/src/sass/themes/violet.scss +410 -0
  198. package/src/sass/variable.scss +84 -0
  199. package/src/toolbars/Bubble.js +234 -0
  200. package/src/toolbars/BubbleFormula.js +298 -0
  201. package/src/toolbars/BubbleTable.js +147 -0
  202. package/src/toolbars/FloatMenu.js +131 -0
  203. package/src/toolbars/HiddenToolbar.js +36 -0
  204. package/src/toolbars/HookCenter.js +234 -0
  205. package/src/toolbars/MenuBase.js +569 -0
  206. package/src/toolbars/PreviewerBubble.js +608 -0
  207. package/src/toolbars/ShortcutKeyConfigPanel.js +345 -0
  208. package/src/toolbars/Sidebar.js +36 -0
  209. package/src/toolbars/Toc.js +242 -0
  210. package/src/toolbars/Toolbar.js +449 -0
  211. package/src/toolbars/ToolbarRight.js +37 -0
  212. package/src/toolbars/hooks/Audio.js +79 -0
  213. package/src/toolbars/hooks/BarTable.js +41 -0
  214. package/src/toolbars/hooks/Bold.js +73 -0
  215. package/src/toolbars/hooks/Br.js +34 -0
  216. package/src/toolbars/hooks/ChangeLocale.js +62 -0
  217. package/src/toolbars/hooks/ChatGpt.js +182 -0
  218. package/src/toolbars/hooks/CheckList.js +41 -0
  219. package/src/toolbars/hooks/Code.js +49 -0
  220. package/src/toolbars/hooks/CodeTheme.js +66 -0
  221. package/src/toolbars/hooks/Color.js +298 -0
  222. package/src/toolbars/hooks/Copy.js +141 -0
  223. package/src/toolbars/hooks/Detail.js +69 -0
  224. package/src/toolbars/hooks/DrawIo.js +57 -0
  225. package/src/toolbars/hooks/Export.js +49 -0
  226. package/src/toolbars/hooks/File.js +79 -0
  227. package/src/toolbars/hooks/Formula.js +69 -0
  228. package/src/toolbars/hooks/FullScreen.js +50 -0
  229. package/src/toolbars/hooks/Graph.js +263 -0
  230. package/src/toolbars/hooks/H1.js +71 -0
  231. package/src/toolbars/hooks/H2.js +71 -0
  232. package/src/toolbars/hooks/H3.js +71 -0
  233. package/src/toolbars/hooks/Header.js +118 -0
  234. package/src/toolbars/hooks/Hr.js +35 -0
  235. package/src/toolbars/hooks/Image.js +91 -0
  236. package/src/toolbars/hooks/InlineCode.js +53 -0
  237. package/src/toolbars/hooks/Insert.js +193 -0
  238. package/src/toolbars/hooks/Italic.js +72 -0
  239. package/src/toolbars/hooks/Justify.js +49 -0
  240. package/src/toolbars/hooks/LineTable.js +41 -0
  241. package/src/toolbars/hooks/Link.js +49 -0
  242. package/src/toolbars/hooks/List.js +55 -0
  243. package/src/toolbars/hooks/MobilePreview.js +44 -0
  244. package/src/toolbars/hooks/Ol.js +41 -0
  245. package/src/toolbars/hooks/Panel.js +140 -0
  246. package/src/toolbars/hooks/Pdf.js +78 -0
  247. package/src/toolbars/hooks/Publish.js +123 -0
  248. package/src/toolbars/hooks/QuickTable.js +43 -0
  249. package/src/toolbars/hooks/Quote.js +45 -0
  250. package/src/toolbars/hooks/Redo.js +33 -0
  251. package/src/toolbars/hooks/Ruby.js +59 -0
  252. package/src/toolbars/hooks/Search.js +53 -0
  253. package/src/toolbars/hooks/Settings.js +220 -0
  254. package/src/toolbars/hooks/ShortcutKey.js +62 -0
  255. package/src/toolbars/hooks/Size.js +118 -0
  256. package/src/toolbars/hooks/Split.js +37 -0
  257. package/src/toolbars/hooks/Strikethrough.js +71 -0
  258. package/src/toolbars/hooks/Sub.js +58 -0
  259. package/src/toolbars/hooks/Sup.js +58 -0
  260. package/src/toolbars/hooks/SwitchModel.js +56 -0
  261. package/src/toolbars/hooks/Table.js +56 -0
  262. package/src/toolbars/hooks/Theme.js +62 -0
  263. package/src/toolbars/hooks/Toc.js +35 -0
  264. package/src/toolbars/hooks/TogglePreview.js +91 -0
  265. package/src/toolbars/hooks/Ul.js +41 -0
  266. package/src/toolbars/hooks/Underline.js +68 -0
  267. package/src/toolbars/hooks/Undo.js +30 -0
  268. package/src/toolbars/hooks/Video.js +79 -0
  269. package/src/toolbars/hooks/Word.js +78 -0
  270. package/src/toolbars/hooks/WordCount.js +106 -0
  271. package/src/utils/autoindent.js +58 -0
  272. package/src/utils/cm-search-replace.js +794 -0
  273. package/src/utils/code-preview-language-setting.js +180 -0
  274. package/src/utils/codeBlockContentHandler.js +400 -0
  275. package/src/utils/config.js +174 -0
  276. package/src/utils/copy.js +55 -0
  277. package/src/utils/dialog.js +214 -0
  278. package/src/utils/dom.js +163 -0
  279. package/src/utils/downloadUtil.js +23 -0
  280. package/src/utils/env.js +22 -0
  281. package/src/utils/error.js +61 -0
  282. package/src/utils/event.js +38 -0
  283. package/src/utils/export.js +166 -0
  284. package/src/utils/file.js +164 -0
  285. package/src/utils/formulaUtilsHandler.js +232 -0
  286. package/src/utils/htmlparser.js +976 -0
  287. package/src/utils/image.js +99 -0
  288. package/src/utils/imgSizeHandler.js +279 -0
  289. package/src/utils/lazyLoadImg.js +327 -0
  290. package/src/utils/lineFeed.js +49 -0
  291. package/src/utils/listContentHandler.js +227 -0
  292. package/src/utils/lookbehind-replace.js +81 -0
  293. package/src/utils/mathjax.js +89 -0
  294. package/src/utils/myersDiff.js +211 -0
  295. package/src/utils/pasteHelper.js +253 -0
  296. package/src/utils/platformTransform.js +71 -0
  297. package/src/utils/recount-pos.js +59 -0
  298. package/src/utils/regexp.js +295 -0
  299. package/src/utils/sanitize.js +477 -0
  300. package/src/utils/selection.js +50 -0
  301. package/src/utils/shortcutKey.js +291 -0
  302. package/src/utils/svgUtils.js +96 -0
  303. package/src/utils/tableContentHandler.js +876 -0
  304. package/test/core/CommonMark.spec.ts +62 -0
  305. package/test/core/hooks/AutoLink.spec.ts +28 -0
  306. package/test/core/hooks/List.spec.ts +79 -0
  307. package/test/core/hooks/__snapshots__/List.spec.ts.snap +11 -0
  308. package/test/example.md +778 -0
  309. package/test/node.js +10 -0
  310. package/test/suites/commonmark.spec.json +5218 -0
  311. package/test/tsconfig.test.json +6 -0
  312. package/test/utils/regexp.spec.ts +28 -0
  313. package/types/cherry.d.ts +675 -0
  314. package/types/codemirror.d.ts +22 -0
  315. package/types/editor.d.ts +72 -0
  316. package/types/global.d.ts +16 -0
  317. package/types/menus.d.ts +24 -0
  318. package/types/previewer.d.ts +53 -0
  319. package/types/syntax.d.ts +52 -0
@@ -0,0 +1,440 @@
1
+ /**
2
+ * One Dark theme for prism.js
3
+ * Based on Atom's One Dark theme: https://github.com/atom/atom/tree/master/packages/one-dark-syntax
4
+ */
5
+
6
+ /**
7
+ * One Dark colours (accurate as of commit 8ae45ca on 6 Sep 2018)
8
+ * From colors.less
9
+ * --mono-1: hsl(220, 14%, 71%);
10
+ * --mono-2: hsl(220, 9%, 55%);
11
+ * --mono-3: hsl(220, 10%, 40%);
12
+ * --hue-1: hsl(187, 47%, 55%);
13
+ * --hue-2: hsl(207, 82%, 66%);
14
+ * --hue-3: hsl(286, 60%, 67%);
15
+ * --hue-4: hsl(95, 38%, 62%);
16
+ * --hue-5: hsl(355, 65%, 65%);
17
+ * --hue-5-2: hsl(5, 48%, 51%);
18
+ * --hue-6: hsl(29, 54%, 61%);
19
+ * --hue-6-2: hsl(39, 67%, 69%);
20
+ * --syntax-fg: hsl(220, 14%, 71%);
21
+ * --syntax-bg: hsl(220, 13%, 18%);
22
+ * --syntax-gutter: hsl(220, 14%, 45%);
23
+ * --syntax-guide: hsla(220, 14%, 71%, 0.15);
24
+ * --syntax-accent: hsl(220, 100%, 66%);
25
+ * From syntax-variables.less
26
+ * --syntax-selection-color: hsl(220, 13%, 28%);
27
+ * --syntax-gutter-background-color-selected: hsl(220, 13%, 26%);
28
+ * --syntax-cursor-line: hsla(220, 100%, 80%, 0.04);
29
+ */
30
+
31
+ code[class*="language-"],
32
+ pre[class*="language-"] {
33
+ background: hsl(220, 13%, 18%);
34
+ color: hsl(220, 14%, 71%);
35
+ text-shadow: 0 1px rgba(0, 0, 0, 0.3);
36
+ font-family: "Fira Code", "Fira Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace;
37
+ direction: ltr;
38
+ text-align: left;
39
+ white-space: pre;
40
+ word-spacing: normal;
41
+ word-break: normal;
42
+ line-height: 1.5;
43
+ -moz-tab-size: 2;
44
+ -o-tab-size: 2;
45
+ tab-size: 2;
46
+ -webkit-hyphens: none;
47
+ -moz-hyphens: none;
48
+ -ms-hyphens: none;
49
+ hyphens: none;
50
+ }
51
+
52
+ /* Selection */
53
+ code[class*="language-"]::-moz-selection,
54
+ code[class*="language-"] *::-moz-selection,
55
+ pre[class*="language-"] *::-moz-selection {
56
+ background: hsl(220, 13%, 28%);
57
+ color: inherit;
58
+ text-shadow: none;
59
+ }
60
+
61
+ code[class*="language-"]::selection,
62
+ code[class*="language-"] *::selection,
63
+ pre[class*="language-"] *::selection {
64
+ background: hsl(220, 13%, 28%);
65
+ color: inherit;
66
+ text-shadow: none;
67
+ }
68
+
69
+ /* Code blocks */
70
+ pre[class*="language-"] {
71
+ padding: 1em;
72
+ margin: 0.5em 0;
73
+ overflow: auto;
74
+ border-radius: 0.3em;
75
+ }
76
+
77
+ /* Inline code */
78
+ :not(pre) > code[class*="language-"] {
79
+ padding: 0.2em 0.3em;
80
+ border-radius: 0.3em;
81
+ white-space: normal;
82
+ }
83
+
84
+ /* Print */
85
+ @media print {
86
+ code[class*="language-"],
87
+ pre[class*="language-"] {
88
+ text-shadow: none;
89
+ }
90
+ }
91
+
92
+ .token.comment,
93
+ .token.prolog,
94
+ .token.cdata {
95
+ color: hsl(220, 10%, 40%);
96
+ }
97
+
98
+ .token.doctype,
99
+ .token.punctuation,
100
+ .token.entity {
101
+ color: hsl(220, 14%, 71%);
102
+ }
103
+
104
+ .token.attr-name,
105
+ .token.class-name,
106
+ .token.boolean,
107
+ .token.constant,
108
+ .token.number,
109
+ .token.atrule {
110
+ color: hsl(29, 54%, 61%);
111
+ }
112
+
113
+ .token.keyword {
114
+ color: hsl(286, 60%, 67%);
115
+ }
116
+
117
+ .token.property,
118
+ .token.tag,
119
+ .token.symbol,
120
+ .token.deleted,
121
+ .token.important {
122
+ color: hsl(355, 65%, 65%);
123
+ }
124
+
125
+ .token.selector,
126
+ .token.string,
127
+ .token.char,
128
+ .token.builtin,
129
+ .token.inserted,
130
+ .token.regex,
131
+ .token.attr-value,
132
+ .token.attr-value > .token.punctuation {
133
+ color: hsl(95, 38%, 62%);
134
+ }
135
+
136
+ .token.variable,
137
+ .token.operator,
138
+ .token.function {
139
+ color: hsl(207, 82%, 66%);
140
+ }
141
+
142
+ .token.url {
143
+ color: hsl(187, 47%, 55%);
144
+ }
145
+
146
+ /* HTML overrides */
147
+ .token.attr-value > .token.punctuation.attr-equals,
148
+ .token.special-attr > .token.attr-value > .token.value.css {
149
+ color: hsl(220, 14%, 71%);
150
+ }
151
+
152
+ /* CSS overrides */
153
+ .language-css .token.selector {
154
+ color: hsl(355, 65%, 65%);
155
+ }
156
+
157
+ .language-css .token.property {
158
+ color: hsl(220, 14%, 71%);
159
+ }
160
+
161
+ .language-css .token.function,
162
+ .language-css .token.url > .token.function {
163
+ color: hsl(187, 47%, 55%);
164
+ }
165
+
166
+ .language-css .token.url > .token.string.url {
167
+ color: hsl(95, 38%, 62%);
168
+ }
169
+
170
+ .language-css .token.important,
171
+ .language-css .token.atrule .token.rule {
172
+ color: hsl(286, 60%, 67%);
173
+ }
174
+
175
+ /* JS overrides */
176
+ .language-javascript .token.operator {
177
+ color: hsl(286, 60%, 67%);
178
+ }
179
+
180
+ .language-javascript .token.template-string > .token.interpolation > .token.interpolation-punctuation.punctuation {
181
+ color: hsl(5, 48%, 51%);
182
+ }
183
+
184
+ /* JSON overrides */
185
+ .language-json .token.operator {
186
+ color: hsl(220, 14%, 71%);
187
+ }
188
+
189
+ .language-json .token.null.keyword {
190
+ color: hsl(29, 54%, 61%);
191
+ }
192
+
193
+ /* MD overrides */
194
+ .language-markdown .token.url,
195
+ .language-markdown .token.url > .token.operator,
196
+ .language-markdown .token.url-reference.url > .token.string {
197
+ color: hsl(220, 14%, 71%);
198
+ }
199
+
200
+ .language-markdown .token.url > .token.content {
201
+ color: hsl(207, 82%, 66%);
202
+ }
203
+
204
+ .language-markdown .token.url > .token.url,
205
+ .language-markdown .token.url-reference.url {
206
+ color: hsl(187, 47%, 55%);
207
+ }
208
+
209
+ .language-markdown .token.blockquote.punctuation,
210
+ .language-markdown .token.hr.punctuation {
211
+ color: hsl(220, 10%, 40%);
212
+ font-style: italic;
213
+ }
214
+
215
+ .language-markdown .token.code-snippet {
216
+ color: hsl(95, 38%, 62%);
217
+ }
218
+
219
+ .language-markdown .token.bold .token.content {
220
+ color: hsl(29, 54%, 61%);
221
+ }
222
+
223
+ .language-markdown .token.italic .token.content {
224
+ color: hsl(286, 60%, 67%);
225
+ }
226
+
227
+ .language-markdown .token.strike .token.content,
228
+ .language-markdown .token.strike .token.punctuation,
229
+ .language-markdown .token.list.punctuation,
230
+ .language-markdown .token.title.important > .token.punctuation {
231
+ color: hsl(355, 65%, 65%);
232
+ }
233
+
234
+ /* General */
235
+ .token.bold {
236
+ font-weight: bold;
237
+ }
238
+
239
+ .token.comment,
240
+ .token.italic {
241
+ font-style: italic;
242
+ }
243
+
244
+ .token.entity {
245
+ cursor: help;
246
+ }
247
+
248
+ .token.namespace {
249
+ opacity: 0.8;
250
+ }
251
+
252
+ /* Plugin overrides */
253
+ /* Selectors should have higher specificity than those in the plugins' default stylesheets */
254
+
255
+ /* Show Invisibles plugin overrides */
256
+ .token.token.tab:not(:empty):before,
257
+ .token.token.cr:before,
258
+ .token.token.lf:before,
259
+ .token.token.space:before {
260
+ color: hsla(220, 14%, 71%, 0.15);
261
+ text-shadow: none;
262
+ }
263
+
264
+ /* Toolbar plugin overrides */
265
+ /* Space out all buttons and move them away from the right edge of the code block */
266
+ div.code-toolbar > .toolbar.toolbar > .toolbar-item {
267
+ margin-right: 0.4em;
268
+ }
269
+
270
+ /* Styling the buttons */
271
+ div.code-toolbar > .toolbar.toolbar > .toolbar-item > button,
272
+ div.code-toolbar > .toolbar.toolbar > .toolbar-item > a,
273
+ div.code-toolbar > .toolbar.toolbar > .toolbar-item > span {
274
+ background: hsl(220, 13%, 26%);
275
+ color: hsl(220, 9%, 55%);
276
+ padding: 0.1em 0.4em;
277
+ border-radius: 0.3em;
278
+ }
279
+
280
+ div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:hover,
281
+ div.code-toolbar > .toolbar.toolbar > .toolbar-item > button:focus,
282
+ div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:hover,
283
+ div.code-toolbar > .toolbar.toolbar > .toolbar-item > a:focus,
284
+ div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:hover,
285
+ div.code-toolbar > .toolbar.toolbar > .toolbar-item > span:focus {
286
+ background: hsl(220, 13%, 28%);
287
+ color: hsl(220, 14%, 71%);
288
+ }
289
+
290
+ /* Line Highlight plugin overrides */
291
+ /* The highlighted line itself */
292
+ .line-highlight.line-highlight {
293
+ background: hsla(220, 100%, 80%, 0.04);
294
+ }
295
+
296
+ /* Default line numbers in Line Highlight plugin */
297
+ .line-highlight.line-highlight:before,
298
+ .line-highlight.line-highlight[data-end]:after {
299
+ background: hsl(220, 13%, 26%);
300
+ color: hsl(220, 14%, 71%);
301
+ padding: 0.1em 0.6em;
302
+ border-radius: 0.3em;
303
+ box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.2); /* same as Toolbar plugin default */
304
+ }
305
+
306
+ /* Hovering over a linkable line number (in the gutter area) */
307
+ /* Requires Line Numbers plugin as well */
308
+ pre[id].linkable-line-numbers.linkable-line-numbers span.line-numbers-rows > span:hover:before {
309
+ background-color: hsla(220, 100%, 80%, 0.04);
310
+ }
311
+
312
+ /* Line Numbers and Command Line plugins overrides */
313
+ /* Line separating gutter from coding area */
314
+ .line-numbers.line-numbers .line-numbers-rows,
315
+ .command-line .command-line-prompt {
316
+ border-right-color: hsla(220, 14%, 71%, 0.15);
317
+ }
318
+
319
+ /* Stuff in the gutter */
320
+ .line-numbers .line-numbers-rows > span:before,
321
+ .command-line .command-line-prompt > span:before {
322
+ color: hsl(220, 14%, 45%);
323
+ }
324
+
325
+ /* Match Braces plugin overrides */
326
+ /* Note: Outline colour is inherited from the braces */
327
+ .rainbow-braces .token.token.punctuation.brace-level-1,
328
+ .rainbow-braces .token.token.punctuation.brace-level-5,
329
+ .rainbow-braces .token.token.punctuation.brace-level-9 {
330
+ color: hsl(355, 65%, 65%);
331
+ }
332
+
333
+ .rainbow-braces .token.token.punctuation.brace-level-2,
334
+ .rainbow-braces .token.token.punctuation.brace-level-6,
335
+ .rainbow-braces .token.token.punctuation.brace-level-10 {
336
+ color: hsl(95, 38%, 62%);
337
+ }
338
+
339
+ .rainbow-braces .token.token.punctuation.brace-level-3,
340
+ .rainbow-braces .token.token.punctuation.brace-level-7,
341
+ .rainbow-braces .token.token.punctuation.brace-level-11 {
342
+ color: hsl(207, 82%, 66%);
343
+ }
344
+
345
+ .rainbow-braces .token.token.punctuation.brace-level-4,
346
+ .rainbow-braces .token.token.punctuation.brace-level-8,
347
+ .rainbow-braces .token.token.punctuation.brace-level-12 {
348
+ color: hsl(286, 60%, 67%);
349
+ }
350
+
351
+ /* Diff Highlight plugin overrides */
352
+ /* Taken from https://github.com/atom/github/blob/master/styles/variables.less */
353
+ pre.diff-highlight > code .token.token.deleted:not(.prefix),
354
+ pre > code.diff-highlight .token.token.deleted:not(.prefix) {
355
+ background-color: hsla(353, 100%, 66%, 0.15);
356
+ }
357
+
358
+ pre.diff-highlight > code .token.token.deleted:not(.prefix)::-moz-selection,
359
+ pre.diff-highlight > code .token.token.deleted:not(.prefix) *::-moz-selection,
360
+ pre > code.diff-highlight .token.token.deleted:not(.prefix)::-moz-selection,
361
+ pre > code.diff-highlight .token.token.deleted:not(.prefix) *::-moz-selection {
362
+ background-color: hsla(353, 95%, 66%, 0.25);
363
+ }
364
+
365
+ pre.diff-highlight > code .token.token.deleted:not(.prefix)::selection,
366
+ pre.diff-highlight > code .token.token.deleted:not(.prefix) *::selection,
367
+ pre > code.diff-highlight .token.token.deleted:not(.prefix)::selection,
368
+ pre > code.diff-highlight .token.token.deleted:not(.prefix) *::selection {
369
+ background-color: hsla(353, 95%, 66%, 0.25);
370
+ }
371
+
372
+ pre.diff-highlight > code .token.token.inserted:not(.prefix),
373
+ pre > code.diff-highlight .token.token.inserted:not(.prefix) {
374
+ background-color: hsla(137, 100%, 55%, 0.15);
375
+ }
376
+
377
+ pre.diff-highlight > code .token.token.inserted:not(.prefix)::-moz-selection,
378
+ pre.diff-highlight > code .token.token.inserted:not(.prefix) *::-moz-selection,
379
+ pre > code.diff-highlight .token.token.inserted:not(.prefix)::-moz-selection,
380
+ pre > code.diff-highlight .token.token.inserted:not(.prefix) *::-moz-selection {
381
+ background-color: hsla(135, 73%, 55%, 0.25);
382
+ }
383
+
384
+ pre.diff-highlight > code .token.token.inserted:not(.prefix)::selection,
385
+ pre.diff-highlight > code .token.token.inserted:not(.prefix) *::selection,
386
+ pre > code.diff-highlight .token.token.inserted:not(.prefix)::selection,
387
+ pre > code.diff-highlight .token.token.inserted:not(.prefix) *::selection {
388
+ background-color: hsla(135, 73%, 55%, 0.25);
389
+ }
390
+
391
+ /* Previewers plugin overrides */
392
+ /* Based on https://github.com/atom-community/atom-ide-datatip/blob/master/styles/atom-ide-datatips.less and https://github.com/atom/atom/blob/master/packages/one-dark-ui */
393
+ /* Border around popup */
394
+ .prism-previewer.prism-previewer:before,
395
+ .prism-previewer-gradient.prism-previewer-gradient div {
396
+ border-color: hsl(224, 13%, 17%);
397
+ }
398
+
399
+ /* Angle and time should remain as circles and are hence not included */
400
+ .prism-previewer-color.prism-previewer-color:before,
401
+ .prism-previewer-gradient.prism-previewer-gradient div,
402
+ .prism-previewer-easing.prism-previewer-easing:before {
403
+ border-radius: 0.3em;
404
+ }
405
+
406
+ /* Triangles pointing to the code */
407
+ .prism-previewer.prism-previewer:after {
408
+ border-top-color: hsl(224, 13%, 17%);
409
+ }
410
+
411
+ .prism-previewer-flipped.prism-previewer-flipped.after {
412
+ border-bottom-color: hsl(224, 13%, 17%);
413
+ }
414
+
415
+ /* Background colour within the popup */
416
+ .prism-previewer-angle.prism-previewer-angle:before,
417
+ .prism-previewer-time.prism-previewer-time:before,
418
+ .prism-previewer-easing.prism-previewer-easing {
419
+ background: hsl(219, 13%, 22%);
420
+ }
421
+
422
+ /* For angle, this is the positive area (eg. 90deg will display one quadrant in this colour) */
423
+ /* For time, this is the alternate colour */
424
+ .prism-previewer-angle.prism-previewer-angle circle,
425
+ .prism-previewer-time.prism-previewer-time circle {
426
+ stroke: hsl(220, 14%, 71%);
427
+ stroke-opacity: 1;
428
+ }
429
+
430
+ /* Stroke colours of the handle, direction point, and vector itself */
431
+ .prism-previewer-easing.prism-previewer-easing circle,
432
+ .prism-previewer-easing.prism-previewer-easing path,
433
+ .prism-previewer-easing.prism-previewer-easing line {
434
+ stroke: hsl(220, 14%, 71%);
435
+ }
436
+
437
+ /* Fill colour of the handle */
438
+ .prism-previewer-easing.prism-previewer-easing circle {
439
+ fill: transparent;
440
+ }