@prosekit/basic 0.6.6 → 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/style.css CHANGED
@@ -70,17 +70,17 @@ img.ProseMirror-separator {
70
70
 
71
71
  & > .list-marker {
72
72
  position: absolute;
73
- left: 0;
74
73
  width: 1.5em;
75
74
  width: 1lh;
76
75
  height: 1.5em;
77
76
  height: 1lh;
77
+ inset-inline-start: 0;
78
78
  text-align: center;
79
79
  }
80
80
 
81
81
  & > .list-content {
82
- margin-left: 1.5em;
83
- margin-left: 1lh;
82
+ margin-inline-start: 1.5em;
83
+ margin-inline-start: 1lh;
84
84
  }
85
85
 
86
86
  &[data-list-kind="bullet"] > .list-marker,
@@ -120,8 +120,8 @@ img.ProseMirror-separator {
120
120
 
121
121
  &::before {
122
122
  position: absolute;
123
- right: calc(100% - 1.5em);
124
- right: calc(100% - 1lh);
123
+ inset-inline-end: calc(100% - 1.5em);
124
+ inset-inline-end: calc(100% - 1lh);
125
125
  content: counter(prosemirror-flat-list-counter, decimal) ". ";
126
126
  font-variant-numeric: tabular-nums;
127
127
  }
@@ -1 +1 @@
1
- {"version":3,"file":"style.css","names":[],"sources":["../../../node_modules/.pnpm/prosemirror-view@1.41.3/node_modules/prosemirror-view/style/prosemirror.css","../../pm/src/view/style/prosemirror.css","../../extensions/src/list/style.css","../../extensions/src/table/style.css","../../extensions/src/placeholder/style.css","../../extensions/src/virtual-selection/style.css","../../extensions/src/commit/style.css","../../extensions/src/gap-cursor/style.css","../src/style.css"],"sourcesContent":[".ProseMirror {\n position: relative;\n}\n\n.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n white-space: break-spaces;\n -webkit-font-variant-ligatures: none;\n font-variant-ligatures: none;\n font-feature-settings: \"liga\" 0; /* the above doesn't seem to work in Edge */\n}\n\n.ProseMirror pre {\n white-space: pre-wrap;\n}\n\n.ProseMirror li {\n position: relative;\n}\n\n.ProseMirror-hideselection *::selection { background: transparent; }\n.ProseMirror-hideselection *::-moz-selection { background: transparent; }\n.ProseMirror-hideselection { caret-color: transparent; }\n\n/* See https://github.com/ProseMirror/prosemirror/issues/1421#issuecomment-1759320191 */\n.ProseMirror [draggable][contenteditable=false] { user-select: text }\n\n.ProseMirror-selectednode {\n outline: 2px solid #8cf;\n}\n\n/* Make sure li selections wrap around markers */\n\nli.ProseMirror-selectednode {\n outline: none;\n}\n\nli.ProseMirror-selectednode:after {\n content: \"\";\n position: absolute;\n left: -32px;\n right: -2px; top: -2px; bottom: -2px;\n border: 2px solid #8cf;\n pointer-events: none;\n}\n\n/* Protect against generic img rules */\n\nimg.ProseMirror-separator {\n display: inline !important;\n border: none !important;\n margin: 0 !important;\n}\n","@import \"prosemirror-view/style/prosemirror.css\";\n",":root {\n --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\");\n --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\");\n --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\");\n}\n\n.prosemirror-flat-list {\n & {\n position: relative;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n & > .list-marker {\n position: absolute;\n left: 0;\n width: 1.5em;\n width: 1lh;\n height: 1.5em;\n height: 1lh;\n text-align: center;\n }\n\n & > .list-content {\n margin-left: 1.5em;\n margin-left: 1lh;\n }\n\n &[data-list-kind=\"bullet\"] > .list-marker,\n &[data-list-kind=\"toggle\"] > .list-marker {\n background-color: currentColor;\n mask-position: center;\n mask-repeat: no-repeat;\n mask-size: contain;\n }\n\n &[data-list-kind=\"bullet\"] {\n & > .list-marker {\n mask-image: var(--prosekit-list-bullet-icon);\n }\n }\n\n &[data-list-kind=\"toggle\"] {\n & > .list-marker {\n mask-image: var(--prosekit-list-toggle-open-icon);\n }\n\n &[data-list-collapsable][data-list-collapsed] > .list-marker {\n mask-image: var(--prosekit-list-toggle-closed-icon);\n }\n }\n\n &[data-list-kind=\"ordered\"] {\n /*\n Ensure that the counters in children don't escape, so that the sub lists\n won't affect the counter of the parent list.\n \n See also https://github.com/ocavue/prosemirror-flat-list/issues/23\n */\n & > * {\n contain: style;\n }\n\n &::before {\n position: absolute;\n right: calc(100% - 1.5em);\n right: calc(100% - 1lh);\n content: counter(prosemirror-flat-list-counter, decimal) \". \";\n font-variant-numeric: tabular-nums;\n }\n counter-increment: prosemirror-flat-list-counter;\n\n /* \n Reset the counter for the first list node in the sequence.\n */\n &:first-child,\n :not(&) + & {\n counter-reset: prosemirror-flat-list-counter;\n\n /* \n If the first list node has a custom order number, set the counter to that value.\n */\n &[data-list-order] {\n @supports (counter-set: prosemirror-flat-list-counter 1) {\n counter-set: prosemirror-flat-list-counter var(--prosemirror-flat-list-order);\n }\n\n /* \n Safari older than version 17.2 doesn't support `counter-set` \n */\n @supports not (counter-set: prosemirror-flat-list-counter 1) {\n counter-increment: prosemirror-flat-list-counter var(--prosemirror-flat-list-order);\n }\n }\n }\n }\n\n &[data-list-kind=\"task\"] {\n & > .list-marker {\n &,\n & * {\n /* Make sure that the checkbox is at the center */\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 0;\n padding: 0;\n cursor: pointer;\n }\n }\n }\n\n &[data-list-kind=\"toggle\"] {\n &[data-list-collapsable] > .list-marker {\n cursor: pointer;\n }\n &:not([data-list-collapsable]) > .list-marker {\n opacity: 40%;\n pointer-events: none;\n }\n\n /* If collapsed, hide the second and futher children */\n &[data-list-collapsable][data-list-collapsed] > .list-content > *:nth-child(n+2) {\n display: none;\n }\n }\n}\n",".ProseMirror .tableWrapper {\n overflow-x: auto;\n}\n.ProseMirror table {\n width: 100%;\n overflow: hidden;\n border-collapse: collapse;\n table-layout: fixed;\n}\n.ProseMirror td,\n.ProseMirror th {\n box-sizing: border-box;\n position: relative;\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n border-width: 1px;\n vertical-align: top;\n}\n\nprosekit-table-handle-drop-indicator {\n background-color: HighlightText;\n}\n\n.ProseMirror .column-resize-handle {\n z-index: 20;\n position: absolute;\n top: 0;\n right: -2px;\n bottom: 0;\n width: 4px;\n background-color: HighlightText;\n pointer-events: none;\n}\n.ProseMirror.resize-cursor {\n cursor: ew-resize;\n cursor: col-resize;\n}\n.ProseMirror .selectedCell {\n --color: 210, 100%, 56%;\n border: 1px double hsl(var(--color));\n background-color: hsla(var(--color), 20%);\n}\n",".prosekit-placeholder::before {\n position: absolute;\n height: 0;\n content: attr(data-placeholder);\n opacity: 30%;\n pointer-events: none;\n}\n",".prosekit-virtual-selection {\n border-radius: 2px;\n background-color: #8888884d;\n box-shadow: 0 0 0 2px #8888884d;\n}\n",".prosekit-commit-deletion {\n background-color: #e5534b80;\n text-decoration: line-through;\n}\n.prosekit-commit-addition {\n background-color: #53e54b80;\n}\n",".ProseMirror-gapcursor {\n display: none;\n position: relative;\n pointer-events: none;\n}\n\n.ProseMirror-gapcursor:after {\n display: block;\n position: absolute;\n top: -2px;\n width: 20px;\n border-top: 1px solid currentColor;\n content: \"\";\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\n}\n\n@keyframes ProseMirror-cursor-blink {\n to {\n visibility: hidden;\n }\n}\n\n.ProseMirror-focused .ProseMirror-gapcursor {\n display: block;\n}\n","@import \"@prosekit/pm/view/style/prosemirror.css\";\n@import \"@prosekit/extensions/list/style.css\";\n@import \"@prosekit/extensions/table/style.css\";\n@import \"@prosekit/extensions/placeholder/style.css\";\n@import \"@prosekit/extensions/virtual-selection/style.css\";\n@import \"@prosekit/extensions/commit/style.css\";\n@import \"@prosekit/extensions/gap-cursor/style.css\";\n"],"x_google_ignoreList":[0],"mappings":"AAAA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;;AErDA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AC/HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA"}
1
+ {"version":3,"file":"style.css","names":[],"sources":["../../../node_modules/.pnpm/prosemirror-view@1.41.4/node_modules/prosemirror-view/style/prosemirror.css","../../pm/src/view/style/prosemirror.css","../../extensions/src/list/style.css","../../extensions/src/table/style.css","../../extensions/src/placeholder/style.css","../../extensions/src/virtual-selection/style.css","../../extensions/src/commit/style.css","../../extensions/src/gap-cursor/style.css","../src/style.css"],"sourcesContent":[".ProseMirror {\n position: relative;\n}\n\n.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n white-space: break-spaces;\n -webkit-font-variant-ligatures: none;\n font-variant-ligatures: none;\n font-feature-settings: \"liga\" 0; /* the above doesn't seem to work in Edge */\n}\n\n.ProseMirror pre {\n white-space: pre-wrap;\n}\n\n.ProseMirror li {\n position: relative;\n}\n\n.ProseMirror-hideselection *::selection { background: transparent; }\n.ProseMirror-hideselection *::-moz-selection { background: transparent; }\n.ProseMirror-hideselection { caret-color: transparent; }\n\n/* See https://github.com/ProseMirror/prosemirror/issues/1421#issuecomment-1759320191 */\n.ProseMirror [draggable][contenteditable=false] { user-select: text }\n\n.ProseMirror-selectednode {\n outline: 2px solid #8cf;\n}\n\n/* Make sure li selections wrap around markers */\n\nli.ProseMirror-selectednode {\n outline: none;\n}\n\nli.ProseMirror-selectednode:after {\n content: \"\";\n position: absolute;\n left: -32px;\n right: -2px; top: -2px; bottom: -2px;\n border: 2px solid #8cf;\n pointer-events: none;\n}\n\n/* Protect against generic img rules */\n\nimg.ProseMirror-separator {\n display: inline !important;\n border: none !important;\n margin: 0 !important;\n}\n","@import \"prosemirror-view/style/prosemirror.css\";\n",":root {\n --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\");\n --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\");\n --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\");\n}\n\n.prosemirror-flat-list {\n & {\n position: relative;\n margin: 0;\n padding: 0;\n list-style: none;\n }\n\n & > .list-marker {\n position: absolute;\n width: 1.5em;\n width: 1lh;\n height: 1.5em;\n height: 1lh;\n inset-inline-start: 0;\n text-align: center;\n }\n\n & > .list-content {\n margin-inline-start: 1.5em;\n margin-inline-start: 1lh;\n }\n\n &[data-list-kind=\"bullet\"] > .list-marker,\n &[data-list-kind=\"toggle\"] > .list-marker {\n background-color: currentColor;\n mask-position: center;\n mask-repeat: no-repeat;\n mask-size: contain;\n }\n\n &[data-list-kind=\"bullet\"] {\n & > .list-marker {\n mask-image: var(--prosekit-list-bullet-icon);\n }\n }\n\n &[data-list-kind=\"toggle\"] {\n & > .list-marker {\n mask-image: var(--prosekit-list-toggle-open-icon);\n }\n\n &[data-list-collapsable][data-list-collapsed] > .list-marker {\n mask-image: var(--prosekit-list-toggle-closed-icon);\n }\n }\n\n &[data-list-kind=\"ordered\"] {\n /*\n Ensure that the counters in children don't escape, so that the sub lists\n won't affect the counter of the parent list.\n \n See also https://github.com/ocavue/prosemirror-flat-list/issues/23\n */\n & > * {\n contain: style;\n }\n\n &::before {\n position: absolute;\n inset-inline-end: calc(100% - 1.5em);\n inset-inline-end: calc(100% - 1lh);\n content: counter(prosemirror-flat-list-counter, decimal) \". \";\n font-variant-numeric: tabular-nums;\n }\n counter-increment: prosemirror-flat-list-counter;\n\n /* \n Reset the counter for the first list node in the sequence.\n */\n &:first-child,\n :not(&) + & {\n counter-reset: prosemirror-flat-list-counter;\n\n /* \n If the first list node has a custom order number, set the counter to that value.\n */\n &[data-list-order] {\n @supports (counter-set: prosemirror-flat-list-counter 1) {\n counter-set: prosemirror-flat-list-counter var(--prosemirror-flat-list-order);\n }\n\n /* \n Safari older than version 17.2 doesn't support `counter-set` \n */\n @supports not (counter-set: prosemirror-flat-list-counter 1) {\n counter-increment: prosemirror-flat-list-counter var(--prosemirror-flat-list-order);\n }\n }\n }\n }\n\n &[data-list-kind=\"task\"] {\n & > .list-marker {\n &,\n & * {\n /* Make sure that the checkbox is at the center */\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 0;\n padding: 0;\n cursor: pointer;\n }\n }\n }\n\n &[data-list-kind=\"toggle\"] {\n &[data-list-collapsable] > .list-marker {\n cursor: pointer;\n }\n &:not([data-list-collapsable]) > .list-marker {\n opacity: 40%;\n pointer-events: none;\n }\n\n /* If collapsed, hide the second and futher children */\n &[data-list-collapsable][data-list-collapsed] > .list-content > *:nth-child(n+2) {\n display: none;\n }\n }\n}\n",".ProseMirror .tableWrapper {\n overflow-x: auto;\n}\n.ProseMirror table {\n width: 100%;\n overflow: hidden;\n border-collapse: collapse;\n table-layout: fixed;\n}\n.ProseMirror td,\n.ProseMirror th {\n box-sizing: border-box;\n position: relative;\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n border-width: 1px;\n vertical-align: top;\n}\n\nprosekit-table-handle-drop-indicator {\n background-color: HighlightText;\n}\n\n.ProseMirror .column-resize-handle {\n z-index: 20;\n position: absolute;\n top: 0;\n right: -2px;\n bottom: 0;\n width: 4px;\n background-color: HighlightText;\n pointer-events: none;\n}\n.ProseMirror.resize-cursor {\n cursor: ew-resize;\n cursor: col-resize;\n}\n.ProseMirror .selectedCell {\n --color: 210, 100%, 56%;\n border: 1px double hsl(var(--color));\n background-color: hsla(var(--color), 20%);\n}\n",".prosekit-placeholder::before {\n position: absolute;\n height: 0;\n content: attr(data-placeholder);\n opacity: 30%;\n pointer-events: none;\n}\n",".prosekit-virtual-selection {\n border-radius: 2px;\n background-color: #8888884d;\n box-shadow: 0 0 0 2px #8888884d;\n}\n",".prosekit-commit-deletion {\n background-color: #e5534b80;\n text-decoration: line-through;\n}\n.prosekit-commit-addition {\n background-color: #53e54b80;\n}\n",".ProseMirror-gapcursor {\n display: none;\n position: relative;\n pointer-events: none;\n}\n\n.ProseMirror-gapcursor:after {\n display: block;\n position: absolute;\n top: -2px;\n width: 20px;\n border-top: 1px solid currentColor;\n content: \"\";\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\n}\n\n@keyframes ProseMirror-cursor-blink {\n to {\n visibility: hidden;\n }\n}\n\n.ProseMirror-focused .ProseMirror-gapcursor {\n display: block;\n}\n","@import \"@prosekit/pm/view/style/prosemirror.css\";\n@import \"@prosekit/extensions/list/style.css\";\n@import \"@prosekit/extensions/table/style.css\";\n@import \"@prosekit/extensions/placeholder/style.css\";\n@import \"@prosekit/extensions/virtual-selection/style.css\";\n@import \"@prosekit/extensions/commit/style.css\";\n@import \"@prosekit/extensions/gap-cursor/style.css\";\n"],"x_google_ignoreList":[0],"mappings":"AAAA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;;AErDA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AC/HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACzCA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;;ACJA;AACA;AACA;AACA;AACA;AACA;AACA;;ACNA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA"}
@@ -1,5 +1,6 @@
1
1
  :root {
2
2
  --prosekit-node-selection-color: rgba(57, 136, 255, 0.2);
3
+ --prosekit-autocomplete-color: rgba(209, 213, 219, 0.15); /* tailwind bg-gray-300/15 */
3
4
  }
4
5
 
5
6
  .ProseMirror {
@@ -62,8 +63,8 @@
62
63
  }
63
64
 
64
65
  & blockquote {
65
- padding-left: 1em;
66
- border-left: 0.25em solid hsl(0 0% 60% / 0.4);
66
+ padding-inline-start: 1em;
67
+ border-inline-start: 0.25em solid hsl(0 0% 60% / 0.4);
67
68
  }
68
69
 
69
70
  & h1 {
@@ -131,6 +132,11 @@
131
132
  font-weight: inherit;
132
133
  }
133
134
 
135
+ & pre:has(code) {
136
+ /* Force the code block to be left-to-right */
137
+ direction: ltr;
138
+ }
139
+
134
140
  & hr {
135
141
  margin: 2em 0;
136
142
  border-width: 1px;
@@ -217,6 +223,12 @@
217
223
  background-color: var(--prosekit-node-selection-color);
218
224
  }
219
225
 
226
+ & .prosekit-autocomplete-match {
227
+ border-radius: 0.1em;
228
+ background-color: var(--prosekit-autocomplete-color);
229
+ box-shadow: 0 0 0 0.3em var(--prosekit-autocomplete-color);
230
+ }
231
+
220
232
  &.prosekit-dragging {
221
233
  --prosekit-node-selection-color: transparent;
222
234
  }
@@ -1 +1 @@
1
- {"version":3,"file":"typography.css","names":[],"sources":["../src/typography.css"],"sourcesContent":[":root {\n --prosekit-node-selection-color: rgba(57, 136, 255, 0.2);\n}\n\n.ProseMirror {\n & {\n /* Disable margin collapsing */\n display: flex;\n flex-direction: column;\n }\n\n & {\n /* Set the default line height as same as block handle's height */\n line-height: 1.5;\n }\n\n & p:first-child,\n & h1:first-child,\n & h2:first-child,\n & h3:first-child,\n & h4:first-child,\n & h5:first-child,\n & h6:first-child {\n margin-top: 0;\n }\n\n & p:last-child,\n & h1:last-child,\n & h2:last-child,\n & h3:last-child,\n & h4:last-child,\n & h5:last-child,\n & h6:last-child {\n margin-bottom: 0;\n }\n\n & h1,\n & h2,\n & h3,\n & h4,\n & h5,\n & h6 {\n padding-top: 0;\n padding-bottom: 0;\n border-style: none;\n font-weight: 600;\n line-height: 1.25;\n }\n\n & a {\n font-weight: 500;\n text-decoration: underline;\n }\n\n & p,\n & ul,\n & ol,\n & pre {\n margin: 0;\n padding: 0.5rem 0;\n line-height: 1.5;\n }\n\n & blockquote {\n padding-left: 1em;\n border-left: 0.25em solid hsl(0 0% 60% / 0.4);\n }\n\n & h1 {\n margin: 1rem 0;\n font-size: 2.25em;\n }\n\n & h2 {\n margin: 1.75em 0 0.5em;\n font-size: 1.75em;\n }\n\n & h3 {\n margin: 1.5em 0 0.5em;\n font-size: 1.375em;\n }\n\n & h4 {\n margin: 1em 0;\n font-size: 1.125em;\n }\n\n & h5 {\n margin: 0.5em 0;\n }\n\n & h6 {\n opacity: 0.8;\n }\n\n & img,\n & video {\n width: min-content;\n max-width: 100%;\n margin: 0.5em 0;\n }\n\n & code {\n font-weight: 600;\n font-size: 0.875em;\n }\n\n & pre {\n margin: 0.5rem 0;\n padding: 2rem 2rem;\n overflow-x: auto;\n border: 1px solid hsl(0 0% 50% / 0.2);\n border-radius: 0.375rem;\n /* CSS variables `prosemirror-highlight` and `prosemirror-highlight-bg` are set by package `prosemirror-highlight` */\n background-color: var(--prosemirror-highlight-bg, inherit);\n color: var(--prosemirror-highlight, inherit);\n }\n\n & pre,\n & code {\n white-space: pre;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n hyphens: none;\n tab-size: 4;\n }\n\n & pre code {\n font-weight: inherit;\n }\n\n & hr {\n margin: 2em 0;\n border-width: 1px;\n }\n\n & .prosekit-horizontal-rule {\n margin: 1em 0;\n padding: 1em 0;\n /* Set a small line-height so that the block handle can align to the middle\n of the horizontal rule */\n line-height: 1px;\n\n & hr {\n margin: 0;\n }\n }\n\n & .tableWrapper {\n margin-top: 0.5em;\n margin-bottom: 1em;\n }\n\n & .prosemirror-flat-list {\n /* Use the same line-height as <p> */\n line-height: 1.5;\n\n &::before,\n & > .list-marker {\n /* Use the same padding as <p> */\n top: 0.5rem;\n }\n\n &:has(> div.list-content > h1) {\n &::before,\n & > .list-marker {\n top: 0.75em;\n }\n }\n &:has(> div.list-content > h2) {\n &::before,\n & > .list-marker {\n top: 0.5em;\n }\n }\n &:has(> div.list-content > h3) {\n &::before,\n & > .list-marker {\n top: 0.25em;\n }\n }\n &:has(> div.list-content > h4) {\n &::before,\n & > .list-marker {\n top: 0;\n }\n }\n &:has(> div.list-content > h5) {\n &::before,\n & > .list-marker {\n top: -0.2em;\n }\n }\n &:has(> div.list-content > h6) {\n &::before,\n & > .list-marker {\n top: -0.3em;\n }\n }\n }\n\n /*\n Don't generate box for node view wrapper. This make it easier to style\n the node views.\n */\n div[data-node-view-root=\"true\"] {\n display: contents;\n }\n\n & .ProseMirror-selectednode {\n border-radius: 0.2rem;\n outline-color: var(--prosekit-node-selection-color);\n outline-style: solid;\n outline-width: 0.3rem;\n background-color: var(--prosekit-node-selection-color);\n }\n\n &.prosekit-dragging {\n --prosekit-node-selection-color: transparent;\n }\n}\n"],"mappings":"AAAA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"typography.css","names":[],"sources":["../src/typography.css"],"sourcesContent":[":root {\n --prosekit-node-selection-color: rgba(57, 136, 255, 0.2);\n --prosekit-autocomplete-color: rgba(209, 213, 219, 0.15); /* tailwind bg-gray-300/15 */\n}\n\n.ProseMirror {\n & {\n /* Disable margin collapsing */\n display: flex;\n flex-direction: column;\n }\n\n & {\n /* Set the default line height as same as block handle's height */\n line-height: 1.5;\n }\n\n & p:first-child,\n & h1:first-child,\n & h2:first-child,\n & h3:first-child,\n & h4:first-child,\n & h5:first-child,\n & h6:first-child {\n margin-top: 0;\n }\n\n & p:last-child,\n & h1:last-child,\n & h2:last-child,\n & h3:last-child,\n & h4:last-child,\n & h5:last-child,\n & h6:last-child {\n margin-bottom: 0;\n }\n\n & h1,\n & h2,\n & h3,\n & h4,\n & h5,\n & h6 {\n padding-top: 0;\n padding-bottom: 0;\n border-style: none;\n font-weight: 600;\n line-height: 1.25;\n }\n\n & a {\n font-weight: 500;\n text-decoration: underline;\n }\n\n & p,\n & ul,\n & ol,\n & pre {\n margin: 0;\n padding: 0.5rem 0;\n line-height: 1.5;\n }\n\n & blockquote {\n padding-inline-start: 1em;\n border-inline-start: 0.25em solid hsl(0 0% 60% / 0.4);\n }\n\n & h1 {\n margin: 1rem 0;\n font-size: 2.25em;\n }\n\n & h2 {\n margin: 1.75em 0 0.5em;\n font-size: 1.75em;\n }\n\n & h3 {\n margin: 1.5em 0 0.5em;\n font-size: 1.375em;\n }\n\n & h4 {\n margin: 1em 0;\n font-size: 1.125em;\n }\n\n & h5 {\n margin: 0.5em 0;\n }\n\n & h6 {\n opacity: 0.8;\n }\n\n & img,\n & video {\n width: min-content;\n max-width: 100%;\n margin: 0.5em 0;\n }\n\n & code {\n font-weight: 600;\n font-size: 0.875em;\n }\n\n & pre {\n margin: 0.5rem 0;\n padding: 2rem 2rem;\n overflow-x: auto;\n border: 1px solid hsl(0 0% 50% / 0.2);\n border-radius: 0.375rem;\n /* CSS variables `prosemirror-highlight` and `prosemirror-highlight-bg` are set by package `prosemirror-highlight` */\n background-color: var(--prosemirror-highlight-bg, inherit);\n color: var(--prosemirror-highlight, inherit);\n }\n\n & pre,\n & code {\n white-space: pre;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n hyphens: none;\n tab-size: 4;\n }\n\n & pre code {\n font-weight: inherit;\n }\n\n & pre:has(code) {\n /* Force the code block to be left-to-right */\n direction: ltr;\n }\n\n & hr {\n margin: 2em 0;\n border-width: 1px;\n }\n\n & .prosekit-horizontal-rule {\n margin: 1em 0;\n padding: 1em 0;\n /* Set a small line-height so that the block handle can align to the middle\n of the horizontal rule */\n line-height: 1px;\n\n & hr {\n margin: 0;\n }\n }\n\n & .tableWrapper {\n margin-top: 0.5em;\n margin-bottom: 1em;\n }\n\n & .prosemirror-flat-list {\n /* Use the same line-height as <p> */\n line-height: 1.5;\n\n &::before,\n & > .list-marker {\n /* Use the same padding as <p> */\n top: 0.5rem;\n }\n\n &:has(> div.list-content > h1) {\n &::before,\n & > .list-marker {\n top: 0.75em;\n }\n }\n &:has(> div.list-content > h2) {\n &::before,\n & > .list-marker {\n top: 0.5em;\n }\n }\n &:has(> div.list-content > h3) {\n &::before,\n & > .list-marker {\n top: 0.25em;\n }\n }\n &:has(> div.list-content > h4) {\n &::before,\n & > .list-marker {\n top: 0;\n }\n }\n &:has(> div.list-content > h5) {\n &::before,\n & > .list-marker {\n top: -0.2em;\n }\n }\n &:has(> div.list-content > h6) {\n &::before,\n & > .list-marker {\n top: -0.3em;\n }\n }\n }\n\n /*\n Don't generate box for node view wrapper. This make it easier to style\n the node views.\n */\n div[data-node-view-root=\"true\"] {\n display: contents;\n }\n\n & .ProseMirror-selectednode {\n border-radius: 0.2rem;\n outline-color: var(--prosekit-node-selection-color);\n outline-style: solid;\n outline-width: 0.3rem;\n background-color: var(--prosekit-node-selection-color);\n }\n\n & .prosekit-autocomplete-match {\n border-radius: 0.1em;\n background-color: var(--prosekit-autocomplete-color);\n box-shadow: 0 0 0 0.3em var(--prosekit-autocomplete-color);\n }\n\n &.prosekit-dragging {\n --prosekit-node-selection-color: transparent;\n }\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@prosekit/basic",
3
3
  "type": "module",
4
- "version": "0.6.6",
4
+ "version": "0.7.0",
5
5
  "private": false,
6
6
  "description": "A quick starter for ProseKit",
7
7
  "author": {
@@ -42,17 +42,17 @@
42
42
  "src"
43
43
  ],
44
44
  "dependencies": {
45
- "@prosekit/core": "^0.8.7",
46
- "@prosekit/pm": "^0.1.14",
47
- "@prosekit/extensions": "^0.12.2"
45
+ "@prosekit/extensions": "^0.13.0",
46
+ "@prosekit/core": "^0.9.0",
47
+ "@prosekit/pm": "^0.1.15"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@types/jsdom": "^27.0.0",
51
- "happy-dom": "^20.0.10",
51
+ "happy-dom": "^20.0.11",
52
52
  "jsdom": "^27.2.0",
53
- "tsdown": "^0.16.5",
53
+ "tsdown": "^0.17.0",
54
54
  "typescript": "~5.9.3",
55
- "vitest": "^4.0.10",
55
+ "vitest": "^4.0.15",
56
56
  "@prosekit/config-tsdown": "0.0.0",
57
57
  "@prosekit/config-vitest": "0.0.0"
58
58
  },
@@ -1,5 +1,6 @@
1
1
  :root {
2
2
  --prosekit-node-selection-color: rgba(57, 136, 255, 0.2);
3
+ --prosekit-autocomplete-color: rgba(209, 213, 219, 0.15); /* tailwind bg-gray-300/15 */
3
4
  }
4
5
 
5
6
  .ProseMirror {
@@ -62,8 +63,8 @@
62
63
  }
63
64
 
64
65
  & blockquote {
65
- padding-left: 1em;
66
- border-left: 0.25em solid hsl(0 0% 60% / 0.4);
66
+ padding-inline-start: 1em;
67
+ border-inline-start: 0.25em solid hsl(0 0% 60% / 0.4);
67
68
  }
68
69
 
69
70
  & h1 {
@@ -131,6 +132,11 @@
131
132
  font-weight: inherit;
132
133
  }
133
134
 
135
+ & pre:has(code) {
136
+ /* Force the code block to be left-to-right */
137
+ direction: ltr;
138
+ }
139
+
134
140
  & hr {
135
141
  margin: 2em 0;
136
142
  border-width: 1px;
@@ -217,6 +223,12 @@
217
223
  background-color: var(--prosekit-node-selection-color);
218
224
  }
219
225
 
226
+ & .prosekit-autocomplete-match {
227
+ border-radius: 0.1em;
228
+ background-color: var(--prosekit-autocomplete-color);
229
+ box-shadow: 0 0 0 0.3em var(--prosekit-autocomplete-color);
230
+ }
231
+
220
232
  &.prosekit-dragging {
221
233
  --prosekit-node-selection-color: transparent;
222
234
  }