@hailin-zheng/editor-core 2.2.29 → 2.2.31

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 (94) hide show
  1. package/editor.css +638 -638
  2. package/index-cjs.d.ts +32 -32
  3. package/index-cjs.js +24071 -23952
  4. package/index-cjs.js.map +1 -1
  5. package/index.d.ts +32 -32
  6. package/index.js +24070 -23955
  7. package/index.js.map +1 -1
  8. package/med_editor/doc-editor.d.ts +541 -541
  9. package/med_editor/doc-rule.d.ts +174 -174
  10. package/med_editor/editor-core.d.ts +18 -18
  11. package/med_editor/framework/code-interpreter/ast-parser.d.ts +4 -4
  12. package/med_editor/framework/code-interpreter/document-eval-func.d.ts +18 -18
  13. package/med_editor/framework/code-interpreter/dynamic-execute.d.ts +31 -26
  14. package/med_editor/framework/doc-layout/document-arrange.d.ts +95 -95
  15. package/med_editor/framework/doc-layout/paragraph-arrange.d.ts +110 -110
  16. package/med_editor/framework/document-change.d.ts +341 -341
  17. package/med_editor/framework/document-combine.d.ts +24 -24
  18. package/med_editor/framework/document-comment.d.ts +38 -38
  19. package/med_editor/framework/document-context.d.ts +154 -154
  20. package/med_editor/framework/document-event.d.ts +256 -256
  21. package/med_editor/framework/document-input-cursor.d.ts +32 -32
  22. package/med_editor/framework/document-paginator.d.ts +46 -46
  23. package/med_editor/framework/document-svg.d.ts +36 -36
  24. package/med_editor/framework/document-template.d.ts +13 -13
  25. package/med_editor/framework/document-textline-mode.d.ts +6 -6
  26. package/med_editor/framework/element-define.d.ts +439 -438
  27. package/med_editor/framework/element-event-define.d.ts +102 -102
  28. package/med_editor/framework/element-props.d.ts +344 -344
  29. package/med_editor/framework/element-reader.d.ts +20 -20
  30. package/med_editor/framework/element-serialize.d.ts +36 -36
  31. package/med_editor/framework/element-type-handler.d.ts +8 -8
  32. package/med_editor/framework/history/element-trace-manage.d.ts +107 -107
  33. package/med_editor/framework/history/element-trace-tracking.d.ts +89 -89
  34. package/med_editor/framework/impl/checkbox/checkbox-impl.d.ts +19 -19
  35. package/med_editor/framework/impl/comments/comment-content-impl.d.ts +39 -39
  36. package/med_editor/framework/impl/comments/comment-element-impl.d.ts +24 -24
  37. package/med_editor/framework/impl/comments/comments-container-impl.d.ts +19 -19
  38. package/med_editor/framework/impl/comments/validate-msg-impl.d.ts +19 -19
  39. package/med_editor/framework/impl/data-element/data-container-impl.d.ts +25 -25
  40. package/med_editor/framework/impl/data-element/data-decorate-impl.d.ts +16 -16
  41. package/med_editor/framework/impl/data-element/data-element-barcode.d.ts +32 -32
  42. package/med_editor/framework/impl/data-element/data-element-base-impl.d.ts +121 -120
  43. package/med_editor/framework/impl/data-element/data-element-check-impl.d.ts +26 -26
  44. package/med_editor/framework/impl/data-element/data-element-date-impl.d.ts +23 -23
  45. package/med_editor/framework/impl/data-element/data-element-group-impl.d.ts +28 -28
  46. package/med_editor/framework/impl/data-element/data-element-image-impl.d.ts +23 -23
  47. package/med_editor/framework/impl/data-element/data-element-list-impl.d.ts +21 -21
  48. package/med_editor/framework/impl/data-element/data-element-text-impl.d.ts +22 -22
  49. package/med_editor/framework/impl/data-element/qrcode.d.ts +93 -93
  50. package/med_editor/framework/impl/decorate/fill-null-space-imple.d.ts +16 -16
  51. package/med_editor/framework/impl/document/doc-body-impl.d.ts +19 -19
  52. package/med_editor/framework/impl/document/doc-body-part-impl.d.ts +22 -22
  53. package/med_editor/framework/impl/document/doc-container-impl.d.ts +7 -7
  54. package/med_editor/framework/impl/document/doc-footer-impl.d.ts +19 -19
  55. package/med_editor/framework/impl/document/doc-header-impl.d.ts +19 -19
  56. package/med_editor/framework/impl/document/doc-impl.d.ts +84 -84
  57. package/med_editor/framework/impl/index.d.ts +41 -40
  58. package/med_editor/framework/impl/media-formula/menstrual-history.d.ts +31 -31
  59. package/med_editor/framework/impl/media-formula/permanent-teeth.d.ts +34 -34
  60. package/med_editor/framework/impl/paragraph/p-impl.d.ts +38 -38
  61. package/med_editor/framework/impl/picture/RectEle.d.ts +44 -44
  62. package/med_editor/framework/impl/picture/image-impl.d.ts +24 -24
  63. package/med_editor/framework/impl/radio/radio-impl.d.ts +17 -17
  64. package/med_editor/framework/impl/shape/line-impl.d.ts +31 -31
  65. package/med_editor/framework/impl/svg/svg-impl.d.ts +20 -20
  66. package/med_editor/framework/impl/symbol/br-symbol-impl.d.ts +18 -18
  67. package/med_editor/framework/impl/symbol/p-symbol-impl.d.ts +16 -16
  68. package/med_editor/framework/impl/symbol/page-br-symbol-impl.d.ts +20 -20
  69. package/med_editor/framework/impl/symbol/tab-symbol-impl.d.ts +15 -15
  70. package/med_editor/framework/impl/table/table-cell-impl.d.ts +34 -34
  71. package/med_editor/framework/impl/table/table-impl.d.ts +49 -49
  72. package/med_editor/framework/impl/table/table-row-impl.d.ts +27 -27
  73. package/med_editor/framework/impl/table/table-split-cell-patch.d.ts +20 -20
  74. package/med_editor/framework/impl/table/table-split-cell.d.ts +93 -93
  75. package/med_editor/framework/impl/table/table-util.d.ts +180 -180
  76. package/med_editor/framework/impl/text/text-impl.d.ts +34 -34
  77. package/med_editor/framework/impl/text/track-run-impl.d.ts +27 -27
  78. package/med_editor/framework/infrastructure/event-subject.d.ts +57 -57
  79. package/med_editor/framework/infrastructure/notify.d.ts +13 -13
  80. package/med_editor/framework/print/document-print-offscreen.d.ts +58 -58
  81. package/med_editor/framework/print/document-print.d.ts +18 -18
  82. package/med_editor/framework/render-context.d.ts +111 -111
  83. package/med_editor/framework/render-define.d.ts +140 -140
  84. package/med_editor/framework/search/search-panel.d.ts +31 -31
  85. package/med_editor/framework/selection/document-selection.d.ts +92 -92
  86. package/med_editor/framework/selection/range-util.d.ts +36 -36
  87. package/med_editor/framework/selection/selection-overlays.d.ts +36 -36
  88. package/med_editor/framework/suggestions/input-suggestions.d.ts +29 -29
  89. package/med_editor/framework/util/adjust-viewport-elements.d.ts +12 -12
  90. package/med_editor/framework/util/common-util.d.ts +77 -77
  91. package/med_editor/framework/util/document-segmenter.d.ts +2 -2
  92. package/med_editor/framework/util/element-util.d.ts +417 -417
  93. package/med_editor/framework/vnode/editor-calendar-vnode.d.ts +43 -43
  94. package/package.json +18 -18
package/editor.css CHANGED
@@ -1,639 +1,639 @@
1
- .svg-container {
2
- background: #C0C6CF;
3
- overflow: hidden;
4
- flex: 1;
5
- height: 100%;
6
- position: relative;
7
- }
8
-
9
- .svg-container * {
10
- white-space: pre;
11
- }
12
- .svg-container svg{
13
- pointer-events: none;
14
- }
15
-
16
- .absolute-container {
17
- position: absolute;
18
- left: 0;
19
- top: 0;
20
- }
21
-
22
- .data-list > div {
23
- padding: 6px 4px;
24
- display: flex;
25
- align-items: center;
26
- font-size: 14px;
27
- gap: 10px;
28
- border-bottom: 1px solid #ccc;
29
- cursor: default;
30
- }
31
-
32
- .data-list > div:hover {
33
- background-color: #ccc;
34
- }
35
-
36
- .data-list > div:last-child {
37
- border-bottom: none; /* 去掉最后一个列表项的底部边框线 */
38
- }
39
-
40
- @keyframes hover-color {
41
- from {
42
- border-color: #c0c0c0;
43
- }
44
- to {
45
- border-color: #3e97eb;
46
- }
47
- }
48
-
49
-
50
- /* 样式化 radio box 的外观 */
51
- .editor-list-radiobox {
52
- width: 16px;
53
- height: 16px;
54
- border: 1px solid #000;
55
- border-radius: 50%;
56
- cursor: pointer;
57
- display: inline-block;
58
- position: relative;
59
- }
60
-
61
- /* 选中状态的样式 */
62
- .editor-list-radiobox.checked::after {
63
- content: "";
64
- width: 8px;
65
- height: 8px;
66
- background-color: #007bff;
67
- border-radius: 50%;
68
- position: absolute;
69
- top: 50%;
70
- left: 50%;
71
- transform: translate(-50%, -50%);
72
- }
73
-
74
- /* 样式化 checkbox 的外观 */
75
- .editor-list-checkbox {
76
- width: 16px;
77
- height: 16px;
78
- border: 1px solid #000;
79
- cursor: pointer;
80
- }
81
-
82
- /* 选中状态的样式 */
83
- .editor-list-checkbox.checked::after {
84
- content: "✔";
85
- font-size: 14px;
86
- color: #007bff;
87
- display: block;
88
- text-align: center;
89
- line-height: 16px;
90
- }
91
-
92
- .decorate-container {
93
- position: absolute;
94
- cursor: default;
95
- z-index: 1;
96
- }
97
-
98
- .tg-container {
99
- font-size: 12px;
100
- border: 1px solid #ccc;
101
- padding: 10px;
102
- position: absolute;
103
- width: 200px;
104
- background: #fff;
105
- box-shadow: rgba(158, 161, 165, 0.4) 0px 2px 12px 0px;
106
- }
107
-
108
- .tg-container--selected {
109
- box-shadow: 0 2px 16px 0 rgb(0 0 0 / 20%);
110
- }
111
-
112
- .tg-container > .header {
113
- display: flex;
114
- justify-content: space-between;
115
- align-items: center;
116
- }
117
-
118
- .tg-container > .content {
119
- margin-top: 10px;
120
- white-space: normal;
121
- word-break: break-all;
122
- }
123
-
124
- .tg-container > .header > .header-user {
125
- color: #3e97eb;
126
- }
127
-
128
- .tg-container > .header > .header-date {
129
- color: #c0c0c0;
130
- padding-right: 10px;
131
- }
132
-
133
- .tg-container > .bg {
134
- position: absolute;
135
- left: 0;
136
- top: 0;
137
- width: 4px;
138
- height: 100%;
139
- }
140
-
141
- .editor-calendar {
142
- width: 212px;
143
- height: 272px;
144
- border: 1px solid #ccc;
145
- background: #fff;
146
- cursor: default;
147
- user-select: none;
148
- font-size: 12px;
149
- }
150
-
151
- .editor-calendar-header {
152
- display: flex;
153
- justify-content: space-between;
154
- align-items: center;
155
- line-height: 30px;
156
- }
157
-
158
- .editor-calendar-header-left {
159
- display: flex;
160
- align-items: center;
161
- }
162
-
163
- .editor-calendar-header-left-year {
164
- padding: 0 5px;
165
- }
166
-
167
- .editor-calendar-header-left-year:hover {
168
- background: #ccc;
169
- }
170
-
171
- .editor-calendar-item:hover {
172
- background: #ccc;
173
- }
174
-
175
- .editor-calendar-header-left-month {
176
- padding: 0 5px;
177
- }
178
-
179
- .editor-calendar-header-left-month:hover {
180
- background: #ccc;
181
- }
182
-
183
- .editor-calendar-header-right {
184
- display: flex;
185
- align-items: center;
186
- }
187
-
188
- .editor-calendar-header-right-prev {
189
- padding: 0 5px;
190
- }
191
-
192
- .editor-calendar-header-right-prev:hover {
193
- background-color: #ccc;
194
- }
195
-
196
- .editor-calendar-header-right-next {
197
- padding: 0 5px;
198
- }
199
-
200
- .editor-calendar-header-right-next:hover {
201
- background-color: #ccc;
202
- }
203
-
204
- .editor-calendar-body {
205
- display: flex;
206
- flex-direction: column;
207
- }
208
-
209
- .editor-calendar-body-week {
210
- display: flex;
211
- }
212
-
213
- .editor-calendar-body-week-item {
214
- width: 30px;
215
- height: 30px;
216
- line-height: 30px;
217
- text-align: center;
218
- }
219
-
220
- .editor-calendar-body-day {
221
- display: flex;
222
- flex-wrap: wrap;
223
- }
224
-
225
- .editor-calendar-body-day-item {
226
- width: 30px;
227
- height: 30px;
228
- line-height: 30px;
229
- text-align: center;
230
- opacity: 0.6;
231
- }
232
-
233
- .editor-calendar-body-day-item--current-month {
234
- opacity: 1;
235
- }
236
-
237
- .editor-calendar-body-day-item--today {
238
- background: #2b88d8;
239
- color: #fff;
240
- }
241
-
242
- .editor-calendar-item--selected {
243
- outline: #2b88d8 1px solid;
244
- font-weight: bold;
245
- }
246
-
247
- .editor-calendar-body-day-item:hover {
248
- background-color: #ccc;
249
- }
250
-
251
- .editor-calendar-footer {
252
- display: flex;
253
- justify-content: space-between;
254
- }
255
-
256
- .editor-calendar-footer-right {
257
- display: flex;
258
- justify-content: flex-end;
259
- align-items: center;
260
- height: 30px;
261
- font-size: 12px;
262
- }
263
-
264
- .editor-calendar-footer-right-btn {
265
- padding: 2px 3px;
266
- cursor: default;
267
- user-select: none;
268
- }
269
-
270
- .editor-calendar-footer-right-btn:hover {
271
- outline: 1px solid rgb(118, 142, 222);
272
- }
273
-
274
- .editor-calendar-footer-right-btn:active {
275
- outline: 1px solid rgb(95, 19, 216);
276
- }
277
-
278
- .invert {
279
- filter: invert(100%);
280
- }
281
-
282
- .editor-calendar-month {
283
- width: 210px;
284
- height: 180px;
285
- border: 1px solid #ccc;
286
- background: #fff;
287
- cursor: default;
288
- }
289
-
290
- .editor-calendar-month-header {
291
- display: flex;
292
- justify-content: space-between;
293
- align-items: center;
294
- height: 30px;
295
- }
296
-
297
- .editor-calendar-month-header-left {
298
- display: flex;
299
- align-items: center;
300
- }
301
-
302
- .editor-calendar-month-header-left-year {
303
- padding-left: 10px;
304
- }
305
-
306
- .editor-calendar-month-header-right {
307
- display: flex;
308
- align-items: center;
309
- }
310
-
311
- .editor-calendar-month-header-right-prev {
312
- padding: 0 5px;
313
- }
314
-
315
- .editor-calendar-month-header-right-next {
316
- padding: 0 5px;
317
- }
318
-
319
- .editor-calendar-month-body {
320
- display: flex;
321
- flex-direction: column;
322
- }
323
-
324
- .editor-calendar-month-body-month {
325
- display: flex;
326
- flex-wrap: wrap;
327
- }
328
-
329
- .editor-calendar-month-body-month-item {
330
- width: 52px;
331
- height: 50px;
332
- line-height: 50px;
333
- text-align: center;
334
- }
335
-
336
- .editor-calendar-month-body-month-item--current {
337
- outline: #2b88d8 1px solid;
338
- font-weight: bold;
339
- }
340
-
341
- .editor-calendar-year {
342
- width: 210px;
343
- height: 210px;
344
- border: 1px solid #ccc;
345
- background: #fff;
346
- cursor: default;
347
- }
348
-
349
- .editor-calendar-year-header {
350
- display: flex;
351
- justify-content: space-between;
352
- align-items: center;
353
- height: 30px;
354
- }
355
-
356
- .editor-calendar-year-header-left {
357
- display: flex;
358
- align-items: center;
359
- }
360
-
361
- .editor-calendar-year-header-left-year {
362
- padding: 0 5px;
363
- }
364
-
365
- .editor-calendar-year-header-right {
366
- display: flex;
367
- align-items: center;
368
- }
369
-
370
- .editor-calendar-year-header-right-prev {
371
- padding: 0 5px;
372
- }
373
-
374
- .editor-calendar-year-header-right-next {
375
- padding: 0 5px;
376
- }
377
-
378
- .editor-calendar-year-body {
379
- display: flex;
380
- flex-direction: column;
381
- }
382
-
383
- .editor-calendar-year-body-year {
384
- display: flex;
385
- flex-wrap: wrap;
386
- }
387
-
388
- .editor-calendar-year-body-year-item {
389
- width: 52px;
390
- height: 36px;
391
- line-height: 36px;
392
- text-align: center;
393
- }
394
-
395
- .editor-contextmenu {
396
- z-index: 1000;
397
- position: absolute;
398
- background: white;
399
- box-shadow: rgba(158, 161, 165, 0.4) 0px 2px 12px 0px;
400
- }
401
-
402
- .editor-overlays-menus {
403
- font-size: 14px;
404
- font-family: "宋体", serif;
405
- margin: 0;
406
- cursor: pointer;
407
- padding: 0;
408
- list-style: none;
409
- user-select: none;
410
- }
411
-
412
- .editor-overlays-menus {
413
- padding: 3px;
414
- }
415
-
416
- .editor-overlays-menus > li {
417
- padding: 8px 12px;
418
- display: flex;
419
- gap: 6px;
420
- align-items: center;
421
- word-break: keep-all;
422
- border-bottom: 1px solid #ccc; /* 在每个列表项的底部添加一条边框线 */
423
- position: relative;
424
- }
425
- .editor-overlays-menus > li > ul {
426
- display: none;
427
- position: absolute;
428
- left: calc(100%);
429
- top: 0;
430
- z-index: 1;
431
- background: #fff;
432
- box-shadow: rgba(158, 161, 165, 0.4) 0px 2px 12px 0px;
433
- }
434
- .editor-overlays-menus .sub:after {
435
- content: "▸";
436
- margin-left: auto;
437
- }
438
- .editor-overlays-menus > li:hover > ul {
439
- display: block;
440
- }
441
-
442
- .editor-overlays-menus > li:hover {
443
- background-color: #ccc;
444
- }
445
-
446
- .editor-overlays-menus > li:last-child {
447
- border-bottom: none; /* 去掉最后一个列表项的底部边框线 */
448
- }
449
-
450
- /*.scale-container > *{*/
451
- /* transform-origin: center top;*/
452
- /*}*/
453
-
454
-
455
- .editor-calendar-footer-left {
456
- display: flex;
457
- }
458
-
459
- .editor-calendar-footer-left-time {
460
- outline: none;
461
- width: 110px;
462
- text-align: center;
463
- padding: 0;
464
- margin: 0;
465
- font-size: 14px;
466
- }
467
-
468
- .editor-input-cursor {
469
- position: absolute;
470
- width: 1.6px;
471
- padding: 0;
472
- border: none;
473
- outline: none;
474
- background: black;
475
- pointer-events: none;
476
- opacity: 0;
477
- animation: editor-cursor-blink 1s infinite steps(1, start);
478
- }
479
-
480
- @keyframes editor-cursor-blink {
481
- 0% {
482
- opacity: 1;
483
- }
484
- 50% {
485
- opacity: 0;
486
- }
487
- 100% {
488
- opacity: 1;
489
- }
490
- }
491
-
492
- .doc-triangle {
493
- position: absolute;
494
- width: 0;
495
- height: 0;
496
- border-left: 5px solid transparent;
497
- border-right: 5px solid transparent;
498
- border-bottom: 10px solid red; /* 修改颜色 */
499
- }
500
-
501
- .doc-triangle-line {
502
- position: absolute;
503
- height: 1px;
504
- background: red;
505
- transform-origin: top left;
506
- }
507
-
508
- .data-list-container {
509
- min-width: 100px;
510
- background-color: white;
511
- z-index: 1000;
512
- box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
513
- user-select: none;
514
- }
515
- .editor-suggestions-container {
516
- z-index: 1000;
517
- position: absolute;
518
- background: white;
519
- box-shadow: rgba(158, 161, 165, 0.4) 0px 2px 12px 0px;
520
- max-height: 300px;
521
- overflow: auto;
522
- }
523
-
524
- .editor-suggestions {
525
- font-size: 14px;
526
- font-family: "宋体", serif;
527
- margin: 0;
528
- cursor: pointer;
529
- padding: 0;
530
- list-style: none;
531
- user-select: none;
532
- }
533
-
534
- .editor-suggestions {
535
- padding: 3px;
536
- }
537
-
538
- .editor-suggestions > li {
539
- padding: 8px 12px;
540
- display: flex;
541
- gap: 6px;
542
- align-items: center;
543
- word-break: keep-all;
544
- border-bottom: 1px solid #ccc; /* 在每个列表项的底部添加一条边框线 */
545
- position: relative;
546
- }
547
-
548
- .editor-suggestions > li:hover {
549
- background-color: #eee;
550
- }
551
- .editor-suggestions > li.hovered {
552
- background-color: #ccc;
553
- }
554
- .editor-suggestions > li:last-child {
555
- border-bottom: none; /* 去掉最后一个列表项的底部边框线 */
556
- }
557
- .doc-rule {
558
- position: absolute;
559
- font-size: 0;
560
- background: white;
561
- box-shadow: rgba(158, 161, 165, 0.4) 0px 2px 12px 0px;
562
- cursor: default;
563
- left: 0;
564
- top: 0;
565
- }
566
- .rule-thumb-container{
567
- position: absolute;
568
- cursor: pointer;
569
- }
570
- .rule-thumb-top{
571
- top:0;
572
- }
573
- .rule-thumb-left{
574
- top: calc(100% - 10px);
575
- }
576
-
577
- .rule-wrapper{
578
- position: absolute;
579
- transform-origin: 0px 0px;
580
- top: 0;
581
- }
582
-
583
- .editor-search-box {
584
- position: absolute;
585
- top: 0;
586
- left: 0;
587
- display: flex;
588
- align-items: center;
589
- background-color: #f3f3f3;
590
- padding: 2px;
591
- color: #333;
592
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
593
- }
594
-
595
- .editor-search-box .search-input {
596
- flex-grow: 1;
597
- padding: 2px;
598
- margin-right: 4px;
599
- border: 1px solid #ccc;
600
- border-radius: 4px;
601
- color: #333;
602
- background-color: white;
603
- font-size: 14px;
604
- }
605
-
606
- .editor-search-box .icon-button {
607
- background-color: transparent;
608
- border: none;
609
- color: #666;
610
- cursor: pointer;
611
- display: flex;
612
- align-items: center;
613
- justify-content: center;
614
- padding: 2px;
615
- }
616
-
617
- .editor-search-box .icon-button:hover {
618
- background-color: #e0e0e0;
619
- color: #333;
620
- }
621
-
622
- .editor-search-box .search-count {
623
- margin: 0 8px;
624
- color: #666;
625
- font-size: 14px;
626
- }
627
-
628
- .editor-search-box .material-icons {
629
- font-size: 16px;
630
- }
631
-
632
- .editor-search-box input:focus,
633
- button:focus {
634
- outline: none;
635
- }
636
-
637
- .editor-search-box input::placeholder {
638
- color: #aaa;
1
+ .svg-container {
2
+ background: #C0C6CF;
3
+ overflow: hidden;
4
+ flex: 1;
5
+ height: 100%;
6
+ position: relative;
7
+ }
8
+
9
+ .svg-container * {
10
+ white-space: pre;
11
+ }
12
+ .svg-container svg{
13
+ pointer-events: none;
14
+ }
15
+
16
+ .absolute-container {
17
+ position: absolute;
18
+ left: 0;
19
+ top: 0;
20
+ }
21
+
22
+ .data-list > div {
23
+ padding: 6px 4px;
24
+ display: flex;
25
+ align-items: center;
26
+ font-size: 14px;
27
+ gap: 10px;
28
+ border-bottom: 1px solid #ccc;
29
+ cursor: default;
30
+ }
31
+
32
+ .data-list > div:hover {
33
+ background-color: #ccc;
34
+ }
35
+
36
+ .data-list > div:last-child {
37
+ border-bottom: none; /* 去掉最后一个列表项的底部边框线 */
38
+ }
39
+
40
+ @keyframes hover-color {
41
+ from {
42
+ border-color: #c0c0c0;
43
+ }
44
+ to {
45
+ border-color: #3e97eb;
46
+ }
47
+ }
48
+
49
+
50
+ /* 样式化 radio box 的外观 */
51
+ .editor-list-radiobox {
52
+ width: 16px;
53
+ height: 16px;
54
+ border: 1px solid #000;
55
+ border-radius: 50%;
56
+ cursor: pointer;
57
+ display: inline-block;
58
+ position: relative;
59
+ }
60
+
61
+ /* 选中状态的样式 */
62
+ .editor-list-radiobox.checked::after {
63
+ content: "";
64
+ width: 8px;
65
+ height: 8px;
66
+ background-color: #007bff;
67
+ border-radius: 50%;
68
+ position: absolute;
69
+ top: 50%;
70
+ left: 50%;
71
+ transform: translate(-50%, -50%);
72
+ }
73
+
74
+ /* 样式化 checkbox 的外观 */
75
+ .editor-list-checkbox {
76
+ width: 16px;
77
+ height: 16px;
78
+ border: 1px solid #000;
79
+ cursor: pointer;
80
+ }
81
+
82
+ /* 选中状态的样式 */
83
+ .editor-list-checkbox.checked::after {
84
+ content: "✔";
85
+ font-size: 14px;
86
+ color: #007bff;
87
+ display: block;
88
+ text-align: center;
89
+ line-height: 16px;
90
+ }
91
+
92
+ .decorate-container {
93
+ position: absolute;
94
+ cursor: default;
95
+ z-index: 1;
96
+ }
97
+
98
+ .tg-container {
99
+ font-size: 12px;
100
+ border: 1px solid #ccc;
101
+ padding: 10px;
102
+ position: absolute;
103
+ width: 200px;
104
+ background: #fff;
105
+ box-shadow: rgba(158, 161, 165, 0.4) 0px 2px 12px 0px;
106
+ }
107
+
108
+ .tg-container--selected {
109
+ box-shadow: 0 2px 16px 0 rgb(0 0 0 / 20%);
110
+ }
111
+
112
+ .tg-container > .header {
113
+ display: flex;
114
+ justify-content: space-between;
115
+ align-items: center;
116
+ }
117
+
118
+ .tg-container > .content {
119
+ margin-top: 10px;
120
+ white-space: normal;
121
+ word-break: break-all;
122
+ }
123
+
124
+ .tg-container > .header > .header-user {
125
+ color: #3e97eb;
126
+ }
127
+
128
+ .tg-container > .header > .header-date {
129
+ color: #c0c0c0;
130
+ padding-right: 10px;
131
+ }
132
+
133
+ .tg-container > .bg {
134
+ position: absolute;
135
+ left: 0;
136
+ top: 0;
137
+ width: 4px;
138
+ height: 100%;
139
+ }
140
+
141
+ .editor-calendar {
142
+ width: 212px;
143
+ height: 272px;
144
+ border: 1px solid #ccc;
145
+ background: #fff;
146
+ cursor: default;
147
+ user-select: none;
148
+ font-size: 12px;
149
+ }
150
+
151
+ .editor-calendar-header {
152
+ display: flex;
153
+ justify-content: space-between;
154
+ align-items: center;
155
+ line-height: 30px;
156
+ }
157
+
158
+ .editor-calendar-header-left {
159
+ display: flex;
160
+ align-items: center;
161
+ }
162
+
163
+ .editor-calendar-header-left-year {
164
+ padding: 0 5px;
165
+ }
166
+
167
+ .editor-calendar-header-left-year:hover {
168
+ background: #ccc;
169
+ }
170
+
171
+ .editor-calendar-item:hover {
172
+ background: #ccc;
173
+ }
174
+
175
+ .editor-calendar-header-left-month {
176
+ padding: 0 5px;
177
+ }
178
+
179
+ .editor-calendar-header-left-month:hover {
180
+ background: #ccc;
181
+ }
182
+
183
+ .editor-calendar-header-right {
184
+ display: flex;
185
+ align-items: center;
186
+ }
187
+
188
+ .editor-calendar-header-right-prev {
189
+ padding: 0 5px;
190
+ }
191
+
192
+ .editor-calendar-header-right-prev:hover {
193
+ background-color: #ccc;
194
+ }
195
+
196
+ .editor-calendar-header-right-next {
197
+ padding: 0 5px;
198
+ }
199
+
200
+ .editor-calendar-header-right-next:hover {
201
+ background-color: #ccc;
202
+ }
203
+
204
+ .editor-calendar-body {
205
+ display: flex;
206
+ flex-direction: column;
207
+ }
208
+
209
+ .editor-calendar-body-week {
210
+ display: flex;
211
+ }
212
+
213
+ .editor-calendar-body-week-item {
214
+ width: 30px;
215
+ height: 30px;
216
+ line-height: 30px;
217
+ text-align: center;
218
+ }
219
+
220
+ .editor-calendar-body-day {
221
+ display: flex;
222
+ flex-wrap: wrap;
223
+ }
224
+
225
+ .editor-calendar-body-day-item {
226
+ width: 30px;
227
+ height: 30px;
228
+ line-height: 30px;
229
+ text-align: center;
230
+ opacity: 0.6;
231
+ }
232
+
233
+ .editor-calendar-body-day-item--current-month {
234
+ opacity: 1;
235
+ }
236
+
237
+ .editor-calendar-body-day-item--today {
238
+ background: #2b88d8;
239
+ color: #fff;
240
+ }
241
+
242
+ .editor-calendar-item--selected {
243
+ outline: #2b88d8 1px solid;
244
+ font-weight: bold;
245
+ }
246
+
247
+ .editor-calendar-body-day-item:hover {
248
+ background-color: #ccc;
249
+ }
250
+
251
+ .editor-calendar-footer {
252
+ display: flex;
253
+ justify-content: space-between;
254
+ }
255
+
256
+ .editor-calendar-footer-right {
257
+ display: flex;
258
+ justify-content: flex-end;
259
+ align-items: center;
260
+ height: 30px;
261
+ font-size: 12px;
262
+ }
263
+
264
+ .editor-calendar-footer-right-btn {
265
+ padding: 2px 3px;
266
+ cursor: default;
267
+ user-select: none;
268
+ }
269
+
270
+ .editor-calendar-footer-right-btn:hover {
271
+ outline: 1px solid rgb(118, 142, 222);
272
+ }
273
+
274
+ .editor-calendar-footer-right-btn:active {
275
+ outline: 1px solid rgb(95, 19, 216);
276
+ }
277
+
278
+ .invert {
279
+ filter: invert(100%);
280
+ }
281
+
282
+ .editor-calendar-month {
283
+ width: 210px;
284
+ height: 180px;
285
+ border: 1px solid #ccc;
286
+ background: #fff;
287
+ cursor: default;
288
+ }
289
+
290
+ .editor-calendar-month-header {
291
+ display: flex;
292
+ justify-content: space-between;
293
+ align-items: center;
294
+ height: 30px;
295
+ }
296
+
297
+ .editor-calendar-month-header-left {
298
+ display: flex;
299
+ align-items: center;
300
+ }
301
+
302
+ .editor-calendar-month-header-left-year {
303
+ padding-left: 10px;
304
+ }
305
+
306
+ .editor-calendar-month-header-right {
307
+ display: flex;
308
+ align-items: center;
309
+ }
310
+
311
+ .editor-calendar-month-header-right-prev {
312
+ padding: 0 5px;
313
+ }
314
+
315
+ .editor-calendar-month-header-right-next {
316
+ padding: 0 5px;
317
+ }
318
+
319
+ .editor-calendar-month-body {
320
+ display: flex;
321
+ flex-direction: column;
322
+ }
323
+
324
+ .editor-calendar-month-body-month {
325
+ display: flex;
326
+ flex-wrap: wrap;
327
+ }
328
+
329
+ .editor-calendar-month-body-month-item {
330
+ width: 52px;
331
+ height: 50px;
332
+ line-height: 50px;
333
+ text-align: center;
334
+ }
335
+
336
+ .editor-calendar-month-body-month-item--current {
337
+ outline: #2b88d8 1px solid;
338
+ font-weight: bold;
339
+ }
340
+
341
+ .editor-calendar-year {
342
+ width: 210px;
343
+ height: 210px;
344
+ border: 1px solid #ccc;
345
+ background: #fff;
346
+ cursor: default;
347
+ }
348
+
349
+ .editor-calendar-year-header {
350
+ display: flex;
351
+ justify-content: space-between;
352
+ align-items: center;
353
+ height: 30px;
354
+ }
355
+
356
+ .editor-calendar-year-header-left {
357
+ display: flex;
358
+ align-items: center;
359
+ }
360
+
361
+ .editor-calendar-year-header-left-year {
362
+ padding: 0 5px;
363
+ }
364
+
365
+ .editor-calendar-year-header-right {
366
+ display: flex;
367
+ align-items: center;
368
+ }
369
+
370
+ .editor-calendar-year-header-right-prev {
371
+ padding: 0 5px;
372
+ }
373
+
374
+ .editor-calendar-year-header-right-next {
375
+ padding: 0 5px;
376
+ }
377
+
378
+ .editor-calendar-year-body {
379
+ display: flex;
380
+ flex-direction: column;
381
+ }
382
+
383
+ .editor-calendar-year-body-year {
384
+ display: flex;
385
+ flex-wrap: wrap;
386
+ }
387
+
388
+ .editor-calendar-year-body-year-item {
389
+ width: 52px;
390
+ height: 36px;
391
+ line-height: 36px;
392
+ text-align: center;
393
+ }
394
+
395
+ .editor-contextmenu {
396
+ z-index: 1000;
397
+ position: absolute;
398
+ background: white;
399
+ box-shadow: rgba(158, 161, 165, 0.4) 0px 2px 12px 0px;
400
+ }
401
+
402
+ .editor-overlays-menus {
403
+ font-size: 14px;
404
+ font-family: "宋体", serif;
405
+ margin: 0;
406
+ cursor: pointer;
407
+ padding: 0;
408
+ list-style: none;
409
+ user-select: none;
410
+ }
411
+
412
+ .editor-overlays-menus {
413
+ padding: 3px;
414
+ }
415
+
416
+ .editor-overlays-menus > li {
417
+ padding: 8px 12px;
418
+ display: flex;
419
+ gap: 6px;
420
+ align-items: center;
421
+ word-break: keep-all;
422
+ border-bottom: 1px solid #ccc; /* 在每个列表项的底部添加一条边框线 */
423
+ position: relative;
424
+ }
425
+ .editor-overlays-menus > li > ul {
426
+ display: none;
427
+ position: absolute;
428
+ left: calc(100%);
429
+ top: 0;
430
+ z-index: 1;
431
+ background: #fff;
432
+ box-shadow: rgba(158, 161, 165, 0.4) 0px 2px 12px 0px;
433
+ }
434
+ .editor-overlays-menus .sub:after {
435
+ content: "▸";
436
+ margin-left: auto;
437
+ }
438
+ .editor-overlays-menus > li:hover > ul {
439
+ display: block;
440
+ }
441
+
442
+ .editor-overlays-menus > li:hover {
443
+ background-color: #ccc;
444
+ }
445
+
446
+ .editor-overlays-menus > li:last-child {
447
+ border-bottom: none; /* 去掉最后一个列表项的底部边框线 */
448
+ }
449
+
450
+ /*.scale-container > *{*/
451
+ /* transform-origin: center top;*/
452
+ /*}*/
453
+
454
+
455
+ .editor-calendar-footer-left {
456
+ display: flex;
457
+ }
458
+
459
+ .editor-calendar-footer-left-time {
460
+ outline: none;
461
+ width: 110px;
462
+ text-align: center;
463
+ padding: 0;
464
+ margin: 0;
465
+ font-size: 14px;
466
+ }
467
+
468
+ .editor-input-cursor {
469
+ position: absolute;
470
+ width: 1.6px;
471
+ padding: 0;
472
+ border: none;
473
+ outline: none;
474
+ background: black;
475
+ pointer-events: none;
476
+ opacity: 0;
477
+ animation: editor-cursor-blink 1s infinite steps(1, start);
478
+ }
479
+
480
+ @keyframes editor-cursor-blink {
481
+ 0% {
482
+ opacity: 1;
483
+ }
484
+ 50% {
485
+ opacity: 0;
486
+ }
487
+ 100% {
488
+ opacity: 1;
489
+ }
490
+ }
491
+
492
+ .doc-triangle {
493
+ position: absolute;
494
+ width: 0;
495
+ height: 0;
496
+ border-left: 5px solid transparent;
497
+ border-right: 5px solid transparent;
498
+ border-bottom: 10px solid red; /* 修改颜色 */
499
+ }
500
+
501
+ .doc-triangle-line {
502
+ position: absolute;
503
+ height: 1px;
504
+ background: red;
505
+ transform-origin: top left;
506
+ }
507
+
508
+ .data-list-container {
509
+ min-width: 100px;
510
+ background-color: white;
511
+ z-index: 1000;
512
+ box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
513
+ user-select: none;
514
+ }
515
+ .editor-suggestions-container {
516
+ z-index: 1000;
517
+ position: absolute;
518
+ background: white;
519
+ box-shadow: rgba(158, 161, 165, 0.4) 0px 2px 12px 0px;
520
+ max-height: 300px;
521
+ overflow: auto;
522
+ }
523
+
524
+ .editor-suggestions {
525
+ font-size: 14px;
526
+ font-family: "宋体", serif;
527
+ margin: 0;
528
+ cursor: pointer;
529
+ padding: 0;
530
+ list-style: none;
531
+ user-select: none;
532
+ }
533
+
534
+ .editor-suggestions {
535
+ padding: 3px;
536
+ }
537
+
538
+ .editor-suggestions > li {
539
+ padding: 8px 12px;
540
+ display: flex;
541
+ gap: 6px;
542
+ align-items: center;
543
+ word-break: keep-all;
544
+ border-bottom: 1px solid #ccc; /* 在每个列表项的底部添加一条边框线 */
545
+ position: relative;
546
+ }
547
+
548
+ .editor-suggestions > li:hover {
549
+ background-color: #eee;
550
+ }
551
+ .editor-suggestions > li.hovered {
552
+ background-color: #ccc;
553
+ }
554
+ .editor-suggestions > li:last-child {
555
+ border-bottom: none; /* 去掉最后一个列表项的底部边框线 */
556
+ }
557
+ .doc-rule {
558
+ position: absolute;
559
+ font-size: 0;
560
+ background: white;
561
+ box-shadow: rgba(158, 161, 165, 0.4) 0px 2px 12px 0px;
562
+ cursor: default;
563
+ left: 0;
564
+ top: 0;
565
+ }
566
+ .rule-thumb-container{
567
+ position: absolute;
568
+ cursor: pointer;
569
+ }
570
+ .rule-thumb-top{
571
+ top:0;
572
+ }
573
+ .rule-thumb-left{
574
+ top: calc(100% - 10px);
575
+ }
576
+
577
+ .rule-wrapper{
578
+ position: absolute;
579
+ transform-origin: 0px 0px;
580
+ top: 0;
581
+ }
582
+
583
+ .editor-search-box {
584
+ position: absolute;
585
+ top: 0;
586
+ left: 0;
587
+ display: flex;
588
+ align-items: center;
589
+ background-color: #f3f3f3;
590
+ padding: 2px;
591
+ color: #333;
592
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
593
+ }
594
+
595
+ .editor-search-box .search-input {
596
+ flex-grow: 1;
597
+ padding: 2px;
598
+ margin-right: 4px;
599
+ border: 1px solid #ccc;
600
+ border-radius: 4px;
601
+ color: #333;
602
+ background-color: white;
603
+ font-size: 14px;
604
+ }
605
+
606
+ .editor-search-box .icon-button {
607
+ background-color: transparent;
608
+ border: none;
609
+ color: #666;
610
+ cursor: pointer;
611
+ display: flex;
612
+ align-items: center;
613
+ justify-content: center;
614
+ padding: 2px;
615
+ }
616
+
617
+ .editor-search-box .icon-button:hover {
618
+ background-color: #e0e0e0;
619
+ color: #333;
620
+ }
621
+
622
+ .editor-search-box .search-count {
623
+ margin: 0 8px;
624
+ color: #666;
625
+ font-size: 14px;
626
+ }
627
+
628
+ .editor-search-box .material-icons {
629
+ font-size: 16px;
630
+ }
631
+
632
+ .editor-search-box input:focus,
633
+ button:focus {
634
+ outline: none;
635
+ }
636
+
637
+ .editor-search-box input::placeholder {
638
+ color: #aaa;
639
639
  }