@openeditor/ui 0.0.12 → 0.0.14

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/index.css CHANGED
@@ -90,13 +90,13 @@
90
90
  }
91
91
  .oe-prosemirror blockquote,
92
92
  .oe-viewer blockquote {
93
- border-left: 3px solid var(--oe-accent, #f5f5f5);
93
+ border-left: 3px solid var(--oe-structural-line, var(--oe-border, #e5e5e5));
94
94
  margin: 18px 0;
95
95
  padding-left: 16px;
96
96
  }
97
97
  .oe-prosemirror pre,
98
98
  .oe-viewer pre {
99
- background: var(--oe-code-bg, #f5f5f5);
99
+ background: var(--oe-block-surface, var(--oe-surface-muted, #f5f5f5));
100
100
  border-radius: 8px;
101
101
  color: var(--oe-code-text, #171717);
102
102
  overflow: auto;
@@ -204,7 +204,6 @@
204
204
  align-self: start;
205
205
  background: transparent;
206
206
  border: 0;
207
- border-radius: 6px;
208
207
  color: var(--oe-muted, #737373);
209
208
  cursor: pointer;
210
209
  display: inline-flex;
@@ -216,18 +215,25 @@
216
215
  }
217
216
  .oe-toggle-list-trigger:hover,
218
217
  .oe-toggle-list-trigger:focus-visible {
219
- background: var(--oe-surface-muted, #f5f5f5);
220
218
  color: var(--oe-text, #171717);
221
219
  outline: none;
222
220
  }
221
+ .oe-toggle-list-trigger:focus-visible .oe-toggle-list-chevron {
222
+ filter: drop-shadow(0 0 2px var(--oe-text, #171717));
223
+ }
223
224
  .oe-toggle-list-trigger:disabled {
224
225
  cursor: default;
225
226
  }
226
227
  .oe-toggle-list-chevron {
227
- font-size: 22px;
228
- line-height: 1;
228
+ border-bottom: 4px solid transparent;
229
+ border-left: 6px solid currentColor;
230
+ border-top: 4px solid transparent;
231
+ display: block;
232
+ height: 0;
229
233
  transform: rotate(0deg);
234
+ transform-origin: 3px center;
230
235
  transition: transform 140ms ease;
236
+ width: 0;
231
237
  }
232
238
  .oe-toggle-list-item[data-open=true] > .oe-toggle-list-trigger .oe-toggle-list-chevron {
233
239
  transform: rotate(90deg);
@@ -245,45 +251,40 @@
245
251
  display: none;
246
252
  }
247
253
  .oe-callout {
248
- --oe-callout-color: var(--oe-accent-strong, #171717);
249
- background: color-mix(in srgb, var(--oe-callout-color) 8%, var(--oe-surface, #ffffff));
250
- border: 1px solid color-mix(in srgb, var(--oe-callout-color) 24%, var(--oe-border, #e5e5e5));
251
- border-left: 4px solid var(--oe-callout-color);
252
- border-radius: 10px;
254
+ align-items: start;
255
+ background: var(--oe-block-surface, var(--oe-surface-muted, #f5f5f5));
256
+ border: 0;
257
+ border-radius: 8px;
258
+ box-sizing: border-box;
253
259
  display: grid;
254
- gap: 10px;
255
- grid-template-columns: auto minmax(0, 1fr);
256
- margin: 18px 0;
257
- padding: 14px;
258
- }
259
- .oe-callout[data-tone=success] {
260
- --oe-callout-color: #16a34a;
261
- }
262
- .oe-callout[data-tone=warning] {
263
- --oe-callout-color: #d97706;
264
- }
265
- .oe-callout[data-tone=danger] {
266
- --oe-callout-color: #dc2626;
267
- }
268
- .oe-callout-tone {
269
- align-self: start;
270
- background: var(--oe-surface, #ffffff);
271
- border: 1px solid var(--oe-border-strong, #d4d4d4);
272
- border-radius: 6px;
273
- color: var(--oe-text, #171717);
274
- font: inherit;
275
- font-size: 12px;
276
- padding: 4px 6px;
277
- text-transform: capitalize;
260
+ gap: 8px;
261
+ grid-template-columns: 28px minmax(0, 1fr);
262
+ margin: 1em 0;
263
+ padding: 10px 14px;
264
+ width: 100%;
278
265
  }
279
- .oe-callout-content > :first-child {
266
+ .oe-callout-content > :first-child,
267
+ .oe-callout-content > [data-node-view-content-react] > :first-child {
280
268
  margin-top: 0;
281
269
  }
282
- .oe-callout-content > :last-child {
270
+ .oe-callout-content > :last-child,
271
+ .oe-callout-content > [data-node-view-content-react] > :last-child {
283
272
  margin-bottom: 0;
284
273
  }
285
- .oe-viewer .oe-callout {
286
- grid-template-columns: minmax(0, 1fr);
274
+ .oe-callout-emoji {
275
+ align-items: center;
276
+ align-self: start;
277
+ display: inline-flex;
278
+ font-size: 20px;
279
+ height: 26px;
280
+ justify-content: center;
281
+ line-height: 1;
282
+ width: 28px;
283
+ }
284
+ .oe-callout .oe-callout-emoji-trigger {
285
+ height: 26px;
286
+ line-height: 1;
287
+ width: 28px;
287
288
  }
288
289
  .oe-page {
289
290
  align-items: center;
@@ -304,21 +305,156 @@
304
305
  .oe-page:focus-within {
305
306
  background: var(--oe-surface-muted, #f5f5f5);
306
307
  }
307
- .oe-page-icon,
308
- .oe-page-icon-input {
308
+ .oe-page[data-page-id]:not([data-page-id=""]) {
309
+ cursor: pointer;
310
+ }
311
+ .oe-page[data-page-id]:not([data-page-id=""]):focus-visible {
312
+ box-shadow: 0 0 0 2px var(--oe-surface, #ffffff), 0 0 0 4px var(--oe-structural-line, #d4d4d4);
313
+ outline: none;
314
+ }
315
+ .oe-page-icon {
309
316
  flex: 0 0 auto;
310
317
  font-size: 18px;
311
318
  line-height: 1;
312
319
  text-align: center;
313
320
  width: 24px;
314
321
  }
315
- .oe-page-icon-input {
322
+ .oe-emoji-trigger {
323
+ align-items: center;
316
324
  background: transparent;
317
325
  border: 0;
326
+ border-radius: 6px;
318
327
  color: inherit;
328
+ cursor: pointer;
329
+ display: inline-flex;
330
+ font: inherit;
331
+ font-size: 20px;
332
+ height: 30px;
333
+ justify-content: center;
334
+ padding: 0;
335
+ width: 30px;
336
+ }
337
+ .oe-emoji-trigger:hover,
338
+ .oe-emoji-trigger:focus-visible,
339
+ .oe-emoji-trigger[data-popup-open] {
340
+ background: color-mix(in srgb, var(--oe-text, #171717) 8%, transparent);
319
341
  outline: none;
342
+ }
343
+ .oe-emoji-trigger:focus-visible {
344
+ box-shadow: 0 0 0 2px var(--oe-surface, #ffffff), 0 0 0 4px var(--oe-structural-line, #d4d4d4);
345
+ }
346
+ .oe-emoji-trigger:disabled {
347
+ cursor: default;
348
+ }
349
+ .oe-page-icon-trigger {
350
+ font-size: 18px;
351
+ height: 28px;
352
+ width: 28px;
353
+ }
354
+ .oe-emoji-popover {
355
+ background: var(--oe-surface, #ffffff);
356
+ border-radius: 12px;
357
+ box-shadow: 0 0 0 1px var(--oe-shadow, rgb(0 0 0 / 8%)), 0 16px 48px var(--oe-shadow, rgb(0 0 0 / 16%));
358
+ color: var(--oe-text, #171717);
359
+ overflow: hidden;
360
+ transform-origin: var(--transform-origin);
361
+ z-index: 1100;
362
+ }
363
+ .oe-emoji-picker {
364
+ display: flex;
365
+ height: min(360px, calc(100vh - 32px));
366
+ isolation: isolate;
367
+ width: min(320px, calc(100vw - 24px));
368
+ flex-direction: column;
369
+ }
370
+ .oe-emoji-search {
371
+ appearance: none;
372
+ background: var(--oe-block-surface, var(--oe-surface-muted, #f5f5f5));
373
+ border: 0;
374
+ border-radius: 8px;
375
+ color: var(--oe-text, #171717);
376
+ font: inherit;
377
+ font-size: 14px;
378
+ margin: 8px;
379
+ min-height: 38px;
380
+ outline: none;
381
+ padding: 0 11px;
382
+ }
383
+ .oe-emoji-search:focus {
384
+ box-shadow: inset 0 0 0 1px var(--oe-structural-line, var(--oe-border, #e5e5e5));
385
+ }
386
+ .oe-emoji-viewport {
387
+ min-height: 0;
388
+ outline: none;
389
+ overflow: auto;
390
+ position: relative;
391
+ flex: 1;
392
+ }
393
+ .oe-emoji-state {
394
+ align-items: center;
395
+ color: var(--oe-muted, #737373);
396
+ display: flex;
397
+ font-size: 13px;
398
+ inset: 0;
399
+ justify-content: center;
400
+ position: absolute;
401
+ }
402
+ .oe-emoji-list {
403
+ padding-bottom: 6px;
404
+ user-select: none;
405
+ }
406
+ .oe-emoji-category {
407
+ background: var(--oe-surface, #ffffff);
408
+ color: var(--oe-muted, #737373);
409
+ font-size: 11px;
410
+ font-weight: 650;
411
+ padding: 8px 10px 4px;
412
+ }
413
+ .oe-emoji-row {
414
+ display: flex;
415
+ padding: 0 6px;
416
+ scroll-margin-block: 4px;
417
+ }
418
+ .oe-emoji-option {
419
+ align-items: center;
420
+ aspect-ratio: 1;
421
+ background: transparent;
422
+ border: 0;
423
+ border-radius: 7px;
424
+ cursor: pointer;
425
+ display: flex;
426
+ flex: 1;
427
+ font-size: 20px;
428
+ justify-content: center;
429
+ min-width: 0;
320
430
  padding: 0;
321
431
  }
432
+ .oe-emoji-option[data-active] {
433
+ background: var(--oe-block-surface, var(--oe-surface-muted, #f5f5f5));
434
+ }
435
+ .oe-emoji-footer {
436
+ align-items: center;
437
+ border-top: 1px solid var(--oe-structural-line, var(--oe-border, #e5e5e5));
438
+ color: var(--oe-muted, #737373);
439
+ display: flex;
440
+ font-size: 12px;
441
+ gap: 7px;
442
+ min-height: 42px;
443
+ padding: 5px 8px;
444
+ }
445
+ .oe-emoji-footer > span:first-child {
446
+ font-size: 18px;
447
+ }
448
+ .oe-emoji-footer [frimousse-skin-tone-selector] {
449
+ background: transparent;
450
+ border: 0;
451
+ border-radius: 6px;
452
+ cursor: pointer;
453
+ font-size: 18px;
454
+ margin-left: auto;
455
+ min-height: 30px;
456
+ min-width: 30px;
457
+ }
322
458
  .oe-page-title {
323
459
  flex: 1 1 auto;
324
460
  font-weight: 500;
@@ -358,13 +494,14 @@
358
494
  color: var(--oe-muted, #737373);
359
495
  }
360
496
  .oe-diagram {
361
- border: 1px solid var(--oe-border, #e5e5e5);
497
+ background: var(--oe-block-surface, var(--oe-surface-muted, #f5f5f5));
498
+ border: 0;
362
499
  border-radius: 12px;
363
500
  margin: 18px 0;
364
501
  overflow: hidden;
365
502
  }
366
503
  .oe-diagram-preview {
367
- background: var(--oe-surface, #ffffff);
504
+ background: var(--oe-block-surface, var(--oe-surface-muted, #f5f5f5));
368
505
  min-height: 120px;
369
506
  overflow: auto;
370
507
  padding: 18px;
@@ -377,9 +514,9 @@
377
514
  }
378
515
  .oe-diagram-source,
379
516
  .oe-diagram-error {
380
- background: var(--oe-code-bg, #f5f5f5);
517
+ background: var(--oe-block-surface, var(--oe-surface-muted, #f5f5f5));
381
518
  border: 0;
382
- border-top: 1px solid var(--oe-border, #e5e5e5);
519
+ border-top: 1px solid var(--oe-structural-line, var(--oe-border, #e5e5e5));
383
520
  box-sizing: border-box;
384
521
  color: var(--oe-code-text, #171717);
385
522
  display: block;
@@ -413,7 +550,7 @@
413
550
  .oe-prosemirror hr::after,
414
551
  .oe-divider::after,
415
552
  .oe-viewer hr::after {
416
- background: var(--oe-border, #e5e5e5);
553
+ background: var(--oe-structural-line, var(--oe-border, #e5e5e5));
417
554
  content: "";
418
555
  display: block;
419
556
  height: 1px;
@@ -429,7 +566,7 @@
429
566
  }
430
567
  .oe-prosemirror hr.ProseMirror-selectednode::after,
431
568
  .oe-divider.ProseMirror-selectednode::after {
432
- background: var(--oe-border-strong, #d4d4d4);
569
+ background: var(--oe-structural-line, var(--oe-border, #e5e5e5));
433
570
  box-shadow: 0 0 0 6px var(--oe-accent, #f5f5f5);
434
571
  }
435
572
  .oe-columns {
@@ -476,7 +613,7 @@
476
613
  }
477
614
  .oe-task-checkbox {
478
615
  appearance: none;
479
- background: var(--oe-surface-muted, #f5f5f5);
616
+ background: var(--oe-block-surface, var(--oe-surface-muted, #f5f5f5));
480
617
  border: 0;
481
618
  border-radius: 4px;
482
619
  box-shadow: none;
@@ -515,29 +652,25 @@
515
652
  margin: 0;
516
653
  min-height: 1.6em;
517
654
  }
518
- .oe-prosemirror table,
519
- .oe-viewer table {
655
+ .oe-prosemirror table[data-openeditor-table],
656
+ .oe-viewer table[data-openeditor-table] {
520
657
  border-collapse: collapse;
521
658
  margin: 18px 0;
522
659
  table-layout: fixed;
523
660
  width: 100%;
524
661
  }
525
- .oe-prosemirror th,
526
- .oe-prosemirror td,
527
- .oe-viewer th,
528
- .oe-viewer td {
529
- border: 1px solid var(--oe-border-strong, #d4d4d4);
662
+ .oe-prosemirror table[data-openeditor-table] th,
663
+ .oe-prosemirror table[data-openeditor-table] td,
664
+ .oe-viewer table[data-openeditor-table] th,
665
+ .oe-viewer table[data-openeditor-table] td {
666
+ background: var(--oe-block-surface, var(--oe-surface-muted, #f5f5f5));
667
+ border: 1px solid var(--oe-structural-line, var(--oe-border, #e5e5e5));
530
668
  min-width: 96px;
531
669
  padding: 10px;
532
670
  vertical-align: top;
533
671
  }
534
- .oe-prosemirror td,
535
- .oe-viewer td {
536
- background: var(--oe-surface, #ffffff);
537
- }
538
- .oe-prosemirror th,
539
- .oe-viewer th {
540
- background: var(--oe-surface-muted, #f5f5f5);
672
+ .oe-prosemirror table[data-openeditor-table] th,
673
+ .oe-viewer table[data-openeditor-table] th {
541
674
  font-weight: 700;
542
675
  }
543
676
  .oe-button,
@@ -578,6 +711,16 @@
578
711
  display: inline-flex;
579
712
  gap: 6px;
580
713
  }
714
+ .oe-cascade-menu {
715
+ align-items: flex-start;
716
+ display: flex;
717
+ gap: 4px;
718
+ outline: none;
719
+ z-index: 1002;
720
+ }
721
+ .oe-cascade-panel {
722
+ flex: 0 0 auto;
723
+ }
581
724
  .oe-slash-menu {
582
725
  background: var(--oe-surface, #ffffff);
583
726
  border-radius: 23px;
@@ -639,6 +782,16 @@
639
782
  color: var(--oe-muted, #737373);
640
783
  flex: 0 0 auto;
641
784
  }
785
+ .oe-submenu-chevron {
786
+ color: var(--oe-muted, #737373);
787
+ flex: 0 0 auto;
788
+ margin-left: auto;
789
+ }
790
+ .oe-slash-submenu {
791
+ display: grid;
792
+ gap: 2px;
793
+ width: 190px;
794
+ }
642
795
  .oe-slash-menu-item:focus .oe-slash-menu-icon,
643
796
  .oe-slash-menu-item:hover .oe-slash-menu-icon,
644
797
  .oe-slash-menu-item:focus-visible .oe-slash-menu-icon,
@@ -717,6 +870,9 @@
717
870
  padding: 6px;
718
871
  z-index: 1002;
719
872
  }
873
+ .oe-block-transform-submenu {
874
+ min-width: 160px;
875
+ }
720
876
  .oe-block-transform-menu,
721
877
  .oe-block-transform-menu *,
722
878
  .oe-block-transform-menu *::before,
@@ -892,4 +1048,118 @@
892
1048
  color: var(--oe-surface, #ffffff);
893
1049
  opacity: 0.88;
894
1050
  }
1051
+ .oe-attachment {
1052
+ align-items: center;
1053
+ background: var(--oe-surface, #fff);
1054
+ border: 1px solid var(--oe-border, #e5e5e5);
1055
+ border-radius: 12px;
1056
+ color: var(--oe-text, #171717);
1057
+ display: flex;
1058
+ gap: 12px;
1059
+ margin: 8px 0;
1060
+ min-height: 68px;
1061
+ padding: 10px 12px;
1062
+ text-align: left;
1063
+ text-decoration: none;
1064
+ transition:
1065
+ border-color 140ms,
1066
+ box-shadow 140ms,
1067
+ background 140ms;
1068
+ width: 100%;
1069
+ }
1070
+ .oe-attachment:hover,
1071
+ .oe-attachment:focus-within {
1072
+ border-color: var(--oe-border-strong, #d4d4d4);
1073
+ box-shadow: 0 4px 18px var(--oe-shadow, rgb(0 0 0 / 8%));
1074
+ outline: none;
1075
+ }
1076
+ .oe-attachment[data-state=error],
1077
+ .oe-attachment[data-state=missing] {
1078
+ border-color: #efb0b0;
1079
+ }
1080
+ .oe-attachment-icon {
1081
+ align-items: center;
1082
+ background: var(--oe-surface-muted, #f5f5f5);
1083
+ border-radius: 9px;
1084
+ display: flex;
1085
+ flex: 0 0 42px;
1086
+ height: 48px;
1087
+ justify-content: center;
1088
+ }
1089
+ .oe-attachment-icon span {
1090
+ color: var(--oe-muted, #737373);
1091
+ font-size: 9px;
1092
+ font-weight: 750;
1093
+ letter-spacing: .04em;
1094
+ }
1095
+ .oe-attachment-body {
1096
+ display: flex;
1097
+ flex: 1;
1098
+ flex-direction: column;
1099
+ min-width: 0;
1100
+ }
1101
+ .oe-attachment-name {
1102
+ background: transparent;
1103
+ border: 0;
1104
+ color: inherit;
1105
+ font: inherit;
1106
+ font-weight: 650;
1107
+ min-width: 0;
1108
+ outline: none;
1109
+ overflow: hidden;
1110
+ padding: 0;
1111
+ text-overflow: ellipsis;
1112
+ white-space: nowrap;
1113
+ }
1114
+ .oe-attachment-meta {
1115
+ color: var(--oe-muted, #737373);
1116
+ display: block;
1117
+ font-size: 12px;
1118
+ margin-top: 3px;
1119
+ }
1120
+ .oe-attachment-progress {
1121
+ background: var(--oe-surface-muted, #f5f5f5);
1122
+ border-radius: 2px;
1123
+ height: 4px;
1124
+ margin-top: 8px;
1125
+ overflow: hidden;
1126
+ }
1127
+ .oe-attachment-progress span {
1128
+ background: var(--oe-accent-strong, #171717);
1129
+ display: block;
1130
+ height: 100%;
1131
+ transition: width 90ms linear;
1132
+ }
1133
+ .oe-attachment-error {
1134
+ color: #b42318;
1135
+ font-size: 12px;
1136
+ margin-top: 4px;
1137
+ }
1138
+ .oe-attachment-actions {
1139
+ align-items: center;
1140
+ display: flex;
1141
+ flex-wrap: wrap;
1142
+ gap: 4px;
1143
+ justify-content: flex-end;
1144
+ }
1145
+ .oe-attachment-actions button {
1146
+ background: transparent;
1147
+ border: 0;
1148
+ border-radius: 7px;
1149
+ color: var(--oe-muted, #737373);
1150
+ cursor: pointer;
1151
+ font: inherit;
1152
+ font-size: 12px;
1153
+ min-height: 34px;
1154
+ padding: 0 8px;
1155
+ }
1156
+ .oe-attachment-actions button:hover,
1157
+ .oe-attachment-actions button:focus-visible {
1158
+ background: var(--oe-surface-muted, #f5f5f5);
1159
+ color: var(--oe-text, #171717);
1160
+ outline: none;
1161
+ }
1162
+ .oe-attachment-viewer {
1163
+ cursor: pointer;
1164
+ }
895
1165
  /*# sourceMappingURL=index.css.map */