@zuilib/text-editor 0.5.0 → 0.7.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.
package/dist/styles.css CHANGED
@@ -11,21 +11,62 @@
11
11
  min-height: 100%;
12
12
  }
13
13
 
14
+ /*
15
+ * Text measure (opt in). `--zui-text-editor-measure` — a CSS length, unset
16
+ * by default — caps the text column. The pane's gutter grows from the base
17
+ * 2rem to centre that column, and `--zui-text-editor-bleed` is how far a
18
+ * full-width block extends past the column on each side. With the measure
19
+ * unset both resolve to the previous layout (2rem gutter, no bleed).
20
+ *
21
+ * The pane is a container so `cqw` measures *its* width in every
22
+ * descendant, whatever the descendant's own width; the outline sidebar is
23
+ * a sibling, so full-width blocks stop short of it.
24
+ */
14
25
  .zui-text-editor-main {
15
26
  position: relative;
16
27
  display: flex;
17
28
  flex-direction: column;
18
29
  flex: 1;
19
30
  min-width: 0;
31
+ container-type: inline-size;
32
+ --zui-text-editor-gutter: max(
33
+ 2rem,
34
+ calc((100cqw - var(--zui-text-editor-measure, 100cqw)) / 2)
35
+ );
36
+ --zui-text-editor-bleed: calc(var(--zui-text-editor-gutter) - 2rem);
20
37
  }
21
38
 
22
39
  .zui-text-editor-content {
23
40
  flex: 1;
24
41
  min-height: 100%;
25
- padding: 1.5rem 2rem;
42
+ padding: 1.5rem var(--zui-text-editor-gutter, 2rem);
26
43
  outline: none;
27
44
  }
28
45
 
46
+ /*
47
+ * Block width. Every top-level block sits in the text column and may bleed
48
+ * past it by `--zui-text-editor-block-bleed` (0 unless set). Tables and
49
+ * drawings default it to the pane's bleed (`full`); their `text` and
50
+ * `content` settings pin it to 0 — as an inline style on the table (see
51
+ * tableSettings.ts) and a class on the drawing canvas. Zero-specificity
52
+ * selectors, so one class rule overrides any block kind, e.g.
53
+ * `.zui-code { --zui-text-editor-block-bleed: var(--zui-text-editor-bleed) }`.
54
+ */
55
+ :where(.zui-text-editor-content > *) {
56
+ margin-inline: calc(-1 * var(--zui-text-editor-block-bleed, 0px));
57
+ }
58
+
59
+ :where(.zui-table, .zui-drawing) {
60
+ --zui-text-editor-block-bleed: var(--zui-text-editor-bleed, 0px);
61
+ }
62
+
63
+ :where(
64
+ .zui-drawing:has(> .is-text-width),
65
+ .zui-drawing:has(> .is-content-width)
66
+ ) {
67
+ --zui-text-editor-block-bleed: 0px;
68
+ }
69
+
29
70
  /* Outline (table of contents) sidebar */
30
71
  .zui-text-editor-outline {
31
72
  position: sticky;
@@ -115,7 +156,8 @@
115
156
 
116
157
  .zui-text-editor-fold {
117
158
  position: absolute;
118
- left: 0.45rem;
159
+ /* Just left of the text column; 0.45rem with the default gutter */
160
+ left: calc(var(--zui-text-editor-gutter, 2rem) - 1.55rem);
119
161
  display: inline-flex;
120
162
  align-items: center;
121
163
  justify-content: center;
@@ -155,7 +197,7 @@
155
197
  .zui-text-editor-placeholder {
156
198
  position: absolute;
157
199
  top: 1.5rem;
158
- left: 2rem;
200
+ left: var(--zui-text-editor-gutter, 2rem);
159
201
  pointer-events: none;
160
202
  user-select: none;
161
203
  }
@@ -209,7 +251,7 @@
209
251
  .zui-frontmatter {
210
252
  display: block;
211
253
  white-space: pre-wrap;
212
- margin: 0 0 1rem;
254
+ margin-block: 0 1rem;
213
255
  padding: 0.75rem 1rem;
214
256
  border: 1px solid currentColor;
215
257
  border-radius: 0.375rem;
@@ -272,11 +314,15 @@
272
314
  background: color-mix(in srgb, currentColor 15%, transparent);
273
315
  }
274
316
 
275
- /* Tables — artifact-style: rounded outer border, subtle header, tight rules */
317
+ /*
318
+ * Tables — artifact-style: rounded outer border, subtle header, tight rules.
319
+ * Width follows the block bleed above (inline margins come from the shared
320
+ * block rule); a `content` table sets `width: auto` inline instead.
321
+ */
276
322
  .zui-table {
277
- width: 100%;
278
- max-width: 100%;
279
- margin: 1rem 0;
323
+ width: calc(100% + 2 * var(--zui-text-editor-block-bleed, 0px));
324
+ max-width: calc(100% + 2 * var(--zui-text-editor-block-bleed, 0px));
325
+ margin-block: 1rem;
280
326
  border-collapse: separate;
281
327
  border-spacing: 0;
282
328
  border: 1px solid color-mix(in srgb, currentColor 15%, transparent);
@@ -316,7 +362,7 @@
316
362
  .zui-table-selected,
317
363
  .zui-table-cell.zui-table-selected {
318
364
  outline: none;
319
- background: color-mix(in srgb, #6965db 14%, transparent);
365
+ background: color-mix(in srgb, var(--primary, #6965db) 14%, transparent);
320
366
  }
321
367
 
322
368
  /*
@@ -345,24 +391,57 @@
345
391
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
346
392
  }
347
393
 
348
- /* Drawing canvas */
394
+ /*
395
+ * Drawing canvas.
396
+ *
397
+ * Every color, radius and shadow of the canvas chrome comes from a
398
+ * `--zui-drawing-*` custom property. They default to the ZUI core theme
399
+ * tokens (`--primary`, `--foreground`, `--border`, …) so the canvas follows
400
+ * the host theme, light and dark, and consumers override them on
401
+ * `.zui-drawing-canvas` (or any ancestor) to restyle without touching
402
+ * selectors. `--zui-drawing-surface` and `--zui-drawing-grid` are the
403
+ * pre-filter colors of the drawing area: in dark mode the whole area is
404
+ * passed through `--zui-drawing-dark-filter` so stored shape colors stay
405
+ * theme-agnostic (set the filter to `none` to opt out).
406
+ */
349
407
  .zui-drawing {
350
- margin: 1rem 0;
408
+ margin-block: 1rem;
351
409
  }
352
410
 
353
411
  .zui-drawing-canvas {
354
- --zui-drawing-accent: #6965db;
412
+ --zui-drawing-accent: var(--primary, #3b82f6);
413
+ --zui-drawing-foreground: var(--foreground, #0a0a0a);
414
+ --zui-drawing-muted-foreground: var(--muted-foreground, #71717a);
415
+ --zui-drawing-border: var(--border, #e4e4e7);
416
+ --zui-drawing-chrome: var(--background, #ffffff);
417
+ --zui-drawing-popover: var(--popover, #ffffff);
418
+ --zui-drawing-popover-foreground: var(--popover-foreground, var(--zui-drawing-foreground));
419
+ --zui-drawing-danger: var(--destructive, #ef4444);
420
+ --zui-drawing-success: var(--success, #22c55e);
421
+ --zui-drawing-radius: var(--radius-lg, 0.75rem);
422
+ --zui-drawing-control-radius: var(--radius, 0.375rem);
423
+ --zui-drawing-shadow: var(--shadow-medium, 0 4px 6px -1px rgba(0, 0, 0, 0.1));
424
+ --zui-drawing-font: ui-sans-serif, system-ui, sans-serif;
425
+ --zui-drawing-surface: #ffffff;
426
+ --zui-drawing-grid: rgba(0, 0, 0, 0.09);
427
+ --zui-drawing-grid-size: 20px;
428
+ --zui-drawing-dark-filter: invert(93%) hue-rotate(180deg);
429
+ --zui-drawing-hover: color-mix(in srgb, currentColor 8%, transparent);
430
+ --zui-drawing-active: color-mix(in srgb, currentColor 12%, transparent);
431
+
355
432
  position: relative;
356
- border: 1px solid color-mix(in srgb, currentColor 10%, transparent);
357
- border-radius: 0.875rem;
358
- background: #ffffff;
433
+ border: 1px solid var(--zui-drawing-border);
434
+ border-radius: var(--zui-drawing-radius);
435
+ background: var(--zui-drawing-chrome);
436
+ color: var(--zui-drawing-foreground);
437
+ font-family: var(--zui-drawing-font);
359
438
  outline: none;
360
439
  overflow: hidden;
361
- transition: box-shadow 0.18s ease, border-color 0.18s ease;
440
+ transition: box-shadow 0.15s ease, border-color 0.15s ease;
362
441
  }
363
442
 
364
443
  .zui-drawing-canvas.is-editable:focus-within {
365
- border-color: color-mix(in srgb, var(--zui-drawing-accent) 45%, transparent);
444
+ border-color: color-mix(in srgb, var(--zui-drawing-accent) 50%, var(--zui-drawing-border));
366
445
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--zui-drawing-accent) 12%, transparent);
367
446
  }
368
447
 
@@ -371,25 +450,30 @@
371
450
  max-width: 100%;
372
451
  }
373
452
 
453
+ .zui-drawing-stage {
454
+ position: relative;
455
+ }
456
+
374
457
  .zui-drawing-surface {
375
458
  display: block;
376
459
  width: 100%;
377
460
  max-width: 100%;
378
461
  touch-action: none;
379
- background-color: #ffffff;
380
- background-image: radial-gradient(circle, rgba(0, 0, 0, 0.09) 1px, transparent 1px);
381
- background-size: 20px 20px;
382
- }
383
-
384
- .zui-drawing-shape {
385
- transition: filter 0.12s ease;
462
+ font-family: var(--zui-drawing-font);
463
+ background-color: var(--zui-drawing-surface);
464
+ background-image: radial-gradient(circle, var(--zui-drawing-grid) 1px, transparent 1px);
465
+ background-size: var(--zui-drawing-grid-size) var(--zui-drawing-grid-size);
386
466
  }
387
467
 
388
- .zui-drawing-canvas.is-editable .zui-drawing-shape:hover:not(.is-selected) {
389
- filter: drop-shadow(0 0 2.5px color-mix(in srgb, var(--zui-drawing-accent) 55%, transparent));
468
+ /* Selection chrome inside the SVG: everything is drawn in `currentColor` */
469
+ .zui-drawing-selection,
470
+ .zui-drawing-bind-target {
471
+ color: var(--zui-drawing-accent);
390
472
  }
391
473
 
392
474
  .zui-drawing-handle {
475
+ fill: var(--zui-drawing-surface);
476
+ stroke: currentColor;
393
477
  filter: drop-shadow(0 1px 1.5px rgba(0, 0, 0, 0.25));
394
478
  }
395
479
 
@@ -402,6 +486,18 @@
402
486
  opacity: 1;
403
487
  }
404
488
 
489
+ .zui-drawing-label-plate {
490
+ fill: var(--zui-drawing-surface);
491
+ }
492
+
493
+ .zui-drawing-shape {
494
+ transition: filter 0.12s ease;
495
+ }
496
+
497
+ .zui-drawing-canvas.is-editable .zui-drawing-shape:hover:not(.is-selected) {
498
+ filter: drop-shadow(0 0 2.5px color-mix(in srgb, var(--zui-drawing-accent) 55%, transparent));
499
+ }
500
+
405
501
  .zui-drawing-bind-target {
406
502
  animation: zui-drawing-pulse 0.9s ease-in-out infinite alternate;
407
503
  }
@@ -418,43 +514,29 @@
418
514
  @keyframes zui-drawing-pop {
419
515
  from {
420
516
  opacity: 0;
421
- transform: translateY(4px) scale(0.98);
517
+ transform: translateY(-3px);
422
518
  }
423
519
  to {
424
520
  opacity: 1;
425
- transform: translateY(0) scale(1);
521
+ transform: translateY(0);
426
522
  }
427
523
  }
428
524
 
429
- /* Floating toolbar */
525
+ /* Header: tools row (+ contextual properties row), same idiom as the editor toolbar */
430
526
  .zui-drawing-toolbar {
431
- position: absolute;
432
- top: 0.625rem;
433
- left: 0.625rem;
434
- right: 0.625rem;
435
- z-index: 5;
436
527
  display: flex;
437
528
  flex-wrap: wrap;
438
- align-items: flex-start;
439
- gap: 0.5rem;
440
- pointer-events: none;
529
+ align-items: center;
530
+ gap: 0.125rem 0.5rem;
531
+ padding: 0.375rem 0.625rem;
532
+ border-bottom: 1px solid var(--zui-drawing-border);
533
+ background: var(--zui-drawing-chrome);
441
534
  }
442
535
 
443
- .zui-drawing-toolbar-group,
444
- .zui-drawing-props {
536
+ .zui-drawing-toolbar-group {
445
537
  display: flex;
446
538
  align-items: center;
447
539
  gap: 0.125rem;
448
- padding: 0.25rem;
449
- border: 1px solid rgba(0, 0, 0, 0.07);
450
- border-radius: 0.625rem;
451
- background: rgba(255, 255, 255, 0.88);
452
- backdrop-filter: blur(10px);
453
- -webkit-backdrop-filter: blur(10px);
454
- box-shadow:
455
- 0 1px 2px rgba(0, 0, 0, 0.05),
456
- 0 6px 20px -8px rgba(0, 0, 0, 0.18);
457
- pointer-events: auto;
458
540
  }
459
541
 
460
542
  .zui-drawing-toolbar-group-end {
@@ -464,8 +546,8 @@
464
546
  .zui-drawing-toolbar-divider {
465
547
  width: 1px;
466
548
  height: 1.125rem;
467
- margin: 0 0.25rem;
468
- background: rgba(0, 0, 0, 0.1);
549
+ margin: 0 0.375rem;
550
+ background: color-mix(in srgb, currentColor 15%, transparent);
469
551
  }
470
552
 
471
553
  .zui-drawing-tool {
@@ -473,57 +555,56 @@
473
555
  display: inline-flex;
474
556
  align-items: center;
475
557
  justify-content: center;
476
- width: 1.875rem;
477
- height: 1.875rem;
558
+ width: 1.75rem;
559
+ height: 1.75rem;
478
560
  border: none;
479
- border-radius: 0.5rem;
561
+ border-radius: var(--zui-drawing-control-radius);
480
562
  background: transparent;
481
- color: #1e1e1e;
563
+ color: inherit;
564
+ opacity: 0.65;
482
565
  cursor: pointer;
483
566
  transition:
484
567
  background-color 0.12s ease,
485
- color 0.12s ease,
486
- transform 0.12s ease;
568
+ opacity 0.12s ease;
487
569
  }
488
570
 
489
571
  .zui-drawing-tool:hover {
490
- background: rgba(0, 0, 0, 0.06);
491
- }
492
-
493
- .zui-drawing-tool:active {
494
- transform: scale(0.94);
572
+ opacity: 1;
573
+ background: var(--zui-drawing-hover);
495
574
  }
496
575
 
497
576
  .zui-drawing-tool.is-active {
498
- background: color-mix(in srgb, var(--zui-drawing-accent) 16%, transparent);
499
- color: #4a47b1;
577
+ opacity: 1;
578
+ color: var(--zui-drawing-accent);
579
+ background: color-mix(in srgb, var(--zui-drawing-accent) 14%, transparent);
500
580
  }
501
581
 
502
582
  .zui-drawing-tool.is-success {
503
- color: #2f9e44;
583
+ opacity: 1;
584
+ color: var(--zui-drawing-success);
504
585
  }
505
586
 
506
587
  .zui-drawing-tool-danger {
507
- color: #e03131;
588
+ color: var(--zui-drawing-danger);
508
589
  }
509
590
 
510
591
  .zui-drawing-tool-danger:hover {
511
- background: rgba(224, 49, 49, 0.1);
592
+ background: color-mix(in srgb, var(--zui-drawing-danger) 12%, transparent);
512
593
  }
513
594
 
514
595
  .zui-drawing-tool-more {
515
- width: 2.375rem;
596
+ width: 2.25rem;
516
597
  }
517
598
 
518
599
  .zui-drawing-caret {
519
600
  position: absolute;
520
- right: 0.3rem;
521
- bottom: 0.3rem;
601
+ right: 0.25rem;
602
+ bottom: 0.25rem;
522
603
  width: 0;
523
604
  height: 0;
524
605
  border-left: 4px solid transparent;
525
606
  border-top: 4px solid currentColor;
526
- opacity: 0.6;
607
+ opacity: 0.7;
527
608
  }
528
609
 
529
610
  .zui-drawing-more {
@@ -532,7 +613,7 @@
532
613
 
533
614
  .zui-drawing-popover {
534
615
  position: absolute;
535
- top: calc(100% + 0.375rem);
616
+ top: calc(100% + 0.25rem);
536
617
  left: 0;
537
618
  z-index: 7;
538
619
  display: flex;
@@ -540,14 +621,12 @@
540
621
  gap: 0.125rem;
541
622
  min-width: 9.5rem;
542
623
  padding: 0.25rem;
543
- border: 1px solid rgba(0, 0, 0, 0.08);
544
- border-radius: 0.625rem;
545
- background: #ffffff;
546
- box-shadow:
547
- 0 1px 2px rgba(0, 0, 0, 0.06),
548
- 0 10px 28px -8px rgba(0, 0, 0, 0.25);
549
- animation: zui-drawing-pop 0.14s ease-out;
550
- transform-origin: top left;
624
+ border: 1px solid var(--zui-drawing-border);
625
+ border-radius: var(--zui-drawing-control-radius);
626
+ background: var(--zui-drawing-popover);
627
+ color: var(--zui-drawing-popover-foreground);
628
+ box-shadow: var(--zui-drawing-shadow);
629
+ animation: zui-drawing-pop 0.12s ease-out;
551
630
  }
552
631
 
553
632
  .zui-drawing-popover-item {
@@ -556,9 +635,9 @@
556
635
  gap: 0.5rem;
557
636
  padding: 0.375rem 0.5rem;
558
637
  border: none;
559
- border-radius: 0.375rem;
638
+ border-radius: var(--zui-drawing-control-radius);
560
639
  background: transparent;
561
- color: #1e1e1e;
640
+ color: inherit;
562
641
  font-size: 0.8125rem;
563
642
  text-align: left;
564
643
  cursor: pointer;
@@ -566,36 +645,39 @@
566
645
  }
567
646
 
568
647
  .zui-drawing-popover-item:hover {
569
- background: rgba(0, 0, 0, 0.06);
648
+ background: var(--zui-drawing-hover);
570
649
  }
571
650
 
572
651
  .zui-drawing-popover-item.is-active {
573
- background: color-mix(in srgb, var(--zui-drawing-accent) 16%, transparent);
574
- color: #4a47b1;
652
+ color: var(--zui-drawing-accent);
653
+ background: color-mix(in srgb, var(--zui-drawing-accent) 14%, transparent);
575
654
  }
576
655
 
577
- /* Contextual property bar: its own row under the tools */
656
+ /* Contextual properties: a second row that expands under the tools */
578
657
  .zui-drawing-props-host {
579
658
  flex-basis: 100%;
580
659
  display: flex;
660
+ max-height: 0;
661
+ overflow: hidden;
581
662
  opacity: 0;
582
- transform: translateY(-4px);
583
663
  pointer-events: none;
584
664
  transition:
585
- opacity 0.16s ease,
586
- transform 0.16s ease;
665
+ max-height 0.18s ease,
666
+ opacity 0.18s ease;
587
667
  }
588
668
 
589
669
  .zui-drawing-props-host.is-visible {
670
+ max-height: 6rem;
590
671
  opacity: 1;
591
- transform: translateY(0);
592
672
  pointer-events: auto;
593
673
  }
594
674
 
595
675
  .zui-drawing-props {
676
+ display: flex;
596
677
  flex-wrap: wrap;
678
+ align-items: center;
597
679
  gap: 0.25rem;
598
- padding: 0.25rem 0.375rem;
680
+ padding: 0.25rem 0 0.125rem;
599
681
  }
600
682
 
601
683
  .zui-drawing-props-group {
@@ -605,24 +687,24 @@
605
687
  }
606
688
 
607
689
  .zui-drawing-props-group + .zui-drawing-props-group {
608
- padding-left: 0.375rem;
609
- border-left: 1px solid rgba(0, 0, 0, 0.1);
690
+ padding-left: 0.5rem;
691
+ border-left: 1px solid color-mix(in srgb, currentColor 15%, transparent);
610
692
  }
611
693
 
612
694
  .zui-drawing-swatch-label {
613
695
  margin: 0 0.25rem 0 0.125rem;
614
696
  font-size: 0.6875rem;
615
697
  letter-spacing: 0.02em;
616
- color: rgba(0, 0, 0, 0.5);
698
+ color: var(--zui-drawing-muted-foreground);
617
699
  user-select: none;
618
700
  }
619
701
 
620
702
  .zui-drawing-swatch {
621
- width: 1.125rem;
622
- height: 1.125rem;
703
+ width: 1rem;
704
+ height: 1rem;
623
705
  margin: 0 0.125rem;
624
706
  padding: 0;
625
- border: 1px solid rgba(0, 0, 0, 0.14);
707
+ border: 1px solid rgba(0, 0, 0, 0.18);
626
708
  border-radius: 999px;
627
709
  cursor: pointer;
628
710
  transition:
@@ -636,7 +718,7 @@
636
718
 
637
719
  .zui-drawing-swatch.is-active {
638
720
  box-shadow:
639
- 0 0 0 2px #ffffff,
721
+ 0 0 0 2px var(--zui-drawing-chrome),
640
722
  0 0 0 3.5px var(--zui-drawing-accent);
641
723
  }
642
724
 
@@ -657,9 +739,8 @@
657
739
  display: flex;
658
740
  align-items: center;
659
741
  justify-content: center;
660
- padding-top: 2rem;
661
742
  font-size: 0.8125rem;
662
- color: rgba(0, 0, 0, 0.4);
743
+ color: var(--zui-drawing-muted-foreground);
663
744
  pointer-events: none;
664
745
  user-select: none;
665
746
  }
@@ -682,10 +763,11 @@
682
763
  padding: 0;
683
764
  border: 0;
684
765
  border-radius: 3px;
685
- outline: 1.5px dashed var(--zui-drawing-accent, #6965db);
766
+ outline: 1.5px dashed var(--zui-drawing-accent);
686
767
  outline-offset: 3px;
687
- background: rgba(255, 255, 255, 0.85);
768
+ background: color-mix(in srgb, var(--zui-drawing-surface) 85%, transparent);
688
769
  color: inherit;
770
+ font-family: var(--zui-drawing-font);
689
771
  resize: none;
690
772
  overflow: hidden;
691
773
  box-sizing: content-box;
@@ -707,7 +789,7 @@
707
789
  justify-content: center;
708
790
  width: 1.375rem;
709
791
  height: 1.375rem;
710
- border-radius: 0.375rem;
792
+ border-radius: var(--zui-drawing-control-radius);
711
793
  color: #1e1e1e;
712
794
  opacity: 0.35;
713
795
  cursor: ns-resize;
@@ -723,70 +805,15 @@
723
805
  }
724
806
 
725
807
  /*
726
- * Dark mode (zui `.dark` class convention). The drawing surface, the color
727
- * swatches, and the inline text input are darkened with a color-inversion
728
- * filter, so stored shape colors stay theme-agnostic: the default
729
- * near-black stroke renders light on the dark canvas, and the swatches
730
- * preview exactly what will be drawn.
808
+ * Dark mode (zui `.dark` class convention). The chrome follows the theme
809
+ * tokens on its own; the drawing area, the swatches and the inline text
810
+ * input are inverted so stored shape colors stay theme-agnostic.
731
811
  */
732
- .dark .zui-drawing-canvas {
733
- background: #18181b;
734
- border-color: rgba(255, 255, 255, 0.1);
735
- }
736
-
737
812
  .dark .zui-drawing-surface,
738
813
  .dark .zui-drawing-swatch,
739
- .dark .zui-drawing-text-input {
740
- filter: invert(93%) hue-rotate(180deg);
741
- }
742
-
743
- .dark .zui-drawing-toolbar-group,
744
- .dark .zui-drawing-props,
745
- .dark .zui-drawing-popover {
746
- background: rgba(35, 35, 41, 0.9);
747
- border-color: rgba(255, 255, 255, 0.1);
748
- box-shadow:
749
- 0 1px 2px rgba(0, 0, 0, 0.3),
750
- 0 8px 24px -8px rgba(0, 0, 0, 0.6);
751
- }
752
-
753
- .dark .zui-drawing-tool,
754
- .dark .zui-drawing-popover-item,
814
+ .dark .zui-drawing-text-input,
755
815
  .dark .zui-drawing-resize {
756
- color: #e3e3e8;
757
- }
758
-
759
- .dark .zui-drawing-tool:hover,
760
- .dark .zui-drawing-popover-item:hover,
761
- .dark .zui-drawing-resize:hover {
762
- background: rgba(255, 255, 255, 0.08);
763
- }
764
-
765
- .dark .zui-drawing-tool.is-active,
766
- .dark .zui-drawing-popover-item.is-active {
767
- background: #45437a;
768
- color: #dcdaff;
769
- }
770
-
771
- .dark .zui-drawing-toolbar-divider,
772
- .dark .zui-drawing-props-group + .zui-drawing-props-group {
773
- border-color: rgba(255, 255, 255, 0.12);
774
- background-color: rgba(255, 255, 255, 0.12);
775
- }
776
-
777
- .dark .zui-drawing-props-group + .zui-drawing-props-group {
778
- background-color: transparent;
779
- }
780
-
781
- .dark .zui-drawing-swatch-label,
782
- .dark .zui-drawing-empty {
783
- color: rgba(255, 255, 255, 0.55);
784
- }
785
-
786
- .dark .zui-drawing-swatch.is-active {
787
- box-shadow:
788
- 0 0 0 2px #232329,
789
- 0 0 0 3.5px #8f8bff;
816
+ filter: var(--zui-drawing-dark-filter);
790
817
  }
791
818
 
792
819
  .zui-text-editor-textarea {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zuilib/text-editor",
3
- "version": "0.5.0",
3
+ "version": "0.7.0",
4
4
  "description": "ZUI — A markdown editor component wrapping Lexical",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",