@react-x11/components 0.8.0 → 0.9.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/README.md +95 -34
- package/dist/charts/node.d.ts +1 -1
- package/dist/charts/node.d.ts.map +1 -1
- package/dist/charts/node.js +6 -2
- package/dist/charts/node.js.map +1 -1
- package/dist/embed/client.d.ts +48 -3
- package/dist/embed/client.d.ts.map +1 -1
- package/dist/embed/client.js +79 -5
- package/dist/embed/client.js.map +1 -1
- package/dist/embed/index.d.ts +1 -1
- package/dist/embed/index.d.ts.map +1 -1
- package/dist/embed/index.js +1 -1
- package/dist/embed/index.js.map +1 -1
- package/dist/html/node.d.ts +3 -1
- package/dist/html/node.d.ts.map +1 -1
- package/dist/html/node.js +7 -5
- package/dist/html/node.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/{markdown → internal/markdown}/ast.d.ts +12 -0
- package/dist/internal/markdown/ast.d.ts.map +1 -0
- package/dist/internal/markdown/ast.js +22 -0
- package/dist/internal/markdown/ast.js.map +1 -0
- package/dist/internal/markdown/parse.d.ts.map +1 -0
- package/dist/{markdown → internal/markdown}/parse.js +112 -22
- package/dist/internal/markdown/parse.js.map +1 -0
- package/dist/internal/markdown/stringify.d.ts +4 -0
- package/dist/internal/markdown/stringify.d.ts.map +1 -0
- package/dist/internal/markdown/stringify.js +684 -0
- package/dist/internal/markdown/stringify.js.map +1 -0
- package/dist/internal/markdown/tags.d.ts.map +1 -0
- package/dist/internal/markdown/tags.js.map +1 -0
- package/dist/internal/scroll.d.ts +3 -2
- package/dist/internal/scroll.d.ts.map +1 -1
- package/dist/internal/scroll.js +1 -0
- package/dist/internal/scroll.js.map +1 -1
- package/dist/maps/anchors.d.ts +98 -0
- package/dist/maps/anchors.d.ts.map +1 -0
- package/dist/maps/anchors.js +531 -0
- package/dist/maps/anchors.js.map +1 -0
- package/dist/maps/controller.d.ts +283 -0
- package/dist/maps/controller.d.ts.map +1 -0
- package/dist/maps/controller.js +743 -0
- package/dist/maps/controller.js.map +1 -0
- package/dist/maps/gl/buckets.d.ts +95 -0
- package/dist/maps/gl/buckets.d.ts.map +1 -0
- package/dist/maps/gl/buckets.js +362 -0
- package/dist/maps/gl/buckets.js.map +1 -0
- package/dist/maps/gl/build-worker.d.ts +13 -0
- package/dist/maps/gl/build-worker.d.ts.map +1 -0
- package/dist/maps/gl/build-worker.js +44 -0
- package/dist/maps/gl/build-worker.js.map +1 -0
- package/dist/maps/gl/color.d.ts +8 -0
- package/dist/maps/gl/color.d.ts.map +1 -0
- package/dist/maps/gl/color.js +57 -0
- package/dist/maps/gl/color.js.map +1 -0
- package/dist/maps/gl/cover.d.ts +51 -0
- package/dist/maps/gl/cover.d.ts.map +1 -0
- package/dist/maps/gl/cover.js +124 -0
- package/dist/maps/gl/cover.js.map +1 -0
- package/dist/maps/gl/index.d.ts +3 -0
- package/dist/maps/gl/index.d.ts.map +1 -0
- package/dist/maps/gl/index.js +20 -0
- package/dist/maps/gl/index.js.map +1 -0
- package/dist/maps/gl/markers.d.ts +28 -0
- package/dist/maps/gl/markers.d.ts.map +1 -0
- package/dist/maps/gl/markers.js +60 -0
- package/dist/maps/gl/markers.js.map +1 -0
- package/dist/maps/gl/overlays.d.ts +68 -0
- package/dist/maps/gl/overlays.d.ts.map +1 -0
- package/dist/maps/gl/overlays.js +300 -0
- package/dist/maps/gl/overlays.js.map +1 -0
- package/dist/maps/gl/pane.d.ts +12 -0
- package/dist/maps/gl/pane.d.ts.map +1 -0
- package/dist/maps/gl/pane.js +37 -0
- package/dist/maps/gl/pane.js.map +1 -0
- package/dist/maps/gl/placement.d.ts +111 -0
- package/dist/maps/gl/placement.d.ts.map +1 -0
- package/dist/maps/gl/placement.js +567 -0
- package/dist/maps/gl/placement.js.map +1 -0
- package/dist/maps/gl/renderer.d.ts +352 -0
- package/dist/maps/gl/renderer.d.ts.map +1 -0
- package/dist/maps/gl/renderer.js +1127 -0
- package/dist/maps/gl/renderer.js.map +1 -0
- package/dist/maps/gl/shaders.d.ts +120 -0
- package/dist/maps/gl/shaders.d.ts.map +1 -0
- package/dist/maps/gl/shaders.js +451 -0
- package/dist/maps/gl/shaders.js.map +1 -0
- package/dist/maps/gl/store.d.ts +115 -0
- package/dist/maps/gl/store.d.ts.map +1 -0
- package/dist/maps/gl/store.js +469 -0
- package/dist/maps/gl/store.js.map +1 -0
- package/dist/maps/gl/text.d.ts +154 -0
- package/dist/maps/gl/text.d.ts.map +1 -0
- package/dist/maps/gl/text.js +382 -0
- package/dist/maps/gl/text.js.map +1 -0
- package/dist/maps/gl/view.d.ts +54 -0
- package/dist/maps/gl/view.d.ts.map +1 -0
- package/dist/maps/gl/view.js +974 -0
- package/dist/maps/gl/view.js.map +1 -0
- package/dist/maps/index.d.ts +1 -1
- package/dist/maps/index.d.ts.map +1 -1
- package/dist/maps/index.js +216 -52
- package/dist/maps/index.js.map +1 -1
- package/dist/maps/labels.d.ts +37 -16
- package/dist/maps/labels.d.ts.map +1 -1
- package/dist/maps/labels.js +188 -119
- package/dist/maps/labels.js.map +1 -1
- package/dist/maps/node.d.ts +162 -56
- package/dist/maps/node.d.ts.map +1 -1
- package/dist/maps/node.js +607 -515
- package/dist/maps/node.js.map +1 -1
- package/dist/maps/overlay.d.ts +72 -9
- package/dist/maps/overlay.d.ts.map +1 -1
- package/dist/maps/overlay.js +108 -28
- package/dist/maps/overlay.js.map +1 -1
- package/dist/maps/paint.d.ts +3 -0
- package/dist/maps/paint.d.ts.map +1 -1
- package/dist/maps/paint.js.map +1 -1
- package/dist/maps/proj.d.ts +14 -0
- package/dist/maps/proj.d.ts.map +1 -1
- package/dist/maps/proj.js +28 -0
- package/dist/maps/proj.js.map +1 -1
- package/dist/maps/renderer.d.ts +69 -0
- package/dist/maps/renderer.d.ts.map +1 -0
- package/dist/maps/renderer.js +66 -0
- package/dist/maps/renderer.js.map +1 -0
- package/dist/maps/sources.d.ts +25 -3
- package/dist/maps/sources.d.ts.map +1 -1
- package/dist/maps/sources.js +17 -0
- package/dist/maps/sources.js.map +1 -1
- package/dist/maps/theme.d.ts +19 -0
- package/dist/maps/theme.d.ts.map +1 -0
- package/dist/maps/theme.js +44 -0
- package/dist/maps/theme.js.map +1 -0
- package/dist/maps/tiles.d.ts +117 -17
- package/dist/maps/tiles.d.ts.map +1 -1
- package/dist/maps/tiles.js +163 -30
- package/dist/maps/tiles.js.map +1 -1
- package/dist/maps/types.d.ts +188 -20
- package/dist/maps/types.d.ts.map +1 -1
- package/dist/markdown/expressions.d.ts +1 -1
- package/dist/markdown/expressions.d.ts.map +1 -1
- package/dist/markdown/expressions.js.map +1 -1
- package/dist/markdown/index.d.ts +7 -6
- package/dist/markdown/index.d.ts.map +1 -1
- package/dist/markdown/index.js +9 -7
- package/dist/markdown/index.js.map +1 -1
- package/dist/markdown/spans.d.ts +1 -1
- package/dist/markdown/spans.d.ts.map +1 -1
- package/dist/media-player/index.d.ts +11 -3
- package/dist/media-player/index.d.ts.map +1 -1
- package/dist/media-player/index.js +13 -2
- package/dist/media-player/index.js.map +1 -1
- package/dist/rich-text-editor/clipboard.d.ts +23 -0
- package/dist/rich-text-editor/clipboard.d.ts.map +1 -0
- package/dist/rich-text-editor/clipboard.js +307 -0
- package/dist/rich-text-editor/clipboard.js.map +1 -0
- package/dist/rich-text-editor/collab.d.ts +32 -0
- package/dist/rich-text-editor/collab.d.ts.map +1 -0
- package/dist/rich-text-editor/collab.js +55 -0
- package/dist/rich-text-editor/collab.js.map +1 -0
- package/dist/rich-text-editor/commands.d.ts +50 -0
- package/dist/rich-text-editor/commands.d.ts.map +1 -0
- package/dist/rich-text-editor/commands.js +376 -0
- package/dist/rich-text-editor/commands.js.map +1 -0
- package/dist/rich-text-editor/drag.d.ts +68 -0
- package/dist/rich-text-editor/drag.d.ts.map +1 -0
- package/dist/rich-text-editor/drag.js +148 -0
- package/dist/rich-text-editor/drag.js.map +1 -0
- package/dist/rich-text-editor/html.d.ts +145 -0
- package/dist/rich-text-editor/html.d.ts.map +1 -0
- package/dist/rich-text-editor/html.js +516 -0
- package/dist/rich-text-editor/html.js.map +1 -0
- package/dist/rich-text-editor/index.d.ts +263 -0
- package/dist/rich-text-editor/index.d.ts.map +1 -0
- package/dist/rich-text-editor/index.js +822 -0
- package/dist/rich-text-editor/index.js.map +1 -0
- package/dist/rich-text-editor/inline.d.ts +94 -0
- package/dist/rich-text-editor/inline.d.ts.map +1 -0
- package/dist/rich-text-editor/inline.js +252 -0
- package/dist/rich-text-editor/inline.js.map +1 -0
- package/dist/rich-text-editor/keymap.d.ts +71 -0
- package/dist/rich-text-editor/keymap.d.ts.map +1 -0
- package/dist/rich-text-editor/keymap.js +393 -0
- package/dist/rich-text-editor/keymap.js.map +1 -0
- package/dist/rich-text-editor/keys.d.ts +29 -0
- package/dist/rich-text-editor/keys.d.ts.map +1 -0
- package/dist/rich-text-editor/keys.js +93 -0
- package/dist/rich-text-editor/keys.js.map +1 -0
- package/dist/rich-text-editor/look.d.ts +71 -0
- package/dist/rich-text-editor/look.d.ts.map +1 -0
- package/dist/rich-text-editor/look.js +342 -0
- package/dist/rich-text-editor/look.js.map +1 -0
- package/dist/rich-text-editor/markdown.d.ts +18 -0
- package/dist/rich-text-editor/markdown.d.ts.map +1 -0
- package/dist/rich-text-editor/markdown.js +496 -0
- package/dist/rich-text-editor/markdown.js.map +1 -0
- package/dist/rich-text-editor/nodes.d.ts +135 -0
- package/dist/rich-text-editor/nodes.d.ts.map +1 -0
- package/dist/rich-text-editor/nodes.js +397 -0
- package/dist/rich-text-editor/nodes.js.map +1 -0
- package/dist/rich-text-editor/render.d.ts +68 -0
- package/dist/rich-text-editor/render.d.ts.map +1 -0
- package/dist/rich-text-editor/render.js +500 -0
- package/dist/rich-text-editor/render.js.map +1 -0
- package/dist/rich-text-editor/schema.d.ts +16 -0
- package/dist/rich-text-editor/schema.d.ts.map +1 -0
- package/dist/rich-text-editor/schema.js +386 -0
- package/dist/rich-text-editor/schema.js.map +1 -0
- package/dist/rich-text-editor/store.d.ts +11 -0
- package/dist/rich-text-editor/store.d.ts.map +1 -0
- package/dist/rich-text-editor/store.js +43 -0
- package/dist/rich-text-editor/store.js.map +1 -0
- package/dist/rich-text-editor/suggest.d.ts +127 -0
- package/dist/rich-text-editor/suggest.d.ts.map +1 -0
- package/dist/rich-text-editor/suggest.js +0 -0
- package/dist/rich-text-editor/suggest.js.map +1 -0
- package/dist/rich-text-editor/tables.d.ts +41 -0
- package/dist/rich-text-editor/tables.d.ts.map +1 -0
- package/dist/rich-text-editor/tables.js +204 -0
- package/dist/rich-text-editor/tables.js.map +1 -0
- package/dist/rich-text-editor/toolbar.d.ts +58 -0
- package/dist/rich-text-editor/toolbar.d.ts.map +1 -0
- package/dist/rich-text-editor/toolbar.js +548 -0
- package/dist/rich-text-editor/toolbar.js.map +1 -0
- package/dist/rich-text-editor/view.d.ts +368 -0
- package/dist/rich-text-editor/view.d.ts.map +1 -0
- package/dist/rich-text-editor/view.js +1968 -0
- package/dist/rich-text-editor/view.js.map +1 -0
- package/dist/rich-text-editor/virtual.d.ts +54 -0
- package/dist/rich-text-editor/virtual.d.ts.map +1 -0
- package/dist/rich-text-editor/virtual.js +262 -0
- package/dist/rich-text-editor/virtual.js.map +1 -0
- package/dist/richtext/node.d.ts +25 -2
- package/dist/richtext/node.d.ts.map +1 -1
- package/dist/richtext/node.js +46 -24
- package/dist/richtext/node.js.map +1 -1
- package/dist/terminal/backends.d.ts +4 -1
- package/dist/terminal/backends.d.ts.map +1 -1
- package/dist/terminal/backends.js.map +1 -1
- package/dist/terminal/index.d.ts +18 -7
- package/dist/terminal/index.d.ts.map +1 -1
- package/dist/terminal/index.js +28 -11
- package/dist/terminal/index.js.map +1 -1
- package/package.json +23 -4
- package/src/charts/node.ts +6 -2
- package/src/embed/client.ts +102 -8
- package/src/embed/index.ts +2 -0
- package/src/html/node.ts +7 -5
- package/src/index.ts +2 -0
- package/src/{markdown → internal/markdown}/ast.ts +24 -7
- package/src/{markdown → internal/markdown}/parse.ts +134 -24
- package/src/internal/markdown/stringify.ts +772 -0
- package/src/internal/scroll.ts +5 -3
- package/src/maps/anchors.ts +607 -0
- package/src/maps/controller.ts +999 -0
- package/src/maps/gl/buckets.ts +457 -0
- package/src/maps/gl/build-worker.ts +55 -0
- package/src/maps/gl/color.ts +62 -0
- package/src/maps/gl/cover.ts +170 -0
- package/src/maps/gl/index.ts +23 -0
- package/src/maps/gl/markers.ts +83 -0
- package/src/maps/gl/overlays.ts +379 -0
- package/src/maps/gl/pane.ts +42 -0
- package/src/maps/gl/placement.ts +816 -0
- package/src/maps/gl/renderer.ts +1576 -0
- package/src/maps/gl/shaders.ts +486 -0
- package/src/maps/gl/store.ts +566 -0
- package/src/maps/gl/text.ts +495 -0
- package/src/maps/gl/view.ts +1224 -0
- package/src/maps/index.ts +270 -81
- package/src/maps/labels.ts +214 -121
- package/src/maps/node.ts +763 -629
- package/src/maps/overlay.ts +148 -43
- package/src/maps/paint.ts +3 -0
- package/src/maps/proj.ts +31 -0
- package/src/maps/renderer.ts +155 -0
- package/src/maps/sources.ts +38 -3
- package/src/maps/theme.ts +51 -0
- package/src/maps/tiles.ts +191 -33
- package/src/maps/types.ts +188 -20
- package/src/markdown/expressions.ts +5 -1
- package/src/markdown/index.ts +14 -11
- package/src/markdown/spans.ts +1 -1
- package/src/media-player/index.ts +18 -4
- package/src/rich-text-editor/clipboard.ts +439 -0
- package/src/rich-text-editor/collab.ts +91 -0
- package/src/rich-text-editor/commands.ts +448 -0
- package/src/rich-text-editor/dom-globals.d.ts +23 -0
- package/src/rich-text-editor/drag.ts +211 -0
- package/src/rich-text-editor/html.ts +619 -0
- package/src/rich-text-editor/index.ts +1331 -0
- package/src/rich-text-editor/inline.ts +345 -0
- package/src/rich-text-editor/keymap.ts +510 -0
- package/src/rich-text-editor/keys.ts +119 -0
- package/src/rich-text-editor/look.ts +427 -0
- package/src/rich-text-editor/markdown.ts +653 -0
- package/src/rich-text-editor/nodes.ts +497 -0
- package/src/rich-text-editor/render.ts +800 -0
- package/src/rich-text-editor/schema.ts +431 -0
- package/src/rich-text-editor/store.ts +39 -0
- package/src/rich-text-editor/suggest.ts +597 -0
- package/src/rich-text-editor/tables.ts +272 -0
- package/src/rich-text-editor/toolbar.ts +724 -0
- package/src/rich-text-editor/view.ts +2287 -0
- package/src/rich-text-editor/virtual.ts +347 -0
- package/src/richtext/node.ts +59 -30
- package/src/terminal/backends.ts +4 -1
- package/src/terminal/index.ts +43 -15
- package/dist/markdown/ast.d.ts.map +0 -1
- package/dist/markdown/ast.js +0 -17
- package/dist/markdown/ast.js.map +0 -1
- package/dist/markdown/parse.d.ts.map +0 -1
- package/dist/markdown/parse.js.map +0 -1
- package/dist/markdown/tags.d.ts.map +0 -1
- package/dist/markdown/tags.js.map +0 -1
- /package/dist/{markdown → internal/markdown}/parse.d.ts +0 -0
- /package/dist/{markdown → internal/markdown}/tags.d.ts +0 -0
- /package/dist/{markdown → internal/markdown}/tags.js +0 -0
- /package/src/{markdown → internal/markdown}/tags.ts +0 -0
package/dist/richtext/node.js
CHANGED
|
@@ -82,8 +82,14 @@ function rangeBands(layout, text, start, end) {
|
|
|
82
82
|
export class RichTextNode extends Node {
|
|
83
83
|
_layouts = new Map();
|
|
84
84
|
_text = null;
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
/**
|
|
86
|
+
* `kind` is for a subclass registered under a name of its own — the rich
|
|
87
|
+
* text editor's text blocks are `<richtext>` plus a caret and a selection
|
|
88
|
+
* the editor owns (`src/rich-text-editor/nodes.ts`). A node's `kind` must be
|
|
89
|
+
* the name it was registered under, so the subclass passes its own.
|
|
90
|
+
*/
|
|
91
|
+
constructor(props, app, kind = ELEMENT) {
|
|
92
|
+
super(kind, props, app);
|
|
87
93
|
}
|
|
88
94
|
/**
|
|
89
95
|
* The size the laid-out runs come to. An unbounded axis arrives as
|
|
@@ -160,8 +166,10 @@ export class RichTextNode extends Node {
|
|
|
160
166
|
* The layout this node is currently painted with — and, because it is the
|
|
161
167
|
* one thing every accessor below answers from, the reason a caret rect and
|
|
162
168
|
* a glyph cannot disagree (docs/extending.md, "answer from what you draw").
|
|
169
|
+
* Protected rather than private for the editor's subclass, whose line-wise
|
|
170
|
+
* caret motion reads the lines off the same layout the glyphs came from.
|
|
163
171
|
*/
|
|
164
|
-
|
|
172
|
+
paintLayout() {
|
|
165
173
|
const wrap = this.props.wrap !== false;
|
|
166
174
|
return this._layoutFor(wrap ? this.abs.width : Infinity);
|
|
167
175
|
}
|
|
@@ -195,14 +203,14 @@ export class RichTextNode extends Node {
|
|
|
195
203
|
return this._text;
|
|
196
204
|
}
|
|
197
205
|
textIndexAt(x, y) {
|
|
198
|
-
const layout = this.
|
|
206
|
+
const layout = this.paintLayout();
|
|
199
207
|
if (!layout)
|
|
200
208
|
return 0;
|
|
201
209
|
const i = layout.indexAt(x - this.abs.x, y - this.abs.y);
|
|
202
210
|
return Math.max(0, Math.min([...this.textContent()].length, i));
|
|
203
211
|
}
|
|
204
212
|
textCaretRect(index) {
|
|
205
|
-
const layout = this.
|
|
213
|
+
const layout = this.paintLayout();
|
|
206
214
|
if (!layout)
|
|
207
215
|
return null;
|
|
208
216
|
const caret = layout.caretPosition(index);
|
|
@@ -214,7 +222,7 @@ export class RichTextNode extends Node {
|
|
|
214
222
|
};
|
|
215
223
|
}
|
|
216
224
|
textRangeRects(start, end) {
|
|
217
|
-
const layout = this.
|
|
225
|
+
const layout = this.paintLayout();
|
|
218
226
|
if (!layout)
|
|
219
227
|
return [];
|
|
220
228
|
return rangeBands(layout, this.textContent(), start, end).map((band) => ({
|
|
@@ -229,7 +237,7 @@ export class RichTextNode extends Node {
|
|
|
229
237
|
* selection seam: core deliberately left hover and `cursorAt` out of
|
|
230
238
|
* #291, so following a link stays this package's. */
|
|
231
239
|
hrefAtPoint(x, y) {
|
|
232
|
-
const layout = this.
|
|
240
|
+
const layout = this.paintLayout();
|
|
233
241
|
if (!layout)
|
|
234
242
|
return null;
|
|
235
243
|
const s = this._scale;
|
|
@@ -251,7 +259,7 @@ export class RichTextNode extends Node {
|
|
|
251
259
|
// --- paint ---------------------------------------------------------------
|
|
252
260
|
paint(ctx) {
|
|
253
261
|
super.paint(ctx); // background, border, clip to `abs`
|
|
254
|
-
const layout = this.
|
|
262
|
+
const layout = this.paintLayout();
|
|
255
263
|
if (!layout || !canFill(ctx))
|
|
256
264
|
return;
|
|
257
265
|
const { x, y } = this.abs;
|
|
@@ -261,29 +269,43 @@ export class RichTextNode extends Node {
|
|
|
261
269
|
// terminal's cell backgrounds
|
|
262
270
|
for (const line of layout.lines)
|
|
263
271
|
paintRunBackgrounds(ctx, line, x, y, s);
|
|
264
|
-
// 2. the band
|
|
265
|
-
|
|
266
|
-
//
|
|
267
|
-
|
|
268
|
-
//
|
|
272
|
+
// 2. the band a selection has claimed of this element's text
|
|
273
|
+
this.paintSelection(ctx);
|
|
274
|
+
// 3. the ink
|
|
275
|
+
layout.draw(ctx, x, y);
|
|
276
|
+
// 4. rules over the ink: link underlines, strikethrough
|
|
277
|
+
for (const line of layout.lines)
|
|
278
|
+
paintRunRules(ctx, line, x, y, s);
|
|
279
|
+
// 5. anything that belongs over everything — a subclass's caret
|
|
280
|
+
this.paintOverlay(ctx);
|
|
281
|
+
ctx.restore();
|
|
282
|
+
}
|
|
283
|
+
/**
|
|
284
|
+
* The selection band, between the run backgrounds and the ink. The default
|
|
285
|
+
* is core's document selection: the band the `selectable` surface above
|
|
286
|
+
* has claimed of this element's text, translucent so the ink keeps its
|
|
287
|
+
* contrast on either palette (the same reasoning as `<textarea>`'s). The
|
|
288
|
+
* range and the colour both arrive from that surface; `textRangeRects` is
|
|
289
|
+
* what a custom element and core's own `<text>` both fill, so they cannot
|
|
290
|
+
* drift. An element with a selection of its own — the editor's text
|
|
291
|
+
* blocks — overrides this and fills that one instead.
|
|
292
|
+
*/
|
|
293
|
+
paintSelection(ctx) {
|
|
269
294
|
const range = this.selectionRange;
|
|
270
295
|
// The colour is the condition, not just the range: core types it
|
|
271
296
|
// `string | null` and defines it as what to fill the rectangles with
|
|
272
297
|
// *while a selection is set*, so a null one is "nothing to draw"
|
|
273
298
|
// rather than a band in the default ink.
|
|
274
299
|
const selectionColor = this.selectionColor;
|
|
275
|
-
if (selectionColor
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
300
|
+
if (!selectionColor || !range || range.end <= range.start)
|
|
301
|
+
return;
|
|
302
|
+
ctx.fillStyle = selectionColor;
|
|
303
|
+
for (const r of this.textRangeRects(range.start, range.end)) {
|
|
304
|
+
ctx.fillRect(Math.round(r.x), Math.round(r.y), Math.ceil(r.width), Math.ceil(r.height));
|
|
280
305
|
}
|
|
281
|
-
// 3. the ink
|
|
282
|
-
layout.draw(ctx, x, y);
|
|
283
|
-
// 4. rules over the ink: link underlines, strikethrough
|
|
284
|
-
for (const line of layout.lines)
|
|
285
|
-
paintRunRules(ctx, line, x, y, s);
|
|
286
|
-
ctx.restore();
|
|
287
306
|
}
|
|
307
|
+
/** Drawn last, over the ink and the rules: nothing here, a caret in the
|
|
308
|
+
* editor's subclass. Inside the same save/restore as the rest. */
|
|
309
|
+
paintOverlay(_ctx) { }
|
|
288
310
|
}
|
|
289
311
|
//# sourceMappingURL=node.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/richtext/node.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,yEAAyE;AACzE,6EAA6E;AAC7E,aAAa;AACb,EAAE;AACF,wEAAwE;AACxE,4EAA4E;AAC5E,6EAA6E;AAC7E,6EAA6E;AAC7E,0EAA0E;AAC1E,EAAE;AACF,8EAA8E;AAC9E,uEAAuE;AACvE,0EAA0E;AAC1E,8EAA8E;AAC9E,uEAAuE;AACvE,4EAA4E;AAC5E,6EAA6E;AAC7E,sEAAsE;AACtE,6EAA6E;AAC7E,wEAAwE;AACxE,6EAA6E;AAC7E,6BAA6B;AAC7B,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAStC,OAAO,EACL,OAAO,EACP,SAAS,EACT,mBAAmB,EACnB,aAAa,GACd,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/richtext/node.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,10 @@
|
|
|
7
7
|
* program installed and is the only backend `write()` can work on.
|
|
8
8
|
*
|
|
9
9
|
* `'auto'` takes the first embeddable emulator that is installed and falls
|
|
10
|
-
* back to `'vt'
|
|
10
|
+
* back to `'vt'` — and on a react-x11 backend that cannot host an embedded
|
|
11
|
+
* window at all (the native macOS one) it takes `'vt'` without looking for
|
|
12
|
+
* the other three, because an emulator found on `PATH` there is one this app
|
|
13
|
+
* cannot show. That order — rather than vt first — is deliberate: an
|
|
11
14
|
* external emulator is battle-tested, and a user who installed one expressed
|
|
12
15
|
* a preference. Moving vt to the front is a later, deliberate decision.
|
|
13
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backends.d.ts","sourceRoot":"","sources":["../../src/terminal/backends.ts"],"names":[],"mappings":"AAcA
|
|
1
|
+
{"version":3,"file":"backends.d.ts","sourceRoot":"","sources":["../../src/terminal/backends.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,mBAAmB,GAC7B,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,WAAW,GAAG,IAAI,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AAED,yCAAyC;AACzC,MAAM,WAAW,cAAc;IAC7B,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2BAA2B;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAC3C,sCAAsC;IACtC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,2EAA2E;IAC3E,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,EAAE,CAAC;CACxC;AAiBD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,KAAK,EAAE,eA8BnB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK,EAAE,eAsBnB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,SAAS,EAAE,eAgCvB,CAAC;AAQF;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,eAAe,EAIvD,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,mBAAmB,GACxB,SAAS,eAAe,EAAE,CAI5B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backends.js","sourceRoot":"","sources":["../../src/terminal/backends.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,OAAO;AACP,EAAE;AACF,6EAA6E;AAC7E,wEAAwE;AACxE,wEAAwE;AACxE,yEAAyE;AACzE,4EAA4E;AAC5E,6BAA6B;AAC7B,EAAE;AACF,4EAA4E;AAC5E,yEAAyE;AACzE,mDAAmD;
|
|
1
|
+
{"version":3,"file":"backends.js","sourceRoot":"","sources":["../../src/terminal/backends.ts"],"names":[],"mappings":"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"}
|
package/dist/terminal/index.d.ts
CHANGED
|
@@ -59,7 +59,13 @@ export interface TerminalProps {
|
|
|
59
59
|
/**
|
|
60
60
|
* Which terminal. Default `'auto'`: the first of xterm, urxvt, alacritty
|
|
61
61
|
* that is installed, and `'vt'` — this package's own emulator, which needs
|
|
62
|
-
* nothing installed — when none of them is
|
|
62
|
+
* nothing installed — when none of them is, or when this react-x11 backend
|
|
63
|
+
* cannot embed another program's window at all (the native macOS one), in
|
|
64
|
+
* which case the three are not even looked for.
|
|
65
|
+
*
|
|
66
|
+
* Name one of the three on such a backend and it is taken at its word,
|
|
67
|
+
* not quietly swapped for vt: `status` is `'unavailable'`, `fallback`
|
|
68
|
+
* renders and `onError` gets an `EmbedUnsupportedError`.
|
|
63
69
|
*/
|
|
64
70
|
backend?: TerminalBackendName;
|
|
65
71
|
fontFamily?: string;
|
|
@@ -85,11 +91,14 @@ export interface TerminalProps {
|
|
|
85
91
|
onExit?: (info: ExitInfo) => void;
|
|
86
92
|
/** The emulator's `_NET_WM_NAME` changed: what the shell says is running. */
|
|
87
93
|
onTitleChange?: (title: string) => void;
|
|
88
|
-
/** Spawn failures,
|
|
89
|
-
* emulator installed
|
|
90
|
-
*
|
|
94
|
+
/** Spawn failures, the `BackendUnavailableError` for a machine with no
|
|
95
|
+
* emulator installed, and the `EmbedUnsupportedError` for an emulator
|
|
96
|
+
* named on a react-x11 backend that cannot embed one. Without a handler
|
|
97
|
+
* none of it is reported anywhere — `status` and `fallback` are the
|
|
98
|
+
* visible half. */
|
|
91
99
|
onError?: (err: Error) => void;
|
|
92
|
-
/** Rendered instead of the surface when no backend is
|
|
100
|
+
/** Rendered instead of the surface when no backend is available — none
|
|
101
|
+
* installed, or the one named cannot be embedded here. */
|
|
93
102
|
fallback?: ReactNode;
|
|
94
103
|
/** False holds off spawning — a pane in a tab that is not open yet. */
|
|
95
104
|
enabled?: boolean;
|
|
@@ -153,8 +162,10 @@ export interface TerminalProps {
|
|
|
153
162
|
* while the pointer is *over* an embedded emulator, keys go straight to it.
|
|
154
163
|
*
|
|
155
164
|
* **The vt backend is the floor.** With `backend="auto"` (the default), a
|
|
156
|
-
* machine with no emulator installed gets this package's own
|
|
157
|
-
*
|
|
165
|
+
* machine with no emulator installed gets this package's own, and so does an
|
|
166
|
+
* app on a react-x11 backend with no XEmbed — the native macOS one — whatever
|
|
167
|
+
* is installed. `fallback` renders only when the pty module or
|
|
168
|
+
* `@xterm/headless` is missing too.
|
|
158
169
|
*/
|
|
159
170
|
export declare function Terminal(props: TerminalProps): ReactElement;
|
|
160
171
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/terminal/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/terminal/index.ts"],"names":[],"mappings":"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"}
|
package/dist/terminal/index.js
CHANGED
|
@@ -23,7 +23,9 @@
|
|
|
23
23
|
// rendered as a native element rather than as somebody else's X window. It is
|
|
24
24
|
// what makes `write()` real — the pty is ours — and what works on a machine
|
|
25
25
|
// with no emulator installed, which is why `'auto'` ends there rather than at
|
|
26
|
-
// the `fallback`.
|
|
26
|
+
// the `fallback`. It is also the only half that works on a react-x11 backend
|
|
27
|
+
// with no XEmbed at all — the native macOS one — so `'auto'` goes straight
|
|
28
|
+
// there when the app cannot host an emulator's window, whatever `PATH` holds.
|
|
27
29
|
//
|
|
28
30
|
// **`write()` still returns `false` on the XEmbed backends**, and that is not
|
|
29
31
|
// an oversight: the pty belongs to xterm, so "type this" would have to be
|
|
@@ -33,8 +35,8 @@
|
|
|
33
35
|
// Returning `false` rather than throwing lets an app feature-test with the
|
|
34
36
|
// call itself.
|
|
35
37
|
import React, { useCallback, useEffect, useMemo, useRef, useState, } from 'react';
|
|
36
|
-
import { useTheme } from 'react-x11';
|
|
37
|
-
import { BackendUnavailableError, resolveBackend, useEmbeddedClient, } from '../embed/index.js';
|
|
38
|
+
import { useApp, useTheme } from 'react-x11';
|
|
39
|
+
import { BackendUnavailableError, canHostXEmbed, resolveBackend, useEmbeddedClient, } from '../embed/index.js';
|
|
38
40
|
import { backendsFor } from './backends.js';
|
|
39
41
|
import { useForeignTitle } from './title.js';
|
|
40
42
|
import { hx } from './hx.js';
|
|
@@ -95,12 +97,17 @@ function warnVtOnly(props) {
|
|
|
95
97
|
* while the pointer is *over* an embedded emulator, keys go straight to it.
|
|
96
98
|
*
|
|
97
99
|
* **The vt backend is the floor.** With `backend="auto"` (the default), a
|
|
98
|
-
* machine with no emulator installed gets this package's own
|
|
99
|
-
*
|
|
100
|
+
* machine with no emulator installed gets this package's own, and so does an
|
|
101
|
+
* app on a react-x11 backend with no XEmbed — the native macOS one — whatever
|
|
102
|
+
* is installed. `fallback` renders only when the pty module or
|
|
103
|
+
* `@xterm/headless` is missing too.
|
|
100
104
|
*/
|
|
101
105
|
export function Terminal(props) {
|
|
102
106
|
const { backend = 'auto', enabled = true, focusable, processes, stopSignal, } = props;
|
|
103
107
|
const theme = useTheme();
|
|
108
|
+
// Whether an emulator's window can be hosted here at all. It decides the
|
|
109
|
+
// ladder below before `PATH` is asked anything.
|
|
110
|
+
const embeddable = canHostXEmbed(useApp());
|
|
104
111
|
// Everything that goes into the command line, as one string.
|
|
105
112
|
//
|
|
106
113
|
// This is the restart key, and it is a string rather than a dependency list
|
|
@@ -170,12 +177,14 @@ export function Terminal(props) {
|
|
|
170
177
|
// --- which half of the component is running ------------------------------
|
|
171
178
|
//
|
|
172
179
|
// `'vt'` asks for it outright; `'auto'` arrives here only after the PATH
|
|
173
|
-
// probe found no emulator
|
|
174
|
-
//
|
|
175
|
-
//
|
|
176
|
-
//
|
|
180
|
+
// probe found no emulator — or without probing at all on an app that could
|
|
181
|
+
// not host one it found, which on a Mac with XQuartz is exactly what `PATH`
|
|
182
|
+
// offers. That is what makes vt the floor rather than a parallel option.
|
|
183
|
+
// Both halves' hooks run unconditionally — the one that is not in use is
|
|
184
|
+
// simply disabled — because that is what hooks require and because a
|
|
185
|
+
// `<Terminal>` that flips backends must not remount the other one.
|
|
177
186
|
const [vtFallback, setVtFallback] = useState(false);
|
|
178
|
-
const vt = backend === 'vt' || (backend === 'auto' && vtFallback);
|
|
187
|
+
const vt = backend === 'vt' || (backend === 'auto' && (vtFallback || !embeddable));
|
|
179
188
|
useEffect(() => {
|
|
180
189
|
if (backend !== 'auto')
|
|
181
190
|
setVtFallback(false);
|
|
@@ -320,10 +329,18 @@ export function Terminal(props) {
|
|
|
320
329
|
}
|
|
321
330
|
// No backend installed is an ordinary state of a perfectly healthy machine,
|
|
322
331
|
// not an error to report — the same call `useDesktopCalendarEvents` makes
|
|
323
|
-
// about a desktop with no Evolution Data Server.
|
|
332
|
+
// about a desktop with no Evolution Data Server. So is an emulator named on
|
|
333
|
+
// an app that cannot host one.
|
|
324
334
|
if (client.status === 'unavailable' && props.fallback !== undefined) {
|
|
325
335
|
return h(React.Fragment, null, props.fallback);
|
|
326
336
|
}
|
|
337
|
+
// …and without a `fallback` that app still gets no `<foreign>`, which has
|
|
338
|
+
// no socket to be there: on the Cocoa backend it hands `onReady` a window id
|
|
339
|
+
// of `undefined`, and on core's headless mock mounting one throws from the
|
|
340
|
+
// commit. A box in the terminal's own background holds the layout, as it
|
|
341
|
+
// does while the vt module loads.
|
|
342
|
+
if (!embeddable)
|
|
343
|
+
return hx('box', { style: styles });
|
|
327
344
|
const foreign = {
|
|
328
345
|
onReady: client.handleReady,
|
|
329
346
|
onEmbedded: title.onEmbedded,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/terminal/index.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,EAAE;AACF,8EAA8E;AAC9E,+EAA+E;AAC/E,2DAA2D;AAC3D,EAAE;AACF,6EAA6E;AAC7E,8EAA8E;AAC9E,gEAAgE;AAChE,6EAA6E;AAC7E,2EAA2E;AAC3E,8DAA8D;AAC9D,EAAE;AACF,uEAAuE;AACvE,0EAA0E;AAC1E,wEAAwE;AACxE,8EAA8E;AAC9E,qBAAqB;AACrB,EAAE;AACF,yBAAyB;AACzB,EAAE;AACF,yEAAyE;AACzE,8EAA8E;AAC9E,4EAA4E;AAC5E,8EAA8E;AAC9E,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/terminal/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-x11/components",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "Components for react-x11 that do not belong in the core package",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react",
|
|
@@ -100,6 +100,10 @@
|
|
|
100
100
|
"types": "./dist/reorder/index.d.ts",
|
|
101
101
|
"default": "./dist/reorder/index.js"
|
|
102
102
|
},
|
|
103
|
+
"./rich-text-editor": {
|
|
104
|
+
"types": "./dist/rich-text-editor/index.d.ts",
|
|
105
|
+
"default": "./dist/rich-text-editor/index.js"
|
|
106
|
+
},
|
|
103
107
|
"./richtext": {
|
|
104
108
|
"types": "./dist/richtext/index.d.ts",
|
|
105
109
|
"default": "./dist/richtext/index.js"
|
|
@@ -169,11 +173,13 @@
|
|
|
169
173
|
"examples:formula": "tsx examples/formula.tsx",
|
|
170
174
|
"examples:html": "tsx examples/html.tsx",
|
|
171
175
|
"examples:maps": "tsx examples/maps.tsx",
|
|
176
|
+
"examples:maps-gl": "tsx examples/maps-gl.tsx",
|
|
172
177
|
"examples:markdown": "tsx examples/markdown.tsx",
|
|
173
178
|
"examples:mdx": "tsx examples/mdx.tsx",
|
|
174
179
|
"examples:media-player": "tsx examples/media-player.tsx",
|
|
175
180
|
"examples:qml": "tsx examples/qml/qml.tsx",
|
|
176
181
|
"examples:reorder": "tsx examples/reorder.tsx",
|
|
182
|
+
"examples:rich-text-editor": "tsx examples/rich-text-editor.tsx",
|
|
177
183
|
"examples:table": "tsx examples/table.tsx",
|
|
178
184
|
"examples:tabs": "tsx examples/tabs.tsx",
|
|
179
185
|
"examples:terminal": "tsx examples/terminal.tsx",
|
|
@@ -192,6 +198,16 @@
|
|
|
192
198
|
"domhandler": "^6.0.0",
|
|
193
199
|
"domutils": "^4.0.0",
|
|
194
200
|
"htmlparser2": "^12.0.0",
|
|
201
|
+
"prosemirror-commands": "^1.7.2",
|
|
202
|
+
"prosemirror-history": "^1.5.0",
|
|
203
|
+
"prosemirror-inputrules": "^1.5.1",
|
|
204
|
+
"prosemirror-keymap": "^1.2.3",
|
|
205
|
+
"prosemirror-model": "^1.25.11",
|
|
206
|
+
"prosemirror-schema-list": "^1.5.1",
|
|
207
|
+
"prosemirror-state": "^1.4.4",
|
|
208
|
+
"prosemirror-tables": "^1.8.5",
|
|
209
|
+
"prosemirror-transform": "^1.12.1",
|
|
210
|
+
"prosemirror-view": "^1.42.3",
|
|
195
211
|
"react-reconciler": "^0.33.0"
|
|
196
212
|
},
|
|
197
213
|
"peerDependencies": {
|
|
@@ -199,7 +215,7 @@
|
|
|
199
215
|
"@lydell/node-pty": "^1.0.0",
|
|
200
216
|
"node-pty": "^1.0.0",
|
|
201
217
|
"react": "^19.0.0",
|
|
202
|
-
"react-x11": "^2.
|
|
218
|
+
"react-x11": "^2.13.0"
|
|
203
219
|
},
|
|
204
220
|
"peerDependenciesMeta": {
|
|
205
221
|
"@lezer/highlight": {
|
|
@@ -222,9 +238,12 @@
|
|
|
222
238
|
"globals": "^17.8.0",
|
|
223
239
|
"prettier": "^3.6.0",
|
|
224
240
|
"react": "^19.2.8",
|
|
225
|
-
"react-x11": "^2.
|
|
241
|
+
"react-x11": "^2.13.0",
|
|
226
242
|
"tsx": "^4.23.1",
|
|
227
|
-
"typescript": "^7.0.2"
|
|
243
|
+
"typescript": "^7.0.2",
|
|
244
|
+
"y-prosemirror": "^1.3.7",
|
|
245
|
+
"y-protocols": "^1.0.7",
|
|
246
|
+
"yjs": "^13.6.32"
|
|
228
247
|
},
|
|
229
248
|
"publishConfig": {
|
|
230
249
|
"access": "public"
|
package/src/charts/node.ts
CHANGED
|
@@ -657,7 +657,11 @@ export class ChartPlotNode extends Node {
|
|
|
657
657
|
|
|
658
658
|
// --- render host ---------------------------------------------------------
|
|
659
659
|
|
|
660
|
-
|
|
660
|
+
// Not `_host`: core's `Node` sets a `_host` field on every node (react-x11
|
|
661
|
+
// 2.12 and later), and a field on the instance shadows a method of the
|
|
662
|
+
// same name — every chart threw in `paint`. `test/node-fields.test.ts`
|
|
663
|
+
// keeps the next such name from getting through.
|
|
664
|
+
private _renderHost(): RenderHost {
|
|
661
665
|
return {
|
|
662
666
|
scatterGrid: (id, key, _n) => {
|
|
663
667
|
let grid = this._scatterGrids.get(id);
|
|
@@ -755,7 +759,7 @@ export class ChartPlotNode extends Node {
|
|
|
755
759
|
xScale: layout.xScale,
|
|
756
760
|
yScale: layout.yScale,
|
|
757
761
|
stats,
|
|
758
|
-
host: this.
|
|
762
|
+
host: this._renderHost(),
|
|
759
763
|
scale: this._scale,
|
|
760
764
|
};
|
|
761
765
|
for (const geom of layout.geoms) renderSeries(env, geom);
|