@dxos/ui-editor 0.8.4-main.bc674ce → 0.8.4-main.bcb3aa67d6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/dist/lib/browser/index.mjs +711 -521
  2. package/dist/lib/browser/index.mjs.map +4 -4
  3. package/dist/lib/browser/meta.json +1 -1
  4. package/dist/lib/node-esm/index.mjs +711 -521
  5. package/dist/lib/node-esm/index.mjs.map +4 -4
  6. package/dist/lib/node-esm/meta.json +1 -1
  7. package/dist/types/src/defaults.d.ts +3 -10
  8. package/dist/types/src/defaults.d.ts.map +1 -1
  9. package/dist/types/src/extensions/auto-scroll.d.ts +6 -0
  10. package/dist/types/src/extensions/auto-scroll.d.ts.map +1 -0
  11. package/dist/types/src/extensions/automerge/automerge.d.ts.map +1 -1
  12. package/dist/types/src/extensions/factories.d.ts.map +1 -1
  13. package/dist/types/src/extensions/folding.d.ts.map +1 -1
  14. package/dist/types/src/extensions/index.d.ts +3 -2
  15. package/dist/types/src/extensions/index.d.ts.map +1 -1
  16. package/dist/types/src/extensions/markdown/bundle.d.ts +3 -0
  17. package/dist/types/src/extensions/markdown/bundle.d.ts.map +1 -1
  18. package/dist/types/src/extensions/markdown/decorate.d.ts.map +1 -1
  19. package/dist/types/src/extensions/markdown/highlight.d.ts.map +1 -1
  20. package/dist/types/src/extensions/markdown/link.d.ts.map +1 -1
  21. package/dist/types/src/extensions/markdown/styles.d.ts.map +1 -1
  22. package/dist/types/src/extensions/preview/preview.d.ts +3 -1
  23. package/dist/types/src/extensions/preview/preview.d.ts.map +1 -1
  24. package/dist/types/src/extensions/scroll-past-end.d.ts +3 -0
  25. package/dist/types/src/extensions/scroll-past-end.d.ts.map +1 -0
  26. package/dist/types/src/extensions/scroller.d.ts +66 -0
  27. package/dist/types/src/extensions/scroller.d.ts.map +1 -0
  28. package/dist/types/src/extensions/tags/streamer.d.ts +1 -1
  29. package/dist/types/src/styles/index.d.ts +0 -2
  30. package/dist/types/src/styles/index.d.ts.map +1 -1
  31. package/dist/types/src/styles/theme.d.ts +15 -0
  32. package/dist/types/src/styles/theme.d.ts.map +1 -1
  33. package/dist/types/src/util/cursor.d.ts +1 -1
  34. package/dist/types/src/util/cursor.d.ts.map +1 -1
  35. package/dist/types/tsconfig.tsbuildinfo +1 -1
  36. package/package.json +32 -32
  37. package/src/defaults.ts +19 -21
  38. package/src/extensions/annotations.ts +1 -1
  39. package/src/extensions/auto-scroll.ts +129 -0
  40. package/src/extensions/automerge/automerge.test.tsx +2 -2
  41. package/src/extensions/automerge/automerge.ts +6 -5
  42. package/src/extensions/blocks.ts +5 -5
  43. package/src/extensions/comments.ts +5 -5
  44. package/src/extensions/dnd.ts +2 -2
  45. package/src/extensions/factories.ts +7 -8
  46. package/src/extensions/folding.ts +3 -20
  47. package/src/extensions/index.ts +3 -2
  48. package/src/extensions/markdown/bundle.ts +23 -9
  49. package/src/extensions/markdown/decorate.ts +15 -11
  50. package/src/extensions/markdown/highlight.ts +15 -7
  51. package/src/extensions/markdown/link.ts +27 -33
  52. package/src/extensions/markdown/parser.test.ts +0 -1
  53. package/src/extensions/markdown/styles.ts +36 -9
  54. package/src/extensions/markdown/table.ts +24 -2
  55. package/src/extensions/outliner/outliner.ts +3 -3
  56. package/src/extensions/preview/preview.ts +62 -15
  57. package/src/extensions/scroll-past-end.ts +32 -0
  58. package/src/extensions/scroller.ts +233 -0
  59. package/src/extensions/selection.ts +1 -1
  60. package/src/extensions/tags/streamer.ts +2 -2
  61. package/src/extensions/tags/xml-tags.ts +7 -4
  62. package/src/styles/index.ts +0 -2
  63. package/src/styles/theme.ts +116 -34
  64. package/src/util/cursor.ts +1 -1
  65. package/dist/types/src/extensions/autoscroll.d.ts +0 -20
  66. package/dist/types/src/extensions/autoscroll.d.ts.map +0 -1
  67. package/dist/types/src/extensions/scrolling.d.ts +0 -78
  68. package/dist/types/src/extensions/scrolling.d.ts.map +0 -1
  69. package/dist/types/src/styles/markdown.d.ts +0 -8
  70. package/dist/types/src/styles/markdown.d.ts.map +0 -1
  71. package/dist/types/src/styles/tokens.d.ts +0 -3
  72. package/dist/types/src/styles/tokens.d.ts.map +0 -1
  73. package/src/extensions/autoscroll.ts +0 -165
  74. package/src/extensions/scrolling.ts +0 -189
  75. package/src/styles/markdown.ts +0 -26
  76. package/src/styles/tokens.ts +0 -17
@@ -0,0 +1,66 @@
1
+ import { EditorView } from '@codemirror/view';
2
+ /**
3
+ * Parameters for the scroll to line effect.
4
+ */
5
+ export type ScrollToProps = {
6
+ /**
7
+ * Zero-based line number; -1 for end of document.
8
+ * NOTE: view.state.doc.lineAt() uses 1-based line numbers.
9
+ */
10
+ line: number;
11
+ /**
12
+ * Additional offset from the target line in pixels.
13
+ * Positive values scroll past the line, negative values stop before it.
14
+ * @default 0
15
+ */
16
+ offset?: number;
17
+ /**
18
+ * Position of the target line in the viewport.
19
+ * - 'start': Line appears at the start (top) of the screen
20
+ * - 'end': Line appears at the end (bottom) of the screen
21
+ * @default 'start'
22
+ */
23
+ position?: 'start' | 'end';
24
+ /**
25
+ * Whether to use smooth scrolling.
26
+ * @default 'instant'
27
+ */
28
+ behavior?: ScrollBehavior;
29
+ };
30
+ /** Scroll to a specific line. */
31
+ export declare const scrollerLineEffect: import("@codemirror/state").StateEffectType<ScrollToProps>;
32
+ /** Start/stop crawling the end of the document. */
33
+ export declare const scrollerCrawlEffect: import("@codemirror/state").StateEffectType<boolean>;
34
+ /**
35
+ * Helper function to scroll to a specific line.
36
+ * This is a convenience function that can be used directly with an EditorView.
37
+ */
38
+ export declare const scrollToLine: (view: EditorView, options: ScrollToProps) => void;
39
+ export type ScrollerOptions = {
40
+ /** Threshold in px to trigger scroll from bottom. */
41
+ overScroll?: number;
42
+ };
43
+ /**
44
+ * Extension that provides smooth scrolling to specific lines in the editor.
45
+ */
46
+ export declare const scroller: ({ overScroll }?: ScrollerOptions) => import("@codemirror/state").Extension[];
47
+ /**
48
+ * Creates a smooth crawler that follows the live bottom of a CodeMirror 6 EditorView.
49
+ *
50
+ * Each animation frame the step is:
51
+ * step = clamp(|delta| * k, minStep, maxStep) -- but never more than |delta|
52
+ *
53
+ * Capping at |delta| is critical: it prevents overshoot, which would otherwise cause
54
+ * oscillation when the proportional step (or minStep) exceeds the remaining distance.
55
+ * The crawler settles exactly at the target with no bounce.
56
+ *
57
+ * @param k Fraction of remaining distance moved each frame (0 < k < 1).
58
+ * @param minStep Min step size in px; prevents stalling on large distances.
59
+ * @param maxStep Max step size in px.
60
+ * @param targetDelta Snap-to-target threshold in px.
61
+ */
62
+ export declare function createCrawler(view: EditorView, k?: number, maxStep?: number, targetDelta?: number): {
63
+ scroll: () => void;
64
+ cancel: () => void;
65
+ };
66
+ //# sourceMappingURL=scroller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scroller.d.ts","sourceRoot":"","sources":["../../../../src/extensions/scroller.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAc,MAAM,kBAAkB,CAAC;AAI1D;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IAE3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B,CAAC;AAEF,iCAAiC;AACjC,eAAO,MAAM,kBAAkB,4DAAsC,CAAC;AAEtE,mDAAmD;AACnD,eAAO,MAAM,mBAAmB,sDAAgC,CAAC;AAEjE;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,UAAU,EAAE,SAAS,aAAa,SAIpE,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,qDAAqD;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,GAAI,iBAAoB,eAAoB,4CA+GhE,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,SAAM,EAAE,OAAO,SAAI,EAAE,WAAW,SAAM;;;EAuCtF"}
@@ -6,7 +6,7 @@ export type StreamerOptions = {
6
6
  };
7
7
  };
8
8
  /**
9
- * Extension that adds a blinking cursor widget at the end of the document.
9
+ * Extension that animates streaming content.
10
10
  */
11
11
  export declare const streamer: (options?: StreamerOptions) => Extension;
12
12
  //# sourceMappingURL=streamer.d.ts.map
@@ -1,4 +1,2 @@
1
- export * from './markdown';
2
1
  export * from './theme';
3
- export * from './tokens';
4
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/styles/index.ts"],"names":[],"mappings":"AAIA,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/styles/index.ts"],"names":[],"mappings":"AAIA,cAAc,SAAS,CAAC"}
@@ -1,4 +1,19 @@
1
1
  import { type Extension } from '@codemirror/state';
2
+ export type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
3
+ export declare const fontBody = "\"Inter Variable\", ui-sans-serif, system-ui, sans-serif";
4
+ export declare const fontMono = "\"JetBrains Mono Variable\", ui-monospace, \"Cascadia Code\", \"Source Code Pro\", monospace";
5
+ export declare const markdownTheme: {
6
+ code: string;
7
+ codeMark: string;
8
+ mark: string;
9
+ heading: (level: HeadingLevel) => {
10
+ className: string;
11
+ color: string;
12
+ lineHeight: string;
13
+ fontSize: string;
14
+ fontWeight: string;
15
+ };
16
+ };
2
17
  /**
3
18
  * Global base theme.
4
19
  *
@@ -1 +1 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../src/styles/theme.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAKnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,eAAO,MAAM,SAAS,WA6NpB,CAAC;AAEH,eAAO,MAAM,YAAY,EAAE,SAMzB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,gBAAe,WAAgB,cAa3D,CAAC"}
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../src/styles/theme.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAKnD,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAqCjD,eAAO,MAAM,QAAQ,6DAA2D,CAAC;AACjF,eAAO,MAAM,QAAQ,iGAA2F,CAAC;AAEjH,eAAO,MAAM,aAAa;;;;qBAIP,YAAY;;;;;;;CAO9B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,eAAO,MAAM,SAAS,WA2PpB,CAAC;AAEH,eAAO,MAAM,YAAY,EAAE,SAMzB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,gBAAe,WAAgB,cAY3D,CAAC"}
@@ -17,7 +17,7 @@ export declare const overlap: (a: Range, b: Range) => boolean;
17
17
  * while positive - with the next one.
18
18
  */
19
19
  export interface CursorConverter {
20
- toCursor(position: number, assoc?: -1 | 1 | undefined): string;
20
+ toCursor(position: number, assoc?: -1 | 1): string;
21
21
  fromCursor(cursor: string): number;
22
22
  }
23
23
  export declare class Cursor {
@@ -1 +1 @@
1
- {"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../../../src/util/cursor.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,UAAU,CAAC;AAItC;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAA2C,CAAC;AAEzF;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,MAAM,CAAC;IAC/D,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CACpC;AAOD,qBAAa,MAAM;IACjB,MAAM,CAAC,QAAQ,CAAC,SAAS,8DAA4C;IAErE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,GAAI,OAAO,WAAW,EAAE,OAAO,KAAK,YAKpE;IAEF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,GAAI,OAAO,WAAW,EAAE,QAAQ,MAAM;;;kBAOtE;CACH"}
1
+ {"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../../../src/util/cursor.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,UAAU,CAAC;AAItC;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAA2C,CAAC;AAEzF;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;IACnD,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CACpC;AAOD,qBAAa,MAAM;IACjB,MAAM,CAAC,QAAQ,CAAC,SAAS,8DAA4C;IAErE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,GAAI,OAAO,WAAW,EAAE,OAAO,KAAK,YAKpE;IAEF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,GAAI,OAAO,WAAW,EAAE,QAAQ,MAAM;;;kBAOtE;CACH"}