@eigenpal/docx-editor-vue 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/LICENSE +204 -0
  2. package/README.md +60 -0
  3. package/dist/KeyboardShortcutsDialog-BtJB9UOD.js +2902 -0
  4. package/dist/KeyboardShortcutsDialog-D72k5DXR.cjs +1 -0
  5. package/dist/MenuBar-BrQW4COn.cjs +4 -0
  6. package/dist/MenuBar-D_Dvwb0F.js +3313 -0
  7. package/dist/RenderedDomContext-CHc18N_2.js +2 -0
  8. package/dist/TablePropertiesDialog-Ct5XChwd.cjs +1 -0
  9. package/dist/TablePropertiesDialog-cJx_xxxE.js +987 -0
  10. package/dist/_plugin-vue_export-helper-B52Kst-M.js +8 -0
  11. package/dist/_plugin-vue_export-helper-CX7YVcP6.cjs +1 -0
  12. package/dist/components/DocxEditor/types.d.ts +100 -0
  13. package/dist/components/EditorToolbarContext.d.ts +9 -0
  14. package/dist/components/Toolbar/presets.d.ts +42 -0
  15. package/dist/components/dialogs/index.d.ts +27 -0
  16. package/dist/components/imageContextMenuTypes.d.ts +30 -0
  17. package/dist/components/imageSelectionTypes.d.ts +14 -0
  18. package/dist/components/insertTableState.d.ts +9 -0
  19. package/dist/components/sidebar/cardStyles.d.ts +3 -0
  20. package/dist/components/sidebar/cardUtils.d.ts +1 -0
  21. package/dist/components/sidebar/resolveItemPositions.d.ts +4 -0
  22. package/dist/components/sidebar/sidebarUtils.d.ts +4 -0
  23. package/dist/components/tableStylePresets.d.ts +53 -0
  24. package/dist/components/toolbarUtils.d.ts +1 -0
  25. package/dist/components/ui/Icons.d.ts +1 -0
  26. package/dist/components/ui/hyperlinkPopupTypes.d.ts +20 -0
  27. package/dist/composables/index.d.ts +30 -0
  28. package/dist/composables/useAutoSave.d.ts +40 -0
  29. package/dist/composables/useClipboard.d.ts +22 -0
  30. package/dist/composables/useCommentLifecycle.d.ts +52 -0
  31. package/dist/composables/useCommentManagement.d.ts +41 -0
  32. package/dist/composables/useCommentSidebarItems.d.ts +24 -0
  33. package/dist/composables/useContextMenus.d.ts +39 -0
  34. package/dist/composables/useDocumentLifecycle.d.ts +11 -0
  35. package/dist/composables/useDocxEditor.d.ts +56 -0
  36. package/dist/composables/useDocxEditorRefApi.d.ts +49 -0
  37. package/dist/composables/useDragAutoScroll.d.ts +11 -0
  38. package/dist/composables/useFileIO.d.ts +30 -0
  39. package/dist/composables/useFindReplace.d.ts +34 -0
  40. package/dist/composables/useFixedDropdown.d.ts +14 -0
  41. package/dist/composables/useFormattingActions.d.ts +40 -0
  42. package/dist/composables/useHistory.d.ts +9 -0
  43. package/dist/composables/useHyperlinkManagement.d.ts +38 -0
  44. package/dist/composables/useImageActions.d.ts +30 -0
  45. package/dist/composables/useKeyboardShortcuts.d.ts +17 -0
  46. package/dist/composables/useMenuActions.d.ts +23 -0
  47. package/dist/composables/useOutlineSidebar.d.ts +17 -0
  48. package/dist/composables/usePageSetupControls.d.ts +22 -0
  49. package/dist/composables/usePagesPointer.d.ts +70 -0
  50. package/dist/composables/useSelectionHighlight.d.ts +19 -0
  51. package/dist/composables/useSelectionSync.d.ts +13 -0
  52. package/dist/composables/useTableResize.d.ts +7 -0
  53. package/dist/composables/useTableSelection.d.ts +10 -0
  54. package/dist/composables/useToolbarDropdowns.d.ts +14 -0
  55. package/dist/composables/useTrackedChanges.d.ts +12 -0
  56. package/dist/composables/useVisualLineNavigation.d.ts +11 -0
  57. package/dist/composables/useWheelZoom.d.ts +10 -0
  58. package/dist/composables/useZoom.d.ts +16 -0
  59. package/dist/composables.cjs +1 -0
  60. package/dist/composables.js +485 -0
  61. package/dist/dialogs.cjs +1 -0
  62. package/dist/dialogs.js +3 -0
  63. package/dist/docx-editor-vue.css +2 -0
  64. package/dist/i18n/LocaleContext.d.ts +1 -0
  65. package/dist/i18n/index.d.ts +26 -0
  66. package/dist/index.cjs +20 -0
  67. package/dist/index.d.ts +23 -0
  68. package/dist/index.js +3600 -0
  69. package/dist/lib/utils.d.ts +10 -0
  70. package/dist/plugin-api/RenderedDomContext.d.ts +1 -0
  71. package/dist/plugin-api/index.d.ts +18 -0
  72. package/dist/plugin-api/types.d.ts +28 -0
  73. package/dist/plugin-api.cjs +1 -0
  74. package/dist/plugin-api.js +62 -0
  75. package/dist/renderAsync.d.ts +31 -0
  76. package/dist/styles/index.d.ts +12 -0
  77. package/dist/styles/zIndex.d.ts +24 -0
  78. package/dist/styles.cjs +1 -0
  79. package/dist/styles.js +5 -0
  80. package/dist/ui.cjs +18 -0
  81. package/dist/ui.d.ts +79 -0
  82. package/dist/ui.js +963 -0
  83. package/dist/useTableResize-1oSe9Kjk.js +480 -0
  84. package/dist/useTableResize-lWdIgX9x.cjs +1 -0
  85. package/dist/utils/commentFactories.d.ts +7 -0
  86. package/dist/utils/domQueries.d.ts +28 -0
  87. package/dist/utils/imageClipboard.d.ts +9 -0
  88. package/dist/utils/paraTextHelpers.d.ts +29 -0
  89. package/dist/utils/refApiQueries.d.ts +46 -0
  90. package/dist/zIndex-CH0jZ7U7.cjs +1 -0
  91. package/dist/zIndex-CxELVe_L.js +12 -0
  92. package/package.json +119 -0
@@ -0,0 +1,987 @@
1
+ import { d as e } from "./KeyboardShortcutsDialog-BtJB9UOD.js";
2
+ import { t } from "./_plugin-vue_export-helper-B52Kst-M.js";
3
+ import { Fragment as n, computed as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, createVNode as s, defineComponent as c, normalizeClass as l, normalizeStyle as u, openBlock as d, reactive as f, ref as p, renderList as m, toDisplayString as h, unref as g, vModelRadio as _, vModelSelect as v, vModelText as y, watch as b, withDirectives as x, withKeys as S, withModifiers as C } from "vue";
4
+ //#region src/components/tableStylePresets.ts
5
+ var w = (e) => ({
6
+ style: "single",
7
+ size: 4,
8
+ color: { rgb: e }
9
+ }), T = [
10
+ {
11
+ id: "TableNormal",
12
+ name: "Normal Table",
13
+ look: {
14
+ firstRow: !1,
15
+ lastRow: !1,
16
+ noHBand: !0,
17
+ noVBand: !0
18
+ }
19
+ },
20
+ {
21
+ id: "TableGrid",
22
+ name: "Table Grid",
23
+ tableBorders: {
24
+ top: w("000000"),
25
+ bottom: w("000000"),
26
+ left: w("000000"),
27
+ right: w("000000"),
28
+ insideH: w("000000"),
29
+ insideV: w("000000")
30
+ },
31
+ look: {
32
+ firstRow: !1,
33
+ lastRow: !1,
34
+ noHBand: !0,
35
+ noVBand: !0
36
+ }
37
+ },
38
+ {
39
+ id: "TableGridLight",
40
+ name: "Grid Table Light",
41
+ tableBorders: {
42
+ top: w("BFBFBF"),
43
+ bottom: w("BFBFBF"),
44
+ left: w("BFBFBF"),
45
+ right: w("BFBFBF"),
46
+ insideH: w("BFBFBF"),
47
+ insideV: w("BFBFBF")
48
+ },
49
+ look: {
50
+ firstRow: !0,
51
+ lastRow: !1,
52
+ noHBand: !0,
53
+ noVBand: !0
54
+ },
55
+ conditionals: { firstRow: {
56
+ bold: !0,
57
+ borders: { bottom: w("000000") }
58
+ } }
59
+ },
60
+ {
61
+ id: "PlainTable1",
62
+ name: "Plain Table 1",
63
+ tableBorders: {
64
+ top: w("BFBFBF"),
65
+ bottom: w("BFBFBF"),
66
+ insideH: w("BFBFBF")
67
+ },
68
+ look: {
69
+ firstRow: !0,
70
+ lastRow: !1,
71
+ noHBand: !0,
72
+ noVBand: !0
73
+ },
74
+ conditionals: { firstRow: { bold: !0 } }
75
+ },
76
+ {
77
+ id: "PlainTable2",
78
+ name: "Plain Table 2",
79
+ look: {
80
+ firstRow: !0,
81
+ lastRow: !1,
82
+ noHBand: !1,
83
+ noVBand: !0
84
+ },
85
+ conditionals: {
86
+ firstRow: {
87
+ bold: !0,
88
+ borders: { bottom: w("7F7F7F") }
89
+ },
90
+ band1Horz: { backgroundColor: "#F2F2F2" }
91
+ }
92
+ },
93
+ {
94
+ id: "PlainTable3",
95
+ name: "Plain Table 3",
96
+ look: {
97
+ firstRow: !0,
98
+ lastRow: !1,
99
+ noHBand: !1,
100
+ noVBand: !0
101
+ },
102
+ conditionals: {
103
+ firstRow: {
104
+ bold: !0,
105
+ color: "#FFFFFF",
106
+ backgroundColor: "#A5A5A5"
107
+ },
108
+ band1Horz: { backgroundColor: "#E7E7E7" }
109
+ }
110
+ },
111
+ {
112
+ id: "PlainTable4",
113
+ name: "Plain Table 4",
114
+ look: {
115
+ firstRow: !0,
116
+ lastRow: !1,
117
+ noHBand: !1,
118
+ noVBand: !0
119
+ },
120
+ conditionals: {
121
+ firstRow: {
122
+ bold: !0,
123
+ color: "#FFFFFF",
124
+ backgroundColor: "#000000"
125
+ },
126
+ band1Horz: { backgroundColor: "#F2F2F2" }
127
+ }
128
+ },
129
+ {
130
+ id: "GridTable1Light-Accent1",
131
+ name: "Grid Table 1 Light",
132
+ tableBorders: {
133
+ top: w("B4C6E7"),
134
+ bottom: w("B4C6E7"),
135
+ left: w("B4C6E7"),
136
+ right: w("B4C6E7"),
137
+ insideH: w("B4C6E7"),
138
+ insideV: w("B4C6E7")
139
+ },
140
+ look: {
141
+ firstRow: !0,
142
+ lastRow: !1,
143
+ noHBand: !0,
144
+ noVBand: !0
145
+ },
146
+ conditionals: { firstRow: {
147
+ bold: !0,
148
+ borders: { bottom: w("4472C4") }
149
+ } }
150
+ },
151
+ {
152
+ id: "GridTable4-Accent1",
153
+ name: "Grid Table 4 Accent 1",
154
+ tableBorders: {
155
+ top: w("4472C4"),
156
+ bottom: w("4472C4"),
157
+ left: w("4472C4"),
158
+ right: w("4472C4"),
159
+ insideH: w("4472C4"),
160
+ insideV: w("4472C4")
161
+ },
162
+ look: {
163
+ firstRow: !0,
164
+ lastRow: !1,
165
+ noHBand: !1,
166
+ noVBand: !0
167
+ },
168
+ conditionals: {
169
+ firstRow: {
170
+ bold: !0,
171
+ color: "#FFFFFF",
172
+ backgroundColor: "#4472C4"
173
+ },
174
+ band1Horz: { backgroundColor: "#D6E4F0" }
175
+ }
176
+ },
177
+ {
178
+ id: "GridTable5Dark-Accent1",
179
+ name: "Grid Table 5 Dark",
180
+ tableBorders: {
181
+ top: w("FFFFFF"),
182
+ bottom: w("FFFFFF"),
183
+ left: w("FFFFFF"),
184
+ right: w("FFFFFF"),
185
+ insideH: w("FFFFFF"),
186
+ insideV: w("FFFFFF")
187
+ },
188
+ look: {
189
+ firstRow: !0,
190
+ lastRow: !1,
191
+ noHBand: !1,
192
+ noVBand: !0
193
+ },
194
+ conditionals: {
195
+ firstRow: {
196
+ bold: !0,
197
+ color: "#FFFFFF",
198
+ backgroundColor: "#4472C4"
199
+ },
200
+ band1Horz: { backgroundColor: "#D6E4F0" },
201
+ band2Horz: { backgroundColor: "#B4C6E7" }
202
+ }
203
+ },
204
+ {
205
+ id: "ListTable3-Accent2",
206
+ name: "List Table 3 Accent 2",
207
+ tableBorders: {
208
+ top: w("ED7D31"),
209
+ bottom: w("ED7D31")
210
+ },
211
+ look: {
212
+ firstRow: !0,
213
+ lastRow: !1,
214
+ noHBand: !1,
215
+ noVBand: !0
216
+ },
217
+ conditionals: {
218
+ firstRow: {
219
+ bold: !0,
220
+ color: "#FFFFFF",
221
+ backgroundColor: "#ED7D31"
222
+ },
223
+ band1Horz: { backgroundColor: "#FBE4D5" }
224
+ }
225
+ },
226
+ {
227
+ id: "ListTable4-Accent3",
228
+ name: "List Table 4 Accent 3",
229
+ tableBorders: {
230
+ top: w("A5A5A5"),
231
+ bottom: w("A5A5A5"),
232
+ insideH: w("A5A5A5")
233
+ },
234
+ look: {
235
+ firstRow: !0,
236
+ lastRow: !1,
237
+ noHBand: !1,
238
+ noVBand: !0
239
+ },
240
+ conditionals: {
241
+ firstRow: {
242
+ bold: !0,
243
+ color: "#FFFFFF",
244
+ backgroundColor: "#A5A5A5"
245
+ },
246
+ band1Horz: { backgroundColor: "#EDEDED" }
247
+ }
248
+ },
249
+ {
250
+ id: "GridTable4-Accent5",
251
+ name: "Grid Table 4 Accent 5",
252
+ tableBorders: {
253
+ top: w("5B9BD5"),
254
+ bottom: w("5B9BD5"),
255
+ left: w("5B9BD5"),
256
+ right: w("5B9BD5"),
257
+ insideH: w("5B9BD5"),
258
+ insideV: w("5B9BD5")
259
+ },
260
+ look: {
261
+ firstRow: !0,
262
+ lastRow: !1,
263
+ noHBand: !1,
264
+ noVBand: !0
265
+ },
266
+ conditionals: {
267
+ firstRow: {
268
+ bold: !0,
269
+ color: "#FFFFFF",
270
+ backgroundColor: "#5B9BD5"
271
+ },
272
+ band1Horz: { backgroundColor: "#DEEAF6" }
273
+ }
274
+ },
275
+ {
276
+ id: "GridTable4-Accent6",
277
+ name: "Grid Table 4 Accent 6",
278
+ tableBorders: {
279
+ top: w("70AD47"),
280
+ bottom: w("70AD47"),
281
+ left: w("70AD47"),
282
+ right: w("70AD47"),
283
+ insideH: w("70AD47"),
284
+ insideV: w("70AD47")
285
+ },
286
+ look: {
287
+ firstRow: !0,
288
+ lastRow: !1,
289
+ noHBand: !1,
290
+ noVBand: !0
291
+ },
292
+ conditionals: {
293
+ firstRow: {
294
+ bold: !0,
295
+ color: "#FFFFFF",
296
+ backgroundColor: "#70AD47"
297
+ },
298
+ band1Horz: { backgroundColor: "#E2EFDA" }
299
+ }
300
+ }
301
+ ], E = {
302
+ TableNormal: "table.styles.normalTable",
303
+ TableGrid: "table.styles.tableGrid",
304
+ TableGridLight: "table.styles.gridTableLight",
305
+ PlainTable1: "table.styles.plainTable1",
306
+ PlainTable2: "table.styles.plainTable2",
307
+ PlainTable3: "table.styles.plainTable3",
308
+ PlainTable4: "table.styles.plainTable4",
309
+ "GridTable1Light-Accent1": "table.styles.gridTable1Light",
310
+ "GridTable4-Accent1": "table.styles.gridTable4Accent1",
311
+ "GridTable5Dark-Accent1": "table.styles.gridTable5Dark",
312
+ "ListTable3-Accent2": "table.styles.listTable3Accent2",
313
+ "ListTable4-Accent3": "table.styles.listTable4Accent3",
314
+ "GridTable4-Accent5": "table.styles.gridTable4Accent5",
315
+ "GridTable4-Accent6": "table.styles.gridTable4Accent6"
316
+ }, D = 4, O = 3;
317
+ function k(e) {
318
+ return !e || e.style === "none" ? "none" : `${e.size ? Math.max(1, Math.round(e.size / 8)) : 1}px solid ${e.color?.rgb ? `#${e.color.rgb}` : "#000"}`;
319
+ }
320
+ function A(e, t = D, n = O) {
321
+ let r = e.look ?? {}, i = e.conditionals ?? {}, a = e.tableBorders, o = [], s = 0;
322
+ for (let e = 0; e < t; e++) {
323
+ let c = e === 0 && !!r.firstRow, l = e === t - 1 && !!r.lastRow, u = r.noHBand !== !0, d;
324
+ c ? d = "firstRow" : l ? d = "lastRow" : (u && (d = s % 2 == 0 ? "band1Horz" : "band2Horz"), s++);
325
+ for (let s = 0; s < n; s++) {
326
+ let u = d, f = s === 0 && !!r.firstCol, p = s === n - 1 && !!r.lastCol;
327
+ c && f && i.nwCell ? u = "nwCell" : c && p && i.neCell ? u = "neCell" : l && f && i.swCell ? u = "swCell" : l && p && i.seCell ? u = "seCell" : f ? u = "firstCol" : p && (u = "lastCol");
328
+ let m = u ? i[u] : void 0, h = m?.borders, g = {
329
+ width: "20px",
330
+ height: "10px",
331
+ boxSizing: "border-box",
332
+ backgroundColor: m?.backgroundColor ?? "transparent",
333
+ borderTop: h?.top === void 0 ? k(e > 0 ? a?.insideH ?? a?.top : a?.top) : k(h.top),
334
+ borderBottom: h?.bottom === void 0 ? e < t - 1 ? k(a?.insideH ?? a?.bottom) : k(a?.bottom) : k(h.bottom),
335
+ borderLeft: h?.left === void 0 ? k(s > 0 ? a?.insideV ?? a?.left : a?.left) : k(h.left),
336
+ borderRight: h?.right === void 0 ? s < n - 1 ? k(a?.insideV ?? a?.right) : k(a?.right) : k(h.right)
337
+ };
338
+ o.push(g);
339
+ }
340
+ }
341
+ return o;
342
+ }
343
+ //#endregion
344
+ //#region src/components/ui/TableStyleGallery.vue?vue&type=script&setup=true&lang.ts
345
+ var j = { class: "tsg" }, M = { class: "tsg__grid" }, N = ["title", "onMousedown"], P = { class: "tsg__preview" }, F = { class: "tsg__name" }, I = /* @__PURE__ */ t(/* @__PURE__ */ c({
346
+ __name: "TableStyleGallery",
347
+ props: { currentStyleId: {} },
348
+ emits: ["apply"],
349
+ setup(t) {
350
+ let { t: r } = e(), i = T;
351
+ function s(e) {
352
+ let t = E[e.id];
353
+ return t ? r(t) : e.name;
354
+ }
355
+ return (e, r) => (d(), a("div", j, [o("div", M, [(d(!0), a(n, null, m(g(i), (r) => (d(), a("button", {
356
+ key: r.id,
357
+ class: l(["tsg__item", { "tsg__item--selected": t.currentStyleId === r.id }]),
358
+ title: s(r),
359
+ onMousedown: C((t) => e.$emit("apply", r.id), ["prevent"])
360
+ }, [o("div", P, [(d(!0), a(n, null, m(g(A)(r), (e, t) => (d(), a("div", {
361
+ key: t,
362
+ class: "tsg__cell",
363
+ style: u(e)
364
+ }, null, 4))), 128))]), o("span", F, h(s(r)), 1)], 42, N))), 128))])]));
365
+ }
366
+ }), [["__scopeId", "data-v-23526a60"]]), L = { class: "fnpd-dialog__header" }, R = { class: "fnpd-dialog__body" }, z = { class: "fnpd-fieldset" }, ee = { class: "fnpd-legend" }, te = { class: "fnpd-row" }, ne = { class: "fnpd-label" }, re = { value: "pageBottom" }, ie = { value: "beneathText" }, ae = { class: "fnpd-row" }, oe = { class: "fnpd-label" }, B = ["value"], V = { class: "fnpd-row" }, H = { class: "fnpd-label" }, U = { class: "fnpd-row" }, W = { class: "fnpd-label" }, G = { value: "continuous" }, K = { value: "eachSect" }, q = { value: "eachPage" }, se = { class: "fnpd-fieldset" }, ce = { class: "fnpd-legend" }, le = { class: "fnpd-row" }, ue = { class: "fnpd-label" }, de = { value: "docEnd" }, fe = { value: "sectEnd" }, pe = { class: "fnpd-row" }, me = { class: "fnpd-label" }, he = ["value"], ge = { class: "fnpd-row" }, _e = { class: "fnpd-label" }, ve = { class: "fnpd-row" }, ye = { class: "fnpd-label" }, be = { value: "continuous" }, xe = { value: "eachSect" }, Se = { class: "fnpd-dialog__footer" }, Ce = /* @__PURE__ */ t(/* @__PURE__ */ c({
367
+ __name: "FootnotePropertiesDialog",
368
+ props: {
369
+ isOpen: { type: Boolean },
370
+ footnotePr: {},
371
+ endnotePr: {}
372
+ },
373
+ emits: ["close", "apply"],
374
+ setup(t, { emit: s }) {
375
+ let { t: c } = e(), l = t, u = s, f = r(() => [
376
+ {
377
+ value: "decimal",
378
+ label: c("dialogs.footnoteProperties.formats.decimal")
379
+ },
380
+ {
381
+ value: "lowerLetter",
382
+ label: c("dialogs.footnoteProperties.formats.lowerAlpha")
383
+ },
384
+ {
385
+ value: "upperLetter",
386
+ label: c("dialogs.footnoteProperties.formats.upperAlpha")
387
+ },
388
+ {
389
+ value: "lowerRoman",
390
+ label: c("dialogs.footnoteProperties.formats.lowerRoman")
391
+ },
392
+ {
393
+ value: "upperRoman",
394
+ label: c("dialogs.footnoteProperties.formats.upperRoman")
395
+ },
396
+ {
397
+ value: "chicago",
398
+ label: c("dialogs.footnoteProperties.formats.symbols")
399
+ }
400
+ ]), _ = p("pageBottom"), w = p("decimal"), T = p(1), E = p("continuous"), D = p("docEnd"), O = p("lowerRoman"), k = p(1), A = p("continuous");
401
+ b(() => l.isOpen, (e) => {
402
+ e && (_.value = l.footnotePr?.position ?? "pageBottom", w.value = l.footnotePr?.numFmt ?? "decimal", T.value = l.footnotePr?.numStart ?? 1, E.value = l.footnotePr?.numRestart ?? "continuous", D.value = l.endnotePr?.position ?? "docEnd", O.value = l.endnotePr?.numFmt ?? "lowerRoman", k.value = l.endnotePr?.numStart ?? 1, A.value = l.endnotePr?.numRestart ?? "continuous");
403
+ });
404
+ function j() {
405
+ u("apply", {
406
+ position: _.value,
407
+ numFmt: w.value,
408
+ numStart: T.value,
409
+ numRestart: E.value
410
+ }, {
411
+ position: D.value,
412
+ numFmt: O.value,
413
+ numStart: k.value,
414
+ numRestart: A.value
415
+ }), u("close");
416
+ }
417
+ return (e, r) => t.isOpen ? (d(), a("div", {
418
+ key: 0,
419
+ class: "fnpd-overlay",
420
+ onMousedown: r[10] ||= C((t) => e.$emit("close"), ["self"])
421
+ }, [o("div", {
422
+ class: "fnpd-dialog",
423
+ onKeydown: r[9] ||= S((t) => e.$emit("close"), ["escape"])
424
+ }, [
425
+ o("div", L, h(g(c)("dialogs.footnoteProperties.title")), 1),
426
+ o("div", R, [o("fieldset", z, [
427
+ o("legend", ee, h(g(c)("dialogs.footnoteProperties.footnotes")), 1),
428
+ o("div", te, [o("label", ne, h(g(c)("dialogs.footnoteProperties.position")), 1), x(o("select", {
429
+ "onUpdate:modelValue": r[0] ||= (e) => _.value = e,
430
+ class: "fnpd-select"
431
+ }, [o("option", re, h(g(c)("dialogs.footnoteProperties.footnotePositions.bottomOfPage")), 1), o("option", ie, h(g(c)("dialogs.footnoteProperties.footnotePositions.belowText")), 1)], 512), [[v, _.value]])]),
432
+ o("div", ae, [o("label", oe, h(g(c)("dialogs.footnoteProperties.numberFormat")), 1), x(o("select", {
433
+ "onUpdate:modelValue": r[1] ||= (e) => w.value = e,
434
+ class: "fnpd-select"
435
+ }, [(d(!0), a(n, null, m(f.value, (e) => (d(), a("option", {
436
+ key: e.value,
437
+ value: e.value
438
+ }, h(e.label), 9, B))), 128))], 512), [[v, w.value]])]),
439
+ o("div", V, [o("label", H, h(g(c)("dialogs.footnoteProperties.startAt")), 1), x(o("input", {
440
+ "onUpdate:modelValue": r[2] ||= (e) => T.value = e,
441
+ type: "number",
442
+ class: "fnpd-input",
443
+ min: "1"
444
+ }, null, 512), [[
445
+ y,
446
+ T.value,
447
+ void 0,
448
+ { number: !0 }
449
+ ]])]),
450
+ o("div", U, [o("label", W, h(g(c)("dialogs.footnoteProperties.numbering")), 1), x(o("select", {
451
+ "onUpdate:modelValue": r[3] ||= (e) => E.value = e,
452
+ class: "fnpd-select"
453
+ }, [
454
+ o("option", G, h(g(c)("dialogs.footnoteProperties.numberingOptions.continuous")), 1),
455
+ o("option", K, h(g(c)("dialogs.footnoteProperties.numberingOptions.restartSection")), 1),
456
+ o("option", q, h(g(c)("dialogs.footnoteProperties.numberingOptions.restartPage")), 1)
457
+ ], 512), [[v, E.value]])])
458
+ ]), o("fieldset", se, [
459
+ o("legend", ce, h(g(c)("dialogs.footnoteProperties.endnotes")), 1),
460
+ o("div", le, [o("label", ue, h(g(c)("dialogs.footnoteProperties.position")), 1), x(o("select", {
461
+ "onUpdate:modelValue": r[4] ||= (e) => D.value = e,
462
+ class: "fnpd-select"
463
+ }, [o("option", de, h(g(c)("dialogs.footnoteProperties.endnotePositions.endOfDocument")), 1), o("option", fe, h(g(c)("dialogs.footnoteProperties.endnotePositions.endOfSection")), 1)], 512), [[v, D.value]])]),
464
+ o("div", pe, [o("label", me, h(g(c)("dialogs.footnoteProperties.numberFormat")), 1), x(o("select", {
465
+ "onUpdate:modelValue": r[5] ||= (e) => O.value = e,
466
+ class: "fnpd-select"
467
+ }, [(d(!0), a(n, null, m(f.value, (e) => (d(), a("option", {
468
+ key: e.value,
469
+ value: e.value
470
+ }, h(e.label), 9, he))), 128))], 512), [[v, O.value]])]),
471
+ o("div", ge, [o("label", _e, h(g(c)("dialogs.footnoteProperties.startAt")), 1), x(o("input", {
472
+ "onUpdate:modelValue": r[6] ||= (e) => k.value = e,
473
+ type: "number",
474
+ class: "fnpd-input",
475
+ min: "1"
476
+ }, null, 512), [[
477
+ y,
478
+ k.value,
479
+ void 0,
480
+ { number: !0 }
481
+ ]])]),
482
+ o("div", ve, [o("label", ye, h(g(c)("dialogs.footnoteProperties.numbering")), 1), x(o("select", {
483
+ "onUpdate:modelValue": r[7] ||= (e) => A.value = e,
484
+ class: "fnpd-select"
485
+ }, [o("option", be, h(g(c)("dialogs.footnoteProperties.numberingOptions.continuous")), 1), o("option", xe, h(g(c)("dialogs.footnoteProperties.numberingOptions.restartSection")), 1)], 512), [[v, A.value]])])
486
+ ])]),
487
+ o("div", Se, [o("button", {
488
+ class: "fnpd-btn",
489
+ onClick: r[8] ||= (t) => e.$emit("close")
490
+ }, h(g(c)("common.cancel")), 1), o("button", {
491
+ class: "fnpd-btn fnpd-btn--primary",
492
+ onClick: j
493
+ }, h(g(c)("common.apply")), 1)])
494
+ ], 32)], 32)) : i("", !0);
495
+ }
496
+ }), [["__scopeId", "data-v-844ceb5d"]]), we = { class: "ipd-dialog__header" }, Te = { class: "ipd-dialog__body" }, Ee = { class: "ipd-fieldset" }, De = { class: "ipd-legend" }, Oe = { class: "ipd-row" }, ke = { value: "align" }, Ae = { value: "offset" }, je = {
497
+ key: 0,
498
+ class: "ipd-row"
499
+ }, Me = { class: "ipd-label" }, Ne = { value: "left" }, Pe = { value: "center" }, Fe = { value: "right" }, Ie = {
500
+ key: 1,
501
+ class: "ipd-row"
502
+ }, Le = { class: "ipd-label" }, Re = { class: "ipd-row" }, ze = { class: "ipd-label" }, Be = { value: "page" }, Ve = { value: "column" }, He = { value: "margin" }, Ue = { value: "character" }, We = { class: "ipd-fieldset" }, Ge = { class: "ipd-legend" }, Ke = { class: "ipd-row" }, qe = { value: "align" }, Je = { value: "offset" }, Ye = {
503
+ key: 0,
504
+ class: "ipd-row"
505
+ }, Xe = { class: "ipd-label" }, Ze = { value: "top" }, Qe = { value: "center" }, $e = { value: "bottom" }, et = {
506
+ key: 1,
507
+ class: "ipd-row"
508
+ }, tt = { class: "ipd-label" }, nt = { class: "ipd-row" }, rt = { class: "ipd-label" }, it = { value: "page" }, at = { value: "margin" }, ot = { value: "paragraph" }, st = { value: "line" }, ct = { class: "ipd-fieldset" }, lt = { class: "ipd-row" }, ut = { class: "ipd-label" }, dt = {
509
+ class: "ipd-label",
510
+ style: { width: "60px" }
511
+ }, ft = { class: "ipd-row" }, pt = { class: "ipd-label" }, mt = {
512
+ class: "ipd-label",
513
+ style: { width: "60px" }
514
+ }, ht = { class: "ipd-dialog__footer" }, gt = /* @__PURE__ */ t(/* @__PURE__ */ c({
515
+ __name: "ImagePositionDialog",
516
+ props: {
517
+ isOpen: { type: Boolean },
518
+ currentData: {}
519
+ },
520
+ emits: ["close", "apply"],
521
+ setup(t, { emit: n }) {
522
+ let { t: r } = e(), s = t, c = n, l = p("align"), u = p("left"), f = p(0), m = p("column"), _ = p("align"), w = p("top"), T = p(0), E = p("paragraph"), D = p(0), O = p(0), k = p(0), A = p(0);
523
+ b(() => s.isOpen, (e) => {
524
+ if (!e) return;
525
+ let t = s.currentData;
526
+ t?.horizontal?.align ? (l.value = "align", u.value = t.horizontal.align) : t?.horizontal?.posOffset != null && (l.value = "offset", f.value = t.horizontal.posOffset), m.value = t?.horizontal?.relativeTo ?? "column", t?.vertical?.align ? (_.value = "align", w.value = t.vertical.align) : t?.vertical?.posOffset != null && (_.value = "offset", T.value = t.vertical.posOffset), E.value = t?.vertical?.relativeTo ?? "paragraph", D.value = t?.distTop ?? 0, O.value = t?.distBottom ?? 0, k.value = t?.distLeft ?? 0, A.value = t?.distRight ?? 0;
527
+ });
528
+ function j() {
529
+ c("apply", {
530
+ horizontal: {
531
+ relativeTo: m.value,
532
+ ...l.value === "align" ? { align: u.value } : { posOffset: f.value }
533
+ },
534
+ vertical: {
535
+ relativeTo: E.value,
536
+ ..._.value === "align" ? { align: w.value } : { posOffset: T.value }
537
+ },
538
+ distTop: D.value,
539
+ distBottom: O.value,
540
+ distLeft: k.value,
541
+ distRight: A.value
542
+ }), c("close");
543
+ }
544
+ return (e, n) => t.isOpen ? (d(), a("div", {
545
+ key: 0,
546
+ class: "ipd-overlay",
547
+ onMousedown: n[14] ||= C((t) => e.$emit("close"), ["self"])
548
+ }, [o("div", {
549
+ class: "ipd-dialog",
550
+ onKeydown: n[13] ||= S((t) => e.$emit("close"), ["escape"])
551
+ }, [
552
+ o("div", we, h(g(r)("dialogs.imagePosition.title")), 1),
553
+ o("div", Te, [
554
+ o("fieldset", Ee, [
555
+ o("legend", De, h(g(r)("dialogs.imagePosition.horizontal")), 1),
556
+ o("div", Oe, [n[15] ||= o("label", { class: "ipd-label" }, "Mode", -1), x(o("select", {
557
+ "onUpdate:modelValue": n[0] ||= (e) => l.value = e,
558
+ class: "ipd-select"
559
+ }, [o("option", ke, h(g(r)("dialogs.imagePosition.alignment")), 1), o("option", Ae, h(g(r)("dialogs.imagePosition.offset")), 1)], 512), [[v, l.value]])]),
560
+ l.value === "align" ? (d(), a("div", je, [o("label", Me, h(g(r)("dialogs.imagePosition.align")), 1), x(o("select", {
561
+ "onUpdate:modelValue": n[1] ||= (e) => u.value = e,
562
+ class: "ipd-select"
563
+ }, [
564
+ o("option", Ne, h(g(r)("dialogs.imagePosition.alignOptions.left")), 1),
565
+ o("option", Pe, h(g(r)("dialogs.imagePosition.alignOptions.center")), 1),
566
+ o("option", Fe, h(g(r)("dialogs.imagePosition.alignOptions.right")), 1)
567
+ ], 512), [[v, u.value]])])) : (d(), a("div", Ie, [o("label", Le, h(g(r)("dialogs.imagePosition.offsetPx")), 1), x(o("input", {
568
+ "onUpdate:modelValue": n[2] ||= (e) => f.value = e,
569
+ type: "number",
570
+ class: "ipd-input"
571
+ }, null, 512), [[
572
+ y,
573
+ f.value,
574
+ void 0,
575
+ { number: !0 }
576
+ ]])])),
577
+ o("div", Re, [o("label", ze, h(g(r)("dialogs.imagePosition.relativeTo")), 1), x(o("select", {
578
+ "onUpdate:modelValue": n[3] ||= (e) => m.value = e,
579
+ class: "ipd-select"
580
+ }, [
581
+ o("option", Be, h(g(r)("dialogs.imagePosition.relativeOptions.page")), 1),
582
+ o("option", Ve, h(g(r)("dialogs.imagePosition.relativeOptions.column")), 1),
583
+ o("option", He, h(g(r)("dialogs.imagePosition.relativeOptions.margin")), 1),
584
+ o("option", Ue, h(g(r)("dialogs.imagePosition.relativeOptions.character")), 1)
585
+ ], 512), [[v, m.value]])])
586
+ ]),
587
+ o("fieldset", We, [
588
+ o("legend", Ge, h(g(r)("dialogs.imagePosition.vertical")), 1),
589
+ o("div", Ke, [n[16] ||= o("label", { class: "ipd-label" }, "Mode", -1), x(o("select", {
590
+ "onUpdate:modelValue": n[4] ||= (e) => _.value = e,
591
+ class: "ipd-select"
592
+ }, [o("option", qe, h(g(r)("dialogs.imagePosition.alignment")), 1), o("option", Je, h(g(r)("dialogs.imagePosition.offset")), 1)], 512), [[v, _.value]])]),
593
+ _.value === "align" ? (d(), a("div", Ye, [o("label", Xe, h(g(r)("dialogs.imagePosition.align")), 1), x(o("select", {
594
+ "onUpdate:modelValue": n[5] ||= (e) => w.value = e,
595
+ class: "ipd-select"
596
+ }, [
597
+ o("option", Ze, h(g(r)("dialogs.imagePosition.alignOptions.top")), 1),
598
+ o("option", Qe, h(g(r)("dialogs.imagePosition.alignOptions.center")), 1),
599
+ o("option", $e, h(g(r)("dialogs.imagePosition.alignOptions.bottom")), 1)
600
+ ], 512), [[v, w.value]])])) : (d(), a("div", et, [o("label", tt, h(g(r)("dialogs.imagePosition.offsetPx")), 1), x(o("input", {
601
+ "onUpdate:modelValue": n[6] ||= (e) => T.value = e,
602
+ type: "number",
603
+ class: "ipd-input"
604
+ }, null, 512), [[
605
+ y,
606
+ T.value,
607
+ void 0,
608
+ { number: !0 }
609
+ ]])])),
610
+ o("div", nt, [o("label", rt, h(g(r)("dialogs.imagePosition.relativeTo")), 1), x(o("select", {
611
+ "onUpdate:modelValue": n[7] ||= (e) => E.value = e,
612
+ class: "ipd-select"
613
+ }, [
614
+ o("option", it, h(g(r)("dialogs.imagePosition.relativeOptions.page")), 1),
615
+ o("option", at, h(g(r)("dialogs.imagePosition.relativeOptions.margin")), 1),
616
+ o("option", ot, h(g(r)("dialogs.imagePosition.relativeOptions.paragraph")), 1),
617
+ o("option", st, h(g(r)("dialogs.imagePosition.relativeOptions.line")), 1)
618
+ ], 512), [[v, E.value]])])
619
+ ]),
620
+ o("fieldset", ct, [
621
+ n[17] ||= o("legend", { class: "ipd-legend" }, "Distance from text (px)", -1),
622
+ o("div", lt, [
623
+ o("label", ut, h(g(r)("dialogs.imagePosition.alignOptions.top")), 1),
624
+ x(o("input", {
625
+ "onUpdate:modelValue": n[8] ||= (e) => D.value = e,
626
+ type: "number",
627
+ class: "ipd-input",
628
+ min: "0"
629
+ }, null, 512), [[
630
+ y,
631
+ D.value,
632
+ void 0,
633
+ { number: !0 }
634
+ ]]),
635
+ o("label", dt, h(g(r)("dialogs.imagePosition.alignOptions.bottom")), 1),
636
+ x(o("input", {
637
+ "onUpdate:modelValue": n[9] ||= (e) => O.value = e,
638
+ type: "number",
639
+ class: "ipd-input",
640
+ min: "0"
641
+ }, null, 512), [[
642
+ y,
643
+ O.value,
644
+ void 0,
645
+ { number: !0 }
646
+ ]])
647
+ ]),
648
+ o("div", ft, [
649
+ o("label", pt, h(g(r)("dialogs.imagePosition.alignOptions.left")), 1),
650
+ x(o("input", {
651
+ "onUpdate:modelValue": n[10] ||= (e) => k.value = e,
652
+ type: "number",
653
+ class: "ipd-input",
654
+ min: "0"
655
+ }, null, 512), [[
656
+ y,
657
+ k.value,
658
+ void 0,
659
+ { number: !0 }
660
+ ]]),
661
+ o("label", mt, h(g(r)("dialogs.imagePosition.alignOptions.right")), 1),
662
+ x(o("input", {
663
+ "onUpdate:modelValue": n[11] ||= (e) => A.value = e,
664
+ type: "number",
665
+ class: "ipd-input",
666
+ min: "0"
667
+ }, null, 512), [[
668
+ y,
669
+ A.value,
670
+ void 0,
671
+ { number: !0 }
672
+ ]])
673
+ ])
674
+ ])
675
+ ]),
676
+ o("div", ht, [o("button", {
677
+ class: "ipd-btn",
678
+ onClick: n[12] ||= (t) => e.$emit("close")
679
+ }, h(g(r)("common.cancel")), 1), o("button", {
680
+ class: "ipd-btn ipd-btn--primary",
681
+ onClick: j
682
+ }, h(g(r)("common.apply")), 1)])
683
+ ], 32)], 32)) : i("", !0);
684
+ }
685
+ }), [["__scopeId", "data-v-e4b95370"]]), J = f({
686
+ rows: 3,
687
+ cols: 3
688
+ }), _t = { class: "dialog__header" }, vt = { class: "dialog__title" }, yt = ["title"], bt = { class: "dialog__body" }, xt = ["aria-label"], St = ["onMouseenter", "onMousedown"], Ct = { class: "table-grid__label" }, wt = { class: "dialog__separator" }, Tt = { class: "table-manual" }, Et = { class: "table-manual__field" }, Dt = { class: "table-manual__field" }, Ot = { class: "table-options" }, kt = { class: "table-options__radio" }, At = { class: "table-options__radio" }, jt = { class: "table-options" }, Mt = { class: "table-options__label" }, Nt = { class: "dialog__footer" }, Pt = ["disabled"], Ft = 8, It = 10, Y = 1, X = 100, Z = 1, Q = 20, Lt = /* @__PURE__ */ t(/* @__PURE__ */ c({
689
+ __name: "InsertTableDialog",
690
+ props: { isOpen: { type: Boolean } },
691
+ emits: ["close", "insert"],
692
+ setup(t, { emit: c }) {
693
+ let { t: u } = e(), f = t, v = c, S = p(0), w = p(0), T = p(J.rows), E = p(J.cols), D = p("fixed"), O = p(null);
694
+ b(() => f.isOpen, (e) => {
695
+ e && (T.value = J.rows, E.value = J.cols, S.value = 0, w.value = 0);
696
+ });
697
+ let k = r(() => Number.parseInt(String(T.value), 10)), A = r(() => Number.parseInt(String(E.value), 10)), j = r(() => Number.isFinite(k.value) && k.value >= Y && k.value <= X), M = r(() => Number.isFinite(A.value) && A.value >= Z && A.value <= Q), N = r(() => j.value && M.value);
698
+ function P() {
699
+ v("close");
700
+ }
701
+ function F(e, t) {
702
+ S.value = e, w.value = t, T.value = e, E.value = t;
703
+ }
704
+ function L(e) {
705
+ O.value = O.value === e ? null : e;
706
+ }
707
+ function R(e) {
708
+ e.key === "Escape" ? P() : e.key === "Enter" && (e.preventDefault(), z());
709
+ }
710
+ function z() {
711
+ if (!N.value) return;
712
+ let e = Math.min(Math.max(Y, k.value), X), t = Math.min(Math.max(Z, A.value), Q);
713
+ J.rows = e, J.cols = t, v("insert", {
714
+ rows: e,
715
+ cols: t,
716
+ autofit: D.value === "autofit",
717
+ styleId: O.value
718
+ }), P();
719
+ }
720
+ return (e, r) => t.isOpen ? (d(), a("div", {
721
+ key: 0,
722
+ class: "dialog-overlay",
723
+ onMousedown: C(P, ["self"])
724
+ }, [o("div", {
725
+ class: "dialog",
726
+ onMousedown: r[6] ||= C(() => {}, ["stop"]),
727
+ onKeydown: C(R, ["stop"])
728
+ }, [
729
+ o("div", _t, [o("span", vt, h(g(u)("dialogs.insertTable.title")), 1), o("button", {
730
+ class: "dialog__close",
731
+ title: g(u)("common.closeDialog"),
732
+ onClick: P
733
+ }, "✕", 8, yt)]),
734
+ o("div", bt, [
735
+ o("div", {
736
+ class: "table-grid",
737
+ "aria-label": g(u)("dialogs.insertTable.sizeSelector"),
738
+ onMouseleave: r[0] ||= (e) => {
739
+ S.value = 0, w.value = 0;
740
+ }
741
+ }, [(d(), a(n, null, m(Ft, (e) => o("div", {
742
+ key: e,
743
+ class: "table-grid__row"
744
+ }, [(d(), a(n, null, m(It, (t) => o("div", {
745
+ key: t,
746
+ class: l(["table-grid__cell", { highlight: e <= S.value && t <= w.value }]),
747
+ onMouseenter: (n) => {
748
+ S.value = e, w.value = t;
749
+ },
750
+ onMousedown: C((n) => F(e, t), ["prevent"])
751
+ }, null, 42, St)), 64))])), 64))], 40, xt),
752
+ o("div", Ct, h(S.value > 0 ? g(u)("dialogs.insertTable.tableSize", {
753
+ cols: w.value,
754
+ rows: S.value
755
+ }) : g(u)("dialogs.insertTable.hoverToSelect")), 1),
756
+ o("div", wt, [o("span", null, h(g(u)("dialogs.insertTable.orSpecifySize")), 1)]),
757
+ o("div", Tt, [o("label", Et, [o("span", null, h(g(u)("dialogs.insertTable.rowsLabel")), 1), x(o("input", {
758
+ "onUpdate:modelValue": r[1] ||= (e) => T.value = e,
759
+ type: "number",
760
+ min: Y,
761
+ max: X,
762
+ class: l(["table-manual__input", { "table-manual__input--invalid": !j.value }])
763
+ }, null, 2), [[y, T.value]])]), o("label", Dt, [o("span", null, h(g(u)("dialogs.insertTable.columnsLabel")), 1), x(o("input", {
764
+ "onUpdate:modelValue": r[2] ||= (e) => E.value = e,
765
+ type: "number",
766
+ min: Z,
767
+ max: Q,
768
+ class: l(["table-manual__input", { "table-manual__input--invalid": !M.value }])
769
+ }, null, 2), [[y, E.value]])])]),
770
+ o("div", { class: l(["table-manual__hint", { "table-manual__hint--error": !N.value }]) }, h(g(u)("dialogs.insertTable.validationHint", {
771
+ minRows: Y,
772
+ maxRows: X,
773
+ minCols: Z,
774
+ maxCols: Q
775
+ })), 3),
776
+ o("fieldset", Ot, [
777
+ o("legend", null, h(g(u)("dialogs.insertTable.columnWidthLabel")), 1),
778
+ o("label", kt, [x(o("input", {
779
+ type: "radio",
780
+ value: "fixed",
781
+ "onUpdate:modelValue": r[3] ||= (e) => D.value = e
782
+ }, null, 512), [[_, D.value]]), o("span", null, h(g(u)("dialogs.insertTable.fixedWidth")), 1)]),
783
+ o("label", At, [x(o("input", {
784
+ type: "radio",
785
+ value: "autofit",
786
+ "onUpdate:modelValue": r[4] ||= (e) => D.value = e
787
+ }, null, 512), [[_, D.value]]), o("span", null, h(g(u)("dialogs.insertTable.autofit")), 1)])
788
+ ]),
789
+ o("div", jt, [o("div", Mt, h(g(u)("dialogs.insertTable.tableStyleLabel")), 1), s(I, {
790
+ "current-style-id": O.value,
791
+ onApply: L
792
+ }, null, 8, ["current-style-id"])])
793
+ ]),
794
+ o("div", Nt, [o("button", {
795
+ class: "dialog__btn",
796
+ onMousedown: C(P, ["prevent"])
797
+ }, h(g(u)("common.cancel")), 33), o("button", {
798
+ class: "dialog__btn dialog__btn--primary",
799
+ disabled: !N.value,
800
+ onMousedown: r[5] ||= C((e) => z(), ["prevent"])
801
+ }, h(g(u)("dialogs.insertTable.insertButton")), 41, Pt)])
802
+ ], 32)], 32)) : i("", !0);
803
+ }
804
+ }), [["__scopeId", "data-v-c5d6a186"]]), Rt = { class: "psd-dialog__header" }, zt = { class: "psd-dialog__body" }, Bt = {
805
+ key: 0,
806
+ class: "psd-preview"
807
+ }, Vt = { class: "psd-preview__label" }, Ht = { class: "psd-preview__text" }, Ut = { class: "psd-options" }, Wt = { class: "psd-option__info" }, Gt = { class: "psd-option__name" }, Kt = { class: "psd-option__desc" }, qt = { class: "psd-option__info" }, Jt = { class: "psd-option__name" }, Yt = { class: "psd-option__desc" }, Xt = { class: "psd-dialog__footer" }, Zt = /* @__PURE__ */ t(/* @__PURE__ */ c({
808
+ __name: "PasteSpecialDialog",
809
+ props: { isOpen: { type: Boolean } },
810
+ emits: ["close", "paste"],
811
+ setup(t, { emit: n }) {
812
+ let { t: r } = e(), s = t, c = n, u = p("formatted"), f = p("");
813
+ b(() => s.isOpen, async (e) => {
814
+ if (e) {
815
+ u.value = "formatted";
816
+ try {
817
+ let e = await navigator.clipboard.readText();
818
+ f.value = e.length > 80 ? e.slice(0, 80) + "..." : e;
819
+ } catch {
820
+ f.value = "";
821
+ }
822
+ }
823
+ });
824
+ function m() {
825
+ c("paste", u.value), c("close");
826
+ }
827
+ return (e, n) => t.isOpen ? (d(), a("div", {
828
+ key: 0,
829
+ class: "psd-overlay",
830
+ onMousedown: n[4] ||= C((t) => e.$emit("close"), ["self"])
831
+ }, [o("div", {
832
+ class: "psd-dialog",
833
+ onKeydown: [n[3] ||= S((t) => e.$emit("close"), ["escape"]), S(m, ["enter"])]
834
+ }, [
835
+ o("div", Rt, h(g(r)("dialogs.pasteSpecial.title")), 1),
836
+ o("div", zt, [f.value ? (d(), a("div", Bt, [o("span", Vt, h(g(r)("dialogs.pasteSpecial.preview")), 1), o("span", Ht, h(f.value), 1)])) : i("", !0), o("div", Ut, [o("label", { class: l(["psd-option", { "psd-option--selected": u.value === "formatted" }]) }, [x(o("input", {
837
+ type: "radio",
838
+ "onUpdate:modelValue": n[0] ||= (e) => u.value = e,
839
+ value: "formatted"
840
+ }, null, 512), [[_, u.value]]), o("div", Wt, [o("span", Gt, h(g(r)("dialogs.pasteSpecial.keepFormatting")), 1), o("span", Kt, h(g(r)("dialogs.pasteSpecial.keepFormattingDescription")), 1)])], 2), o("label", { class: l(["psd-option", { "psd-option--selected": u.value === "plain" }]) }, [x(o("input", {
841
+ type: "radio",
842
+ "onUpdate:modelValue": n[1] ||= (e) => u.value = e,
843
+ value: "plain"
844
+ }, null, 512), [[_, u.value]]), o("div", qt, [o("span", Jt, h(g(r)("dialogs.pasteSpecial.plainText")), 1), o("span", Yt, h(g(r)("dialogs.pasteSpecial.plainTextDescription")), 1)])], 2)])]),
845
+ o("div", Xt, [o("button", {
846
+ class: "psd-btn",
847
+ onClick: n[2] ||= (t) => e.$emit("close")
848
+ }, h(g(r)("common.cancel")), 1), o("button", {
849
+ class: "psd-btn psd-btn--primary",
850
+ onClick: m
851
+ }, h(g(r)("contextMenu.paste")), 1)])
852
+ ], 32)], 32)) : i("", !0);
853
+ }
854
+ }), [["__scopeId", "data-v-f9acd08d"]]), Qt = { class: "docx-split-cell__dialog" }, $t = { class: "docx-split-cell__header" }, en = { class: "docx-split-cell__body" }, tn = { class: "docx-split-cell__row" }, nn = { class: "docx-split-cell__label" }, rn = ["min", "onKeydown"], an = { class: "docx-split-cell__row" }, on = { class: "docx-split-cell__label" }, sn = ["min", "onKeydown"], cn = { class: "docx-split-cell__footer" }, $ = ["disabled"], ln = /* @__PURE__ */ t(/* @__PURE__ */ c({
855
+ __name: "SplitCellDialog",
856
+ props: {
857
+ isOpen: { type: Boolean },
858
+ initialRows: { default: 1 },
859
+ initialCols: { default: 2 },
860
+ minRows: { default: 1 },
861
+ minCols: { default: 1 }
862
+ },
863
+ emits: ["close", "apply"],
864
+ setup(t, { emit: n }) {
865
+ let { t: s } = e(), c = t, l = n, u = p(c.initialRows), f = p(c.initialCols);
866
+ b(() => c.isOpen, (e) => {
867
+ e && (u.value = c.initialRows, f.value = c.initialCols);
868
+ });
869
+ let m = r(() => Number.isFinite(u.value) && Number.isFinite(f.value) && u.value >= c.minRows && f.value >= c.minCols && u.value * f.value > 1);
870
+ function _() {
871
+ m.value && l("apply", u.value, f.value);
872
+ }
873
+ return (e, n) => t.isOpen ? (d(), a("div", {
874
+ key: 0,
875
+ class: "docx-split-cell",
876
+ onClick: n[3] ||= C((t) => e.$emit("close"), ["self"])
877
+ }, [o("div", Qt, [
878
+ o("div", $t, h(g(s)("dialogs.splitCell.title")), 1),
879
+ o("div", en, [o("label", tn, [o("span", nn, h(g(s)("dialogs.splitCell.rowsLabel")), 1), x(o("input", {
880
+ "onUpdate:modelValue": n[0] ||= (e) => u.value = e,
881
+ type: "number",
882
+ class: "docx-split-cell__input",
883
+ min: t.minRows,
884
+ max: 20,
885
+ onKeydown: S(C(_, ["prevent"]), ["enter"])
886
+ }, null, 40, rn), [[
887
+ y,
888
+ u.value,
889
+ void 0,
890
+ { number: !0 }
891
+ ]])]), o("label", an, [o("span", on, h(g(s)("dialogs.splitCell.columnsLabel")), 1), x(o("input", {
892
+ "onUpdate:modelValue": n[1] ||= (e) => f.value = e,
893
+ type: "number",
894
+ class: "docx-split-cell__input",
895
+ min: t.minCols,
896
+ max: 20,
897
+ onKeydown: S(C(_, ["prevent"]), ["enter"])
898
+ }, null, 40, sn), [[
899
+ y,
900
+ f.value,
901
+ void 0,
902
+ { number: !0 }
903
+ ]])])]),
904
+ o("div", cn, [o("button", {
905
+ class: "docx-split-cell__cancel",
906
+ onClick: n[2] ||= (t) => e.$emit("close")
907
+ }, h(g(s)("common.cancel")), 1), o("button", {
908
+ class: "docx-split-cell__apply",
909
+ disabled: !m.value,
910
+ onClick: _
911
+ }, h(g(s)("common.apply")), 9, $)])
912
+ ])])) : i("", !0);
913
+ }
914
+ }), [["__scopeId", "data-v-84657fc7"]]), un = { class: "tpd-dialog__header" }, dn = { class: "tpd-dialog__body" }, fn = { class: "tpd-row" }, pn = { class: "tpd-label" }, mn = { value: "auto" }, hn = { value: "dxa" }, gn = { value: "pct" }, _n = {
915
+ key: 0,
916
+ class: "tpd-row"
917
+ }, vn = { class: "tpd-label" }, yn = ["step"], bn = { class: "tpd-unit" }, xn = { class: "tpd-row" }, Sn = { class: "tpd-label" }, Cn = { value: "left" }, wn = { value: "center" }, Tn = { value: "right" }, En = { class: "tpd-dialog__footer" }, Dn = /* @__PURE__ */ t(/* @__PURE__ */ c({
918
+ __name: "TablePropertiesDialog",
919
+ props: {
920
+ isOpen: { type: Boolean },
921
+ currentProps: {}
922
+ },
923
+ emits: ["close", "apply"],
924
+ setup(t, { emit: n }) {
925
+ let { t: r } = e(), s = t, c = n, l = p(0), u = p("auto"), f = p("left");
926
+ b(() => s.isOpen, (e) => {
927
+ e && (l.value = s.currentProps?.width ?? 0, u.value = s.currentProps?.widthType ?? "auto", f.value = s.currentProps?.justification ?? "left");
928
+ });
929
+ function m() {
930
+ let e = { justification: f.value };
931
+ u.value === "auto" ? (e.width = null, e.widthType = "auto") : (e.width = l.value, e.widthType = u.value), c("apply", e), c("close");
932
+ }
933
+ return (e, n) => t.isOpen ? (d(), a("div", {
934
+ key: 0,
935
+ class: "tpd-overlay",
936
+ onMousedown: n[5] ||= C((t) => e.$emit("close"), ["self"])
937
+ }, [o("div", {
938
+ class: "tpd-dialog",
939
+ onKeydown: [n[4] ||= S((t) => e.$emit("close"), ["escape"]), S(m, ["enter"])]
940
+ }, [
941
+ o("div", un, h(g(r)("dialogs.tableProperties.title")), 1),
942
+ o("div", dn, [
943
+ o("div", fn, [o("label", pn, h(g(r)("dialogs.tableProperties.widthType")), 1), x(o("select", {
944
+ "onUpdate:modelValue": n[0] ||= (e) => u.value = e,
945
+ class: "tpd-select"
946
+ }, [
947
+ o("option", mn, h(g(r)("dialogs.tableProperties.widthTypes.auto")), 1),
948
+ o("option", hn, h(g(r)("dialogs.tableProperties.widthTypes.fixed")), 1),
949
+ o("option", gn, h(g(r)("dialogs.tableProperties.widthTypes.percentage")), 1)
950
+ ], 512), [[v, u.value]])]),
951
+ u.value === "auto" ? i("", !0) : (d(), a("div", _n, [
952
+ o("label", vn, h(g(r)("dialogs.tableProperties.widthLabel")), 1),
953
+ x(o("input", {
954
+ "onUpdate:modelValue": n[1] ||= (e) => l.value = e,
955
+ type: "number",
956
+ class: "tpd-input",
957
+ min: 0,
958
+ step: u.value === "pct" ? 5 : 100
959
+ }, null, 8, yn), [[
960
+ y,
961
+ l.value,
962
+ void 0,
963
+ { number: !0 }
964
+ ]]),
965
+ o("span", bn, h(u.value === "pct" ? g(r)("dialogs.tableProperties.units.fiftiethsPercent") : g(r)("dialogs.tableProperties.units.twips")), 1)
966
+ ])),
967
+ o("div", xn, [o("label", Sn, h(g(r)("dialogs.tableProperties.alignmentLabel")), 1), x(o("select", {
968
+ "onUpdate:modelValue": n[2] ||= (e) => f.value = e,
969
+ class: "tpd-select"
970
+ }, [
971
+ o("option", Cn, h(g(r)("dialogs.tableProperties.alignOptions.left")), 1),
972
+ o("option", wn, h(g(r)("dialogs.tableProperties.alignOptions.center")), 1),
973
+ o("option", Tn, h(g(r)("dialogs.tableProperties.alignOptions.right")), 1)
974
+ ], 512), [[v, f.value]])])
975
+ ]),
976
+ o("div", En, [o("button", {
977
+ class: "tpd-btn",
978
+ onClick: n[3] ||= (t) => e.$emit("close")
979
+ }, h(g(r)("common.cancel")), 1), o("button", {
980
+ class: "tpd-btn tpd-btn--primary",
981
+ onClick: m
982
+ }, h(g(r)("common.apply")), 1)])
983
+ ], 32)], 32)) : i("", !0);
984
+ }
985
+ }), [["__scopeId", "data-v-2dbea6ed"]]);
986
+ //#endregion
987
+ export { gt as a, Lt as i, ln as n, Ce as o, Zt as r, I as s, Dn as t };