markupeditor 0.9.0

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.
@@ -0,0 +1,651 @@
1
+ /* Spacing at the top */
2
+ /* Note that toolbar-overlay below is also set to these values */
3
+
4
+ .Markup-searchbar-showing {
5
+ height: 38px;
6
+ top: 76px;
7
+ }
8
+
9
+ /* The wrapper lets us automatically embed a toolbar and scroll under it */
10
+ .Markup-toolbar-wrapper {
11
+ margin-right: -12px; /* Prevent side scroll even when menu fits */
12
+ height: inherit;
13
+ overflow-y: scroll;
14
+ position: relative;
15
+ }
16
+
17
+ /* We add Markup-prompt-showing to the wrapper to prevent scroll, and remove it when done */
18
+ .Markup-prompt-showing {
19
+ overflow-y: hidden;
20
+ }
21
+
22
+ /* Z-indexes in one place */
23
+
24
+ .body-content {
25
+ z-index: 1;
26
+ }
27
+
28
+ .Markup-prompt-overlay {
29
+ z-index: 2;
30
+ }
31
+
32
+ .Markup-prompt, .Markup-selection {
33
+ z-index: 3;
34
+ }
35
+
36
+ .Markup-searchbar {
37
+ z-index: 4;
38
+ }
39
+
40
+ .Markup-toolbar, .Markup-toolbar-more {
41
+ z-index: 5;
42
+ }
43
+
44
+ .Markup-toolbar-overlay {
45
+ z-index: 6;
46
+ }
47
+
48
+ .Markup-menu-dropdown-menu {
49
+ z-index: 7;
50
+ }
51
+
52
+ /* Toolbar, menu item, and dropdown styling */
53
+
54
+ .Markup-toolbar {
55
+ display: inline-flex;
56
+ position: sticky;
57
+ overflow: visible;
58
+ width: 100%;
59
+ font-size: 24px;
60
+ vertical-align: middle;
61
+ border-top-left-radius: inherit;
62
+ border-top-right-radius: inherit;
63
+ top: 0;
64
+ max-height: 38px;
65
+ padding: 2px 8px;
66
+ color: blue;
67
+ background: rgba(250, 249, 246, 0.95);
68
+ border-bottom: 1px solid lightgray;
69
+ -moz-box-sizing: border-box;
70
+ box-sizing: border-box;
71
+ }
72
+ @media (prefers-color-scheme: dark) {
73
+ .Markup-toolbar {
74
+ color: rgb(250, 249, 246);
75
+ background: rgba(40, 40, 43, 0.9);
76
+ border-bottom: 1px solid gray;
77
+ }
78
+ }
79
+
80
+ .Markup-menuitem {
81
+ display: inline-block;
82
+ flex-shrink: 0; /* Otherwise, the drop-downs with icons shrink */
83
+ overflow-y: visible;
84
+ vertical-align: middle;
85
+ min-width: 28px;
86
+ height: 28px;
87
+ cursor: pointer;
88
+ margin-right: 4px;
89
+ border-radius: 4px;
90
+ color: blue;
91
+ border: 1px solid blue;
92
+ background: white;
93
+ fill: blue;
94
+ }
95
+ @media (prefers-color-scheme: dark) {
96
+ .Markup-menuitem {
97
+ color: lightblue;
98
+ border: 1px solid lightblue;
99
+ /* border: 1px solid #4183c4; */
100
+ background: black;
101
+ fill: lightblue;
102
+ }
103
+ }
104
+
105
+ .Markup-menuitem-active {
106
+ fill: white;
107
+ color: white;
108
+ background: blue;
109
+ }
110
+ @media (prefers-color-scheme: dark) {
111
+ .Markup-menuitem-active {
112
+ fill: black;
113
+ color: black;
114
+ background: lightblue;
115
+ }
116
+ }
117
+
118
+ .Markup-menuitem-disabled {
119
+ cursor: default;
120
+ opacity: .3;
121
+ }
122
+ @media (prefers-color-scheme: dark) {
123
+ .Markup-menuitem-disabled {
124
+ opacity: .6;
125
+ }
126
+ }
127
+
128
+ .Markup-icon {
129
+ display: inline-block;
130
+ width: 28px;
131
+ height: 28px;
132
+ border: 0;
133
+ }
134
+
135
+ .Markup-icon span {
136
+ vertical-align: middle;
137
+ }
138
+
139
+ .Markup-icon svg {
140
+ padding: 2px;
141
+ border: 0;
142
+ fill: inherit;
143
+ }
144
+
145
+ .Markup-menuseparator {
146
+ display: inline-block;
147
+ vertical-align: middle;
148
+ height: 28px;
149
+ border-right: 1px solid lightgray;
150
+ margin-right: 4px;
151
+ }
152
+ @media (prefers-color-scheme: dark) {
153
+ .Markup-menuseparator {
154
+ border-right: 1px solid gray;
155
+ }
156
+ }
157
+
158
+ .Markup-menu-disabled .Markup-icon {
159
+ cursor: default;
160
+ }
161
+
162
+ .Markup-menu-dropdown, .Markup-menu-dropdown-menu {
163
+ background: inherit;
164
+ text-align: left;
165
+ white-space: nowrap;
166
+ }
167
+
168
+ .Markup-menu-dropdown span {
169
+ vertical-align: middle;
170
+ }
171
+
172
+ .Markup-menu-dropdown-icon span {
173
+ vertical-align: middle;
174
+ }
175
+
176
+ .Markup-menu-dropdown-wrap {
177
+ display: inline-block;
178
+ padding: 0 4px;
179
+ min-width: 3.0em;
180
+ height: inherit;
181
+ border-radius: 4px;
182
+ background: inherit;
183
+ }
184
+
185
+ .Markup-menu-dropdown-icon-wrap {
186
+ display: inline-block;
187
+ padding-right: 4px;
188
+ width: 1.8em;
189
+ height: inherit;
190
+ border-radius: 4px;
191
+ background: inherit;
192
+ }
193
+
194
+ .Markup-menu-dropdown-icon-wrap-noindicator {
195
+ display: inline-flex;
196
+ padding-right: 4px;
197
+ width: 1em;
198
+ height: inherit;
199
+ border-radius: 4px;
200
+ background: inherit;
201
+ }
202
+
203
+ .Markup-menu-dropdown {
204
+ display: inline-flex;
205
+ justify-content: space-between;
206
+ min-width: 3.0em;
207
+ height: inherit;
208
+ background: inherit;
209
+ position: absolute;
210
+ }
211
+
212
+ .Markup-menu-dropdown-icon {
213
+ display: inline-flex;
214
+ justify-content: space-between;
215
+ width: 1.8em;
216
+ cursor: pointer;
217
+ position: absolute;
218
+ }
219
+
220
+ .Markup-menu-dropdown-indicator, .Markup-menu-dropdown-icon-indicator{
221
+ opacity: .6;
222
+ }
223
+
224
+ .Markup-tooltip .Markup-menu {
225
+ width: -webkit-fit-content;
226
+ width: fit-content;
227
+ white-space: pre;
228
+ }
229
+
230
+ .Markup-menu-dropdown-menu, .Markup-menu-submenu {
231
+ position: absolute;
232
+ background: inherit;
233
+ padding: 2px;
234
+ background: inherit;
235
+ border: 1px solid gray;
236
+ }
237
+ @media (prefers-color-scheme: dark) {
238
+ .Markup-menu-dropdown-menu, .Markup-menu-submenu {
239
+ border: 1px solid lightgray;
240
+ }
241
+ }
242
+
243
+ .Markup-menu-dropdown-menu {
244
+ margin-top: calc(1em + 6px);
245
+ min-width: 4em;
246
+ }
247
+
248
+ .Markup-menu-dropdown-item {
249
+ cursor: pointer;
250
+ padding: 2px 8px 2px 4px;
251
+ }
252
+
253
+ /* Used to overlfow and ellipsis-truncate text in Dropdown menu items */
254
+ .Markup-menuitem-clipped {
255
+ white-space: nowrap; /* Required for text-overflow */
256
+ overflow-x: hidden; /* Required for text-overflow */
257
+ max-width: 30em;
258
+ text-overflow: ellipsis;
259
+ }
260
+
261
+ .Markup-menu-dropdown-item:hover, .Markup-menu-submenu-wrap:hover {
262
+ background: #f2f2f2;
263
+ }
264
+ @media (prefers-color-scheme: dark) {
265
+ .Markup-menu-dropdown-item:hover, .Markup-menu-submenu-wrap:hover {
266
+ background: rgb(80, 80, 80);
267
+ }
268
+ }
269
+
270
+ .Markup-menu-dropdown-item p,
271
+ .Markup-menu-dropdown-item h1,
272
+ .Markup-menu-dropdown-item h2,
273
+ .Markup-menu-dropdown-item h3,
274
+ .Markup-menu-dropdown-item h4,
275
+ .Markup-menu-dropdown-item h5,
276
+ .Markup-menu-dropdown-item h6,
277
+ .Markup-menu-dropdown-item pre {
278
+ padding: 0;
279
+ margin: 0;
280
+ min-height: 24px;
281
+ }
282
+
283
+ .Markup-stylelabel {
284
+ display: flex;
285
+ justify-content: space-between;
286
+ align-items: center;
287
+ white-space: pre;
288
+ width: 100%;
289
+ }
290
+
291
+ .Markup-stylelabel-keymap {
292
+ display: flex;
293
+ justify-content: flex-end;
294
+ font-size: 1.0rem;
295
+ font-weight: normal;
296
+ color: gray;
297
+ }
298
+
299
+ .Markup-menu-submenu-wrap:hover .Markup-menu-submenu, .Markup-menu-submenu-wrap-active .Markup-menu-submenu {
300
+ display: block;
301
+ }
302
+
303
+ .Markup-menu-submenu-wrap {
304
+ position: relative;
305
+ margin-right: -4px;
306
+ background: inherit;
307
+ }
308
+
309
+ .Markup-menu-submenu {
310
+ display: none;
311
+ min-width: 4em;
312
+ left: 100%;
313
+ top: -5px;
314
+ /* background cannot be inherited because of hover highlighting in dropdown */
315
+ background: white;
316
+ }
317
+ @media (prefers-color-scheme: dark) {
318
+ .Markup-menu-submenu {
319
+ /* background cannot be inherited because of hover highlighting in dropdown */
320
+ background: black;
321
+ }
322
+ }
323
+
324
+ .Markup-menu-submenu-label:after {
325
+ content: "";
326
+ border-top: 4px solid transparent;
327
+ border-bottom: 4px solid transparent;
328
+ border-left: 4px solid currentColor;
329
+ opacity: .6;
330
+ position: absolute;
331
+ right: 4px;
332
+ top: calc(50% - 4px);
333
+ }
334
+
335
+ .Markup-selection {
336
+ position: absolute;
337
+ border: 1px solid blue;
338
+ background: transparent;
339
+ }
340
+ @media (prefers-color-scheme: dark) {
341
+ .Markup-selection {
342
+ border: 1px solid lightblue;
343
+ }
344
+ }
345
+
346
+ /* Toolbar-more styling */
347
+
348
+ .Markup-toolbar-more {
349
+ display: inline-flex;
350
+ position: sticky;
351
+ overflow: visible;
352
+ width: 100%;
353
+ font-size: 24px;
354
+ vertical-align: middle;
355
+ border-top-left-radius: inherit;
356
+ border-top-right-radius: inherit;
357
+ top: 35px;
358
+ max-height: 38px;
359
+ padding: 2px 8px;
360
+ color: blue;
361
+ background: rgba(250, 249, 246, 0.95);
362
+ border-bottom: 1px solid lightgray;
363
+ -moz-box-sizing: border-box;
364
+ box-sizing: border-box;
365
+ }
366
+ @media (prefers-color-scheme: dark) {
367
+ .Markup-toolbar-more {
368
+ color: rgb(250, 249, 246);
369
+ background: rgba(40, 40, 43, 0.9);
370
+ border-bottom: 1px solid gray;
371
+ }
372
+ }
373
+
374
+ /* Searchbar styling */
375
+
376
+ .Markup-searchbar {
377
+ display: inline-block;
378
+ font-size: 24px;
379
+ vertical-align: middle;
380
+ position: sticky;
381
+ top: 35px;
382
+ width: 100%;
383
+ line-height: 30px;
384
+ height: 37px;
385
+ color: blue;
386
+ background: rgba(250, 249, 246, 0.95);
387
+ border-bottom: 1px solid lightgray;
388
+ -moz-box-sizing: border-box;
389
+ box-sizing: border-box;
390
+ overflow: hidden;
391
+ }
392
+ @media (prefers-color-scheme: dark) {
393
+ .Markup-searchbar {
394
+ color: rgb(250, 249, 246);
395
+ background: rgba(40, 40, 43, 0.9);
396
+ border-bottom: 1px solid gray;
397
+ }
398
+ }
399
+
400
+ .Markup-searchbar input {
401
+ appearance: none; /* Otherwise, in Safari/WebKit, the height is small and fixed */
402
+ position: relative;
403
+ font-size: 18px;
404
+ line-height: 30px;
405
+ height: 30px;
406
+ width: calc(100% - 128px);
407
+ margin: 0 8px;
408
+ padding: 0 4px;
409
+ outline: none;
410
+ -moz-box-sizing: border-box;
411
+ box-sizing: border-box;
412
+ border: 1px solid lightgray;
413
+ border-radius: 6px;
414
+ }
415
+ @media (prefers-color-scheme: dark) {
416
+ .Markup-searchbar input {
417
+ color: rgb(250, 249, 246);
418
+ background: rgb(40, 40, 43);
419
+ border: 1px solid gray;
420
+ }
421
+ }
422
+
423
+ .Markup-searchbar .Markup-searchbar-status {
424
+ position: absolute;
425
+ display: flex;
426
+ justify-content: flex-end;
427
+ align-items: center;
428
+ white-space: nowrap;
429
+ font-size: 12px;
430
+ overflow-x: visible;
431
+ height: 28px;
432
+ top: 5px;
433
+ left: calc(100% - 13em);
434
+ width: 1px;
435
+ color: gray;
436
+ user-select: none;
437
+ }
438
+
439
+ /* Dialog/prompt styling for insert/edit actions */
440
+
441
+ .Markup-prompt-overlay {
442
+ position: fixed;
443
+ top: 0;
444
+ left: 0;
445
+ width: 100%;
446
+ height: 100%;
447
+ background-color: rgba(0, 0, 0, 0.2);
448
+ }
449
+ @media (prefers-color-scheme: dark) {
450
+ .Markup-prompt-overlay {
451
+ background-color: rgba(255, 255, 255, 0.2);
452
+ }
453
+ }
454
+
455
+ .Markup-toolbar-overlay {
456
+ position: absolute;
457
+ top: 0;
458
+ left: 0;
459
+ width: 100%;
460
+ background-color: rgba(0, 0, 0, 0.1);
461
+ }
462
+ @media (prefers-color-scheme: dark) {
463
+ .Markup-toolbar-overlay {
464
+ background-color: rgba(255, 255, 255, 0.1);
465
+ }
466
+ }
467
+
468
+ .Markup-toolbar-overlay.Markup-searchbar-hidden {
469
+ height: 38px;
470
+ }
471
+
472
+ .Markup-toolbar-overlay.Markup-searchbar-showing {
473
+ height: 76px;
474
+ }
475
+
476
+ .Markup-prompt {
477
+ margin: 0;
478
+ font-size: 18px;
479
+ background: white;
480
+ padding: 8px;
481
+ border: 1px solid silver;
482
+ position: absolute;
483
+ border-radius: 3px;
484
+ box-shadow: -.5px 2px 5px rgba(0, 0, 0, 0.2);
485
+ }
486
+ @media (prefers-color-scheme: dark) {
487
+ .Markup-prompt {
488
+ background: black;
489
+ box-shadow: -.5px 2px 5px rgba(255, 255, 255, 0.8);
490
+ }
491
+ }
492
+
493
+ .Markup-prompt-link {
494
+ height: 96px;
495
+ width: 300px;
496
+ }
497
+
498
+ .Markup-prompt-image {
499
+ height: 130px;
500
+ width: 300px;
501
+ }
502
+
503
+ .Markup-prompt img {
504
+ display: inline-block;
505
+ vertical-align: middle;
506
+ min-width: 28px;
507
+ height: 28px;
508
+ margin-right: 4px;
509
+ }
510
+
511
+ .Markup-prompt p {
512
+ margin: 0 0 4px 0;
513
+ font-weight: normal;
514
+ color: black;
515
+ }
516
+ @media (prefers-color-scheme: dark) {
517
+ .Markup-prompt p {
518
+ color: white;
519
+ }
520
+ }
521
+
522
+ .Markup-prompt input[type="text"] {
523
+ font-size: 100%;
524
+ line-height: 28px;
525
+ margin-top: 2px;
526
+ padding: 1px 4px;
527
+ width: 100%;
528
+ appearance: none;
529
+ background: #eee;
530
+ outline: none;
531
+ -moz-box-sizing: border-box;
532
+ box-sizing: border-box;
533
+ border: 1px solid lightgray;
534
+ border-radius: 6px;
535
+ }
536
+ @media (prefers-color-scheme: dark) {
537
+ .Markup-prompt input[type="text"] {
538
+ color: rgb(250, 249, 246);
539
+ background: rgb(40, 40, 43);
540
+ border: 1px solid gray;
541
+ }
542
+ }
543
+
544
+ .Markup-prompt input.invalid {
545
+ color: red;
546
+ }
547
+ @media (prefers-color-scheme: dark) {
548
+ .Markup-prompt input.invalid {
549
+ color: pink;
550
+ }
551
+ }
552
+
553
+ .Markup-prompt-buttons {
554
+ display: flex;
555
+ vertical-align: middle;
556
+ justify-content: space-between;
557
+ justify-items: center;
558
+ line-height: 28px;
559
+ height: 28px;
560
+ margin-top: 8px;
561
+ margin-bottom: 8px;
562
+ }
563
+
564
+ .Markup-prompt-buttongroup {
565
+ flex-shrink: 0;
566
+ }
567
+
568
+ .Markup-prompt-buttons img {
569
+ aspect-ratio: auto;
570
+ height: auto;
571
+ object-fit: contain;
572
+ }
573
+
574
+ .Markup-prompt-buttons .Markup-menuitem {
575
+ display: inline-flex;
576
+ padding-right: 4px;
577
+ padding-left: 4px;
578
+ }
579
+
580
+ /* The buttongroup contains OK and Cancel menuitems on the right */
581
+ .Markup-prompt-buttongroup .Markup-menuitem {
582
+ margin-right: 0;
583
+ margin-left: 4px;
584
+ }
585
+
586
+ /* .Markup-menu-tablesizer is a specialized submenu */
587
+ .Markup-menu-tablesizer {
588
+ display: none;
589
+ grid-template-columns: repeat(4, 1fr);
590
+ grid-auto-rows: 18px;
591
+ row-gap: 1px;
592
+ column-gap: 1px;
593
+ padding: 0;
594
+ left: 100%;
595
+ top: -5px;
596
+ /* background cannot be inherited because of hover highlighting in dropdown */
597
+ background: white;
598
+ }
599
+ @media (prefers-color-scheme: dark) {
600
+ .Markup-menu-tablesizer {
601
+ /* background cannot be inherited because of hover highlighting in dropdown */
602
+ background: black;
603
+ }
604
+ }
605
+
606
+ .Markup-menu-submenu-wrap:hover .Markup-menu-tablesizer, .Markup-menu-submenu-wrap-active .Markup-menu-tablesizer {
607
+ display: grid;
608
+ }
609
+
610
+ .Markup-menu-dropdown-menu, .Markup-menu-tablesizer {
611
+ position: absolute;
612
+ background: inherit;
613
+ padding: 2px;
614
+ background: inherit;
615
+ border: 1px solid gray;
616
+ }
617
+ @media (prefers-color-scheme: dark) {
618
+ .Markup-menu-dropdown-menu, .Markup-menu-submenu {
619
+ border: 1px solid lightgray;
620
+ }
621
+ }
622
+
623
+ .Markup-menu-tablesizer .Markup-menu-dropdown-item {
624
+ -moz-box-sizing: border-box;
625
+ box-sizing: border-box;
626
+ border: 1px solid blue;
627
+ width: 18px;
628
+ height: 18px;
629
+ padding: 0;
630
+ font-size: 13px;
631
+ }
632
+ @media (prefers-color-scheme: dark) {
633
+ .Markup-menu-tablesizer .Markup-menu-dropdown-item {
634
+ border: 1px solid lightblue;
635
+ }
636
+ }
637
+
638
+ .Markup-menu-tablesizer .Markup-menuitem-active {
639
+ height: 13px;
640
+ padding-top: 3px;
641
+ fill: black;
642
+ color: black;
643
+ background: blue;
644
+ }
645
+ @media (prefers-color-scheme: dark) {
646
+ .Markup-menu-tablesizer .Markup-menuitem-active {
647
+ fill: black;
648
+ color: black;
649
+ background: lightblue;
650
+ }
651
+ }