@docmentis/udoc-editor 0.8.8 → 0.8.10

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 (138) hide show
  1. package/dist/arrange.d.ts +10 -20
  2. package/dist/arrange.d.ts.map +1 -1
  3. package/dist/arrange.js +50 -79
  4. package/dist/arrange.js.map +1 -1
  5. package/dist/commands.d.ts.map +1 -1
  6. package/dist/commands.js +21 -30
  7. package/dist/commands.js.map +1 -1
  8. package/dist/components/ImageSizeModal.js +1 -1
  9. package/dist/components/ImageSizeModal.js.map +1 -1
  10. package/dist/components/NewSlideModal.d.ts +4 -4
  11. package/dist/components/NewSlideModal.d.ts.map +1 -1
  12. package/dist/components/NewSlideModal.js +1 -1
  13. package/dist/components/NewSlideModal.js.map +1 -1
  14. package/dist/components/TextControls.d.ts +11 -0
  15. package/dist/components/TextControls.d.ts.map +1 -1
  16. package/dist/components/TextControls.js +57 -2
  17. package/dist/components/TextControls.js.map +1 -1
  18. package/dist/crop.d.ts +3 -3
  19. package/dist/crop.d.ts.map +1 -1
  20. package/dist/crop.js +3 -7
  21. package/dist/crop.js.map +1 -1
  22. package/dist/edit-client.d.ts +15 -15
  23. package/dist/edit-client.d.ts.map +1 -1
  24. package/dist/edit-client.js +17 -17
  25. package/dist/edit-client.js.map +1 -1
  26. package/dist/edit-mode.d.ts +0 -2
  27. package/dist/edit-mode.d.ts.map +1 -1
  28. package/dist/edit-mode.js +18 -15
  29. package/dist/edit-mode.js.map +1 -1
  30. package/dist/editor.d.ts +0 -8
  31. package/dist/editor.d.ts.map +1 -1
  32. package/dist/editor.js +0 -10
  33. package/dist/editor.js.map +1 -1
  34. package/dist/i18n/ar.d.ts.map +1 -1
  35. package/dist/i18n/ar.js +215 -4
  36. package/dist/i18n/ar.js.map +1 -1
  37. package/dist/i18n/de.d.ts.map +1 -1
  38. package/dist/i18n/de.js +215 -4
  39. package/dist/i18n/de.js.map +1 -1
  40. package/dist/i18n/en.d.ts.map +1 -1
  41. package/dist/i18n/en.js +215 -4
  42. package/dist/i18n/en.js.map +1 -1
  43. package/dist/i18n/es.d.ts.map +1 -1
  44. package/dist/i18n/es.js +215 -4
  45. package/dist/i18n/es.js.map +1 -1
  46. package/dist/i18n/fr.d.ts.map +1 -1
  47. package/dist/i18n/fr.js +215 -4
  48. package/dist/i18n/fr.js.map +1 -1
  49. package/dist/i18n/ja.d.ts.map +1 -1
  50. package/dist/i18n/ja.js +215 -4
  51. package/dist/i18n/ja.js.map +1 -1
  52. package/dist/i18n/ko.d.ts.map +1 -1
  53. package/dist/i18n/ko.js +215 -4
  54. package/dist/i18n/ko.js.map +1 -1
  55. package/dist/i18n/messages.d.ts +426 -8
  56. package/dist/i18n/messages.d.ts.map +1 -1
  57. package/dist/i18n/pt-BR.d.ts.map +1 -1
  58. package/dist/i18n/pt-BR.js +215 -4
  59. package/dist/i18n/pt-BR.js.map +1 -1
  60. package/dist/i18n/ru.d.ts.map +1 -1
  61. package/dist/i18n/ru.js +215 -4
  62. package/dist/i18n/ru.js.map +1 -1
  63. package/dist/i18n/zh-CN.d.ts.map +1 -1
  64. package/dist/i18n/zh-CN.js +215 -4
  65. package/dist/i18n/zh-CN.js.map +1 -1
  66. package/dist/i18n/zh-TW.d.ts.map +1 -1
  67. package/dist/i18n/zh-TW.js +215 -4
  68. package/dist/i18n/zh-TW.js.map +1 -1
  69. package/dist/icons.d.ts +6 -4
  70. package/dist/icons.d.ts.map +1 -1
  71. package/dist/icons.js +6 -4
  72. package/dist/icons.js.map +1 -1
  73. package/dist/image.d.ts +4 -3
  74. package/dist/image.d.ts.map +1 -1
  75. package/dist/image.js +4 -11
  76. package/dist/image.js.map +1 -1
  77. package/dist/insert.d.ts +5 -3
  78. package/dist/insert.d.ts.map +1 -1
  79. package/dist/insert.js +70 -20
  80. package/dist/insert.js.map +1 -1
  81. package/dist/markup.d.ts +7 -5
  82. package/dist/markup.d.ts.map +1 -1
  83. package/dist/markup.js +11 -16
  84. package/dist/markup.js.map +1 -1
  85. package/dist/menu-action.d.ts +1 -5
  86. package/dist/menu-action.d.ts.map +1 -1
  87. package/dist/menu-action.js +0 -6
  88. package/dist/menu-action.js.map +1 -1
  89. package/dist/new-slide.d.ts +3 -5
  90. package/dist/new-slide.d.ts.map +1 -1
  91. package/dist/new-slide.js +10 -13
  92. package/dist/new-slide.js.map +1 -1
  93. package/dist/ruler.d.ts +8 -1
  94. package/dist/ruler.d.ts.map +1 -1
  95. package/dist/ruler.js +25 -8
  96. package/dist/ruler.js.map +1 -1
  97. package/dist/shape-gallery.d.ts +58 -0
  98. package/dist/shape-gallery.d.ts.map +1 -0
  99. package/dist/shape-gallery.js +277 -0
  100. package/dist/shape-gallery.js.map +1 -0
  101. package/dist/shape-icons.d.ts +4 -0
  102. package/dist/shape-icons.d.ts.map +1 -0
  103. package/dist/shape-icons.js +195 -0
  104. package/dist/shape-icons.js.map +1 -0
  105. package/dist/slide-shape.d.ts +13 -0
  106. package/dist/slide-shape.d.ts.map +1 -0
  107. package/dist/slide-shape.js +96 -0
  108. package/dist/slide-shape.js.map +1 -0
  109. package/dist/state.d.ts +9 -10
  110. package/dist/state.d.ts.map +1 -1
  111. package/dist/state.js +1 -1
  112. package/dist/state.js.map +1 -1
  113. package/dist/styles.d.ts.map +1 -1
  114. package/dist/styles.js +17 -1
  115. package/dist/styles.js.map +1 -1
  116. package/dist/tabs.d.ts +1 -1
  117. package/dist/tabs.d.ts.map +1 -1
  118. package/dist/tabs.js +156 -136
  119. package/dist/tabs.js.map +1 -1
  120. package/dist/text-format.d.ts +8 -1
  121. package/dist/text-format.d.ts.map +1 -1
  122. package/dist/text-format.js +36 -0
  123. package/dist/text-format.js.map +1 -1
  124. package/dist/version.d.ts +1 -1
  125. package/dist/version.d.ts.map +1 -1
  126. package/dist/version.js +1 -1
  127. package/dist/version.js.map +1 -1
  128. package/dist/worker/handlers.d.ts.map +1 -1
  129. package/dist/worker/handlers.js +11 -17
  130. package/dist/worker/handlers.js.map +1 -1
  131. package/dist/worker/protocol.d.ts +19 -18
  132. package/dist/worker/protocol.d.ts.map +1 -1
  133. package/dist/worker/worker-source.js +1 -1
  134. package/package.json +3 -3
  135. package/dist/formatting-marks.d.ts +0 -22
  136. package/dist/formatting-marks.d.ts.map +0 -1
  137. package/dist/formatting-marks.js +0 -54
  138. package/dist/formatting-marks.js.map +0 -1
package/dist/tabs.js CHANGED
@@ -1,140 +1,131 @@
1
- import { ANNOTATE_TAB, VIEW_TAB, WORDPROCESSING_VIEW_TAB } from "@docmentis/udoc-ui/internal";
1
+ import { allowsEdit, allowsTableEdit, allowsTextEdit, ANNOTATE_TAB, viewTab } from "@docmentis/udoc-ui/internal";
2
+ import { RULED } from "./ruler.js";
3
+ /** Whether `caps` is a selection in text: a caret or a range — in a shape's
4
+ * text too, which a selection reports with the shape's own edits — or a
5
+ * table's cells, a block of them as well, so a drag across cells keeps the
6
+ * tab a caret in one opened. */
7
+ function inText(caps) {
8
+ return allowsTextEdit(caps, "insertText") || allowsTableEdit(caps, "insertRows");
9
+ }
10
+ /** Whether `caps` holds picked shapes: a slide's, a word document's drawings,
11
+ * those drawn over an image. */
12
+ function pickedShapes(caps) {
13
+ return allowsEdit(caps, "setShapeFill");
14
+ }
15
+ /** Whether `caps` holds a PDF's page objects, or a caret in one's text. */
16
+ function pageObjects(caps) {
17
+ return allowsEdit(caps, "translateObjects");
18
+ }
19
+ /** Whether `caps` holds a PDF's annotations, or a caret in a free text's. */
20
+ function annotations(caps) {
21
+ return allowsEdit(caps, "deleteAnnotations", "translateAnnotations", "resizeAnnotations", "reorderAnnotations");
22
+ }
23
+ /** Whether `caps` holds an image's pages, picked in the thumbnails. */
24
+ function imagePages(caps) {
25
+ return allowsEdit(caps, "rotatePages");
26
+ }
2
27
  /**
3
- * The text-formatting commands — the character half first (the font family /
4
- * size fields, the Bold / Italic / Underline / Strikethrough / Superscript /
5
- * Subscript toggles, the Scale dropdown, the Text Color / Highlight pickers),
6
- * then the paragraph half (the Align + Indent dropdown, the Line & Paragraph
7
- * Spacing dropdown, and the two list split buttons). Shared by the doc-type Text
8
- * tab (always shown, greyed when the selection can't take them) and the
9
- * contextual Home tab (shown only when the selection is editable text). One
10
- * source of truth so the two never drift.
28
+ * The Text tab — the paragraph style picker first, the broadest control and the
29
+ * one the rest refine; then the character half (the font family / size fields,
30
+ * the Bold / Italic / Underline / Strikethrough / Superscript / Subscript
31
+ * toggles, the Scale dropdown, the Text Color / Highlight pickers), then the
32
+ * paragraph half (the Align + Indent dropdown, the Line & Paragraph Spacing
33
+ * dropdown, and the two list split buttons). For the doc types whose text edits
34
+ * through the shared text engine — a deck's, a word document's, the shapes'
35
+ * over an image; a PDF's text and a spreadsheet's cells don't carry it. A
36
+ * selection in text opens it.
11
37
  *
12
38
  * The paragraph controls stay a **short** band on purpose: four entries, each
13
39
  * dropping its long tail into its own menu. The exact measures — indents and
14
40
  * spacing in points, first-line vs hanging, borders and shading, the pagination
15
41
  * keeps — belong in a Paragraph dialog, not in toolbar width.
16
42
  */
17
- const TEXT_COMMANDS = [
18
- "fontFamily",
19
- "fontSize",
20
- "bold",
21
- "italic",
22
- "underline",
23
- "strikethrough",
24
- "superscript",
25
- "subscript",
26
- "widthScale",
27
- "textFill",
28
- "textHighlight",
29
- "paragraphAlign",
30
- "lineSpacing",
31
- "bulletList",
32
- "numberList",
33
- ];
34
- /**
35
- * The shape-appearance commands — the Fill / Line color pickers and the
36
- * Arrange dropdown (order / align / rotate / group) over a drawing's shapes. On
37
- * the Shape tab and the contextual Home tab, like {@link TEXT_COMMANDS}.
38
- */
39
- const SHAPE_COMMANDS = ["shapeFillColor", "shapeStrokeColor", "shapeArrange"];
40
- /**
41
- * The object-appearance commands — the {@link SHAPE_COMMANDS} of a PDF's page
42
- * objects, gated on the object edits. On the portable profile's Object tab and
43
- * its contextual Home tab.
44
- */
45
- const OBJECT_COMMANDS = ["objectFillColor", "objectStrokeColor", "objectArrange"];
46
- /**
47
- * The Home tab, **contextual** (see {@link ToolbarTab.contextual}): it carries
48
- * the full text ({@link TEXT_COMMANDS}) and shape ({@link SHAPE_COMMANDS})
49
- * control sets but shows only the ones the current selection can take, so it
50
- * reads as a selection-driven property band — empty with nothing selected, the
51
- * text controls for editable text, the shape controls for a graphics object. The
52
- * clipboard + format-copy group it once held moved to the canvas context menu
53
- * (`CONTEXT_MENU` in udoc-ui's `commands.ts`) — those act on the selection and
54
- * mean the same thing for every selection type, so they don't earn toolbar
55
- * width.
56
- */
57
- const HOME_TAB = {
58
- id: "home",
59
- label: "ribbon.home",
60
- commands: [...TEXT_COMMANDS, ...SHAPE_COMMANDS],
61
- contextual: true,
43
+ const TEXT_TAB = {
44
+ id: "text",
45
+ label: "ribbon.text",
46
+ commands: [
47
+ "paragraphStyle",
48
+ "fontFamily",
49
+ "fontSize",
50
+ "bold",
51
+ "italic",
52
+ "underline",
53
+ "strikethrough",
54
+ "superscript",
55
+ "subscript",
56
+ "widthScale",
57
+ "textFill",
58
+ "textHighlight",
59
+ "paragraphAlign",
60
+ "lineSpacing",
61
+ "bulletList",
62
+ "numberList",
63
+ ],
64
+ opensFor: inText,
62
65
  };
63
- /** The portable Insert tab: Shapes, dragged out as the page's own objects. */
64
- const PORTABLE_INSERT_TAB = { id: "insert", label: "ribbon.insert", commands: ["insertShape"] };
65
- /** The image Insert tab: Shapes, drawn over the page. */
66
- const IMAGE_INSERT_TAB = { id: "insert", label: "ribbon.insert", commands: ["insertShape"] };
67
- /** The presentation Insert tab: Image, a picture on the current slide. */
68
- const PRESENTATION_INSERT_TAB = { id: "insert", label: "ribbon.insert", commands: ["insertImage"] };
69
- /**
70
- * The Shape tab — appearance + arrangement for graphics objects. Fill / Line
71
- * split buttons (color per channel), then the `arrange` dropdown whose fly-outs
72
- * cover Order (z-order), Align (align / distribute to the selection or the page),
73
- * and Rotate (quarter-turn rotations + flips), plus Group / Ungroup. On the
74
- * presentation strip, not the default one.
75
- */
76
- const SHAPE_TAB = { id: "shape", label: "ribbon.shape", commands: SHAPE_COMMANDS };
77
- /**
78
- * The Object tab — the portable (PDF) counterpart of {@link SHAPE_TAB}: its own
79
- * {@link OBJECT_COMMANDS}, over the page's content objects (paths, text, images)
80
- * rather than DrawingML shapes.
81
- */
82
- const OBJECT_TAB = { id: "object", label: "ribbon.object", commands: OBJECT_COMMANDS };
83
- /**
84
- * The Text tab — character formatting for the current text selection. The font
85
- * dropdown (typeface) then the Bold / Italic toggles. For the doc types whose
86
- * text edits through the shared text engine (presentation + wordprocessing);
87
- * PDF (line-structured, read-oriented text) and spreadsheets don't carry it.
88
- */
89
- const TEXT_TAB = { id: "text", label: "ribbon.text", commands: TEXT_COMMANDS };
90
- /** The presentation Text tab — {@link TEXT_TAB} without the control a deck has
91
- * no use for: Scale (`w:w` is docx's, and DrawingML has no horizontal glyph
92
- * scale). The tab drops it rather than greying it for good. */
66
+ /** The presentation Text tab — {@link TEXT_TAB} without the controls a deck has
67
+ * no use for: the style picker (a slide's paragraphs inherit by outline level,
68
+ * naming no style) and Scale (`w:w` is docx's, and DrawingML has no horizontal
69
+ * glyph scale). The tab drops them rather than greying them for good. */
93
70
  const PRESENTATION_TEXT_TAB = {
94
71
  ...TEXT_TAB,
95
- commands: TEXT_COMMANDS.filter((id) => id !== "widthScale"),
96
- };
97
- /** The wordprocessing View tab — udoc-ui's (Pages or Pageless), then Show
98
- * Formatting Marks, which shows what the text holds rather than changing it. */
99
- const WORDPROCESSING_EDIT_VIEW_TAB = {
100
- ...WORDPROCESSING_VIEW_TAB,
101
- commands: [...WORDPROCESSING_VIEW_TAB.commands, "formattingMarks"],
72
+ commands: TEXT_TAB.commands.filter((id) => id !== "paragraphStyle" && id !== "widthScale"),
102
73
  };
103
74
  /**
104
- * The portable Home tab. Like {@link HOME_TAB}, but with the
105
- * {@link OBJECT_COMMANDS} a PDF's page objects take in place of the shape ones.
75
+ * The Shape tab — appearance + arrangement for graphics objects. Fill / Line
76
+ * split buttons (color per channel), then a button group of the arrangement
77
+ * dropdowns — Order (z-order), Align (align / distribute to the selection or the
78
+ * page) and Rotate (quarter-turn rotations + flips) — and one of Group and
79
+ * Ungroup. Picked shapes open it.
106
80
  */
107
- const PORTABLE_HOME_TAB = {
108
- id: "home",
109
- label: "ribbon.home",
110
- commands: [...TEXT_COMMANDS, ...OBJECT_COMMANDS],
111
- contextual: true,
81
+ const SHAPE_TAB = {
82
+ id: "shape",
83
+ label: "ribbon.shape",
84
+ commands: [
85
+ "shapeFillColor",
86
+ "shapeStrokeColor",
87
+ "shapeOrder",
88
+ "shapeAlign",
89
+ "shapeRotate",
90
+ "shapeGroup",
91
+ "shapeUngroup",
92
+ ],
93
+ opensFor: pickedShapes,
112
94
  };
113
95
  /**
114
- * The presentation Home tab. Like {@link HOME_TAB} (text controls for a text
115
- * selection, shape controls for a graphics object) but with **New Slide**
116
- * prepended — shown only with nothing selected (see `whenNoSelection`), so the
117
- * empty canvas offers "add a slide" where a selection would offer its property
118
- * controls. Slide delete / reorder stay in the Thumbnails navigator.
96
+ * The Object tab — the portable (PDF) counterpart of {@link SHAPE_TAB}: its own
97
+ * Fill / Line and arrangement, gated on the object edits, over the page's content
98
+ * objects (paths, text, images) rather than DrawingML shapes. Picked objects
99
+ * open it, as does a caret in one's text.
119
100
  */
120
- const PRESENTATION_HOME_TAB = {
121
- id: "home",
122
- label: "ribbon.home",
123
- commands: ["createSlide", ...TEXT_COMMANDS, ...SHAPE_COMMANDS],
124
- contextual: true,
101
+ const OBJECT_TAB = {
102
+ id: "object",
103
+ label: "ribbon.object",
104
+ commands: [
105
+ "objectFillColor",
106
+ "objectStrokeColor",
107
+ "objectOrder",
108
+ "objectAlign",
109
+ "objectRotate",
110
+ "objectGroup",
111
+ "objectUngroup",
112
+ ],
113
+ opensFor: pageObjects,
125
114
  };
115
+ /** The Annotate tab, as view mode has it, opened by picked annotations — its
116
+ * Format group styles them. */
117
+ const PORTABLE_ANNOTATE_TAB = { ...ANNOTATE_TAB, opensFor: annotations };
126
118
  /**
127
- * The image Home tab. Like {@link PRESENTATION_HOME_TAB}, its document-level
128
- * actions — the current page's Rotate Left / Right, Flip Horizontal /
129
- * Vertical, Crop and Image Size — show with no shape drawn over a page
130
- * selected, or pages in the thumbnails, and yield to the text and shape
131
- * controls the moment one is. While a page is cropped, crop mode's own
132
- * controls show in their place: the aspect the box keeps, Reset, Cancel and
119
+ * The image Image tab — the current page's Rotate Left / Right, Flip
120
+ * Horizontal / Vertical, Crop and Image Size; the turns and flips the pages
121
+ * picked in the thumbnails instead, which open it. **Contextual** (see
122
+ * {@link ToolbarTab.contextual}): while a page is cropped, crop mode's own
123
+ * controls show in their place — the aspect the box keeps, Reset, Cancel and
133
124
  * Apply.
134
125
  */
135
- const IMAGE_HOME_TAB = {
136
- id: "home",
137
- label: "ribbon.home",
126
+ const IMAGE_TAB = {
127
+ id: "image",
128
+ label: "ribbon.image",
138
129
  commands: [
139
130
  "rotatePageLeft",
140
131
  "rotatePageRight",
@@ -146,33 +137,60 @@ const IMAGE_HOME_TAB = {
146
137
  "cropReset",
147
138
  "cropCancel",
148
139
  "cropApply",
149
- ...PRESENTATION_TEXT_TAB.commands,
150
- ...SHAPE_COMMANDS,
151
140
  ],
152
141
  contextual: true,
142
+ opensFor: imagePages,
143
+ };
144
+ /** The portable Insert tab: Shapes, dragged out as the page's own objects. */
145
+ const PORTABLE_INSERT_TAB = { id: "insert", label: "ribbon.insert", commands: ["insertShape"] };
146
+ /** The image Insert tab: the gallery's Shapes, drawn over the page. */
147
+ const IMAGE_INSERT_TAB = { id: "insert", label: "ribbon.insert", commands: ["insertGalleryShape"] };
148
+ /** The presentation Insert tab: New Slide, after the current slide; Image, a
149
+ * picture on it; and the gallery's Shapes, dragged out on it. */
150
+ const PRESENTATION_INSERT_TAB = {
151
+ id: "insert",
152
+ label: "ribbon.insert",
153
+ commands: ["createSlide", "insertImage", "insertGalleryShape"],
153
154
  };
154
- /** The strip of a doc type with none of its own: Home. */
155
- const DEFAULT_TABS = [HOME_TAB];
156
- /** The portable (PDF) strip: its own Home and Insert, then Object (the page's
157
- * content objects) and Annotate, but no Text tab. */
158
- const PORTABLE_TABS = [PORTABLE_HOME_TAB, PORTABLE_INSERT_TAB, OBJECT_TAB, ANNOTATE_TAB];
159
- /** The presentation strip: the slide-aware Home and its own Insert, then Text
160
- * (character formatting) and Shape (free-floating graphics), and udoc-ui's
161
- * View last (the notes pane), as view mode has it. */
155
+ /** `docType`'s View tab, as view mode has it, with the ruler among its
156
+ * guides where edit mode draws one: over a PDF's pages, a deck's slides and a
157
+ * word document's pages. */
158
+ function editViewTab(docType) {
159
+ return viewTab(docType, RULED.has(docType) ? ["ruler"] : []);
160
+ }
161
+ /** The strip of a doc type with none of its own: no tabs. */
162
+ const DEFAULT_TABS = [];
163
+ /** The portable (PDF) strip: its own Insert, then Object (the page's content
164
+ * objects) and Annotate, but no Text tab, and its View last. */
165
+ const PORTABLE_TABS = [
166
+ PORTABLE_INSERT_TAB,
167
+ OBJECT_TAB,
168
+ PORTABLE_ANNOTATE_TAB,
169
+ editViewTab("portable"),
170
+ ];
171
+ /** The presentation strip: its own Insert, then Text (character formatting)
172
+ * and Shape (free-floating graphics), and its View last. */
162
173
  const PRESENTATION_TABS = [
163
- PRESENTATION_HOME_TAB,
164
174
  PRESENTATION_INSERT_TAB,
165
175
  PRESENTATION_TEXT_TAB,
166
176
  SHAPE_TAB,
167
- VIEW_TAB,
177
+ editViewTab("presentation"),
178
+ ];
179
+ /** The wordprocessing strip: Text, then Shape for the drawings in its flow,
180
+ * and its View last. */
181
+ const WORDPROCESSING_TABS = [TEXT_TAB, SHAPE_TAB, editViewTab("wordprocessing")];
182
+ /** The image strip: its own Image and Insert, then the Text and Shape tabs of
183
+ * the shapes drawn over its pages — a deck's, as they are a slide's shapes —
184
+ * and its View last. */
185
+ const IMAGE_TABS = [
186
+ IMAGE_TAB,
187
+ IMAGE_INSERT_TAB,
188
+ PRESENTATION_TEXT_TAB,
189
+ SHAPE_TAB,
190
+ editViewTab("image"),
168
191
  ];
169
- /** The wordprocessing strip: Home plus Text, then View last (its pages or
170
- * pageless, as view mode has it, and the formatting marks). No Shape tab yet —
171
- * the flow document has no free-floating shapes. */
172
- const WORDPROCESSING_TABS = [HOME_TAB, TEXT_TAB, WORDPROCESSING_EDIT_VIEW_TAB];
173
- /** The image strip: its own Home and Insert, then the Text and Shape tabs of
174
- * the shapes drawn over its pages — a deck's, as they are a slide's shapes. */
175
- const IMAGE_TABS = [IMAGE_HOME_TAB, IMAGE_INSERT_TAB, PRESENTATION_TEXT_TAB, SHAPE_TAB];
192
+ /** The spreadsheet strip: its View. */
193
+ const SPREADSHEET_TABS = [editViewTab("spreadsheet")];
176
194
  /** Edit mode's tab strip for a document of `docType`. */
177
195
  export function editTabs(docType) {
178
196
  switch (docType) {
@@ -184,6 +202,8 @@ export function editTabs(docType) {
184
202
  return WORDPROCESSING_TABS;
185
203
  case "image":
186
204
  return IMAGE_TABS;
205
+ case "spreadsheet":
206
+ return SPREADSHEET_TABS;
187
207
  default:
188
208
  return DEFAULT_TABS;
189
209
  }
package/dist/tabs.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../src/tabs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../src/tabs.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { TextCharacterProperty, TextNumberFormat, TextParagraphProperty, UDocType } from "@docmentis/udoc-wasm";
1
+ import type { ParagraphStyleSummary, TextCharacterProperty, TextNumberFormat, TextParagraphProperty, UDocType } from "@docmentis/udoc-wasm";
2
2
  import type { EnabledWhen, MenuItem, PaintSpec, UIShellHost } from "@docmentis/udoc-ui/internal";
3
3
  import type { I18n, MessageKey } from "./i18n/index.js";
4
4
  /** A boolean character-style the Text tab toggles — the `b` / `i` / `u` /
@@ -48,6 +48,12 @@ export declare const whenTextFormat: EnabledWhen;
48
48
  * always *inside* a paragraph — clicking in a line and pressing Center is the
49
49
  * ordinary gesture, so these gate on the paragraph edit instead. */
50
50
  export declare const whenParagraphFormat: EnabledWhen;
51
+ /** The style picker: a paragraph edit like {@link whenParagraphFormat}, which
52
+ * the engine grants only in a word document that has styles to name. */
53
+ export declare const whenParagraphStyle: EnabledWhen;
54
+ /** The name the picker shows for `style`: a built-in in the user's language —
55
+ * Word's `heading 1` as "Heading 1" — and any other as it was written. */
56
+ export declare function paragraphStyleName(style: ParagraphStyleSummary, i18n: I18n): string;
51
57
  /** The Scale dropdown: a character format like {@link whenTextFormat}, on the
52
58
  * one doc type that can hold it — `w:w` is docx's, and DrawingML has no
53
59
  * horizontal glyph scale to write it to. */
@@ -107,6 +113,7 @@ export declare function createTextEdits(host: UIShellHost, i18n: I18n): {
107
113
  indentSelection: (delta: number) => Promise<void>;
108
114
  toggleParagraphSpace: (edge: ParagraphSpaceEdge) => Promise<void>;
109
115
  listSelection: (style: ListStyle | null) => Promise<void>;
116
+ applyParagraphStyle: (style: string) => Promise<void>;
110
117
  textHighlightSelection: (paint: PaintSpec) => Promise<void>;
111
118
  };
112
119
  /** The text edits {@link createTextEdits} makes. */
@@ -1 +1 @@
1
- {"version":3,"file":"text-format.d.ts","sourceRoot":"","sources":["../src/text-format.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErH,OAAO,KAAK,EAAE,WAAW,EAAW,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1G,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAaxD;;;0BAG0B;AAC1B,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,eAAe,GAAG,aAAa,GAAG,WAAW,CAAC;AAEjH;;;kEAGkE;AAClE,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAC;AAE/C;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACtB,0DAA0D;IAC1D,EAAE,EAAE,MAAM,CAAC;IACX,iCAAiC;IACjC,KAAK,EAAE,UAAU,CAAC;IAClB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,gBAAgB,CAAC;IACzB;mCAC+B;IAC/B,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;uEACuE;AACvE,eAAO,MAAM,aAAa,EAAE,SAAS,SAAS,EAO7C,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,aAAa,EAAE,SAAS,SAAS,EAO7C,CAAC;AAEF,qDAAqD;AACrD,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,SAAS,EAAE,CAE/D;AAED;;;;oCAIoC;AACpC,eAAO,MAAM,cAAc,EAAE,WAA0E,CAAC;AAExG;;;;qEAIqE;AACrE,eAAO,MAAM,mBAAmB,EAAE,WAA0E,CAAC;AAE7G;;6CAE6C;AAC7C,eAAO,MAAM,cAAc,EAAE,WAAwE,CAAC;AAEtG;;;;;;;2EAO2E;AAC3E,wBAAgB,kBAAkB,CAC9B,QAAQ,EAAE,kBAAkB,EAC5B,EAAE,EAAE,OAAO,EACX,OAAO,EAAE,QAAQ,GAAG,IAAI,GACzB,qBAAqB,CAgBvB;AAED;8CAC8C;AAC9C,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEpD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,QAAQ,CAAC,UAAU,CAAC,EA6C/D,CAAC;AAOF;;kCAEkC;AAClC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAsBzC;uCACuC;AACvC,eAAO,MAAM,gBAAgB,EAAE,SAAS,QAAQ,CAAC,UAAU,CAAC,EAKzD,CAAC;AAEJ;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,QAAQ,CAAC,UAAU,CAAC,EAe5D,CAAC;AAEF;iDACiD;AACjD,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI;yCAiBb,qBAAqB,EAAE,KAAG,OAAO,CAAC,IAAI,CAAC;oCAO5C,kBAAkB,MAAM,OAAO,KAAG,OAAO,CAAC,IAAI,CAAC;gCAK7C,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;8BAgC9B,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;+BAKrB,SAAS,KAAG,OAAO,CAAC,IAAI,CAAC;yCAOf,qBAAqB,EAAE,KAAG,OAAO,CAAC,IAAI,CAAC;6BAQnD,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;iCAQlB,kBAAkB,KAAG,OAAO,CAAC,IAAI,CAAC;2BAaxC,SAAS,GAAG,IAAI,KAAG,OAAO,CAAC,IAAI,CAAC;oCASvB,SAAS,KAAG,OAAO,CAAC,IAAI,CAAC;EAqBnE;AAED,oDAAoD;AACpD,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"text-format.d.ts","sourceRoot":"","sources":["../src/text-format.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,33 @@ export const whenTextFormat = (c) => allowsTextEdit(c.selection, "setCharacterPr
39
39
  * always *inside* a paragraph — clicking in a line and pressing Center is the
40
40
  * ordinary gesture, so these gate on the paragraph edit instead. */
41
41
  export const whenParagraphFormat = (c) => allowsTextEdit(c.selection, "setParagraphProperties");
42
+ /** The style picker: a paragraph edit like {@link whenParagraphFormat}, which
43
+ * the engine grants only in a word document that has styles to name. */
44
+ export const whenParagraphStyle = (c) => allowsTextEdit(c.selection, "applyParagraphStyle");
45
+ /** Word's built-in paragraph styles the picker names in the user's language,
46
+ * by the name Word writes them under — lowercased, as Word matches a built-in
47
+ * name in any case. A style not here shows the name it was written with. */
48
+ const BUILT_IN_STYLES = new Map([
49
+ ["normal", "paragraphStyle.normal"],
50
+ ["no spacing", "paragraphStyle.noSpacing"],
51
+ ["title", "paragraphStyle.title"],
52
+ ["subtitle", "paragraphStyle.subtitle"],
53
+ ["quote", "paragraphStyle.quote"],
54
+ ["intense quote", "paragraphStyle.intenseQuote"],
55
+ ["list paragraph", "paragraphStyle.listParagraph"],
56
+ ["normal (web)", "paragraphStyle.normalWeb"],
57
+ ["html preformatted", "paragraphStyle.htmlPreformatted"],
58
+ ]);
59
+ /** The name the picker shows for `style`: a built-in in the user's language —
60
+ * Word's `heading 1` as "Heading 1" — and any other as it was written. */
61
+ export function paragraphStyleName(style, i18n) {
62
+ const name = style.name.toLowerCase();
63
+ const heading = /^heading ([1-9])$/.exec(name);
64
+ if (heading)
65
+ return i18n.t("paragraphStyle.heading", { level: heading[1] });
66
+ const key = BUILT_IN_STYLES.get(name);
67
+ return key ? i18n.t(key) : style.name;
68
+ }
42
69
  /** The Scale dropdown: a character format like {@link whenTextFormat}, on the
43
70
  * one doc type that can hold it — `w:w` is docx's, and DrawingML has no
44
71
  * horizontal glyph scale to write it to. */
@@ -288,6 +315,14 @@ export function createTextEdits(host, i18n) {
288
315
  { numbering: { inline: { format: style.format, textPattern: style.pattern } } },
289
316
  ]);
290
317
  }
318
+ /** Put the touched paragraphs in paragraph style `style`, an id from the
319
+ * document's style list. The engine clears their direct formatting as it
320
+ * names the style, as Word does. */
321
+ function applyParagraphStyle(style) {
322
+ if (!textDocType())
323
+ return Promise.resolve();
324
+ return commit(() => client.executeOnSelection({ kind: "applyParagraphStyle", style }));
325
+ }
291
326
  /** Apply a highlight to the text selection. The highlight is a bare color, so
292
327
  * "no fill" clears the highlight key (back to un-highlighted). */
293
328
  function textHighlightSelection(paint) {
@@ -309,6 +344,7 @@ export function createTextEdits(host, i18n) {
309
344
  indentSelection,
310
345
  toggleParagraphSpace,
311
346
  listSelection,
347
+ applyParagraphStyle,
312
348
  textHighlightSelection,
313
349
  };
314
350
  }
@@ -1 +1 @@
1
- {"version":3,"file":"text-format.js","sourceRoot":"","sources":["../src/text-format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-format.js","sourceRoot":"","sources":["../src/text-format.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const WRAPPER_VERSION = "0.8.8";
1
+ export declare const WRAPPER_VERSION = "0.8.10";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,eAAe,WAAW,CAAC"}
package/dist/version.js CHANGED
@@ -3,5 +3,5 @@
3
3
  // This package's version, reported to the engine as the wrapper version so a
4
4
  // permit request and a usage event can name what produced them. Generated from
5
5
  // package.json, which is the one place a release bumps.
6
- export const WRAPPER_VERSION = "0.8.8";
6
+ export const WRAPPER_VERSION = "0.8.10";
7
7
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,EAAE;AACF,6EAA6E;AAC7E,+EAA+E;AAC/E,wDAAwD;AACxD,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,EAAE;AACF,6EAA6E;AAC7E,+EAA+E;AAC/E,wDAAwD;AACxD,MAAM,CAAC,MAAM,eAAe,GAAG,QAAQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/worker/handlers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAI/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,2DAA2D;AAC3D,KAAK,YAAY,GAAG;IAAE,QAAQ,EAAE,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC;CAAE,CAAC;AAE9G,eAAO,MAAM,aAAa,EAAE,YAqI3B,CAAC"}
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/worker/handlers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAG/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,2DAA2D;AAC3D,KAAK,YAAY,GAAG;IAAE,QAAQ,EAAE,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC;CAAE,CAAC;AAE9G,eAAO,MAAM,aAAa,EAAE,YA+H3B,CAAC"}
@@ -23,15 +23,6 @@ export const EDIT_HANDLERS = {
23
23
  worker.scheduleFrame();
24
24
  },
25
25
  },
26
- setFormattingMarks: {
27
- sticky: true,
28
- handle(request, worker) {
29
- // Sticky in Rust, like the backdrop; a full repaint shows or
30
- // clears the marks on the next frame.
31
- worker.session?.setFormattingMarks(worker.viewer, request.on);
32
- worker.scheduleFrame();
33
- },
34
- },
35
26
  themePalette: {
36
27
  // The document's resolved theme palette — a slide's for a deck, the
37
28
  // single document theme for a word doc — a pure read. `null` when no
@@ -48,6 +39,11 @@ export const EDIT_HANDLERS = {
48
39
  // (PDF/image).
49
40
  handle: (_request, { session }) => (session ? session.fontFamilySummaries() : []),
50
41
  },
42
+ paragraphStyleSummaries: {
43
+ // The style picker's list — a word document's, `[]` with no document
44
+ // or for any other doc type.
45
+ handle: (_request, { session }) => (session ? session.paragraphStyleSummaries() : []),
46
+ },
51
47
  loadedFontFamilyNames: {
52
48
  // The subset needing no download — read fresh each time, since
53
49
  // binaries land throughout the session.
@@ -90,17 +86,15 @@ export const EDIT_HANDLERS = {
90
86
  null)
91
87
  : null,
92
88
  },
93
- slideMastersSummary: {
94
- // A pure read: every slide master, summarized for the New-Slide picker.
95
- // Empty when there's no open / non-presentation doc. Loads every slide
96
- // master (to learn its slide layouts), so `&mut`-backed. Lenient like
97
- // the engine's own reads: a throw reads as none.
98
- handle(_request, { session }) {
89
+ slideId: {
90
+ // A pure read, lenient like the engine's own: a throw — no
91
+ // presentation open — reads as none.
92
+ handle(request, { session }) {
99
93
  try {
100
- return session?.presentation.model.slideMasters.summary() ?? [];
94
+ return session?.presentation.model.root.slideIds()[request.index] ?? null;
101
95
  }
102
96
  catch {
103
- return [];
97
+ return null;
104
98
  }
105
99
  },
106
100
  },
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/worker/handlers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAQzD,MAAM,CAAC,MAAM,aAAa,GAAiB;IACvC,kBAAkB,EAAE;QAChB,MAAM,EAAE,IAAI;QACZ,MAAM,CAAC,OAAO,EAAE,MAAM;YAClB,kEAAkE;YAClE,+DAA+D;YAC/D,MAAM,CAAC,OAAO,EAAE,kBAAkB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YACnE,MAAM,CAAC,aAAa,EAAE,CAAC;QAC3B,CAAC;KACJ;IACD,qBAAqB,EAAE;QACnB,MAAM,EAAE,IAAI;QACZ,MAAM,CAAC,OAAO,EAAE,MAAM;YAClB,6DAA6D;YAC7D,iEAAiE;YACjE,4DAA4D;YAC5D,uCAAuC;YACvC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAC/B,IAAI,OAAO;gBAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE;oBAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1G,MAAM,CAAC,aAAa,EAAE,CAAC;QAC3B,CAAC;KACJ;IACD,kBAAkB,EAAE;QAChB,MAAM,EAAE,IAAI;QACZ,MAAM,CAAC,OAAO,EAAE,MAAM;YAClB,6DAA6D;YAC7D,sCAAsC;YACtC,MAAM,CAAC,OAAO,EAAE,kBAAkB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YAC9D,MAAM,CAAC,aAAa,EAAE,CAAC;QAC3B,CAAC;KACJ;IACD,YAAY,EAAE;QACV,oEAAoE;QACpE,qEAAqE;QACrE,uEAAuE;QACvE,gCAAgC;QAChC,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YAChC,MAAM,IAAI,GAAG,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;YAC3C,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAkB,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1E,CAAC;KACJ;IACD,mBAAmB,EAAE;QACjB,qEAAqE;QACrE,wEAAwE;QACxE,eAAe;QACf,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpF;IACD,qBAAqB,EAAE;QACnB,+DAA+D;QAC/D,wCAAwC;QACxC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtF;IACD,YAAY,EAAE;QACV,uEAAuE;QACvE,iEAAiE;QACjE,WAAW;QACX,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7E;IACD,iBAAiB,EAAE;QACf,oEAAoE;QACpE,sEAAsE;QACtE,qEAAqE;QACrE,2DAA2D;QAC3D,EAAE;QACF,qEAAqE;QACrE,kEAAkE;QAClE,mBAAmB;QACnB,MAAM,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE;YACvB,MAAM,KAAK,GAAG,OAAO,EAAE,iBAAiB,CACpC,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,IAAI,CACf,CAAC;YACF,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YACxB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YAC1B,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC;YAC3C,KAAK,CAAC,IAAI,EAAE,CAAC;YACb,OAAO,IAAI,YAAY,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAClE,CAAC;KACJ;IACD,sBAAsB,EAAE;QACpB,yEAAyE;QACzE,yEAAyE;QACzE,oEAAoE;QACpE,mCAAmC;QACnC,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CACrC,OAAO;YACH,CAAC,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC9F,IAAI,CAAC;YACP,CAAC,CAAC,IAAI;KACjB;IACD,mBAAmB,EAAE;QACjB,wEAAwE;QACxE,uEAAuE;QACvE,sEAAsE;QACtE,iDAAiD;QACjD,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE;YACxB,IAAI,CAAC;gBACD,OAAO,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;YACpE,CAAC;YAAC,MAAM,CAAC;gBACL,OAAO,EAAE,CAAC;YACd,CAAC;QACL,CAAC;KACJ;IACD,KAAK,EAAE;QACH,MAAM,CAAC,OAAO,EAAE,MAAM;YAClB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAC3B,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;YAClE,uDAAuD;YACvD,iEAAiE;YACjE,+DAA+D;YAC/D,gEAAgE;YAChE,6DAA6D;YAC7D,gDAAgD;YAChD,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC/C,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;KACJ;IACD,WAAW,EAAE;QACT,MAAM,CAAC,OAAO,EAAE,MAAM;YAClB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAC3B,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;YACxE,6DAA6D;YAC7D,8DAA8D;YAC9D,8DAA8D;YAC9D,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;YACvF,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;KACJ;CACJ,CAAC"}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/worker/handlers.ts"],"names":[],"mappings":"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"}