ritext 1.0.15 → 1.0.19
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/README.md +7 -8
- package/dist/chunk-2YUUKIIT.mjs +149 -0
- package/dist/{chunk-ZLCVIW2P.mjs → chunk-7QOFJIQ3.mjs} +1 -1
- package/dist/chunk-D47XME55.mjs +49 -0
- package/dist/{chunk-TQTCTY3E.mjs → chunk-FWCSY2DS.mjs} +1 -16
- package/dist/{chunk-CU67RXD7.mjs → chunk-GSHINFPO.mjs} +3 -3
- package/dist/{chunk-E4PPKAVK.mjs → chunk-LMOTHRGQ.mjs} +1 -1
- package/dist/{chunk-LO4RJXQF.mjs → chunk-MBF77NHS.mjs} +1 -1
- package/dist/chunk-VYDH6BZE.mjs +17 -0
- package/dist/extension/bold.d.mts +1 -1
- package/dist/extension/bold.d.ts +1 -1
- package/dist/extension/bold.js +1 -1
- package/dist/extension/bold.mjs +4 -3
- package/dist/extension/clearformat.d.mts +8 -0
- package/dist/extension/clearformat.d.ts +8 -0
- package/dist/extension/clearformat.js +239 -0
- package/dist/extension/clearformat.mjs +69 -0
- package/dist/extension/font-family.d.mts +23 -0
- package/dist/extension/font-family.d.ts +23 -0
- package/dist/extension/font-family.js +388 -0
- package/dist/extension/font-family.mjs +113 -0
- package/dist/extension/font-size.d.mts +23 -0
- package/dist/extension/font-size.d.ts +23 -0
- package/dist/extension/font-size.js +386 -0
- package/dist/extension/font-size.mjs +111 -0
- package/dist/extension/heading.d.mts +23 -0
- package/dist/extension/heading.d.ts +23 -0
- package/dist/extension/heading.js +593 -0
- package/dist/extension/heading.mjs +312 -0
- package/dist/extension/history.d.mts +8 -0
- package/dist/extension/history.d.ts +8 -0
- package/dist/extension/history.js +296 -0
- package/dist/extension/history.mjs +126 -0
- package/dist/extension/italic.d.mts +1 -1
- package/dist/extension/italic.d.ts +1 -1
- package/dist/extension/italic.js +1 -1
- package/dist/extension/italic.mjs +4 -3
- package/dist/extension/strike.d.mts +1 -1
- package/dist/extension/strike.d.ts +1 -1
- package/dist/extension/strike.js +1 -1
- package/dist/extension/strike.mjs +4 -3
- package/dist/extension/subandsuperscript.d.mts +1 -1
- package/dist/extension/subandsuperscript.d.ts +1 -1
- package/dist/extension/subandsuperscript.js +30 -21
- package/dist/extension/subandsuperscript.mjs +37 -159
- package/dist/extension/subscript.d.mts +1 -1
- package/dist/extension/subscript.d.ts +1 -1
- package/dist/extension/subscript.js +1 -1
- package/dist/extension/subscript.mjs +5 -4
- package/dist/extension/superscript.d.mts +1 -1
- package/dist/extension/superscript.d.ts +1 -1
- package/dist/extension/superscript.js +1 -1
- package/dist/extension/superscript.mjs +5 -4
- package/dist/extension/underline.d.mts +1 -1
- package/dist/extension/underline.d.ts +1 -1
- package/dist/extension/underline.js +1 -1
- package/dist/extension/underline.mjs +4 -3
- package/dist/index.css +375 -8
- package/dist/index.js +1 -2
- package/dist/index.mjs +3 -3
- package/dist/{tiptap-ext.type-D61hoEX5.d.mts → tiptap-ext.type-DrneAC5G.d.mts} +8 -1
- package/dist/{tiptap-ext.type-D61hoEX5.d.ts → tiptap-ext.type-DrneAC5G.d.ts} +8 -1
- package/package.json +27 -24
|
@@ -205,7 +205,7 @@ var ButtonComponent = ({ className, activeClassName, icon, style, tooltip = true
|
|
|
205
205
|
{
|
|
206
206
|
onClick: _onToggle,
|
|
207
207
|
className: (0, import_tailwind_merge2.twMerge)(
|
|
208
|
-
"
|
|
208
|
+
"py-1.5 px-2.5 rounded-md",
|
|
209
209
|
_buttonClassName,
|
|
210
210
|
(editorState == null ? void 0 : editorState.isActive) ? "bg-gray-200/60" : "hover:bg-gray-100",
|
|
211
211
|
className,
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ButtonComponent_default
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-GSHINFPO.mjs";
|
|
4
|
+
import "../chunk-7QOFJIQ3.mjs";
|
|
5
|
+
import "../chunk-VYDH6BZE.mjs";
|
|
5
6
|
import {
|
|
6
7
|
__objRest,
|
|
7
8
|
__spreadProps,
|
|
8
9
|
__spreadValues
|
|
9
|
-
} from "../chunk-
|
|
10
|
+
} from "../chunk-FWCSY2DS.mjs";
|
|
10
11
|
|
|
11
12
|
// src/extension/Underline.tsx
|
|
12
13
|
import TiptapUnder from "@tiptap/extension-underline";
|
package/dist/index.css
CHANGED
|
@@ -21,15 +21,37 @@
|
|
|
21
21
|
"Liberation Mono",
|
|
22
22
|
"Courier New",
|
|
23
23
|
monospace;
|
|
24
|
+
--color-red-400: oklch(70.4% 0.191 22.216);
|
|
25
|
+
--color-red-500: oklch(63.7% 0.237 25.331);
|
|
26
|
+
--color-blue-400: oklch(70.7% 0.165 254.624);
|
|
27
|
+
--color-blue-500: oklch(62.3% 0.214 259.815);
|
|
24
28
|
--color-gray-50: oklch(98.5% 0.002 247.839);
|
|
25
29
|
--color-gray-100: oklch(96.7% 0.003 264.542);
|
|
26
30
|
--color-gray-200: oklch(92.8% 0.006 264.531);
|
|
27
31
|
--color-gray-400: oklch(70.7% 0.022 261.325);
|
|
28
32
|
--color-gray-500: oklch(55.1% 0.027 264.364);
|
|
33
|
+
--color-neutral-300: oklch(87% 0 0);
|
|
34
|
+
--color-neutral-700: oklch(37.1% 0 0);
|
|
35
|
+
--color-neutral-900: oklch(20.5% 0 0);
|
|
36
|
+
--color-black: #000;
|
|
29
37
|
--color-white: #fff;
|
|
30
38
|
--spacing: 0.25rem;
|
|
31
39
|
--text-sm: 0.875rem;
|
|
32
40
|
--text-sm--line-height: calc(1.25 / 0.875);
|
|
41
|
+
--text-base: 1rem;
|
|
42
|
+
--text-base--line-height: calc(1.5 / 1);
|
|
43
|
+
--text-lg: 1.125rem;
|
|
44
|
+
--text-lg--line-height: calc(1.75 / 1.125);
|
|
45
|
+
--text-xl: 1.25rem;
|
|
46
|
+
--text-xl--line-height: calc(1.75 / 1.25);
|
|
47
|
+
--text-2xl: 1.5rem;
|
|
48
|
+
--text-2xl--line-height: calc(2 / 1.5);
|
|
49
|
+
--text-3xl: 1.875rem;
|
|
50
|
+
--text-3xl--line-height: calc(2.25 / 1.875);
|
|
51
|
+
--font-weight-bold: 700;
|
|
52
|
+
--font-weight-extrabold: 800;
|
|
53
|
+
--leading-relaxed: 1.625;
|
|
54
|
+
--radius-sm: 0.25rem;
|
|
33
55
|
--radius-md: 0.375rem;
|
|
34
56
|
--radius-lg: 0.5rem;
|
|
35
57
|
--default-transition-duration: 150ms;
|
|
@@ -228,9 +250,6 @@
|
|
|
228
250
|
}
|
|
229
251
|
}
|
|
230
252
|
@layer utilities {
|
|
231
|
-
.mt-0\.5 {
|
|
232
|
-
margin-top: calc(var(--spacing) * 0.5);
|
|
233
|
-
}
|
|
234
253
|
.ml-6 {
|
|
235
254
|
margin-left: calc(var(--spacing) * 6);
|
|
236
255
|
}
|
|
@@ -240,6 +259,9 @@
|
|
|
240
259
|
.flex {
|
|
241
260
|
display: flex;
|
|
242
261
|
}
|
|
262
|
+
.max-h-125 {
|
|
263
|
+
max-height: calc(var(--spacing) * 125);
|
|
264
|
+
}
|
|
243
265
|
.flex-1 {
|
|
244
266
|
flex: 1;
|
|
245
267
|
}
|
|
@@ -259,14 +281,17 @@
|
|
|
259
281
|
margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
|
|
260
282
|
}
|
|
261
283
|
}
|
|
262
|
-
.gap-x-
|
|
263
|
-
column-gap: calc(var(--spacing) *
|
|
284
|
+
.gap-x-0\.5 {
|
|
285
|
+
column-gap: calc(var(--spacing) * 0.5);
|
|
286
|
+
}
|
|
287
|
+
.gap-x-1 {
|
|
288
|
+
column-gap: calc(var(--spacing) * 1);
|
|
264
289
|
}
|
|
265
290
|
.gap-x-2\.5 {
|
|
266
291
|
column-gap: calc(var(--spacing) * 2.5);
|
|
267
292
|
}
|
|
268
|
-
.
|
|
269
|
-
|
|
293
|
+
.overflow-auto {
|
|
294
|
+
overflow: auto;
|
|
270
295
|
}
|
|
271
296
|
.rounded-lg {
|
|
272
297
|
border-radius: var(--radius-lg);
|
|
@@ -309,6 +334,9 @@
|
|
|
309
334
|
.px-2 {
|
|
310
335
|
padding-inline: calc(var(--spacing) * 2);
|
|
311
336
|
}
|
|
337
|
+
.px-2\.5 {
|
|
338
|
+
padding-inline: calc(var(--spacing) * 2.5);
|
|
339
|
+
}
|
|
312
340
|
.px-3 {
|
|
313
341
|
padding-inline: calc(var(--spacing) * 3);
|
|
314
342
|
}
|
|
@@ -321,10 +349,30 @@
|
|
|
321
349
|
.text-center {
|
|
322
350
|
text-align: center;
|
|
323
351
|
}
|
|
352
|
+
.text-2xl {
|
|
353
|
+
font-size: var(--text-2xl);
|
|
354
|
+
line-height: var(--tw-leading, var(--text-2xl--line-height));
|
|
355
|
+
}
|
|
356
|
+
.text-3xl {
|
|
357
|
+
font-size: var(--text-3xl);
|
|
358
|
+
line-height: var(--tw-leading, var(--text-3xl--line-height));
|
|
359
|
+
}
|
|
360
|
+
.text-base {
|
|
361
|
+
font-size: var(--text-base);
|
|
362
|
+
line-height: var(--tw-leading, var(--text-base--line-height));
|
|
363
|
+
}
|
|
364
|
+
.text-lg {
|
|
365
|
+
font-size: var(--text-lg);
|
|
366
|
+
line-height: var(--tw-leading, var(--text-lg--line-height));
|
|
367
|
+
}
|
|
324
368
|
.text-sm {
|
|
325
369
|
font-size: var(--text-sm);
|
|
326
370
|
line-height: var(--tw-leading, var(--text-sm--line-height));
|
|
327
371
|
}
|
|
372
|
+
.text-xl {
|
|
373
|
+
font-size: var(--text-xl);
|
|
374
|
+
line-height: var(--tw-leading, var(--text-xl--line-height));
|
|
375
|
+
}
|
|
328
376
|
.text-gray-400 {
|
|
329
377
|
color: var(--color-gray-400);
|
|
330
378
|
}
|
|
@@ -337,6 +385,9 @@
|
|
|
337
385
|
.underline {
|
|
338
386
|
text-decoration-line: underline;
|
|
339
387
|
}
|
|
388
|
+
.opacity-20 {
|
|
389
|
+
opacity: 20%;
|
|
390
|
+
}
|
|
340
391
|
.shadow-lg {
|
|
341
392
|
--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
|
|
342
393
|
box-shadow:
|
|
@@ -444,6 +495,318 @@
|
|
|
444
495
|
button {
|
|
445
496
|
cursor: pointer;
|
|
446
497
|
}
|
|
498
|
+
.ProseMirror p {
|
|
499
|
+
margin-bottom: calc(var(--spacing) * 1.5);
|
|
500
|
+
--tw-leading: var(--leading-relaxed);
|
|
501
|
+
line-height: var(--leading-relaxed);
|
|
502
|
+
&:first-child {
|
|
503
|
+
margin-top: calc(var(--spacing) * 0);
|
|
504
|
+
}
|
|
505
|
+
&:last-child {
|
|
506
|
+
margin-bottom: calc(var(--spacing) * 0);
|
|
507
|
+
}
|
|
508
|
+
}
|
|
509
|
+
.ProseMirror > p {
|
|
510
|
+
margin-bottom: calc(var(--spacing) * 1.5);
|
|
511
|
+
&:first-child {
|
|
512
|
+
margin-top: calc(var(--spacing) * 0);
|
|
513
|
+
}
|
|
514
|
+
&:last-child {
|
|
515
|
+
margin-bottom: calc(var(--spacing) * 0);
|
|
516
|
+
}
|
|
517
|
+
}
|
|
518
|
+
.ProseMirror h1 {
|
|
519
|
+
font-size: var(--text-3xl);
|
|
520
|
+
line-height: var(--tw-leading, var(--text-3xl--line-height));
|
|
521
|
+
}
|
|
522
|
+
.ProseMirror h2 {
|
|
523
|
+
font-size: var(--text-2xl);
|
|
524
|
+
line-height: var(--tw-leading, var(--text-2xl--line-height));
|
|
525
|
+
}
|
|
526
|
+
.ProseMirror h3 {
|
|
527
|
+
font-size: var(--text-xl);
|
|
528
|
+
line-height: var(--tw-leading, var(--text-xl--line-height));
|
|
529
|
+
}
|
|
530
|
+
.ProseMirror h4 {
|
|
531
|
+
font-size: var(--text-lg);
|
|
532
|
+
line-height: var(--tw-leading, var(--text-lg--line-height));
|
|
533
|
+
}
|
|
534
|
+
.ProseMirror h5 {
|
|
535
|
+
font-size: var(--text-base);
|
|
536
|
+
line-height: var(--tw-leading, var(--text-base--line-height));
|
|
537
|
+
}
|
|
538
|
+
.ProseMirror h6 {
|
|
539
|
+
font-size: var(--text-sm);
|
|
540
|
+
line-height: var(--tw-leading, var(--text-sm--line-height));
|
|
541
|
+
}
|
|
542
|
+
.ProseMirror h1,
|
|
543
|
+
.ProseMirror h2,
|
|
544
|
+
.ProseMirror h3,
|
|
545
|
+
.ProseMirror h4,
|
|
546
|
+
.ProseMirror h5,
|
|
547
|
+
.ProseMirror h6 {
|
|
548
|
+
--tw-font-weight: var(--font-weight-bold);
|
|
549
|
+
font-weight: var(--font-weight-bold);
|
|
550
|
+
&:first-child {
|
|
551
|
+
margin-top: calc(var(--spacing) * 0);
|
|
552
|
+
}
|
|
553
|
+
&:last-child {
|
|
554
|
+
margin-bottom: calc(var(--spacing) * 0);
|
|
555
|
+
}
|
|
556
|
+
}
|
|
557
|
+
.ProseMirror h1,
|
|
558
|
+
.ProseMirror h2,
|
|
559
|
+
.ProseMirror h3 {
|
|
560
|
+
margin-top: calc(var(--spacing) * 12);
|
|
561
|
+
}
|
|
562
|
+
.ProseMirror h4,
|
|
563
|
+
.ProseMirror h5,
|
|
564
|
+
.ProseMirror h6 {
|
|
565
|
+
margin-top: calc(var(--spacing) * 8);
|
|
566
|
+
}
|
|
567
|
+
.ProseMirror a.link {
|
|
568
|
+
--tw-font-weight: var(--font-weight-extrabold);
|
|
569
|
+
font-weight: var(--font-weight-extrabold);
|
|
570
|
+
color: var(--color-blue-500);
|
|
571
|
+
@media (prefers-color-scheme: dark) {
|
|
572
|
+
color: var(--color-blue-400);
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
.ProseMirror mark {
|
|
576
|
+
border-radius: var(--radius-sm);
|
|
577
|
+
background-color: var(--color-red-500);
|
|
578
|
+
box-decoration-break: clone;
|
|
579
|
+
padding-inline: calc(var(--spacing) * 0);
|
|
580
|
+
padding-block: calc(var(--spacing) * 1);
|
|
581
|
+
color: inherit;
|
|
582
|
+
@media (prefers-color-scheme: dark) {
|
|
583
|
+
background-color: var(--color-red-400);
|
|
584
|
+
}
|
|
585
|
+
}
|
|
586
|
+
.ProseMirror img {
|
|
587
|
+
height: auto;
|
|
588
|
+
max-width: 100%;
|
|
589
|
+
}
|
|
590
|
+
.ProseMirror *[data-indent="1"] {
|
|
591
|
+
text-indent: 2em !important;
|
|
592
|
+
}
|
|
593
|
+
.ProseMirror *[data-indent="2"] {
|
|
594
|
+
text-indent: 4em !important;
|
|
595
|
+
}
|
|
596
|
+
.ProseMirror *[data-indent="3"] {
|
|
597
|
+
text-indent: 6em !important;
|
|
598
|
+
}
|
|
599
|
+
.ProseMirror *[data-indent="4"] {
|
|
600
|
+
text-indent: 8em !important;
|
|
601
|
+
}
|
|
602
|
+
.ProseMirror *[data-indent="5"] {
|
|
603
|
+
text-indent: 10em !important;
|
|
604
|
+
}
|
|
605
|
+
.ProseMirror *[data-indent="6"] {
|
|
606
|
+
text-indent: 12em !important;
|
|
607
|
+
}
|
|
608
|
+
.ProseMirror *[data-indent="7"] {
|
|
609
|
+
text-indent: 14em !important;
|
|
610
|
+
}
|
|
611
|
+
.ProseMirror iframe {
|
|
612
|
+
margin-top: calc(var(--spacing) * 2);
|
|
613
|
+
height: 100%;
|
|
614
|
+
width: 100%;
|
|
615
|
+
border-radius: var(--radius-sm);
|
|
616
|
+
border-style: var(--tw-border-style);
|
|
617
|
+
border-width: 1px;
|
|
618
|
+
border-color: var(--color-gray-200);
|
|
619
|
+
}
|
|
620
|
+
.ProseMirror .blockquote {
|
|
621
|
+
border-radius: var(--radius-lg);
|
|
622
|
+
border-top-left-radius: 0;
|
|
623
|
+
border-bottom-left-radius: 0;
|
|
624
|
+
border-left-style: var(--tw-border-style);
|
|
625
|
+
border-left-width: 4px;
|
|
626
|
+
border-left-color: var(--color-neutral-700);
|
|
627
|
+
padding-inline: calc(var(--spacing) * 4);
|
|
628
|
+
padding-block: calc(var(--spacing) * 2);
|
|
629
|
+
color: var(--color-black);
|
|
630
|
+
@media (prefers-color-scheme: dark) {
|
|
631
|
+
border-left-color: var(--color-neutral-300);
|
|
632
|
+
}
|
|
633
|
+
@media (prefers-color-scheme: dark) {
|
|
634
|
+
color: var(--color-white);
|
|
635
|
+
}
|
|
636
|
+
}
|
|
637
|
+
.ProseMirror code {
|
|
638
|
+
border-radius: var(--radius-sm);
|
|
639
|
+
background-color: var(--color-neutral-900);
|
|
640
|
+
font-family: var(--font-mono);
|
|
641
|
+
color: var(--color-white);
|
|
642
|
+
caret-color: var(--color-white);
|
|
643
|
+
--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
|
|
644
|
+
box-shadow:
|
|
645
|
+
var(--tw-inset-shadow),
|
|
646
|
+
var(--tw-inset-ring-shadow),
|
|
647
|
+
var(--tw-ring-offset-shadow),
|
|
648
|
+
var(--tw-ring-shadow),
|
|
649
|
+
var(--tw-shadow);
|
|
650
|
+
}
|
|
651
|
+
.ProseMirror pre {
|
|
652
|
+
margin-block: calc(var(--spacing) * 12);
|
|
653
|
+
border-radius: 0.25rem;
|
|
654
|
+
border-style: var(--tw-border-style);
|
|
655
|
+
border-width: 1px;
|
|
656
|
+
border-color: var(--color-black);
|
|
657
|
+
background-color: var(--color-neutral-700);
|
|
658
|
+
padding: calc(var(--spacing) * 4);
|
|
659
|
+
color: var(--color-white);
|
|
660
|
+
caret-color: var(--color-white);
|
|
661
|
+
@media (prefers-color-scheme: dark) {
|
|
662
|
+
border-color: var(--color-gray-200);
|
|
663
|
+
}
|
|
664
|
+
@media (prefers-color-scheme: dark) {
|
|
665
|
+
background-color: var(--color-neutral-900);
|
|
666
|
+
}
|
|
667
|
+
}
|
|
668
|
+
.ProseMirror pre code {
|
|
669
|
+
background-color: inherit;
|
|
670
|
+
padding: calc(var(--spacing) * 0);
|
|
671
|
+
color: inherit;
|
|
672
|
+
--tw-shadow: 0 0 #0000;
|
|
673
|
+
box-shadow:
|
|
674
|
+
var(--tw-inset-shadow),
|
|
675
|
+
var(--tw-inset-ring-shadow),
|
|
676
|
+
var(--tw-ring-offset-shadow),
|
|
677
|
+
var(--tw-ring-shadow),
|
|
678
|
+
var(--tw-shadow);
|
|
679
|
+
}
|
|
680
|
+
.ProseMirror ol {
|
|
681
|
+
list-style-type: decimal;
|
|
682
|
+
}
|
|
683
|
+
.ProseMirror ul {
|
|
684
|
+
list-style-type: disc;
|
|
685
|
+
}
|
|
686
|
+
.ProseMirror ul,
|
|
687
|
+
.ProseMirror ol {
|
|
688
|
+
margin-block: calc(var(--spacing) * 6);
|
|
689
|
+
padding-inline: calc(var(--spacing) * 8);
|
|
690
|
+
padding-block: calc(var(--spacing) * 0);
|
|
691
|
+
&:first-child {
|
|
692
|
+
margin-top: calc(var(--spacing) * 0);
|
|
693
|
+
}
|
|
694
|
+
&:last-child {
|
|
695
|
+
margin-bottom: calc(var(--spacing) * 0);
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
.ProseMirror ul ul,
|
|
699
|
+
.ProseMirror ul ol,
|
|
700
|
+
.ProseMirror ul li,
|
|
701
|
+
.ProseMirror ol ul,
|
|
702
|
+
.ProseMirror ol ol,
|
|
703
|
+
.ProseMirror ol li {
|
|
704
|
+
margin-block: calc(var(--spacing) * 1);
|
|
705
|
+
}
|
|
706
|
+
.ProseMirror ul p,
|
|
707
|
+
.ProseMirror ol p {
|
|
708
|
+
margin-top: calc(var(--spacing) * 0);
|
|
709
|
+
margin-bottom: calc(var(--spacing) * 1);
|
|
710
|
+
}
|
|
711
|
+
.ProseMirror > ul,
|
|
712
|
+
.ProseMirror > ol {
|
|
713
|
+
margin-block: calc(var(--spacing) * 8);
|
|
714
|
+
&:first-child {
|
|
715
|
+
margin-top: calc(var(--spacing) * 0);
|
|
716
|
+
}
|
|
717
|
+
&:last-child {
|
|
718
|
+
margin-bottom: calc(var(--spacing) * 0);
|
|
719
|
+
}
|
|
720
|
+
}
|
|
721
|
+
.ProseMirror ul[data-type=taskList] {
|
|
722
|
+
list-style-type: none;
|
|
723
|
+
padding: calc(var(--spacing) * 0);
|
|
724
|
+
}
|
|
725
|
+
.ProseMirror ul[data-type=taskList] p {
|
|
726
|
+
margin: calc(var(--spacing) * 0);
|
|
727
|
+
}
|
|
728
|
+
.ProseMirror ul[data-type=taskList] li {
|
|
729
|
+
display: flex;
|
|
730
|
+
}
|
|
731
|
+
.ProseMirror ul[data-type=taskList] li > label {
|
|
732
|
+
margin-right: calc(var(--spacing) * 2);
|
|
733
|
+
display: inline;
|
|
734
|
+
flex: auto;
|
|
735
|
+
flex-shrink: 0;
|
|
736
|
+
flex-grow: 0;
|
|
737
|
+
-webkit-user-select: none;
|
|
738
|
+
user-select: none;
|
|
739
|
+
}
|
|
740
|
+
.ProseMirror ul[data-type=taskList] li > div {
|
|
741
|
+
flex: auto;
|
|
742
|
+
}
|
|
743
|
+
.ProseMirror ul[data-type=taskList] li[data-checked=true] {
|
|
744
|
+
text-decoration-line: line-through;
|
|
745
|
+
}
|
|
746
|
+
.ProseMirror table {
|
|
747
|
+
border: 1px solid;
|
|
748
|
+
box-sizing: border-box;
|
|
749
|
+
display: block;
|
|
750
|
+
table-layout: fixed;
|
|
751
|
+
border-collapse: collapse;
|
|
752
|
+
overflow-x: auto;
|
|
753
|
+
overflow-y: hidden;
|
|
754
|
+
border-color: color-mix(in srgb, #000 10%, transparent);
|
|
755
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
756
|
+
border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
|
|
757
|
+
}
|
|
758
|
+
@media (prefers-color-scheme: dark) {
|
|
759
|
+
border-color: color-mix(in srgb, #fff 20%, transparent);
|
|
760
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
761
|
+
border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
|
|
762
|
+
}
|
|
763
|
+
}
|
|
764
|
+
}
|
|
765
|
+
.ProseMirror table td,
|
|
766
|
+
.ProseMirror table th {
|
|
767
|
+
border: 1px solid;
|
|
768
|
+
position: relative;
|
|
769
|
+
box-sizing: border-box;
|
|
770
|
+
min-width: 1em;
|
|
771
|
+
border-style: var(--tw-border-style);
|
|
772
|
+
border-width: 1px;
|
|
773
|
+
border-color: color-mix(in srgb, #000 10%, transparent);
|
|
774
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
775
|
+
border-color: color-mix(in oklab, var(--color-black) 10%, transparent);
|
|
776
|
+
}
|
|
777
|
+
padding: calc(var(--spacing) * 2);
|
|
778
|
+
text-align: left;
|
|
779
|
+
vertical-align: top;
|
|
780
|
+
@media (prefers-color-scheme: dark) {
|
|
781
|
+
border-color: color-mix(in srgb, #fff 20%, transparent);
|
|
782
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
783
|
+
border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
|
|
784
|
+
}
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
.ProseMirror table td:first-of-type:not(a),
|
|
788
|
+
.ProseMirror table th:first-of-type:not(a) {
|
|
789
|
+
margin-top: calc(var(--spacing) * 0);
|
|
790
|
+
}
|
|
791
|
+
.ProseMirror table td p,
|
|
792
|
+
.ProseMirror table th p {
|
|
793
|
+
margin: calc(var(--spacing) * 0);
|
|
794
|
+
}
|
|
795
|
+
.ProseMirror table td p + p,
|
|
796
|
+
.ProseMirror table th p + p {
|
|
797
|
+
margin-top: calc(var(--spacing) * 3);
|
|
798
|
+
}
|
|
799
|
+
.ProseMirror table th {
|
|
800
|
+
text-align: left;
|
|
801
|
+
--tw-font-weight: var(--font-weight-bold);
|
|
802
|
+
font-weight: var(--font-weight-bold);
|
|
803
|
+
}
|
|
804
|
+
.reactjs-tiptap-editor .ProseMirror .search-result {
|
|
805
|
+
background-color: #ffd90080;
|
|
806
|
+
}
|
|
807
|
+
.reactjs-tiptap-editor .ProseMirror .search-result-current {
|
|
808
|
+
background-color: #0dff0080;
|
|
809
|
+
}
|
|
447
810
|
}
|
|
448
811
|
@property --tw-rotate-x { syntax: "*"; inherits: false; }
|
|
449
812
|
@property --tw-rotate-y { syntax: "*"; inherits: false; }
|
|
@@ -467,6 +830,8 @@
|
|
|
467
830
|
@property --tw-ring-offset-color { syntax: "*"; inherits: false; initial-value: #fff; }
|
|
468
831
|
@property --tw-ring-offset-shadow { syntax: "*"; inherits: false; initial-value: 0 0 #0000; }
|
|
469
832
|
@property --tw-duration { syntax: "*"; inherits: false; }
|
|
833
|
+
@property --tw-leading { syntax: "*"; inherits: false; }
|
|
834
|
+
@property --tw-font-weight { syntax: "*"; inherits: false; }
|
|
470
835
|
@layer properties {
|
|
471
836
|
@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
|
|
472
837
|
*,
|
|
@@ -495,7 +860,9 @@
|
|
|
495
860
|
--tw-ring-offset-color: #fff;
|
|
496
861
|
--tw-ring-offset-shadow: 0 0 #0000;
|
|
497
862
|
--tw-duration: initial;
|
|
863
|
+
--tw-leading: initial;
|
|
864
|
+
--tw-font-weight: initial;
|
|
498
865
|
}
|
|
499
866
|
}
|
|
500
867
|
}
|
|
501
|
-
/*! tailwindcss v4.1.
|
|
868
|
+
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
|
package/dist/index.js
CHANGED
|
@@ -91,8 +91,7 @@ var Toolbar = ({ className, buttonClassName, dropdownContainerClassName, dropdow
|
|
|
91
91
|
dropdownItemClassName: anyExt.dropdownItemClassName
|
|
92
92
|
} : null;
|
|
93
93
|
}).filter(Boolean);
|
|
94
|
-
|
|
95
|
-
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("div", { className: (0, import_tailwind_merge.twMerge)("flex gap-x-1.5", className), children: entries.map(({ name, renderButton, options }) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(React.Fragment, { children: renderButton({
|
|
94
|
+
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("div", { className: (0, import_tailwind_merge.twMerge)("flex gap-x-1", className), children: entries.map(({ name, renderButton, options }) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(React.Fragment, { children: renderButton({
|
|
96
95
|
editor,
|
|
97
96
|
options,
|
|
98
97
|
buttonClassName: buttonClassName || "",
|
package/dist/index.mjs
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
EditorProvider,
|
|
3
3
|
useEditor
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-VYDH6BZE.mjs";
|
|
5
|
+
import "./chunk-FWCSY2DS.mjs";
|
|
5
6
|
|
|
6
7
|
// src/lib/Editor.tsx
|
|
7
8
|
import { useMemo } from "react";
|
|
@@ -43,8 +44,7 @@ var Toolbar = ({ className, buttonClassName, dropdownContainerClassName, dropdow
|
|
|
43
44
|
dropdownItemClassName: anyExt.dropdownItemClassName
|
|
44
45
|
} : null;
|
|
45
46
|
}).filter(Boolean);
|
|
46
|
-
|
|
47
|
-
return /* @__PURE__ */ jsx2("div", { className: twMerge("flex gap-x-1.5", className), children: entries.map(({ name, renderButton, options }) => /* @__PURE__ */ jsx2(React.Fragment, { children: renderButton({
|
|
47
|
+
return /* @__PURE__ */ jsx2("div", { className: twMerge("flex gap-x-1", className), children: entries.map(({ name, renderButton, options }) => /* @__PURE__ */ jsx2(React.Fragment, { children: renderButton({
|
|
48
48
|
editor,
|
|
49
49
|
options,
|
|
50
50
|
buttonClassName: buttonClassName || "",
|
|
@@ -16,6 +16,13 @@ type ExtButtonOptions = {
|
|
|
16
16
|
buttonClassName: string;
|
|
17
17
|
}) => ReactNode;
|
|
18
18
|
};
|
|
19
|
+
type ExtWithoutActiveOptions = Omit<ExtButtonOptions, "activeClassName" | "component"> & {
|
|
20
|
+
component: (args: {
|
|
21
|
+
options: ExtWithoutActiveOptions;
|
|
22
|
+
editor: Editor;
|
|
23
|
+
buttonClassName: string;
|
|
24
|
+
}) => ReactNode;
|
|
25
|
+
};
|
|
19
26
|
type ExtDropdownOptions = {
|
|
20
27
|
className?: string;
|
|
21
28
|
showArrow?: boolean;
|
|
@@ -29,4 +36,4 @@ type ExtDropdownOptions = {
|
|
|
29
36
|
tooltipPlacement?: Placement;
|
|
30
37
|
};
|
|
31
38
|
|
|
32
|
-
export type { ExtButtonOptions as E, ExtDropdownOptions as a };
|
|
39
|
+
export type { ExtButtonOptions as E, ExtDropdownOptions as a, ExtWithoutActiveOptions as b };
|
|
@@ -16,6 +16,13 @@ type ExtButtonOptions = {
|
|
|
16
16
|
buttonClassName: string;
|
|
17
17
|
}) => ReactNode;
|
|
18
18
|
};
|
|
19
|
+
type ExtWithoutActiveOptions = Omit<ExtButtonOptions, "activeClassName" | "component"> & {
|
|
20
|
+
component: (args: {
|
|
21
|
+
options: ExtWithoutActiveOptions;
|
|
22
|
+
editor: Editor;
|
|
23
|
+
buttonClassName: string;
|
|
24
|
+
}) => ReactNode;
|
|
25
|
+
};
|
|
19
26
|
type ExtDropdownOptions = {
|
|
20
27
|
className?: string;
|
|
21
28
|
showArrow?: boolean;
|
|
@@ -29,4 +36,4 @@ type ExtDropdownOptions = {
|
|
|
29
36
|
tooltipPlacement?: Placement;
|
|
30
37
|
};
|
|
31
38
|
|
|
32
|
-
export type { ExtButtonOptions as E, ExtDropdownOptions as a };
|
|
39
|
+
export type { ExtButtonOptions as E, ExtDropdownOptions as a, ExtWithoutActiveOptions as b };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ritext",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.19",
|
|
4
4
|
"description": "Ritext is a modern WYSIWYG rich text editor built with Tailwind CSS, powered by Tiptap. It offers a customizable UI and functional layer that lets you design your own editor controls and toolbars with clean, composable React components—no heavy UI, no extra dependencies beyond Tiptap.",
|
|
5
5
|
"homepage": "https://ritext.vercel.app/",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -60,40 +60,43 @@
|
|
|
60
60
|
"url": "https://github.com/siamahnaf/ritext"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
|
63
|
-
"@eslint/js": "^9.39.
|
|
64
|
-
"@tailwindcss/postcss": "^4.1.
|
|
65
|
-
"@types/node": "^
|
|
63
|
+
"@eslint/js": "^9.39.2",
|
|
64
|
+
"@tailwindcss/postcss": "^4.1.18",
|
|
65
|
+
"@types/node": "^25",
|
|
66
66
|
"@types/react": "^19",
|
|
67
67
|
"@types/react-dom": "^19",
|
|
68
|
-
"eslint": "^9.
|
|
68
|
+
"eslint": "^9.39.2",
|
|
69
69
|
"eslint-config-prettier": "^10.1.8",
|
|
70
70
|
"eslint-plugin-import": "^2.32.0",
|
|
71
71
|
"eslint-plugin-react": "^7.37.5",
|
|
72
72
|
"eslint-plugin-react-hooks": "^7.0.1",
|
|
73
73
|
"postcss": "^8.5.6",
|
|
74
|
-
"react": "^19.2.
|
|
75
|
-
"react-dom": "^19.2.
|
|
76
|
-
"tailwindcss": "^4.1.
|
|
77
|
-
"tsup": "^8.5.
|
|
74
|
+
"react": "^19.2.3",
|
|
75
|
+
"react-dom": "^19.2.3",
|
|
76
|
+
"tailwindcss": "^4.1.18",
|
|
77
|
+
"tsup": "^8.5.1",
|
|
78
78
|
"typescript": "^5.9.3",
|
|
79
|
-
"typescript-eslint": "^8.
|
|
79
|
+
"typescript-eslint": "^8.50.1"
|
|
80
80
|
},
|
|
81
81
|
"dependencies": {
|
|
82
82
|
"@floating-ui/react": "^0.27.16",
|
|
83
|
-
"@tiptap/extension-bold": "^3.
|
|
84
|
-
"@tiptap/extension-document": "^3.
|
|
85
|
-
"@tiptap/extension-
|
|
86
|
-
"@tiptap/extension-
|
|
87
|
-
"@tiptap/extension-
|
|
88
|
-
"@tiptap/extension-
|
|
89
|
-
"@tiptap/extension-
|
|
90
|
-
"@tiptap/extension-
|
|
91
|
-
"@tiptap/extension-
|
|
92
|
-
"@tiptap/
|
|
93
|
-
"@tiptap/
|
|
94
|
-
"@tiptap/
|
|
95
|
-
"
|
|
96
|
-
"
|
|
83
|
+
"@tiptap/extension-bold": "^3.14.0",
|
|
84
|
+
"@tiptap/extension-document": "^3.14.0",
|
|
85
|
+
"@tiptap/extension-heading": "^3.14.0",
|
|
86
|
+
"@tiptap/extension-italic": "^3.14.0",
|
|
87
|
+
"@tiptap/extension-paragraph": "^3.14.0",
|
|
88
|
+
"@tiptap/extension-strike": "^3.14.0",
|
|
89
|
+
"@tiptap/extension-subscript": "^3.14.0",
|
|
90
|
+
"@tiptap/extension-superscript": "^3.14.0",
|
|
91
|
+
"@tiptap/extension-text": "^3.14.0",
|
|
92
|
+
"@tiptap/extension-text-style": "^3.14.0",
|
|
93
|
+
"@tiptap/extension-underline": "^3.14.0",
|
|
94
|
+
"@tiptap/extensions": "^3.14.0",
|
|
95
|
+
"@tiptap/pm": "^3.14.0",
|
|
96
|
+
"@tiptap/react": "^3.14.0",
|
|
97
|
+
"@tiptap/starter-kit": "^3.14.0",
|
|
98
|
+
"motion": "^12.23.26",
|
|
99
|
+
"tailwind-merge": "^3.4.0"
|
|
97
100
|
},
|
|
98
101
|
"peerDependencies": {
|
|
99
102
|
"react": "^19",
|