prosekit 0.18.4 → 0.20.0-beta.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.
Files changed (135) hide show
  1. package/dist/basic/style.css +97 -91
  2. package/dist/basic/typography.css +246 -119
  3. package/dist/extensions/commit/style.css +1 -3
  4. package/dist/extensions/gap-cursor/style.css +8 -8
  5. package/dist/extensions/list/style.css +43 -38
  6. package/dist/extensions/loro/style.css +20 -19
  7. package/dist/extensions/page/style.css +43 -0
  8. package/dist/extensions/placeholder/style.css +4 -7
  9. package/dist/extensions/search/style.css +5 -8
  10. package/dist/extensions/table/style.css +19 -20
  11. package/dist/extensions/virtual-selection/style.css +1 -4
  12. package/dist/extensions/yjs/style.css +15 -20
  13. package/dist/pm/view/style/prosemirror.css +21 -21
  14. package/dist/prosekit-basic.js +2 -3
  15. package/dist/prosekit-core-test.js +2 -3
  16. package/dist/prosekit-core.js +2 -3
  17. package/dist/prosekit-extensions-autocomplete.js +2 -3
  18. package/dist/prosekit-extensions-background-color.js +2 -3
  19. package/dist/prosekit-extensions-blockquote.js +2 -3
  20. package/dist/prosekit-extensions-bold.js +2 -3
  21. package/dist/prosekit-extensions-code-block.js +2 -3
  22. package/dist/prosekit-extensions-code.js +2 -3
  23. package/dist/prosekit-extensions-commit.js +2 -3
  24. package/dist/prosekit-extensions-doc.js +2 -3
  25. package/dist/prosekit-extensions-drop-cursor.js +2 -3
  26. package/dist/prosekit-extensions-drop-indicator.js +2 -3
  27. package/dist/prosekit-extensions-enter-rule.js +2 -3
  28. package/dist/prosekit-extensions-file.js +2 -3
  29. package/dist/prosekit-extensions-gap-cursor.js +2 -3
  30. package/dist/prosekit-extensions-hard-break.js +2 -3
  31. package/dist/prosekit-extensions-heading.js +2 -3
  32. package/dist/prosekit-extensions-horizontal-rule.js +2 -3
  33. package/dist/prosekit-extensions-image.js +2 -3
  34. package/dist/prosekit-extensions-input-rule.js +2 -3
  35. package/dist/prosekit-extensions-italic.js +2 -3
  36. package/dist/prosekit-extensions-link.js +2 -3
  37. package/dist/prosekit-extensions-list.js +2 -3
  38. package/dist/prosekit-extensions-loro.js +2 -3
  39. package/dist/prosekit-extensions-mark-rule.js +2 -3
  40. package/dist/prosekit-extensions-math.js +2 -3
  41. package/dist/prosekit-extensions-mention.js +2 -3
  42. package/dist/prosekit-extensions-mod-click-prevention.js +2 -3
  43. package/dist/prosekit-extensions-page.d.ts +1 -0
  44. package/dist/prosekit-extensions-page.js +2 -0
  45. package/dist/prosekit-extensions-paragraph.js +2 -3
  46. package/dist/prosekit-extensions-paste-rule.js +2 -3
  47. package/dist/prosekit-extensions-placeholder.js +2 -3
  48. package/dist/prosekit-extensions-readonly.js +2 -3
  49. package/dist/prosekit-extensions-search.js +2 -3
  50. package/dist/prosekit-extensions-strike.js +2 -3
  51. package/dist/prosekit-extensions-table.js +2 -3
  52. package/dist/prosekit-extensions-text-align.js +2 -3
  53. package/dist/prosekit-extensions-text-color.js +2 -3
  54. package/dist/prosekit-extensions-text.js +2 -3
  55. package/dist/prosekit-extensions-underline.js +2 -3
  56. package/dist/prosekit-extensions-virtual-selection.js +2 -3
  57. package/dist/prosekit-extensions-yjs.js +2 -3
  58. package/dist/prosekit-extensions.js +2 -3
  59. package/dist/prosekit-lit-autocomplete.js +2 -3
  60. package/dist/prosekit-lit-block-handle.js +2 -3
  61. package/dist/prosekit-lit-drop-indicator.js +2 -3
  62. package/dist/prosekit-lit-inline-popover.js +2 -3
  63. package/dist/prosekit-lit-popover.js +2 -3
  64. package/dist/prosekit-lit-resizable.js +2 -3
  65. package/dist/prosekit-lit-table-handle.js +2 -3
  66. package/dist/prosekit-lit-tooltip.js +2 -3
  67. package/dist/prosekit-lit.js +2 -3
  68. package/dist/prosekit-pm-commands.js +2 -3
  69. package/dist/prosekit-pm-history.js +2 -3
  70. package/dist/prosekit-pm-inputrules.js +2 -3
  71. package/dist/prosekit-pm-keymap.js +2 -3
  72. package/dist/prosekit-pm-model.js +2 -3
  73. package/dist/prosekit-pm-state.js +2 -3
  74. package/dist/prosekit-pm-transform.js +2 -3
  75. package/dist/prosekit-pm-view.js +2 -3
  76. package/dist/prosekit-pm.js +2 -3
  77. package/dist/prosekit-preact-autocomplete.js +2 -3
  78. package/dist/prosekit-preact-block-handle.js +2 -3
  79. package/dist/prosekit-preact-drop-indicator.js +2 -3
  80. package/dist/prosekit-preact-inline-popover.js +2 -3
  81. package/dist/prosekit-preact-popover.js +2 -3
  82. package/dist/prosekit-preact-resizable.js +2 -3
  83. package/dist/prosekit-preact-table-handle.js +2 -3
  84. package/dist/prosekit-preact-tooltip.js +2 -3
  85. package/dist/prosekit-preact.js +2 -3
  86. package/dist/prosekit-react-autocomplete.js +2 -3
  87. package/dist/prosekit-react-block-handle.js +2 -3
  88. package/dist/prosekit-react-drop-indicator.js +2 -3
  89. package/dist/prosekit-react-inline-popover.js +2 -3
  90. package/dist/prosekit-react-popover.js +2 -3
  91. package/dist/prosekit-react-resizable.js +2 -3
  92. package/dist/prosekit-react-table-handle.js +2 -3
  93. package/dist/prosekit-react-tooltip.js +2 -3
  94. package/dist/prosekit-react.js +2 -3
  95. package/dist/prosekit-solid-autocomplete.js +2 -3
  96. package/dist/prosekit-solid-block-handle.js +2 -3
  97. package/dist/prosekit-solid-drop-indicator.js +2 -3
  98. package/dist/prosekit-solid-inline-popover.js +2 -3
  99. package/dist/prosekit-solid-popover.js +2 -3
  100. package/dist/prosekit-solid-resizable.js +2 -3
  101. package/dist/prosekit-solid-table-handle.js +2 -3
  102. package/dist/prosekit-solid-tooltip.js +2 -3
  103. package/dist/prosekit-solid.js +2 -3
  104. package/dist/prosekit-svelte-autocomplete.js +2 -3
  105. package/dist/prosekit-svelte-block-handle.js +2 -3
  106. package/dist/prosekit-svelte-drop-indicator.js +2 -3
  107. package/dist/prosekit-svelte-inline-popover.js +2 -3
  108. package/dist/prosekit-svelte-popover.js +2 -3
  109. package/dist/prosekit-svelte-resizable.js +2 -3
  110. package/dist/prosekit-svelte-table-handle.js +2 -3
  111. package/dist/prosekit-svelte-tooltip.js +2 -3
  112. package/dist/prosekit-svelte.js +2 -3
  113. package/dist/prosekit-vue-autocomplete.js +2 -3
  114. package/dist/prosekit-vue-block-handle.js +2 -3
  115. package/dist/prosekit-vue-drop-indicator.js +2 -3
  116. package/dist/prosekit-vue-inline-popover.js +2 -3
  117. package/dist/prosekit-vue-popover.js +2 -3
  118. package/dist/prosekit-vue-resizable.js +2 -3
  119. package/dist/prosekit-vue-table-handle.js +2 -3
  120. package/dist/prosekit-vue-tooltip.js +2 -3
  121. package/dist/prosekit-vue.js +2 -3
  122. package/dist/prosekit-web-autocomplete.js +2 -3
  123. package/dist/prosekit-web-block-handle.js +2 -3
  124. package/dist/prosekit-web-drop-indicator.js +2 -3
  125. package/dist/prosekit-web-inline-popover.js +2 -3
  126. package/dist/prosekit-web-popover.js +2 -3
  127. package/dist/prosekit-web-resizable.js +2 -3
  128. package/dist/prosekit-web-table-handle.js +2 -3
  129. package/dist/prosekit-web-tooltip.js +2 -3
  130. package/dist/prosekit-web.js +2 -3
  131. package/dist/prosekit.js +1 -1
  132. package/package.json +31 -20
  133. package/src/extensions/page/style-css.ts +10 -0
  134. package/src/extensions/page/style.css +1 -0
  135. package/src/extensions/page.gen.ts +5 -0
@@ -1,7 +1,3 @@
1
- /* ../../node_modules/.pnpm/prosemirror-view@1.41.6/node_modules/prosemirror-view/style/prosemirror.css */
2
- .ProseMirror {
3
- position: relative;
4
- }
5
1
  .ProseMirror {
6
2
  word-wrap: break-word;
7
3
  white-space: pre-wrap;
@@ -9,237 +5,247 @@
9
5
  -webkit-font-variant-ligatures: none;
10
6
  font-variant-ligatures: none;
11
7
  font-feature-settings: "liga" 0;
8
+ position: relative;
12
9
  }
10
+
13
11
  .ProseMirror pre {
14
12
  white-space: pre-wrap;
15
13
  }
14
+
16
15
  .ProseMirror li {
17
16
  position: relative;
18
17
  }
19
- .ProseMirror-hideselection *::selection {
20
- background: transparent;
18
+
19
+ .ProseMirror-hideselection ::selection {
20
+ background: none;
21
21
  }
22
- .ProseMirror-hideselection *::-moz-selection {
23
- background: transparent;
22
+
23
+ .ProseMirror-hideselection ::selection {
24
+ background: none;
24
25
  }
26
+
25
27
  .ProseMirror-hideselection {
26
- caret-color: transparent;
28
+ caret-color: #0000;
27
29
  }
28
- .ProseMirror [draggable][contenteditable=false] {
30
+
31
+ .ProseMirror [draggable][contenteditable="false"] {
29
32
  user-select: text;
30
33
  }
34
+
31
35
  .ProseMirror-selectednode {
32
36
  outline: 2px solid #8cf;
33
37
  }
38
+
34
39
  li.ProseMirror-selectednode {
35
40
  outline: none;
36
41
  }
42
+
37
43
  li.ProseMirror-selectednode:after {
38
44
  content: "";
39
- position: absolute;
40
- left: -32px;
41
- right: -2px;
42
- top: -2px;
43
- bottom: -2px;
44
- border: 2px solid #8cf;
45
45
  pointer-events: none;
46
+ border: 2px solid #8cf;
47
+ position: absolute;
48
+ inset: -2px -2px -2px -32px;
46
49
  }
50
+
47
51
  img.ProseMirror-separator {
48
- display: inline !important;
49
52
  border: none !important;
50
53
  margin: 0 !important;
54
+ display: inline !important;
51
55
  }
52
56
 
53
- /* ../pm/src/view/style/prosemirror.css */
54
-
55
- /* ../extensions/src/list/style.css */
56
57
  :root {
57
58
  --prosekit-list-bullet-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='2.5' fill='currentColor'/%3E%3C/svg%3E");
58
59
  --prosekit-list-toggle-open-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpolygon points='8,10 12,14 16,10' fill='currentColor'/%3E%3C/svg%3E");
59
60
  --prosekit-list-toggle-closed-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpolygon points='10,8 14,12 10,16' fill='currentColor'/%3E%3C/svg%3E");
60
61
  }
62
+
61
63
  .prosemirror-flat-list {
62
- position: relative;
63
64
  margin: 0;
64
65
  padding: 0;
65
66
  list-style: none;
67
+ position: relative;
66
68
  }
69
+
67
70
  .prosemirror-flat-list > .list-marker {
68
- position: absolute;
69
71
  width: 1.5em;
70
72
  width: 1lh;
71
73
  height: 1.5em;
74
+ text-align: center;
72
75
  height: 1lh;
76
+ position: absolute;
73
77
  inset-inline-start: 0;
74
- text-align: center;
75
78
  }
79
+
76
80
  .prosemirror-flat-list > .list-content {
77
81
  margin-inline-start: 1.5em;
78
82
  margin-inline-start: 1lh;
79
83
  }
80
- .prosemirror-flat-list[data-list-kind=bullet] > .list-marker,
81
- .prosemirror-flat-list[data-list-kind=toggle] > .list-marker {
84
+
85
+ .prosemirror-flat-list[data-list-kind="bullet"] > .list-marker, .prosemirror-flat-list[data-list-kind="toggle"] > .list-marker {
82
86
  background-color: currentColor;
83
- -webkit-mask-position: center;
84
87
  mask-position: center;
85
- -webkit-mask-repeat: no-repeat;
86
- mask-repeat: no-repeat;
87
- -webkit-mask-size: contain;
88
88
  mask-size: contain;
89
+ mask-repeat: no-repeat;
89
90
  }
90
- .prosemirror-flat-list[data-list-kind=bullet] > .list-marker {
91
- -webkit-mask-image: var(--prosekit-list-bullet-icon);
91
+
92
+ .prosemirror-flat-list[data-list-kind="bullet"] > .list-marker {
92
93
  mask-image: var(--prosekit-list-bullet-icon);
93
94
  }
94
- .prosemirror-flat-list[data-list-kind=toggle] > .list-marker {
95
- -webkit-mask-image: var(--prosekit-list-toggle-open-icon);
95
+
96
+ .prosemirror-flat-list[data-list-kind="toggle"] > .list-marker {
96
97
  mask-image: var(--prosekit-list-toggle-open-icon);
97
98
  }
98
- .prosemirror-flat-list[data-list-kind=toggle][data-list-collapsable][data-list-collapsed] > .list-marker {
99
- -webkit-mask-image: var(--prosekit-list-toggle-closed-icon);
99
+
100
+ .prosemirror-flat-list[data-list-kind="toggle"][data-list-collapsable][data-list-collapsed] > .list-marker {
100
101
  mask-image: var(--prosekit-list-toggle-closed-icon);
101
102
  }
102
- .prosemirror-flat-list[data-list-kind=ordered] {
103
- counter-increment: prosemirror-flat-list-counter;
104
- }
105
- .prosemirror-flat-list[data-list-kind=ordered] > * {
103
+
104
+ .prosemirror-flat-list[data-list-kind="ordered"] > * {
106
105
  contain: style;
107
106
  }
108
- .prosemirror-flat-list[data-list-kind=ordered]::before {
109
- position: absolute;
107
+
108
+ .prosemirror-flat-list[data-list-kind="ordered"]:before {
110
109
  inset-inline-end: calc(100% - 1.5em);
111
- inset-inline-end: calc(100% - 1lh);
112
110
  content: counter(prosemirror-flat-list-counter, decimal) ". ";
113
111
  font-variant-numeric: tabular-nums;
112
+ position: absolute;
113
+ inset-inline-end: calc(100% - 1lh);
114
+ }
115
+
116
+ .prosemirror-flat-list[data-list-kind="ordered"] {
117
+ counter-increment: prosemirror-flat-list-counter;
114
118
  }
115
- .prosemirror-flat-list[data-list-kind=ordered]:first-child,
116
- :not(.prosemirror-flat-list[data-list-kind=ordered]) + .prosemirror-flat-list[data-list-kind=ordered] {
119
+
120
+ .prosemirror-flat-list[data-list-kind="ordered"]:first-child, :not(.prosemirror-flat-list[data-list-kind="ordered"]) + .prosemirror-flat-list[data-list-kind="ordered"] {
117
121
  counter-reset: prosemirror-flat-list-counter;
118
122
  }
123
+
119
124
  @supports (counter-set: prosemirror-flat-list-counter 1) {
120
- :is(.prosemirror-flat-list[data-list-kind=ordered]:first-child, :not(.prosemirror-flat-list[data-list-kind=ordered]) + .prosemirror-flat-list[data-list-kind=ordered])[data-list-order] {
125
+ :is(.prosemirror-flat-list[data-list-kind="ordered"]:first-child, :not(.prosemirror-flat-list[data-list-kind="ordered"]) + .prosemirror-flat-list[data-list-kind="ordered"])[data-list-order] {
121
126
  counter-set: prosemirror-flat-list-counter var(--prosemirror-flat-list-order);
122
127
  }
123
128
  }
129
+
124
130
  @supports not (counter-set: prosemirror-flat-list-counter 1) {
125
- :is(.prosemirror-flat-list[data-list-kind=ordered]:first-child, :not(.prosemirror-flat-list[data-list-kind=ordered]) + .prosemirror-flat-list[data-list-kind=ordered])[data-list-order] {
131
+ :is(.prosemirror-flat-list[data-list-kind="ordered"]:first-child, :not(.prosemirror-flat-list[data-list-kind="ordered"]) + .prosemirror-flat-list[data-list-kind="ordered"])[data-list-order] {
126
132
  counter-increment: prosemirror-flat-list-counter var(--prosemirror-flat-list-order);
127
133
  }
128
134
  }
129
- .prosemirror-flat-list[data-list-kind=task] > .list-marker,
130
- .prosemirror-flat-list[data-list-kind=task] > .list-marker * {
131
- display: flex;
132
- align-items: center;
135
+
136
+ .prosemirror-flat-list[data-list-kind="task"] > .list-marker, .prosemirror-flat-list[data-list-kind="task"] > .list-marker * {
137
+ cursor: pointer;
133
138
  justify-content: center;
139
+ align-items: center;
134
140
  margin: 0;
135
141
  padding: 0;
136
- cursor: pointer;
142
+ display: flex;
137
143
  }
138
- .prosemirror-flat-list[data-list-kind=toggle][data-list-collapsable] > .list-marker {
144
+
145
+ .prosemirror-flat-list[data-list-kind="toggle"][data-list-collapsable] > .list-marker {
139
146
  cursor: pointer;
140
147
  }
141
- .prosemirror-flat-list[data-list-kind=toggle]:not([data-list-collapsable]) > .list-marker {
142
- opacity: 40%;
148
+
149
+ .prosemirror-flat-list[data-list-kind="toggle"]:not([data-list-collapsable]) > .list-marker {
150
+ opacity: .4;
143
151
  pointer-events: none;
144
152
  }
145
- .prosemirror-flat-list[data-list-kind=toggle][data-list-collapsable][data-list-collapsed] > .list-content > *:nth-child(n+2) {
153
+
154
+ .prosemirror-flat-list[data-list-kind="toggle"][data-list-collapsable][data-list-collapsed] > .list-content > :nth-child(n+2) {
146
155
  display: none;
147
156
  }
148
157
 
149
- /* ../extensions/src/table/style.css */
150
158
  .ProseMirror .tableWrapper {
151
159
  overflow-x: auto;
152
160
  }
161
+
153
162
  .ProseMirror table {
154
- width: 100%;
155
- overflow: hidden;
156
163
  border-collapse: collapse;
157
164
  table-layout: fixed;
165
+ width: 100%;
166
+ overflow: hidden;
158
167
  }
159
- .ProseMirror td,
160
- .ProseMirror th {
168
+
169
+ .ProseMirror td, .ProseMirror th {
161
170
  box-sizing: border-box;
162
- position: relative;
163
- padding-right: 0.75rem;
164
- padding-left: 0.75rem;
165
- border-width: 1px;
166
171
  vertical-align: top;
172
+ border-width: 1px;
173
+ padding-left: .75rem;
174
+ padding-right: .75rem;
175
+ position: relative;
167
176
  }
177
+
168
178
  prosekit-table-handle-drop-indicator {
169
- background-color: HighlightText;
179
+ background-color: highlighttext;
170
180
  }
181
+
171
182
  .ProseMirror .column-resize-handle {
172
183
  z-index: 20;
184
+ pointer-events: none;
185
+ background-color: highlighttext;
186
+ width: 4px;
173
187
  position: absolute;
174
188
  top: 0;
175
- right: -2px;
176
189
  bottom: 0;
177
- width: 4px;
178
- background-color: HighlightText;
179
- pointer-events: none;
190
+ right: -2px;
180
191
  }
192
+
181
193
  .ProseMirror.resize-cursor {
182
194
  cursor: ew-resize;
183
195
  cursor: col-resize;
184
196
  }
197
+
185
198
  .ProseMirror .selectedCell {
186
- --color:
187
- 210,
188
- 100%,
189
- 56%;
199
+ --color: 210, 100%, 56%;
190
200
  border: 1px double hsl(var(--color));
191
201
  background-color: hsla(var(--color), 20%);
192
202
  }
193
203
 
194
- /* ../extensions/src/placeholder/style.css */
195
- .prosekit-placeholder::before {
196
- position: absolute;
197
- height: 0;
204
+ .prosekit-placeholder:before {
198
205
  content: attr(data-placeholder);
199
- opacity: 30%;
206
+ opacity: .3;
200
207
  pointer-events: none;
208
+ height: 0;
209
+ position: absolute;
201
210
  }
202
211
 
203
- /* ../extensions/src/virtual-selection/style.css */
204
212
  .prosekit-virtual-selection {
205
- border-radius: 2px;
206
213
  background-color: #8888884d;
214
+ border-radius: 2px;
207
215
  box-shadow: 0 0 0 2px #8888884d;
208
216
  }
209
217
 
210
- /* ../extensions/src/commit/style.css */
211
218
  .prosekit-commit-deletion {
212
219
  background-color: #e5534b80;
213
220
  text-decoration: line-through;
214
221
  }
222
+
215
223
  .prosekit-commit-addition {
216
224
  background-color: #53e54b80;
217
225
  }
218
226
 
219
- /* ../extensions/src/gap-cursor/style.css */
220
227
  .ProseMirror-gapcursor {
228
+ pointer-events: none;
221
229
  display: none;
222
230
  position: relative;
223
- pointer-events: none;
224
231
  }
232
+
225
233
  .ProseMirror-gapcursor:after {
234
+ content: "";
235
+ border-top: 1px solid;
236
+ width: 20px;
237
+ animation: 1.1s steps(2, start) infinite ProseMirror-cursor-blink;
226
238
  display: block;
227
239
  position: absolute;
228
240
  top: -2px;
229
- width: 20px;
230
- border-top: 1px solid currentColor;
231
- content: "";
232
- animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;
233
241
  }
242
+
234
243
  @keyframes ProseMirror-cursor-blink {
235
244
  to {
236
245
  visibility: hidden;
237
246
  }
238
247
  }
248
+
239
249
  .ProseMirror-focused .ProseMirror-gapcursor {
240
250
  display: block;
241
251
  }
242
-
243
- /* ../basic/src/style.css */
244
-
245
- /* src/basic/style.css */