@one2x/medeo-rte 1.0.0 → 2.0.1

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
@@ -53,15 +53,15 @@
53
53
  * 若宿主需要纸张观感(留白、阴影、整页最小高度),应在宿主层自行添加(参见 demo)。
54
54
  */
55
55
  /*
56
- * 左右各留 10px 可视区(负 margin 抵消,文字位置不变)。画布外扩是 5px(CANVAS_GUTTER),
56
+ * 左右各留 9px 可视区(负 margin 抵消,文字位置不变)。画布外扩是 5px(CANVAS_GUTTER),
57
57
  * 这段留白盖住它,mark 的 paddingX 在行首行尾不会被裁掉。横向再往外的内容直接裁掉,不出现横向滚动条。
58
58
  */
59
59
  .mini-page-wrap {
60
60
  flex: 1;
61
61
  overflow: auto;
62
62
  overflow-x: clip;
63
- padding: 0 10px;
64
- margin: 0 -10px;
63
+ padding: 0 9px;
64
+ margin: 0 -9px;
65
65
  }
66
66
 
67
67
  .mini-page {
@@ -580,11 +580,11 @@
580
580
  transform-origin: bottom center;
581
581
  }
582
582
 
583
- /* 选区焦点端:2px 竖线 + 顶端 6px 圆点,不闪烁。圆点整颗落在行内,
583
+ /* 选区焦点端:默认 2px 竖线 + 顶端 6px 圆点,不闪烁。圆点整颗落在行内,
584
584
  * 否则第一行(或滚到顶)时上半颗会被滚动容器裁掉。与 canvasPainter.drawFocusMark 同形 */
585
585
  .mini-focus-mark {
586
586
  position: absolute;
587
- width: 2px;
587
+ width: var(--mini-sel-focus-width, 2px);
588
588
  background: var(--mini-sel-focus-color, #2b6cff);
589
589
  pointer-events: none;
590
590
  z-index: 4;
@@ -593,7 +593,7 @@
593
593
  .mini-focus-mark::before {
594
594
  content: '';
595
595
  position: absolute;
596
- left: -2px;
596
+ left: calc((var(--mini-sel-focus-width, 2px) - 6px) / 2);
597
597
  top: 0;
598
598
  width: 6px;
599
599
  height: 6px;
@@ -65,7 +65,15 @@ export interface EditorOptions {
65
65
  chrome?: EditorChrome;
66
66
  /** 左下角常驻性能面板:每次输入上屏后显示上屏时间、编辑器耗时。默认关;也可 `setPerfPanel()` 开关。 */
67
67
  perfPanel?: boolean;
68
+ /**
69
+ * 排版范围。不传时默认 `viewport`。
70
+ * `viewport` 只在 `paint: 'canvas'` 时生效:精确排视口和光标附近,其余用已知高度或估计高度占位。
71
+ * HTML 忽略此项,始终整篇排。运行中用 {@link Editor.setLayoutMode} 切换,传 `full` 即整篇排版。
72
+ */
73
+ layout?: LayoutMode;
68
74
  }
75
+ /** `full` 整篇排版。`viewport` 只在 Canvas 下排视口附近。 */
76
+ export type LayoutMode = 'full' | 'viewport';
69
77
  /** 编辑器装饰外观(光标、选区、空态占位)。与正文字号/字体测量分开,避免宿主 CSS 盖绘制层。 */
70
78
  export interface EditorChrome {
71
79
  /** 默认 `solid`。演示能力用 `rainbow`。 */
@@ -90,6 +98,10 @@ export interface EditorChrome {
90
98
  selectionHeight?: number;
91
99
  /** 选区焦点竖线(含顶部圆点)颜色。默认 `#2b6cff`,不跟 `selectionColor` 变化。 */
92
100
  focusMarkColor?: string;
101
+ /** 选区焦点竖线宽度,像素。默认 2。圆点仍是 6px。 */
102
+ focusMarkWidth?: number;
103
+ /** 整段选中时焦点线两端与边框的留白;0 保持旧样式。 */
104
+ focusMarkBorderGap?: number;
93
105
  /** 中文输入中间态下划线颜色。默认 `#1f2329`。 */
94
106
  composeUnderlineColor?: string;
95
107
  /** 中文输入中间态下划线粗细,默认 2。 */
@@ -169,6 +181,9 @@ export interface MarkSelectEvent {
169
181
  * - `markenter` / `markleave`:光标进入或离开 mark(含空 mark 和内侧边界)
170
182
  * - `markselect`:方向键整段选中的 mark 变了。光标只是停在里面不算。`id` 为 `null` 表示没有这块选中
171
183
  * - `slotselect`:光标落到芯片上或离开。芯片比 mark 更靠上
184
+ *
185
+ * 除 `markclick` 外都不是同步调用:同一类事件在静默期内只留最后一次,
186
+ * 停止输入 {@link CALLBACK_QUIET_MS} 毫秒后一起送出。监听里读到的是送出当时的文档。
172
187
  */
173
188
  export type EditorEventMap = {
174
189
  change: void;
@@ -220,6 +235,18 @@ export declare class Editor {
220
235
  private chrome;
221
236
  private disabled;
222
237
  private paintMode;
238
+ private layoutMode;
239
+ private inRelayout;
240
+ private viewportSlack;
241
+ private layoutCoverY;
242
+ private layoutCoverIndex;
243
+ private rectFill;
244
+ private destroyed;
245
+ /** 静默期里同一类无参事件只保留一条,顺序按第一次出现。 */
246
+ private pendingVoid;
247
+ /** 带 id 的进入/离开。选中态只留最新的一条。 */
248
+ private pendingMarks;
249
+ private callbackTimer;
223
250
  private listeners;
224
251
  /** 中间态。键是 mark id。 */
225
252
  private markStatus;
@@ -246,6 +273,13 @@ export declare class Editor {
246
273
  /** 当前已镜像插入模型的组合串长度,用于下次幂等替换时删旧。 */
247
274
  private composeLen;
248
275
  private composeAffinity;
276
+ /**
277
+ * 最近一次把组合串插进文档的操作记录。确认时字已经在文档里,用它补进撤销栈,
278
+ * 不再删掉重插。只含插入,不含更早的临时串。
279
+ */
280
+ private composeInsert;
281
+ /** 组合刚落成正式编辑,紧接着的 insertText 是同一次确认的回声,跳过。 */
282
+ private composeCommitText;
249
283
  private refEdit;
250
284
  private fragSel;
251
285
  private refDragging;
@@ -270,6 +304,13 @@ export declare class Editor {
270
304
  get pageElement(): HTMLElement;
271
305
  /** 当前绘制后端。 */
272
306
  get paint(): 'html' | 'canvas';
307
+ /**
308
+ * 切换排版范围。`viewport` 只在 Canvas 下改变排版;HTML 始终整篇排。
309
+ * 切回 `full` 会丢掉视口布局,按原来的全文路径重排。
310
+ */
311
+ setLayoutMode(mode: LayoutMode): void;
312
+ /** 当前排版范围设置。HTML 下即使是 `viewport`,实际仍整篇排。 */
313
+ getLayoutMode(): LayoutMode;
273
314
  /** 更新空态占位文案。传空字符串则不再显示。 */
274
315
  setPlaceholder(text: string): void;
275
316
  /** 更新光标 / 选区等装饰外观,立即重绘 chrome。不改排版。 */
@@ -337,6 +378,18 @@ export declare class Editor {
337
378
  removeVirtualBlock(id: string): void;
338
379
  /** 删掉一段文字,并拆掉若干 mark。记成一步撤销。 */
339
380
  deleteRangeRemovingMarks(from: number, to: number, markIds: readonly string[]): void;
381
+ /**
382
+ * 按编辑前的下标删掉多段文字和列出的 mark,记成一步撤销。
383
+ * 重叠或紧挨的范围并成一段,从右往左删,避免后面的删除挪动前面的下标。
384
+ * `clearParagraphGroupId` 把该分组一并清掉,撤销时和文字一起回来。
385
+ */
386
+ deleteRangesRemovingMarks(ranges: readonly {
387
+ from: number;
388
+ to: number;
389
+ markIds: readonly string[];
390
+ }[], options?: {
391
+ clearParagraphGroupId?: string;
392
+ }): void;
340
393
  /**
341
394
  * 在指定位置插入宿主渲染块。`at` 省略为当前光标(会先删掉非折叠选区)。
342
395
  * 插入后选中该占位符,便于缩放框/选中态;宿主若要把光标放到块后,自行折叠到 `focus`。
@@ -385,6 +438,9 @@ export declare class Editor {
385
438
  /** 禁用输入与快捷键。宿主 disabled 不能只靠 CSS pointer-events。 */
386
439
  setDisabled(disabled: boolean): void;
387
440
  private emit;
441
+ /** 停手后把积压事件按出现顺序交给监听。监听里再发的事件重新计时,不插进这一批。 */
442
+ private flushCallbacks;
443
+ private deliver;
388
444
  private bindSurface;
389
445
  private unbindSurface;
390
446
  private hoverMarkIds;
@@ -432,6 +488,7 @@ export declare class Editor {
432
488
  private runEdit;
433
489
  /** 立即落一次变更,不进撤销栈。拖拽预览这类「过程中」的改动用它。 */
434
490
  private applyNow;
491
+ private applyNowRun;
435
492
  /**
436
493
  * 把已经预览生效的改动登记成一步可撤销的编辑。
437
494
  *
@@ -447,13 +504,17 @@ export declare class Editor {
447
504
  /**
448
505
  * 处理输入法组合态(拼音/候选的中间态)。
449
506
  *
450
- * 组合串镜像插入文档模型、参与真实排版 —— 每次变化都幂等地「删旧串 → 插新串」,
451
- * 光标后的内容因此靠正常重排让开,而不是被浮层盖住。整个组合过程用 applyNow
452
- * 落地、不进撤销栈;最终文字在 compositionend 后由 onInsertText 走一次正常插入
453
- * 落定成一步可撤销的编辑。确认时删拼音和插入在同一次按键里完成,只在插入后重排一次。
454
- * 组合区外观由白块 overlay 擦白,只留系统输入法的候选串。
507
+ * 组合过程中每次文字变化都把临时串映进文档并重排,让光标后面的正文让开。
508
+ * 这些写入不进撤销栈。确认时如果文档里已经是最终文字,只把最后一次插入补进
509
+ * 撤销栈,不再删掉重插,也不再排一次。文字对不上,或结尾会触发 Markdown 快捷
510
+ * 输入时,仍先删掉临时串,交给随后的 insertText 落成正式编辑。
455
511
  */
456
512
  private handleComposition;
513
+ /**
514
+ * 确认的文字已经在文档里。把当时的插入登记成一步可撤销的编辑。
515
+ * 文档和排版都不用再动,只收起组合下划线。
516
+ */
517
+ private settleComposition;
457
518
  insertText(text: string): void;
458
519
  pasteText(text: string): void;
459
520
  pasteClipboard(data: DataTransfer | null): void;
@@ -514,6 +575,15 @@ export declare class Editor {
514
575
  private applyHistoryStep;
515
576
  /** 画布模式整段先不生成字形,绘制和光标碰到的行再补。HTML 一次画全文,仍当场生成。 */
516
577
  private layoutMain;
578
+ private usesViewportLayout;
579
+ private layoutWindow;
580
+ /**
581
+ * 可见带里还有没有没排出来的块。页边距、段间距、表后空隙是留白,不是洞;
582
+ * 把留白当成洞的话,每次滚动都会重排,再被 scrollCaret 拽回光标。
583
+ */
584
+ private coversBand;
585
+ private onViewportShift;
586
+ private hitDocIndex;
517
587
  private relayout;
518
588
  private paintChrome;
519
589
  /**
@@ -530,6 +600,8 @@ export declare class Editor {
530
600
  * 整块选中的图片/引用/视频仍不画:那是选中一个对象,没有可挪动的一端。
531
601
  */
532
602
  private focusMarkPos;
603
+ /** Visual alignment only; keep the document selection and its affinity unchanged. */
604
+ private alignSelectedFocus;
533
605
  /**
534
606
  * 方向键选中 mark 但还没进入:竖线停在进入侧的外侧。
535
607
  * 从左边来:焦点在起点,用贴前(底色外)。从右边来:焦点在终点,用贴后(底色外)。
@@ -1 +1 @@
1
- {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../src/editor.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@
15
15
  * new Editor(el, { plugins: [...builtinEmbedPlugins, formulaPlugin] });
16
16
  */
17
17
  export { Editor } from './editor';
18
- export type { EditorChrome, EditorEvent, EditorEventMap, EditorOptions, EditorState, EmbedInsertAt, MarkEvent, MarkSelectEvent, MarkStatus } from './editor';
18
+ export type { EditorChrome, EditorEvent, EditorEventMap, EditorOptions, EditorState, EmbedInsertAt, LayoutMode, MarkEvent, MarkSelectEvent, MarkStatus } from './editor';
19
19
  export { INPUT_SHORTCUTS, inputShortcuts, SHORTCUTS } from './commands';
20
20
  export type { EditorCommands, KeyStroke, Shortcut } from './commands';
21
21
  export { DocumentModel, collapsedSel, documentFromSlice, nextEntityId, nextFragmentId, nextVirtualBlockId, sliceFromDocument } from './model/document';
@@ -28,7 +28,7 @@ export type { ImagePatch, Operation, OperationContext, OperationRun, VirtualBloc
28
28
  export { SLICE_MIME, serializeSlice, sliceFromClipboard } from './convert/clipboard';
29
29
  export { layoutDocument, caretFromIndex, hitTestIndex, selectionRects } from './layout/engine';
30
30
  export { FONT_FAMILY, fontFamilyOf } from './layout/measure';
31
- export type { CaretPos, DocLayout, GlyphBox, LineBox, ParagraphLayout, SelRect, TableLayout } from './layout/types';
31
+ export type { CaretPos, DocLayout, GlyphBox, LayoutWindow, LineBox, ParagraphLayout, SelRect, TableLayout } from './layout/types';
32
32
  export { HtmlPainter } from './paint/htmlPainter';
33
33
  export { CanvasPainter } from './paint/canvasPainter';
34
34
  export type { PaintBackend } from './paint/types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG7J,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACxE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvJ,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,YAAY,EACV,KAAK,EACL,WAAW,EACX,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,SAAS,EACT,KAAK,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,QAAQ,EACR,SAAS,EACT,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAG5G,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC7D,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGpH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACvI,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG3D,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACrG,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGzK,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACxE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvJ,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,YAAY,EACV,KAAK,EACL,WAAW,EACX,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,SAAS,EACT,KAAK,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,QAAQ,EACR,SAAS,EACT,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAG5G,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC7D,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlI,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGlD,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACvI,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG3D,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACrG,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { DocumentModel } from '../model/document';
2
2
  import { StyleSpan, TextProps, Selection } from '../model/types';
3
- import { CaretPos, DocLayout, ImageBox, LineBox, SelRect } from './types';
3
+ import { CaretPos, DocLayout, ImageBox, LayoutWindow, LineBox, SelRect } from './types';
4
4
  import { type MarkLayoutHint } from './wrap';
5
5
  export { resolvedTextStyle } from './style';
6
6
  /** 这一行的正文还没变成字形。空行和已经补过的行都不是。 */
@@ -20,7 +20,7 @@ export declare function deferredTextRun(line: LineBox): {
20
20
  y: number;
21
21
  h: number;
22
22
  } | null;
23
- /** 这一行画出来的样子。和上一帧相同就可以不重画。复杂行返回 null,调用方照常重画。 */
23
+ /** 这一行画出来的样子。和上一帧相同就可以不重画。比较不了的行返回 null,调用方照常重画。 */
24
24
  export declare function linePaintKey(line: LineBox): string | null;
25
25
  export declare function materializeLine(line: LineBox, prev?: LineBox | null, next?: LineBox | null): void;
26
26
  /**
@@ -72,10 +72,12 @@ export interface LayoutStats {
72
72
  assembleMs: number;
73
73
  }
74
74
  export declare function lastLayoutStats(): LayoutStats;
75
+ /** 点击落在还没有行框的估计高度上。调用方应补排这一纵坐标后再做命中测试。 */
76
+ export declare function layoutHoleAt(layout: DocLayout, y: number): boolean;
75
77
  export declare function layoutDocument(doc: DocumentModel, contentWidth?: number, prev?: DocLayout, insets?: {
76
78
  x: number;
77
79
  y: number;
78
- }, depth?: number, markHints?: Map<string, MarkLayoutHint>, deferGlyphs?: boolean): DocLayout;
80
+ }, depth?: number, markHints?: Map<string, MarkLayoutHint>, deferGlyphs?: boolean, focus?: LayoutWindow): DocLayout;
79
81
  export declare function caretFromIndex(layout: DocLayout, index: number): CaretPos;
80
82
  export declare function hitTestIndex(layout: DocLayout, localX: number, localY: number): number;
81
83
  export declare function selectionRects(layout: DocLayout, sel: Selection): SelRect[];
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/layout/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/layout/engine.ts"],"names":[],"mappings":"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"}
@@ -115,6 +115,14 @@ export interface ParagraphLayout {
115
115
  lines: LineBox[];
116
116
  floats?: ImageBox[];
117
117
  hash?: string;
118
+ /**
119
+ * 视口排版时,这块在窗口外,只有高度、没有行框。
120
+ * `estimated` 为真时高度是估计值,滚进窗口后会改成精确排版。
121
+ */
122
+ skipped?: boolean;
123
+ estimated?: boolean;
124
+ /** 只排了段首若干行,`h` 含未排尾部的估计高度。 */
125
+ partial?: boolean;
118
126
  }
119
127
  export interface CellLayout {
120
128
  row: number;
@@ -137,6 +145,21 @@ export interface TableLayout {
137
145
  colWidths: number[];
138
146
  cells: CellLayout[];
139
147
  hash?: string;
148
+ /** 视口排版时表格在窗口外,只有高度。 */
149
+ skipped?: boolean;
150
+ estimated?: boolean;
151
+ }
152
+ /**
153
+ * 只精确排这一纵向窗口(文档坐标)和 `indices` 所在的块。
154
+ * 不传则整篇排版,和原来一样。
155
+ */
156
+ export interface LayoutWindow {
157
+ top: number;
158
+ bottom: number;
159
+ /** 光标、选区、点击补排必须落到行框上的文档下标。 */
160
+ indices?: readonly number[];
161
+ /** 窗口上下再多排的像素。默认 480。 */
162
+ overscan?: number;
140
163
  }
141
164
  export interface DocLayout {
142
165
  width: number;
@@ -160,6 +183,11 @@ export interface DocLayout {
160
183
  top: number;
161
184
  bottom: number;
162
185
  };
186
+ /**
187
+ * 这次是视口排版:窗口外的块可能没有行框。
188
+ * 全文排版不带这个字段,避免被当成下一次全文增量的缓存。
189
+ */
190
+ windowed?: boolean;
163
191
  /**
164
192
  * 已经作为 prev 喂给过一次增量排版。增量排版会把复用的块就地平移(不深拷贝),
165
193
  * 所以同一份布局只能被消费一次;再次传入时退回拷贝路径,结果仍正确只是慢。
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/layout/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/layout/types.ts"],"names":[],"mappings":"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"}
@@ -112,6 +112,14 @@ export interface LockedSpan {
112
112
  head: boolean;
113
113
  label: string;
114
114
  }
115
+ /**
116
+ * 只折出大约 `maxLines` 行。前若干行和整段折行一致:多折一行再丢掉最后一行,
117
+ * 避免前缀在行中间被切断。段比窗口短时一次折完,`partial` 为假。
118
+ */
119
+ export declare function wrapParagraphCapped(doc: DocumentModel, start: number, end: number, para: ParagraphProps, maxWidth: number, maxLines: number, coverUntil?: number): {
120
+ lines: WrappedLine[];
121
+ partial: boolean;
122
+ };
115
123
  export declare function wrapParagraph(doc: DocumentModel, start: number, end: number, para: ParagraphProps, maxWidth: number): WrappedLine[];
116
124
  export type FlowObstacle = {
117
125
  x: number;
@@ -1 +1 @@
1
- {"version":3,"file":"wrap.d.ts","sourceRoot":"","sources":["../../../src/layout/wrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wrap.d.ts","sourceRoot":"","sources":["../../../src/layout/wrap.ts"],"names":[],"mappings":"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"}
@@ -76,6 +76,15 @@ export declare function isLastTableCell(hit: {
76
76
  col: number;
77
77
  }): boolean;
78
78
  export declare function nextCellIndex(spacers: string, index: number, dir: 1 | -1): number | null;
79
+ /**
80
+ * 删除范围盖住表格起止时扩成整表,避免把表从中间切断。
81
+ * 只看已有切段。范围完全落在表内部时,才拷贝重叠的那一段来找散落的起止标记,
82
+ * 不会为了这次判断去拼整篇字符流。
83
+ */
84
+ export declare function expandRangeOverBlocks(blocks: readonly Block[], start: number, end: number, slice: (from: number, to: number) => string): {
85
+ start: number;
86
+ end: number;
87
+ };
79
88
  export declare function expandRangeOverStructures(spacers: string, start: number, end: number): {
80
89
  start: number;
81
90
  end: number;
@@ -1 +1 @@
1
- {"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../../src/model/blocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"blocks.d.ts","sourceRoot":"","sources":["../../../src/model/blocks.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"invert.d.ts","sourceRoot":"","sources":["../../../src/mutations/invert.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAUL,QAAQ,EACR,YAAY,EAOb,MAAM,SAAS,CAAC;AAgBjB,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,YAAY,IAAI,CAChD,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,KACrC,QAAQ,CAAC;AAEd,uCAAuC;AACvC,MAAM,MAAM,SAAS,GAAG;KAAG,CAAC,IAAI,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC;CAAE,CAAC;AAEhE,eAAO,MAAM,SAAS,EAAE,SAqFvB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAE/E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAQ/E"}
1
+ {"version":3,"file":"invert.d.ts","sourceRoot":"","sources":["../../../src/mutations/invert.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAUL,QAAQ,EACR,YAAY,EAOb,MAAM,SAAS,CAAC;AAgBjB,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,YAAY,IAAI,CAChD,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,KACrC,QAAQ,CAAC;AAEd,uCAAuC;AACvC,MAAM,MAAM,SAAS,GAAG;KAAG,CAAC,IAAI,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC;CAAE,CAAC;AAEhE,eAAO,MAAM,SAAS,EAAE,SAsFvB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAE/E;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAQ/E"}
@@ -1 +1 @@
1
- {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../src/operations/text.ts"],"names":[],"mappings":"AAQA,OAAO,EAAmD,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGnG,OAAO,EAAE,SAAS,EAAoB,MAAM,WAAW,CAAC;AAKxD,OAAO,EAAE,aAAa,EAAiB,MAAM,gBAAgB,CAAC;AA2C9D;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,SAAS,EACnB,QAAQ,GAAE,aAA0B,GACnC,SAAS,CAAC,MAAM,CAAC,CAgBnB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,CAkClF;AAED,0CAA0C;AAC1C,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CA6ChE;AAED,8BAA8B;AAC9B,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAYxE;AAED,MAAM,MAAM,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,GAAG,IAAI,CAAC;AAE5E,gDAAgD;AAChD,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAkC7D;AAED,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAoBjE;AAED,iDAAiD;AACjD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAwDtE"}
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../src/operations/text.ts"],"names":[],"mappings":"AAQA,OAAO,EAAmD,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGnG,OAAO,EAAE,SAAS,EAAoB,MAAM,WAAW,CAAC;AAKxD,OAAO,EAAE,aAAa,EAAiB,MAAM,gBAAgB,CAAC;AA2C9D;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,SAAS,EACnB,QAAQ,GAAE,aAA0B,GACnC,SAAS,CAAC,MAAM,CAAC,CAgBnB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,CAkClF;AAED,0CAA0C;AAC1C,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CA6ChE;AAED,8BAA8B;AAC9B,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAUxE;AAaD,MAAM,MAAM,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,GAAG,IAAI,CAAC;AAE5E,gDAAgD;AAChD,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAkC7D;AAED,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAoBjE;AAED,iDAAiD;AACjD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAwDtE"}
@@ -3,7 +3,7 @@ import { PaintBackend } from './types';
3
3
  /**
4
4
  * 画布左右各比文档宽出这么多:mark 等块的 paddingX 外扩在行首行尾会画到内容区外,
5
5
  * 画布若恰好等宽就会被裁掉。画布整体左移 GUTTER 并平移绘制坐标,文字位置不变;
6
- * .mini-page-wrap 左右各留 10px 可视区(负 margin 抵消),盖住这 5px 外扩。
6
+ * .mini-page-wrap 左右各留 9px 可视区(负 margin 抵消),盖住这 5px 外扩。
7
7
  */
8
8
  export declare const CANVAS_GUTTER = 5;
9
9
  export declare class CanvasPainter implements PaintBackend {
@@ -19,6 +19,7 @@ export declare class CanvasPainter implements PaintBackend {
19
19
  private caretVisible;
20
20
  private caretTrails;
21
21
  private focusMark;
22
+ private focusRounded;
22
23
  private imageCache;
23
24
  private embeds;
24
25
  private embedCache;
@@ -29,6 +30,7 @@ export declare class CanvasPainter implements PaintBackend {
29
30
  private winTop;
30
31
  private winH;
31
32
  private onScroll;
33
+ private viewportListener;
32
34
  /** 上次重画用的像素密度(dpr × 缩放),变了就得整窗重画 */
33
35
  private lastScale;
34
36
  private zoomRaf;
@@ -46,8 +48,15 @@ export declare class CanvasPainter implements PaintBackend {
46
48
  paintSelection(rects: SelRect[]): void;
47
49
  paintCaret(caret: CaretPos | null, visible: boolean, trails?: CaretPos[]): void;
48
50
  paintMarkEffects(): void;
49
- paintFocusMark(mark: CaretPos | null): void;
51
+ paintFocusMark(mark: CaretPos | null, rounded?: boolean): void;
52
+ private focusGap;
53
+ private selectionHeight;
50
54
  destroy(): void;
55
+ visibleBand(): {
56
+ top: number;
57
+ bottom: number;
58
+ } | null;
59
+ setViewportListener(listener: (() => boolean) | null): void;
51
60
  /** 可视区在文档坐标里的 [top, bottom]。找不到容器时就当整篇可见。 */
52
61
  private visibleRange;
53
62
  /** 按当前可视区决定画布窗口位置。返回是否挪了窗口。 */
@@ -65,7 +74,7 @@ export declare class CanvasPainter implements PaintBackend {
65
74
  private fillSelectionRect;
66
75
  private paintVBlock;
67
76
  private strokeVBlockOutline;
68
- /** 与 `.mini-focus-mark` 同形:2px 竖线 + 贴着行顶、整颗落在行内的 6px 圆点 */
77
+ /** 与 `.mini-focus-mark` 同形:默认 2px 竖线 + 贴着行顶、整颗落在行内的 6px 圆点 */
69
78
  private drawFocusMark;
70
79
  private drawCaret;
71
80
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"canvasPainter.d.ts","sourceRoot":"","sources":["../../../src/paint/canvasPainter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAqB,OAAO,EAAkB,MAAM,iBAAiB,CAAC;AAGlG,OAAO,EAAE,YAAY,EAAgB,MAAM,SAAS,CAAC;AAErD;;;;GAIG;AACH,eAAO,MAAM,aAAa,IAAI,CAAC;AAc/B,qBAAa,aAAc,YAAW,YAAY;IAChD,OAAO,CAAC,IAAI,CAA4B;IACxC,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,GAAG,CAAyC;IACpD,OAAO,CAAC,SAAS,CAAyC;IAC1D,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,UAAU,CAAuC;IACzD,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,UAAU,CAAuB;IACzC,+BAA+B;IAC/B,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,QAAQ,CAA+B;IAC/C,oCAAoC;IACpC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,aAAa,CAAK;IAC1B,yCAAyC;IACzC,OAAO,CAAC,gBAAgB,CAYtB;IAEF,KAAK,CAAC,IAAI,EAAE,WAAW;IA2BvB,8BAA8B;IAC9B,OAAO,CAAC,UAAU;IAMlB,UAAU,IAAI,WAAW;IAKzB,QAAQ,CAAC,MAAM,EAAE,SAAS;IAe1B,aAAa,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE;IAqBpC,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAqBlC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE;IAK/B,UAAU,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAE,QAAQ,EAAO;IAO5E,gBAAgB;IAOhB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAOpC,OAAO;IAuBP,6CAA6C;IAC7C,OAAO,CAAC,YAAY;IAcpB,+BAA+B;IAC/B,OAAO,CAAC,WAAW;IAuBnB,mCAAmC;IACnC,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,MAAM;IAgCd;;;OAGG;IACH,OAAO,CAAC,WAAW;IA2CnB,OAAO,CAAC,aAAa;IAgFrB,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,iBAAiB;IA0BzB,OAAO,CAAC,WAAW;IAkFnB,OAAO,CAAC,mBAAmB;IAY3B,2DAA2D;IAC3D,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,SAAS;IAsCjB;;;OAGG;IACH,OAAO,CAAC,WAAW;IA8BnB,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,OAAO;CAYhB"}
1
+ {"version":3,"file":"canvasPainter.d.ts","sourceRoot":"","sources":["../../../src/paint/canvasPainter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAqB,OAAO,EAAkB,MAAM,iBAAiB,CAAC;AAIlG,OAAO,EAAE,YAAY,EAAgB,MAAM,SAAS,CAAC;AAErD;;;;GAIG;AACH,eAAO,MAAM,aAAa,IAAI,CAAC;AAc/B,qBAAa,aAAc,YAAW,YAAY;IAChD,OAAO,CAAC,IAAI,CAA4B;IACxC,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,GAAG,CAAyC;IACpD,OAAO,CAAC,SAAS,CAAyC;IAC1D,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAuC;IACzD,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,UAAU,CAAuB;IACzC,+BAA+B;IAC/B,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,gBAAgB,CAAgC;IACxD,oCAAoC;IACpC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,aAAa,CAAK;IAC1B,yCAAyC;IACzC,OAAO,CAAC,gBAAgB,CAYtB;IAEF,KAAK,CAAC,IAAI,EAAE,WAAW;IA2BvB,8BAA8B;IAC9B,OAAO,CAAC,UAAU;IAMlB,UAAU,IAAI,WAAW;IAKzB,QAAQ,CAAC,MAAM,EAAE,SAAS;IAe1B,aAAa,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE;IAqBpC,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAsBlC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE;IAK/B,UAAU,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAE,QAAQ,EAAO;IAO5E,gBAAgB;IAOhB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,OAAO,UAAQ;IASrD,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,eAAe;IAKvB,OAAO;IAuBP,WAAW,IAAI;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAKrD,mBAAmB,CAAC,QAAQ,EAAE,CAAC,MAAM,OAAO,CAAC,GAAG,IAAI;IAIpD,6CAA6C;IAC7C,OAAO,CAAC,YAAY;IAcpB,+BAA+B;IAC/B,OAAO,CAAC,WAAW;IAuBnB,mCAAmC;IACnC,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,MAAM;IAgCd;;;OAGG;IACH,OAAO,CAAC,WAAW;IA2CnB,OAAO,CAAC,aAAa;IAgFrB,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,iBAAiB;IA0BzB,OAAO,CAAC,WAAW;IAuFnB,OAAO,CAAC,mBAAmB;IAY3B,8DAA8D;IAC9D,OAAO,CAAC,aAAa;IAuBrB,OAAO,CAAC,SAAS;IAsCjB;;;OAGG;IACH,OAAO,CAAC,WAAW;IA8BnB,OAAO,CAAC,QAAQ;IAahB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,OAAO;CAYhB"}
@@ -0,0 +1,44 @@
1
+ import type { CaretPos } from '../layout/types';
2
+ /** Align the focus stroke's center with the selected border's center. */
3
+ export declare function alignFocusMark(mark: CaretPos, box: {
4
+ x: number;
5
+ w: number;
6
+ }, side: 'left' | 'right', width: number, borderWidth?: number): CaretPos;
7
+ /** Keep the selected mark's focus line away from the ends of its border cutout. */
8
+ export declare function focusMarkWithGap(mark: CaretPos, selectionHeight: number, gap: number): CaretPos;
9
+ export declare function focusNotch(mark: CaretPos, selectionHeight: number, gap: number, box: {
10
+ x: number;
11
+ y: number;
12
+ w: number;
13
+ h: number;
14
+ }, lineWidth: number): {
15
+ x: number;
16
+ y: number;
17
+ w: number;
18
+ h: number;
19
+ } | null;
20
+ export declare function splitNotchLines<T extends {
21
+ x1: number;
22
+ y1: number;
23
+ x2: number;
24
+ y2: number;
25
+ }>(lines: readonly T[], notch: {
26
+ x: number;
27
+ y: number;
28
+ w: number;
29
+ h: number;
30
+ }): T[];
31
+ /** Cut the corner arcs too: otherwise their round ends touch the focus line. */
32
+ export declare function splitNotchArcs<T extends {
33
+ cx: number;
34
+ cy: number;
35
+ r: number;
36
+ a0: number;
37
+ a1: number;
38
+ }>(arcs: readonly T[], notch: {
39
+ x: number;
40
+ y: number;
41
+ w: number;
42
+ h: number;
43
+ }): T[];
44
+ //# sourceMappingURL=focusNotch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focusNotch.d.ts","sourceRoot":"","sources":["../../../src/paint/focusNotch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,yEAAyE;AACzE,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,SAAI,GAAG,QAAQ,CAG9I;AAED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ,CAI/F;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,QAAQ,EACd,eAAe,EAAE,MAAM,EACvB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EACnD,SAAS,EAAE,MAAM,GAChB;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAYvD;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,CAAC,EAAE,CAa7K;AAED,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,CAAC,EAAE,CA6BtL"}