@dxos/react-ui-editor 0.7.5-main.2567c87 → 0.7.5-main.5ae2ba8
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/lib/browser/index.mjs +27 -17
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node/index.cjs +33 -23
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +27 -17
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/types/src/InputMode.stories.d.ts +3 -4
- package/dist/types/src/InputMode.stories.d.ts.map +1 -1
- package/dist/types/src/TextEditor.stories.d.ts +34 -35
- package/dist/types/src/TextEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/EditorToolbar/EditorToolbar.d.ts +1 -2
- package/dist/types/src/components/EditorToolbar/EditorToolbar.d.ts.map +1 -1
- package/dist/types/src/components/EditorToolbar/blocks.d.ts +2 -2
- package/dist/types/src/components/EditorToolbar/comment.d.ts +3 -3
- package/dist/types/src/components/EditorToolbar/comment.d.ts.map +1 -1
- package/dist/types/src/components/EditorToolbar/formatting.d.ts +2 -2
- package/dist/types/src/components/EditorToolbar/lists.d.ts +2 -2
- package/dist/types/src/components/EditorToolbar/util.d.ts +3 -3
- package/dist/types/src/extensions/automerge/automerge.stories.d.ts +5 -6
- package/dist/types/src/extensions/automerge/automerge.stories.d.ts.map +1 -1
- package/dist/types/src/extensions/factories.d.ts.map +1 -1
- package/dist/types/src/styles/theme.d.ts.map +1 -1
- package/package.json +30 -29
- package/src/components/EditorToolbar/comment.ts +5 -2
- package/src/extensions/automerge/automerge.stories.tsx +2 -2
- package/src/extensions/comments.ts +4 -4
- package/src/extensions/factories.ts +11 -5
- package/src/extensions/markdown/decorate.ts +1 -1
- package/src/extensions/markdown/formatting.test.ts +7 -6
- package/src/styles/markdown.ts +1 -1
- package/src/styles/stack-item-content-class-names.ts +1 -1
- package/src/styles/theme.ts +2 -3
@@ -120,7 +120,12 @@ var createCommentAction = (label) => createEditorAction({
|
|
120
120
|
}, "ph--chat-text--regular", label);
|
121
121
|
var createComment = (state) => ({
|
122
122
|
nodes: [
|
123
|
-
createCommentAction(
|
123
|
+
createCommentAction([
|
124
|
+
commentLabel(state.comment, state.selection),
|
125
|
+
{
|
126
|
+
ns: translationKey
|
127
|
+
}
|
128
|
+
])
|
124
129
|
],
|
125
130
|
edges: [
|
126
131
|
{
|
@@ -308,7 +313,7 @@ var createViewMode = (state) => {
|
|
308
313
|
|
309
314
|
// packages/ui/react-ui-editor/src/styles/stack-item-content-class-names.ts
|
310
315
|
import { mx } from "@dxos/react-ui-theme";
|
311
|
-
var stackItemContentEditorClassNames = (role) => mx("
|
316
|
+
var stackItemContentEditorClassNames = (role) => mx("dx-focus-ring-inset data-[toolbar=disabled]:pbs-2 attention-surface", role === "article" ? "min-bs-0" : "[&_.cm-scroller]:overflow-hidden [&_.cm-scroller]:min-bs-24");
|
312
317
|
var stackItemContentToolbarClassNames = (role) => mx("attention-surface is-full border-be !border-separator", role === "section" && "sticky block-start-0 z-[1] -mbe-px min-is-0");
|
313
318
|
|
314
319
|
// packages/ui/react-ui-editor/src/components/EditorToolbar/EditorToolbar.tsx
|
@@ -406,7 +411,7 @@ var headings = {
|
|
406
411
|
3: "text-2xl",
|
407
412
|
4: "text-xl",
|
408
413
|
5: "text-lg",
|
409
|
-
6: "
|
414
|
+
6: ""
|
410
415
|
};
|
411
416
|
var theme = {
|
412
417
|
code: "font-mono !no-underline text-neutral-700 dark:text-neutral-300",
|
@@ -454,11 +459,10 @@ var defaultTheme = {
|
|
454
459
|
/**
|
455
460
|
* Gutters
|
456
461
|
* NOTE: Gutters should have the same top margin as the content.
|
457
|
-
* NOTE: They can't be transparent since the content needs to scroll below.
|
458
462
|
*/
|
459
463
|
".cm-gutters": {
|
460
|
-
|
461
|
-
|
464
|
+
borderRight: "none",
|
465
|
+
background: "transparent"
|
462
466
|
},
|
463
467
|
".cm-gutter": {},
|
464
468
|
".cm-gutter.cm-lineNumbers .cm-gutterElement": {
|
@@ -526,7 +530,7 @@ var defaultTheme = {
|
|
526
530
|
* Tooltip.
|
527
531
|
*/
|
528
532
|
".cm-tooltip": {
|
529
|
-
background: "var(--dx-
|
533
|
+
background: "var(--dx-baseSurface)"
|
530
534
|
},
|
531
535
|
".cm-tooltip-below": {},
|
532
536
|
/**
|
@@ -2042,7 +2046,7 @@ import sortBy from "lodash.sortby";
|
|
2042
2046
|
import { useEffect, useMemo as useMemo2 } from "react";
|
2043
2047
|
import { debounce as debounce2 } from "@dxos/async";
|
2044
2048
|
import { log as log4 } from "@dxos/log";
|
2045
|
-
import {
|
2049
|
+
import { isNonNullable } from "@dxos/util";
|
2046
2050
|
|
2047
2051
|
// packages/ui/react-ui-editor/src/extensions/selection.ts
|
2048
2052
|
import { Transaction } from "@codemirror/state";
|
@@ -2167,7 +2171,7 @@ var commentsState = StateField4.define({
|
|
2167
2171
|
comment,
|
2168
2172
|
range
|
2169
2173
|
};
|
2170
|
-
}).filter(
|
2174
|
+
}).filter(isNonNullable);
|
2171
2175
|
return {
|
2172
2176
|
...value,
|
2173
2177
|
comments: commentStates
|
@@ -2219,7 +2223,7 @@ var commentsDecorations = EditorView9.decorations.compute([
|
|
2219
2223
|
}
|
2220
2224
|
const mark = createCommentMark(comment.comment.id, comment.comment.id === current);
|
2221
2225
|
return mark.range(range.from, range.to);
|
2222
|
-
}).filter(
|
2226
|
+
}).filter(isNonNullable);
|
2223
2227
|
return Decoration4.set(decorations);
|
2224
2228
|
});
|
2225
2229
|
var commentClickedEffect = StateEffect3.define();
|
@@ -2490,7 +2494,7 @@ var comments = (options = {}) => {
|
|
2490
2494
|
}
|
2491
2495
|
}),
|
2492
2496
|
options.onUpdate && trackPastedComments(options.onUpdate)
|
2493
|
-
].filter(
|
2497
|
+
].filter(isNonNullable);
|
2494
2498
|
};
|
2495
2499
|
var scrollThreadIntoView = (view, id, center = true) => {
|
2496
2500
|
const comment = view.state.field(commentsState).comments.find((range2) => range2.comment.id === id);
|
@@ -2660,7 +2664,6 @@ import defaultsDeep2 from "lodash.defaultsdeep";
|
|
2660
2664
|
import merge from "lodash.merge";
|
2661
2665
|
import { generateName } from "@dxos/display-name";
|
2662
2666
|
import { log as log5 } from "@dxos/log";
|
2663
|
-
import { hueTokens } from "@dxos/react-ui-theme";
|
2664
2667
|
import { hexToHue, isNotFalsy as isNotFalsy3 } from "@dxos/util";
|
2665
2668
|
|
2666
2669
|
// packages/ui/react-ui-editor/src/extensions/focus.ts
|
@@ -2759,7 +2762,14 @@ var createBasicExtensions = (_props) => {
|
|
2759
2762
|
// https://codemirror.net/docs/ref/#commands.historyKeymap
|
2760
2763
|
...props.history ? historyKeymap : [],
|
2761
2764
|
// https://codemirror.net/docs/ref/#search.searchKeymap
|
2762
|
-
...props.search ? searchKeymap : []
|
2765
|
+
...props.search ? searchKeymap : [],
|
2766
|
+
// Disable bindings that conflict with system shortcuts.
|
2767
|
+
// TODO(burdon): Catalog global shortcuts.
|
2768
|
+
{
|
2769
|
+
key: "Mod-Shift-k",
|
2770
|
+
preventDefault: true,
|
2771
|
+
run: () => true
|
2772
|
+
}
|
2763
2773
|
].filter(isNotFalsy3))
|
2764
2774
|
].filter(isNotFalsy3);
|
2765
2775
|
};
|
@@ -2790,15 +2800,15 @@ var createDataExtensions = ({ id, text, space, identity }) => {
|
|
2790
2800
|
}
|
2791
2801
|
if (space && identity) {
|
2792
2802
|
const peerId = identity?.identityKey.toHex();
|
2793
|
-
const
|
2803
|
+
const hue = identity?.profile?.data?.hue ?? hexToHue(peerId ?? "0");
|
2794
2804
|
extensions.push(awareness(new SpaceAwarenessProvider({
|
2795
2805
|
space,
|
2796
2806
|
channel: `awareness.${id}`,
|
2797
2807
|
peerId: identity.identityKey.toHex(),
|
2798
2808
|
info: {
|
2799
2809
|
displayName: identity.profile?.displayName ?? generateName(identity.identityKey.toHex()),
|
2800
|
-
darkColor:
|
2801
|
-
lightColor:
|
2810
|
+
darkColor: `var(--dx-${hue}Cursor)`,
|
2811
|
+
lightColor: `var(--dx-${hue}Cursor)`
|
2802
2812
|
}
|
2803
2813
|
})));
|
2804
2814
|
}
|
@@ -4762,7 +4772,7 @@ var CheckboxWidget = class extends WidgetType5 {
|
|
4762
4772
|
}
|
4763
4773
|
toDOM(view) {
|
4764
4774
|
const input = document.createElement("input");
|
4765
|
-
input.className = "cm-task-checkbox
|
4775
|
+
input.className = "cm-task-checkbox dx-checkbox";
|
4766
4776
|
input.type = "checkbox";
|
4767
4777
|
input.tabIndex = -1;
|
4768
4778
|
input.checked = this._checked;
|