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,7 +1,74 @@
1
1
  @charset "UTF-8";
2
2
  .dragon-editor,
3
3
  .dragon-editor-viewer {
4
- --radius-default: 4px;
4
+ --editor-radius-default: 4px;
5
+ }
6
+ .dragon-editor[data-theme=dark],
7
+ .dragon-editor-viewer[data-theme=dark] {
8
+ --editor-text: #dfdfe1;
9
+ --editor-text-disabled: #768390;
10
+ --editor-background: #09090b;
11
+ --editor-border: #555;
12
+ --editor-divider: #333;
13
+ --editor-decoration-code-color:#fff;
14
+ --editor-decoration-code-bg:#555;
15
+ --editor-code-color: #adbac7;
16
+ --editor-code-bg: #22272e;
17
+ --editor-code-file-bg: #494e54;
18
+ --editor-code-placeholder: #96a0aa;
19
+ --editor-code-number: #555;
20
+ --editor-code-number-bg: #e5e5e5;
21
+ --editor-code-keyword: #f47067;
22
+ --editor-code-entity: #dcbdfb;
23
+ --editor-code-constant: #6cb6ff;
24
+ --editor-code-string: #96d0ff;
25
+ --editor-code-variable: #f69d50;
26
+ --editor-code-comment: #768390;
27
+ --editor-code-entity-tag: #8ddb8c;
28
+ --editor-code-storage-modifier-import: #adbac7;
29
+ --editor-code-markup-heading: #316dca;
30
+ --editor-code-markup-list: #eac55f;
31
+ --editor-code-markup-italic: #adbac7;
32
+ --editor-code-markup-bold: #adbac7;
33
+ --editor-code-markup-inserted: #b4f1b4;
34
+ --editor-code-markup-inserted-bg: #1b4721;
35
+ --editor-code-markup-deleted: #ffd8d3;
36
+ --editor-code-markup-deleted-bg: #78191b;
37
+ }
38
+ .dragon-editor[data-theme=white],
39
+ .dragon-editor-viewer[data-theme=white] {
40
+ --editor-text: #333;
41
+ --editor-text-disabled: #ccc;
42
+ --editor-background: #f9f9f9;
43
+ --editor-border: #ccc;
44
+ --editor-divider: #e5e5e5;
45
+ --editor-decoration-code-color:#ff0000;
46
+ --editor-decoration-code-bg:#f1f1f1;
47
+ --editor-code-color: #24292e;
48
+ --editor-code-bg: #f1f1f1;
49
+ --editor-code-file-bg: #ccc;
50
+ --editor-code-placeholder: #8b8d8f;
51
+ --editor-code-number: #e5e5e5;
52
+ --editor-code-number-bg: #8c8c8c;
53
+ --editor-code-keyword: #d73a49;
54
+ --editor-code-entity: #6f42c1;
55
+ --editor-code-constant: #005cc5;
56
+ --editor-code-string: #032f62;
57
+ --editor-code-variable: #e36209;
58
+ --editor-code-comment: #6a737d;
59
+ --editor-code-entity-tag: #22863a;
60
+ --editor-code-storage-modifier-import: #24292e;
61
+ --editor-code-markup-heading: #005cc5;
62
+ --editor-code-markup-list: #735c0f;
63
+ --editor-code-markup-italic: #24292e;
64
+ --editor-code-markup-bold: #24292e;
65
+ --editor-code-markup-inserted: #22863a;
66
+ --editor-code-markup-inserted-bg: #f0fff4;
67
+ --editor-code-markup-deleted: #b31d28;
68
+ --editor-code-markup-deleted-bg: #ffeef0;
69
+ }
70
+ .dragon-editor,
71
+ .dragon-editor-viewer {
5
72
  /**
6
73
  * Reset style start
7
74
  */
@@ -134,44 +201,24 @@
134
201
  .dragon-editor-viewer .de-block[data-depth="5"] {
135
202
  padding-left: 150px;
136
203
  }
137
- .dragon-editor .de-block.de-list-block[data-depth="1"],
138
- .dragon-editor-viewer .de-block.de-list-block[data-depth="1"] {
139
- padding-left: 54px;
140
- }
141
- .dragon-editor .de-block.de-list-block[data-depth="2"],
142
- .dragon-editor-viewer .de-block.de-list-block[data-depth="2"] {
143
- padding-left: 84px;
144
- }
145
- .dragon-editor .de-block.de-list-block[data-depth="3"],
146
- .dragon-editor-viewer .de-block.de-list-block[data-depth="3"] {
147
- padding-left: 114px;
148
- }
149
- .dragon-editor .de-block.de-list-block[data-depth="4"],
150
- .dragon-editor-viewer .de-block.de-list-block[data-depth="4"] {
151
- padding-left: 144px;
152
- }
153
- .dragon-editor .de-block.de-list-block[data-depth="5"],
154
- .dragon-editor-viewer .de-block.de-list-block[data-depth="5"] {
155
- padding-left: 174px;
156
- }
157
204
 
158
205
  /**
159
206
  * 노드 스타일
160
207
  */
161
208
  .dragon-editor {
162
209
  position: relative;
163
- border: 1px solid #ccc;
164
- border-radius: var(--radius-default);
210
+ background: var(--editor-background);
211
+ color: var(--editor-text);
212
+ border: 1px solid var(--editor-border);
213
+ border-radius: var(--editor-radius-default);
165
214
  }
166
215
  .dragon-editor.--has-menu {
167
216
  padding-top: 35px;
168
217
  }
169
- .dragon-editor.--mobile .de-menu-bar .de-menu-wrap {
170
- overflow-x: auto;
171
- }
172
218
  .dragon-editor.--mobile .de-menu-bar .de-link-exit-area {
173
- left: auto;
219
+ left: 50%;
174
220
  right: 0;
221
+ transform: translateX(-50%);
175
222
  }
176
223
  .dragon-editor.--hidden-parent {
177
224
  height: 100%;
@@ -192,9 +239,9 @@
192
239
  left: 0;
193
240
  right: 0;
194
241
  height: 34px;
195
- background: #fff;
196
- border-bottom: 1px solid #ccc;
197
- border-radius: var(--radius-default) var(--radius-default) 0 0;
242
+ background: var(--editor-background);
243
+ border-bottom: 1px solid var(--editor-border);
244
+ border-radius: var(--editor-radius-default) var(--editor-radius-default) 0 0;
198
245
  z-index: 10;
199
246
  }
200
247
  .dragon-editor .de-menu-bar .de-menu-wrap {
@@ -204,7 +251,7 @@
204
251
  .dragon-editor .de-menu-bar .de-col {
205
252
  display: flex;
206
253
  position: relative;
207
- border-right: 1px solid #ccc;
254
+ border-right: 1px solid var(--editor-border);
208
255
  }
209
256
  .dragon-editor .de-menu-bar .de-col:last-child {
210
257
  border-right: 0;
@@ -217,8 +264,8 @@
217
264
  height: 34px;
218
265
  cursor: pointer;
219
266
  }
220
- .dragon-editor .de-menu-bar .de-menu.--disabled .de-path {
221
- fill: #ccc;
267
+ .dragon-editor .de-menu-bar .de-menu[disabled] .de-path {
268
+ fill: var(--editor-text-disabled);
222
269
  }
223
270
  .dragon-editor .de-menu-bar .de-menu .de-icon {
224
271
  width: 16px;
@@ -228,10 +275,7 @@
228
275
  border-right: 0;
229
276
  }
230
277
  .dragon-editor .de-menu-bar .de-menu .de-path {
231
- fill: #333;
232
- }
233
- .dragon-editor .de-menu-bar .de-menu .de-path.--red {
234
- fill: #dd0000;
278
+ fill: var(--editor-text);
235
279
  }
236
280
  .dragon-editor .de-menu-bar .de-block-menu-area {
237
281
  display: none;
@@ -243,7 +287,7 @@
243
287
  border-width: 0 1px 1px 0;
244
288
  border-style: solid;
245
289
  border-color: #ccc;
246
- border-bottom-right-radius: var(--radius-default);
290
+ border-bottom-right-radius: var(--editor-radius-default);
247
291
  z-index: 1000;
248
292
  }
249
293
  .dragon-editor .de-menu-bar .de-block-menu-area.--active {
@@ -265,10 +309,10 @@
265
309
  top: calc(100% + 1px);
266
310
  left: 205px;
267
311
  width: 200px;
268
- background: #fff;
269
- border: 1px solid #ccc;
312
+ background: var(--editor-background);
313
+ border: 1px solid var(--editor-border);
270
314
  border-top: 0;
271
- border-radius: 0 0 var(--radius-default) var(--radius-default);
315
+ border-radius: 0 0 var(--editor-radius-default) var(--editor-radius-default);
272
316
  z-index: 1000;
273
317
  }
274
318
  .dragon-editor .de-menu-bar .de-link-exit-area.--active {
@@ -276,15 +320,15 @@
276
320
  }
277
321
  .dragon-editor .de-menu-bar .de-link-exit-area .de-btn-area {
278
322
  display: flex;
279
- border-bottom: 1px solid #ccc;
323
+ border-bottom: 1px solid var(--editor-border);
280
324
  }
281
325
  .dragon-editor .de-menu-bar .de-link-exit-area .de-btn-area .de-btn {
282
326
  flex: 1;
283
327
  height: 24px;
284
- color: #999;
328
+ color: var(--editor-text-disabled);
285
329
  }
286
330
  .dragon-editor .de-menu-bar .de-link-exit-area .de-btn-area .de-btn.--active {
287
- color: #333;
331
+ color: var(--editor-text);
288
332
  }
289
333
  .dragon-editor .de-menu-bar .de-link-exit-area .de-link-text-area {
290
334
  display: flex;
@@ -296,10 +340,12 @@
296
340
  min-width: 0;
297
341
  height: 20px;
298
342
  padding: 0 8px;
299
- border: 1px solid #ccc;
343
+ background: var(--editor-background);
344
+ color: var(--editor-text);
345
+ border: 1px solid var(--editor-border);
300
346
  box-sizing: border-box;
301
347
  }
302
- .dragon-editor .de-menu-bar .de-link-exit-area .de-link-text-area .de-input.--red {
348
+ .dragon-editor .de-menu-bar .de-link-exit-area .de-link-text-area .de-input.--error {
303
349
  border-color: red;
304
350
  }
305
351
  .dragon-editor .de-menu-bar .de-link-exit-area .de-link-text-area .de-btn {
@@ -317,37 +363,10 @@
317
363
  .dragon-editor .de-menu-bar .de-link-exit-area .de-link-heading-area .de-btn {
318
364
  padding: 2px 4px;
319
365
  text-align: left;
320
- border-radius: var(--radius-default);
366
+ border-radius: var(--editor-radius-default);
321
367
  }
322
368
  .dragon-editor .de-menu-bar .de-link-exit-area .de-link-heading-area .de-btn:hover {
323
- background: #f1f1f1;
324
- }
325
- .dragon-editor .de-controlbar {
326
- display: flex;
327
- position: fixed;
328
- height: 34px;
329
- background: #fff;
330
- border: 1px solid #ccc;
331
- border-radius: var(--radius-default);
332
- transform: translateX(-50%);
333
- z-index: 20;
334
- }
335
- .dragon-editor .de-controlbar .de-col {
336
- display: flex;
337
- align-items: center;
338
- column-gap: 6px;
339
- padding: 0 10px;
340
- border-right: 1px solid #ccc;
341
- }
342
- .dragon-editor .de-controlbar .de-col:last-child {
343
- border-right: 0;
344
- }
345
- .dragon-editor .de-controlbar .de-col .de-selector {
346
- height: 100%;
347
- border: 0;
348
- }
349
- .dragon-editor .de-controlbar .de-col .de-name {
350
- width: 70px;
369
+ background: var(--editor-decoration-code-bg);
351
370
  }
352
371
  .dragon-editor .de-block {
353
372
  width: 100%;
@@ -392,39 +411,59 @@
392
411
  row-gap: 4px;
393
412
  padding-left: 24px;
394
413
  }
395
- .dragon-editor .de-list-block[data-style=disc] {
414
+ .dragon-editor .de-list-block[data-type=unordered] {
396
415
  list-style: disc;
397
416
  }
398
- .dragon-editor .de-list-block[data-style=square] {
417
+ .dragon-editor .de-list-block[data-type=unordered] .de-list-sub {
418
+ list-style: circle;
419
+ }
420
+ .dragon-editor .de-list-block[data-type=unordered] .de-list-sub .de-list-sub {
399
421
  list-style: square;
400
422
  }
401
- .dragon-editor .de-list-block[data-style=decimal] {
423
+ .dragon-editor .de-list-block[data-type=unordered] .de-list-sub .de-list-sub .de-list-sub {
424
+ list-style: disclosure-closed;
425
+ }
426
+ .dragon-editor .de-list-block[data-type=unordered] .de-list-sub .de-list-sub .de-list-sub .de-list-sub {
427
+ list-style: "- ";
428
+ }
429
+ .dragon-editor .de-list-block[data-type=unordered] .de-list-sub .de-list-sub .de-list-sub .de-list-sub .de-list-sub {
430
+ list-style: "* ";
431
+ }
432
+ .dragon-editor .de-list-block[data-type=ordered] {
402
433
  list-style: decimal;
403
434
  }
404
- .dragon-editor .de-list-block[data-style=lower-alpha] {
435
+ .dragon-editor .de-list-block[data-type=ordered] .de-list-sub {
405
436
  list-style: lower-alpha;
406
437
  }
407
- .dragon-editor .de-list-block[data-style=upper-alpha] {
408
- list-style: upper-alpha;
409
- }
410
- .dragon-editor .de-list-block[data-style=lower-roman] {
438
+ .dragon-editor .de-list-block[data-type=ordered] .de-list-sub .de-list-sub {
411
439
  list-style: lower-roman;
412
440
  }
413
- .dragon-editor .de-list-block[data-style=upper-roman] {
441
+ .dragon-editor .de-list-block[data-type=ordered] .de-list-sub .de-list-sub .de-list-sub {
442
+ list-style: upper-alpha;
443
+ }
444
+ .dragon-editor .de-list-block[data-type=ordered] .de-list-sub .de-list-sub .de-list-sub .de-list-sub {
414
445
  list-style: upper-roman;
415
446
  }
447
+ .dragon-editor .de-list-block[data-type=ordered] .de-list-sub .de-list-sub .de-list-sub .de-list-sub .de-list-sub {
448
+ list-style: decimal;
449
+ }
416
450
  .dragon-editor .de-list-block .de-item {
451
+ list-style: inherit;
452
+ }
453
+ .dragon-editor .de-list-block .de-item-text {
417
454
  min-height: 1.6em;
418
455
  word-break: break-all;
419
456
  outline: 0;
420
- list-style: inherit;
421
457
  }
422
- .dragon-editor .de-list-block .de-item:empty:hover::before, .dragon-editor .de-list-block .de-item:empty:focus::before {
458
+ .dragon-editor .de-list-block .de-item-text:empty:hover::before, .dragon-editor .de-list-block .de-item-text:empty:focus::before {
423
459
  display: inline;
424
460
  content: "Type a list item";
425
461
  color: #ccc;
426
462
  cursor: text;
427
463
  }
464
+ .dragon-editor .de-list-block .de-list-sub {
465
+ padding-left: 30px;
466
+ }
428
467
  .dragon-editor .de-image-block {
429
468
  display: flex;
430
469
  align-items: center;
@@ -678,7 +717,7 @@
678
717
  .dragon-editor .de-image-block .de-image-area .de-img {
679
718
  width: 100%;
680
719
  height: auto;
681
- border-radius: var(--radius-default);
720
+ border-radius: var(--editor-radius-default);
682
721
  }
683
722
  .dragon-editor .de-image-block .de-image-area .de-btn {
684
723
  position: absolute;
@@ -687,7 +726,7 @@
687
726
  height: 15%;
688
727
  background: #f1f1f1;
689
728
  border: 1px solid #ccc;
690
- border-radius: var(--radius-default);
729
+ border-radius: var(--editor-radius-default);
691
730
  transform: translate(-50%, -50%);
692
731
  cursor: col-resize;
693
732
  user-select: none;
@@ -718,261 +757,176 @@
718
757
  flex-wrap: wrap;
719
758
  margin: 2px 0;
720
759
  padding: 0;
721
- border-radius: var(--radius-default);
722
- overflow: hidden;
760
+ color: var(--editor-code-color);
761
+ background: var(--editor-code-bg);
762
+ border-radius: var(--editor-radius-default);
723
763
  }
724
764
  .dragon-editor .de-code-block .de-filename {
725
765
  flex: 1;
726
766
  max-width: calc(100% - 120px);
727
767
  padding: 5px 10px;
768
+ color: var(--editor-code-color);
769
+ background: var(--editor-code-file-bg);
728
770
  box-sizing: border-box;
729
771
  outline: 0;
730
772
  }
731
773
  .dragon-editor .de-code-block .de-filename:empty:hover::before, .dragon-editor .de-code-block .de-filename:empty:focus::before {
732
774
  display: inline;
733
775
  content: "Type a Filename";
776
+ color: var(--editor-code-placeholder);
734
777
  cursor: text;
735
778
  }
736
779
  .dragon-editor .de-code-block .de-language {
737
780
  width: 120px;
738
781
  text-align: right;
739
782
  padding: 5px 10px;
783
+ color: var(--editor-code-color);
784
+ background: var(--editor-code-file-bg);
740
785
  box-sizing: border-box;
786
+ position: relative;
741
787
  }
742
- .dragon-editor .de-code-block .de-pre {
788
+ .dragon-editor .de-code-block .de-language:empty:hover::before, .dragon-editor .de-code-block .de-language:empty:focus::before {
789
+ color: var(--editor-code-placeholder);
790
+ }
791
+ .dragon-editor .de-code-block .de-language .de-btn-language {
792
+ width: 100%;
793
+ text-align: right;
794
+ }
795
+ .dragon-editor .de-code-block .de-language .de-list-language {
796
+ display: none;
797
+ flex-direction: column;
798
+ row-gap: 6px;
799
+ position: absolute;
800
+ top: 100%;
801
+ right: 0;
802
+ left: 0;
803
+ height: 200px;
804
+ padding: 2px 4px;
805
+ background: var(--editor-code-file-bg);
806
+ overflow-y: scroll;
807
+ }
808
+ .dragon-editor .de-code-block .de-language .de-list-language.--active {
809
+ display: flex;
810
+ }
811
+ .dragon-editor .de-code-block .de-pre-wrap {
812
+ display: flex;
743
813
  width: 100%;
814
+ overflow-x: auto;
815
+ }
816
+ .dragon-editor .de-code-block .de-pre-wrap .de-number {
817
+ padding: 10px 4px;
818
+ background: var(--editor-code-number);
819
+ color: var(--editor-code-number-bg);
820
+ }
821
+ .dragon-editor .de-code-block .de-pre-wrap .de-number .de-number-item {
822
+ min-height: 1.6em;
823
+ font-family: Inconsolata, monospace, sans-serif;
824
+ text-align: right;
825
+ }
826
+ .dragon-editor .de-code-block .de-pre {
827
+ flex: 1;
744
828
  padding: 10px;
745
829
  box-sizing: border-box;
746
- white-space: pre-wrap;
747
830
  }
748
831
  .dragon-editor .de-code-block .de-pre .de-code-content {
749
832
  display: block;
750
833
  min-height: 1.6em;
751
- width: 100%;
834
+ min-width: 100%;
752
835
  font-family: Inconsolata, monospace, sans-serif;
753
- word-break: break-word;
754
836
  outline: 0;
755
837
  }
756
838
  .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 {
757
839
  display: inline;
758
840
  content: "Type a Code";
841
+ color: var(--editor-code-placeholder);
759
842
  cursor: text;
760
843
  }
761
- .dragon-editor .de-code-block[data-theme=github-light] {
762
- color: #24292e;
763
- background: #f1f1f1;
764
- }
765
- .dragon-editor .de-code-block[data-theme=github-light] .de-filename {
766
- color: #24292e;
767
- background: #ccc;
768
- }
769
- .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 {
770
- color: #8b8d8f;
771
- }
772
- .dragon-editor .de-code-block[data-theme=github-light] .de-language {
773
- color: #24292e;
774
- background: #ccc;
775
- }
776
- .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 {
777
- color: #8b8d8f;
778
- }
779
- .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 {
780
- color: #8b8d8f;
781
- }
782
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-doctag,
783
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-keyword,
784
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-meta .hljs-keyword,
785
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-template-tag,
786
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-template-variable,
787
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-type,
788
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-variable.language_ {
844
+ .dragon-editor .de-code-block .hljs-doctag,
845
+ .dragon-editor .de-code-block .hljs-keyword,
846
+ .dragon-editor .de-code-block .hljs-meta .hljs-keyword,
847
+ .dragon-editor .de-code-block .hljs-template-tag,
848
+ .dragon-editor .de-code-block .hljs-template-variable,
849
+ .dragon-editor .de-code-block .hljs-type,
850
+ .dragon-editor .de-code-block .hljs-variable.language_ {
789
851
  /* prettylights-syntax-keyword */
790
- color: #d73a49;
852
+ color: var(--editor-code-keyword);
791
853
  }
792
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-title,
793
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-title.class_,
794
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-title.class_.inherited__,
795
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-title.function_ {
854
+ .dragon-editor .de-code-block .hljs-title,
855
+ .dragon-editor .de-code-block .hljs-title.class_,
856
+ .dragon-editor .de-code-block .hljs-title.class_.inherited__,
857
+ .dragon-editor .de-code-block .hljs-title.function_ {
796
858
  /* prettylights-syntax-entity */
797
- color: #6f42c1;
798
- }
799
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-attr,
800
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-attribute,
801
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-literal,
802
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-meta,
803
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-number,
804
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-operator,
805
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-variable,
806
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-selector-attr,
807
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-selector-class,
808
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-selector-id {
859
+ color: var(--editor-code-entity);
860
+ }
861
+ .dragon-editor .de-code-block .hljs-attr,
862
+ .dragon-editor .de-code-block .hljs-attribute,
863
+ .dragon-editor .de-code-block .hljs-literal,
864
+ .dragon-editor .de-code-block .hljs-meta,
865
+ .dragon-editor .de-code-block .hljs-number,
866
+ .dragon-editor .de-code-block .hljs-operator,
867
+ .dragon-editor .de-code-block .hljs-variable,
868
+ .dragon-editor .de-code-block .hljs-selector-attr,
869
+ .dragon-editor .de-code-block .hljs-selector-class,
870
+ .dragon-editor .de-code-block .hljs-selector-id {
809
871
  /* prettylights-syntax-constant */
810
- color: #005cc5;
872
+ color: var(--editor-code-constant);
811
873
  }
812
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-regexp,
813
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-string,
814
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-meta .hljs-string {
874
+ .dragon-editor .de-code-block .hljs-regexp,
875
+ .dragon-editor .de-code-block .hljs-string,
876
+ .dragon-editor .de-code-block .hljs-meta .hljs-string {
815
877
  /* prettylights-syntax-string */
816
- color: #032f62;
878
+ color: var(--editor-code-string);
817
879
  }
818
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-built_in,
819
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-symbol {
880
+ .dragon-editor .de-code-block .hljs-built_in,
881
+ .dragon-editor .de-code-block .hljs-symbol {
820
882
  /* prettylights-syntax-variable */
821
- color: #e36209;
883
+ color: var(--editor-code-variable);
822
884
  }
823
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-comment,
824
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-code,
825
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-formula {
885
+ .dragon-editor .de-code-block .hljs-comment,
886
+ .dragon-editor .de-code-block .hljs-code,
887
+ .dragon-editor .de-code-block .hljs-formula {
826
888
  /* prettylights-syntax-comment */
827
- color: #6a737d;
889
+ color: var(--editor-code-comment);
828
890
  }
829
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-name,
830
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-quote,
831
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-selector-tag,
832
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-selector-pseudo {
891
+ .dragon-editor .de-code-block .hljs-name,
892
+ .dragon-editor .de-code-block .hljs-quote,
893
+ .dragon-editor .de-code-block .hljs-selector-tag,
894
+ .dragon-editor .de-code-block .hljs-selector-pseudo {
833
895
  /* prettylights-syntax-entity-tag */
834
- color: #22863a;
896
+ color: var(--editor-code-entity-tag);
835
897
  }
836
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-subst {
898
+ .dragon-editor .de-code-block .hljs-subst {
837
899
  /* prettylights-syntax-storage-modifier-import */
838
- color: #24292e;
900
+ color: var(--editor-code-storage-modifier-import);
839
901
  }
840
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-section {
902
+ .dragon-editor .de-code-block .hljs-section {
841
903
  /* prettylights-syntax-markup-heading */
842
- color: #005cc5;
904
+ color: var(--editor-code-markup-heading);
843
905
  font-weight: bold;
844
906
  }
845
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-bullet {
907
+ .dragon-editor .de-code-block .hljs-bullet {
846
908
  /* prettylights-syntax-markup-list */
847
- color: #735c0f;
909
+ color: var(--editor-code-markup-list);
848
910
  }
849
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-emphasis {
911
+ .dragon-editor .de-code-block .hljs-emphasis {
850
912
  /* prettylights-syntax-markup-italic */
851
- color: #24292e;
913
+ color: var(--editor-code-markup-italic);
852
914
  font-style: italic;
853
915
  }
854
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-strong {
916
+ .dragon-editor .de-code-block .hljs-strong {
855
917
  /* prettylights-syntax-markup-bold */
856
- color: #24292e;
918
+ color: var(--editor-code-markup-bold);
857
919
  font-weight: bold;
858
920
  }
859
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-addition {
921
+ .dragon-editor .de-code-block .hljs-addition {
860
922
  /* prettylights-syntax-markup-inserted */
861
- color: #22863a;
862
- background-color: #f0fff4;
923
+ color: var(--editor-code-markup-inserted);
924
+ background-color: var(--editor-code-markup-inserted-bg);
863
925
  }
864
- .dragon-editor .de-code-block[data-theme=github-light] .hljs-deletion {
926
+ .dragon-editor .de-code-block .hljs-deletion {
865
927
  /* prettylights-syntax-markup-deleted */
866
- color: #b31d28;
867
- background-color: #ffeef0;
868
- }
869
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] {
870
- color: #adbac7;
871
- background: #22272e;
872
- }
873
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .de-filename {
874
- color: #adbac7;
875
- background: #494e54;
876
- }
877
- .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 {
878
- color: #96a0aa;
879
- }
880
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .de-language {
881
- color: #adbac7;
882
- background: #494e54;
883
- }
884
- .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 {
885
- color: #96a0aa;
886
- }
887
- .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 {
888
- color: #96a0aa;
889
- }
890
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-doctag,
891
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-keyword,
892
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-meta .hljs-keyword,
893
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-template-tag,
894
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-template-variable,
895
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-type,
896
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-variable.language_ {
897
- /* prettylights-syntax-keyword */
898
- color: #f47067;
899
- }
900
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-title,
901
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-title.class_,
902
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-title.class_.inherited__,
903
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-title.function_ {
904
- /* prettylights-syntax-entity */
905
- color: #dcbdfb;
906
- }
907
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-attr,
908
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-attribute,
909
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-literal,
910
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-meta,
911
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-number,
912
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-operator,
913
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-variable,
914
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-selector-attr,
915
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-selector-class,
916
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-selector-id {
917
- /* prettylights-syntax-constant */
918
- color: #6cb6ff;
919
- }
920
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-regexp,
921
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-string,
922
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-meta .hljs-string {
923
- /* prettylights-syntax-string */
924
- color: #96d0ff;
925
- }
926
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-built_in,
927
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-symbol {
928
- /* prettylights-syntax-variable */
929
- color: #f69d50;
930
- }
931
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-comment,
932
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-code,
933
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-formula {
934
- /* prettylights-syntax-comment */
935
- color: #768390;
936
- }
937
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-name,
938
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-quote,
939
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-selector-tag,
940
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-selector-pseudo {
941
- /* prettylights-syntax-entity-tag */
942
- color: #8ddb8c;
943
- }
944
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-subst {
945
- /* prettylights-syntax-storage-modifier-import */
946
- color: #adbac7;
947
- }
948
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-section {
949
- /* prettylights-syntax-markup-heading */
950
- color: #316dca;
951
- font-weight: bold;
952
- }
953
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-bullet {
954
- /* prettylights-syntax-markup-list */
955
- color: #eac55f;
956
- }
957
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-emphasis {
958
- /* prettylights-syntax-markup-italic */
959
- color: #adbac7;
960
- font-style: italic;
961
- }
962
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-strong {
963
- /* prettylights-syntax-markup-bold */
964
- color: #adbac7;
965
- font-weight: bold;
966
- }
967
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-addition {
968
- /* prettylights-syntax-markup-inserted */
969
- color: #b4f1b4;
970
- background-color: #1b4721;
971
- }
972
- .dragon-editor .de-code-block[data-theme=github-dark-dimmed] .hljs-deletion {
973
- /* prettylights-syntax-markup-deleted */
974
- color: #ffd8d3;
975
- background-color: #78191b;
928
+ color: var(--editor-code-markup-deleted);
929
+ background-color: var(--editor-code-markup-deleted-bg);
976
930
  }
977
931
  .dragon-editor .de-divider-block {
978
932
  display: flex;
@@ -985,7 +939,7 @@
985
939
  width: 100%;
986
940
  height: 2px;
987
941
  padding: 0;
988
- background: #e5e5e5;
942
+ background: var(--editor-divider);
989
943
  border-radius: 2px;
990
944
  }
991
945
  .dragon-editor .de-bold {
@@ -1009,8 +963,8 @@
1009
963
  .dragon-editor .de-code {
1010
964
  display: inline-block;
1011
965
  padding: 2px 4px;
1012
- background: #f1f1f1;
1013
- color: #ff0000;
966
+ background: var(--editor-decoration-code-bg);
967
+ color: var(--editor-decoration-code-color);
1014
968
  border-radius: 5px;
1015
969
  }
1016
970
  .dragon-editor .de-align-left {