@guodun/antdv 1.4.1 → 1.4.2

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 (116) hide show
  1. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerInspector.vue.mjs +208 -180
  2. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerSidebar.vue.mjs +2 -1
  3. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerToolbar.mjs +5 -0
  4. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerToolbar.vue.mjs +690 -0
  5. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerWorkspaceHeader.mjs +5 -0
  6. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerWorkspaceHeader.vue.mjs +215 -0
  7. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateImageContextMenu.mjs +5 -0
  8. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateImageContextMenu.vue.mjs +87 -0
  9. package/dist/es/components/pro-contract-template-designer/src/ContractTemplatePageDecorations.mjs +5 -0
  10. package/dist/es/components/pro-contract-template-designer/src/ContractTemplatePageDecorations.vue.mjs +98 -0
  11. package/dist/es/components/pro-contract-template-designer/src/ContractTemplatePageDecorationsInspector.mjs +5 -0
  12. package/dist/es/components/pro-contract-template-designer/src/ContractTemplatePageDecorationsInspector.vue.mjs +550 -0
  13. package/dist/es/components/pro-contract-template-designer/src/ContractTemplatePageDecorationsStudio.mjs +5 -0
  14. package/dist/es/components/pro-contract-template-designer/src/ContractTemplatePageDecorationsStudio.vue.mjs +117 -0
  15. package/dist/es/components/pro-contract-template-designer/src/ContractTemplatePreviewModal.mjs +5 -0
  16. package/dist/es/components/pro-contract-template-designer/src/ContractTemplatePreviewModal.vue.mjs +96 -0
  17. package/dist/es/components/pro-contract-template-designer/src/ContractTemplatePreviewPage.vue.mjs +51 -26
  18. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateRendererPage.vue.mjs +56 -33
  19. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateSubmitDataModal.mjs +5 -0
  20. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateSubmitDataModal.vue.mjs +29 -0
  21. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateTextContextMenu.mjs +5 -0
  22. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateTextContextMenu.vue.mjs +390 -0
  23. package/dist/es/components/pro-contract-template-designer/src/DesignerPage.vue.mjs +313 -267
  24. package/dist/es/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.mjs +1278 -2293
  25. package/dist/es/components/pro-contract-template-designer/src/composables/use-auto-pagination.mjs +71 -0
  26. package/dist/es/components/pro-contract-template-designer/src/composables/use-designer-files.mjs +11 -0
  27. package/dist/es/components/pro-contract-template-designer/src/composables/use-draft-cache-session.mjs +111 -0
  28. package/dist/es/components/pro-contract-template-designer/src/composables/use-signing-placement-editor.mjs +79 -0
  29. package/dist/es/components/pro-contract-template-designer/src/composables/use-template-designer.mjs +189 -160
  30. package/dist/es/components/pro-contract-template-designer/src/composables/use-template-files.mjs +35 -22
  31. package/dist/es/components/pro-contract-template-designer/src/composables/use-toolbar-overflow.mjs +71 -0
  32. package/dist/es/components/pro-contract-template-designer/src/constants.mjs +71 -10
  33. package/dist/es/components/pro-contract-template-designer/src/extensions/editor-extensions.mjs +1 -0
  34. package/dist/es/components/pro-contract-template-designer/src/utils/block-style.mjs +43 -0
  35. package/dist/es/components/pro-contract-template-designer/src/utils/context-menu-viewport.mjs +13 -0
  36. package/dist/es/components/pro-contract-template-designer/src/utils/editor-state.mjs +7 -0
  37. package/dist/es/components/pro-contract-template-designer/src/utils/page-decorations.mjs +398 -0
  38. package/dist/es/components/pro-contract-template-designer/src/utils/serialize-fingerprint.mjs +6 -0
  39. package/dist/es/components/pro-contract-template-designer/src/utils/template-renderer.mjs +88 -72
  40. package/dist/es/components/pro-contract-template-designer/style/index.css +1 -1
  41. package/dist/es/index.mjs +20 -20
  42. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerInspector.vue.cjs +1 -1
  43. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerSidebar.vue.cjs +1 -1
  44. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerToolbar.cjs +1 -0
  45. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerToolbar.vue.cjs +1 -0
  46. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerWorkspaceHeader.cjs +1 -0
  47. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerWorkspaceHeader.vue.cjs +1 -0
  48. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateImageContextMenu.cjs +1 -0
  49. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateImageContextMenu.vue.cjs +1 -0
  50. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplatePageDecorations.cjs +1 -0
  51. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplatePageDecorations.vue.cjs +1 -0
  52. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplatePageDecorationsInspector.cjs +1 -0
  53. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplatePageDecorationsInspector.vue.cjs +1 -0
  54. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplatePageDecorationsStudio.cjs +1 -0
  55. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplatePageDecorationsStudio.vue.cjs +1 -0
  56. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplatePreviewModal.cjs +1 -0
  57. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplatePreviewModal.vue.cjs +1 -0
  58. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplatePreviewPage.vue.cjs +1 -1
  59. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateRendererPage.vue.cjs +1 -1
  60. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateSubmitDataModal.cjs +1 -0
  61. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateSubmitDataModal.vue.cjs +1 -0
  62. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateTextContextMenu.cjs +1 -0
  63. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateTextContextMenu.vue.cjs +1 -0
  64. package/dist/lib/components/pro-contract-template-designer/src/DesignerPage.vue.cjs +2 -2
  65. package/dist/lib/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.cjs +1 -1
  66. package/dist/lib/components/pro-contract-template-designer/src/composables/use-auto-pagination.cjs +1 -0
  67. package/dist/lib/components/pro-contract-template-designer/src/composables/use-designer-files.cjs +1 -0
  68. package/dist/lib/components/pro-contract-template-designer/src/composables/use-draft-cache-session.cjs +1 -0
  69. package/dist/lib/components/pro-contract-template-designer/src/composables/use-signing-placement-editor.cjs +1 -0
  70. package/dist/lib/components/pro-contract-template-designer/src/composables/use-template-designer.cjs +4 -4
  71. package/dist/lib/components/pro-contract-template-designer/src/composables/use-template-files.cjs +2 -2
  72. package/dist/lib/components/pro-contract-template-designer/src/composables/use-toolbar-overflow.cjs +1 -0
  73. package/dist/lib/components/pro-contract-template-designer/src/constants.cjs +1 -1
  74. package/dist/lib/components/pro-contract-template-designer/src/extensions/editor-extensions.cjs +1 -1
  75. package/dist/lib/components/pro-contract-template-designer/src/utils/block-style.cjs +1 -0
  76. package/dist/lib/components/pro-contract-template-designer/src/utils/context-menu-viewport.cjs +1 -0
  77. package/dist/lib/components/pro-contract-template-designer/src/utils/editor-state.cjs +1 -0
  78. package/dist/lib/components/pro-contract-template-designer/src/utils/page-decorations.cjs +1 -0
  79. package/dist/lib/components/pro-contract-template-designer/src/utils/serialize-fingerprint.cjs +1 -0
  80. package/dist/lib/components/pro-contract-template-designer/src/utils/template-renderer.cjs +3 -3
  81. package/dist/lib/components/pro-contract-template-designer/style/index.css +1 -1
  82. package/dist/lib/index.cjs +1 -1
  83. package/dist/theme/icon.css +1 -1
  84. package/dist/theme/index.css +1 -1
  85. package/dist/types/components/pro-contract-template-designer/src/ContractTemplateDesignerInspector.vue.d.ts +3 -0
  86. package/dist/types/components/pro-contract-template-designer/src/ContractTemplateDesignerSidebar.vue.d.ts +1 -0
  87. package/dist/types/components/pro-contract-template-designer/src/ContractTemplateDesignerToolbar.vue.d.ts +104 -0
  88. package/dist/types/components/pro-contract-template-designer/src/ContractTemplateDesignerWorkspaceHeader.vue.d.ts +50 -0
  89. package/dist/types/components/pro-contract-template-designer/src/ContractTemplateImageContextMenu.vue.d.ts +27 -0
  90. package/dist/types/components/pro-contract-template-designer/src/ContractTemplatePageDecorations.vue.d.ts +13 -0
  91. package/dist/types/components/pro-contract-template-designer/src/ContractTemplatePageDecorationsInspector.vue.d.ts +28 -0
  92. package/dist/types/components/pro-contract-template-designer/src/ContractTemplatePageDecorationsStudio.vue.d.ts +77 -0
  93. package/dist/types/components/pro-contract-template-designer/src/ContractTemplatePreviewModal.vue.d.ts +36 -0
  94. package/dist/types/components/pro-contract-template-designer/src/ContractTemplatePreviewPage.vue.d.ts +5 -1
  95. package/dist/types/components/pro-contract-template-designer/src/ContractTemplateRendererHeader.vue.d.ts +4 -4
  96. package/dist/types/components/pro-contract-template-designer/src/ContractTemplateRendererToolbar.vue.d.ts +4 -4
  97. package/dist/types/components/pro-contract-template-designer/src/ContractTemplateSubmitDataModal.vue.d.ts +12 -0
  98. package/dist/types/components/pro-contract-template-designer/src/ContractTemplateTextContextMenu.vue.d.ts +77 -0
  99. package/dist/types/components/pro-contract-template-designer/src/DesignerPage.vue.d.ts +8 -32
  100. package/dist/types/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.d.ts +366 -12
  101. package/dist/types/components/pro-contract-template-designer/src/composables/use-auto-pagination.d.ts +43 -0
  102. package/dist/types/components/pro-contract-template-designer/src/composables/use-designer-files.d.ts +22 -0
  103. package/dist/types/components/pro-contract-template-designer/src/composables/use-draft-cache-session.d.ts +41 -0
  104. package/dist/types/components/pro-contract-template-designer/src/composables/use-signing-placement-editor.d.ts +49 -0
  105. package/dist/types/components/pro-contract-template-designer/src/composables/use-template-designer.d.ts +15 -1
  106. package/dist/types/components/pro-contract-template-designer/src/composables/use-template-files.d.ts +13 -0
  107. package/dist/types/components/pro-contract-template-designer/src/composables/use-toolbar-overflow.d.ts +19 -0
  108. package/dist/types/components/pro-contract-template-designer/src/constants.d.ts +7 -1
  109. package/dist/types/components/pro-contract-template-designer/src/types.d.ts +89 -0
  110. package/dist/types/components/pro-contract-template-designer/src/utils/block-style.d.ts +4 -0
  111. package/dist/types/components/pro-contract-template-designer/src/utils/context-menu-viewport.d.ts +22 -0
  112. package/dist/types/components/pro-contract-template-designer/src/utils/editor-state.d.ts +8 -0
  113. package/dist/types/components/pro-contract-template-designer/src/utils/page-decorations.d.ts +90 -0
  114. package/dist/types/components/pro-contract-template-designer/src/utils/serialize-fingerprint.d.ts +8 -0
  115. package/dist/types/components/pro-contract-template-designer/src/utils/template-renderer.d.ts +4 -1
  116. package/package.json +1 -1
@@ -0,0 +1,71 @@
1
+ import { createBlankPage as e } from "./use-template-designer.mjs";
2
+ import { nextTick as t } from "vue";
3
+ //#region src/components/pro-contract-template-designer/src/composables/use-auto-pagination.ts
4
+ function n(e) {
5
+ return {
6
+ type: "doc",
7
+ content: e.length ? e : [{ type: "paragraph" }]
8
+ };
9
+ }
10
+ function r(e) {
11
+ return e.replace(/<p>\s*(<br>)?\s*<\/p>/gi, "").trim().length === 0;
12
+ }
13
+ function i(e, t, i) {
14
+ let a = e.contentJson?.content, o = [...t, ...a?.length ? a : []], s = r(e.contentHtml || "") ? "" : e.contentHtml;
15
+ return {
16
+ ...e,
17
+ contentHtml: `${i}${s}`,
18
+ contentJson: n(o)
19
+ };
20
+ }
21
+ function a(r) {
22
+ function a(e = r.activePageId.value) {
23
+ if (r.readonlyState.value) return;
24
+ let n = r.templateValue.value.pages.findIndex((e) => e.id === r.pendingPaginationPageId.value), i = r.templateValue.value.pages.findIndex((t) => t.id === e);
25
+ (!r.pendingPaginationPageId.value || n < 0 || i >= 0 && i < n) && (r.pendingPaginationPageId.value = e), !r.isAutoPaginating.value && t(() => o());
26
+ }
27
+ async function o() {
28
+ if (!r.isAutoPaginating.value) {
29
+ r.isAutoPaginating.value = !0;
30
+ try {
31
+ let a = r.pendingPaginationPageId.value;
32
+ r.pendingPaginationPageId.value = "";
33
+ let o = 0, s = Math.max(40, r.normalizedMaxPages.value + 1);
34
+ for (; o < s;) {
35
+ await t();
36
+ let s = r.syncPageEditors().pages, c = Math.max(0, s.findIndex((e) => e.id === a)), l = !1;
37
+ for (let t = c; t < s.length; t += 1) {
38
+ let o = s[t];
39
+ if (t === s.length - 1 && s.length >= r.normalizedMaxPages.value && r.pageRefs.get(o.id)?.hasOverflowContent()) {
40
+ r.notifyPageLimit("auto-pagination");
41
+ break;
42
+ }
43
+ let c = r.pageRefs.get(o.id)?.splitOverflowContent();
44
+ if (!c) continue;
45
+ let u = r.syncPageEditors().pages, d = u.findIndex((e) => e.id === o.id);
46
+ if (d < 0) break;
47
+ u[d] = c.page;
48
+ let f = u[d + 1];
49
+ f ? u[d + 1] = r.pageRefs.get(f.id)?.prependContent(c.overflowContent) ?? i(f, c.overflowContent, c.overflowHtml) : u.push(e(u.length + 1, r.getPageSize(c.page), c.overflowHtml, n(c.overflowContent))), r.commitBodyChange({
50
+ ...r.templateValue.value,
51
+ pages: u
52
+ }), a = u[d + 1]?.id ?? c.page.id, l = !0;
53
+ break;
54
+ }
55
+ if (!l) break;
56
+ o += 1;
57
+ }
58
+ } finally {
59
+ r.isAutoPaginating.value = !1, r.pendingPaginationPageId.value && t(() => o());
60
+ }
61
+ }
62
+ }
63
+ return {
64
+ scheduleAutoPaginate: a,
65
+ runAutoPagination: o,
66
+ createDocContent: n,
67
+ prependOverflowToPageData: i
68
+ };
69
+ }
70
+ //#endregion
71
+ export { a as useAutoPagination };
@@ -0,0 +1,11 @@
1
+ //#region src/components/pro-contract-template-designer/src/composables/use-designer-files.ts
2
+ function e(e = {}) {
3
+ return {
4
+ syncCurrent: e.syncCurrent ?? !0,
5
+ shouldEmit: e.shouldEmit ?? !0,
6
+ forceRefresh: e.forceRefresh ?? !1,
7
+ persistCurrentErrors: e.persistCurrentErrors ?? !0
8
+ };
9
+ }
10
+ //#endregion
11
+ export { e as resolveSetActiveFileIdOptions };
@@ -0,0 +1,111 @@
1
+ import { cloneTemplateValue as e, normalizeTemplateValue as t } from "./use-template-designer.mjs";
2
+ import { clearTemplateDraftCache as n, createDraftCacheStatus as r, getBrowserDraftCacheStorage as i, isBlankTemplateDraftValue as a, isBlankTemplateFilesDraftValue as o, loadTemplateDraftCache as s, loadTemplateFilesDraftCache as c, saveTemplateDraftCache as l, saveTemplateFilesDraftCache as u } from "./use-template-draft-cache.mjs";
3
+ import { cloneContractTemplateFiles as d, constrainContractTemplateFiles as f, normalizeContractTemplateFiles as p, resolveContractTemplateActiveFileId as m } from "./use-template-files.mjs";
4
+ import { onBeforeUnmount as h } from "vue";
5
+ //#region src/components/pro-contract-template-designer/src/composables/use-draft-cache-session.ts
6
+ function g(g) {
7
+ let _ = "", v;
8
+ function y() {
9
+ return g.draftCacheKey.value || "gd-antdv:pro-contract-template-designer:draft";
10
+ }
11
+ function b() {
12
+ return Number(g.draftCacheMaxBytes()) || 2097152;
13
+ }
14
+ function x() {
15
+ if (!g.draftCacheWritable.value) {
16
+ let e = r("unavailable", "草稿缓存未启用");
17
+ return g.updateDraftCacheStatus(e), e;
18
+ }
19
+ let t = i();
20
+ g.multipleFilesMode.value && g.syncActiveFileSnapshot(!1);
21
+ let n = g.multipleFilesMode.value ? u({
22
+ storage: t,
23
+ key: y(),
24
+ value: {
25
+ files: d(g.filesValue.value),
26
+ activeFileId: g.activeFileIdValue.value
27
+ },
28
+ maxBytes: b(),
29
+ previousValueSerialized: _
30
+ }) : l({
31
+ storage: t,
32
+ key: y(),
33
+ value: e(g.syncPageEditors()),
34
+ maxBytes: b(),
35
+ previousValueSerialized: _
36
+ });
37
+ return n.valueSerialized && (_ = n.valueSerialized), n.status.type !== "unchanged" && g.updateDraftCacheStatus(n.status), n.status;
38
+ }
39
+ function S() {
40
+ if (g.multipleFilesMode.value) {
41
+ let t = c(i(), y());
42
+ t.valueSerialized && (_ = t.valueSerialized), t.status.type !== "idle" && g.updateDraftCacheStatus(t.status);
43
+ let n = m(t.value?.files ?? [], t.value?.activeFileId), r = t.value?.files.find((e) => e.id === n)?.template;
44
+ return r ? e(r) : void 0;
45
+ }
46
+ let t = s(i(), y());
47
+ return t.valueSerialized && (_ = t.valueSerialized), t.status.type !== "idle" && g.updateDraftCacheStatus(t.status), t.value ? e(t.value) : void 0;
48
+ }
49
+ function C() {
50
+ let e = n(i(), y());
51
+ _ = "", g.updateDraftCacheStatus(e);
52
+ }
53
+ function w() {
54
+ if (!g.draftCacheWritable.value) return;
55
+ if (g.multipleFilesMode.value) {
56
+ if (!o({
57
+ files: d(g.filesValue.value),
58
+ activeFileId: g.activeFileIdValue.value
59
+ })) return;
60
+ let e = c(i(), y());
61
+ if (e.valueSerialized && (_ = e.valueSerialized), e.value) {
62
+ let t = f(p(e.value.files, void 0, g.pageSize()), g.pageSizeOptions());
63
+ g.filesValue.value = t.files, g.setSigningPlacementInputErrorsByFile(g.buildSigningPlacementInputErrorsByFile(t.files, e.value.files));
64
+ let n = m(g.filesValue.value, e.value.activeFileId);
65
+ g.setActiveFileId(n, {
66
+ syncCurrent: !1,
67
+ shouldEmit: !0,
68
+ forceRefresh: !0,
69
+ persistCurrentErrors: !1
70
+ }), g.emitFilesChange(g.filesValue.value, ""), g.updateDraftCacheStatus(e.status);
71
+ return;
72
+ }
73
+ e.status.type !== "idle" && e.status.type !== "invalid" && g.updateDraftCacheStatus(e.status);
74
+ return;
75
+ }
76
+ if (!a(g.templateValue.value)) return;
77
+ let e = s(i(), y());
78
+ if (e.valueSerialized && (_ = e.valueSerialized), e.value) {
79
+ let n = g.commit(t(e.value, g.pageSize()));
80
+ g.activePageId.value = n.pages[0]?.id ?? "", g.selectedVariableKey.value = "", g.scheduleAutoPaginate(g.activePageId.value), g.updateDraftCacheStatus(e.status);
81
+ return;
82
+ }
83
+ e.status.type !== "idle" && e.status.type !== "invalid" && g.updateDraftCacheStatus(e.status);
84
+ }
85
+ function T() {
86
+ v &&= (clearInterval(v), void 0);
87
+ }
88
+ function E() {
89
+ if (T(), !g.draftCacheWritable.value || typeof window > "u") return;
90
+ let e = Math.max(1e3, Math.round(Number(g.draftCacheInterval()) || 5e3));
91
+ v = window.setInterval(() => {
92
+ x();
93
+ }, e);
94
+ }
95
+ function D() {
96
+ _ = "";
97
+ }
98
+ return h(() => {
99
+ T();
100
+ }), {
101
+ saveDraftCache: x,
102
+ loadDraftCache: S,
103
+ clearDraftCache: C,
104
+ restoreDraftCacheIfNeeded: w,
105
+ stopDraftCacheTimer: T,
106
+ restartDraftCacheTimer: E,
107
+ resetDraftFingerprint: D
108
+ };
109
+ }
110
+ //#endregion
111
+ export { g as useDraftCacheSession };
@@ -0,0 +1,79 @@
1
+ import { SIGNING_PLACEMENT_MIME as e, applySigningPlacementPatch as t, canMutateSigningPlacements as n, clampSigningPlacement as r, createSigningPlacement as i, getSigningPlacementDefaultSize as a, serializeSigningPlacementDragPayload as o } from "../utils/signing-placement.mjs";
2
+ //#region src/components/pro-contract-template-designer/src/composables/use-signing-placement-editor.ts
3
+ function s(e) {
4
+ return {
5
+ ...e,
6
+ ...e.sealTypes ? { sealTypes: [...e.sealTypes] } : {}
7
+ };
8
+ }
9
+ function c(c) {
10
+ function l(e, t = c.selectedPage.value?.id ?? c.templateValue.value.pages[0]?.id, r) {
11
+ if (!n(c.readonly(), c.disabled()) || !t) return;
12
+ let a = c.templateValue.value.pages.find((e) => e.id === t);
13
+ if (!a) return;
14
+ let o = i(e, t, c.getPageSize(a), { ...r ?? c.getVisiblePosition(t, e) });
15
+ return c.commitSigningPlacements([...c.signingPlacements.value, o]), c.activePageId.value = t, c.selectSigningPlacement(o.id), c.emitAdd(s(o)), o;
16
+ }
17
+ function u(e, t, n, r) {
18
+ if (!c.showSigningPlacementTools()) return;
19
+ let i = a(t.type);
20
+ l(t.type, e, {
21
+ x: n - i.width / 2,
22
+ y: r - i.height / 2
23
+ });
24
+ }
25
+ function d(e) {
26
+ return l(e.type);
27
+ }
28
+ function f(t, r) {
29
+ if (!n(c.readonly(), c.disabled())) {
30
+ t.preventDefault();
31
+ return;
32
+ }
33
+ t.dataTransfer?.setData(e, o(r)), t.dataTransfer && (t.dataTransfer.effectAllowed = "copy");
34
+ }
35
+ function p(e) {
36
+ if (!n(c.readonly(), c.disabled())) return;
37
+ let t = c.templateValue.value.pages.find((t) => t.id === e.pageId);
38
+ if (!t) return;
39
+ let i = r({
40
+ ...e,
41
+ ...e.type === "seal" ? {} : { sealTypes: void 0 }
42
+ }, c.getPageSize(t));
43
+ c.commitSigningPlacements(c.signingPlacements.value.map((e) => e.id === i.id ? i : e), [i.id]), c.selectedSigningPlacementId.value = i.id, c.emitChange(s(i));
44
+ }
45
+ function m(e) {
46
+ let n = c.selectedSigningPlacement.value;
47
+ if (!n) return;
48
+ let r = c.templateValue.value.pages.find((e) => e.id === n.pageId);
49
+ r && p(t(n, e, c.getPageSize(r)));
50
+ }
51
+ function h(e = c.selectedSigningPlacement.value) {
52
+ if (!n(c.readonly(), c.disabled()) || !e) return;
53
+ let t = c.templateValue.value.pages.find((t) => t.id === e.pageId);
54
+ if (!t) return;
55
+ let r = i(e.type, e.pageId, c.getPageSize(t), {
56
+ ...s(e),
57
+ id: void 0,
58
+ x: e.x + 16,
59
+ y: e.y + 16
60
+ });
61
+ c.commitSigningPlacements([...c.signingPlacements.value, r]), c.selectSigningPlacement(r.id), c.emitAdd(s(r));
62
+ }
63
+ function g(e = c.selectedSigningPlacement.value) {
64
+ !n(c.readonly(), c.disabled()) || !e || (c.commitSigningPlacements(c.signingPlacements.value.filter((t) => t.id !== e.id), [e.id]), c.selectedSigningPlacementId.value === e.id && c.selectSigningPlacement(), c.emitRemove(s(e)));
65
+ }
66
+ return {
67
+ insertSigningPlacement: l,
68
+ handleSigningPlacementDrop: u,
69
+ insertSigningPlacementTool: d,
70
+ handleSigningPlacementDragStart: f,
71
+ updateSigningPlacement: p,
72
+ patchSelectedSigningPlacement: m,
73
+ duplicateSigningPlacement: h,
74
+ removeSigningPlacement: g,
75
+ cloneSigningPlacement: s
76
+ };
77
+ }
78
+ //#endregion
79
+ export { s as cloneSigningPlacement, c as useSigningPlacementEditor };