@docmentis/udoc-editor 0.8.7 → 0.8.9

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 (133) hide show
  1. package/dist/arrange.d.ts +3 -0
  2. package/dist/arrange.d.ts.map +1 -1
  3. package/dist/arrange.js +10 -12
  4. package/dist/arrange.js.map +1 -1
  5. package/dist/components/CropOverlay.d.ts +27 -0
  6. package/dist/components/CropOverlay.d.ts.map +1 -0
  7. package/dist/components/CropOverlay.js +126 -0
  8. package/dist/components/CropOverlay.js.map +1 -0
  9. package/dist/components/ImageSizeModal.d.ts +23 -0
  10. package/dist/components/ImageSizeModal.d.ts.map +1 -0
  11. package/dist/components/ImageSizeModal.js +189 -0
  12. package/dist/components/ImageSizeModal.js.map +1 -0
  13. package/dist/components/NewSlideModal.d.ts +7 -2
  14. package/dist/components/NewSlideModal.d.ts.map +1 -1
  15. package/dist/components/NewSlideModal.js +10 -3
  16. package/dist/components/NewSlideModal.js.map +1 -1
  17. package/dist/crop-box.d.ts +33 -0
  18. package/dist/crop-box.d.ts.map +1 -0
  19. package/dist/crop-box.js +107 -0
  20. package/dist/crop-box.js.map +1 -0
  21. package/dist/crop.d.ts +28 -0
  22. package/dist/crop.d.ts.map +1 -0
  23. package/dist/crop.js +256 -0
  24. package/dist/crop.js.map +1 -0
  25. package/dist/edit-client.d.ts +0 -6
  26. package/dist/edit-client.d.ts.map +1 -1
  27. package/dist/edit-client.js +0 -8
  28. package/dist/edit-client.js.map +1 -1
  29. package/dist/edit-mode.d.ts +0 -2
  30. package/dist/edit-mode.d.ts.map +1 -1
  31. package/dist/edit-mode.js +48 -14
  32. package/dist/edit-mode.js.map +1 -1
  33. package/dist/editor.d.ts +0 -8
  34. package/dist/editor.d.ts.map +1 -1
  35. package/dist/editor.js +0 -10
  36. package/dist/editor.js.map +1 -1
  37. package/dist/i18n/ar.d.ts.map +1 -1
  38. package/dist/i18n/ar.js +15 -1
  39. package/dist/i18n/ar.js.map +1 -1
  40. package/dist/i18n/de.d.ts.map +1 -1
  41. package/dist/i18n/de.js +15 -1
  42. package/dist/i18n/de.js.map +1 -1
  43. package/dist/i18n/en.d.ts.map +1 -1
  44. package/dist/i18n/en.js +15 -1
  45. package/dist/i18n/en.js.map +1 -1
  46. package/dist/i18n/es.d.ts.map +1 -1
  47. package/dist/i18n/es.js +15 -1
  48. package/dist/i18n/es.js.map +1 -1
  49. package/dist/i18n/fr.d.ts.map +1 -1
  50. package/dist/i18n/fr.js +15 -1
  51. package/dist/i18n/fr.js.map +1 -1
  52. package/dist/i18n/ja.d.ts.map +1 -1
  53. package/dist/i18n/ja.js +15 -1
  54. package/dist/i18n/ja.js.map +1 -1
  55. package/dist/i18n/ko.d.ts.map +1 -1
  56. package/dist/i18n/ko.js +15 -1
  57. package/dist/i18n/ko.js.map +1 -1
  58. package/dist/i18n/messages.d.ts +28 -2
  59. package/dist/i18n/messages.d.ts.map +1 -1
  60. package/dist/i18n/pt-BR.d.ts.map +1 -1
  61. package/dist/i18n/pt-BR.js +15 -1
  62. package/dist/i18n/pt-BR.js.map +1 -1
  63. package/dist/i18n/ru.d.ts.map +1 -1
  64. package/dist/i18n/ru.js +15 -1
  65. package/dist/i18n/ru.js.map +1 -1
  66. package/dist/i18n/zh-CN.d.ts.map +1 -1
  67. package/dist/i18n/zh-CN.js +15 -1
  68. package/dist/i18n/zh-CN.js.map +1 -1
  69. package/dist/i18n/zh-TW.d.ts.map +1 -1
  70. package/dist/i18n/zh-TW.js +15 -1
  71. package/dist/i18n/zh-TW.js.map +1 -1
  72. package/dist/icons.d.ts +10 -2
  73. package/dist/icons.d.ts.map +1 -1
  74. package/dist/icons.js +10 -2
  75. package/dist/icons.js.map +1 -1
  76. package/dist/image.d.ts +39 -0
  77. package/dist/image.d.ts.map +1 -0
  78. package/dist/image.js +203 -0
  79. package/dist/image.js.map +1 -0
  80. package/dist/insert.d.ts +3 -3
  81. package/dist/insert.d.ts.map +1 -1
  82. package/dist/insert.js +17 -8
  83. package/dist/insert.js.map +1 -1
  84. package/dist/markup.d.ts +23 -0
  85. package/dist/markup.d.ts.map +1 -0
  86. package/dist/markup.js +100 -0
  87. package/dist/markup.js.map +1 -0
  88. package/dist/menu-action.d.ts +6 -1
  89. package/dist/menu-action.d.ts.map +1 -1
  90. package/dist/menu-action.js +4 -1
  91. package/dist/menu-action.js.map +1 -1
  92. package/dist/new-slide.d.ts +1 -2
  93. package/dist/new-slide.d.ts.map +1 -1
  94. package/dist/new-slide.js +9 -5
  95. package/dist/new-slide.js.map +1 -1
  96. package/dist/paint.d.ts +5 -1
  97. package/dist/paint.d.ts.map +1 -1
  98. package/dist/paint.js +27 -16
  99. package/dist/paint.js.map +1 -1
  100. package/dist/ruler.d.ts +8 -1
  101. package/dist/ruler.d.ts.map +1 -1
  102. package/dist/ruler.js +16 -1
  103. package/dist/ruler.js.map +1 -1
  104. package/dist/state.d.ts +25 -10
  105. package/dist/state.d.ts.map +1 -1
  106. package/dist/state.js +3 -1
  107. package/dist/state.js.map +1 -1
  108. package/dist/styles.d.ts.map +1 -1
  109. package/dist/styles.js +149 -2
  110. package/dist/styles.js.map +1 -1
  111. package/dist/tabs.d.ts +1 -1
  112. package/dist/tabs.d.ts.map +1 -1
  113. package/dist/tabs.js +72 -19
  114. package/dist/tabs.js.map +1 -1
  115. package/dist/text-format.js +7 -7
  116. package/dist/text-format.js.map +1 -1
  117. package/dist/tools.d.ts +3 -0
  118. package/dist/tools.d.ts.map +1 -1
  119. package/dist/tools.js +4 -2
  120. package/dist/tools.js.map +1 -1
  121. package/dist/version.d.ts +1 -1
  122. package/dist/version.js +1 -1
  123. package/dist/worker/handlers.d.ts.map +1 -1
  124. package/dist/worker/handlers.js +0 -9
  125. package/dist/worker/handlers.js.map +1 -1
  126. package/dist/worker/protocol.d.ts +1 -12
  127. package/dist/worker/protocol.d.ts.map +1 -1
  128. package/dist/worker/worker-source.js +1 -1
  129. package/package.json +3 -3
  130. package/dist/formatting-marks.d.ts +0 -23
  131. package/dist/formatting-marks.d.ts.map +0 -1
  132. package/dist/formatting-marks.js +0 -55
  133. package/dist/formatting-marks.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"NewSlideModal.js","sourceRoot":"","sources":["../../src/components/NewSlideModal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NewSlideModal.js","sourceRoot":"","sources":["../../src/components/NewSlideModal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /** The aspect the crop box keeps: none, the page's own, or a preset one —
2
+ * turned to the page's orientation. */
3
+ export type CropAspect = "free" | "original" | "square" | "4:3" | "16:9";
4
+ /** The crop box, as fractions of the page from its top-left corner. */
5
+ export interface CropBox {
6
+ x0: number;
7
+ y0: number;
8
+ x1: number;
9
+ y1: number;
10
+ }
11
+ /** What a press drags: a corner, an edge, or the whole box. */
12
+ export type CropHandle = "n" | "s" | "e" | "w" | "ne" | "nw" | "se" | "sw" | "move";
13
+ /** The whole page. */
14
+ export declare const WHOLE: CropBox;
15
+ /** The width-to-height ratio `aspect` keeps the box to on a page showing at
16
+ * `width` × `height` pixels, or null for none. A preset turns to the page's
17
+ * orientation, as a camera's does. */
18
+ export declare function aspectRatio(aspect: CropAspect, width: number, height: number): number | null;
19
+ /** `box` at a page `width` × `height`, or back to fractions of it. */
20
+ export declare function scaled(box: CropBox, width: number, height: number): CropBox;
21
+ /** The largest box of `ratio` inside `box`, about its centre. */
22
+ export declare function fitRatio(box: CropBox, ratio: number): CropBox;
23
+ /**
24
+ * `from` dragged by `handle` through `dx` × `dy`, all in pixels on a page
25
+ * `width` × `height`: kept inside the page and no narrower than `min`, and to
26
+ * `ratio` where it's set. A corner drags against the corner across from it; an
27
+ * edge against the edge across, the box widening about its middle the other
28
+ * way to keep a ratio.
29
+ */
30
+ export declare function dragged(handle: CropHandle, from: CropBox, dx: number, dy: number, width: number, height: number, min: number, ratio: number | null): CropBox;
31
+ /** Whether `box` keeps the whole page. */
32
+ export declare function wholePage(box: CropBox): boolean;
33
+ //# sourceMappingURL=crop-box.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crop-box.d.ts","sourceRoot":"","sources":["../src/crop-box.ts"],"names":[],"mappings":"AAGA;wCACwC;AACxC,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;AAEzE,uEAAuE;AACvE,MAAM,WAAW,OAAO;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACd;AAED,+DAA+D;AAC/D,MAAM,MAAM,UAAU,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC;AAEpF,sBAAsB;AACtB,eAAO,MAAM,KAAK,EAAE,OAAwC,CAAC;AAa7D;;uCAEuC;AACvC,wBAAgB,WAAW,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW5F;AAED,sEAAsE;AACtE,wBAAgB,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAE3E;AAED,iEAAiE;AACjE,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAQ7D;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CACnB,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,OAAO,EACb,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,IAAI,GACrB,OAAO,CA6CT;AAED,0CAA0C;AAC1C,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAI/C"}
@@ -0,0 +1,107 @@
1
+ /** The whole page. */
2
+ export const WHOLE = { x0: 0, y0: 0, x1: 1, y1: 1 };
3
+ /** How far from the page's edge, as a fraction of it, the box still counts as
4
+ * keeping the whole page. */
5
+ const WHOLE_EPSILON = 1e-4;
6
+ /** The preset aspects, wider than tall. */
7
+ const PRESET_ASPECTS = {
8
+ square: 1,
9
+ "4:3": 4 / 3,
10
+ "16:9": 16 / 9,
11
+ };
12
+ /** The width-to-height ratio `aspect` keeps the box to on a page showing at
13
+ * `width` × `height` pixels, or null for none. A preset turns to the page's
14
+ * orientation, as a camera's does. */
15
+ export function aspectRatio(aspect, width, height) {
16
+ switch (aspect) {
17
+ case "free":
18
+ return null;
19
+ case "original":
20
+ return width / height;
21
+ default: {
22
+ const ratio = PRESET_ASPECTS[aspect];
23
+ return width >= height ? ratio : 1 / ratio;
24
+ }
25
+ }
26
+ }
27
+ /** `box` at a page `width` × `height`, or back to fractions of it. */
28
+ export function scaled(box, width, height) {
29
+ return { x0: box.x0 * width, y0: box.y0 * height, x1: box.x1 * width, y1: box.y1 * height };
30
+ }
31
+ /** The largest box of `ratio` inside `box`, about its centre. */
32
+ export function fitRatio(box, ratio) {
33
+ const cx = (box.x0 + box.x1) / 2;
34
+ const cy = (box.y0 + box.y1) / 2;
35
+ let w = box.x1 - box.x0;
36
+ let h = box.y1 - box.y0;
37
+ if (w / h > ratio)
38
+ w = h * ratio;
39
+ else
40
+ h = w / ratio;
41
+ return { x0: cx - w / 2, y0: cy - h / 2, x1: cx + w / 2, y1: cy + h / 2 };
42
+ }
43
+ /**
44
+ * `from` dragged by `handle` through `dx` × `dy`, all in pixels on a page
45
+ * `width` × `height`: kept inside the page and no narrower than `min`, and to
46
+ * `ratio` where it's set. A corner drags against the corner across from it; an
47
+ * edge against the edge across, the box widening about its middle the other
48
+ * way to keep a ratio.
49
+ */
50
+ export function dragged(handle, from, dx, dy, width, height, min, ratio) {
51
+ const clamp = (v, lo, hi) => Math.min(Math.max(v, lo), Math.max(lo, hi));
52
+ if (handle === "move") {
53
+ const w = from.x1 - from.x0;
54
+ const h = from.y1 - from.y0;
55
+ const x0 = clamp(from.x0 + dx, 0, width - w);
56
+ const y0 = clamp(from.y0 + dy, 0, height - h);
57
+ return { x0, y0, x1: x0 + w, y1: y0 + h };
58
+ }
59
+ const west = handle.includes("w");
60
+ const east = handle.includes("e");
61
+ const north = handle.includes("n");
62
+ const south = handle.includes("s");
63
+ // The edges the handle moves, free.
64
+ const free = {
65
+ x0: west ? clamp(from.x0 + dx, 0, from.x1 - min) : from.x0,
66
+ x1: east ? clamp(from.x1 + dx, from.x0 + min, width) : from.x1,
67
+ y0: north ? clamp(from.y0 + dy, 0, from.y1 - min) : from.y0,
68
+ y1: south ? clamp(from.y1 + dy, from.y0 + min, height) : from.y1,
69
+ };
70
+ if (ratio === null)
71
+ return free;
72
+ const horizontal = west || east;
73
+ const vertical = north || south;
74
+ let w = free.x1 - free.x0;
75
+ let h = free.y1 - free.y0;
76
+ // The edge each axis holds still: the one across from the handle, or, on
77
+ // the axis an edge handle doesn't move, the box's middle.
78
+ const ax = west ? from.x1 : east ? from.x0 : (from.x0 + from.x1) / 2;
79
+ const ay = north ? from.y1 : south ? from.y0 : (from.y0 + from.y1) / 2;
80
+ if (horizontal && vertical) {
81
+ if (w / h > ratio)
82
+ w = h * ratio;
83
+ else
84
+ h = w / ratio;
85
+ }
86
+ else if (horizontal) {
87
+ h = w / ratio;
88
+ }
89
+ else {
90
+ w = h * ratio;
91
+ }
92
+ // The room the page leaves from the held edges, each way.
93
+ const maxW = west ? ax : east ? width - ax : 2 * Math.min(ax, width - ax);
94
+ const maxH = north ? ay : south ? height - ay : 2 * Math.min(ay, height - ay);
95
+ if (w > maxW)
96
+ [w, h] = [maxW, maxW / ratio];
97
+ if (h > maxH)
98
+ [w, h] = [maxH * ratio, maxH];
99
+ const x0 = west ? ax - w : east ? ax : ax - w / 2;
100
+ const y0 = north ? ay - h : south ? ay : ay - h / 2;
101
+ return { x0, y0, x1: x0 + w, y1: y0 + h };
102
+ }
103
+ /** Whether `box` keeps the whole page. */
104
+ export function wholePage(box) {
105
+ return (box.x0 <= WHOLE_EPSILON && box.y0 <= WHOLE_EPSILON && box.x1 >= 1 - WHOLE_EPSILON && box.y1 >= 1 - WHOLE_EPSILON);
106
+ }
107
+ //# sourceMappingURL=crop-box.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crop-box.js","sourceRoot":"","sources":["../src/crop-box.ts"],"names":[],"mappings":"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"}
package/dist/crop.d.ts ADDED
@@ -0,0 +1,28 @@
1
+ import type { CommandDef } from "@docmentis/udoc-ui/internal";
2
+ import type { CropAspect } from "./crop-box.js";
3
+ import type { EditHost } from "./edit-client.js";
4
+ import type { I18n, MessageKey } from "./i18n/index.js";
5
+ /** Crop mode: what the Home tab's crop controls and the keys call. */
6
+ export interface Crop {
7
+ /** Start cropping the current page — a no-op on a doc that isn't an
8
+ * image, or while cropping. */
9
+ start(): Promise<void>;
10
+ /** Crop the page to the box, and end crop mode. */
11
+ apply(): Promise<void>;
12
+ /** End crop mode, the page as it was. */
13
+ cancel(): void;
14
+ /** Take the page's crop away, its whole canvas showing again, and go on
15
+ * cropping it. */
16
+ reset(): Promise<void>;
17
+ /** Keep the box to `aspect`: the largest box of it in the one now. */
18
+ setAspect(aspect: CropAspect): void;
19
+ /** Enter applies and Escape cancels, while cropping. */
20
+ keydown(e: KeyboardEvent): void;
21
+ destroy(): void;
22
+ }
23
+ /** Crop mode over `host`, its words in `i18n`. */
24
+ export declare function createCrop(host: EditHost, i18n: I18n): Crop;
25
+ /** Crop mode's controls on the image Home tab — which, Home being contextual,
26
+ * show while it lasts — over `crop` once edit mode is mounted. */
27
+ export declare function cropCommands(crop: () => Crop | null): Readonly<Record<string, CommandDef<MessageKey>>>;
28
+ //# sourceMappingURL=crop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crop.d.ts","sourceRoot":"","sources":["../src/crop.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAkB,UAAU,EAAqB,MAAM,6BAA6B,CAAC;AAGjG,OAAO,KAAK,EAAE,UAAU,EAAW,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAYxD,sEAAsE;AACtE,MAAM,WAAW,IAAI;IACjB;oCACgC;IAChC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,mDAAmD;IACnD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,yCAAyC;IACzC,MAAM,IAAI,IAAI,CAAC;IACf;uBACmB;IACnB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,sEAAsE;IACtE,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IACpC,wDAAwD;IACxD,OAAO,CAAC,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,OAAO,IAAI,IAAI,CAAC;CACnB;AAuCD,kDAAkD;AAClD,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAoK3D;AAwBD;mEACmE;AACnE,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,IAAI,GAAG,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAmCtG"}
package/dist/crop.js ADDED
@@ -0,0 +1,256 @@
1
+ import { ICON_CHECK, ICON_CLEAR, subscribeSelector } from "@docmentis/udoc-ui/internal";
2
+ import { cropOverlay } from "./components/CropOverlay.js";
3
+ import { aspectRatio, dragged, fitRatio, scaled, WHOLE, wholePage } from "./crop-box.js";
4
+ import { ICON_ASPECT_RATIO, ICON_CROP_RESET } from "./icons.js";
5
+ import { croppedPage, editPage, pagePixels } from "./image.js";
6
+ import { editAction } from "./menu-action.js";
7
+ import { editStateOf, updateEditState } from "./state.js";
8
+ /** The overlay crop mode registers. */
9
+ const OVERLAY_ID = "udoc:image-crop";
10
+ /** The narrowest the box gets, in CSS px on screen. */
11
+ const MIN_BOX_PX = 16;
12
+ /** The pixels the cropped page holds. */
13
+ function shownPixels(session) {
14
+ return pagePixels(session.info);
15
+ }
16
+ /** The ratio the session's aspect keeps the box to, or null for none. */
17
+ function sessionRatio(session) {
18
+ const { width, height } = shownPixels(session);
19
+ return aspectRatio(session.aspect, width, height);
20
+ }
21
+ /** Whether crop mode should end in `s`: the document, its type or the mode
22
+ * changed under it, or its page is gone. */
23
+ function cropEnds(s, page, generation) {
24
+ return (s.status !== "ready" ||
25
+ s.docGeneration !== generation ||
26
+ s.docType !== "image" ||
27
+ s.mode !== "edit" ||
28
+ page >= s.pageCount);
29
+ }
30
+ /** Crop mode over `host`, its words in `i18n`. */
31
+ export function createCrop(host, i18n) {
32
+ const { store, client } = host;
33
+ let session = null;
34
+ /** Mirror the session onto edit mode's state, which the Home tab reads. */
35
+ function publish() {
36
+ updateEditState(store, {
37
+ cropping: session
38
+ ? { page: session.page, aspect: session.aspect, cropped: croppedPage(session.info) }
39
+ : null,
40
+ });
41
+ }
42
+ const overlay = cropOverlay({
43
+ i18n,
44
+ get page() {
45
+ return session?.page ?? -1;
46
+ },
47
+ box: () => session?.box ?? WHOLE,
48
+ label(box) {
49
+ if (!session)
50
+ return "";
51
+ const { width, height } = shownPixels(session);
52
+ return i18n.t("image.cropSize", {
53
+ width: Math.max(1, Math.round((box.x1 - box.x0) * width)),
54
+ height: Math.max(1, Math.round((box.y1 - box.y0) * height)),
55
+ });
56
+ },
57
+ view(view) {
58
+ if (session)
59
+ session.view = view;
60
+ },
61
+ drag(handle, from, dx, dy, keep) {
62
+ if (!session)
63
+ return from;
64
+ const { width, height } = shownPixels(session);
65
+ // The narrowest box, in the page's pixels, from its width on screen.
66
+ const min = session.view ? (MIN_BOX_PX * width) / session.view.width : 1;
67
+ const start = scaled(from, width, height);
68
+ const ratio = sessionRatio(session) ??
69
+ (keep && handle !== "move" ? (start.x1 - start.x0) / (start.y1 - start.y0) : null);
70
+ const box = dragged(handle, start, dx * width, dy * height, width, height, min, ratio);
71
+ session.box = scaled(box, 1 / width, 1 / height);
72
+ return session.box;
73
+ },
74
+ apply: () => void apply(),
75
+ });
76
+ /** Draw the overlay again — a box that changed with no frame painted. */
77
+ function redraw() {
78
+ if (session)
79
+ host.setOverlay(OVERLAY_ID, overlay, { aboveSelection: true });
80
+ }
81
+ function end() {
82
+ if (!session)
83
+ return;
84
+ session.unsubscribe();
85
+ session = null;
86
+ host.removeOverlay(OVERLAY_ID);
87
+ publish();
88
+ }
89
+ async function start() {
90
+ const state = store.getState();
91
+ if (session || state.docType !== "image" || state.status !== "ready")
92
+ return;
93
+ const page = state.pageIndex;
94
+ const info = await client.image.pageInfoByIndex(page);
95
+ if (!info || session)
96
+ return;
97
+ // The selection's handles would sit over the box.
98
+ client.clearSelection();
99
+ const generation = state.docGeneration;
100
+ const unsubs = [
101
+ subscribeSelector(store, (s) => cropEnds(s, page, generation), (ends) => {
102
+ if (ends)
103
+ end();
104
+ }),
105
+ // An undo, a peer's edit: the entry the box is measured in again.
106
+ client.onDocumentChanged(() => {
107
+ void client.image.pageInfoByIndex(page).then((fresh) => {
108
+ if (!session || !fresh)
109
+ return;
110
+ session.info = fresh;
111
+ publish();
112
+ });
113
+ }),
114
+ ];
115
+ session = {
116
+ page,
117
+ info,
118
+ box: WHOLE,
119
+ aspect: "free",
120
+ view: null,
121
+ unsubscribe: () => {
122
+ for (const unsub of unsubs)
123
+ unsub();
124
+ },
125
+ };
126
+ publish();
127
+ redraw();
128
+ }
129
+ async function apply() {
130
+ const cropped = session;
131
+ if (!cropped)
132
+ return;
133
+ const { page, box } = cropped;
134
+ end();
135
+ if (wholePage(box))
136
+ return;
137
+ // In the page's points as it is now, which the box was drawn over; the
138
+ // engine snaps it to the page's pixels.
139
+ const info = await client.image.pageInfoByIndex(page);
140
+ if (!info)
141
+ return;
142
+ const rect = scaled(box, info.size.width, info.size.height);
143
+ await host.commit(() => client.execute(editPage({ cropPage: { id: info.id, rect } })));
144
+ }
145
+ async function reset() {
146
+ const cropped = session;
147
+ if (!cropped || !croppedPage(cropped.info))
148
+ return;
149
+ await host.commit(() => client.execute(editPage({ cropPage: { id: cropped.info.id, rect: null } })));
150
+ const info = await client.image.pageInfoByIndex(cropped.page);
151
+ if (session !== cropped || !info)
152
+ return;
153
+ cropped.info = info;
154
+ cropped.box = WHOLE;
155
+ cropped.aspect = "free";
156
+ publish();
157
+ redraw();
158
+ }
159
+ function setAspect(aspect) {
160
+ if (!session)
161
+ return;
162
+ session.aspect = aspect;
163
+ const ratio = sessionRatio(session);
164
+ if (ratio !== null) {
165
+ const { width, height } = shownPixels(session);
166
+ session.box = scaled(fitRatio(scaled(session.box, width, height), ratio), 1 / width, 1 / height);
167
+ }
168
+ publish();
169
+ redraw();
170
+ }
171
+ return {
172
+ start,
173
+ apply,
174
+ cancel: end,
175
+ reset,
176
+ setAspect,
177
+ keydown(e) {
178
+ // A key in a real field — a dialog's, a panel's — is the field's;
179
+ // the canvas's hidden text input, which edit mode keeps focused,
180
+ // is no field.
181
+ const target = e.target;
182
+ const field = target !== null &&
183
+ !target.classList.contains("udoc-ui__text-input") &&
184
+ (target.tagName === "INPUT" || target.tagName === "SELECT" || target.tagName === "TEXTAREA");
185
+ if (!session || e.defaultPrevented || field)
186
+ return;
187
+ if (e.key === "Enter") {
188
+ e.preventDefault();
189
+ void apply();
190
+ }
191
+ else if (e.key === "Escape") {
192
+ e.preventDefault();
193
+ end();
194
+ }
195
+ },
196
+ destroy: end,
197
+ };
198
+ }
199
+ /** Whether crop mode is on in `c`. */
200
+ function whenCropping(c) {
201
+ return editStateOf(c).cropping !== null;
202
+ }
203
+ /** The aspects the Aspect Ratio menu offers, and what it calls them. */
204
+ const ASPECTS = [
205
+ ["free", "image.free"],
206
+ ["original", "image.original"],
207
+ ["square", "image.square"],
208
+ ["4:3", null],
209
+ ["16:9", null],
210
+ ];
211
+ /** The Aspect Ratio menu: the aspect the box keeps, checked. */
212
+ const ASPECT_MENU = ASPECTS.map(([aspect, label]) => ({
213
+ action: editAction({ kind: "cropAspect", aspect }),
214
+ label: label ?? ["image.ratio", { ratio: aspect }],
215
+ enabledWhen: whenCropping,
216
+ activeWhen: (c) => editStateOf(c).cropping?.aspect === aspect,
217
+ }));
218
+ /** Crop mode's controls on the image Home tab — which, Home being contextual,
219
+ * show while it lasts — over `crop` once edit mode is mounted. */
220
+ export function cropCommands(crop) {
221
+ return {
222
+ cropAspect: {
223
+ id: "cropAspect",
224
+ label: "image.aspectRatio",
225
+ icon: ICON_ASPECT_RATIO,
226
+ group: "crop",
227
+ run: { kind: "menu", menu: ASPECT_MENU },
228
+ enabledWhen: whenCropping,
229
+ },
230
+ cropReset: {
231
+ id: "cropReset",
232
+ label: "image.reset",
233
+ icon: ICON_CROP_RESET,
234
+ group: "crop",
235
+ run: { kind: "action", press: () => void crop()?.reset() },
236
+ enabledWhen: (c) => editStateOf(c).cropping?.cropped === true,
237
+ },
238
+ cropCancel: {
239
+ id: "cropCancel",
240
+ label: "common.cancel",
241
+ icon: ICON_CLEAR,
242
+ group: "cropEnd",
243
+ run: { kind: "action", press: () => crop()?.cancel() },
244
+ enabledWhen: whenCropping,
245
+ },
246
+ cropApply: {
247
+ id: "cropApply",
248
+ label: "image.apply",
249
+ icon: ICON_CHECK,
250
+ group: "cropEnd",
251
+ run: { kind: "action", press: () => void crop()?.apply() },
252
+ enabledWhen: whenCropping,
253
+ },
254
+ };
255
+ }
256
+ //# sourceMappingURL=crop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crop.js","sourceRoot":"","sources":["../src/crop.ts"],"names":[],"mappings":"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"}
@@ -22,12 +22,6 @@ export declare class EditClient {
22
22
  * fire-and-forget.
23
23
  */
24
24
  setPlaceholderPrompts(on: boolean): void;
25
- /**
26
- * Toggle formatting marks — `¶`, a dot per space, a tab's arrow, `↵` — drawn
27
- * over composed text without reflowing it. Sticky across opens in the worker
28
- * like the backdrop. Latest-wins, fire-and-forget.
29
- */
30
- setFormattingMarks(on: boolean): void;
31
25
  /**
32
26
  * Read the current slide's resolved theme color palette — the mapped scheme
33
27
  * slots the color picker shows as "Theme Colors". Resolves to `null` for a
@@ -1 +1 @@
1
- {"version":3,"file":"edit-client.d.ts","sourceRoot":"","sources":["../src/edit-client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC5G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC5G,OAAO,KAAK,EAAe,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE1E,0EAA0E;AAC1E,qBAAa,UAAU;;gBAGP,MAAM,EAAE,YAAY;IAehC;;;;;;OAMG;IACH,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAI1C;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,EAAE,OAAO,GAAG,IAAI;IAIxC;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,EAAE,OAAO,GAAG,IAAI;IAIrC;;;;;OAKG;IACH,YAAY,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAI5C;;;;;;;;;;;OAWG;IACH,mBAAmB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAInD;;;;;;;;OAQG;IACH,qBAAqB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI1C;;;;;;;OAOG;IACH,YAAY,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAIrC;;;;;;;OAOG;IACH,iBAAiB,CACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAWnC;;;;;;OAMG;IACH,KAAK,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAItD;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAM5E;;;;;;;;;;;;OAYG;IACH,sBAAsB,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAI/G;;;;;;OAMG;IACH,mBAAmB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAGvD;AAED,mFAAmF;AACnF,MAAM,WAAW,QAAS,SAAQ,WAAW;IACzC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC7B"}
1
+ {"version":3,"file":"edit-client.d.ts","sourceRoot":"","sources":["../src/edit-client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC5G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC5G,OAAO,KAAK,EAAe,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAE1E,0EAA0E;AAC1E,qBAAa,UAAU;;gBAGP,MAAM,EAAE,YAAY;IAehC;;;;;;OAMG;IACH,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAI1C;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,EAAE,OAAO,GAAG,IAAI;IAIxC;;;;;OAKG;IACH,YAAY,IAAI,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAI5C;;;;;;;;;;;OAWG;IACH,mBAAmB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAInD;;;;;;;;OAQG;IACH,qBAAqB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI1C;;;;;;;OAOG;IACH,YAAY,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAIrC;;;;;;;OAOG;IACH,iBAAiB,CACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACb,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAWnC;;;;;;OAMG;IACH,KAAK,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAItD;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAM5E;;;;;;;;;;;;OAYG;IACH,sBAAsB,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAI/G;;;;;;OAMG;IACH,mBAAmB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAGvD;AAED,mFAAmF;AACnF,MAAM,WAAW,QAAS,SAAQ,WAAW;IACzC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC7B"}
@@ -30,14 +30,6 @@ export class EditClient {
30
30
  setPlaceholderPrompts(on) {
31
31
  this.#post({ type: "setPlaceholderPrompts", on });
32
32
  }
33
- /**
34
- * Toggle formatting marks — `¶`, a dot per space, a tab's arrow, `↵` — drawn
35
- * over composed text without reflowing it. Sticky across opens in the worker
36
- * like the backdrop. Latest-wins, fire-and-forget.
37
- */
38
- setFormattingMarks(on) {
39
- this.#post({ type: "setFormattingMarks", on });
40
- }
41
33
  /**
42
34
  * Read the current slide's resolved theme color palette — the mapped scheme
43
35
  * slots the color picker shows as "Theme Colors". Resolves to `null` for a
@@ -1 +1 @@
1
- {"version":3,"file":"edit-client.js","sourceRoot":"","sources":["../src/edit-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"edit-client.js","sourceRoot":"","sources":["../src/edit-client.ts"],"names":[],"mappings":"AAOA,0EAA0E;AAC1E,MAAM,OAAO,UAAU;IACV,OAAO,CAAe;IAE/B,YAAY,MAAoB;QAC5B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAC1B,CAAC;IAED,QAAQ,CACJ,OAAoB,EACpB,OAAoF;QAEpF,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAI,OAAO,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,OAAoB;QACtB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,OAAgB;QAC/B,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAW;QAC7B,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;;;;;OAKG;IACH,YAAY;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,mBAAmB;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;;OAQG;IACH,qBAAqB;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;OAOG;IACH,YAAY;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;OAOG;IACH,iBAAiB,CACb,MAAc,EACd,IAAa,EACb,MAAe,EACf,IAAY,EACZ,IAAY;QAEZ,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,IAAI,EAAE,mBAAmB;YACzB,MAAM;YACN,IAAI;YACJ,MAAM;YACN,IAAI;YACJ,IAAI;SACP,CAAC,CAAC;IACP,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,QAAsB;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;IACjF,CAAC;IAED;;;;;;OAMG;IACH,WAAW,CAAC,KAAiB,EAAE,WAAmB;QAC9C,uEAAuE;QACvE,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACtG,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,sBAAsB,CAAC,QAAiB,EAAE,KAAa,EAAE,CAAS,EAAE,CAAS;QACzE,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACpF,CAAC;IAED;;;;;;OAMG;IACH,mBAAmB;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;IAC1D,CAAC;CACJ"}
@@ -3,8 +3,6 @@ import type { UDocEditorOptions } from "./editor.js";
3
3
  import type { EditorMode } from "./mode.js";
4
4
  /** Edit mode: the shell's extension, and the calls `UDocEditor` makes of it once mounted. */
5
5
  export interface EditMode extends UIExtension {
6
- /** Show or hide formatting marks; see `UDocEditor.setShowFormattingMarks`. */
7
- setShowFormattingMarks(visible: boolean): void;
8
6
  /** Show or hide the page ruler; see `UDocEditor.setShowRuler`. */
9
7
  setShowRuler(visible: boolean): void;
10
8
  /** The mode the editor is in; see `UDocEditor.mode`. */
@@ -1 +1 @@
1
- {"version":3,"file":"edit-mode.d.ts","sourceRoot":"","sources":["../src/edit-mode.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAW,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAsBrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAS5C,6FAA6F;AAC7F,MAAM,WAAW,QAAS,SAAQ,WAAW;IACzC,8EAA8E;IAC9E,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/C,kEAAkE;IAClE,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,wDAAwD;IACxD,WAAW,IAAI,UAAU,CAAC;IAC1B,kDAAkD;IAClD,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAChC,uEAAuE;IACvE,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AAyGD,4CAA4C;AAC5C,wBAAgB,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,QAAQ,CAsG7D"}
1
+ {"version":3,"file":"edit-mode.d.ts","sourceRoot":"","sources":["../src/edit-mode.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAW,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAoBrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAS5C,6FAA6F;AAC7F,MAAM,WAAW,QAAS,SAAQ,WAAW;IACzC,kEAAkE;IAClE,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,wDAAwD;IACxD,WAAW,IAAI,UAAU,CAAC;IAC1B,kDAAkD;IAClD,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IAChC,uEAAuE;IACvE,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AA8ID,4CAA4C;AAC5C,wBAAgB,QAAQ,CAAC,OAAO,EAAE,iBAAiB,GAAG,QAAQ,CA2G7D"}