dragon-editor 3.8.7 → 4.0.1

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 (91) hide show
  1. package/README.md +10 -9
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +9 -7
  4. package/dist/runtime/components/Block/Code.d.vue.ts +13 -0
  5. package/dist/runtime/components/Block/Code.vue +193 -0
  6. package/dist/runtime/components/Block/Code.vue.d.ts +13 -0
  7. package/dist/runtime/components/Block/Custom.d.vue.ts +9 -0
  8. package/dist/runtime/components/Block/Custom.vue +28 -0
  9. package/dist/runtime/components/Block/Custom.vue.d.ts +9 -0
  10. package/dist/runtime/components/Block/Divider.d.vue.ts +9 -0
  11. package/dist/runtime/components/Block/Divider.vue +27 -0
  12. package/dist/runtime/components/Block/Divider.vue.d.ts +9 -0
  13. package/dist/runtime/components/Block/Heading.d.vue.ts +13 -0
  14. package/dist/runtime/components/Block/Heading.vue +84 -0
  15. package/dist/runtime/components/Block/Heading.vue.d.ts +13 -0
  16. package/dist/runtime/components/Block/Image.d.vue.ts +13 -0
  17. package/dist/runtime/components/Block/Image.vue +146 -0
  18. package/dist/runtime/components/Block/Image.vue.d.ts +13 -0
  19. package/dist/runtime/components/Block/List.d.vue.ts +13 -0
  20. package/dist/runtime/components/Block/List.vue +170 -0
  21. package/dist/runtime/components/Block/List.vue.d.ts +13 -0
  22. package/dist/runtime/components/Block/Text.d.vue.ts +13 -0
  23. package/dist/runtime/components/Block/Text.vue +84 -0
  24. package/dist/runtime/components/Block/Text.vue.d.ts +13 -0
  25. package/dist/runtime/components/DragonEditor.d.vue.ts +27 -22
  26. package/dist/runtime/components/DragonEditor.vue +311 -474
  27. package/dist/runtime/components/DragonEditor.vue.d.ts +27 -22
  28. package/dist/runtime/components/DragonEditorViewer.d.vue.ts +12 -5
  29. package/dist/runtime/components/DragonEditorViewer.vue +200 -227
  30. package/dist/runtime/components/DragonEditorViewer.vue.d.ts +12 -5
  31. package/dist/runtime/components/MenuBar.d.vue.ts +3 -0
  32. package/dist/runtime/components/MenuBar.vue +385 -0
  33. package/dist/runtime/components/MenuBar.vue.d.ts +3 -0
  34. package/dist/runtime/scss/editor.css +237 -283
  35. package/dist/runtime/scss/viewer.css +184 -210
  36. package/dist/runtime/store/editor.d.ts +2 -0
  37. package/dist/runtime/store/editor.js +59 -0
  38. package/dist/runtime/type.d.mts +101 -124
  39. package/dist/runtime/utils/data/block.d.ts +20 -0
  40. package/dist/runtime/utils/data/block.js +663 -0
  41. package/dist/runtime/utils/data/cursor.d.ts +9 -0
  42. package/dist/runtime/utils/data/cursor.js +137 -0
  43. package/dist/runtime/utils/data/index.d.ts +5 -0
  44. package/dist/runtime/utils/data/index.js +17 -0
  45. package/dist/runtime/utils/data/node.d.ts +9 -0
  46. package/dist/runtime/utils/data/node.js +101 -0
  47. package/dist/runtime/utils/event/cursor.d.ts +3 -6
  48. package/dist/runtime/utils/event/cursor.js +52 -105
  49. package/dist/runtime/utils/event/index.d.ts +2 -6
  50. package/dist/runtime/utils/event/index.js +48 -6
  51. package/dist/runtime/utils/event/keyboard.d.ts +22 -7
  52. package/dist/runtime/utils/event/keyboard.js +910 -1406
  53. package/dist/runtime/utils/layout/body.d.ts +3 -4
  54. package/dist/runtime/utils/layout/body.js +83 -51
  55. package/dist/runtime/utils/layout/icon.d.ts +1 -2
  56. package/dist/runtime/utils/layout/icon.js +64 -67
  57. package/dist/runtime/utils/layout/index.d.ts +0 -3
  58. package/dist/runtime/utils/layout/index.js +0 -3
  59. package/dist/runtime/utils/node/element.d.ts +4 -6
  60. package/dist/runtime/utils/node/element.js +58 -71
  61. package/dist/runtime/utils/node/index.d.ts +1 -1
  62. package/dist/runtime/utils/node/index.js +1 -1
  63. package/dist/runtime/utils/node/style.d.ts +5 -0
  64. package/dist/runtime/utils/node/style.js +702 -0
  65. package/package.json +32 -18
  66. package/dist/runtime/utils/event/block.d.ts +0 -7
  67. package/dist/runtime/utils/event/block.js +0 -110
  68. package/dist/runtime/utils/event/data.d.ts +0 -8
  69. package/dist/runtime/utils/event/data.js +0 -379
  70. package/dist/runtime/utils/event/mouse.d.ts +0 -11
  71. package/dist/runtime/utils/event/mouse.js +0 -85
  72. package/dist/runtime/utils/event/scroll.d.ts +0 -3
  73. package/dist/runtime/utils/event/scroll.js +0 -29
  74. package/dist/runtime/utils/event/touch.d.ts +0 -5
  75. package/dist/runtime/utils/event/touch.js +0 -10
  76. package/dist/runtime/utils/event/window.d.ts +0 -5
  77. package/dist/runtime/utils/event/window.js +0 -47
  78. package/dist/runtime/utils/layout/block.d.ts +0 -7
  79. package/dist/runtime/utils/layout/block.js +0 -123
  80. package/dist/runtime/utils/layout/controlbar.d.ts +0 -3
  81. package/dist/runtime/utils/layout/controlbar.js +0 -99
  82. package/dist/runtime/utils/layout/menuBar.d.ts +0 -3
  83. package/dist/runtime/utils/layout/menuBar.js +0 -408
  84. package/dist/runtime/utils/node/block.d.ts +0 -19
  85. package/dist/runtime/utils/node/block.js +0 -256
  86. package/dist/runtime/utils/style/anchor.d.ts +0 -5
  87. package/dist/runtime/utils/style/anchor.js +0 -245
  88. package/dist/runtime/utils/style/decoration.d.ts +0 -4
  89. package/dist/runtime/utils/style/decoration.js +0 -378
  90. package/dist/runtime/utils/style/index.d.ts +0 -2
  91. package/dist/runtime/utils/style/index.js +0 -2
@@ -1,211 +1,94 @@
1
1
  <template>
2
- <component :is="mainStrucutre"></component>
2
+ <div
3
+ class="dragon-editor"
4
+ :class="{ '--has-menu': props.useMenuBar === true, '--mobile': editorStore.option.isMobile === true, '--hidden-parent': editorStore.status.isParentOverflowHidden === true }"
5
+ :data-theme="props.theme"
6
+ ref="$editor"
7
+ >
8
+ <MenuBar />
9
+ <component
10
+ :is="_getBody(props.modelValue, true)"
11
+ ref="$body"
12
+ />
13
+ </div>
3
14
  </template>
4
15
 
5
16
  <script setup>
6
- import { ref, h, onMounted, onBeforeUnmount, watch } from "vue";
7
- import { _getBodyVNodeStructure, _getMenuBarVNodeStructure, _getControlbarVNodeStructure, _updateBodyStructure } from "../utils/layout";
8
- import { _eidtorMountEvent, _eidtorUnmountEvent, _editorMousemoveEvent, _editorMouseupEvent, _editorMouseleaveEvent, _editorTouchmoveEvent, _editorTouchendEvent, _checkOthersideClick, _parentWrapScollEvent, _editorContextMenuEvent, _windowResizeEvent, _checkDataEmpty } from "../utils/event";
9
- import { _addBlock } from "../utils/node";
10
- import { _setDecoration, _setTextAlign } from "../utils/style";
11
- import { codeToHtml } from "shiki";
17
+ import MenuBar from "./MenuBar.vue";
18
+ import { _getBody } from "../utils/layout";
19
+ import { useEditorStore } from "../store/editor";
20
+ import { ref, onMounted, watch, onBeforeUnmount } from "vue";
21
+ import { onClickOutside } from "@vueuse/core";
22
+ import { _createTextBlockData, _arrangementContentData, _addBlock, _addImageBlock, _checkDataIsEmpty } from "../utils/data";
23
+ import { _editorMountedEvent, _eidtorUnmountEvent } from "../utils/event";
24
+ import { _setDecoration, _setAlign } from "../utils/node";
25
+ const editorStore = useEditorStore();
12
26
  const props = defineProps({
13
27
  modelValue: { type: null, required: true },
14
28
  useMenuBar: { type: Boolean, required: false, default: true },
15
- imageHostURL: { type: String, required: false, default: "" },
16
- screenChangePoint: { type: Number, required: false, default: 1200 }
29
+ mediaHostURL: { type: String, required: false, default: "" },
30
+ isMobile: { type: Boolean, required: false, default: false },
31
+ theme: { type: String, required: false, default: "white" },
32
+ codeBlockSpaces: { type: Number, required: false, default: 4 },
33
+ acceptImageFormat: { type: String, required: false, default: ".jpg,.jpeg,.png,.webp,.gif" },
34
+ anchorTagTarget: { type: String, required: false, default: "_blank" }
17
35
  });
18
36
  const emit = defineEmits(["update:modelValue", "uploadImageEvent"]);
19
- const editorStore = ref({
20
- cursorData: null,
21
- message: {
22
- linkTextNoStyle: "Link text can't set any style."
23
- },
24
- controlBar: {
25
- active: false,
26
- x: 0,
27
- y: 0,
28
- $element: null
29
- },
30
- useMenuBar: props.useMenuBar,
31
- imageHostURL: props.imageHostURL,
32
- firstData: props.modelValue,
33
- screenChangePoint: props.screenChangePoint,
34
- menuBarTop: 0,
35
- activeStatus: {
36
- addBlockMenu: false,
37
- anchorInputArea: false,
38
- imageResizeEvent: false
39
- },
40
- eventStatus: {
41
- imageResizeEventStartX: 0,
42
- imageResizeEventType: "left",
43
- imageResizeEventEndX: 0,
44
- imageResizeCurrentWidth: 0
45
- },
46
- controlStatus: {
47
- isMobile: false,
48
- hasTransformParent: false,
49
- hasHiddenStyleParent: false,
50
- currentBlockType: "text",
51
- codeBlockTheme: "github-light",
52
- codeBlockLang: "text",
53
- listBlockStyle: "disc",
54
- anchorTabType: "url",
55
- anchorHeadingList: [],
56
- anchorHref: "",
57
- anchorValidation: false,
58
- previousCorsorData: null,
59
- $anchorInput: null,
60
- $currentBlock: null,
61
- $transformElement: null
62
- },
63
- codeBlockTheme: [
64
- {
65
- text: "GitHub Ligth",
66
- code: "github-light"
67
- },
68
- {
69
- text: "GitHub Dark Dimmed",
70
- code: "github-dark-dimmed"
71
- }
72
- ],
73
- listUlType: [
74
- {
75
- text: "Disc",
76
- code: "disc"
77
- },
78
- {
79
- text: "Square",
80
- code: "square"
81
- }
82
- ],
83
- listOlType: [
84
- {
85
- text: "Decimal",
86
- code: "decimal"
87
- },
88
- {
89
- text: "Lower-Alpha",
90
- code: "lower-alpha"
91
- },
92
- {
93
- text: "Upper-Alpha",
94
- code: "upper-alpha"
95
- },
96
- {
97
- text: "Lower-Roman",
98
- code: "lower-roman"
99
- },
100
- {
101
- text: "Upper-Roman",
102
- code: "upper-roman"
103
- }
104
- ],
105
- $editor: null,
106
- $body: null,
107
- $controlBar: null,
108
- $parentWrap: null,
109
- codeToHtml,
110
- emit,
111
- windowClickEvent: function(event) {
112
- _checkOthersideClick(event, editorStore);
113
- },
114
- windowResizeEvent: function(event) {
115
- _windowResizeEvent(event, editorStore);
116
- },
117
- windowMouseUpEvent: function(event) {
118
- _editorMouseupEvent(event, editorStore);
119
- },
120
- parentWrapScollEvent: function(event) {
121
- _parentWrapScollEvent(event, editorStore);
122
- }
123
- });
124
- function mainStrucutre() {
125
- const childList = [];
126
- if (editorStore.value.useMenuBar === true) {
127
- childList.push(_getMenuBarVNodeStructure(editorStore));
128
- }
129
- childList.push(_getBodyVNodeStructure(editorStore));
130
- if (editorStore.value.controlBar.active === true) {
131
- childList.push(_getControlbarVNodeStructure(editorStore));
132
- }
133
- return h(
134
- "div",
135
- {
136
- class: ["dragon-editor", "js-dragon-editor", { "--has-menu": editorStore.value.useMenuBar === true }, { "--mobile": editorStore.value.controlStatus.isMobile === true }, { "--hidden-parent": editorStore.value.controlStatus.hasHiddenStyleParent === true }],
137
- onMousemove: (event) => _editorMousemoveEvent(event, editorStore),
138
- onMouseup: (event) => _editorMouseupEvent(event, editorStore),
139
- onMouseleave: (event) => _editorMouseleaveEvent(event, editorStore),
140
- onTouchmove: (event) => _editorTouchmoveEvent(event, editorStore),
141
- onTouchend: (event) => _editorTouchendEvent(event, editorStore),
142
- onContextmenu: (event) => _editorContextMenuEvent(event, editorStore)
143
- },
144
- childList
145
- );
146
- }
147
- function addBlock(data) {
148
- let type = "text";
149
- switch (data.type) {
150
- case "heading":
151
- if (data.level === 1) {
152
- type = "heading1";
153
- } else if (data.level === 2) {
154
- type = "heading2";
155
- } else {
156
- type = "heading3";
157
- }
158
- break;
159
- case "list":
160
- if (data.element === "ol") {
161
- type = "ol";
162
- } else {
163
- type = "ul";
164
- }
165
- break;
37
+ const $body = ref(null);
38
+ const $editor = ref(null);
39
+ editorStore.option.isMobile = props.isMobile;
40
+ editorStore.option.mediaHostURL = props.mediaHostURL;
41
+ editorStore.option.codeBlockSpaces = props.codeBlockSpaces;
42
+ editorStore.option.acceptImageFormat = props.acceptImageFormat;
43
+ editorStore.option.anchorTagTarget = props.anchorTagTarget;
44
+ function updateEditorData(data) {
45
+ emit("update:modelValue", _arrangementContentData(data));
46
+ }
47
+ function ifEmptyUpdateData() {
48
+ if (props.modelValue.length === 0) {
49
+ emit("update:modelValue", [_createTextBlockData()]);
166
50
  }
167
- _addBlock(type, editorStore, data);
168
51
  }
169
- function setDecoration(style) {
170
- _setDecoration(`de-${style}`, editorStore);
52
+ function uploadImage(files) {
53
+ emit("uploadImageEvent", files);
171
54
  }
172
- function setAlign(align) {
173
- _setTextAlign(align, editorStore);
174
- }
175
- function changeEditorData(data) {
176
- if (editorStore.value.$body !== null) {
177
- editorStore.value.$body.innerHTML = "";
178
- _updateBodyStructure(data, editorStore);
55
+ onClickOutside($editor, () => {
56
+ editorStore.selectedBlockIndex = -1;
57
+ editorStore.selectedBlockId = "";
58
+ });
59
+ defineExpose({
60
+ addBlock: _addBlock,
61
+ addImageBlock: _addImageBlock,
62
+ updateLayout: _editorMountedEvent,
63
+ checkDataIsEmpty: _checkDataIsEmpty,
64
+ setDecoration: (type) => {
65
+ _setDecoration(`de-${type}`);
66
+ },
67
+ setAlign: _setAlign
68
+ });
69
+ watch(
70
+ () => props.modelValue,
71
+ () => {
72
+ editorStore.data = props.modelValue;
73
+ ifEmptyUpdateData();
179
74
  }
180
- }
181
- function updateLayout() {
182
- _eidtorUnmountEvent(editorStore);
183
- setTimeout(() => {
184
- _eidtorMountEvent(editorStore);
185
- }, 500);
186
- }
187
- function checkDataEmpty(data) {
188
- let suitable = false;
189
- if (data !== void 0) {
190
- suitable = _checkDataEmpty(data);
191
- } else {
192
- suitable = _checkDataEmpty(props.modelValue);
75
+ );
76
+ watch(
77
+ () => props.isMobile,
78
+ () => {
79
+ editorStore.option.isMobile = props.isMobile;
193
80
  }
194
- return suitable;
195
- }
81
+ );
196
82
  onMounted(() => {
197
- _eidtorMountEvent(editorStore);
83
+ ifEmptyUpdateData();
84
+ editorStore.element.body = $body.value;
85
+ editorStore.element.editor = $editor.value;
86
+ editorStore.fn.updateEditorData = updateEditorData;
87
+ editorStore.fn.uploadImage = uploadImage;
88
+ _editorMountedEvent();
198
89
  });
199
90
  onBeforeUnmount(() => {
200
- _eidtorUnmountEvent(editorStore);
201
- });
202
- defineExpose({
203
- addBlock,
204
- setDecoration,
205
- setAlign,
206
- changeEditorData,
207
- updateLayout,
208
- checkDataEmpty
91
+ _eidtorUnmountEvent();
209
92
  });
210
93
  </script>
211
94
 
@@ -213,7 +96,74 @@ defineExpose({
213
96
  @charset "UTF-8";
214
97
  .dragon-editor,
215
98
  .dragon-editor-viewer {
216
- --radius-default: 4px;
99
+ --editor-radius-default: 4px;
100
+ }
101
+ .dragon-editor[data-theme=dark],
102
+ .dragon-editor-viewer[data-theme=dark] {
103
+ --editor-text: #dfdfe1;
104
+ --editor-text-disabled: #768390;
105
+ --editor-background: #09090b;
106
+ --editor-border: #555;
107
+ --editor-divider: #333;
108
+ --editor-decoration-code-color:#fff;
109
+ --editor-decoration-code-bg:#555;
110
+ --editor-code-color: #adbac7;
111
+ --editor-code-bg: #22272e;
112
+ --editor-code-file-bg: #494e54;
113
+ --editor-code-placeholder: #96a0aa;
114
+ --editor-code-number: #555;
115
+ --editor-code-number-bg: #e5e5e5;
116
+ --editor-code-keyword: #f47067;
117
+ --editor-code-entity: #dcbdfb;
118
+ --editor-code-constant: #6cb6ff;
119
+ --editor-code-string: #96d0ff;
120
+ --editor-code-variable: #f69d50;
121
+ --editor-code-comment: #768390;
122
+ --editor-code-entity-tag: #8ddb8c;
123
+ --editor-code-storage-modifier-import: #adbac7;
124
+ --editor-code-markup-heading: #316dca;
125
+ --editor-code-markup-list: #eac55f;
126
+ --editor-code-markup-italic: #adbac7;
127
+ --editor-code-markup-bold: #adbac7;
128
+ --editor-code-markup-inserted: #b4f1b4;
129
+ --editor-code-markup-inserted-bg: #1b4721;
130
+ --editor-code-markup-deleted: #ffd8d3;
131
+ --editor-code-markup-deleted-bg: #78191b;
132
+ }
133
+ .dragon-editor[data-theme=white],
134
+ .dragon-editor-viewer[data-theme=white] {
135
+ --editor-text: #333;
136
+ --editor-text-disabled: #ccc;
137
+ --editor-background: #f9f9f9;
138
+ --editor-border: #ccc;
139
+ --editor-divider: #e5e5e5;
140
+ --editor-decoration-code-color:#ff0000;
141
+ --editor-decoration-code-bg:#f1f1f1;
142
+ --editor-code-color: #24292e;
143
+ --editor-code-bg: #f1f1f1;
144
+ --editor-code-file-bg: #ccc;
145
+ --editor-code-placeholder: #8b8d8f;
146
+ --editor-code-number: #e5e5e5;
147
+ --editor-code-number-bg: #8c8c8c;
148
+ --editor-code-keyword: #d73a49;
149
+ --editor-code-entity: #6f42c1;
150
+ --editor-code-constant: #005cc5;
151
+ --editor-code-string: #032f62;
152
+ --editor-code-variable: #e36209;
153
+ --editor-code-comment: #6a737d;
154
+ --editor-code-entity-tag: #22863a;
155
+ --editor-code-storage-modifier-import: #24292e;
156
+ --editor-code-markup-heading: #005cc5;
157
+ --editor-code-markup-list: #735c0f;
158
+ --editor-code-markup-italic: #24292e;
159
+ --editor-code-markup-bold: #24292e;
160
+ --editor-code-markup-inserted: #22863a;
161
+ --editor-code-markup-inserted-bg: #f0fff4;
162
+ --editor-code-markup-deleted: #b31d28;
163
+ --editor-code-markup-deleted-bg: #ffeef0;
164
+ }
165
+ .dragon-editor,
166
+ .dragon-editor-viewer {
217
167
  /**
218
168
  * Reset style start
219
169
  */
@@ -346,44 +296,24 @@ defineExpose({
346
296
  .dragon-editor-viewer .de-block[data-depth="5"] {
347
297
  padding-left: 150px;
348
298
  }
349
- .dragon-editor .de-block.de-list-block[data-depth="1"],
350
- .dragon-editor-viewer .de-block.de-list-block[data-depth="1"] {
351
- padding-left: 54px;
352
- }
353
- .dragon-editor .de-block.de-list-block[data-depth="2"],
354
- .dragon-editor-viewer .de-block.de-list-block[data-depth="2"] {
355
- padding-left: 84px;
356
- }
357
- .dragon-editor .de-block.de-list-block[data-depth="3"],
358
- .dragon-editor-viewer .de-block.de-list-block[data-depth="3"] {
359
- padding-left: 114px;
360
- }
361
- .dragon-editor .de-block.de-list-block[data-depth="4"],
362
- .dragon-editor-viewer .de-block.de-list-block[data-depth="4"] {
363
- padding-left: 144px;
364
- }
365
- .dragon-editor .de-block.de-list-block[data-depth="5"],
366
- .dragon-editor-viewer .de-block.de-list-block[data-depth="5"] {
367
- padding-left: 174px;
368
- }
369
299
 
370
300
  /**
371
301
  * 노드 스타일
372
302
  */
373
303
  .dragon-editor {
374
304
  position: relative;
375
- border: 1px solid #ccc;
376
- border-radius: var(--radius-default);
305
+ background: var(--editor-background);
306
+ color: var(--editor-text);
307
+ border: 1px solid var(--editor-border);
308
+ border-radius: var(--editor-radius-default);
377
309
  }
378
310
  .dragon-editor.--has-menu {
379
311
  padding-top: 35px;
380
312
  }
381
- .dragon-editor.--mobile .de-menu-bar .de-menu-wrap {
382
- overflow-x: auto;
383
- }
384
313
  .dragon-editor.--mobile .de-menu-bar .de-link-exit-area {
385
- left: auto;
314
+ left: 50%;
386
315
  right: 0;
316
+ transform: translateX(-50%);
387
317
  }
388
318
  .dragon-editor.--hidden-parent {
389
319
  height: 100%;
@@ -404,9 +334,9 @@ defineExpose({
404
334
  left: 0;
405
335
  right: 0;
406
336
  height: 34px;
407
- background: #fff;
408
- border-bottom: 1px solid #ccc;
409
- border-radius: var(--radius-default) var(--radius-default) 0 0;
337
+ background: var(--editor-background);
338
+ border-bottom: 1px solid var(--editor-border);
339
+ border-radius: var(--editor-radius-default) var(--editor-radius-default) 0 0;
410
340
  z-index: 10;
411
341
  }
412
342
  .dragon-editor .de-menu-bar .de-menu-wrap {
@@ -416,7 +346,7 @@ defineExpose({
416
346
  .dragon-editor .de-menu-bar .de-col {
417
347
  display: flex;
418
348
  position: relative;
419
- border-right: 1px solid #ccc;
349
+ border-right: 1px solid var(--editor-border);
420
350
  }
421
351
  .dragon-editor .de-menu-bar .de-col:last-child {
422
352
  border-right: 0;
@@ -429,8 +359,8 @@ defineExpose({
429
359
  height: 34px;
430
360
  cursor: pointer;
431
361
  }
432
- .dragon-editor .de-menu-bar .de-menu.--disabled .de-path {
433
- fill: #ccc;
362
+ .dragon-editor .de-menu-bar .de-menu[disabled] .de-path {
363
+ fill: var(--editor-text-disabled);
434
364
  }
435
365
  .dragon-editor .de-menu-bar .de-menu .de-icon {
436
366
  width: 16px;
@@ -440,10 +370,7 @@ defineExpose({
440
370
  border-right: 0;
441
371
  }
442
372
  .dragon-editor .de-menu-bar .de-menu .de-path {
443
- fill: #333;
444
- }
445
- .dragon-editor .de-menu-bar .de-menu .de-path.--red {
446
- fill: #dd0000;
373
+ fill: var(--editor-text);
447
374
  }
448
375
  .dragon-editor .de-menu-bar .de-block-menu-area {
449
376
  display: none;
@@ -455,7 +382,7 @@ defineExpose({
455
382
  border-width: 0 1px 1px 0;
456
383
  border-style: solid;
457
384
  border-color: #ccc;
458
- border-bottom-right-radius: var(--radius-default);
385
+ border-bottom-right-radius: var(--editor-radius-default);
459
386
  z-index: 1000;
460
387
  }
461
388
  .dragon-editor .de-menu-bar .de-block-menu-area.--active {
@@ -477,10 +404,10 @@ defineExpose({
477
404
  top: calc(100% + 1px);
478
405
  left: 205px;
479
406
  width: 200px;
480
- background: #fff;
481
- border: 1px solid #ccc;
407
+ background: var(--editor-background);
408
+ border: 1px solid var(--editor-border);
482
409
  border-top: 0;
483
- border-radius: 0 0 var(--radius-default) var(--radius-default);
410
+ border-radius: 0 0 var(--editor-radius-default) var(--editor-radius-default);
484
411
  z-index: 1000;
485
412
  }
486
413
  .dragon-editor .de-menu-bar .de-link-exit-area.--active {
@@ -488,15 +415,15 @@ defineExpose({
488
415
  }
489
416
  .dragon-editor .de-menu-bar .de-link-exit-area .de-btn-area {
490
417
  display: flex;
491
- border-bottom: 1px solid #ccc;
418
+ border-bottom: 1px solid var(--editor-border);
492
419
  }
493
420
  .dragon-editor .de-menu-bar .de-link-exit-area .de-btn-area .de-btn {
494
421
  flex: 1;
495
422
  height: 24px;
496
- color: #999;
423
+ color: var(--editor-text-disabled);
497
424
  }
498
425
  .dragon-editor .de-menu-bar .de-link-exit-area .de-btn-area .de-btn.--active {
499
- color: #333;
426
+ color: var(--editor-text);
500
427
  }
501
428
  .dragon-editor .de-menu-bar .de-link-exit-area .de-link-text-area {
502
429
  display: flex;
@@ -508,10 +435,12 @@ defineExpose({
508
435
  min-width: 0;
509
436
  height: 20px;
510
437
  padding: 0 8px;
511
- border: 1px solid #ccc;
438
+ background: var(--editor-background);
439
+ color: var(--editor-text);
440
+ border: 1px solid var(--editor-border);
512
441
  box-sizing: border-box;
513
442
  }
514
- .dragon-editor .de-menu-bar .de-link-exit-area .de-link-text-area .de-input.--red {
443
+ .dragon-editor .de-menu-bar .de-link-exit-area .de-link-text-area .de-input.--error {
515
444
  border-color: red;
516
445
  }
517
446
  .dragon-editor .de-menu-bar .de-link-exit-area .de-link-text-area .de-btn {
@@ -529,37 +458,10 @@ defineExpose({
529
458
  .dragon-editor .de-menu-bar .de-link-exit-area .de-link-heading-area .de-btn {
530
459
  padding: 2px 4px;
531
460
  text-align: left;
532
- border-radius: var(--radius-default);
461
+ border-radius: var(--editor-radius-default);
533
462
  }
534
463
  .dragon-editor .de-menu-bar .de-link-exit-area .de-link-heading-area .de-btn:hover {
535
- background: #f1f1f1;
536
- }
537
- .dragon-editor .de-controlbar {
538
- display: flex;
539
- position: fixed;
540
- height: 34px;
541
- background: #fff;
542
- border: 1px solid #ccc;
543
- border-radius: var(--radius-default);
544
- transform: translateX(-50%);
545
- z-index: 20;
546
- }
547
- .dragon-editor .de-controlbar .de-col {
548
- display: flex;
549
- align-items: center;
550
- column-gap: 6px;
551
- padding: 0 10px;
552
- border-right: 1px solid #ccc;
553
- }
554
- .dragon-editor .de-controlbar .de-col:last-child {
555
- border-right: 0;
556
- }
557
- .dragon-editor .de-controlbar .de-col .de-selector {
558
- height: 100%;
559
- border: 0;
560
- }
561
- .dragon-editor .de-controlbar .de-col .de-name {
562
- width: 70px;
464
+ background: var(--editor-decoration-code-bg);
563
465
  }
564
466
  .dragon-editor .de-block {
565
467
  width: 100%;
@@ -604,39 +506,59 @@ defineExpose({
604
506
  row-gap: 4px;
605
507
  padding-left: 24px;
606
508
  }
607
- .dragon-editor .de-list-block[data-style=disc] {
509
+ .dragon-editor .de-list-block[data-type=unordered] {
608
510
  list-style: disc;
609
511
  }
610
- .dragon-editor .de-list-block[data-style=square] {
512
+ .dragon-editor .de-list-block[data-type=unordered] .de-list-sub {
513
+ list-style: circle;
514
+ }
515
+ .dragon-editor .de-list-block[data-type=unordered] .de-list-sub .de-list-sub {
611
516
  list-style: square;
612
517
  }
613
- .dragon-editor .de-list-block[data-style=decimal] {
518
+ .dragon-editor .de-list-block[data-type=unordered] .de-list-sub .de-list-sub .de-list-sub {
519
+ list-style: disclosure-closed;
520
+ }
521
+ .dragon-editor .de-list-block[data-type=unordered] .de-list-sub .de-list-sub .de-list-sub .de-list-sub {
522
+ list-style: "- ";
523
+ }
524
+ .dragon-editor .de-list-block[data-type=unordered] .de-list-sub .de-list-sub .de-list-sub .de-list-sub .de-list-sub {
525
+ list-style: "* ";
526
+ }
527
+ .dragon-editor .de-list-block[data-type=ordered] {
614
528
  list-style: decimal;
615
529
  }
616
- .dragon-editor .de-list-block[data-style=lower-alpha] {
530
+ .dragon-editor .de-list-block[data-type=ordered] .de-list-sub {
617
531
  list-style: lower-alpha;
618
532
  }
619
- .dragon-editor .de-list-block[data-style=upper-alpha] {
620
- list-style: upper-alpha;
621
- }
622
- .dragon-editor .de-list-block[data-style=lower-roman] {
533
+ .dragon-editor .de-list-block[data-type=ordered] .de-list-sub .de-list-sub {
623
534
  list-style: lower-roman;
624
535
  }
625
- .dragon-editor .de-list-block[data-style=upper-roman] {
536
+ .dragon-editor .de-list-block[data-type=ordered] .de-list-sub .de-list-sub .de-list-sub {
537
+ list-style: upper-alpha;
538
+ }
539
+ .dragon-editor .de-list-block[data-type=ordered] .de-list-sub .de-list-sub .de-list-sub .de-list-sub {
626
540
  list-style: upper-roman;
627
541
  }
542
+ .dragon-editor .de-list-block[data-type=ordered] .de-list-sub .de-list-sub .de-list-sub .de-list-sub .de-list-sub {
543
+ list-style: decimal;
544
+ }
628
545
  .dragon-editor .de-list-block .de-item {
546
+ list-style: inherit;
547
+ }
548
+ .dragon-editor .de-list-block .de-item-text {
629
549
  min-height: 1.6em;
630
550
  word-break: break-all;
631
551
  outline: 0;
632
- list-style: inherit;
633
552
  }
634
- .dragon-editor .de-list-block .de-item:empty:hover::before, .dragon-editor .de-list-block .de-item:empty:focus::before {
553
+ .dragon-editor .de-list-block .de-item-text:empty:hover::before, .dragon-editor .de-list-block .de-item-text:empty:focus::before {
635
554
  display: inline;
636
555
  content: "Type a list item";
637
556
  color: #ccc;
638
557
  cursor: text;
639
558
  }
559
+ .dragon-editor .de-list-block .de-list-sub {
560
+ padding-left: 30px;
561
+ }
640
562
  .dragon-editor .de-image-block {
641
563
  display: flex;
642
564
  align-items: center;
@@ -890,7 +812,7 @@ defineExpose({
890
812
  .dragon-editor .de-image-block .de-image-area .de-img {
891
813
  width: 100%;
892
814
  height: auto;
893
- border-radius: var(--radius-default);
815
+ border-radius: var(--editor-radius-default);
894
816
  }
895
817
  .dragon-editor .de-image-block .de-image-area .de-btn {
896
818
  position: absolute;
@@ -899,7 +821,7 @@ defineExpose({
899
821
  height: 15%;
900
822
  background: #f1f1f1;
901
823
  border: 1px solid #ccc;
902
- border-radius: var(--radius-default);
824
+ border-radius: var(--editor-radius-default);
903
825
  transform: translate(-50%, -50%);
904
826
  cursor: col-resize;
905
827
  user-select: none;
@@ -930,261 +852,176 @@ defineExpose({
930
852
  flex-wrap: wrap;
931
853
  margin: 2px 0;
932
854
  padding: 0;
933
- border-radius: var(--radius-default);
934
- overflow: hidden;
855
+ color: var(--editor-code-color);
856
+ background: var(--editor-code-bg);
857
+ border-radius: var(--editor-radius-default);
935
858
  }
936
859
  .dragon-editor .de-code-block .de-filename {
937
860
  flex: 1;
938
861
  max-width: calc(100% - 120px);
939
862
  padding: 5px 10px;
863
+ color: var(--editor-code-color);
864
+ background: var(--editor-code-file-bg);
940
865
  box-sizing: border-box;
941
866
  outline: 0;
942
867
  }
943
868
  .dragon-editor .de-code-block .de-filename:empty:hover::before, .dragon-editor .de-code-block .de-filename:empty:focus::before {
944
869
  display: inline;
945
870
  content: "Type a Filename";
871
+ color: var(--editor-code-placeholder);
946
872
  cursor: text;
947
873
  }
948
874
  .dragon-editor .de-code-block .de-language {
949
875
  width: 120px;
950
876
  text-align: right;
951
877
  padding: 5px 10px;
878
+ color: var(--editor-code-color);
879
+ background: var(--editor-code-file-bg);
952
880
  box-sizing: border-box;
881
+ position: relative;
953
882
  }
954
- .dragon-editor .de-code-block .de-pre {
883
+ .dragon-editor .de-code-block .de-language:empty:hover::before, .dragon-editor .de-code-block .de-language:empty:focus::before {
884
+ color: var(--editor-code-placeholder);
885
+ }
886
+ .dragon-editor .de-code-block .de-language .de-btn-language {
887
+ width: 100%;
888
+ text-align: right;
889
+ }
890
+ .dragon-editor .de-code-block .de-language .de-list-language {
891
+ display: none;
892
+ flex-direction: column;
893
+ row-gap: 6px;
894
+ position: absolute;
895
+ top: 100%;
896
+ right: 0;
897
+ left: 0;
898
+ height: 200px;
899
+ padding: 2px 4px;
900
+ background: var(--editor-code-file-bg);
901
+ overflow-y: scroll;
902
+ }
903
+ .dragon-editor .de-code-block .de-language .de-list-language.--active {
904
+ display: flex;
905
+ }
906
+ .dragon-editor .de-code-block .de-pre-wrap {
907
+ display: flex;
955
908
  width: 100%;
909
+ overflow-x: auto;
910
+ }
911
+ .dragon-editor .de-code-block .de-pre-wrap .de-number {
912
+ padding: 10px 4px;
913
+ background: var(--editor-code-number);
914
+ color: var(--editor-code-number-bg);
915
+ }
916
+ .dragon-editor .de-code-block .de-pre-wrap .de-number .de-number-item {
917
+ min-height: 1.6em;
918
+ font-family: Inconsolata, monospace, sans-serif;
919
+ text-align: right;
920
+ }
921
+ .dragon-editor .de-code-block .de-pre {
922
+ flex: 1;
956
923
  padding: 10px;
957
924
  box-sizing: border-box;
958
- white-space: pre-wrap;
959
925
  }
960
926
  .dragon-editor .de-code-block .de-pre .de-code-content {
961
927
  display: block;
962
928
  min-height: 1.6em;
963
- width: 100%;
929
+ min-width: 100%;
964
930
  font-family: Inconsolata, monospace, sans-serif;
965
- word-break: break-word;
966
931
  outline: 0;
967
932
  }
968
933
  .dragon-editor .de-code-block .de-pre .de-code-content:empty:hover::before, .dragon-editor .de-code-block .de-pre .de-code-content:empty:focus::before {
969
934
  display: inline;
970
935
  content: "Type a Code";
936
+ color: var(--editor-code-placeholder);
971
937
  cursor: text;
972
938
  }
973
- .dragon-editor .de-code-block[data-theme=github-light] {
974
- color: #24292e;
975
- background: #f1f1f1;
976
- }
977
- .dragon-editor .de-code-block[data-theme=github-light] .de-filename {
978
- color: #24292e;
979
- background: #ccc;
980
- }
981
- .dragon-editor .de-code-block[data-theme=github-light] .de-filename:empty:hover::before, .dragon-editor .de-code-block[data-theme=github-light] .de-filename:empty:focus::before {
982
- color: #8b8d8f;
983
- }
984
- .dragon-editor .de-code-block[data-theme=github-light] .de-language {
985
- color: #24292e;
986
- background: #ccc;
987
- }
988
- .dragon-editor .de-code-block[data-theme=github-light] .de-language:empty:hover::before, .dragon-editor .de-code-block[data-theme=github-light] .de-language:empty:focus::before {
989
- color: #8b8d8f;
990
- }
991
- .dragon-editor .de-code-block[data-theme=github-light] .de-code-content:empty:hover::before, .dragon-editor .de-code-block[data-theme=github-light] .de-code-content:empty:focus::before {
992
- color: #8b8d8f;
993
- }
994
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-doctag,
995
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-keyword,
996
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-meta .hljs-keyword,
997
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-template-tag,
998
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-template-variable,
999
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-type,
1000
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-variable.language_ {
939
+ .dragon-editor .de-code-block .hljs-doctag,
940
+ .dragon-editor .de-code-block .hljs-keyword,
941
+ .dragon-editor .de-code-block .hljs-meta .hljs-keyword,
942
+ .dragon-editor .de-code-block .hljs-template-tag,
943
+ .dragon-editor .de-code-block .hljs-template-variable,
944
+ .dragon-editor .de-code-block .hljs-type,
945
+ .dragon-editor .de-code-block .hljs-variable.language_ {
1001
946
  /* prettylights-syntax-keyword */
1002
- color: #d73a49;
947
+ color: var(--editor-code-keyword);
1003
948
  }
1004
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-title,
1005
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-title.class_,
1006
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-title.class_.inherited__,
1007
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-title.function_ {
949
+ .dragon-editor .de-code-block .hljs-title,
950
+ .dragon-editor .de-code-block .hljs-title.class_,
951
+ .dragon-editor .de-code-block .hljs-title.class_.inherited__,
952
+ .dragon-editor .de-code-block .hljs-title.function_ {
1008
953
  /* prettylights-syntax-entity */
1009
- color: #6f42c1;
1010
- }
1011
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-attr,
1012
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-attribute,
1013
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-literal,
1014
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-meta,
1015
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-number,
1016
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-operator,
1017
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-variable,
1018
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-selector-attr,
1019
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-selector-class,
1020
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-selector-id {
954
+ color: var(--editor-code-entity);
955
+ }
956
+ .dragon-editor .de-code-block .hljs-attr,
957
+ .dragon-editor .de-code-block .hljs-attribute,
958
+ .dragon-editor .de-code-block .hljs-literal,
959
+ .dragon-editor .de-code-block .hljs-meta,
960
+ .dragon-editor .de-code-block .hljs-number,
961
+ .dragon-editor .de-code-block .hljs-operator,
962
+ .dragon-editor .de-code-block .hljs-variable,
963
+ .dragon-editor .de-code-block .hljs-selector-attr,
964
+ .dragon-editor .de-code-block .hljs-selector-class,
965
+ .dragon-editor .de-code-block .hljs-selector-id {
1021
966
  /* prettylights-syntax-constant */
1022
- color: #005cc5;
967
+ color: var(--editor-code-constant);
1023
968
  }
1024
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-regexp,
1025
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-string,
1026
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-meta .hljs-string {
969
+ .dragon-editor .de-code-block .hljs-regexp,
970
+ .dragon-editor .de-code-block .hljs-string,
971
+ .dragon-editor .de-code-block .hljs-meta .hljs-string {
1027
972
  /* prettylights-syntax-string */
1028
- color: #032f62;
973
+ color: var(--editor-code-string);
1029
974
  }
1030
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-built_in,
1031
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-symbol {
975
+ .dragon-editor .de-code-block .hljs-built_in,
976
+ .dragon-editor .de-code-block .hljs-symbol {
1032
977
  /* prettylights-syntax-variable */
1033
- color: #e36209;
978
+ color: var(--editor-code-variable);
1034
979
  }
1035
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-comment,
1036
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-code,
1037
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-formula {
980
+ .dragon-editor .de-code-block .hljs-comment,
981
+ .dragon-editor .de-code-block .hljs-code,
982
+ .dragon-editor .de-code-block .hljs-formula {
1038
983
  /* prettylights-syntax-comment */
1039
- color: #6a737d;
984
+ color: var(--editor-code-comment);
1040
985
  }
1041
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-name,
1042
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-quote,
1043
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-selector-tag,
1044
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-selector-pseudo {
986
+ .dragon-editor .de-code-block .hljs-name,
987
+ .dragon-editor .de-code-block .hljs-quote,
988
+ .dragon-editor .de-code-block .hljs-selector-tag,
989
+ .dragon-editor .de-code-block .hljs-selector-pseudo {
1045
990
  /* prettylights-syntax-entity-tag */
1046
- color: #22863a;
991
+ color: var(--editor-code-entity-tag);
1047
992
  }
1048
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-subst {
993
+ .dragon-editor .de-code-block .hljs-subst {
1049
994
  /* prettylights-syntax-storage-modifier-import */
1050
- color: #24292e;
995
+ color: var(--editor-code-storage-modifier-import);
1051
996
  }
1052
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-section {
997
+ .dragon-editor .de-code-block .hljs-section {
1053
998
  /* prettylights-syntax-markup-heading */
1054
- color: #005cc5;
999
+ color: var(--editor-code-markup-heading);
1055
1000
  font-weight: bold;
1056
1001
  }
1057
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-bullet {
1002
+ .dragon-editor .de-code-block .hljs-bullet {
1058
1003
  /* prettylights-syntax-markup-list */
1059
- color: #735c0f;
1004
+ color: var(--editor-code-markup-list);
1060
1005
  }
1061
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-emphasis {
1006
+ .dragon-editor .de-code-block .hljs-emphasis {
1062
1007
  /* prettylights-syntax-markup-italic */
1063
- color: #24292e;
1008
+ color: var(--editor-code-markup-italic);
1064
1009
  font-style: italic;
1065
1010
  }
1066
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-strong {
1011
+ .dragon-editor .de-code-block .hljs-strong {
1067
1012
  /* prettylights-syntax-markup-bold */
1068
- color: #24292e;
1013
+ color: var(--editor-code-markup-bold);
1069
1014
  font-weight: bold;
1070
1015
  }
1071
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-addition {
1016
+ .dragon-editor .de-code-block .hljs-addition {
1072
1017
  /* prettylights-syntax-markup-inserted */
1073
- color: #22863a;
1074
- background-color: #f0fff4;
1018
+ color: var(--editor-code-markup-inserted);
1019
+ background-color: var(--editor-code-markup-inserted-bg);
1075
1020
  }
1076
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-deletion {
1021
+ .dragon-editor .de-code-block .hljs-deletion {
1077
1022
  /* prettylights-syntax-markup-deleted */
1078
- color: #b31d28;
1079
- background-color: #ffeef0;
1080
- }
1081
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] {
1082
- color: #adbac7;
1083
- background: #22272e;
1084
- }
1085
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .de-filename {
1086
- color: #adbac7;
1087
- background: #494e54;
1088
- }
1089
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .de-filename:empty:hover::before, .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .de-filename:empty:focus::before {
1090
- color: #96a0aa;
1091
- }
1092
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .de-language {
1093
- color: #adbac7;
1094
- background: #494e54;
1095
- }
1096
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .de-language:empty:hover::before, .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .de-language:empty:focus::before {
1097
- color: #96a0aa;
1098
- }
1099
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .de-code-content:empty:hover::before, .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .de-code-content:empty:focus::before {
1100
- color: #96a0aa;
1101
- }
1102
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-doctag,
1103
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-keyword,
1104
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-meta .hljs-keyword,
1105
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-template-tag,
1106
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-template-variable,
1107
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-type,
1108
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-variable.language_ {
1109
- /* prettylights-syntax-keyword */
1110
- color: #f47067;
1111
- }
1112
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-title,
1113
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-title.class_,
1114
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-title.class_.inherited__,
1115
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-title.function_ {
1116
- /* prettylights-syntax-entity */
1117
- color: #dcbdfb;
1118
- }
1119
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-attr,
1120
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-attribute,
1121
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-literal,
1122
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-meta,
1123
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-number,
1124
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-operator,
1125
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-variable,
1126
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-selector-attr,
1127
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-selector-class,
1128
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-selector-id {
1129
- /* prettylights-syntax-constant */
1130
- color: #6cb6ff;
1131
- }
1132
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-regexp,
1133
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-string,
1134
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-meta .hljs-string {
1135
- /* prettylights-syntax-string */
1136
- color: #96d0ff;
1137
- }
1138
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-built_in,
1139
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-symbol {
1140
- /* prettylights-syntax-variable */
1141
- color: #f69d50;
1142
- }
1143
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-comment,
1144
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-code,
1145
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-formula {
1146
- /* prettylights-syntax-comment */
1147
- color: #768390;
1148
- }
1149
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-name,
1150
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-quote,
1151
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-selector-tag,
1152
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-selector-pseudo {
1153
- /* prettylights-syntax-entity-tag */
1154
- color: #8ddb8c;
1155
- }
1156
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-subst {
1157
- /* prettylights-syntax-storage-modifier-import */
1158
- color: #adbac7;
1159
- }
1160
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-section {
1161
- /* prettylights-syntax-markup-heading */
1162
- color: #316dca;
1163
- font-weight: bold;
1164
- }
1165
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-bullet {
1166
- /* prettylights-syntax-markup-list */
1167
- color: #eac55f;
1168
- }
1169
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-emphasis {
1170
- /* prettylights-syntax-markup-italic */
1171
- color: #adbac7;
1172
- font-style: italic;
1173
- }
1174
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-strong {
1175
- /* prettylights-syntax-markup-bold */
1176
- color: #adbac7;
1177
- font-weight: bold;
1178
- }
1179
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-addition {
1180
- /* prettylights-syntax-markup-inserted */
1181
- color: #b4f1b4;
1182
- background-color: #1b4721;
1183
- }
1184
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-deletion {
1185
- /* prettylights-syntax-markup-deleted */
1186
- color: #ffd8d3;
1187
- background-color: #78191b;
1023
+ color: var(--editor-code-markup-deleted);
1024
+ background-color: var(--editor-code-markup-deleted-bg);
1188
1025
  }
1189
1026
  .dragon-editor .de-divider-block {
1190
1027
  display: flex;
@@ -1197,7 +1034,7 @@ defineExpose({
1197
1034
  width: 100%;
1198
1035
  height: 2px;
1199
1036
  padding: 0;
1200
- background: #e5e5e5;
1037
+ background: var(--editor-divider);
1201
1038
  border-radius: 2px;
1202
1039
  }
1203
1040
  .dragon-editor .de-bold {
@@ -1221,8 +1058,8 @@ defineExpose({
1221
1058
  .dragon-editor .de-code {
1222
1059
  display: inline-block;
1223
1060
  padding: 2px 4px;
1224
- background: #f1f1f1;
1225
- color: #ff0000;
1061
+ background: var(--editor-decoration-code-bg);
1062
+ color: var(--editor-decoration-code-color);
1226
1063
  border-radius: 5px;
1227
1064
  }
1228
1065
  .dragon-editor .de-align-left {