@guodun/antdv 1.7.8 → 1.7.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateChoiceOptionsEditor.mjs +5 -0
  2. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateChoiceOptionsEditor.vue.mjs +132 -0
  3. package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerInspector.vue.mjs +209 -246
  4. package/dist/es/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.mjs +1019 -1009
  5. package/dist/es/components/pro-contract-template-designer/src/composables/use-template-designer.mjs +192 -162
  6. package/dist/es/components/pro-contract-template-designer/src/extensions/template-variable.mjs +70 -68
  7. package/dist/es/components/pro-contract-template-designer/src/utils/advanced-controls.mjs +63 -25
  8. package/dist/es/components/pro-contract-template-designer/src/utils/template-renderer.mjs +129 -75
  9. package/dist/es/components/pro-contract-template-designer/src/utils/template-variable-render.mjs +17 -5
  10. package/dist/es/components/pro-contract-template-designer/style/index.css +1 -1
  11. package/dist/es/index.mjs +22 -22
  12. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateChoiceOptionsEditor.cjs +1 -0
  13. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateChoiceOptionsEditor.vue.cjs +1 -0
  14. package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerInspector.vue.cjs +1 -2
  15. package/dist/lib/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.cjs +1 -1
  16. package/dist/lib/components/pro-contract-template-designer/src/composables/use-template-designer.cjs +4 -4
  17. package/dist/lib/components/pro-contract-template-designer/src/extensions/template-variable.cjs +1 -1
  18. package/dist/lib/components/pro-contract-template-designer/src/utils/advanced-controls.cjs +1 -1
  19. package/dist/lib/components/pro-contract-template-designer/src/utils/template-renderer.cjs +3 -3
  20. package/dist/lib/components/pro-contract-template-designer/src/utils/template-variable-render.cjs +1 -1
  21. package/dist/lib/components/pro-contract-template-designer/style/index.css +1 -1
  22. package/dist/lib/index.cjs +1 -1
  23. package/dist/theme/icon.css +1 -1
  24. package/dist/theme/index.css +1 -1
  25. package/dist/types/components/pro-contract-template-designer/src/ContractTemplateChoiceOptionsEditor.vue.d.ts +12 -0
  26. package/dist/types/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.d.ts +2 -0
  27. package/dist/types/components/pro-contract-template-designer/src/composables/use-template-designer.d.ts +5 -1
  28. package/dist/types/components/pro-contract-template-designer/src/types.d.ts +15 -2
  29. package/dist/types/components/pro-contract-template-designer/src/utils/advanced-controls.d.ts +10 -0
  30. package/dist/types/components/pro-contract-template-designer/src/utils/template-variable-render.d.ts +7 -0
  31. package/package.json +5 -5
package/dist/es/index.mjs CHANGED
@@ -60,25 +60,25 @@ import { MAX_SIGNING_MARK_DIMENSION as qe, MIN_SIGNING_MARK_DIMENSION as Je, SIG
60
60
  import { CONTRACT_TEXT_STYLE_PRESETS as st, CONTRACT_TEXT_STYLE_PRESET_COMMANDS as ct, DEFAULT_CONTRACT_FONT_FAMILY as lt, DEFAULT_FONT_FAMILY_OPTIONS as ut, DEFAULT_FONT_SIZE_PRESETS as dt, DEFAULT_TEXT_ALIGN_OPTIONS as ft, getContractTextStylePreset as pt, normalizeFontFamilyValue as mt, resolveContractTextStylePresetCommands as ht, resolveFontFamilyOptions as gt } from "./components/pro-contract-template-designer/src/constants.mjs";
61
61
  import { CONTRACT_SIGNING_RENDER_ORIGIN_OFFSET as _t, CONTRACT_SIGNING_SNAP_THRESHOLD_PX as vt, canResizeContractSigningPlacement as yt, clampContractSigningPlacement as bt, clampContractSigningZoom as xt, displayPointToContractPoint as St, getContractSigningPlacementDistances as Ct, getContractSigningPlacementSize as wt, getContractSigningRuleGeometry as Tt, moveContractSigningPlacementByDisplayDelta as Et, normalizeContractSigningCoordinateDimension as Dt, normalizeContractSigningCoordinateScale as Ot, resizeContractSigningSealGeometry as kt, resolveContractSigningSealSizeLimit as At, resolveContractSigningSizeProfile as jt, snapContractSigningPlacement as Mt } from "./components/contract-signing-location/src/coordinates.mjs";
62
62
  import { isContractTemplateAdvancedChoiceFieldType as Nt, isContractTemplateBuiltinSelectorFieldType as Pt, isContractTemplateFieldType as Ft } from "./components/pro-contract-template-designer/src/types.mjs";
63
- import { decodeContractTemplateJsonAttribute as It, encodeContractTemplateJsonAttribute as Lt, formatContractTemplateRenderValue as Rt, isAllowedContractTemplateRemoteUrl as zt, isContractTemplateSelectionValue as Bt, normalizeContractTemplateControlOptions as Vt, normalizeContractTemplateJsonObject as Ht, normalizeContractTemplateRequestTimeout as Ut, normalizeContractTemplateSelectionValue as Wt, normalizeContractTemplateSelectionValues as Gt } from "./components/pro-contract-template-designer/src/utils/advanced-controls.mjs";
64
- import { ALL_DEFAULT_FIELD_TYPES as Kt, CONTRACT_TEMPLATE_RENDERER_VERSION as qt, CONTRACT_TEMPLATE_RESERVED_VARIABLE_KEYS as Jt, CONTRACT_TEMPLATE_STYLE_VERSION as Yt, CONTRACT_TEMPLATE_VARIABLE_KEY_PATTERN as Xt, ContractTemplatePageDecorationValidationError as Zt, DEFAULT_ADVANCED_CHOICE_FIELD_TYPES as Qt, DEFAULT_BUILTIN_SELECTOR_FIELD_TYPES as $t, DEFAULT_CUSTOM_FIELD_TYPES as en, DEFAULT_FIELD_STYLE as tn, DEFAULT_FIELD_TYPES as nn, DEFAULT_MULTILINE_LINE_HEIGHT as rn, DEFAULT_MULTILINE_ROWS as an, DEFAULT_PAGE_SIZE as on, PAGE_SIZE_OPTIONS as sn, buildTemplateExpressionHtml as cn, buildTemplateHtml as ln, buildTemplatePreviewHtml as un, buildTemplatePreviewPages as dn, cloneTemplateValue as fn, collectTemplateValueVariableKeys as pn, collectTemplateVariableKeys as mn, constrainTemplatePageSizes as hn, createBlankPage as gn, createBlankTemplate as _n, createDefaultPage as vn, createDefaultTemplate as yn, createDesignerId as bn, createTemplateBodySync as xn, createTemplateVariable as Sn, exportTemplateValue as Cn, findPageSizeOption as wn, getFieldOption as Tn, getPageSizeKey as En, getPageSizeOption as Dn, inferPageFormat as $, normalizeContractTemplateMaxPages as On, normalizePageSizeOptions as kn, normalizeTemplateValue as An, resolvePageSize as jn, splitPageContentByMeasurements as Mn, syncTemplateVariablesWithPages as Nn, validateContractTemplateVariableKey as Pn, validateTemplateValue as Fn } from "./components/pro-contract-template-designer/src/composables/use-template-designer.mjs";
65
- import { isSafeContractImageUrl as In } from "./components/pro-contract-template-designer/src/utils/image-url.mjs";
66
- import { buildInitialRenderValues as Ln, buildTemplateRenderHtml as Rn, buildTemplateRenderPages as zn, buildTemplateVariableData as Bn, isEmptyRenderValue as Vn, normalizeRenderValues as Hn, resolveTemplateRenderSubmitErrors as Un, sanitizeContractRendererHtml as Wn, validateTemplateRenderStructure as Gn, validateTemplateRenderValues as Kn } from "./components/pro-contract-template-designer/src/utils/template-renderer.mjs";
67
- import { buildContractSigningTemplateRenderPages as qn, getContractSigningTemplateDisplayError as Jn, isContractSigningTemplateFile as Yn, isContractSigningTemplateSource as Xn, validateContractSigningTemplateFile as Zn } from "./components/contract-signing-location/src/template-source.mjs";
68
- import { ContractSigningLocationBuildError as Qn, buildContractSigningLocationOutput as $n, buildContractSigningLocationRules as er, cloneContractSigningLocationValue as tr, createContractSigningLocationValue as nr, createContractSigningPlacement as rr, findContractSigningPage as ir, getContractSigningHomePage as ar, isContractSigningPageUsable as or, normalizeContractSigningLocationValue as sr, normalizeContractSigningProviderValue as cr, patchContractSigningPlacement as lr, resolveContractSigningDefaultSealTypes as ur, resolveContractSigningPreviewPageSize as dr, validateContractSigningLocationValue as fr } from "./components/contract-signing-location/src/location-rules.mjs";
69
- import { CONTRACT_SIGNING_FALLBACK_PAGE_SIZE as pr, CONTRACT_SIGNING_PAGE_GAP as mr, CONTRACT_SIGNING_VIRTUAL_BUFFER_PAGES as hr, buildPageLayouts as gr, contentPointToPagePoint as _r, findPageAtOffset as vr, getContractSigningAutoScrollDelta as yr, getPageLayoutScrollTop as br, getPageLayoutsContentSize as xr, getVisibleRange as Sr } from "./components/contract-signing-location/src/page-layout.mjs";
70
- import { formatContractSigningDate as Cr, getContractSigningDateDataUrl as wr, getContractSigningDateSvgDataUrl as Tr, getContractSigningPlacementDataUrl as Er, getContractSigningPlacementVisual as Dr, getContractSigningSealDataUrl as Or, getContractSigningSealLabel as kr, getContractSigningSealSvgDataUrl as Ar, getContractSigningSignatureDataUrl as jr, getContractSigningSignaturePngDataUrl as Mr, getContractSigningSignatureSvgDataUrl as Nr, isContractSigningVisualDataUrl as Pr, isSafeContractSigningVisualDataUrl as Fr, resolveContractSigningSealLabel as Ir, toContractSigningSvgDataUrl as Lr } from "./components/contract-signing-location/src/signing-visuals.mjs";
71
- import Rr from "./components/contract-signing-location/index.mjs";
72
- import { DEFAULT_CONTRACT_IMAGE_COMPRESSION as zr, MAX_CONTRACT_IMAGE_BYTES as Br, MAX_CONTRACT_IMAGE_DIMENSION as Vr, MIN_CONTRACT_IMAGE_DIMENSION as Hr, compressContractImage as Ur, normalizeContractImageCompression as Wr, normalizeContractImageDimension as Gr, processContractImageFile as Kr, readContractImageFileAsDataUrl as qr, resolveContractImageResizeDimensions as Jr } from "./components/pro-contract-template-designer/src/utils/content-image.mjs";
73
- import { CUSTOM_SIGNING_LAYOUT as Yr, DUAL_PARTY_SIGNING_LAYOUT as Xr, MAX_SIGNING_LAYOUT_PARTY_COUNT as Zr, MIN_SIGNING_LAYOUT_PARTY_COUNT as Qr, SIGNING_LAYOUT_ARRANGEMENTS as $r, SIGNING_LAYOUT_ARRANGEMENT_LABELS as ei, SIGNING_LAYOUT_ATTRIBUTE_VALUES as ti, SIGNING_LAYOUT_FIELD_KEYS as ni, SIGNING_LAYOUT_FIELD_LABELS as ri, SIGNING_LAYOUT_PRESETS as ii, SIGNING_LAYOUT_PRESET_KEYS as ai, buildDualPartySigningLayoutPreset as oi, buildSigningLayoutContent as si, buildSigningLayoutPresetContent as ci, buildSigningLayoutPreviewModel as li, describeSigningLayoutOptions as ui, isSigningLayoutAttributeValue as di, isSigningLayoutPresetKey as fi, normalizeSigningLayoutOptions as pi, resolvePartyName as mi } from "./components/pro-contract-template-designer/src/utils/signing-layout-presets.mjs";
74
- import { CONTRACT_TEMPLATE_DRAFT_CACHE_VERSION as hi, CONTRACT_TEMPLATE_FILES_DRAFT_CACHE_VERSION as gi, DEFAULT_DRAFT_CACHE_INTERVAL as _i, DEFAULT_DRAFT_CACHE_KEY as vi, DEFAULT_DRAFT_CACHE_MAX_BYTES as yi, clearTemplateDraftCache as bi, createDraftCacheStatus as xi, estimateDraftCacheBytes as Si, formatDraftCacheSavedAt as Ci, getBrowserDraftCacheStorage as wi, isBlankTemplateDraftValue as Ti, isBlankTemplateFilesDraftValue as Ei, loadTemplateDraftCache as Di, loadTemplateFilesDraftCache as Oi, saveTemplateDraftCache as ki, saveTemplateFilesDraftCache as Ai } from "./components/pro-contract-template-designer/src/composables/use-template-draft-cache.mjs";
75
- import { cloneContractTemplateFiles as ji, constrainContractTemplateFiles as Mi, createContractTemplateFile as Ni, exportContractTemplateFiles as Pi, moveContractTemplateFile as Fi, normalizeContractTemplateFiles as Ii, removeContractTemplateFile as Li, renameContractTemplateFile as Ri, replaceContractTemplateFile as zi, resolveContractTemplateActiveFileId as Bi } from "./components/pro-contract-template-designer/src/composables/use-template-files.mjs";
76
- import Vi, { GdAntProContractTemplateRenderer as Hi } from "./components/pro-contract-template-designer/index.mjs";
77
- import { CONTRACT_SIGNING_FLOW_ACTION_LABELS as Ui, CONTRACT_SIGNING_FLOW_IDENTITY_OPTIONS as Wi, CONTRACT_SIGNING_FLOW_MAX_ZOOM as Gi, CONTRACT_SIGNING_FLOW_MIN_ZOOM as Ki, CONTRACT_SIGNING_FLOW_SEAL_TYPES as qi, CONTRACT_SIGNING_FLOW_SIGN_ACTIONS as Ji, CONTRACT_SIGNING_FLOW_ZOOM_STEP as Yi, isContractSigningFlowInteractiveTarget as Xi, normalizeContractSigningFlowZoom as Zi, resolveContractSigningFlowZoomShortcut as Qi, resolveContractSigningFlowZoomShortcutForTarget as $i } from "./components/pro-contract-signing-flow/src/constants.mjs";
78
- import { buildConnectList as ea, createDefaultSignRule as ta, createEndNode as na, createId as ra, createInitialFlow as ia, createSignNode as aa, createStartNode as oa, normalizeContractSigningFlow as sa, normalizeSignRule as ca, useContractSigningFlow as la, validateContractSigningFlow as ua } from "./components/pro-contract-signing-flow/src/composables/use-contract-signing-flow.mjs";
79
- import da from "./components/pro-contract-signing-flow/index.mjs";
80
- import { useContractTemplateAgent as fa } from "./components/pro-contract-template-agent/src/composables/use-contract-template-agent.mjs";
81
- import { adaptContractTemplateAgentSpec as pa } from "./components/pro-contract-template-agent/src/utils/contract-template-agent-adapter.mjs";
82
- import ma, { GdAntProContractTemplateAgentPanel as ha, GdAntProContractTemplateAgentPreview as ga } from "./components/pro-contract-template-agent/index.mjs";
83
- import { setupAppConfig as _a, useBasicAppConfig as va } from "./components/hooks/use-basic-app-config.mjs";
84
- export { Kt as ALL_DEFAULT_FIELD_TYPES, we as CONTRACT_PRINT_FONT_UNCONFIGURED_MESSAGE, Oe as CONTRACT_SIGNING_AUTO_SCROLL_EDGE_PX, ke as CONTRACT_SIGNING_CSS_PX_PER_POINT, pr as CONTRACT_SIGNING_FALLBACK_PAGE_SIZE, Ui as CONTRACT_SIGNING_FLOW_ACTION_LABELS, Wi as CONTRACT_SIGNING_FLOW_IDENTITY_OPTIONS, Gi as CONTRACT_SIGNING_FLOW_MAX_ZOOM, Ki as CONTRACT_SIGNING_FLOW_MIN_ZOOM, qi as CONTRACT_SIGNING_FLOW_SEAL_TYPES, Ji as CONTRACT_SIGNING_FLOW_SIGN_ACTIONS, Yi as CONTRACT_SIGNING_FLOW_ZOOM_STEP, Ae as CONTRACT_SIGNING_MIN_PLACEMENT_SIZE, mr as CONTRACT_SIGNING_PAGE_GAP, je as CONTRACT_SIGNING_PLACEMENT_LABELS, Me as CONTRACT_SIGNING_PLACEMENT_MIME, Ne as CONTRACT_SIGNING_PREVIEW_CONCURRENCY, Pe as CONTRACT_SIGNING_PX_PER_MM, _t as CONTRACT_SIGNING_RENDER_ORIGIN_OFFSET, Fe as CONTRACT_SIGNING_SEAL_MAX_SIZE, Ie as CONTRACT_SIGNING_SEAL_MIN_SIZE, Le as CONTRACT_SIGNING_SEAL_TYPE_OPTIONS, Re as CONTRACT_SIGNING_SEAL_TYPE_PRESETS, ze as CONTRACT_SIGNING_SIZE_PROFILES, vt as CONTRACT_SIGNING_SNAP_THRESHOLD_PX, hr as CONTRACT_SIGNING_VIRTUAL_BUFFER_PAGES, Be as CONTRACT_SIGNING_VISIBLE_PAGES_DEBOUNCE_MS, hi as CONTRACT_TEMPLATE_DRAFT_CACHE_VERSION, gi as CONTRACT_TEMPLATE_FILES_DRAFT_CACHE_VERSION, qt as CONTRACT_TEMPLATE_RENDERER_VERSION, Jt as CONTRACT_TEMPLATE_RESERVED_VARIABLE_KEYS, Yt as CONTRACT_TEMPLATE_STYLE_VERSION, Xt as CONTRACT_TEMPLATE_VARIABLE_KEY_PATTERN, st as CONTRACT_TEXT_STYLE_PRESETS, ct as CONTRACT_TEXT_STYLE_PRESET_COMMANDS, Yr as CUSTOM_SIGNING_LAYOUT, Qn as ContractSigningLocationBuildError, Zt as ContractTemplatePageDecorationValidationError, u as CoverScrollbarProps, Qt as DEFAULT_ADVANCED_CHOICE_FIELD_TYPES, $t as DEFAULT_BUILTIN_SELECTOR_FIELD_TYPES, lt as DEFAULT_CONTRACT_FONT_FAMILY, zr as DEFAULT_CONTRACT_IMAGE_COMPRESSION, en as DEFAULT_CUSTOM_FIELD_TYPES, _i as DEFAULT_DRAFT_CACHE_INTERVAL, vi as DEFAULT_DRAFT_CACHE_KEY, yi as DEFAULT_DRAFT_CACHE_MAX_BYTES, tn as DEFAULT_FIELD_STYLE, nn as DEFAULT_FIELD_TYPES, ut as DEFAULT_FONT_FAMILY_OPTIONS, dt as DEFAULT_FONT_SIZE_PRESETS, rn as DEFAULT_MULTILINE_LINE_HEIGHT, an as DEFAULT_MULTILINE_ROWS, on as DEFAULT_PAGE_SIZE, ft as DEFAULT_TEXT_ALIGN_OPTIONS, Se as DRAWER_SIZE_WIDTH, Xr as DUAL_PARTY_SIGNING_LAYOUT, fe as FORM_RENDER_CONTEXT_KEY, pe as FormItemProps, me as FormRenderProps, ne as GET_DEPT_TREE_URL, J as GTE_OPTIONS_URL, M as GTE_ORGTREE_URL, t as GdAntCollapseTranstion, Rr as GdAntContractSigningLocation, d as GdAntCoverScrollBar, ae as GdAntDeptSelector, T as GdAntIcon, A as GdAntPlusUpload, b as GdAntProArea, _e as GdAntProCell, ve as GdAntProCellGroup, da as GdAntProContractSigningFlow, ha as GdAntProContractTemplateAgentPanel, ga as GdAntProContractTemplateAgentPreview, ma as GdAntProContractTemplateAgentWorkbench, Vi as GdAntProContractTemplateDesigner, Hi as GdAntProContractTemplateRenderer, Ce as GdAntProDrawer, xe as GdAntProDynamicTags, he as GdAntProFormRender, k as GdAntProLoading, le as GdAntProMenuTree, a as GdAntProModal, j as GdAntProOverlay, _ as GdAntProPicker, Q as GdAntProRoleSelector, V as GdAntProSelector, be as GdAntProSelectorGroup, S as GdAntProSignature, w as GdAntProTable, m as GdAntProTag, de as GdAntProTagGroup, s as GdAntProTitle, O as GdAntProUpload, q as GdAntProUserAvatar, k as GdAntProloading, Z as GdAntRoleSelector, f as GdAntScaleVirtualList, l as GdAntScrollBar, K as GdAntUserAvatar, H as GdAntUserSelector, U as GdAntUserSelectorCheckbox, W as GdAntUserSelectorDirectory, G as GdAntUserSelectorDrilldown, Br as MAX_CONTRACT_IMAGE_BYTES, Vr as MAX_CONTRACT_IMAGE_DIMENSION, Zr as MAX_SIGNING_LAYOUT_PARTY_COUNT, qe as MAX_SIGNING_MARK_DIMENSION, oe as MENU_TREE_URL, Hr as MIN_CONTRACT_IMAGE_DIMENSION, Qr as MIN_SIGNING_LAYOUT_PARTY_COUNT, Je as MIN_SIGNING_MARK_DIMENSION, sn as PAGE_SIZE_OPTIONS, ge as PRO_CELL_GROUP_KEY, h as PickerApiEnum, v as ProAreaProps, g as ProPickerProps, x as ProSignatureProps, ue as ProTagGroupProps, L as ProUserSelector, z as ProUserSelectorCheckbox, R as ProUserSelectorDrilldown, $r as SIGNING_LAYOUT_ARRANGEMENTS, ei as SIGNING_LAYOUT_ARRANGEMENT_LABELS, ti as SIGNING_LAYOUT_ATTRIBUTE_VALUES, ni as SIGNING_LAYOUT_FIELD_KEYS, ri as SIGNING_LAYOUT_FIELD_LABELS, ii as SIGNING_LAYOUT_PRESETS, ai as SIGNING_LAYOUT_PRESET_KEYS, Ye as SIGNING_MARK_DEFAULT_LABELS, Xe as SIGNING_MARK_DEFAULT_SIZES, Ze as SIGNING_MARK_TYPE_LABELS, o as TitleProps, E as UploadContextKey, N as UserSelectorProps, pa as adaptContractTemplateAgentSpec, ea as buildConnectList, $n as buildContractSigningLocationOutput, er as buildContractSigningLocationRules, qn as buildContractSigningTemplateRenderPages, oi as buildDualPartySigningLayoutPreset, Ln as buildInitialRenderValues, gr as buildPageLayouts, si as buildSigningLayoutContent, ci as buildSigningLayoutPresetContent, li as buildSigningLayoutPreviewModel, Qe as buildSigningMarkAttrs, cn as buildTemplateExpressionHtml, ln as buildTemplateHtml, un as buildTemplatePreviewHtml, dn as buildTemplatePreviewPages, Rn as buildTemplateRenderHtml, zn as buildTemplateRenderPages, Bn as buildTemplateVariableData, yt as canResizeContractSigningPlacement, bt as clampContractSigningPlacement, xt as clampContractSigningZoom, bi as clearTemplateDraftCache, tr as cloneContractSigningLocationValue, ji as cloneContractTemplateFiles, fn as cloneTemplateValue, e as collapseProps, pn as collectTemplateValueVariableKeys, mn as collectTemplateVariableKeys, Ur as compressContractImage, Te as configureContractPrintFonts, Mi as constrainContractTemplateFiles, hn as constrainTemplatePageSizes, _r as contentPointToPagePoint, gn as createBlankPage, _n as createBlankTemplate, nr as createContractSigningLocationValue, rr as createContractSigningPlacement, Ni as createContractTemplateFile, vn as createDefaultPage, ta as createDefaultSignRule, yn as createDefaultTemplate, bn as createDesignerId, xi as createDraftCacheStatus, na as createEndNode, ra as createId, ia as createInitialFlow, aa as createSignNode, oa as createStartNode, xn as createTemplateBodySync, Sn as createTemplateVariable, It as decodeContractTemplateJsonAttribute, re as deptSelectorEmits, ie as deptSelectorProps, ui as describeSigningLayoutOptions, St as displayPointToContractPoint, Lt as encodeContractTemplateJsonAttribute, Si as estimateDraftCacheBytes, Pi as exportContractTemplateFiles, Cn as exportTemplateValue, ir as findContractSigningPage, vr as findPageAtOffset, wn as findPageSizeOption, Cr as formatContractSigningDate, Rt as formatContractTemplateRenderValue, Ci as formatDraftCacheSavedAt, ee as generatePalette, wi as getBrowserDraftCacheStorage, yr as getContractSigningAutoScrollDelta, wr as getContractSigningDateDataUrl, Tr as getContractSigningDateSvgDataUrl, ar as getContractSigningHomePage, Er as getContractSigningPlacementDataUrl, Ct as getContractSigningPlacementDistances, wt as getContractSigningPlacementSize, Dr as getContractSigningPlacementVisual, Tt as getContractSigningRuleGeometry, Or as getContractSigningSealDataUrl, kr as getContractSigningSealLabel, Ar as getContractSigningSealSvgDataUrl, jr as getContractSigningSignatureDataUrl, Mr as getContractSigningSignaturePngDataUrl, Nr as getContractSigningSignatureSvgDataUrl, Jn as getContractSigningTemplateDisplayError, pt as getContractTextStylePreset, Tn as getFieldOption, br as getPageLayoutScrollTop, xr as getPageLayoutsContentSize, En as getPageSizeKey, Dn as getPageSizeOption, $e as getSigningMarkDefaultLabel, et as getSigningMarkDefaultSize, Sr as getVisibleRange, $ as inferPageFormat, zt as isAllowedContractTemplateRemoteUrl, Ti as isBlankTemplateDraftValue, Ei as isBlankTemplateFilesDraftValue, Xi as isContractSigningFlowInteractiveTarget, or as isContractSigningPageUsable, Yn as isContractSigningTemplateFile, Xn as isContractSigningTemplateSource, Pr as isContractSigningVisualDataUrl, Nt as isContractTemplateAdvancedChoiceFieldType, Pt as isContractTemplateBuiltinSelectorFieldType, Ft as isContractTemplateFieldType, Bt as isContractTemplateSelectionValue, tt as isContractTemplateSigningMarkType, Vn as isEmptyRenderValue, In as isSafeContractImageUrl, Fr as isSafeContractSigningVisualDataUrl, di as isSigningLayoutAttributeValue, fi as isSigningLayoutPresetKey, Di as loadTemplateDraftCache, Oi as loadTemplateFilesDraftCache, Ve as millimetersToContractSigningCssPixels, He as millimetersToContractSigningPixels, Et as moveContractSigningPlacementByDisplayDelta, Fi as moveContractTemplateFile, Wr as normalizeContractImageCompression, Gr as normalizeContractImageDimension, Dt as normalizeContractSigningCoordinateDimension, Ot as normalizeContractSigningCoordinateScale, sa as normalizeContractSigningFlow, Zi as normalizeContractSigningFlowZoom, sr as normalizeContractSigningLocationValue, cr as normalizeContractSigningProviderValue, Vt as normalizeContractTemplateControlOptions, Ii as normalizeContractTemplateFiles, Ht as normalizeContractTemplateJsonObject, On as normalizeContractTemplateMaxPages, Ut as normalizeContractTemplateRequestTimeout, Wt as normalizeContractTemplateSelectionValue, Gt as normalizeContractTemplateSelectionValues, mt as normalizeFontFamilyValue, kn as normalizePageSizeOptions, Hn as normalizeRenderValues, ca as normalizeSignRule, pi as normalizeSigningLayoutOptions, nt as normalizeSigningMarkDimension, An as normalizeTemplateValue, lr as patchContractSigningPlacement, se as proMenuTreeEmits, ce as proMenuTreeProps, n as proModalEmits, p as proTagProps, Kr as processContractImageFile, qr as readContractImageFileAsDataUrl, Li as removeContractTemplateFile, Ri as renameContractTemplateFile, zi as replaceContractTemplateFile, kt as resizeContractSigningSealGeometry, Ee as resolveContractFontBaseUrl, Jr as resolveContractImageResizeDimensions, ur as resolveContractSigningDefaultSealTypes, Qi as resolveContractSigningFlowZoomShortcut, $i as resolveContractSigningFlowZoomShortcutForTarget, dr as resolveContractSigningPreviewPageSize, Ir as resolveContractSigningSealLabel, Ue as resolveContractSigningSealSizeInCssPixels, We as resolveContractSigningSealSizeInPixels, At as resolveContractSigningSealSizeLimit, Ge as resolveContractSigningSealTypeOption, jt as resolveContractSigningSizeProfile, Bi as resolveContractTemplateActiveFileId, ht as resolveContractTextStylePresetCommands, gt as resolveFontFamilyOptions, jn as resolvePageSize, mi as resolvePartyName, rt as resolveSigningMarkPresentation, it as resolveSigningMarkResizeDimensions, at as resolveSigningMarkResizeHandles, ot as resolveSigningMarkSealAspectRatio, Un as resolveTemplateRenderSubmitErrors, P as resolveUserSelectorMaxCount, Y as roleSelectorEmits, X as roleSelectorProps, Wn as sanitizeContractRendererHtml, ki as saveTemplateDraftCache, Ai as saveTemplateFilesDraftCache, c as scrollbarProps, ye as selectContextKey, F as selectUserContextKey, _a as setupAppConfig, te as setupTheme, Mt as snapContractSigningPlacement, Mn as splitPageContentByMeasurements, Nn as syncTemplateVariablesWithPages, De as toAbsoluteContractFontBaseUrl, Ke as toContractSigningRulePageSize, Lr as toContractSigningSvgDataUrl, va as useBasicAppConfig, la as useContractSigningFlow, fa as useContractTemplateAgent, y as useProArea, r as useProModal, i as useProModalInit, C as useProTable, D as useUpload, B as useUserSelector, I as userSelectorEmits, ua as validateContractSigningFlow, fr as validateContractSigningLocationValue, Zn as validateContractSigningTemplateFile, Pn as validateContractTemplateVariableKey, Gn as validateTemplateRenderStructure, Kn as validateTemplateRenderValues, Fn as validateTemplateValue };
63
+ import { buildRadioOptionNodes as It, buildRadioOptionsHtml as Lt, decodeContractTemplateJsonAttribute as Rt, encodeContractTemplateJsonAttribute as zt, formatContractTemplateRenderValue as Bt, isAllowedContractTemplateRemoteUrl as Vt, isContractTemplateSelectionValue as Ht, normalizeContractTemplateControlOptions as Ut, normalizeContractTemplateJsonObject as Wt, normalizeContractTemplateRequestTimeout as Gt, normalizeContractTemplateSelectionValue as Kt, normalizeContractTemplateSelectionValues as qt, readContractTemplateControlOptions as Jt } from "./components/pro-contract-template-designer/src/utils/advanced-controls.mjs";
64
+ import { ALL_DEFAULT_FIELD_TYPES as Yt, CONTRACT_TEMPLATE_RENDERER_VERSION as Xt, CONTRACT_TEMPLATE_RESERVED_VARIABLE_KEYS as Zt, CONTRACT_TEMPLATE_STYLE_VERSION as Qt, CONTRACT_TEMPLATE_VARIABLE_KEY_PATTERN as $t, ContractTemplatePageDecorationValidationError as en, DEFAULT_ADVANCED_CHOICE_FIELD_TYPES as tn, DEFAULT_BUILTIN_SELECTOR_FIELD_TYPES as nn, DEFAULT_CHECKBOX_FIELD_TYPE as rn, DEFAULT_CUSTOM_FIELD_TYPES as an, DEFAULT_FIELD_STYLE as on, DEFAULT_FIELD_TYPES as sn, DEFAULT_IMAGE_FIELD_TYPE as cn, DEFAULT_MULTILINE_LINE_HEIGHT as ln, DEFAULT_MULTILINE_ROWS as un, DEFAULT_PAGE_SIZE as dn, PAGE_SIZE_OPTIONS as fn, buildTemplateExpressionHtml as pn, buildTemplateHtml as mn, buildTemplatePreviewHtml as hn, buildTemplatePreviewPages as gn, cloneTemplateValue as _n, collectTemplateValueVariableKeys as vn, collectTemplateVariableKeys as yn, constrainTemplatePageSizes as bn, createBlankPage as xn, createBlankTemplate as Sn, createDefaultPage as Cn, createDefaultTemplate as wn, createDesignerId as Tn, createTemplateBodySync as En, createTemplateVariable as Dn, exportTemplateValue as On, findPageSizeOption as kn, getFieldOption as An, getPageSizeKey as jn, getPageSizeOption as $, inferPageFormat as Mn, normalizeContractTemplateMaxPages as Nn, normalizePageSizeOptions as Pn, normalizeTemplateValue as Fn, resolvePageSize as In, splitPageContentByMeasurements as Ln, syncTemplateVariablesWithPages as Rn, validateContractTemplateVariableKey as zn, validateTemplateValue as Bn } from "./components/pro-contract-template-designer/src/composables/use-template-designer.mjs";
65
+ import { isSafeContractImageUrl as Vn } from "./components/pro-contract-template-designer/src/utils/image-url.mjs";
66
+ import { buildInitialRenderValues as Hn, buildTemplateRenderHtml as Un, buildTemplateRenderPages as Wn, buildTemplateVariableData as Gn, isEmptyRenderValue as Kn, normalizeRenderValues as qn, resolveTemplateRenderSubmitErrors as Jn, sanitizeContractRendererHtml as Yn, validateTemplateRenderStructure as Xn, validateTemplateRenderValues as Zn } from "./components/pro-contract-template-designer/src/utils/template-renderer.mjs";
67
+ import { buildContractSigningTemplateRenderPages as Qn, getContractSigningTemplateDisplayError as $n, isContractSigningTemplateFile as er, isContractSigningTemplateSource as tr, validateContractSigningTemplateFile as nr } from "./components/contract-signing-location/src/template-source.mjs";
68
+ import { ContractSigningLocationBuildError as rr, buildContractSigningLocationOutput as ir, buildContractSigningLocationRules as ar, cloneContractSigningLocationValue as or, createContractSigningLocationValue as sr, createContractSigningPlacement as cr, findContractSigningPage as lr, getContractSigningHomePage as ur, isContractSigningPageUsable as dr, normalizeContractSigningLocationValue as fr, normalizeContractSigningProviderValue as pr, patchContractSigningPlacement as mr, resolveContractSigningDefaultSealTypes as hr, resolveContractSigningPreviewPageSize as gr, validateContractSigningLocationValue as _r } from "./components/contract-signing-location/src/location-rules.mjs";
69
+ import { CONTRACT_SIGNING_FALLBACK_PAGE_SIZE as vr, CONTRACT_SIGNING_PAGE_GAP as yr, CONTRACT_SIGNING_VIRTUAL_BUFFER_PAGES as br, buildPageLayouts as xr, contentPointToPagePoint as Sr, findPageAtOffset as Cr, getContractSigningAutoScrollDelta as wr, getPageLayoutScrollTop as Tr, getPageLayoutsContentSize as Er, getVisibleRange as Dr } from "./components/contract-signing-location/src/page-layout.mjs";
70
+ import { formatContractSigningDate as Or, getContractSigningDateDataUrl as kr, getContractSigningDateSvgDataUrl as Ar, getContractSigningPlacementDataUrl as jr, getContractSigningPlacementVisual as Mr, getContractSigningSealDataUrl as Nr, getContractSigningSealLabel as Pr, getContractSigningSealSvgDataUrl as Fr, getContractSigningSignatureDataUrl as Ir, getContractSigningSignaturePngDataUrl as Lr, getContractSigningSignatureSvgDataUrl as Rr, isContractSigningVisualDataUrl as zr, isSafeContractSigningVisualDataUrl as Br, resolveContractSigningSealLabel as Vr, toContractSigningSvgDataUrl as Hr } from "./components/contract-signing-location/src/signing-visuals.mjs";
71
+ import Ur from "./components/contract-signing-location/index.mjs";
72
+ import { DEFAULT_CONTRACT_IMAGE_COMPRESSION as Wr, MAX_CONTRACT_IMAGE_BYTES as Gr, MAX_CONTRACT_IMAGE_DIMENSION as Kr, MIN_CONTRACT_IMAGE_DIMENSION as qr, compressContractImage as Jr, normalizeContractImageCompression as Yr, normalizeContractImageDimension as Xr, processContractImageFile as Zr, readContractImageFileAsDataUrl as Qr, resolveContractImageResizeDimensions as $r } from "./components/pro-contract-template-designer/src/utils/content-image.mjs";
73
+ import { CUSTOM_SIGNING_LAYOUT as ei, DUAL_PARTY_SIGNING_LAYOUT as ti, MAX_SIGNING_LAYOUT_PARTY_COUNT as ni, MIN_SIGNING_LAYOUT_PARTY_COUNT as ri, SIGNING_LAYOUT_ARRANGEMENTS as ii, SIGNING_LAYOUT_ARRANGEMENT_LABELS as ai, SIGNING_LAYOUT_ATTRIBUTE_VALUES as oi, SIGNING_LAYOUT_FIELD_KEYS as si, SIGNING_LAYOUT_FIELD_LABELS as ci, SIGNING_LAYOUT_PRESETS as li, SIGNING_LAYOUT_PRESET_KEYS as ui, buildDualPartySigningLayoutPreset as di, buildSigningLayoutContent as fi, buildSigningLayoutPresetContent as pi, buildSigningLayoutPreviewModel as mi, describeSigningLayoutOptions as hi, isSigningLayoutAttributeValue as gi, isSigningLayoutPresetKey as _i, normalizeSigningLayoutOptions as vi, resolvePartyName as yi } from "./components/pro-contract-template-designer/src/utils/signing-layout-presets.mjs";
74
+ import { CONTRACT_TEMPLATE_DRAFT_CACHE_VERSION as bi, CONTRACT_TEMPLATE_FILES_DRAFT_CACHE_VERSION as xi, DEFAULT_DRAFT_CACHE_INTERVAL as Si, DEFAULT_DRAFT_CACHE_KEY as Ci, DEFAULT_DRAFT_CACHE_MAX_BYTES as wi, clearTemplateDraftCache as Ti, createDraftCacheStatus as Ei, estimateDraftCacheBytes as Di, formatDraftCacheSavedAt as Oi, getBrowserDraftCacheStorage as ki, isBlankTemplateDraftValue as Ai, isBlankTemplateFilesDraftValue as ji, loadTemplateDraftCache as Mi, loadTemplateFilesDraftCache as Ni, saveTemplateDraftCache as Pi, saveTemplateFilesDraftCache as Fi } from "./components/pro-contract-template-designer/src/composables/use-template-draft-cache.mjs";
75
+ import { cloneContractTemplateFiles as Ii, constrainContractTemplateFiles as Li, createContractTemplateFile as Ri, exportContractTemplateFiles as zi, moveContractTemplateFile as Bi, normalizeContractTemplateFiles as Vi, removeContractTemplateFile as Hi, renameContractTemplateFile as Ui, replaceContractTemplateFile as Wi, resolveContractTemplateActiveFileId as Gi } from "./components/pro-contract-template-designer/src/composables/use-template-files.mjs";
76
+ import Ki, { GdAntProContractTemplateRenderer as qi } from "./components/pro-contract-template-designer/index.mjs";
77
+ import { CONTRACT_SIGNING_FLOW_ACTION_LABELS as Ji, CONTRACT_SIGNING_FLOW_IDENTITY_OPTIONS as Yi, CONTRACT_SIGNING_FLOW_MAX_ZOOM as Xi, CONTRACT_SIGNING_FLOW_MIN_ZOOM as Zi, CONTRACT_SIGNING_FLOW_SEAL_TYPES as Qi, CONTRACT_SIGNING_FLOW_SIGN_ACTIONS as $i, CONTRACT_SIGNING_FLOW_ZOOM_STEP as ea, isContractSigningFlowInteractiveTarget as ta, normalizeContractSigningFlowZoom as na, resolveContractSigningFlowZoomShortcut as ra, resolveContractSigningFlowZoomShortcutForTarget as ia } from "./components/pro-contract-signing-flow/src/constants.mjs";
78
+ import { buildConnectList as aa, createDefaultSignRule as oa, createEndNode as sa, createId as ca, createInitialFlow as la, createSignNode as ua, createStartNode as da, normalizeContractSigningFlow as fa, normalizeSignRule as pa, useContractSigningFlow as ma, validateContractSigningFlow as ha } from "./components/pro-contract-signing-flow/src/composables/use-contract-signing-flow.mjs";
79
+ import ga from "./components/pro-contract-signing-flow/index.mjs";
80
+ import { useContractTemplateAgent as _a } from "./components/pro-contract-template-agent/src/composables/use-contract-template-agent.mjs";
81
+ import { adaptContractTemplateAgentSpec as va } from "./components/pro-contract-template-agent/src/utils/contract-template-agent-adapter.mjs";
82
+ import ya, { GdAntProContractTemplateAgentPanel as ba, GdAntProContractTemplateAgentPreview as xa } from "./components/pro-contract-template-agent/index.mjs";
83
+ import { setupAppConfig as Sa, useBasicAppConfig as Ca } from "./components/hooks/use-basic-app-config.mjs";
84
+ export { Yt as ALL_DEFAULT_FIELD_TYPES, we as CONTRACT_PRINT_FONT_UNCONFIGURED_MESSAGE, Oe as CONTRACT_SIGNING_AUTO_SCROLL_EDGE_PX, ke as CONTRACT_SIGNING_CSS_PX_PER_POINT, vr as CONTRACT_SIGNING_FALLBACK_PAGE_SIZE, Ji as CONTRACT_SIGNING_FLOW_ACTION_LABELS, Yi as CONTRACT_SIGNING_FLOW_IDENTITY_OPTIONS, Xi as CONTRACT_SIGNING_FLOW_MAX_ZOOM, Zi as CONTRACT_SIGNING_FLOW_MIN_ZOOM, Qi as CONTRACT_SIGNING_FLOW_SEAL_TYPES, $i as CONTRACT_SIGNING_FLOW_SIGN_ACTIONS, ea as CONTRACT_SIGNING_FLOW_ZOOM_STEP, Ae as CONTRACT_SIGNING_MIN_PLACEMENT_SIZE, yr as CONTRACT_SIGNING_PAGE_GAP, je as CONTRACT_SIGNING_PLACEMENT_LABELS, Me as CONTRACT_SIGNING_PLACEMENT_MIME, Ne as CONTRACT_SIGNING_PREVIEW_CONCURRENCY, Pe as CONTRACT_SIGNING_PX_PER_MM, _t as CONTRACT_SIGNING_RENDER_ORIGIN_OFFSET, Fe as CONTRACT_SIGNING_SEAL_MAX_SIZE, Ie as CONTRACT_SIGNING_SEAL_MIN_SIZE, Le as CONTRACT_SIGNING_SEAL_TYPE_OPTIONS, Re as CONTRACT_SIGNING_SEAL_TYPE_PRESETS, ze as CONTRACT_SIGNING_SIZE_PROFILES, vt as CONTRACT_SIGNING_SNAP_THRESHOLD_PX, br as CONTRACT_SIGNING_VIRTUAL_BUFFER_PAGES, Be as CONTRACT_SIGNING_VISIBLE_PAGES_DEBOUNCE_MS, bi as CONTRACT_TEMPLATE_DRAFT_CACHE_VERSION, xi as CONTRACT_TEMPLATE_FILES_DRAFT_CACHE_VERSION, Xt as CONTRACT_TEMPLATE_RENDERER_VERSION, Zt as CONTRACT_TEMPLATE_RESERVED_VARIABLE_KEYS, Qt as CONTRACT_TEMPLATE_STYLE_VERSION, $t as CONTRACT_TEMPLATE_VARIABLE_KEY_PATTERN, st as CONTRACT_TEXT_STYLE_PRESETS, ct as CONTRACT_TEXT_STYLE_PRESET_COMMANDS, ei as CUSTOM_SIGNING_LAYOUT, rr as ContractSigningLocationBuildError, en as ContractTemplatePageDecorationValidationError, u as CoverScrollbarProps, tn as DEFAULT_ADVANCED_CHOICE_FIELD_TYPES, nn as DEFAULT_BUILTIN_SELECTOR_FIELD_TYPES, rn as DEFAULT_CHECKBOX_FIELD_TYPE, lt as DEFAULT_CONTRACT_FONT_FAMILY, Wr as DEFAULT_CONTRACT_IMAGE_COMPRESSION, an as DEFAULT_CUSTOM_FIELD_TYPES, Si as DEFAULT_DRAFT_CACHE_INTERVAL, Ci as DEFAULT_DRAFT_CACHE_KEY, wi as DEFAULT_DRAFT_CACHE_MAX_BYTES, on as DEFAULT_FIELD_STYLE, sn as DEFAULT_FIELD_TYPES, ut as DEFAULT_FONT_FAMILY_OPTIONS, dt as DEFAULT_FONT_SIZE_PRESETS, cn as DEFAULT_IMAGE_FIELD_TYPE, ln as DEFAULT_MULTILINE_LINE_HEIGHT, un as DEFAULT_MULTILINE_ROWS, dn as DEFAULT_PAGE_SIZE, ft as DEFAULT_TEXT_ALIGN_OPTIONS, Se as DRAWER_SIZE_WIDTH, ti as DUAL_PARTY_SIGNING_LAYOUT, fe as FORM_RENDER_CONTEXT_KEY, pe as FormItemProps, me as FormRenderProps, ne as GET_DEPT_TREE_URL, J as GTE_OPTIONS_URL, M as GTE_ORGTREE_URL, t as GdAntCollapseTranstion, Ur as GdAntContractSigningLocation, d as GdAntCoverScrollBar, ae as GdAntDeptSelector, T as GdAntIcon, A as GdAntPlusUpload, b as GdAntProArea, _e as GdAntProCell, ve as GdAntProCellGroup, ga as GdAntProContractSigningFlow, ba as GdAntProContractTemplateAgentPanel, xa as GdAntProContractTemplateAgentPreview, ya as GdAntProContractTemplateAgentWorkbench, Ki as GdAntProContractTemplateDesigner, qi as GdAntProContractTemplateRenderer, Ce as GdAntProDrawer, xe as GdAntProDynamicTags, he as GdAntProFormRender, k as GdAntProLoading, le as GdAntProMenuTree, a as GdAntProModal, j as GdAntProOverlay, _ as GdAntProPicker, Q as GdAntProRoleSelector, V as GdAntProSelector, be as GdAntProSelectorGroup, S as GdAntProSignature, w as GdAntProTable, m as GdAntProTag, de as GdAntProTagGroup, s as GdAntProTitle, O as GdAntProUpload, q as GdAntProUserAvatar, k as GdAntProloading, Z as GdAntRoleSelector, f as GdAntScaleVirtualList, l as GdAntScrollBar, K as GdAntUserAvatar, H as GdAntUserSelector, U as GdAntUserSelectorCheckbox, W as GdAntUserSelectorDirectory, G as GdAntUserSelectorDrilldown, Gr as MAX_CONTRACT_IMAGE_BYTES, Kr as MAX_CONTRACT_IMAGE_DIMENSION, ni as MAX_SIGNING_LAYOUT_PARTY_COUNT, qe as MAX_SIGNING_MARK_DIMENSION, oe as MENU_TREE_URL, qr as MIN_CONTRACT_IMAGE_DIMENSION, ri as MIN_SIGNING_LAYOUT_PARTY_COUNT, Je as MIN_SIGNING_MARK_DIMENSION, fn as PAGE_SIZE_OPTIONS, ge as PRO_CELL_GROUP_KEY, h as PickerApiEnum, v as ProAreaProps, g as ProPickerProps, x as ProSignatureProps, ue as ProTagGroupProps, L as ProUserSelector, z as ProUserSelectorCheckbox, R as ProUserSelectorDrilldown, ii as SIGNING_LAYOUT_ARRANGEMENTS, ai as SIGNING_LAYOUT_ARRANGEMENT_LABELS, oi as SIGNING_LAYOUT_ATTRIBUTE_VALUES, si as SIGNING_LAYOUT_FIELD_KEYS, ci as SIGNING_LAYOUT_FIELD_LABELS, li as SIGNING_LAYOUT_PRESETS, ui as SIGNING_LAYOUT_PRESET_KEYS, Ye as SIGNING_MARK_DEFAULT_LABELS, Xe as SIGNING_MARK_DEFAULT_SIZES, Ze as SIGNING_MARK_TYPE_LABELS, o as TitleProps, E as UploadContextKey, N as UserSelectorProps, va as adaptContractTemplateAgentSpec, aa as buildConnectList, ir as buildContractSigningLocationOutput, ar as buildContractSigningLocationRules, Qn as buildContractSigningTemplateRenderPages, di as buildDualPartySigningLayoutPreset, Hn as buildInitialRenderValues, xr as buildPageLayouts, It as buildRadioOptionNodes, Lt as buildRadioOptionsHtml, fi as buildSigningLayoutContent, pi as buildSigningLayoutPresetContent, mi as buildSigningLayoutPreviewModel, Qe as buildSigningMarkAttrs, pn as buildTemplateExpressionHtml, mn as buildTemplateHtml, hn as buildTemplatePreviewHtml, gn as buildTemplatePreviewPages, Un as buildTemplateRenderHtml, Wn as buildTemplateRenderPages, Gn as buildTemplateVariableData, yt as canResizeContractSigningPlacement, bt as clampContractSigningPlacement, xt as clampContractSigningZoom, Ti as clearTemplateDraftCache, or as cloneContractSigningLocationValue, Ii as cloneContractTemplateFiles, _n as cloneTemplateValue, e as collapseProps, vn as collectTemplateValueVariableKeys, yn as collectTemplateVariableKeys, Jr as compressContractImage, Te as configureContractPrintFonts, Li as constrainContractTemplateFiles, bn as constrainTemplatePageSizes, Sr as contentPointToPagePoint, xn as createBlankPage, Sn as createBlankTemplate, sr as createContractSigningLocationValue, cr as createContractSigningPlacement, Ri as createContractTemplateFile, Cn as createDefaultPage, oa as createDefaultSignRule, wn as createDefaultTemplate, Tn as createDesignerId, Ei as createDraftCacheStatus, sa as createEndNode, ca as createId, la as createInitialFlow, ua as createSignNode, da as createStartNode, En as createTemplateBodySync, Dn as createTemplateVariable, Rt as decodeContractTemplateJsonAttribute, re as deptSelectorEmits, ie as deptSelectorProps, hi as describeSigningLayoutOptions, St as displayPointToContractPoint, zt as encodeContractTemplateJsonAttribute, Di as estimateDraftCacheBytes, zi as exportContractTemplateFiles, On as exportTemplateValue, lr as findContractSigningPage, Cr as findPageAtOffset, kn as findPageSizeOption, Or as formatContractSigningDate, Bt as formatContractTemplateRenderValue, Oi as formatDraftCacheSavedAt, ee as generatePalette, ki as getBrowserDraftCacheStorage, wr as getContractSigningAutoScrollDelta, kr as getContractSigningDateDataUrl, Ar as getContractSigningDateSvgDataUrl, ur as getContractSigningHomePage, jr as getContractSigningPlacementDataUrl, Ct as getContractSigningPlacementDistances, wt as getContractSigningPlacementSize, Mr as getContractSigningPlacementVisual, Tt as getContractSigningRuleGeometry, Nr as getContractSigningSealDataUrl, Pr as getContractSigningSealLabel, Fr as getContractSigningSealSvgDataUrl, Ir as getContractSigningSignatureDataUrl, Lr as getContractSigningSignaturePngDataUrl, Rr as getContractSigningSignatureSvgDataUrl, $n as getContractSigningTemplateDisplayError, pt as getContractTextStylePreset, An as getFieldOption, Tr as getPageLayoutScrollTop, Er as getPageLayoutsContentSize, jn as getPageSizeKey, $ as getPageSizeOption, $e as getSigningMarkDefaultLabel, et as getSigningMarkDefaultSize, Dr as getVisibleRange, Mn as inferPageFormat, Vt as isAllowedContractTemplateRemoteUrl, Ai as isBlankTemplateDraftValue, ji as isBlankTemplateFilesDraftValue, ta as isContractSigningFlowInteractiveTarget, dr as isContractSigningPageUsable, er as isContractSigningTemplateFile, tr as isContractSigningTemplateSource, zr as isContractSigningVisualDataUrl, Nt as isContractTemplateAdvancedChoiceFieldType, Pt as isContractTemplateBuiltinSelectorFieldType, Ft as isContractTemplateFieldType, Ht as isContractTemplateSelectionValue, tt as isContractTemplateSigningMarkType, Kn as isEmptyRenderValue, Vn as isSafeContractImageUrl, Br as isSafeContractSigningVisualDataUrl, gi as isSigningLayoutAttributeValue, _i as isSigningLayoutPresetKey, Mi as loadTemplateDraftCache, Ni as loadTemplateFilesDraftCache, Ve as millimetersToContractSigningCssPixels, He as millimetersToContractSigningPixels, Et as moveContractSigningPlacementByDisplayDelta, Bi as moveContractTemplateFile, Yr as normalizeContractImageCompression, Xr as normalizeContractImageDimension, Dt as normalizeContractSigningCoordinateDimension, Ot as normalizeContractSigningCoordinateScale, fa as normalizeContractSigningFlow, na as normalizeContractSigningFlowZoom, fr as normalizeContractSigningLocationValue, pr as normalizeContractSigningProviderValue, Ut as normalizeContractTemplateControlOptions, Vi as normalizeContractTemplateFiles, Wt as normalizeContractTemplateJsonObject, Nn as normalizeContractTemplateMaxPages, Gt as normalizeContractTemplateRequestTimeout, Kt as normalizeContractTemplateSelectionValue, qt as normalizeContractTemplateSelectionValues, mt as normalizeFontFamilyValue, Pn as normalizePageSizeOptions, qn as normalizeRenderValues, pa as normalizeSignRule, vi as normalizeSigningLayoutOptions, nt as normalizeSigningMarkDimension, Fn as normalizeTemplateValue, mr as patchContractSigningPlacement, se as proMenuTreeEmits, ce as proMenuTreeProps, n as proModalEmits, p as proTagProps, Zr as processContractImageFile, Qr as readContractImageFileAsDataUrl, Jt as readContractTemplateControlOptions, Hi as removeContractTemplateFile, Ui as renameContractTemplateFile, Wi as replaceContractTemplateFile, kt as resizeContractSigningSealGeometry, Ee as resolveContractFontBaseUrl, $r as resolveContractImageResizeDimensions, hr as resolveContractSigningDefaultSealTypes, ra as resolveContractSigningFlowZoomShortcut, ia as resolveContractSigningFlowZoomShortcutForTarget, gr as resolveContractSigningPreviewPageSize, Vr as resolveContractSigningSealLabel, Ue as resolveContractSigningSealSizeInCssPixels, We as resolveContractSigningSealSizeInPixels, At as resolveContractSigningSealSizeLimit, Ge as resolveContractSigningSealTypeOption, jt as resolveContractSigningSizeProfile, Gi as resolveContractTemplateActiveFileId, ht as resolveContractTextStylePresetCommands, gt as resolveFontFamilyOptions, In as resolvePageSize, yi as resolvePartyName, rt as resolveSigningMarkPresentation, it as resolveSigningMarkResizeDimensions, at as resolveSigningMarkResizeHandles, ot as resolveSigningMarkSealAspectRatio, Jn as resolveTemplateRenderSubmitErrors, P as resolveUserSelectorMaxCount, Y as roleSelectorEmits, X as roleSelectorProps, Yn as sanitizeContractRendererHtml, Pi as saveTemplateDraftCache, Fi as saveTemplateFilesDraftCache, c as scrollbarProps, ye as selectContextKey, F as selectUserContextKey, Sa as setupAppConfig, te as setupTheme, Mt as snapContractSigningPlacement, Ln as splitPageContentByMeasurements, Rn as syncTemplateVariablesWithPages, De as toAbsoluteContractFontBaseUrl, Ke as toContractSigningRulePageSize, Hr as toContractSigningSvgDataUrl, Ca as useBasicAppConfig, ma as useContractSigningFlow, _a as useContractTemplateAgent, y as useProArea, r as useProModal, i as useProModalInit, C as useProTable, D as useUpload, B as useUserSelector, I as userSelectorEmits, ha as validateContractSigningFlow, _r as validateContractSigningLocationValue, nr as validateContractSigningTemplateFile, zn as validateContractTemplateVariableKey, Xn as validateTemplateRenderStructure, Zn as validateTemplateRenderValues, Bn as validateTemplateValue };
@@ -0,0 +1 @@
1
+ var e=require(`./ContractTemplateChoiceOptionsEditor.vue.cjs`).default;exports.default=e;
@@ -0,0 +1 @@
1
+ require(`../../../_virtual/_rolldown/runtime.cjs`);let e=require(`vue`),t=require(`ant-design-vue`),n=require(`@ant-design/icons-vue`);var r={class:`gd-contract-choice-options`},i={key:0,class:`gd-contract-choice-options__error`},a={class:`gd-contract-choice-options__actions`},o=(0,e.defineComponent)({name:`ContractTemplateChoiceOptionsEditor`,__name:`ContractTemplateChoiceOptionsEditor`,props:{options:{},variableType:{},readonly:{type:Boolean}},emits:[`change`],setup(o,{emit:s}){let c=o,l=s,u=(0,e.ref)((c.options??[]).map(e=>({label:e.label??``,value:String(e.value??``)}))),d=(0,e.computed)(()=>u.value.map((e,t)=>f(u.value,t)));function f(e,t){let n=e[t]?.label.trim()??``,r=e[t]?.value.trim()??``;return n?r?e.some((e,n)=>n!==t&&e.value.trim()===r)?`选项值不能重复`:``:`选项值不能为空`:`显示文本不能为空`}function p(){c.readonly||d.value.some(Boolean)||l(`change`,u.value.map(e=>({value:e.value.trim(),label:e.label.trim(),type:c.variableType||`select`})))}function m(e,t){c.readonly||(u.value=u.value.map((n,r)=>r===e?{...n,...t}:n),p())}function h(e,t){if(c.readonly)return;let n=e+t;if(n<0||n>=u.value.length)return;let r=u.value.slice(),[i]=r.splice(e,1);r.splice(n,0,i),u.value=r,p()}function g(e){c.readonly||(u.value=u.value.filter((t,n)=>n!==e),p())}function _(){if(c.readonly)return;let e=new Set(u.value.flatMap(e=>[e.label.trim(),e.value.trim()])),t=u.value.length+1;for(;e.has(`选项${t}`)||e.has(`option${t}`);)t+=1;u.value=[...u.value,{label:`选项${t}`,value:`option${t}`}],p()}return(s,c)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,r,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(u.value,(r,s)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:s,class:(0,e.normalizeClass)([`gd-contract-choice-options__row`,{"is-invalid":!!d.value[s]}])},[(0,e.createVNode)((0,e.unref)(t.Input),{value:r.label,disabled:o.readonly,placeholder:`显示文本`,"aria-label":`选项 ${s+1} 显示文本`,"onUpdate:value":e=>m(s,{label:String(e??``)})},null,8,[`value`,`disabled`,`aria-label`,`onUpdate:value`]),(0,e.createVNode)((0,e.unref)(t.Input),{value:r.value,disabled:o.readonly,placeholder:`选项值`,"aria-label":`选项 ${s+1} 选项值`,"onUpdate:value":e=>m(s,{value:String(e??``)})},null,8,[`value`,`disabled`,`aria-label`,`onUpdate:value`]),d.value[s]?((0,e.openBlock)(),(0,e.createElementBlock)(`p`,i,(0,e.toDisplayString)(d.value[s]),1)):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`div`,a,[(0,e.createVNode)((0,e.unref)(t.Button),{type:`text`,size:`small`,disabled:o.readonly||s===0,"aria-label":`上移选项`,onClick:e=>h(s,-1)},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.ArrowUpOutlined),{"aria-hidden":`true`})]),_:1},8,[`disabled`,`onClick`]),(0,e.createVNode)((0,e.unref)(t.Button),{type:`text`,size:`small`,disabled:o.readonly||s===u.value.length-1,"aria-label":`下移选项`,onClick:e=>h(s,1)},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.ArrowDownOutlined),{"aria-hidden":`true`})]),_:1},8,[`disabled`,`onClick`]),(0,e.createVNode)((0,e.unref)(t.Button),{type:`text`,size:`small`,danger:``,disabled:o.readonly,"aria-label":`删除选项`,onClick:e=>g(s)},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.DeleteOutlined),{"aria-hidden":`true`})]),_:1},8,[`disabled`,`onClick`])])],2))),128)),(0,e.createVNode)((0,e.unref)(t.Button),{block:``,disabled:o.readonly,"aria-label":`添加选项`,onClick:_},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.PlusOutlined),{"aria-hidden":`true`}),c[0]||=(0,e.createTextVNode)(` 添加选项 `,-1)]),_:1},8,[`disabled`])]))}});exports.default=o;
@@ -1,2 +1 @@
1
- require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`./composables/use-template-designer.cjs`),t=require(`./utils/template-tool-icons.cjs`),n=require(`./ContractTemplatePanelTabs.cjs`),ee=require(`./ContractTemplateControlLibrary.cjs`),te=require(`./ContractTemplateVariableAdvanced.cjs`);let r=require(`vue`),i=require(`ant-design-vue`),a=require(`@ant-design/icons-vue`);var ne=[`aria-label`,`aria-expanded`],re={class:`gd-contract-template-designer__panel-stack`},ie={class:`gd-contract-authoring-panel__body`},ae=[`id`,`aria-labelledby`],oe=[`id`,`aria-labelledby`],se={class:`gd-contract-authoring-panel__section-heading`},ce={key:0,class:`gd-contract-authoring-panel__meta`},le={key:0,class:`gd-contract-authoring-panel__empty`},ue={class:`gd-contract-authoring-panel__selection`},o={class:`gd-contract-authoring-panel__variable-icon`,"aria-hidden":`true`},s={class:`gd-contract-authoring-panel__variable-copy`},c={class:`gd-contract-authoring-panel__item-title`},l={class:`gd-contract-authoring-panel__meta`},u={class:`gd-contract-authoring-panel__property-group`},d={class:`gd-contract-authoring-panel__fields`},f={class:`gd-contract-authoring-panel__field`},p={class:`gd-contract-authoring-panel__field`},m={class:`gd-contract-authoring-panel__field`},h={open:``,class:`gd-contract-authoring-panel__property-group`},g={class:`gd-contract-authoring-panel__group-title`},_={class:`gd-contract-authoring-panel__fields`},v={class:`gd-contract-authoring-panel__switch`},y={class:`gd-contract-authoring-panel__switch`},b={key:0,class:`gd-contract-authoring-panel__field`},x={key:1,class:`gd-contract-authoring-panel__field`},S={class:`gd-contract-authoring-panel__field`},C={class:`gd-contract-authoring-panel__field`},w={class:`gd-contract-authoring-panel__switch`},T={class:`gd-contract-authoring-panel__field`},E={class:`gd-contract-authoring-panel__field`},D={key:4,class:`gd-contract-authoring-panel__switch`},O={class:`gd-contract-authoring-panel__field`},k={class:`gd-contract-authoring-panel__field`},A={key:0,class:`gd-contract-authoring-panel__field`},j={class:`gd-contract-authoring-panel__field`},M={class:`gd-contract-authoring-panel__field`},N={class:`gd-contract-authoring-panel__property-group`},P={class:`gd-contract-authoring-panel__group-title`},F={class:`gd-contract-authoring-panel__fields`},I={class:`gd-contract-authoring-panel__field-pair`},L={class:`gd-contract-authoring-panel__field`},R={class:`gd-contract-authoring-panel__field`},z={class:`gd-contract-authoring-panel__switch`},B={class:`gd-contract-authoring-panel__switch`},V={class:`gd-contract-authoring-panel__field`},de={class:`gd-contract-authoring-panel__field`},H={class:`gd-contract-authoring-panel__color`},fe=[`value`,`disabled`],pe={class:`gd-contract-authoring-panel__color`},me=[`value`,`disabled`],he={class:`gd-contract-authoring-panel__color`},ge=[`value`,`disabled`],_e={class:`gd-contract-authoring-panel__field`},ve={class:`gd-contract-authoring-panel__field`},ye={class:`gd-contract-authoring-panel__field`},be={class:`gd-contract-authoring-panel__danger-zone`},U=(0,r.defineComponent)({name:`ContractTemplateDesignerInspector`,__name:`ContractTemplateDesignerInspector`,props:{collapsed:{type:Boolean},readonly:{type:Boolean},disabled:{type:Boolean},bodyControlToolItems:{},selectedVariable:{},variables:{},currentVariableFontFamily:{},fontFamilySelectOptions:{},textAlignOptions:{},borderStyleOptions:{},objectFitOptions:{},selectedVariableWidthMax:{},selectedVariableHeightMax:{},minFontSize:{},maxFontSize:{},defaultMultilineRows:{}},emits:[`toggle`,`variableDragStart`,`insertVariable`,`duplicateVariable`,`removeVariable`,`patchVariable`,`renameVariable`,`patchStyle`,`patchMultiline`,`patchRows`,`patchFontFamily`,`patchFontSize`,`patchTextAlign`,`patchBorderStyle`,`patchObjectFit`],setup(U,{emit:W}){let G=U,K=W,q=`gd-contract-inspector-${(0,r.useId)()}`,J=(0,r.shallowRef)(`insert`),xe=[{value:`insert`,label:`插入控件`},{value:`properties`,label:`控件属性`}],Y=(0,r.computed)(()=>G.readonly||G.disabled),Se=(0,r.computed)(()=>G.selectedVariable?G.bodyControlToolItems.find(e=>e.type===(G.selectedVariable?.type||`text`))?.label||e.getFieldOption(G.selectedVariable.type||`text`).label:``),Ce=(0,r.computed)(()=>G.selectedVariable?.type===`select`||G.selectedVariable?.type===`radio`),X=(0,r.computed)(()=>G.selectedVariable?.type===`select`||!!G.selectedVariable?.type?.endsWith(`-selector`)),we=(0,r.computed)(()=>(G.selectedVariable?.options??[]).map(e=>`${e.value}|${e.label}`).join(`
2
- `));(0,r.watch)(()=>G.selectedVariable?.id,e=>{J.value=e?`properties`:`insert`},{immediate:!0});function Z(e){G.selectedVariable&&!Y.value&&K(`patchVariable`,e)}function Q(e){G.selectedVariable&&!Y.value&&K(`patchStyle`,e)}function $(e){let t=G.selectedVariable?.dataSource;t&&Z({dataSource:{...t,...e}})}function Te(e){e===`none`?Z({dataSource:void 0}):e===`url`?Z({dataSource:{kind:`url`,url:``,method:`GET`}}):e===`resolver`&&Z({dataSource:{kind:`resolver`,resolverKey:``}})}function Ee(e){Z({options:e.target.value.split(/\r?\n/).map(e=>e.trim()).filter(Boolean).map(e=>{let[t,...n]=e.split(`|`);return{value:t.trim(),label:n.join(`|`).trim()||t.trim(),type:G.selectedVariable?.type||`select`}})})}function De(){G.selectedVariable&&!Y.value&&K(`duplicateVariable`,G.selectedVariable)}function Oe(){G.selectedVariable&&!Y.value&&K(`removeVariable`,G.selectedVariable)}return(U,W)=>((0,r.openBlock)(),(0,r.createElementBlock)(`aside`,{class:(0,r.normalizeClass)([`gd-contract-template-designer__inspector gd-contract-authoring-panel`,{"is-collapsed":G.collapsed}]),"aria-label":`控件插入与属性`},[(0,r.createVNode)((0,r.unref)(i.Tooltip),{title:G.collapsed?`展开属性栏`:`收起属性栏`},{default:(0,r.withCtx)(()=>[(0,r.createElementVNode)(`button`,{type:`button`,class:`gd-contract-template-designer__panel-handle gd-contract-authoring-panel__handle`,"aria-label":G.collapsed?`展开属性栏`:`收起属性栏`,"aria-expanded":!G.collapsed,onClick:W[0]||=e=>K(`toggle`)},[G.collapsed?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(a.LeftOutlined),{key:0,"aria-hidden":`true`})):((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(a.RightOutlined),{key:1,"aria-hidden":`true`}))],8,ne)]),_:1},8,[`title`]),(0,r.createElementVNode)(`div`,re,[(0,r.createElementVNode)(`div`,ie,[(0,r.createVNode)(n.default,{id:q,modelValue:J.value,"onUpdate:modelValue":W[1]||=e=>J.value=e,items:xe,label:`控件面板视图`},null,8,[`modelValue`]),(0,r.withDirectives)((0,r.createElementVNode)(`section`,{id:`${q}-panel-insert`,class:`gd-contract-authoring-panel__view`,role:`tabpanel`,"aria-labelledby":`${q}-tab-insert`},[(0,r.createVNode)(ee.default,{items:G.bodyControlToolItems,readonly:Y.value,onInsertVariable:W[2]||=e=>K(`insertVariable`,e),onVariableDragStart:W[3]||=(e,t)=>K(`variableDragStart`,e,t)},null,8,[`items`,`readonly`])],8,ae),[[r.vShow,J.value===`insert`]]),(0,r.withDirectives)((0,r.createElementVNode)(`section`,{id:`${q}-panel-properties`,class:`gd-contract-authoring-panel__view`,role:`tabpanel`,"aria-labelledby":`${q}-tab-properties`},[(0,r.createElementVNode)(`div`,se,[W[34]||=(0,r.createElementVNode)(`strong`,null,`属性`,-1),Y.value?((0,r.openBlock)(),(0,r.createElementBlock)(`small`,ce,`只读`)):(0,r.createCommentVNode)(``,!0)]),G.selectedVariable?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:G.selectedVariable.id,class:`gd-contract-authoring-panel__properties`},[(0,r.createElementVNode)(`div`,ue,[(0,r.createElementVNode)(`span`,o,[((0,r.openBlock)(),(0,r.createBlock)((0,r.resolveDynamicComponent)((0,r.unref)(t.resolveFieldTypeIcon)(G.selectedVariable.type))))]),(0,r.createElementVNode)(`div`,s,[(0,r.createElementVNode)(`span`,c,(0,r.toDisplayString)(G.selectedVariable.label),1),(0,r.createElementVNode)(`small`,l,(0,r.toDisplayString)(Se.value),1)]),(0,r.createVNode)((0,r.unref)(i.Tooltip),{title:`复制变量`},{default:(0,r.withCtx)(()=>[(0,r.createVNode)((0,r.unref)(i.Button),{type:`text`,disabled:Y.value,"aria-label":`复制变量`,onClick:De},{default:(0,r.withCtx)(()=>[(0,r.createVNode)((0,r.unref)(a.CopyOutlined),{"aria-hidden":`true`})]),_:1},8,[`disabled`])]),_:1})]),(0,r.createVNode)(te.default,{variable:G.selectedVariable,variables:G.variables,readonly:Y.value,onPatchVariable:Z,onRenameVariable:W[5]||=e=>K(`renameVariable`,e)},null,8,[`variable`,`variables`,`readonly`]),(0,r.createElementVNode)(`section`,u,[W[41]||=(0,r.createElementVNode)(`h3`,{class:`gd-contract-authoring-panel__group-title`},`基础信息`,-1),(0,r.createElementVNode)(`div`,d,[(0,r.createElementVNode)(`label`,f,[W[38]||=(0,r.createElementVNode)(`span`,null,`名称`,-1),(0,r.createVNode)((0,r.unref)(i.Input),{value:G.selectedVariable.label,disabled:Y.value,"aria-label":`变量名称`,onChange:W[6]||=e=>Z({label:e.target.value})},null,8,[`value`,`disabled`])]),(0,r.createElementVNode)(`label`,p,[W[39]||=(0,r.createElementVNode)(`span`,null,`占位文案`,-1),(0,r.createVNode)((0,r.unref)(i.Input),{value:G.selectedVariable.placeholder,disabled:Y.value,"aria-label":`占位文案`,onChange:W[7]||=e=>Z({placeholder:e.target.value})},null,8,[`value`,`disabled`])]),(0,r.createElementVNode)(`label`,m,[W[40]||=(0,r.createElementVNode)(`span`,null,`默认值`,-1),(0,r.createVNode)((0,r.unref)(i.Input),{value:G.selectedVariable.defaultValue,disabled:Y.value,"aria-label":`默认值`,onChange:W[8]||=e=>Z({defaultValue:e.target.value})},null,8,[`value`,`disabled`])])])]),(0,r.createElementVNode)(`details`,h,[(0,r.createElementVNode)(`summary`,g,[(0,r.createVNode)((0,r.unref)(a.RightOutlined),{class:`gd-contract-authoring-panel__chevron`,"aria-hidden":`true`}),W[42]||=(0,r.createElementVNode)(`span`,null,`填写规则`,-1)]),(0,r.createElementVNode)(`div`,_,[(0,r.createElementVNode)(`label`,v,[W[43]||=(0,r.createElementVNode)(`span`,null,`必填`,-1),(0,r.createVNode)((0,r.unref)(i.Switch),{checked:G.selectedVariable.required,disabled:Y.value,"aria-label":`必填`,onChange:W[9]||=e=>Z({required:!!e})},null,8,[`checked`,`disabled`])]),!G.selectedVariable.type||G.selectedVariable.type===`text`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[(0,r.createElementVNode)(`label`,y,[W[44]||=(0,r.createElementVNode)(`span`,null,`多行`,-1),(0,r.createVNode)((0,r.unref)(i.Switch),{checked:!!G.selectedVariable.multiline,disabled:Y.value,"aria-label":`多行`,onChange:W[10]||=e=>K(`patchMultiline`,!!e)},null,8,[`checked`,`disabled`])]),G.selectedVariable.multiline?((0,r.openBlock)(),(0,r.createElementBlock)(`label`,b,[W[45]||=(0,r.createElementVNode)(`span`,null,`行数`,-1),(0,r.createVNode)((0,r.unref)(i.InputNumber),{value:G.selectedVariable.rows||G.defaultMultilineRows,min:2,max:12,disabled:Y.value,"aria-label":`行数`,onChange:W[11]||=e=>K(`patchRows`,e)},null,8,[`value`,`disabled`])])):(0,r.createCommentVNode)(``,!0)],64)):(0,r.createCommentVNode)(``,!0),G.selectedVariable.type===`date`?((0,r.openBlock)(),(0,r.createElementBlock)(`label`,x,[W[46]||=(0,r.createElementVNode)(`span`,null,`日期格式`,-1),(0,r.createVNode)((0,r.unref)(i.Input),{value:G.selectedVariable.format,disabled:Y.value,"aria-label":`日期格式`,onChange:W[12]||=e=>Z({format:e.target.value})},null,8,[`value`,`disabled`])])):(0,r.createCommentVNode)(``,!0),G.selectedVariable.type===`number`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:2},[(0,r.createElementVNode)(`label`,S,[W[47]||=(0,r.createElementVNode)(`span`,null,`数字格式`,-1),(0,r.createVNode)((0,r.unref)(i.Input),{value:G.selectedVariable.format,disabled:Y.value,"aria-label":`数字格式`,onChange:W[13]||=e=>Z({format:e.target.value})},null,8,[`value`,`disabled`])]),(0,r.createElementVNode)(`label`,C,[W[48]||=(0,r.createElementVNode)(`span`,null,`小数位`,-1),(0,r.createVNode)((0,r.unref)(i.InputNumber),{value:G.selectedVariable.precision,min:0,max:6,disabled:Y.value,"aria-label":`小数位`,onChange:W[14]||=e=>Z({precision:typeof e==`number`?e:void 0})},null,8,[`value`,`disabled`])]),(0,r.createElementVNode)(`label`,w,[W[49]||=(0,r.createElementVNode)(`span`,null,`千分位`,-1),(0,r.createVNode)((0,r.unref)(i.Switch),{checked:G.selectedVariable.useGrouping!==!1,disabled:Y.value,"aria-label":`千分位`,onChange:W[15]||=e=>Z({useGrouping:!!e})},null,8,[`checked`,`disabled`])])],64)):(0,r.createCommentVNode)(``,!0),G.selectedVariable.type===`checkbox`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:3},[(0,r.createElementVNode)(`label`,T,[W[50]||=(0,r.createElementVNode)(`span`,null,`勾选文本`,-1),(0,r.createVNode)((0,r.unref)(i.Input),{value:G.selectedVariable.checkedText,disabled:Y.value,"aria-label":`勾选文本`,onChange:W[16]||=e=>Z({checkedText:e.target.value})},null,8,[`value`,`disabled`])]),(0,r.createElementVNode)(`label`,E,[W[51]||=(0,r.createElementVNode)(`span`,null,`未选文本`,-1),(0,r.createVNode)((0,r.unref)(i.Input),{value:G.selectedVariable.uncheckedText,disabled:Y.value,"aria-label":`未选文本`,onChange:W[17]||=e=>Z({uncheckedText:e.target.value})},null,8,[`value`,`disabled`])])],64)):(0,r.createCommentVNode)(``,!0),X.value?((0,r.openBlock)(),(0,r.createElementBlock)(`label`,D,[W[52]||=(0,r.createElementVNode)(`span`,null,`允许多选`,-1),(0,r.createVNode)((0,r.unref)(i.Switch),{checked:!!G.selectedVariable.multiple,disabled:Y.value,"aria-label":`允许多选`,onChange:W[18]||=e=>Z({multiple:!!e})},null,8,[`checked`,`disabled`])])):(0,r.createCommentVNode)(``,!0),Ce.value?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:5},[(0,r.createElementVNode)(`label`,O,[W[53]||=(0,r.createElementVNode)(`span`,null,[(0,r.createTextVNode)(`本地选项 `),(0,r.createElementVNode)(`small`,{class:`gd-contract-authoring-panel__meta`},`每行 value|label`)],-1),(0,r.createVNode)((0,r.unref)(i.Input).TextArea,{value:we.value,rows:4,disabled:Y.value,"aria-label":`本地选项`,onChange:Ee},null,8,[`value`,`disabled`])]),(0,r.createElementVNode)(`label`,k,[W[54]||=(0,r.createElementVNode)(`span`,null,`数据来源`,-1),(0,r.createVNode)((0,r.unref)(i.Select),{value:G.selectedVariable.dataSource?.kind||`none`,options:[{label:`仅本地选项`,value:`none`},{label:`宿主 Resolver`,value:`resolver`},{label:`受限 URL`,value:`url`}],disabled:Y.value,"aria-label":`数据来源`,onChange:Te},null,8,[`value`,`disabled`])]),G.selectedVariable.dataSource?.kind===`resolver`?((0,r.openBlock)(),(0,r.createElementBlock)(`label`,A,[W[55]||=(0,r.createElementVNode)(`span`,null,`Resolver Key`,-1),(0,r.createVNode)((0,r.unref)(i.Input),{value:G.selectedVariable.dataSource.resolverKey,disabled:Y.value,"aria-label":`Resolver Key`,onChange:W[19]||=e=>$({resolverKey:e.target.value})},null,8,[`value`,`disabled`])])):(0,r.createCommentVNode)(``,!0),G.selectedVariable.dataSource?.kind===`url`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[(0,r.createElementVNode)(`label`,j,[W[56]||=(0,r.createElementVNode)(`span`,null,`请求 URL`,-1),(0,r.createVNode)((0,r.unref)(i.Input),{value:G.selectedVariable.dataSource.url,disabled:Y.value,"aria-label":`请求 URL`,onChange:W[20]||=e=>$({url:e.target.value})},null,8,[`value`,`disabled`])]),(0,r.createElementVNode)(`label`,M,[W[57]||=(0,r.createElementVNode)(`span`,null,`请求方法`,-1),(0,r.createVNode)((0,r.unref)(i.Select),{value:G.selectedVariable.dataSource.method||`GET`,options:[{label:`GET`,value:`GET`},{label:`POST`,value:`POST`}],disabled:Y.value,"aria-label":`请求方法`,onChange:W[21]||=e=>$({method:e})},null,8,[`value`,`disabled`])])],64)):(0,r.createCommentVNode)(``,!0)],64)):(0,r.createCommentVNode)(``,!0)])]),(0,r.createElementVNode)(`details`,N,[(0,r.createElementVNode)(`summary`,P,[(0,r.createVNode)((0,r.unref)(a.RightOutlined),{class:`gd-contract-authoring-panel__chevron`,"aria-hidden":`true`}),W[58]||=(0,r.createElementVNode)(`span`,null,`外观`,-1)]),(0,r.createElementVNode)(`div`,F,[(0,r.createElementVNode)(`div`,I,[(0,r.createElementVNode)(`label`,L,[W[59]||=(0,r.createElementVNode)(`span`,null,[(0,r.createTextVNode)(`宽度 `),(0,r.createElementVNode)(`small`,{class:`gd-contract-authoring-panel__meta`},`px`)],-1),(0,r.createVNode)((0,r.unref)(i.InputNumber),{value:G.selectedVariable.width,min:48,max:G.selectedVariableWidthMax,disabled:Y.value,"aria-label":`控件宽度`,onChange:W[22]||=e=>Z({width:Number(e||48)})},null,8,[`value`,`max`,`disabled`])]),(0,r.createElementVNode)(`label`,R,[W[60]||=(0,r.createElementVNode)(`span`,null,[(0,r.createTextVNode)(`高度 `),(0,r.createElementVNode)(`small`,{class:`gd-contract-authoring-panel__meta`},`px`)],-1),(0,r.createVNode)((0,r.unref)(i.InputNumber),{value:G.selectedVariable.height,min:24,max:G.selectedVariableHeightMax,disabled:Y.value,"aria-label":`控件高度`,onChange:W[23]||=e=>Z({height:Number(e||24)})},null,8,[`value`,`max`,`disabled`])])]),(0,r.createElementVNode)(`label`,z,[W[61]||=(0,r.createElementVNode)(`span`,null,`边框`,-1),(0,r.createVNode)((0,r.unref)(i.Switch),{checked:!!G.selectedVariable.style?.border,disabled:Y.value,"aria-label":`边框`,onChange:W[24]||=e=>Q({border:!!e})},null,8,[`checked`,`disabled`])]),(0,r.createElementVNode)(`label`,B,[W[62]||=(0,r.createElementVNode)(`span`,null,`下划线`,-1),(0,r.createVNode)((0,r.unref)(i.Switch),{checked:!!G.selectedVariable.style?.underline,disabled:Y.value,"aria-label":`下划线`,onChange:W[25]||=e=>Q({underline:!!e})},null,8,[`checked`,`disabled`])]),(0,r.createElementVNode)(`label`,V,[W[63]||=(0,r.createElementVNode)(`span`,null,`字体`,-1),(0,r.createVNode)((0,r.unref)(i.Select),{value:G.currentVariableFontFamily,options:G.fontFamilySelectOptions,disabled:Y.value,"aria-label":`控件字体`,onChange:W[26]||=e=>K(`patchFontFamily`,e)},null,8,[`value`,`options`,`disabled`])]),(0,r.createElementVNode)(`label`,de,[W[64]||=(0,r.createElementVNode)(`span`,null,`字号`,-1),(0,r.createVNode)((0,r.unref)(i.InputNumber),{value:G.selectedVariable.style?.fontSize,min:G.minFontSize,max:G.maxFontSize,disabled:Y.value,"aria-label":`控件字号`,onChange:W[27]||=e=>K(`patchFontSize`,e)},null,8,[`value`,`min`,`max`,`disabled`])]),(0,r.createElementVNode)(`label`,H,[W[65]||=(0,r.createElementVNode)(`span`,null,`颜色`,-1),(0,r.createElementVNode)(`input`,{type:`color`,value:G.selectedVariable.style?.color||(0,r.unref)(e.DEFAULT_FIELD_STYLE).color,disabled:Y.value,"aria-label":`控件文字颜色`,onInput:W[28]||=e=>Q({color:e.target.value})},null,40,fe)]),(0,r.createElementVNode)(`label`,pe,[W[66]||=(0,r.createElementVNode)(`span`,null,`占位颜色`,-1),(0,r.createElementVNode)(`input`,{type:`color`,value:G.selectedVariable.style?.placeholderColor||(0,r.unref)(e.DEFAULT_FIELD_STYLE).placeholderColor,disabled:Y.value,"aria-label":`控件占位颜色`,onInput:W[29]||=e=>Q({placeholderColor:e.target.value})},null,40,me)]),(0,r.createElementVNode)(`label`,he,[W[67]||=(0,r.createElementVNode)(`span`,null,`线条颜色`,-1),(0,r.createElementVNode)(`input`,{type:`color`,value:G.selectedVariable.style?.lineColor||(0,r.unref)(e.DEFAULT_FIELD_STYLE).lineColor,disabled:Y.value,"aria-label":`控件线条颜色`,onInput:W[30]||=e=>Q({lineColor:e.target.value})},null,40,ge)]),(0,r.createElementVNode)(`label`,_e,[W[68]||=(0,r.createElementVNode)(`span`,null,`文字对齐`,-1),(0,r.createVNode)((0,r.unref)(i.Select),{value:G.selectedVariable.style?.textAlign||`left`,options:G.textAlignOptions,disabled:Y.value,"aria-label":`控件文字对齐`,onChange:W[31]||=e=>K(`patchTextAlign`,e)},null,8,[`value`,`options`,`disabled`])]),G.selectedVariable.type===`image`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},[(0,r.createElementVNode)(`label`,ve,[W[69]||=(0,r.createElementVNode)(`span`,null,`边框样式`,-1),(0,r.createVNode)((0,r.unref)(i.Select),{value:G.selectedVariable.style?.borderStyle||`dashed`,options:G.borderStyleOptions,disabled:Y.value,"aria-label":`图片边框样式`,onChange:W[32]||=e=>K(`patchBorderStyle`,e)},null,8,[`value`,`options`,`disabled`])]),(0,r.createElementVNode)(`label`,ye,[W[70]||=(0,r.createElementVNode)(`span`,null,`图片适配`,-1),(0,r.createVNode)((0,r.unref)(i.Select),{value:G.selectedVariable.style?.objectFit||`contain`,options:G.objectFitOptions,disabled:Y.value,"aria-label":`图片适配`,onChange:W[33]||=e=>K(`patchObjectFit`,e)},null,8,[`value`,`options`,`disabled`])])],64)):(0,r.createCommentVNode)(``,!0)])]),(0,r.createElementVNode)(`div`,be,[(0,r.createVNode)((0,r.unref)(i.Popconfirm),{title:`删除此变量及其全部引用?`,"ok-text":`删除变量`,"cancel-text":`取消`,"ok-button-props":{danger:!0},disabled:Y.value,onConfirm:Oe},{default:(0,r.withCtx)(()=>[(0,r.createVNode)((0,r.unref)(i.Button),{type:`text`,danger:``,disabled:Y.value,"aria-label":`删除变量`},{default:(0,r.withCtx)(()=>[(0,r.createVNode)((0,r.unref)(a.DeleteOutlined),{"aria-hidden":`true`}),W[71]||=(0,r.createTextVNode)(`删除变量`,-1)]),_:1},8,[`disabled`])]),_:1},8,[`disabled`])])])):((0,r.openBlock)(),(0,r.createElementBlock)(`div`,le,[W[36]||=(0,r.createElementVNode)(`span`,null,`先选择一个正文变量`,-1),W[37]||=(0,r.createElementVNode)(`small`,{class:`gd-contract-authoring-panel__meta`},`点击正文控件,或从左侧「变量」中定位。`,-1),(0,r.createVNode)((0,r.unref)(i.Button),{onClick:W[4]||=e=>J.value=`insert`},{default:(0,r.withCtx)(()=>[...W[35]||=[(0,r.createTextVNode)(`前往插入控件`,-1)]]),_:1})]))],8,oe),[[r.vShow,J.value===`properties`]])])])],2))}});exports.default=U;
1
+ require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`./composables/use-template-designer.cjs`),t=require(`./utils/template-tool-icons.cjs`),n=require(`./ContractTemplatePanelTabs.cjs`),r=require(`./ContractTemplateChoiceOptionsEditor.cjs`),ee=require(`./ContractTemplateControlLibrary.cjs`),te=require(`./ContractTemplateVariableAdvanced.cjs`);let i=require(`vue`),a=require(`ant-design-vue`),o=require(`@ant-design/icons-vue`);var ne=[`aria-label`,`aria-expanded`],re={class:`gd-contract-template-designer__panel-stack`},ie={class:`gd-contract-authoring-panel__body`},ae=[`id`,`aria-labelledby`],oe=[`id`,`aria-labelledby`],se={class:`gd-contract-authoring-panel__section-heading`},ce={key:0,class:`gd-contract-authoring-panel__meta`},le={key:0,class:`gd-contract-authoring-panel__empty`},ue={class:`gd-contract-authoring-panel__selection`},s={class:`gd-contract-authoring-panel__variable-icon`,"aria-hidden":`true`},c={class:`gd-contract-authoring-panel__variable-copy`},l={class:`gd-contract-authoring-panel__item-title`},u={class:`gd-contract-authoring-panel__meta`},d={class:`gd-contract-authoring-panel__property-group`},f={class:`gd-contract-authoring-panel__fields`},p={class:`gd-contract-authoring-panel__field`},m={class:`gd-contract-authoring-panel__field`},h={key:0,class:`gd-contract-authoring-panel__field`},g={open:``,class:`gd-contract-authoring-panel__property-group`},_={class:`gd-contract-authoring-panel__group-title`},v={class:`gd-contract-authoring-panel__fields`},y={class:`gd-contract-authoring-panel__switch`},b={class:`gd-contract-authoring-panel__switch`},x={key:0,class:`gd-contract-authoring-panel__field`},S={key:1,class:`gd-contract-authoring-panel__field`},C={class:`gd-contract-authoring-panel__field`},w={class:`gd-contract-authoring-panel__field`},T={class:`gd-contract-authoring-panel__switch`},E={class:`gd-contract-authoring-panel__field`},D={class:`gd-contract-authoring-panel__field`},O={key:4,class:`gd-contract-authoring-panel__switch`},k={key:5,class:`gd-contract-authoring-panel__field`},A={class:`gd-contract-authoring-panel__property-group`},j={class:`gd-contract-authoring-panel__group-title`},M={class:`gd-contract-authoring-panel__fields`},N={class:`gd-contract-authoring-panel__field-pair`},P={class:`gd-contract-authoring-panel__field`},F={class:`gd-contract-authoring-panel__field`},I={class:`gd-contract-authoring-panel__switch`},L={class:`gd-contract-authoring-panel__switch`},R={class:`gd-contract-authoring-panel__field`},z={class:`gd-contract-authoring-panel__field`},B={class:`gd-contract-authoring-panel__color`},V=[`value`,`disabled`],H={class:`gd-contract-authoring-panel__color`},de=[`value`,`disabled`],fe={class:`gd-contract-authoring-panel__color`},pe=[`value`,`disabled`],me={class:`gd-contract-authoring-panel__field`},he={class:`gd-contract-authoring-panel__field`},ge={class:`gd-contract-authoring-panel__field`},_e={class:`gd-contract-authoring-panel__danger-zone`},U=(0,i.defineComponent)({name:`ContractTemplateDesignerInspector`,__name:`ContractTemplateDesignerInspector`,props:{collapsed:{type:Boolean},readonly:{type:Boolean},disabled:{type:Boolean},bodyControlToolItems:{},selectedVariable:{},variables:{},currentVariableFontFamily:{},fontFamilySelectOptions:{},textAlignOptions:{},borderStyleOptions:{},objectFitOptions:{},selectedVariableWidthMax:{},selectedVariableHeightMax:{},minFontSize:{},maxFontSize:{},defaultMultilineRows:{}},emits:[`toggle`,`variableDragStart`,`insertVariable`,`duplicateVariable`,`removeVariable`,`patchVariable`,`renameVariable`,`patchStyle`,`patchMultiline`,`patchRows`,`patchFontFamily`,`patchFontSize`,`patchTextAlign`,`patchBorderStyle`,`patchObjectFit`],setup(U,{emit:W}){let G=U,K=W,q=`gd-contract-inspector-${(0,i.useId)()}`,J=(0,i.shallowRef)(`insert`),ve=[{value:`insert`,label:`插入控件`},{value:`properties`,label:`控件属性`}],Y=(0,i.computed)(()=>G.readonly||G.disabled),ye=(0,i.computed)(()=>G.selectedVariable?G.bodyControlToolItems.find(e=>e.type===(G.selectedVariable?.type||`text`))?.label||e.getFieldOption(G.selectedVariable.type||`text`).label:``),X=(0,i.computed)(()=>G.selectedVariable?.type===`select`||G.selectedVariable?.type===`radio`),be=(0,i.computed)(()=>G.selectedVariable?.type===`select`||!!G.selectedVariable?.type?.endsWith(`-selector`)),xe=(0,i.computed)(()=>G.selectedVariable?.type===`select`&&!!G.selectedVariable.multiple),Se=(0,i.computed)(()=>G.selectedVariable?.defaultValue||void 0),Ce=(0,i.computed)(()=>(G.selectedVariable?.options??[]).map(e=>({label:e.label,value:String(e.value)})));(0,i.watch)(()=>G.selectedVariable?.id,e=>{J.value=e?`properties`:`insert`},{immediate:!0});function Z(e){G.selectedVariable&&!Y.value&&K(`patchVariable`,e)}function Q(e){G.selectedVariable&&!Y.value&&K(`patchStyle`,e)}function $(e){Z({defaultValue:e==null?``:String(e)})}function we(e){let t={multiple:e};e&&G.selectedVariable?.type===`select`&&(t.defaultValue=``),Z(t)}function Te(e){let t=e??[],n=G.selectedVariable?.defaultValue,r={options:t};n&&!t.some(e=>String(e.value)===String(n))&&(r.defaultValue=``),Z(r)}function Ee(){G.selectedVariable&&!Y.value&&K(`duplicateVariable`,G.selectedVariable)}function De(){G.selectedVariable&&!Y.value&&K(`removeVariable`,G.selectedVariable)}return(U,W)=>((0,i.openBlock)(),(0,i.createElementBlock)(`aside`,{class:(0,i.normalizeClass)([`gd-contract-template-designer__inspector gd-contract-authoring-panel`,{"is-collapsed":G.collapsed}]),"aria-label":`控件插入与属性`},[(0,i.createVNode)((0,i.unref)(a.Tooltip),{title:G.collapsed?`展开属性栏`:`收起属性栏`},{default:(0,i.withCtx)(()=>[(0,i.createElementVNode)(`button`,{type:`button`,class:`gd-contract-template-designer__panel-handle gd-contract-authoring-panel__handle`,"aria-label":G.collapsed?`展开属性栏`:`收起属性栏`,"aria-expanded":!G.collapsed,onClick:W[0]||=e=>K(`toggle`)},[G.collapsed?((0,i.openBlock)(),(0,i.createBlock)((0,i.unref)(o.LeftOutlined),{key:0,"aria-hidden":`true`})):((0,i.openBlock)(),(0,i.createBlock)((0,i.unref)(o.RightOutlined),{key:1,"aria-hidden":`true`}))],8,ne)]),_:1},8,[`title`]),(0,i.createElementVNode)(`div`,re,[(0,i.createElementVNode)(`div`,ie,[(0,i.createVNode)(n.default,{id:q,modelValue:J.value,"onUpdate:modelValue":W[1]||=e=>J.value=e,items:ve,label:`控件面板视图`},null,8,[`modelValue`]),(0,i.withDirectives)((0,i.createElementVNode)(`section`,{id:`${q}-panel-insert`,class:`gd-contract-authoring-panel__view`,role:`tabpanel`,"aria-labelledby":`${q}-tab-insert`},[(0,i.createVNode)(ee.default,{items:G.bodyControlToolItems,readonly:Y.value,onInsertVariable:W[2]||=e=>K(`insertVariable`,e),onVariableDragStart:W[3]||=(e,t)=>K(`variableDragStart`,e,t)},null,8,[`items`,`readonly`])],8,ae),[[i.vShow,J.value===`insert`]]),(0,i.withDirectives)((0,i.createElementVNode)(`section`,{id:`${q}-panel-properties`,class:`gd-contract-authoring-panel__view`,role:`tabpanel`,"aria-labelledby":`${q}-tab-properties`},[(0,i.createElementVNode)(`div`,se,[W[31]||=(0,i.createElementVNode)(`strong`,null,`属性`,-1),Y.value?((0,i.openBlock)(),(0,i.createElementBlock)(`small`,ce,`只读`)):(0,i.createCommentVNode)(``,!0)]),G.selectedVariable?((0,i.openBlock)(),(0,i.createElementBlock)(`div`,{key:G.selectedVariable.id,class:`gd-contract-authoring-panel__properties`},[(0,i.createElementVNode)(`div`,ue,[(0,i.createElementVNode)(`span`,s,[((0,i.openBlock)(),(0,i.createBlock)((0,i.resolveDynamicComponent)((0,i.unref)(t.resolveFieldTypeIcon)(G.selectedVariable.type))))]),(0,i.createElementVNode)(`div`,c,[(0,i.createElementVNode)(`span`,l,(0,i.toDisplayString)(G.selectedVariable.label),1),(0,i.createElementVNode)(`small`,u,(0,i.toDisplayString)(ye.value),1)]),(0,i.createVNode)((0,i.unref)(a.Tooltip),{title:`复制变量`},{default:(0,i.withCtx)(()=>[(0,i.createVNode)((0,i.unref)(a.Button),{type:`text`,disabled:Y.value,"aria-label":`复制变量`,onClick:Ee},{default:(0,i.withCtx)(()=>[(0,i.createVNode)((0,i.unref)(o.CopyOutlined),{"aria-hidden":`true`})]),_:1},8,[`disabled`])]),_:1})]),(0,i.createVNode)(te.default,{variable:G.selectedVariable,variables:G.variables,readonly:Y.value,onPatchVariable:Z,onRenameVariable:W[5]||=e=>K(`renameVariable`,e)},null,8,[`variable`,`variables`,`readonly`]),(0,i.createElementVNode)(`section`,d,[W[38]||=(0,i.createElementVNode)(`h3`,{class:`gd-contract-authoring-panel__group-title`},`基础信息`,-1),(0,i.createElementVNode)(`div`,f,[(0,i.createElementVNode)(`label`,p,[W[35]||=(0,i.createElementVNode)(`span`,null,`名称`,-1),(0,i.createVNode)((0,i.unref)(a.Input),{value:G.selectedVariable.label,disabled:Y.value,"aria-label":`变量名称`,onChange:W[6]||=e=>Z({label:e.target.value})},null,8,[`value`,`disabled`])]),(0,i.createElementVNode)(`label`,m,[W[36]||=(0,i.createElementVNode)(`span`,null,`占位文案`,-1),(0,i.createVNode)((0,i.unref)(a.Input),{value:G.selectedVariable.placeholder,disabled:Y.value,"aria-label":`占位文案`,onChange:W[7]||=e=>Z({placeholder:e.target.value})},null,8,[`value`,`disabled`])]),xe.value?(0,i.createCommentVNode)(``,!0):((0,i.openBlock)(),(0,i.createElementBlock)(`label`,h,[W[37]||=(0,i.createElementVNode)(`span`,null,`默认值`,-1),X.value?((0,i.openBlock)(),(0,i.createBlock)((0,i.unref)(a.Select),{key:0,value:Se.value,options:Ce.value,disabled:Y.value,"allow-clear":``,placeholder:`请选择`,"aria-label":`默认值`,onChange:$},null,8,[`value`,`options`,`disabled`])):((0,i.openBlock)(),(0,i.createBlock)((0,i.unref)(a.Input),{key:1,value:G.selectedVariable.defaultValue,disabled:Y.value,"aria-label":`默认值`,onChange:W[8]||=e=>Z({defaultValue:e.target.value})},null,8,[`value`,`disabled`]))]))])]),(0,i.createElementVNode)(`details`,g,[(0,i.createElementVNode)(`summary`,_,[(0,i.createVNode)((0,i.unref)(o.RightOutlined),{class:`gd-contract-authoring-panel__chevron`,"aria-hidden":`true`}),W[39]||=(0,i.createElementVNode)(`span`,null,`填写规则`,-1)]),(0,i.createElementVNode)(`div`,v,[(0,i.createElementVNode)(`label`,y,[W[40]||=(0,i.createElementVNode)(`span`,null,`必填`,-1),(0,i.createVNode)((0,i.unref)(a.Switch),{checked:G.selectedVariable.required,disabled:Y.value,"aria-label":`必填`,onChange:W[9]||=e=>Z({required:!!e})},null,8,[`checked`,`disabled`])]),!G.selectedVariable.type||G.selectedVariable.type===`text`?((0,i.openBlock)(),(0,i.createElementBlock)(i.Fragment,{key:0},[(0,i.createElementVNode)(`label`,b,[W[41]||=(0,i.createElementVNode)(`span`,null,`多行`,-1),(0,i.createVNode)((0,i.unref)(a.Switch),{checked:!!G.selectedVariable.multiline,disabled:Y.value,"aria-label":`多行`,onChange:W[10]||=e=>K(`patchMultiline`,!!e)},null,8,[`checked`,`disabled`])]),G.selectedVariable.multiline?((0,i.openBlock)(),(0,i.createElementBlock)(`label`,x,[W[42]||=(0,i.createElementVNode)(`span`,null,`行数`,-1),(0,i.createVNode)((0,i.unref)(a.InputNumber),{value:G.selectedVariable.rows||G.defaultMultilineRows,min:2,max:12,disabled:Y.value,"aria-label":`行数`,onChange:W[11]||=e=>K(`patchRows`,e)},null,8,[`value`,`disabled`])])):(0,i.createCommentVNode)(``,!0)],64)):(0,i.createCommentVNode)(``,!0),G.selectedVariable.type===`date`?((0,i.openBlock)(),(0,i.createElementBlock)(`label`,S,[W[43]||=(0,i.createElementVNode)(`span`,null,`日期格式`,-1),(0,i.createVNode)((0,i.unref)(a.Input),{value:G.selectedVariable.format,disabled:Y.value,"aria-label":`日期格式`,onChange:W[12]||=e=>Z({format:e.target.value})},null,8,[`value`,`disabled`])])):(0,i.createCommentVNode)(``,!0),G.selectedVariable.type===`number`?((0,i.openBlock)(),(0,i.createElementBlock)(i.Fragment,{key:2},[(0,i.createElementVNode)(`label`,C,[W[44]||=(0,i.createElementVNode)(`span`,null,`数字格式`,-1),(0,i.createVNode)((0,i.unref)(a.Input),{value:G.selectedVariable.format,disabled:Y.value,"aria-label":`数字格式`,onChange:W[13]||=e=>Z({format:e.target.value})},null,8,[`value`,`disabled`])]),(0,i.createElementVNode)(`label`,w,[W[45]||=(0,i.createElementVNode)(`span`,null,`小数位`,-1),(0,i.createVNode)((0,i.unref)(a.InputNumber),{value:G.selectedVariable.precision,min:0,max:6,disabled:Y.value,"aria-label":`小数位`,onChange:W[14]||=e=>Z({precision:typeof e==`number`?e:void 0})},null,8,[`value`,`disabled`])]),(0,i.createElementVNode)(`label`,T,[W[46]||=(0,i.createElementVNode)(`span`,null,`千分位`,-1),(0,i.createVNode)((0,i.unref)(a.Switch),{checked:G.selectedVariable.useGrouping!==!1,disabled:Y.value,"aria-label":`千分位`,onChange:W[15]||=e=>Z({useGrouping:!!e})},null,8,[`checked`,`disabled`])])],64)):(0,i.createCommentVNode)(``,!0),G.selectedVariable.type===`checkbox`?((0,i.openBlock)(),(0,i.createElementBlock)(i.Fragment,{key:3},[(0,i.createElementVNode)(`label`,E,[W[47]||=(0,i.createElementVNode)(`span`,null,`勾选文本`,-1),(0,i.createVNode)((0,i.unref)(a.Input),{value:G.selectedVariable.checkedText,disabled:Y.value,"aria-label":`勾选文本`,onChange:W[16]||=e=>Z({checkedText:e.target.value})},null,8,[`value`,`disabled`])]),(0,i.createElementVNode)(`label`,D,[W[48]||=(0,i.createElementVNode)(`span`,null,`未选文本`,-1),(0,i.createVNode)((0,i.unref)(a.Input),{value:G.selectedVariable.uncheckedText,disabled:Y.value,"aria-label":`未选文本`,onChange:W[17]||=e=>Z({uncheckedText:e.target.value})},null,8,[`value`,`disabled`])])],64)):(0,i.createCommentVNode)(``,!0),be.value?((0,i.openBlock)(),(0,i.createElementBlock)(`label`,O,[W[49]||=(0,i.createElementVNode)(`span`,null,`允许多选`,-1),(0,i.createVNode)((0,i.unref)(a.Switch),{checked:!!G.selectedVariable.multiple,disabled:Y.value,"aria-label":`允许多选`,onChange:W[18]||=e=>we(!!e)},null,8,[`checked`,`disabled`])])):(0,i.createCommentVNode)(``,!0),X.value?((0,i.openBlock)(),(0,i.createElementBlock)(`div`,k,[W[50]||=(0,i.createElementVNode)(`span`,null,`选项`,-1),((0,i.openBlock)(),(0,i.createBlock)(r.default,{key:G.selectedVariable.id,options:G.selectedVariable.options??[],"variable-type":G.selectedVariable.type||`select`,readonly:Y.value,onChange:Te},null,8,[`options`,`variable-type`,`readonly`]))])):(0,i.createCommentVNode)(``,!0)])]),(0,i.createElementVNode)(`details`,A,[(0,i.createElementVNode)(`summary`,j,[(0,i.createVNode)((0,i.unref)(o.RightOutlined),{class:`gd-contract-authoring-panel__chevron`,"aria-hidden":`true`}),W[51]||=(0,i.createElementVNode)(`span`,null,`外观`,-1)]),(0,i.createElementVNode)(`div`,M,[(0,i.createElementVNode)(`div`,N,[(0,i.createElementVNode)(`label`,P,[W[52]||=(0,i.createElementVNode)(`span`,null,[(0,i.createTextVNode)(`宽度 `),(0,i.createElementVNode)(`small`,{class:`gd-contract-authoring-panel__meta`},`px`)],-1),(0,i.createVNode)((0,i.unref)(a.InputNumber),{value:G.selectedVariable.width,min:48,max:G.selectedVariableWidthMax,disabled:Y.value,"aria-label":`控件宽度`,onChange:W[19]||=e=>Z({width:Number(e||48)})},null,8,[`value`,`max`,`disabled`])]),(0,i.createElementVNode)(`label`,F,[W[53]||=(0,i.createElementVNode)(`span`,null,[(0,i.createTextVNode)(`高度 `),(0,i.createElementVNode)(`small`,{class:`gd-contract-authoring-panel__meta`},`px`)],-1),(0,i.createVNode)((0,i.unref)(a.InputNumber),{value:G.selectedVariable.height,min:24,max:G.selectedVariableHeightMax,disabled:Y.value,"aria-label":`控件高度`,onChange:W[20]||=e=>Z({height:Number(e||24)})},null,8,[`value`,`max`,`disabled`])])]),(0,i.createElementVNode)(`label`,I,[W[54]||=(0,i.createElementVNode)(`span`,null,`边框`,-1),(0,i.createVNode)((0,i.unref)(a.Switch),{checked:!!G.selectedVariable.style?.border,disabled:Y.value,"aria-label":`边框`,onChange:W[21]||=e=>Q({border:!!e})},null,8,[`checked`,`disabled`])]),(0,i.createElementVNode)(`label`,L,[W[55]||=(0,i.createElementVNode)(`span`,null,`下划线`,-1),(0,i.createVNode)((0,i.unref)(a.Switch),{checked:!!G.selectedVariable.style?.underline,disabled:Y.value,"aria-label":`下划线`,onChange:W[22]||=e=>Q({underline:!!e})},null,8,[`checked`,`disabled`])]),(0,i.createElementVNode)(`label`,R,[W[56]||=(0,i.createElementVNode)(`span`,null,`字体`,-1),(0,i.createVNode)((0,i.unref)(a.Select),{value:G.currentVariableFontFamily,options:G.fontFamilySelectOptions,disabled:Y.value,"aria-label":`控件字体`,onChange:W[23]||=e=>K(`patchFontFamily`,e)},null,8,[`value`,`options`,`disabled`])]),(0,i.createElementVNode)(`label`,z,[W[57]||=(0,i.createElementVNode)(`span`,null,`字号`,-1),(0,i.createVNode)((0,i.unref)(a.InputNumber),{value:G.selectedVariable.style?.fontSize,min:G.minFontSize,max:G.maxFontSize,disabled:Y.value,"aria-label":`控件字号`,onChange:W[24]||=e=>K(`patchFontSize`,e)},null,8,[`value`,`min`,`max`,`disabled`])]),(0,i.createElementVNode)(`label`,B,[W[58]||=(0,i.createElementVNode)(`span`,null,`颜色`,-1),(0,i.createElementVNode)(`input`,{type:`color`,value:G.selectedVariable.style?.color||(0,i.unref)(e.DEFAULT_FIELD_STYLE).color,disabled:Y.value,"aria-label":`控件文字颜色`,onInput:W[25]||=e=>Q({color:e.target.value})},null,40,V)]),(0,i.createElementVNode)(`label`,H,[W[59]||=(0,i.createElementVNode)(`span`,null,`占位颜色`,-1),(0,i.createElementVNode)(`input`,{type:`color`,value:G.selectedVariable.style?.placeholderColor||(0,i.unref)(e.DEFAULT_FIELD_STYLE).placeholderColor,disabled:Y.value,"aria-label":`控件占位颜色`,onInput:W[26]||=e=>Q({placeholderColor:e.target.value})},null,40,de)]),(0,i.createElementVNode)(`label`,fe,[W[60]||=(0,i.createElementVNode)(`span`,null,`线条颜色`,-1),(0,i.createElementVNode)(`input`,{type:`color`,value:G.selectedVariable.style?.lineColor||(0,i.unref)(e.DEFAULT_FIELD_STYLE).lineColor,disabled:Y.value,"aria-label":`控件线条颜色`,onInput:W[27]||=e=>Q({lineColor:e.target.value})},null,40,pe)]),(0,i.createElementVNode)(`label`,me,[W[61]||=(0,i.createElementVNode)(`span`,null,`文字对齐`,-1),(0,i.createVNode)((0,i.unref)(a.Select),{value:G.selectedVariable.style?.textAlign||`left`,options:G.textAlignOptions,disabled:Y.value,"aria-label":`控件文字对齐`,onChange:W[28]||=e=>K(`patchTextAlign`,e)},null,8,[`value`,`options`,`disabled`])]),G.selectedVariable.type===`image`?((0,i.openBlock)(),(0,i.createElementBlock)(i.Fragment,{key:0},[(0,i.createElementVNode)(`label`,he,[W[62]||=(0,i.createElementVNode)(`span`,null,`边框样式`,-1),(0,i.createVNode)((0,i.unref)(a.Select),{value:G.selectedVariable.style?.borderStyle||`dashed`,options:G.borderStyleOptions,disabled:Y.value,"aria-label":`图片边框样式`,onChange:W[29]||=e=>K(`patchBorderStyle`,e)},null,8,[`value`,`options`,`disabled`])]),(0,i.createElementVNode)(`label`,ge,[W[63]||=(0,i.createElementVNode)(`span`,null,`图片适配`,-1),(0,i.createVNode)((0,i.unref)(a.Select),{value:G.selectedVariable.style?.objectFit||`contain`,options:G.objectFitOptions,disabled:Y.value,"aria-label":`图片适配`,onChange:W[30]||=e=>K(`patchObjectFit`,e)},null,8,[`value`,`options`,`disabled`])])],64)):(0,i.createCommentVNode)(``,!0)])]),(0,i.createElementVNode)(`div`,_e,[(0,i.createVNode)((0,i.unref)(a.Popconfirm),{title:`删除此变量及其全部引用?`,"ok-text":`删除变量`,"cancel-text":`取消`,"ok-button-props":{danger:!0},disabled:Y.value,onConfirm:De},{default:(0,i.withCtx)(()=>[(0,i.createVNode)((0,i.unref)(a.Button),{type:`text`,danger:``,disabled:Y.value,"aria-label":`删除变量`},{default:(0,i.withCtx)(()=>[(0,i.createVNode)((0,i.unref)(o.DeleteOutlined),{"aria-hidden":`true`}),W[64]||=(0,i.createTextVNode)(`删除变量`,-1)]),_:1},8,[`disabled`])]),_:1},8,[`disabled`])])])):((0,i.openBlock)(),(0,i.createElementBlock)(`div`,le,[W[33]||=(0,i.createElementVNode)(`span`,null,`先选择一个正文变量`,-1),W[34]||=(0,i.createElementVNode)(`small`,{class:`gd-contract-authoring-panel__meta`},`点击正文控件,或从左侧「变量」中定位。`,-1),(0,i.createVNode)((0,i.unref)(a.Button),{onClick:W[4]||=e=>J.value=`insert`},{default:(0,i.withCtx)(()=>[...W[32]||=[(0,i.createTextVNode)(`前往插入控件`,-1)]]),_:1})]))],8,oe),[[i.vShow,J.value===`properties`]])])])],2))}});exports.default=U;
@@ -1 +1 @@
1
- require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`./constants.cjs`),t=require(`./utils/page-decorations.cjs`),n=require(`./types.cjs`),r=require(`./composables/use-template-designer.cjs`),i=require(`./utils/image-url.cjs`),a=require(`./utils/template-renderer.cjs`),o=require(`./composables/use-fit-width-zoom.cjs`),s=require(`./utils/content-image.cjs`),ee=require(`./utils/signing-layout-presets.cjs`),te=require(`./utils/context-variable.cjs`),ne=require(`./utils/caret-viewport.cjs`),re=require(`./DesignerPage.cjs`),ie=require(`./TableContextMenu.cjs`),ae=require(`./ContractTemplateDesignerWorkspaceHeader.cjs`),oe=require(`./utils/template-tool-icons.cjs`),se=require(`./ContractTemplateDesignerToolbar.cjs`),ce=require(`./ContractTemplateAuthoringBar.cjs`),le=require(`./composables/use-template-authoring.cjs`),ue=require(`./ContractTemplateTextContextMenu.cjs`),de=require(`./ContractTemplateTextBubbleMenu.cjs`),fe=require(`./ContractTemplateImageContextMenu.cjs`),pe=require(`./ContractTemplatePreviewModal.cjs`),me=require(`./ContractTemplateSubmitDataModal.cjs`),he=require(`./ContractTemplateVariableDataModal.cjs`),ge=require(`./SigningLayoutCustomModal.cjs`),_e=require(`./composables/use-template-draft-cache.cjs`),ve=require(`./composables/use-auto-pagination.cjs`),ye=require(`./composables/use-designer-files.cjs`),c=require(`./composables/use-template-files.cjs`),be=require(`./composables/use-draft-cache-session.cjs`),xe=require(`./ContractTemplateFileBar.cjs`),Se=require(`./ContractTemplateDesignerSidebar.cjs`),Ce=require(`./ContractTemplateDesignerInspector.cjs`),we=require(`./ContractTemplatePageDecorationsStudio.cjs`),l=require(`./utils/serialize-fingerprint.cjs`),Te=require(`./utils/editor-state.cjs`),u=require(`./utils/context-menu-viewport.cjs`);let d=require(`vue`),Ee=require(`ant-design-vue`),De=require(`@vueuse/core`),Oe=require(`@ant-design/icons-vue`);var ke={key:2,class:`gd-contract-template-designer__validation`},Ae={key:0,class:`gd-contract-template-designer__validation-list`},je=[`onClick`],Me={class:`gd-contract-template-designer__sr-status`,"aria-live":`polite`},Ne=.5,Pe=1.5,Fe=.1,Ie=300,Le=500,Re=128,ze=108,Be=48,Ve=24,He=10,Ue=48,We=8,f=(0,d.defineComponent)({name:`ProContractTemplateDesigner`,__name:`ProContractTemplateDesigner`,props:{modelValue:{default:void 0},files:{},activeFileId:{},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},height:{default:760},pageSize:{default:()=>r.DEFAULT_PAGE_SIZE},pageSizeOptions:{},maxPages:{default:20},imageCompression:{type:[Object,Boolean]},imageUpload:{},variableTypes:{default:()=>r.DEFAULT_FIELD_TYPES},signingLayoutPresets:{},showAdvancedChoiceControls:{type:Boolean,default:!1},showBuiltinSelectorControls:{type:Boolean,default:!1},showCustomControls:{type:Boolean,default:!1},defaultVariableStyle:{default:()=>r.DEFAULT_FIELD_STYLE},fontFamilies:{default:void 0},fontFamilyMode:{default:`append`},contractFontBaseUrl:{default:void 0},showSubmitDataViewer:{type:Boolean,default:!0},showVariableDataViewer:{type:Boolean,default:!0},showClearButton:{type:Boolean,default:!0},enableDraftCache:{type:Boolean,default:!0},draftCacheKey:{default:_e.DEFAULT_DRAFT_CACHE_KEY},draftCacheInterval:{default:_e.DEFAULT_DRAFT_CACHE_INTERVAL},draftCacheMaxBytes:{default:_e.DEFAULT_DRAFT_CACHE_MAX_BYTES},showDraftCacheStatus:{type:Boolean,default:!0}},emits:[`update:modelValue`,`change`,`update:files`,`update:activeFileId`,`files-change`,`file-add`,`file-change`,`file-remove`,`file-move`,`variable-add`,`validate`,`draft-cache-change`,`page-limit`,`image-error`],setup(f,{expose:Ge,emit:Ke}){let p=f,m=Ke,qe=(0,d.computed)(()=>({height:typeof p.height==`number`?`${p.height}px`:p.height})),Je=(0,d.ref)(),Ye=(0,d.ref)();function Xe(){return Ye.value}function Ze(){let e=dt,t=Ye.value;return ne.captureCaretViewport(t,()=>e===dt&&!ln&&!B.value&&t?.isConnected!==!1)}function Qe(){dt+=1}let $e=(0,d.ref)(),et=(0,d.ref)(),tt=(0,d.ref)(),nt=`gd-contract-template-page-decorations-studio-${(0,d.useId)()}`,rt=`gd-contract-template-workspace-chrome-${(0,d.useId)()}`,it=(0,d.ref)(),at=(0,d.ref)(),ot=(0,d.ref)(),st=``,ct=``,lt,ut,dt=0,ft=r.createTemplateBodySync(),pt=new Map,mt=(0,d.ref)(!1),h=(0,d.computed)(()=>mt.value||Array.isArray(p.files)),ht=c.normalizeContractTemplateFiles(p.files,p.modelValue,p.pageSize),gt=c.constrainContractTemplateFiles(ht,p.pageSizeOptions),_t=h.value?gt.files:ht,vt=c.resolveContractTemplateActiveFileId(_t,p.activeFileId),g=(0,d.ref)(_t),_=(0,d.ref)(vt),yt=_t.find(e=>e.id===vt)??_t[0],bt=r.normalizeTemplateValue(yt?.template??p.modelValue,p.pageSize),v=(0,d.ref)(r.constrainTemplatePageSizes(bt,p.pageSizeOptions));h.value?(g.value=c.replaceContractTemplateFile(g.value,_.value,v.value),l.serializeFingerprint(g.value)!==l.serializeFingerprint(ht)&&J(g.value)):p.modelValue&&l.serializeFingerprint(v.value)!==l.serializeFingerprint(bt)&&Ir(v.value);let y=(0,d.ref)(``),b=(0,d.ref)(v.value.pages[0]?.id??``),x=(0,d.ref)(!1),S=(0,d.ref)([]),C=new Map,xt=(0,d.ref)(!1),St=(0,d.ref)(``),w=(0,d.ref)(!1),T=(0,d.ref)(),Ct=(0,d.ref)(),wt=(0,d.ref)(``),Tt=(0,d.ref)(!1),Et=(0,d.ref)(``),Dt=(0,d.ref)(!1),Ot=(0,d.ref)({values:{},variables:[]}),E=(0,d.ref)(1),D=(0,d.ref)(!1),kt=(0,d.ref)(!1),At=(0,d.ref)(!1),O=(0,d.ref)(!1),k=(0,d.ref)(!1),jt=(0,d.ref)(),A=(0,d.ref)(!1),Mt=(0,d.ref)(`header`),Nt=(0,d.ref)(!1),Pt=(0,d.ref)({}),j=(0,d.ref)(``),M=(0,d.ref)(!1),N=(0,d.ref)(!1),Ft=(0,d.ref)(!1),It=(0,d.ref)(!1),Lt=(0,d.ref)(!1),Rt=(0,d.ref)(!1),zt=(0,d.ref)(!1),Bt=(0,d.ref)(``),Vt=(0,d.ref)(),Ht=(0,d.ref)(),Ut=(0,d.ref)(``),Wt=(0,d.ref)(!1),P=(0,d.ref)(),Gt=(0,d.ref)(),F=(0,d.ref)(),Kt=(0,d.ref)(),qt=(0,d.ref)(!1),Jt,Yt=(0,d.ref)(!1),Xt,Zt=(0,d.ref)(!1),Qt=(0,d.ref)(``),I=(0,d.ref)(),$t=(0,d.ref)(),L=(0,d.ref)(),en=(0,d.ref)(),tn=(0,d.ref)(),nn=(0,d.ref)(),R=(0,d.ref)(``),z=(0,d.ref)(_e.createDraftCacheStatus(`idle`,`暂无本地草稿`)),rn=(0,d.ref)({rows:3,cols:3,withHeaderRow:!0}),an=new WeakSet,on=[`.gd-contract-template-designer__page-decorations-select-popup`,`.gd-contract-template-designer__page-decorations-dropdown-popup`].join(`,`),sn,cn,ln=!1,un=!1,dn,fn,B=(0,d.computed)(()=>p.readonly||p.disabled),{panel:pn,query:mn,replacement:hn,matchCase:gn,matches:_n,currentIndex:vn,currentMatch:yn,feedback:bn,highlightQuery:xn,open:Sn,close:Cn,navigate:wn,replaceCurrent:Tn,replaceAll:En,handleKeydown:Dn}=le.useTemplateAuthoring({pages:()=>v.value.pages,fileId:()=>_.value,readonly:()=>B.value,root:()=>Je.value,pageRefs:C,activatePage:ya,beforeOpen:()=>{$(),so(),O.value=!1},focusPanel:()=>ot.value?.focusPanel(),focusTrigger:e=>ot.value?.focusTrigger(e)}),On=(0,d.computed)(()=>!!(P.value||pn.value||I.value||L.value||M.value||N.value||Nt.value||Ft.value||It.value||Lt.value||Rt.value||zt.value)),kn=(0,d.computed)(()=>!!p.enableDraftCache&&!B.value),An=(0,d.computed)(()=>g.value.find(e=>e.id===_.value)??g.value[0]),jn=(0,d.computed)(()=>T.value?r.buildTemplatePreviewPages(T.value):[]),Mn=(0,d.computed)(()=>(Ct.value??[]).map(e=>({file:e,pages:r.buildTemplatePreviewPages(e.template)}))),Nn=(0,d.computed)(()=>Mn.value.find(e=>e.file.id===wt.value)??Mn.value[0]),V=(0,d.computed)(()=>v.value.pages.find(e=>e.id===b.value)??v.value.pages[0]),Pn=(0,d.computed)(()=>r.resolvePageSize(V.value?.pageSize,v.value.pageSize)),Fn=(0,d.computed)(()=>x.value&&S.value.length===0),In=(0,d.computed)(()=>x.value?Fn.value?`校验通过,正文变量与变量配置一致`:`发现 ${S.value.length} 个校验问题`:``),Ln=(0,d.computed)(()=>{let e=V.value?.title||`合同正文`;return`${h.value&&An.value?`${An.value.name} · `:``}${e} · ${Pn.value.label} · 共 ${v.value.pages.length} 页`}),Rn=(0,d.computed)(()=>({none:`无装饰`,"page-number":`标准页码`,"internal-review":`内部审阅`,draft:`草稿`,custom:`自定义`})[t.resolvePageDecorationPreset(v.value.pageDecorations)]),zn=(0,d.computed)(()=>{let e=t.normalizePageDecorations(v.value.pageDecorations);return{header:e.header.enabled,footer:e.footer.enabled,watermark:e.watermark.enabled}}),Bn=(0,d.computed)(()=>Object.values(zn.value).filter(Boolean).length),Vn=(0,d.computed)(()=>{switch(z.value.type){case`saved`:return`草稿已缓存 ${_e.formatDraftCacheSavedAt(z.value.savedAt)}`;case`restored`:return`已恢复本地草稿`;case`too-large`:return`草稿过大,未缓存`;case`unavailable`:case`read-failed`:case`write-failed`:return`草稿缓存失败`;case`cleared`:return`草稿缓存已清理`;default:return``}}),Hn=(0,d.computed)(()=>({"is-success":z.value.type===`saved`||z.value.type===`restored`,"is-warning":z.value.type===`too-large`,"is-error":z.value.type===`unavailable`||z.value.type===`read-failed`||z.value.type===`write-failed`})),Un=(0,d.computed)(()=>`${Math.round(E.value*100)}%`),Wn=(0,d.computed)(()=>e.resolveFontFamilyOptions(p.fontFamilies,p.fontFamilyMode)),Gn=(0,d.computed)(()=>Wn.value.map(e=>({label:e.label,value:e.value}))),Kn=e.DEFAULT_TEXT_ALIGN_OPTIONS,qn=[...e.CONTRACT_BLOCK_STYLES.map(e=>({label:e.label,value:e.format}))],Jn=[{label:`实线`,value:`solid`},{label:`虚线`,value:`dashed`}],Yn=[{label:`完整显示`,value:`contain`},{label:`铺满裁剪`,value:`cover`},{label:`拉伸填充`,value:`fill`}],Xn=(0,d.computed)(()=>r.normalizePageSizeOptions(p.pageSizeOptions)),Zn=(0,d.computed)(()=>Xn.value.map(e=>({label:`${e.label} · ${e.width} × ${e.height}`,value:r.getPageSizeKey(e)}))),Qn=(0,d.computed)(()=>r.getPageSizeKey(Pn.value)),$n=(0,d.computed)(()=>p.draftCacheKey),H=(0,d.computed)(()=>v.value.variables.find(e=>e.key===y.value)),U=(0,d.computed)(()=>{let e=[...p.variableTypes,...p.showAdvancedChoiceControls?r.DEFAULT_ADVANCED_CHOICE_FIELD_TYPES:[],...p.showBuiltinSelectorControls?r.DEFAULT_BUILTIN_SELECTOR_FIELD_TYPES:[],...p.showCustomControls?r.DEFAULT_CUSTOM_FIELD_TYPES:[]].filter(e=>n.isContractTemplateFieldType(e?.type));return Array.from(new Map(e.map(e=>[e.type,e])).values())}),er=(0,d.computed)(()=>{let e=[...ee.SIGNING_LAYOUT_PRESET_KEYS.map(e=>ee.SIGNING_LAYOUT_PRESETS[e]),...(p.signingLayoutPresets??[]).filter(e=>!!e?.key)];return Array.from(new Map(e.map(e=>[e.key,e])).values())}),tr=(0,d.computed)(()=>U.value.map(e=>({...e,icon:oe.resolveFieldTypeIcon(e.type),group:e.type===`select`||e.type===`radio`?`advanced-choice`:e.type.endsWith(`-selector`)?`builtin-selector`:e.type===`custom`?`custom`:`basic`}))),W=(0,d.computed)(()=>r.normalizeContractTemplateMaxPages(p.maxPages)),nr=(0,d.computed)(()=>v.value.pages.length>=W.value),rr=(0,d.computed)(()=>{let e=ft.collectKeys(v.value);return Array.from(t.collectPageDecorationVariableKeys(v.value.pageDecorations)).filter(t=>!e.has(t))}),{scheduleAutoPaginate:ir,scheduleFullPagination:G,resetPagination:ar,disposePagination:or}=ve.useAutoPagination({templateValue:v,readonlyState:B,isAutoPaginating:xt,pendingPaginationPageId:St,activePageId:b,normalizedMaxPages:W,pageRefs:C,applyPagesChange:e=>{v.value={...v.value,pages:e},x.value=!1,S.value=[],Nr()},getPageSize:Jr,notifyPageLimit:Xr,captureViewport:Ze}),{saveDraftCache:sr,loadDraftCache:cr,clearDraftCache:lr,restoreDraftCacheIfNeeded:ur,stopDraftCacheTimer:dr,restartDraftCacheTimer:fr,resetDraftFingerprint:pr}=be.useDraftCacheSession({draftCacheWritable:kn,multipleFilesMode:h,filesValue:g,activeFileIdValue:_,templateValue:v,draftCacheKey:$n,draftCacheInterval:()=>p.draftCacheInterval,draftCacheMaxBytes:()=>p.draftCacheMaxBytes,pageSize:()=>p.pageSize,pageSizeOptions:()=>p.pageSizeOptions,syncActiveFileSnapshot:q,syncPageEditors:()=>(Mr(),kr()),setActiveFileId:Y,emitFilesChange:J,commit:X,updateDraftCacheStatus:Lr,scheduleFullPagination:G,activePageId:b,selectedVariableKey:y}),mr=(0,d.computed)(()=>{let e=Qt.value.trim().toLowerCase(),t=v.value.variables;return e?t.filter(t=>t.label.toLowerCase().includes(e)||t.key.toLowerCase().includes(e)):t}),hr=(0,d.computed)(()=>Math.max(Be,Pn.value.width-Re)),gr=(0,d.computed)(()=>Math.max(Ve,Pn.value.height-ze)),K=(0,d.computed)(()=>Pt.value[b.value]??wr()),_r=(0,d.computed)(()=>K.value.hasMixedBlockFormats?void 0:K.value.currentHeadingLevel??`paragraph`),vr=(0,d.computed)(()=>K.value.fontFamily||e.DEFAULT_CONTRACT_FONT_FAMILY),yr=(0,d.computed)(()=>K.value.fontSize??r.DEFAULT_FIELD_STYLE.fontSize??14),br=(0,d.computed)(()=>K.value.textColor||r.DEFAULT_FIELD_STYLE.color||`#1f2937`),xr=(0,d.computed)(()=>H.value?.style?.fontFamily||r.DEFAULT_FIELD_STYLE.fontFamily||e.DEFAULT_CONTRACT_FONT_FAMILY),Sr=(0,d.computed)(()=>{let t=e.DEFAULT_FONT_SIZE_PRESETS.map(e=>({label:`${e}px`,value:e})),n=Or(yr.value),r=Or(j.value),i=new Map;return r&&!e.DEFAULT_FONT_SIZE_PRESETS.includes(r)&&i.set(r,{label:`使用 ${r}px`,value:r}),n&&!e.DEFAULT_FONT_SIZE_PRESETS.includes(n)&&i.set(n,{label:r===n?`使用 ${n}px`:`${n}px`,value:n}),[...Array.from(i.values()),...t]});(0,d.watch)(()=>p.modelValue,(e,t)=>{if(!e||h.value)return;if(e!==t&&ut&&(0,d.toRaw)(e)===(0,d.toRaw)(ut)){ct=``;return}if(l.serializeFingerprint(e)===ct){ct=``;return}let n=r.normalizeTemplateValue(e,p.pageSize),i=r.constrainTemplatePageSizes(n,p.pageSizeOptions),a=l.serializeFingerprint(i)!==l.serializeFingerprint(v.value),o=l.serializeFingerprint(i)===ct;o&&(ct=``),(a||!o)&&(ct=``,Qe(),ar(),ft.clear(),jr(),v.value=i,g.value=c.replaceContractTemplateFile(g.value,_.value,i),b.value=i.pages[0]?.id??``,y.value=``,G()),l.serializeFingerprint(i)!==l.serializeFingerprint(n)&&Ir(i)},{deep:!0}),(0,d.watch)(()=>p.files,(e,t)=>{if(!Array.isArray(e))return;if(e!==t&&lt&&(0,d.toRaw)(e)===(0,d.toRaw)(lt)){st=``;return}if(l.serializeFingerprint(e)===st){st=``;return}let n=c.normalizeContractTemplateFiles(e,void 0,p.pageSize),r=c.constrainContractTemplateFiles(n,p.pageSizeOptions).files,i=l.serializeFingerprint(r),a=l.serializeFingerprint(g.value);i===st&&(st=``);let o=c.resolveContractTemplateActiveFileId(r,p.activeFileId||_.value);i===a?o!==_.value&&Y(o,{syncCurrent:!1,shouldEmit:!1}):(st=``,g.value=r,Y(o,{syncCurrent:!1,shouldEmit:!1,forceRefresh:!0})),i!==l.serializeFingerprint(n)&&J(r)},{deep:!0}),(0,d.watch)(()=>p.activeFileId,e=>{!h.value||!e||e===_.value||Y(e,{syncCurrent:!0,shouldEmit:!1})});function Cr(e,t){let n=l.serializeFingerprint(g.value);q(!1);let i=c.normalizeContractTemplateFiles(g.value,void 0,e),{files:a}=c.constrainContractTemplateFiles(i,t),o=l.serializeFingerprint(a)!==n,s=a.find(e=>e.id===_.value);return s&&l.serializeFingerprint(s.template)!==l.serializeFingerprint(v.value)&&(v.value=r.cloneTemplateValue(s.template)),o&&(x.value=!1,S.value=[],J(a,``)),o}(0,d.watch)([()=>p.pageSize,()=>p.pageSizeOptions],([e,t])=>{if(h.value){Cr(e,t),G();return}let n=r.normalizeTemplateValue(v.value,e),i=r.constrainTemplatePageSizes(n,t);l.serializeFingerprint(i)!==l.serializeFingerprint(v.value)&&X(i),G()},{deep:!0}),(0,d.watch)(W,()=>{G()}),(0,d.watch)(B,e=>{e?($(),M.value=!1,N.value=!1):G()}),(0,d.watch)(b,()=>{F.value=void 0}),(0,d.watch)([On,A,w],()=>{uo()}),(0,d.watch)(()=>[p.enableDraftCache,$n.value,p.draftCacheInterval,B.value],()=>{pr(),fr()}),(0,d.watch)(D,e=>{if(!(typeof document>`u`)){if(e){sn=document.body.style.overflow,document.body.style.overflow=`hidden`;return}document.body.style.overflow=sn??``,sn=void 0}}),(0,d.onMounted)(()=>{ur(),fr(),G(),document.fonts?.ready.then(G),document.fonts?.addEventListener(`loadingdone`,G),window.addEventListener(`pointerdown`,yo,!0),window.addEventListener(`pointerup`,go),window.addEventListener(`keydown`,So,!0),window.addEventListener(`keydown`,Co),window.addEventListener(`resize`,_o),window.addEventListener(`scroll`,bo,!0)}),(0,d.onBeforeUnmount)(()=>{Qe(),or(),Mr(),ln=!0,D.value&&typeof document<`u`&&(document.body.style.overflow=sn??``),document.fonts?.removeEventListener(`loadingdone`,G),window.removeEventListener(`pointerdown`,yo,!0),window.removeEventListener(`pointerup`,go),window.removeEventListener(`keydown`,So,!0),window.removeEventListener(`keydown`,Co),window.removeEventListener(`resize`,_o),window.removeEventListener(`scroll`,bo,!0),Xt!==void 0&&cancelAnimationFrame(Xt),dr()});function wr(){return{isFocused:!1,canUndo:!1,canRedo:!1,isBold:!1,isItalic:!1,isUnderline:!1,isBulletList:!1,isOrderedList:!1,isTableActive:!1,textAlign:`left`,fontFamily:e.DEFAULT_CONTRACT_FONT_FAMILY,fontSize:r.DEFAULT_FIELD_STYLE.fontSize??14,textColor:r.DEFAULT_FIELD_STYLE.color??`#1f2937`,selectionText:``,hasMixedBlockFormats:!1}}function Tr(e){return e===`left`||e===`center`||e===`right`}function Er(e){return typeof e==`number`&&Number.isInteger(e)&&e>=1&&e<=6}function Dr(e,t=yr.value){let n=Number(e);return Number.isFinite(n)?Math.min(Ue,Math.max(He,Math.round(n))):t}function Or(e){let t=String(e||``).trim().match(/(\d+(\.\d+)?)/);if(!t)return;let n=Number(t[1]);if(Number.isFinite(n))return Math.min(Ue,Math.max(He,Math.round(n)))}function kr(e=v.value){let t=!1,n=e.pages.map(e=>{let n=C.get(e.id)?.getContentSnapshot(e),r=n?.contentHtml??e.contentHtml,i=n?.contentJson??e.contentJson;return r===e.contentHtml&&(0,d.toRaw)(i)===(0,d.toRaw)(e.contentJson)?e:(t=!0,{...e,contentHtml:r,contentJson:i})});return t?{...e,pages:n}:e}function Ar(){dn!==void 0&&(clearTimeout(dn),dn=void 0),fn!==void 0&&typeof cancelIdleCallback==`function`&&cancelIdleCallback(fn),fn=void 0}function jr(){un=!1,Ar()}function Mr(){let e=un;jr(),e&&Fr()}function Nr(){un=!0,Ar(),dn=setTimeout(()=>{dn=void 0;let e=()=>{if(fn=void 0,!(!un||ln)){if(xt.value)return Nr();un=!1,Fr()}};typeof requestIdleCallback==`function`?fn=requestIdleCallback(e,{timeout:Le}):e()},Ie)}function Pr(e){let t=v.value.pages,n=t.findIndex(t=>t.id===e.id);if(n<0)return;let r=t[n];if(r.contentHtml===e.contentHtml&&r.contentJson===e.contentJson&&r.title===e.title&&r.pageSize===e.pageSize)return;let i=t.slice();i[n]=e,v.value={...v.value,pages:i}}function Fr(){let e=kr(),t=ft.sync(e);y.value&&!t.variables.some(e=>e.key===y.value)&&(y.value=``),X(t,{normalizedBody:!0})}function q(e=!1){Mr();let t=r.cloneTemplateValue(kr());if(!h.value)return t;let n=g.value.find(e=>e.id===_.value)?.template,i=l.serializeFingerprint(n)!==l.serializeFingerprint(t),a=c.replaceContractTemplateFile(g.value,_.value,t);return g.value=a,i&&e&&J(a),t}function Ir(e){let t=r.cloneTemplateValue(e);ut=t,ct=l.serializeFingerprint(e),m(`update:modelValue`,t),m(`change`,r.cloneTemplateValue(e))}function J(e,t=_.value){if(!h.value)return;let n=c.cloneContractTemplateFiles(e),r=c.cloneContractTemplateFiles(n);g.value=n,lt=r,st=l.serializeFingerprint(r),m(`update:files`,r),m(`files-change`,c.cloneContractTemplateFiles(r));let i=r.find(e=>e.id===t);i&&m(`file-change`,c.cloneContractTemplateFiles([i])[0])}function Y(e,t={}){let{syncCurrent:n,shouldEmit:i,forceRefresh:a}=ye.resolveSetActiveFileIdOptions(t),o=c.resolveContractTemplateActiveFileId(g.value,e),s=o!==_.value;if((s||a)&&g.value.some(e=>e.id===o)&&(Qe(),ar()),n?q(!0):jr(),!s&&!a)return;let ee=g.value.find(e=>e.id===o);ee&&(_.value=o,v.value=r.cloneTemplateValue(ee.template),y.value=``,b.value=v.value.pages[0]?.id??``,Pt.value={},C.clear(),ft.clear(),pt.clear(),x.value=!1,S.value=[],w.value=!1,T.value=void 0,Ct.value=void 0,pr(),i&&s&&m(`update:activeFileId`,o),n&&s&&kn.value&&sr(),(0,d.nextTick)(()=>{G()}))}function X(e,t={}){jr();let n=t.normalizedBody?e:r.constrainTemplatePageSizes(r.normalizeTemplateValue(e,p.pageSize),p.pageSizeOptions);return t.normalizedBody||(ft.clear(),pt.clear()),v.value=n,x.value=!1,S.value=[],h.value?J(c.replaceContractTemplateFile(g.value,_.value,n)):(g.value=c.replaceContractTemplateFile(g.value,_.value,n),Ir(n)),n}function Lr(e,t=e.type!==`unchanged`){z.value=e,t&&m(`draft-cache-change`,{...e})}function Rr(){return{...z.value}}function zr(e,t){t?C.set(e,t):C.delete(e)}function Br(e){$(),Lt.value=!1,Z({type:`insert-signing-layout`,preset:ee.isSigningLayoutPresetKey(e.key)?e.key:void 0,options:e.options})}function Vr(e){$(),Z({type:`insert-signing-layout`,options:e})}function Hr(){Lt.value=!1,zt.value=!0}function Ur(e){$(),Rt.value=!1,Z({type:`insert-signing-mark`,mark:{markType:e}})}function Z(e,t=V.value?.id??b.value){B.value||C.get(t)?.runCommand(e)}function Wr(e){Z(e),$()}function Gr(e){let t=P.value?.pageId;t&&(C.get(t)?.focus(),R.value=typeof document<`u`&&document.execCommand(e)?`${e===`copy`?`已复制`:e===`cut`?`已剪切`:`已粘贴`}`:`浏览器未授权剪贴板操作,请使用系统快捷键。`,$())}function Kr(e){let t=X(r.syncTemplateVariablesWithPages(e));return y.value&&!t.variables.some(e=>e.key===y.value)&&(y.value=``),t}function qr(e){Pr(e),Nr(),ir(e.id)}function Jr(e){let t=r.resolvePageSize(e?.pageSize,v.value.pageSize),n=`${r.getPageSizeKey(t)}:${t.label??``}`;return pt.get(n)||(pt.set(n,t),t)}function Yr(e){if(B.value||!V.value)return;let t=Xn.value.find(t=>r.getPageSizeKey(t)===e);if(!t)return;let n=V.value.id,i=r.resolvePageSize(t,v.value.pageSize);X({...v.value,pages:v.value.pages.map(e=>e.id===n?{...e,pageSize:i}:e)}),ir(n)}function Xr(e){let t=W.value;R.value=`合同最多支持 ${t} 页`,m(`page-limit`,t,e)}function Zr(){if(B.value)return;if(nr.value){Xr(`add`);return}let e=r.createDefaultPage(v.value.pages.length+1,Pn.value);X({...v.value,pages:[...v.value.pages,e]}),b.value=e.id,G()}function Qr(e){if(B.value)return;if(nr.value){Xr(`duplicate`);return}let t=v.value.pages.findIndex(t=>t.id===e.id);if(t<0)return;let n=r.cloneTemplateValue({pages:[e],variables:[],pageSize:v.value.pageSize}).pages[0],i=r.createBlankPage(t+2,Jr(e),n.contentHtml,n.contentJson);i.title=`${e.title||`第 ${t+1} 页`}副本`;let a=[...v.value.pages];a.splice(t+1,0,i),X({...v.value,pages:a}),b.value=i.id,G()}function $r(e){if(B.value||v.value.pages.length<=1)return;let t=v.value.pages.findIndex(t=>t.id===e.id);if(t<0)return;let n=v.value.pages.filter(t=>t.id!==e.id),r=Kr({...v.value,pages:n});b.value=r.pages[Math.min(t,r.pages.length-1)]?.id??``,G()}function ei(e){B.value||v.value.pages.length<=1||Ee.Modal.confirm({title:`删除合同页面`,content:`删除页面会同时移除页面正文,是否继续?`,okText:`确认删除`,okType:`danger`,cancelText:`取消`,onOk:()=>{$r(e)}})}function ti(e){let t=new Set(v.value.variables.map(e=>e.key)),n=1;for(;t.has(`${e}_${n}`);)n+=1;return`${e}_${n}`}function ni(e){let t=e.type??`text`;return r.createTemplateVariable({...e,type:t,key:e.key||ti(t),label:e.label||r.getFieldOption(t,U.value).label},U.value,p.defaultVariableStyle)}function ri(e,t=V.value?.id??v.value.pages[0].id,n){if(B.value)return e;let r=C.get(t)?.insertVariable(e,n),i=!v.value.variables.some(t=>t.key===e.key);return X({...v.value,pages:r?v.value.pages.map(e=>e.id===r.id?r:e):v.value.pages,variables:i?[...v.value.variables,e]:v.value.variables}),y.value=e.key,b.value=t,i&&m(`variable-add`,e),ir(t),e}function ii(e){let{width:t,height:n,...r}=e,i=s.normalizeContractImageDimension(t),a=s.normalizeContractImageDimension(n);return{...r,...i===void 0?{}:{width:i},...a===void 0?{}:{height:a}}}function ai(e={}){let t=s.normalizeContractImageDimension(Vt.value),n=s.normalizeContractImageDimension(Ht.value);return{...e,...t===void 0?{}:{width:t},...n===void 0?{}:{height:n}}}function oi(){Bt.value=``,Vt.value=void 0,Ht.value=void 0,Ut.value=``}function si(e,t=V.value?.id??v.value.pages[0]?.id,n){let r=ii({...e,src:e.src.trim()});if(!(B.value||!t||!i.isSafeContractImageUrl(r.src)||!r.src||!C.get(t)?.insertContentImage(r,n)))return b.value=t,y.value=``,r.src}function ci(e){return e instanceof Error?e:Error(`图片处理失败`)}async function li(e,t){t===`toolbar`&&(Wt.value=!0,Ut.value=``);try{let n=await s.processContractImageFile(e,{source:t,compression:p.imageCompression,upload:p.imageUpload});return ln?void 0:n.src}catch(e){let n=ci(e);t===`toolbar`&&(Ut.value=n.message),R.value=n.message,m(`image-error`,n,t);return}finally{t===`toolbar`&&(Wt.value=!1)}}let ui=0;function di(e){let t=e.replacedFontFamilies.filter(Boolean);if(!t.length)return;let n=Date.now();n-ui<800||(ui=n,Ee.message.info(`已将 ${t.length} 种外部字体(${t.join(`、`)})统一为合同标准字体,以保证 Mac 与 Windows 排版一致`))}async function fi(e){return await li(e,`paste`)??null}async function pi(e,t={}){if(B.value)return;let n=V.value?.id??v.value.pages[0]?.id,r=n?C.get(n)?.getSelectionRange():void 0,a=typeof e==`string`?e.trim():await li(e,`toolbar`);if(ln)return;if(!a||!i.isSafeContractImageUrl(a)){typeof e==`string`&&(Ut.value=`请输入安全的图片 URL`);return}if(n&&!C.has(n))return;let o=si({...t,src:a},n,r);return o&&(It.value=!1,oi(),R.value=`已插入图片`),o}function mi(){B.value||Wt.value||($(),Ut.value=``,at.value&&(at.value.value=``),at.value?.click())}async function hi(e){let t=e.target.files?.[0];t&&await pi(t,ai({alt:t.name}))}async function gi(){let e=Bt.value;await pi(e,ai())}function _i(e){Ii(e),Ft.value=!1}function vi(){$(),Zr()}function yi(e,t,n,r){$(),ri(ni({type:t}),e,{left:n,top:r})}function bi(e){$(),y.value=e}function xi(e){let n=v.value.variables.find(t=>t.id===e.id);if(!n)return;let i=e.key.trim();if(i!==n.key){let t=r.validateContractTemplateVariableKey(i,v.value.variables,e.id);if(t){R.value=t;return}}e={...e,key:i};let a=[...v.value.pages],o=n.key;C.forEach((t,n)=>{let r=t.updateVariable(e,o);if(r){let e=a.findIndex(e=>e.id===n);e>=0&&(a[e]=r)}}),X({...v.value,pages:a,variables:v.value.variables.map(t=>t.id===e.id?e:t),...o!==e.key&&v.value.pageDecorations?{pageDecorations:t.rewritePageDecorationVariableTokens(v.value.pageDecorations,o,e.key)}:{}}),y.value=e.key,G()}function Q(e){H.value&&xi({...H.value,...e,style:{...H.value.style,...e.style}})}function Si(e){B.value||!H.value||Q({key:e})}function Ci(e){B.value||(X({...v.value,pageDecorations:t.normalizePageDecorations(e)}),G())}function wi(e){(e===`left`||e===`center`||e===`right`)&&Q({style:{textAlign:e}})}function Ti(e){(e===`solid`||e===`dashed`)&&Q({style:{borderStyle:e}})}function Ei(e){(e===`contain`||e===`cover`||e===`fill`)&&Q({style:{objectFit:e}})}function Di(e){Q({style:e})}function Oi(t){Di({fontFamily:String(t||``).trim()||e.DEFAULT_CONTRACT_FONT_FAMILY})}function ki(e){Di({fontSize:Dr(e,H.value?.style?.fontSize??14)})}function Ai(e){H.value&&Q({multiline:e,rows:H.value.rows||3,lineHeight:H.value.lineHeight||28,style:e?{underline:!0}:void 0})}function ji(e){H.value&&Q({rows:Number(e||3),lineHeight:H.value.lineHeight||28})}function Mi(e){if(B.value)return;let n=[...v.value.pages];C.forEach((t,r)=>{let i=t.removeVariable(e.key);if(i){let e=n.findIndex(e=>e.id===r);e>=0&&(n[e]=i)}}),X({...v.value,pages:n,variables:v.value.variables.filter(t=>t.id!==e.id),...v.value.pageDecorations?{pageDecorations:t.rewritePageDecorationVariableTokens(v.value.pageDecorations,e.key)}:{}}),y.value=``}function Ni(e){let t=(e.trim()||`variable`).replace(/\s+/g,`_`),n=new Set(v.value.variables.map(e=>e.key));if(!n.has(t))return t;let r=2;for(;n.has(`${t}_${r}`);)r+=1;return`${t}_${r}`}function Pi(e){B.value||ri(r.createTemplateVariable({...e,id:void 0,key:Ni(`${e.key||e.type}_copy`),label:`${e.label}副本`,style:{...e.style}},U.value,p.defaultVariableStyle))}function Fi(e){return B.value?void 0:ri(v.value.variables.find(t=>t.key===e.key)??r.createTemplateVariable(e,U.value,p.defaultVariableStyle))}function Ii(e){if(!B.value)return ri(ni({type:e}))}function Li(e){if(B.value||!n.isContractTemplateFieldType(e))return;let t=P.value,r=U.value.find(t=>t.type===e);if(!t||!r)return;let i=te.inferContextVariableLabel(t.leadingText)||r.label,a=te.resolveContextVariableWidth(t.selectionWidth,Be,hr.value),o=Ri();ri(ni({type:e,label:i,...a?{width:a}:{},...o?{style:o}:{}}),t.pageId),R.value=t.hasSelection?`已将选中内容替换为${r.label}控件`:`已插入${r.label}控件`,$()}function Ri(){let e=K.value,t={};return e.isUnderline&&(t.underline=!0),typeof e.fontSize==`number`&&Number.isFinite(e.fontSize)&&(t.fontSize=e.fontSize),e.fontFamily&&(t.fontFamily=e.fontFamily),e.textColor&&(t.color=e.textColor),Object.keys(t).length?t:void 0}function zi(e){if(B.value)return;let t=P.value;t&&(ri(e,t.pageId),R.value=`已绑定到${e.label},沿用原控件尺寸`,$())}function Bi(e){let t=e.type&&n.isContractTemplateFieldType(e.type)?e.type:`text`;return r.getFieldOption(t,U.value).label}function Vi(){v.value.variables.length&&(Zt.value=!0,(0,d.nextTick)(()=>{eo(),Gt.value?.focusBindSearch()}))}function Hi(e,t){e.dataTransfer?.setData(`application/x-gd-contract-variable`,t),e.dataTransfer&&(e.dataTransfer.effectAllowed=`copy`)}function Ui(e){return E.value=Math.round(Math.min(Pe,Math.max(Ne,Number.isFinite(e)?e:1))*100)/100,E.value}let{width:Wi}=(0,De.useElementSize)(Ye),Gi=(0,d.computed)(()=>Math.max(...v.value.pages.map(e=>Jr(e).width),r.DEFAULT_PAGE_SIZE.width)+10),{fitWidth:Ki,applyAutoFit:qi,markUserAdjusted:Ji,userAdjusted:Yi}=o.useFitWidthZoom({viewportWidth:Wi,widestPageWidth:Gi,padding:48,minZoom:Ne,maxZoom:Pe,getZoom:()=>E.value,applyZoom:Ui});function Xi(e){return Ji(),Ui(e)}function Zi(){return qi()}function Qi(){return E.value}function $i(){Xi(E.value+Fe)}function ea(){Xi(E.value-Fe)}function ta(){$(),so(),D.value=!D.value}(0,d.watch)(Wi,e=>{k.value&&!Yi.value&&e>0&&Ki()});function na(e){O.value?it.value?.focus():e()}function ra(){$(),so(),A.value=!1,cn={fullscreen:D.value,sidebar:kt.value,inspector:At.value,chrome:O.value,zoom:E.value,userAdjusted:Yi.value},D.value=!0,kt.value=!0,At.value=!0,O.value=!0,k.value=!0,(0,d.nextTick)(()=>{B.value?jt.value?.focus():C.get(b.value)?.focus()})}function ia(){let e=cn;k.value=!1,cn=void 0,e&&(D.value=e.fullscreen,kt.value=e.sidebar,At.value=e.inspector,O.value=e.chrome,e.userAdjusted?Xi(e.zoom):qi(),(0,d.nextTick)(()=>na(()=>et.value?.focusImmersive())))}function aa(){k.value?ia():ra()}function oa(){$(),F.value=void 0;let e=q(!1);h.value?(Ct.value=c.cloneContractTemplateFiles(g.value),T.value=void 0,wt.value=_.value||g.value[0]?.id||``):(T.value=r.cloneTemplateValue(e),Ct.value=void 0,wt.value=``),w.value=!0}function sa(){w.value=!1,T.value=void 0,Ct.value=void 0,wt.value=``}function ca(){return La()}function la(){$();let e=ca();return Et.value=JSON.stringify(e,null,2),Tt.value=!0,e}function ua(){Tt.value=!1}function da(){return a.buildTemplateVariableData(q(!1))}function fa(){$();let e=da();return Ot.value=e,Dt.value=!0,e}function pa(){Dt.value=!1}function ma(){$(),F.value=void 0,M.value=!1,N.value=!1,y.value=``,b.value=``,w.value=!1,T.value=void 0,Ct.value=void 0,Tt.value=!1,Et.value=``,Dt.value=!1,Ot.value={values:{},variables:[]},Pt.value={},Qe(),ar();let e=X(r.createBlankTemplate(r.DEFAULT_PAGE_SIZE));return b.value=e.pages[0]?.id??``,r.cloneTemplateValue(e)}function ha(){B.value||($(),Ee.Modal.confirm({title:`清空合同内容`,content:`将清空全部合同正文、页面和模板变量,仅保留一个空白 A4 合同页。此操作不可撤销。`,okText:`确认清空`,okType:`danger`,cancelText:`取消`,onOk:()=>{ma()}}))}function ga(e){let t=kr().pages,n=t.find(e=>e.id===b.value);return(n?[n,...t.filter(e=>e.id!==n.id)]:t).find(t=>t.contentHtml.includes(`data-key="${e.key}"`)||t.contentHtml.includes(`data-key='${e.key}'`))}function _a(e){$(),y.value=e.key;let t=ga(e);t&&(b.value=t.id,(0,d.nextTick)(()=>{C.get(t.id)?.scrollIntoVariable(e.key)}))}function va(e){let t=v.value.variables.find(t=>t.key===e||t.id===e);t&&_a(t)}function ya(e,t=!0){$(),b.value=e,t&&(0,d.nextTick)(()=>{C.get(e)?.scrollIntoPage()})}function ba(e){ya(e.pageId,!1),C.get(e.pageId)?.focusHeading(e.headingIndex)}function xa(e){v.value.pages.some(t=>t.id===e)&&ya(e)}function Sa(){if(A.value){Ca();return}A.value=!0}function Ca(){A.value=!1,(0,d.nextTick)(()=>na(()=>et.value?.focusPageDecorations()))}function wa(){return Mr(),r.cloneTemplateValue(kr())}function Ta(e){Qe(),ar(),X(e),G()}function Ea(){let e=q(!1);return h.value?c.cloneContractTemplateFiles(g.value):c.cloneContractTemplateFiles(c.replaceContractTemplateFile(g.value,_.value,e))}function Da(e,t){let n=c.normalizeContractTemplateFiles(e,void 0,p.pageSize),r=c.constrainContractTemplateFiles(n,p.pageSizeOptions),i=g.value;mt.value=!0,q(!1),g.value=r.files,Y(c.resolveContractTemplateActiveFileId(g.value,t??_.value),{syncCurrent:!1,shouldEmit:!0,forceRefresh:!0}),l.serializeFingerprint(i)!==l.serializeFingerprint(g.value)&&J(g.value,``)}function Oa(e){if(B.value)return;mt.value=!0,q(!0);let t=c.createContractTemplateFile(e||`合同文件 ${g.value.length+1}`,p.pageSize);return g.value=[...g.value,t],J(g.value,``),m(`file-add`,c.cloneContractTemplateFiles([t])[0]),Y(t.id,{syncCurrent:!1,shouldEmit:!0,forceRefresh:!0}),c.cloneContractTemplateFiles([t])[0]}function ka(e){!h.value&&!g.value.some(t=>t.id===e)||(mt.value=!0,Y(e))}function Aa(e,t){if(B.value)return;mt.value=!0,q(!1);let n=c.renameContractTemplateFile(g.value,e,t),r=n.find(t=>t.id===e);if(r)return g.value=n,J(n,e),c.cloneContractTemplateFiles([r])[0]}function ja(e){if(B.value||g.value.length<=1)return;mt.value=!0,q(!1);let t=g.value.find(t=>t.id===e);if(!t)return;let n=c.removeContractTemplateFile(g.value,e);if(n.length!==g.value.length)return g.value=n,J(n,``),m(`file-remove`,c.cloneContractTemplateFiles([t])[0]),_.value===e&&Y(c.resolveContractTemplateActiveFileId(n,n[0]?.id),{syncCurrent:!1,shouldEmit:!0,forceRefresh:!0}),c.cloneContractTemplateFiles([t])[0]}function Ma(e){if(B.value||g.value.length<=1)return;let t=g.value.find(t=>t.id===e);t&&Ee.Modal.confirm({title:`删除合同文件`,content:`删除“${t.name}”后,其正文和变量将无法恢复,是否继续?`,okText:`确认删除`,okType:`danger`,cancelText:`取消`,onOk:()=>{ja(e)}})}function Na(e,t){if(B.value)return;mt.value=!0,q(!1);let n=g.value.findIndex(t=>t.id===e),r=c.moveContractTemplateFile(g.value,e,t),i=r.findIndex(t=>t.id===e),a=r[i];if(!(!a||n===i))return g.value=r,J(r,``),m(`file-move`,c.cloneContractTemplateFiles([a])[0],n,i),c.cloneContractTemplateFiles([a])[0]}function Pa(){q(!1);let e=za(h.value?g.value.flatMap(e=>r.validateTemplateValue(e.template,{maxPages:W.value}).map(t=>({...t,fileId:e.id}))):r.validateTemplateValue(kr(),{maxPages:W.value}));return S.value=e,x.value=!0,m(`validate`,e),e}function Fa(e){if(e.fileId&&e.fileId!==_.value){ka(e.fileId),(0,d.nextTick)(()=>Fa({...e,fileId:void 0}));return}let n=t.resolvePageDecorationValidationPath(e);if(n){A.value=!0,(0,d.nextTick)(()=>tt.value?.focusField(n));return}if(e.variableKey){va(e.variableKey);return}if(e.pageId){xa(e.pageId);return}let r=v.value.variables.find(t=>t.id===e.id||t.key===e.id);if(r){_a(r);return}v.value.pages.some(t=>t.id===e.id)&&ya(e.id)}function Ia(e){return t.resolvePageDecorationValidationPath(e)?`页面装饰`:e.type===`variable`?`变量`:`字段`}function La(){return Mr(),r.exportTemplateValue(kr())}function Ra(){let e=q(!1),t=h.value?g.value:c.replaceContractTemplateFile(g.value,_.value,e);return c.exportContractTemplateFiles(t)}function za(e){let t=new Set;return e.filter(e=>{let n=`${e.fileId??``}|${e.code??``}|${e.id}|${e.pageId??``}|${e.message}`;return t.has(n)?!1:(t.add(n),!0)})}function Ba(e){S.value=[...e],x.value=!0}function Va(){S.value=[],x.value=!1}function Ha(){C.get(V.value?.id??b.value)?.focus()}function Ua(e){Tr(e)&&Z({type:`set-text-align`,value:e})}function Wa(e){(e===`paragraph`||Er(e))&&Z({type:`apply-block-style`,format:e})}function Ga(e){let t=Or(e);t&&(Z({type:`set-font-size`,value:t}),j.value=``)}function Ka(e){let t=String(e||``).trim();if(!t){Z({type:`unset-font-family`});return}Z({type:`set-font-family`,value:t})}function qa(e){Ja(e.target?.value??``)}function Ja(e){let t=e.trim();t&&Z({type:`set-color`,value:t})}function Ya(e){j.value=e}function Xa(){j.value.trim()&&Ga(j.value)}function Za(e){e.key===`Enter`&&(e.preventDefault(),Xa())}function Qa(e){e||(Xa(),j.value=``)}function $a(e){if(B.value)return;b.value=e.pageId,M.value=!1,N.value=!1,I.value=void 0,L.value=void 0,Zt.value=!1,Qt.value=``;let t=u.clampContextMenuPosition(e.clientX,e.clientY,304,300);P.value={pageId:e.pageId,x:t.x,y:t.y,hasSelection:e.hasSelection,selectionWidth:e.selectionWidth,leadingText:e.leadingText},(0,d.nextTick)(()=>{eo(),Gt.value?.focusFirstButton()})}function eo(){let e=Gt.value?.getMenuElement(),t=P.value;if(!e||!t)return;let n=u.clampContextMenuToElement(t.x,t.y,e);P.value={...t,x:n.x,y:n.y}}function to(e){if(B.value)return;b.value=e.pageId,M.value=!1,N.value=!1,P.value=void 0,L.value=void 0;let t=u.clampContextMenuPosition(e.clientX,e.clientY,248,400);I.value={...e,x:t.x,y:t.y},(0,d.nextTick)(()=>{let e=$t.value?.getMenuElement(),t=I.value;if(e&&t){let n=u.clampContextMenuToElement(t.x,t.y,e);I.value={...t,x:n.x,y:n.y}}$t.value?.focusFirstItem()})}function no(e){if(B.value)return;b.value=e.pageId,M.value=!1,N.value=!1,P.value=void 0,I.value=void 0,tn.value=e.image.width,nn.value=e.image.height,y.value=``;let t=u.clampContextMenuPosition(e.clientX,e.clientY,288,196);L.value={pageId:e.pageId,image:e.image,x:t.x,y:t.y},(0,d.nextTick)(()=>{ro(),en.value?.getMenuElement()?.querySelector(`input, button:not(:disabled)`)?.focus()})}function ro(){let e=en.value?.getMenuElement(),t=L.value;if(!e||!t)return;let n=u.clampContextMenuToElement(t.x,t.y,e);L.value={...t,x:n.x,y:n.y}}function io(){let e=L.value;!e||B.value||(C.get(e.pageId)?.updateSelectedContentImage({width:s.normalizeContractImageDimension(tn.value),height:s.normalizeContractImageDimension(nn.value)})&&(R.value=`已更新图片尺寸`),$())}function ao(){let e=L.value;!e||B.value||(C.get(e.pageId)?.updateSelectedContentImage({width:void 0,height:void 0})&&(R.value=`已恢复图片自然尺寸`),$())}function oo(e){e.type===`table`?to(e):e.type===`image`?no(e):$a(e)}function $(){P.value=void 0,I.value=void 0,L.value=void 0,Zt.value=!1,Qt.value=``}function so(){Cn(!1),M.value=!1,N.value=!1,Nt.value=!1,Ft.value=!1,It.value=!1,Lt.value=!1,Rt.value=!1}function co(){so(),O.value=!O.value,(0,d.nextTick)(()=>na(()=>et.value?.focusChromeToggle()))}let lo=[`.gd-contract-template-designer__context-menu`,`.gd-contract-template-designer__bubble-menu`,`.gd-contract-template-designer__bubble-menu-popup`].join(`,`);function uo(){let e=B.value||Yt.value||qt.value||On.value||A.value||w.value,t=b.value,n=e?void 0:C.get(t)?.getSelectionViewportRect();if(!n){F.value=void 0;return}let r=n.top-40-We,i=r>=12?r:n.bottom+We,a=(n.left+n.right)/2-380/2,o=u.clampContextMenuPosition(a,i,380,40);F.value={pageId:t,x:o.x,y:o.y},(0,d.nextTick)(()=>fo(n))}function fo(e){let t=Kt.value?.getMenuElement(),n=F.value;if(!t||!n)return;let r=t.getBoundingClientRect(),i=e.top-r.height-We,a=i>=12?i:e.bottom+We,o=(e.left+e.right)/2-r.width/2,s=u.clampContextMenuToElement(o,a,t);F.value={...n,x:s.x,y:s.y}}function po(){let e=F.value?.pageId??b.value,t=C.get(e)?.getSelectionRange();Jt=t?{pageId:e,...t}:void 0,qt.value=!0,F.value=void 0}function mo(e){if(!qt.value)return;let t=Jt,n=C.get(e)?.getSelectionRange();t&&n&&t.pageId===e&&t.from===n.from&&t.to===n.to||(qt.value=!1,Jt=void 0)}function ho(){!F.value||Xt!==void 0||(Xt=requestAnimationFrame(()=>{Xt=void 0,uo()}))}function go(){Yt.value&&(Yt.value=!1,uo())}function _o(){$(),ho()}function vo(e,t){C.get(F.value?.pageId??b.value)?.requestTextContextMenu(e,t)}function yo(e){let t=e.target instanceof Element?e.target:null;t?.closest(`.ProseMirror`)&&(Yt.value=!0,F.value=void 0),!(!P.value&&!I.value&&!L.value&&!F.value)&&(t?.closest(lo)||($(),F.value&&po()))}function bo(e){(e.target instanceof Element?e.target:null)?.closest(lo)||($(),ho())}function xo(e){let t=Je.value;if(!t||typeof document>`u`)return!1;let n=e.target instanceof Node?e.target:void 0,r=document.activeElement;return!!(n&&t.contains(n)||r&&t.contains(r)||n instanceof Element&&n.closest(`.gd-contract-template-designer__context-menu`))}function So(e){if(e.key!==`Escape`||!A.value||typeof document>`u`)return;let t=Je.value?.querySelector(`.gd-contract-template-designer__page-decorations-studio`);if(!t)return;let n=e.target instanceof Element?e.target:null,r=document.activeElement instanceof Element?document.activeElement:null,i=!!(n?.closest(on)||r?.closest(on)),a=!!(n&&t.contains(n)||r&&t.contains(r)),o=!!t.querySelector(`.ant-select-open, .ant-dropdown-open`);if(i||a&&o){an.add(e);return}!On.value&&(a||e.target===document)&&(e.preventDefault(),e.stopPropagation(),Ca())}function Co(e){if((e.ctrlKey||e.metaKey)&&!e.altKey&&e.key.toLowerCase()===`s`){if(!kn.value||!xo(e))return;e.preventDefault(),sr();return}if(e.key===`Escape`){if(an.has(e)){an.delete(e);return}let t=On.value,n=t||A.value;if(!t&&A.value&&Ca(),$(),so(),n&&e.stopPropagation(),!n){if(F.value){po(),e.stopPropagation();return}k.value?ia():D.value=!1}}}function wo(e,t){e===b.value&&t.selectedContentImage&&(y.value=``),e===b.value&&(mo(e),uo());let n=Pt.value[e];n&&Te.isSameEditorState(n,t)||(Pt.value={...Pt.value,[e]:t})}function To(e=rn.value.rows,t=rn.value.cols){Z({type:`insert-table`,options:{rows:Math.min(10,Math.max(1,Math.round(Number(e)||3))),cols:Math.min(10,Math.max(1,Math.round(Number(t)||3))),withHeaderRow:!!rn.value.withHeaderRow}}),M.value=!1,$()}let Eo={"delete-table-row":{label:`删除当前行`,countKey:`deleteRow`},"delete-table-column":{label:`删除当前列`,countKey:`deleteColumn`},"delete-table":{label:`删除表格`,countKey:`deleteTable`}};function Do(e){let t=I.value;if(!t)return;let n=()=>{Z(e,t.pageId),$()},r=Eo[e.type];if(!r){n();return}let i=t.affectedVariableCounts[r.countKey];$(),Ee.Modal.confirm({title:r.label,content:i?`此操作将移除 ${i} 个正文变量节点,是否继续?`:`此操作将修改表格结构,是否继续?`,okText:`确认`,okType:`danger`,cancelText:`取消`,onOk:n,onCancel:()=>C.get(t.pageId)?.focus()})}function Oo(e){let t=$t.value?.getMenuElement();if(!t)return;if(e.key===`Escape`){e.preventDefault(),e.stopPropagation();let t=I.value?.pageId;$(),C.get(t??``)?.focus();return}let n=Array.from(t.querySelectorAll(`button:not(:disabled)`));if(!n.length)return;if(e.key===`Home`||e.key===`End`){e.preventDefault(),n[e.key===`Home`?0:n.length-1]?.focus();return}if(![`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`].includes(e.key))return;let r=(Math.max(0,n.indexOf(document.activeElement))+(e.key===`ArrowUp`||e.key===`ArrowLeft`?-1:1)+n.length)%n.length;e.preventDefault(),n[r]?.focus()}function ko(e){if(e.key!==`Escape`)return;e.preventDefault(),e.stopPropagation();let t=P.value?.pageId;$(),C.get(t??``)?.focus()}function Ao(e){if(e.key!==`Escape`)return;e.preventDefault(),e.stopPropagation();let t=L.value?.pageId;$(),C.get(t??``)?.focus()}function jo(e){Z({type:e}),N.value=!1,$()}return Ge({getValue:wa,setValue:Ta,getFiles:Ea,setFiles:Da,addFile:Oa,selectFile:ka,renameFile:Aa,removeFile:ja,moveFile:Na,validate:Pa,exportTemplate:La,exportFiles:Ra,getSubmitData:ca,clearTemplate:ma,saveDraftCache:sr,loadDraftCache:cr,clearDraftCache:lr,getDraftCacheStatus:Rr,insertVariable:Fi,insertImage:pi,focus:Ha,openPreview:oa,closePreview:sa,openSubmitDataViewer:la,closeSubmitDataViewer:ua,getVariableData:da,openVariableDataViewer:fa,closeVariableDataViewer:pa,setServerValidationErrors:Ba,clearValidationErrors:Va,scrollToVariable:va,scrollToPage:xa,setZoom:Xi,resetZoom:Zi,getZoom:Qi,fitWidth:Ki}),(e,t)=>((0,d.openBlock)(),(0,d.createElementBlock)(`div`,{ref_key:`designerElement`,ref:Je,class:(0,d.normalizeClass)([`gd-contract-template-designer`,{"is-disabled":f.disabled,"is-readonly":B.value,"is-fullscreen":D.value,"is-immersive":k.value}]),style:(0,d.normalizeStyle)(qe.value),onKeydownCapture:t[31]||=(...e)=>(0,d.unref)(Dn)&&(0,d.unref)(Dn)(...e)},[h.value?((0,d.openBlock)(),(0,d.createBlock)(xe.default,{key:0,files:g.value,"active-file-id":_.value,readonly:B.value,onSelect:ka,onAdd:t[0]||=e=>Oa(),onRename:Aa,onRemove:Ma,onMove:Na},null,8,[`files`,`active-file-id`,`readonly`])):(0,d.createCommentVNode)(``,!0),(0,d.createElementVNode)(`div`,{class:(0,d.normalizeClass)([`gd-contract-template-designer__layout`,{"is-sidebar-collapsed":kt.value,"is-inspector-collapsed":At.value}])},[(0,d.createVNode)(Se.default,{collapsed:kt.value,"file-id":_.value,pages:v.value.pages,variables:v.value.variables,"decoration-variable-keys":rr.value,"active-page-id":b.value,"selected-variable-key":y.value,"normalized-max-pages":W.value,"page-limit-reached":nr.value,"selected-page":V.value,"selected-page-size":Pn.value,"normalized-page-size-options":Xn.value,"page-size-options":Zn.value,"selected-page-size-option-value":Qn.value,readonly:B.value,"get-page-size":Jr,onToggle:t[1]||=e=>kt.value=!kt.value,onAddPage:Zr,onActivatePage:ya,onNavigateOutline:ba,onDuplicatePage:Qr,onRemovePage:ei,onPatchPageFormat:Yr,onScrollToVariable:_a},null,8,[`collapsed`,`file-id`,`pages`,`variables`,`decoration-variable-keys`,`active-page-id`,`selected-variable-key`,`normalized-max-pages`,`page-limit-reached`,`selected-page`,`selected-page-size`,`normalized-page-size-options`,`page-size-options`,`selected-page-size-option-value`,`readonly`]),(0,d.createElementVNode)(`main`,{ref_key:`workspaceElement`,ref:$e,class:`gd-contract-template-designer__workspace`},[(0,d.withDirectives)((0,d.createElementVNode)(`div`,{id:rt,class:`gd-contract-template-designer__workspace-chrome`},[(0,d.createVNode)(ae.default,{ref_key:`workspaceHeaderElement`,ref:et,summary:Ln.value,"draft-cache-status-text":Vn.value,"draft-cache-status-class":Hn.value,"show-draft-cache-status":f.showDraftCacheStatus,"show-clear-button":f.showClearButton,"show-submit-data-viewer":f.showSubmitDataViewer,"show-variable-data-viewer":f.showVariableDataViewer,readonly:B.value,"zoom-percent":Un.value,"zoom-out-disabled":E.value<=Ne,"zoom-in-disabled":E.value>=Pe,"is-fullscreen":D.value,immersive:k.value,"page-decorations-open":A.value,"page-decorations-studio-id":nt,"page-decorations-preset-label":Rn.value,"page-decorations-enabled-count":Bn.value,"page-decorations-enabled-states":zn.value,"chrome-controls-id":rt,onZoomOut:ea,onZoomIn:$i,onFitWidth:(0,d.unref)(Ki),onResetZoom:Zi,onToggleFullscreen:ta,onToggleImmersive:aa,onClear:ha,onValidate:Pa,onPreview:oa,onSubmitData:la,onVariableData:fa,onTogglePageDecorations:Sa,onToggleChrome:co},{authoring:(0,d.withCtx)(()=>[(0,d.createVNode)(ce.default,{ref_key:`authoringBarElement`,ref:ot,compact:``,query:(0,d.unref)(mn),"onUpdate:query":t[2]||=e=>(0,d.isRef)(mn)?mn.value=e:null,replacement:(0,d.unref)(hn),"onUpdate:replacement":t[3]||=e=>(0,d.isRef)(hn)?hn.value=e:null,"match-case":(0,d.unref)(gn),"onUpdate:matchCase":t[4]||=e=>(0,d.isRef)(gn)?gn.value=e:null,panel:(0,d.unref)(pn),readonly:B.value,total:(0,d.unref)(_n).length,"current-index":(0,d.unref)(vn),"current-page":(0,d.unref)(yn)?(0,d.unref)(yn).pageIndex+1:void 0,feedback:(0,d.unref)(bn),onOpen:(0,d.unref)(Sn),onClose:t[5]||=e=>(0,d.unref)(Cn)(),onNavigate:(0,d.unref)(wn),onReplaceCurrent:(0,d.unref)(Tn),onReplaceAll:(0,d.unref)(En)},null,8,[`query`,`replacement`,`match-case`,`panel`,`readonly`,`total`,`current-index`,`current-page`,`feedback`,`onOpen`,`onNavigate`,`onReplaceCurrent`,`onReplaceAll`])]),_:1},8,[`summary`,`draft-cache-status-text`,`draft-cache-status-class`,`show-draft-cache-status`,`show-clear-button`,`show-submit-data-viewer`,`show-variable-data-viewer`,`readonly`,`zoom-percent`,`zoom-out-disabled`,`zoom-in-disabled`,`is-fullscreen`,`immersive`,`page-decorations-open`,`page-decorations-preset-label`,`page-decorations-enabled-count`,`page-decorations-enabled-states`,`onFitWidth`]),(0,d.createVNode)(se.default,{"variable-insert-popover-open":Ft.value,"onUpdate:variableInsertPopoverOpen":t[6]||=e=>Ft.value=e,"signing-layout-popover-open":Lt.value,"onUpdate:signingLayoutPopoverOpen":t[7]||=e=>Lt.value=e,"signing-mark-popover-open":Rt.value,"onUpdate:signingMarkPopoverOpen":t[8]||=e=>Rt.value=e,"image-insert-popover-open":It.value,"onUpdate:imageInsertPopoverOpen":t[9]||=e=>It.value=e,"image-insert-url":Bt.value,"onUpdate:imageInsertUrl":t[10]||=e=>Bt.value=e,"image-insert-width":Vt.value,"onUpdate:imageInsertWidth":t[11]||=e=>Vt.value=e,"image-insert-height":Ht.value,"onUpdate:imageInsertHeight":t[12]||=e=>Ht.value=e,"table-insert-popover-open":M.value,"onUpdate:tableInsertPopoverOpen":t[13]||=e=>M.value=e,"table-actions-popover-open":N.value,"onUpdate:tableActionsPopoverOpen":t[14]||=e=>N.value=e,"table-insert-draft":rn.value,"onUpdate:tableInsertDraft":t[15]||=e=>rn.value=e,"toolbar-more-open":Nt.value,"onUpdate:toolbarMoreOpen":t[16]||=e=>Nt.value=e,readonly:B.value,"editor-state":K.value,"current-block-format":_r.value,"block-format-options":qn,"font-family-select-options":Gn.value,"current-editor-font-family":vr.value,"font-size-preset-options":Sr.value,"current-editor-font-size":yr.value,"editor-font-size-search-value":j.value,"current-editor-text-color":br.value,"body-control-tool-items":tr.value,"signing-layout-presets":er.value,"page-limit-reached":nr.value,"normalized-max-pages":W.value,"image-processing":Wt.value,"image-insert-error":Ut.value,onCommand:t[17]||=e=>Z(e),onPatchBlockFormat:Wa,onPatchFontFamily:Ka,onPatchFontSize:Ga,onPatchColor:qa,onPatchTextAlign:Ua,onInsertVariable:_i,onInsertSigningLayout:Br,onInsertSigningMark:Ur,onOpenSigningLayoutCustom:Hr,onOpenImageFile:mi,onInsertImageUrl:gi,onAddPage:Zr,onInsertTable:To,onTableAction:jo,onFontSizeSearch:Ya,onFontSizeCommit:Xa,onFontSizeDropdownChange:Qa,onFontSizeKeydown:Za},null,8,`variable-insert-popover-open.signing-layout-popover-open.signing-mark-popover-open.image-insert-popover-open.image-insert-url.image-insert-width.image-insert-height.table-insert-popover-open.table-actions-popover-open.table-insert-draft.toolbar-more-open.readonly.editor-state.current-block-format.font-family-select-options.current-editor-font-family.font-size-preset-options.current-editor-font-size.editor-font-size-search-value.current-editor-text-color.body-control-tool-items.signing-layout-presets.page-limit-reached.normalized-max-pages.image-processing.image-insert-error`.split(`.`))],512),[[d.vShow,!O.value]]),O.value?((0,d.openBlock)(),(0,d.createBlock)((0,d.unref)(Ee.Tooltip),{key:0,title:`展开工具区`},{default:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`button`,{ref_key:`workspaceChromeHandleElement`,ref:it,type:`button`,class:`gd-contract-template-designer__workspace-chrome-handle`,"aria-label":`展开工具区`,"aria-expanded":!1,"aria-controls":rt,onClick:co},[(0,d.createVNode)((0,d.unref)(Oe.DownOutlined),{"aria-hidden":`true`})],512)]),_:1})):(0,d.createCommentVNode)(``,!0),k.value&&!A.value?((0,d.openBlock)(),(0,d.createElementBlock)(`button`,{key:1,ref_key:`immersiveExitElement`,ref:jt,type:`button`,class:`gd-contract-template-designer__immersive-exit`,"aria-label":`退出沉浸写作`,onClick:ia},[(0,d.createVNode)((0,d.unref)(Oe.CompressOutlined),{"aria-hidden":`true`}),t[32]||=(0,d.createElementVNode)(`span`,{class:`gd-contract-template-designer__immersive-exit-label`},`退出沉浸`,-1),t[33]||=(0,d.createElementVNode)(`kbd`,null,`Esc`,-1)],512)):(0,d.createCommentVNode)(``,!0),x.value?((0,d.openBlock)(),(0,d.createElementBlock)(`section`,ke,[(0,d.createVNode)((0,d.unref)(Ee.Alert),{type:Fn.value?`success`:`error`,message:In.value,"show-icon":``},null,8,[`type`,`message`]),S.value.length?((0,d.openBlock)(),(0,d.createElementBlock)(`div`,Ae,[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(S.value,e=>((0,d.openBlock)(),(0,d.createElementBlock)(`button`,{key:`${e.id}-${e.message}`,type:`button`,class:`gd-contract-template-designer__validation-item`,onClick:t=>Fa(e)},[(0,d.createElementVNode)(`span`,null,(0,d.toDisplayString)(e.message),1),(0,d.createElementVNode)(`small`,null,(0,d.toDisplayString)(Ia(e)),1)],8,je))),128))])):(0,d.createCommentVNode)(``,!0)])):(0,d.createCommentVNode)(``,!0),(0,d.createElementVNode)(`div`,{ref_key:`canvasElement`,ref:Ye,class:`gd-contract-template-designer__canvas`},[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(v.value.pages,(e,n)=>((0,d.openBlock)(),(0,d.createBlock)(re.default,{key:`${_.value}:${e.id}`,ref_for:!0,ref:t=>zr(e.id,t),page:e,"page-index":n,"page-size":Jr(e),"page-decorations":v.value.pageDecorations,"total-pages":v.value.pages.length,variables:v.value.variables,"selected-variable-key":y.value,active:b.value===e.id,readonly:f.readonly,disabled:f.disabled,zoom:E.value,"process-image-file":fi,"search-query":(0,d.unref)(xn),"search-match-case":(0,d.unref)(gn),"active-search-match":(0,d.unref)(yn)?.pageId===e.id?(0,d.unref)(yn):void 0,"get-scroll-container":Xe,onPageUpdate:qr,onVariableDrop:yi,onVariableSelect:bi,onEditorFocus:t[18]||=e=>ya(e,!1),onEditorReady:(0,d.unref)(ir),onCompositionEnd:(0,d.unref)(ir),onPageLayoutChange:(0,d.unref)(ir),onEditorStateChange:wo,onEditorContextMenu:oo,onWordPaste:di,onVariableMoveBlocked:t[19]||=e=>R.value=`变量只能在当前页内移动,跨页移动尚未支持。`},null,8,[`page`,`page-index`,`page-size`,`page-decorations`,`total-pages`,`variables`,`selected-variable-key`,`active`,`readonly`,`disabled`,`zoom`,`search-query`,`search-match-case`,`active-search-match`,`onEditorReady`,`onCompositionEnd`,`onPageLayoutChange`]))),128))],512)],512),(0,d.createVNode)(Ce.default,{collapsed:At.value,readonly:f.readonly,disabled:f.disabled,"body-control-tool-items":tr.value,"selected-variable":H.value,variables:v.value.variables,"current-variable-font-family":xr.value,"font-family-select-options":Gn.value,"text-align-options":(0,d.unref)(Kn),"border-style-options":Jn,"object-fit-options":Yn,"selected-variable-width-max":hr.value,"selected-variable-height-max":gr.value,"min-font-size":He,"max-font-size":Ue,"default-multiline-rows":(0,d.unref)(3),onToggle:t[20]||=e=>At.value=!At.value,onVariableDragStart:Hi,onInsertVariable:Ii,onDuplicateVariable:Pi,onRemoveVariable:Mi,onPatchVariable:Q,onRenameVariable:Si,onPatchStyle:Di,onPatchMultiline:Ai,onPatchRows:ji,onPatchFontFamily:Oi,onPatchFontSize:ki,onPatchTextAlign:wi,onPatchBorderStyle:Ti,onPatchObjectFit:Ei},null,8,[`collapsed`,`readonly`,`disabled`,`body-control-tool-items`,`selected-variable`,`variables`,`current-variable-font-family`,`font-family-select-options`,`text-align-options`,`selected-variable-width-max`,`selected-variable-height-max`,`default-multiline-rows`])],2),(0,d.withDirectives)((0,d.createVNode)(we.default,{ref_key:`pageDecorationsStudioElement`,ref:tt,id:nt,open:A.value,decorations:v.value.pageDecorations,variables:v.value.variables,"font-family-options":Gn.value,readonly:f.readonly,disabled:f.disabled,"active-tab":Mt.value,"onUpdate:activeTab":t[21]||=e=>Mt.value=e,onChange:Ci,onClose:Ca},null,8,[`open`,`decorations`,`variables`,`font-family-options`,`readonly`,`disabled`,`active-tab`]),[[d.vShow,A.value]]),((0,d.openBlock)(),(0,d.createBlock)(d.Teleport,{to:`body`},[I.value?((0,d.openBlock)(),(0,d.createBlock)(ie.default,{key:0,ref_key:`tableContextMenuElement`,ref:$t,capabilities:I.value.capabilities,"active-alignment":I.value.activeAlignment,style:(0,d.normalizeStyle)({left:`${I.value.x}px`,top:`${I.value.y}px`}),onExecute:Do,onKeydown:Oo},null,8,[`capabilities`,`active-alignment`,`style`])):(0,d.createCommentVNode)(``,!0),L.value?((0,d.openBlock)(),(0,d.createBlock)(fe.default,{key:1,ref_key:`imageContextMenuElement`,ref:en,width:tn.value,"onUpdate:width":t[22]||=e=>tn.value=e,height:nn.value,"onUpdate:height":t[23]||=e=>nn.value=e,x:L.value.x,y:L.value.y,readonly:B.value,onRestore:ao,onApply:io,onKeydown:Ao},null,8,[`width`,`height`,`x`,`y`,`readonly`])):(0,d.createCommentVNode)(``,!0),P.value?((0,d.openBlock)(),(0,d.createBlock)(ue.default,{key:2,ref_key:`textContextMenuElement`,ref:Gt,"bind-open":Zt.value,"onUpdate:bindOpen":t[24]||=e=>Zt.value=e,"bind-keyword":Qt.value,"onUpdate:bindKeyword":t[25]||=e=>Qt.value=e,x:P.value.x,y:P.value.y,"has-selection":P.value.hasSelection,"editor-state":K.value,"current-editor-text-color":br.value,"body-control-tool-items":tr.value,"text-menu-bindable-variables":mr.value,"variables-count":v.value.variables.length,"resolve-bind-variable-type-label":Bi,onCommand:Wr,onClipboard:Gr,onAddPage:vi,onInsertVariable:Li,onBindVariable:zi,onOpenBindPanel:Vi,onKeydown:ko,onPatchColor:Ja},null,8,[`bind-open`,`bind-keyword`,`x`,`y`,`has-selection`,`editor-state`,`current-editor-text-color`,`body-control-tool-items`,`text-menu-bindable-variables`,`variables-count`])):(0,d.createCommentVNode)(``,!0),F.value?((0,d.openBlock)(),(0,d.createBlock)(de.default,{key:3,ref_key:`textBubbleElement`,ref:Kt,x:F.value.x,y:F.value.y,"editor-state":K.value,"font-size-preset-options":Sr.value,"current-editor-font-size":yr.value,"editor-font-size-search-value":j.value,"current-editor-text-color":br.value,"text-align-options":(0,d.unref)(Kn),onCommand:Z,onPatchFontSize:Ga,onPatchTextAlign:Ua,onPatchColor:Ja,onFontSizeSearch:Ya,onFontSizeCommit:Xa,onFontSizeDropdownChange:Qa,onFontSizeKeydown:Za,onMore:vo},null,8,[`x`,`y`,`editor-state`,`font-size-preset-options`,`current-editor-font-size`,`editor-font-size-search-value`,`current-editor-text-color`,`text-align-options`])):(0,d.createCommentVNode)(``,!0)])),(0,d.createElementVNode)(`input`,{ref_key:`imageFileInputElement`,ref:at,class:`gd-contract-template-designer__hidden-file-input`,type:`file`,accept:`image/png,image/jpeg,image/webp,image/gif,image/bmp`,tabindex:`-1`,"aria-hidden":`true`,onChange:hi},null,544),(0,d.createElementVNode)(`span`,Me,(0,d.toDisplayString)(R.value),1),(0,d.createVNode)(pe.default,{open:w.value,"onUpdate:open":t[26]||=e=>w.value=e,"preview-pages":jn.value,"preview-file-groups":Mn.value,"preview-active-group":Nn.value,"preview-snapshot":T.value,"font-base-url":f.contractFontBaseUrl,onCancel:sa,onSelectFile:t[27]||=e=>wt.value=e},null,8,[`open`,`preview-pages`,`preview-file-groups`,`preview-active-group`,`preview-snapshot`,`font-base-url`]),(0,d.createVNode)(me.default,{open:Tt.value,"onUpdate:open":t[28]||=e=>Tt.value=e,json:Et.value,onCancel:ua},null,8,[`open`,`json`]),(0,d.createVNode)(he.default,{open:Dt.value,"onUpdate:open":t[29]||=e=>Dt.value=e,data:Ot.value,"file-name":An.value?.name,onCancel:pa},null,8,[`open`,`data`,`file-name`]),(0,d.createVNode)(ge.default,{open:zt.value,"onUpdate:open":t[30]||=e=>zt.value=e,disabled:B.value,onInsert:Vr},null,8,[`open`,`disabled`])],38))}});exports.default=f;
1
+ require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`./constants.cjs`),t=require(`./utils/page-decorations.cjs`),n=require(`./types.cjs`),r=require(`./composables/use-template-designer.cjs`),i=require(`./utils/image-url.cjs`),a=require(`./utils/template-renderer.cjs`),o=require(`./composables/use-fit-width-zoom.cjs`),s=require(`./utils/content-image.cjs`),ee=require(`./utils/signing-layout-presets.cjs`),te=require(`./utils/context-variable.cjs`),ne=require(`./utils/caret-viewport.cjs`),re=require(`./DesignerPage.cjs`),ie=require(`./TableContextMenu.cjs`),ae=require(`./ContractTemplateDesignerWorkspaceHeader.cjs`),oe=require(`./utils/template-tool-icons.cjs`),se=require(`./ContractTemplateDesignerToolbar.cjs`),ce=require(`./ContractTemplateAuthoringBar.cjs`),le=require(`./composables/use-template-authoring.cjs`),ue=require(`./ContractTemplateTextContextMenu.cjs`),de=require(`./ContractTemplateTextBubbleMenu.cjs`),fe=require(`./ContractTemplateImageContextMenu.cjs`),pe=require(`./ContractTemplatePreviewModal.cjs`),me=require(`./ContractTemplateSubmitDataModal.cjs`),he=require(`./ContractTemplateVariableDataModal.cjs`),ge=require(`./SigningLayoutCustomModal.cjs`),_e=require(`./composables/use-template-draft-cache.cjs`),ve=require(`./composables/use-auto-pagination.cjs`),ye=require(`./composables/use-designer-files.cjs`),c=require(`./composables/use-template-files.cjs`),be=require(`./composables/use-draft-cache-session.cjs`),xe=require(`./ContractTemplateFileBar.cjs`),Se=require(`./ContractTemplateDesignerSidebar.cjs`),Ce=require(`./ContractTemplateDesignerInspector.cjs`),we=require(`./ContractTemplatePageDecorationsStudio.cjs`),l=require(`./utils/serialize-fingerprint.cjs`),Te=require(`./utils/editor-state.cjs`),u=require(`./utils/context-menu-viewport.cjs`);let d=require(`vue`),Ee=require(`ant-design-vue`),De=require(`@vueuse/core`),Oe=require(`@ant-design/icons-vue`);var ke={key:2,class:`gd-contract-template-designer__validation`},Ae={key:0,class:`gd-contract-template-designer__validation-list`},je=[`onClick`],Me={class:`gd-contract-template-designer__sr-status`,"aria-live":`polite`},Ne=.5,Pe=1.5,Fe=.1,Ie=300,Le=500,Re=128,ze=108,Be=48,Ve=24,He=10,Ue=48,We=8,f=(0,d.defineComponent)({name:`ProContractTemplateDesigner`,__name:`ProContractTemplateDesigner`,props:{modelValue:{default:void 0},files:{},activeFileId:{},readonly:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},height:{default:760},pageSize:{default:()=>r.DEFAULT_PAGE_SIZE},pageSizeOptions:{},maxPages:{default:20},imageCompression:{type:[Object,Boolean]},imageUpload:{},variableTypes:{default:()=>r.DEFAULT_FIELD_TYPES},signingLayoutPresets:{},showImageControl:{type:Boolean,default:!1},showCheckboxControl:{type:Boolean,default:!1},showAdvancedChoiceControls:{type:Boolean,default:!1},showBuiltinSelectorControls:{type:Boolean,default:!1},showCustomControls:{type:Boolean,default:!1},defaultVariableStyle:{default:()=>r.DEFAULT_FIELD_STYLE},fontFamilies:{default:void 0},fontFamilyMode:{default:`append`},contractFontBaseUrl:{default:void 0},showSubmitDataViewer:{type:Boolean,default:!0},showVariableDataViewer:{type:Boolean,default:!0},showClearButton:{type:Boolean,default:!0},enableDraftCache:{type:Boolean,default:!0},draftCacheKey:{default:_e.DEFAULT_DRAFT_CACHE_KEY},draftCacheInterval:{default:_e.DEFAULT_DRAFT_CACHE_INTERVAL},draftCacheMaxBytes:{default:_e.DEFAULT_DRAFT_CACHE_MAX_BYTES},showDraftCacheStatus:{type:Boolean,default:!0}},emits:[`update:modelValue`,`change`,`update:files`,`update:activeFileId`,`files-change`,`file-add`,`file-change`,`file-remove`,`file-move`,`variable-add`,`validate`,`draft-cache-change`,`page-limit`,`image-error`],setup(f,{expose:Ge,emit:Ke}){let p=f,m=Ke,qe=(0,d.computed)(()=>({height:typeof p.height==`number`?`${p.height}px`:p.height})),Je=(0,d.ref)(),Ye=(0,d.ref)();function Xe(){return Ye.value}function Ze(){let e=dt,t=Ye.value;return ne.captureCaretViewport(t,()=>e===dt&&!ln&&!B.value&&t?.isConnected!==!1)}function Qe(){dt+=1}let $e=(0,d.ref)(),et=(0,d.ref)(),tt=(0,d.ref)(),nt=`gd-contract-template-page-decorations-studio-${(0,d.useId)()}`,rt=`gd-contract-template-workspace-chrome-${(0,d.useId)()}`,it=(0,d.ref)(),at=(0,d.ref)(),ot=(0,d.ref)(),st=``,ct=``,lt,ut,dt=0,ft=r.createTemplateBodySync(),pt=new Map,mt=(0,d.ref)(!1),h=(0,d.computed)(()=>mt.value||Array.isArray(p.files)),ht=c.normalizeContractTemplateFiles(p.files,p.modelValue,p.pageSize),gt=c.constrainContractTemplateFiles(ht,p.pageSizeOptions),_t=h.value?gt.files:ht,vt=c.resolveContractTemplateActiveFileId(_t,p.activeFileId),g=(0,d.ref)(_t),_=(0,d.ref)(vt),yt=_t.find(e=>e.id===vt)??_t[0],bt=r.normalizeTemplateValue(yt?.template??p.modelValue,p.pageSize),v=(0,d.ref)(r.constrainTemplatePageSizes(bt,p.pageSizeOptions));h.value?(g.value=c.replaceContractTemplateFile(g.value,_.value,v.value),l.serializeFingerprint(g.value)!==l.serializeFingerprint(ht)&&J(g.value)):p.modelValue&&l.serializeFingerprint(v.value)!==l.serializeFingerprint(bt)&&Ir(v.value);let y=(0,d.ref)(``),b=(0,d.ref)(v.value.pages[0]?.id??``),x=(0,d.ref)(!1),S=(0,d.ref)([]),C=new Map,xt=(0,d.ref)(!1),St=(0,d.ref)(``),w=(0,d.ref)(!1),T=(0,d.ref)(),Ct=(0,d.ref)(),wt=(0,d.ref)(``),Tt=(0,d.ref)(!1),Et=(0,d.ref)(``),Dt=(0,d.ref)(!1),Ot=(0,d.ref)({values:{},variables:[]}),E=(0,d.ref)(1),D=(0,d.ref)(!1),kt=(0,d.ref)(!1),At=(0,d.ref)(!1),O=(0,d.ref)(!1),k=(0,d.ref)(!1),jt=(0,d.ref)(),A=(0,d.ref)(!1),Mt=(0,d.ref)(`header`),Nt=(0,d.ref)(!1),Pt=(0,d.ref)({}),j=(0,d.ref)(``),M=(0,d.ref)(!1),N=(0,d.ref)(!1),Ft=(0,d.ref)(!1),It=(0,d.ref)(!1),Lt=(0,d.ref)(!1),Rt=(0,d.ref)(!1),zt=(0,d.ref)(!1),Bt=(0,d.ref)(``),Vt=(0,d.ref)(),Ht=(0,d.ref)(),Ut=(0,d.ref)(``),Wt=(0,d.ref)(!1),P=(0,d.ref)(),Gt=(0,d.ref)(),F=(0,d.ref)(),Kt=(0,d.ref)(),qt=(0,d.ref)(!1),Jt,Yt=(0,d.ref)(!1),Xt,Zt=(0,d.ref)(!1),Qt=(0,d.ref)(``),I=(0,d.ref)(),$t=(0,d.ref)(),L=(0,d.ref)(),en=(0,d.ref)(),tn=(0,d.ref)(),nn=(0,d.ref)(),R=(0,d.ref)(``),z=(0,d.ref)(_e.createDraftCacheStatus(`idle`,`暂无本地草稿`)),rn=(0,d.ref)({rows:3,cols:3,withHeaderRow:!0}),an=new WeakSet,on=[`.gd-contract-template-designer__page-decorations-select-popup`,`.gd-contract-template-designer__page-decorations-dropdown-popup`].join(`,`),sn,cn,ln=!1,un=!1,dn,fn,B=(0,d.computed)(()=>p.readonly||p.disabled),{panel:pn,query:mn,replacement:hn,matchCase:gn,matches:_n,currentIndex:vn,currentMatch:yn,feedback:bn,highlightQuery:xn,open:Sn,close:Cn,navigate:wn,replaceCurrent:Tn,replaceAll:En,handleKeydown:Dn}=le.useTemplateAuthoring({pages:()=>v.value.pages,fileId:()=>_.value,readonly:()=>B.value,root:()=>Je.value,pageRefs:C,activatePage:ya,beforeOpen:()=>{$(),so(),O.value=!1},focusPanel:()=>ot.value?.focusPanel(),focusTrigger:e=>ot.value?.focusTrigger(e)}),On=(0,d.computed)(()=>!!(P.value||pn.value||I.value||L.value||M.value||N.value||Nt.value||Ft.value||It.value||Lt.value||Rt.value||zt.value)),kn=(0,d.computed)(()=>!!p.enableDraftCache&&!B.value),An=(0,d.computed)(()=>g.value.find(e=>e.id===_.value)??g.value[0]),jn=(0,d.computed)(()=>T.value?r.buildTemplatePreviewPages(T.value):[]),Mn=(0,d.computed)(()=>(Ct.value??[]).map(e=>({file:e,pages:r.buildTemplatePreviewPages(e.template)}))),Nn=(0,d.computed)(()=>Mn.value.find(e=>e.file.id===wt.value)??Mn.value[0]),V=(0,d.computed)(()=>v.value.pages.find(e=>e.id===b.value)??v.value.pages[0]),Pn=(0,d.computed)(()=>r.resolvePageSize(V.value?.pageSize,v.value.pageSize)),Fn=(0,d.computed)(()=>x.value&&S.value.length===0),In=(0,d.computed)(()=>x.value?Fn.value?`校验通过,正文变量与变量配置一致`:`发现 ${S.value.length} 个校验问题`:``),Ln=(0,d.computed)(()=>{let e=V.value?.title||`合同正文`;return`${h.value&&An.value?`${An.value.name} · `:``}${e} · ${Pn.value.label} · 共 ${v.value.pages.length} 页`}),Rn=(0,d.computed)(()=>({none:`无装饰`,"page-number":`标准页码`,"internal-review":`内部审阅`,draft:`草稿`,custom:`自定义`})[t.resolvePageDecorationPreset(v.value.pageDecorations)]),zn=(0,d.computed)(()=>{let e=t.normalizePageDecorations(v.value.pageDecorations);return{header:e.header.enabled,footer:e.footer.enabled,watermark:e.watermark.enabled}}),Bn=(0,d.computed)(()=>Object.values(zn.value).filter(Boolean).length),Vn=(0,d.computed)(()=>{switch(z.value.type){case`saved`:return`草稿已缓存 ${_e.formatDraftCacheSavedAt(z.value.savedAt)}`;case`restored`:return`已恢复本地草稿`;case`too-large`:return`草稿过大,未缓存`;case`unavailable`:case`read-failed`:case`write-failed`:return`草稿缓存失败`;case`cleared`:return`草稿缓存已清理`;default:return``}}),Hn=(0,d.computed)(()=>({"is-success":z.value.type===`saved`||z.value.type===`restored`,"is-warning":z.value.type===`too-large`,"is-error":z.value.type===`unavailable`||z.value.type===`read-failed`||z.value.type===`write-failed`})),Un=(0,d.computed)(()=>`${Math.round(E.value*100)}%`),Wn=(0,d.computed)(()=>e.resolveFontFamilyOptions(p.fontFamilies,p.fontFamilyMode)),Gn=(0,d.computed)(()=>Wn.value.map(e=>({label:e.label,value:e.value}))),Kn=e.DEFAULT_TEXT_ALIGN_OPTIONS,qn=[...e.CONTRACT_BLOCK_STYLES.map(e=>({label:e.label,value:e.format}))],Jn=[{label:`实线`,value:`solid`},{label:`虚线`,value:`dashed`}],Yn=[{label:`完整显示`,value:`contain`},{label:`铺满裁剪`,value:`cover`},{label:`拉伸填充`,value:`fill`}],Xn=(0,d.computed)(()=>r.normalizePageSizeOptions(p.pageSizeOptions)),Zn=(0,d.computed)(()=>Xn.value.map(e=>({label:`${e.label} · ${e.width} × ${e.height}`,value:r.getPageSizeKey(e)}))),Qn=(0,d.computed)(()=>r.getPageSizeKey(Pn.value)),$n=(0,d.computed)(()=>p.draftCacheKey),H=(0,d.computed)(()=>v.value.variables.find(e=>e.key===y.value)),U=(0,d.computed)(()=>{let e=[...p.variableTypes,...p.showImageControl?[r.DEFAULT_IMAGE_FIELD_TYPE]:[],...p.showCheckboxControl?[r.DEFAULT_CHECKBOX_FIELD_TYPE]:[],...p.showAdvancedChoiceControls?r.DEFAULT_ADVANCED_CHOICE_FIELD_TYPES:[],...p.showBuiltinSelectorControls?r.DEFAULT_BUILTIN_SELECTOR_FIELD_TYPES:[],...p.showCustomControls?r.DEFAULT_CUSTOM_FIELD_TYPES:[]].filter(e=>n.isContractTemplateFieldType(e?.type));return Array.from(new Map(e.map(e=>[e.type,e])).values())}),er=(0,d.computed)(()=>{let e=[...ee.SIGNING_LAYOUT_PRESET_KEYS.map(e=>ee.SIGNING_LAYOUT_PRESETS[e]),...(p.signingLayoutPresets??[]).filter(e=>!!e?.key)];return Array.from(new Map(e.map(e=>[e.key,e])).values())}),tr=(0,d.computed)(()=>U.value.map(e=>({...e,icon:oe.resolveFieldTypeIcon(e.type),group:e.type===`select`||e.type===`radio`?`basic`:e.type.endsWith(`-selector`)?`builtin-selector`:e.type===`custom`?`custom`:`basic`}))),W=(0,d.computed)(()=>r.normalizeContractTemplateMaxPages(p.maxPages)),nr=(0,d.computed)(()=>v.value.pages.length>=W.value),rr=(0,d.computed)(()=>{let e=ft.collectKeys(v.value);return Array.from(t.collectPageDecorationVariableKeys(v.value.pageDecorations)).filter(t=>!e.has(t))}),{scheduleAutoPaginate:ir,scheduleFullPagination:G,resetPagination:ar,disposePagination:or}=ve.useAutoPagination({templateValue:v,readonlyState:B,isAutoPaginating:xt,pendingPaginationPageId:St,activePageId:b,normalizedMaxPages:W,pageRefs:C,applyPagesChange:e=>{v.value={...v.value,pages:e},x.value=!1,S.value=[],Nr()},getPageSize:Jr,notifyPageLimit:Xr,captureViewport:Ze}),{saveDraftCache:sr,loadDraftCache:cr,clearDraftCache:lr,restoreDraftCacheIfNeeded:ur,stopDraftCacheTimer:dr,restartDraftCacheTimer:fr,resetDraftFingerprint:pr}=be.useDraftCacheSession({draftCacheWritable:kn,multipleFilesMode:h,filesValue:g,activeFileIdValue:_,templateValue:v,draftCacheKey:$n,draftCacheInterval:()=>p.draftCacheInterval,draftCacheMaxBytes:()=>p.draftCacheMaxBytes,pageSize:()=>p.pageSize,pageSizeOptions:()=>p.pageSizeOptions,syncActiveFileSnapshot:q,syncPageEditors:()=>(Mr(),kr()),setActiveFileId:Y,emitFilesChange:J,commit:X,updateDraftCacheStatus:Lr,scheduleFullPagination:G,activePageId:b,selectedVariableKey:y}),mr=(0,d.computed)(()=>{let e=Qt.value.trim().toLowerCase(),t=v.value.variables;return e?t.filter(t=>t.label.toLowerCase().includes(e)||t.key.toLowerCase().includes(e)):t}),hr=(0,d.computed)(()=>Math.max(Be,Pn.value.width-Re)),gr=(0,d.computed)(()=>Math.max(Ve,Pn.value.height-ze)),K=(0,d.computed)(()=>Pt.value[b.value]??wr()),_r=(0,d.computed)(()=>K.value.hasMixedBlockFormats?void 0:K.value.currentHeadingLevel??`paragraph`),vr=(0,d.computed)(()=>K.value.fontFamily||e.DEFAULT_CONTRACT_FONT_FAMILY),yr=(0,d.computed)(()=>K.value.fontSize??r.DEFAULT_FIELD_STYLE.fontSize??14),br=(0,d.computed)(()=>K.value.textColor||r.DEFAULT_FIELD_STYLE.color||`#1f2937`),xr=(0,d.computed)(()=>H.value?.style?.fontFamily||r.DEFAULT_FIELD_STYLE.fontFamily||e.DEFAULT_CONTRACT_FONT_FAMILY),Sr=(0,d.computed)(()=>{let t=e.DEFAULT_FONT_SIZE_PRESETS.map(e=>({label:`${e}px`,value:e})),n=Or(yr.value),r=Or(j.value),i=new Map;return r&&!e.DEFAULT_FONT_SIZE_PRESETS.includes(r)&&i.set(r,{label:`使用 ${r}px`,value:r}),n&&!e.DEFAULT_FONT_SIZE_PRESETS.includes(n)&&i.set(n,{label:r===n?`使用 ${n}px`:`${n}px`,value:n}),[...Array.from(i.values()),...t]});(0,d.watch)(()=>p.modelValue,(e,t)=>{if(!e||h.value)return;if(e!==t&&ut&&(0,d.toRaw)(e)===(0,d.toRaw)(ut)){ct=``;return}if(l.serializeFingerprint(e)===ct){ct=``;return}let n=r.normalizeTemplateValue(e,p.pageSize),i=r.constrainTemplatePageSizes(n,p.pageSizeOptions),a=l.serializeFingerprint(i)!==l.serializeFingerprint(v.value),o=l.serializeFingerprint(i)===ct;o&&(ct=``),(a||!o)&&(ct=``,Qe(),ar(),ft.clear(),jr(),v.value=i,g.value=c.replaceContractTemplateFile(g.value,_.value,i),b.value=i.pages[0]?.id??``,y.value=``,G()),l.serializeFingerprint(i)!==l.serializeFingerprint(n)&&Ir(i)},{deep:!0}),(0,d.watch)(()=>p.files,(e,t)=>{if(!Array.isArray(e))return;if(e!==t&&lt&&(0,d.toRaw)(e)===(0,d.toRaw)(lt)){st=``;return}if(l.serializeFingerprint(e)===st){st=``;return}let n=c.normalizeContractTemplateFiles(e,void 0,p.pageSize),r=c.constrainContractTemplateFiles(n,p.pageSizeOptions).files,i=l.serializeFingerprint(r),a=l.serializeFingerprint(g.value);i===st&&(st=``);let o=c.resolveContractTemplateActiveFileId(r,p.activeFileId||_.value);i===a?o!==_.value&&Y(o,{syncCurrent:!1,shouldEmit:!1}):(st=``,g.value=r,Y(o,{syncCurrent:!1,shouldEmit:!1,forceRefresh:!0})),i!==l.serializeFingerprint(n)&&J(r)},{deep:!0}),(0,d.watch)(()=>p.activeFileId,e=>{!h.value||!e||e===_.value||Y(e,{syncCurrent:!0,shouldEmit:!1})});function Cr(e,t){let n=l.serializeFingerprint(g.value);q(!1);let i=c.normalizeContractTemplateFiles(g.value,void 0,e),{files:a}=c.constrainContractTemplateFiles(i,t),o=l.serializeFingerprint(a)!==n,s=a.find(e=>e.id===_.value);return s&&l.serializeFingerprint(s.template)!==l.serializeFingerprint(v.value)&&(v.value=r.cloneTemplateValue(s.template)),o&&(x.value=!1,S.value=[],J(a,``)),o}(0,d.watch)([()=>p.pageSize,()=>p.pageSizeOptions],([e,t])=>{if(h.value){Cr(e,t),G();return}let n=r.normalizeTemplateValue(v.value,e),i=r.constrainTemplatePageSizes(n,t);l.serializeFingerprint(i)!==l.serializeFingerprint(v.value)&&X(i),G()},{deep:!0}),(0,d.watch)(W,()=>{G()}),(0,d.watch)(B,e=>{e?($(),M.value=!1,N.value=!1):G()}),(0,d.watch)(b,()=>{F.value=void 0}),(0,d.watch)([On,A,w],()=>{uo()}),(0,d.watch)(()=>[p.enableDraftCache,$n.value,p.draftCacheInterval,B.value],()=>{pr(),fr()}),(0,d.watch)(D,e=>{if(!(typeof document>`u`)){if(e){sn=document.body.style.overflow,document.body.style.overflow=`hidden`;return}document.body.style.overflow=sn??``,sn=void 0}}),(0,d.onMounted)(()=>{ur(),fr(),G(),document.fonts?.ready.then(G),document.fonts?.addEventListener(`loadingdone`,G),window.addEventListener(`pointerdown`,yo,!0),window.addEventListener(`pointerup`,go),window.addEventListener(`keydown`,So,!0),window.addEventListener(`keydown`,Co),window.addEventListener(`resize`,_o),window.addEventListener(`scroll`,bo,!0)}),(0,d.onBeforeUnmount)(()=>{Qe(),or(),Mr(),ln=!0,D.value&&typeof document<`u`&&(document.body.style.overflow=sn??``),document.fonts?.removeEventListener(`loadingdone`,G),window.removeEventListener(`pointerdown`,yo,!0),window.removeEventListener(`pointerup`,go),window.removeEventListener(`keydown`,So,!0),window.removeEventListener(`keydown`,Co),window.removeEventListener(`resize`,_o),window.removeEventListener(`scroll`,bo,!0),Xt!==void 0&&cancelAnimationFrame(Xt),dr()});function wr(){return{isFocused:!1,canUndo:!1,canRedo:!1,isBold:!1,isItalic:!1,isUnderline:!1,isBulletList:!1,isOrderedList:!1,isTableActive:!1,textAlign:`left`,fontFamily:e.DEFAULT_CONTRACT_FONT_FAMILY,fontSize:r.DEFAULT_FIELD_STYLE.fontSize??14,textColor:r.DEFAULT_FIELD_STYLE.color??`#1f2937`,selectionText:``,hasMixedBlockFormats:!1}}function Tr(e){return e===`left`||e===`center`||e===`right`}function Er(e){return typeof e==`number`&&Number.isInteger(e)&&e>=1&&e<=6}function Dr(e,t=yr.value){let n=Number(e);return Number.isFinite(n)?Math.min(Ue,Math.max(He,Math.round(n))):t}function Or(e){let t=String(e||``).trim().match(/(\d+(\.\d+)?)/);if(!t)return;let n=Number(t[1]);if(Number.isFinite(n))return Math.min(Ue,Math.max(He,Math.round(n)))}function kr(e=v.value){let t=!1,n=e.pages.map(e=>{let n=C.get(e.id)?.getContentSnapshot(e),r=n?.contentHtml??e.contentHtml,i=n?.contentJson??e.contentJson;return r===e.contentHtml&&(0,d.toRaw)(i)===(0,d.toRaw)(e.contentJson)?e:(t=!0,{...e,contentHtml:r,contentJson:i})});return t?{...e,pages:n}:e}function Ar(){dn!==void 0&&(clearTimeout(dn),dn=void 0),fn!==void 0&&typeof cancelIdleCallback==`function`&&cancelIdleCallback(fn),fn=void 0}function jr(){un=!1,Ar()}function Mr(){let e=un;jr(),e&&Fr()}function Nr(){un=!0,Ar(),dn=setTimeout(()=>{dn=void 0;let e=()=>{if(fn=void 0,!(!un||ln)){if(xt.value)return Nr();un=!1,Fr()}};typeof requestIdleCallback==`function`?fn=requestIdleCallback(e,{timeout:Le}):e()},Ie)}function Pr(e){let t=v.value.pages,n=t.findIndex(t=>t.id===e.id);if(n<0)return;let r=t[n];if(r.contentHtml===e.contentHtml&&r.contentJson===e.contentJson&&r.title===e.title&&r.pageSize===e.pageSize)return;let i=t.slice();i[n]=e,v.value={...v.value,pages:i}}function Fr(){let e=kr(),t=ft.sync(e);y.value&&!t.variables.some(e=>e.key===y.value)&&(y.value=``),X(t,{normalizedBody:!0})}function q(e=!1){Mr();let t=r.cloneTemplateValue(kr());if(!h.value)return t;let n=g.value.find(e=>e.id===_.value)?.template,i=l.serializeFingerprint(n)!==l.serializeFingerprint(t),a=c.replaceContractTemplateFile(g.value,_.value,t);return g.value=a,i&&e&&J(a),t}function Ir(e){let t=r.cloneTemplateValue(e);ut=t,ct=l.serializeFingerprint(e),m(`update:modelValue`,t),m(`change`,r.cloneTemplateValue(e))}function J(e,t=_.value){if(!h.value)return;let n=c.cloneContractTemplateFiles(e),r=c.cloneContractTemplateFiles(n);g.value=n,lt=r,st=l.serializeFingerprint(r),m(`update:files`,r),m(`files-change`,c.cloneContractTemplateFiles(r));let i=r.find(e=>e.id===t);i&&m(`file-change`,c.cloneContractTemplateFiles([i])[0])}function Y(e,t={}){let{syncCurrent:n,shouldEmit:i,forceRefresh:a}=ye.resolveSetActiveFileIdOptions(t),o=c.resolveContractTemplateActiveFileId(g.value,e),s=o!==_.value;if((s||a)&&g.value.some(e=>e.id===o)&&(Qe(),ar()),n?q(!0):jr(),!s&&!a)return;let ee=g.value.find(e=>e.id===o);ee&&(_.value=o,v.value=r.cloneTemplateValue(ee.template),y.value=``,b.value=v.value.pages[0]?.id??``,Pt.value={},C.clear(),ft.clear(),pt.clear(),x.value=!1,S.value=[],w.value=!1,T.value=void 0,Ct.value=void 0,pr(),i&&s&&m(`update:activeFileId`,o),n&&s&&kn.value&&sr(),(0,d.nextTick)(()=>{G()}))}function X(e,t={}){jr();let n=t.normalizedBody?e:r.constrainTemplatePageSizes(r.normalizeTemplateValue(e,p.pageSize),p.pageSizeOptions);return t.normalizedBody||(ft.clear(),pt.clear()),v.value=n,x.value=!1,S.value=[],h.value?J(c.replaceContractTemplateFile(g.value,_.value,n)):(g.value=c.replaceContractTemplateFile(g.value,_.value,n),Ir(n)),n}function Lr(e,t=e.type!==`unchanged`){z.value=e,t&&m(`draft-cache-change`,{...e})}function Rr(){return{...z.value}}function zr(e,t){t?C.set(e,t):C.delete(e)}function Br(e){$(),Lt.value=!1,Z({type:`insert-signing-layout`,preset:ee.isSigningLayoutPresetKey(e.key)?e.key:void 0,options:e.options})}function Vr(e){$(),Z({type:`insert-signing-layout`,options:e})}function Hr(){Lt.value=!1,zt.value=!0}function Ur(e){$(),Rt.value=!1,Z({type:`insert-signing-mark`,mark:{markType:e}})}function Z(e,t=V.value?.id??b.value){B.value||C.get(t)?.runCommand(e)}function Wr(e){Z(e),$()}function Gr(e){let t=P.value?.pageId;t&&(C.get(t)?.focus(),R.value=typeof document<`u`&&document.execCommand(e)?`${e===`copy`?`已复制`:e===`cut`?`已剪切`:`已粘贴`}`:`浏览器未授权剪贴板操作,请使用系统快捷键。`,$())}function Kr(e){let t=X(r.syncTemplateVariablesWithPages(e));return y.value&&!t.variables.some(e=>e.key===y.value)&&(y.value=``),t}function qr(e){Pr(e),Nr(),ir(e.id)}function Jr(e){let t=r.resolvePageSize(e?.pageSize,v.value.pageSize),n=`${r.getPageSizeKey(t)}:${t.label??``}`;return pt.get(n)||(pt.set(n,t),t)}function Yr(e){if(B.value||!V.value)return;let t=Xn.value.find(t=>r.getPageSizeKey(t)===e);if(!t)return;let n=V.value.id,i=r.resolvePageSize(t,v.value.pageSize);X({...v.value,pages:v.value.pages.map(e=>e.id===n?{...e,pageSize:i}:e)}),ir(n)}function Xr(e){let t=W.value;R.value=`合同最多支持 ${t} 页`,m(`page-limit`,t,e)}function Zr(){if(B.value)return;if(nr.value){Xr(`add`);return}let e=r.createDefaultPage(v.value.pages.length+1,Pn.value);X({...v.value,pages:[...v.value.pages,e]}),b.value=e.id,G()}function Qr(e){if(B.value)return;if(nr.value){Xr(`duplicate`);return}let t=v.value.pages.findIndex(t=>t.id===e.id);if(t<0)return;let n=r.cloneTemplateValue({pages:[e],variables:[],pageSize:v.value.pageSize}).pages[0],i=r.createBlankPage(t+2,Jr(e),n.contentHtml,n.contentJson);i.title=`${e.title||`第 ${t+1} 页`}副本`;let a=[...v.value.pages];a.splice(t+1,0,i),X({...v.value,pages:a}),b.value=i.id,G()}function $r(e){if(B.value||v.value.pages.length<=1)return;let t=v.value.pages.findIndex(t=>t.id===e.id);if(t<0)return;let n=v.value.pages.filter(t=>t.id!==e.id),r=Kr({...v.value,pages:n});b.value=r.pages[Math.min(t,r.pages.length-1)]?.id??``,G()}function ei(e){B.value||v.value.pages.length<=1||Ee.Modal.confirm({title:`删除合同页面`,content:`删除页面会同时移除页面正文,是否继续?`,okText:`确认删除`,okType:`danger`,cancelText:`取消`,onOk:()=>{$r(e)}})}function ti(e){let t=new Set(v.value.variables.map(e=>e.key)),n=1;for(;t.has(`${e}_${n}`);)n+=1;return`${e}_${n}`}function ni(e){let t=e.type??`text`;return r.createTemplateVariable({...e,type:t,key:e.key||ti(t),label:e.label||r.getFieldOption(t,U.value).label},U.value,p.defaultVariableStyle)}function ri(e,t=V.value?.id??v.value.pages[0].id,n){if(B.value)return e;let r=C.get(t)?.insertVariable(e,n),i=!v.value.variables.some(t=>t.key===e.key);return X({...v.value,pages:r?v.value.pages.map(e=>e.id===r.id?r:e):v.value.pages,variables:i?[...v.value.variables,e]:v.value.variables}),y.value=e.key,b.value=t,i&&m(`variable-add`,e),ir(t),e}function ii(e){let{width:t,height:n,...r}=e,i=s.normalizeContractImageDimension(t),a=s.normalizeContractImageDimension(n);return{...r,...i===void 0?{}:{width:i},...a===void 0?{}:{height:a}}}function ai(e={}){let t=s.normalizeContractImageDimension(Vt.value),n=s.normalizeContractImageDimension(Ht.value);return{...e,...t===void 0?{}:{width:t},...n===void 0?{}:{height:n}}}function oi(){Bt.value=``,Vt.value=void 0,Ht.value=void 0,Ut.value=``}function si(e,t=V.value?.id??v.value.pages[0]?.id,n){let r=ii({...e,src:e.src.trim()});if(!(B.value||!t||!i.isSafeContractImageUrl(r.src)||!r.src||!C.get(t)?.insertContentImage(r,n)))return b.value=t,y.value=``,r.src}function ci(e){return e instanceof Error?e:Error(`图片处理失败`)}async function li(e,t){t===`toolbar`&&(Wt.value=!0,Ut.value=``);try{let n=await s.processContractImageFile(e,{source:t,compression:p.imageCompression,upload:p.imageUpload});return ln?void 0:n.src}catch(e){let n=ci(e);t===`toolbar`&&(Ut.value=n.message),R.value=n.message,m(`image-error`,n,t);return}finally{t===`toolbar`&&(Wt.value=!1)}}let ui=0;function di(e){let t=e.replacedFontFamilies.filter(Boolean);if(!t.length)return;let n=Date.now();n-ui<800||(ui=n,Ee.message.info(`已将 ${t.length} 种外部字体(${t.join(`、`)})统一为合同标准字体,以保证 Mac 与 Windows 排版一致`))}async function fi(e){return await li(e,`paste`)??null}async function pi(e,t={}){if(B.value)return;let n=V.value?.id??v.value.pages[0]?.id,r=n?C.get(n)?.getSelectionRange():void 0,a=typeof e==`string`?e.trim():await li(e,`toolbar`);if(ln)return;if(!a||!i.isSafeContractImageUrl(a)){typeof e==`string`&&(Ut.value=`请输入安全的图片 URL`);return}if(n&&!C.has(n))return;let o=si({...t,src:a},n,r);return o&&(It.value=!1,oi(),R.value=`已插入图片`),o}function mi(){B.value||Wt.value||($(),Ut.value=``,at.value&&(at.value.value=``),at.value?.click())}async function hi(e){let t=e.target.files?.[0];t&&await pi(t,ai({alt:t.name}))}async function gi(){let e=Bt.value;await pi(e,ai())}function _i(e){Ii(e),Ft.value=!1}function vi(){$(),Zr()}function yi(e,t,n,r){$(),ri(ni({type:t}),e,{left:n,top:r})}function bi(e){$(),y.value=e}function xi(e){let n=v.value.variables.find(t=>t.id===e.id);if(!n)return;let i=e.key.trim();if(i!==n.key){let t=r.validateContractTemplateVariableKey(i,v.value.variables,e.id);if(t){R.value=t;return}}e={...e,key:i};let a=[...v.value.pages],o=n.key;C.forEach((t,n)=>{let r=t.updateVariable(e,o);if(r){let e=a.findIndex(e=>e.id===n);e>=0&&(a[e]=r)}}),X({...v.value,pages:a,variables:v.value.variables.map(t=>t.id===e.id?e:t),...o!==e.key&&v.value.pageDecorations?{pageDecorations:t.rewritePageDecorationVariableTokens(v.value.pageDecorations,o,e.key)}:{}}),y.value=e.key,G()}function Q(e){H.value&&xi({...H.value,...e,style:{...H.value.style,...e.style}})}function Si(e){B.value||!H.value||Q({key:e})}function Ci(e){B.value||(X({...v.value,pageDecorations:t.normalizePageDecorations(e)}),G())}function wi(e){(e===`left`||e===`center`||e===`right`)&&Q({style:{textAlign:e}})}function Ti(e){(e===`solid`||e===`dashed`)&&Q({style:{borderStyle:e}})}function Ei(e){(e===`contain`||e===`cover`||e===`fill`)&&Q({style:{objectFit:e}})}function Di(e){Q({style:e})}function Oi(t){Di({fontFamily:String(t||``).trim()||e.DEFAULT_CONTRACT_FONT_FAMILY})}function ki(e){Di({fontSize:Dr(e,H.value?.style?.fontSize??14)})}function Ai(e){H.value&&Q({multiline:e,rows:H.value.rows||3,lineHeight:H.value.lineHeight||28,style:e?{underline:!0}:void 0})}function ji(e){H.value&&Q({rows:Number(e||3),lineHeight:H.value.lineHeight||28})}function Mi(e){if(B.value)return;let n=[...v.value.pages];C.forEach((t,r)=>{let i=t.removeVariable(e.key);if(i){let e=n.findIndex(e=>e.id===r);e>=0&&(n[e]=i)}}),X({...v.value,pages:n,variables:v.value.variables.filter(t=>t.id!==e.id),...v.value.pageDecorations?{pageDecorations:t.rewritePageDecorationVariableTokens(v.value.pageDecorations,e.key)}:{}}),y.value=``}function Ni(e){let t=(e.trim()||`variable`).replace(/\s+/g,`_`),n=new Set(v.value.variables.map(e=>e.key));if(!n.has(t))return t;let r=2;for(;n.has(`${t}_${r}`);)r+=1;return`${t}_${r}`}function Pi(e){B.value||ri(r.createTemplateVariable({...e,id:void 0,key:Ni(`${e.key||e.type}_copy`),label:`${e.label}副本`,style:{...e.style}},U.value,p.defaultVariableStyle))}function Fi(e){return B.value?void 0:ri(v.value.variables.find(t=>t.key===e.key)??r.createTemplateVariable(e,U.value,p.defaultVariableStyle))}function Ii(e){if(!B.value)return ri(ni({type:e}))}function Li(e){if(B.value||!n.isContractTemplateFieldType(e))return;let t=P.value,r=U.value.find(t=>t.type===e);if(!t||!r)return;let i=te.inferContextVariableLabel(t.leadingText)||r.label,a=te.resolveContextVariableWidth(t.selectionWidth,Be,hr.value),o=Ri();ri(ni({type:e,label:i,...a?{width:a}:{},...o?{style:o}:{}}),t.pageId),R.value=t.hasSelection?`已将选中内容替换为${r.label}控件`:`已插入${r.label}控件`,$()}function Ri(){let e=K.value,t={};return e.isUnderline&&(t.underline=!0),typeof e.fontSize==`number`&&Number.isFinite(e.fontSize)&&(t.fontSize=e.fontSize),e.fontFamily&&(t.fontFamily=e.fontFamily),e.textColor&&(t.color=e.textColor),Object.keys(t).length?t:void 0}function zi(e){if(B.value)return;let t=P.value;t&&(ri(e,t.pageId),R.value=`已绑定到${e.label},沿用原控件尺寸`,$())}function Bi(e){let t=e.type&&n.isContractTemplateFieldType(e.type)?e.type:`text`;return r.getFieldOption(t,U.value).label}function Vi(){v.value.variables.length&&(Zt.value=!0,(0,d.nextTick)(()=>{eo(),Gt.value?.focusBindSearch()}))}function Hi(e,t){e.dataTransfer?.setData(`application/x-gd-contract-variable`,t),e.dataTransfer&&(e.dataTransfer.effectAllowed=`copy`)}function Ui(e){return E.value=Math.round(Math.min(Pe,Math.max(Ne,Number.isFinite(e)?e:1))*100)/100,E.value}let{width:Wi}=(0,De.useElementSize)(Ye),Gi=(0,d.computed)(()=>Math.max(...v.value.pages.map(e=>Jr(e).width),r.DEFAULT_PAGE_SIZE.width)+10),{fitWidth:Ki,applyAutoFit:qi,markUserAdjusted:Ji,userAdjusted:Yi}=o.useFitWidthZoom({viewportWidth:Wi,widestPageWidth:Gi,padding:48,minZoom:Ne,maxZoom:Pe,getZoom:()=>E.value,applyZoom:Ui});function Xi(e){return Ji(),Ui(e)}function Zi(){return qi()}function Qi(){return E.value}function $i(){Xi(E.value+Fe)}function ea(){Xi(E.value-Fe)}function ta(){$(),so(),D.value=!D.value}(0,d.watch)(Wi,e=>{k.value&&!Yi.value&&e>0&&Ki()});function na(e){O.value?it.value?.focus():e()}function ra(){$(),so(),A.value=!1,cn={fullscreen:D.value,sidebar:kt.value,inspector:At.value,chrome:O.value,zoom:E.value,userAdjusted:Yi.value},D.value=!0,kt.value=!0,At.value=!0,O.value=!0,k.value=!0,(0,d.nextTick)(()=>{B.value?jt.value?.focus():C.get(b.value)?.focus()})}function ia(){let e=cn;k.value=!1,cn=void 0,e&&(D.value=e.fullscreen,kt.value=e.sidebar,At.value=e.inspector,O.value=e.chrome,e.userAdjusted?Xi(e.zoom):qi(),(0,d.nextTick)(()=>na(()=>et.value?.focusImmersive())))}function aa(){k.value?ia():ra()}function oa(){$(),F.value=void 0;let e=q(!1);h.value?(Ct.value=c.cloneContractTemplateFiles(g.value),T.value=void 0,wt.value=_.value||g.value[0]?.id||``):(T.value=r.cloneTemplateValue(e),Ct.value=void 0,wt.value=``),w.value=!0}function sa(){w.value=!1,T.value=void 0,Ct.value=void 0,wt.value=``}function ca(){return La()}function la(){$();let e=ca();return Et.value=JSON.stringify(e,null,2),Tt.value=!0,e}function ua(){Tt.value=!1}function da(){return a.buildTemplateVariableData(q(!1))}function fa(){$();let e=da();return Ot.value=e,Dt.value=!0,e}function pa(){Dt.value=!1}function ma(){$(),F.value=void 0,M.value=!1,N.value=!1,y.value=``,b.value=``,w.value=!1,T.value=void 0,Ct.value=void 0,Tt.value=!1,Et.value=``,Dt.value=!1,Ot.value={values:{},variables:[]},Pt.value={},Qe(),ar();let e=X(r.createBlankTemplate(r.DEFAULT_PAGE_SIZE));return b.value=e.pages[0]?.id??``,r.cloneTemplateValue(e)}function ha(){B.value||($(),Ee.Modal.confirm({title:`清空合同内容`,content:`将清空全部合同正文、页面和模板变量,仅保留一个空白 A4 合同页。此操作不可撤销。`,okText:`确认清空`,okType:`danger`,cancelText:`取消`,onOk:()=>{ma()}}))}function ga(e){let t=kr().pages,n=t.find(e=>e.id===b.value);return(n?[n,...t.filter(e=>e.id!==n.id)]:t).find(t=>t.contentHtml.includes(`data-key="${e.key}"`)||t.contentHtml.includes(`data-key='${e.key}'`))}function _a(e){$(),y.value=e.key;let t=ga(e);t&&(b.value=t.id,(0,d.nextTick)(()=>{C.get(t.id)?.scrollIntoVariable(e.key)}))}function va(e){let t=v.value.variables.find(t=>t.key===e||t.id===e);t&&_a(t)}function ya(e,t=!0){$(),b.value=e,t&&(0,d.nextTick)(()=>{C.get(e)?.scrollIntoPage()})}function ba(e){ya(e.pageId,!1),C.get(e.pageId)?.focusHeading(e.headingIndex)}function xa(e){v.value.pages.some(t=>t.id===e)&&ya(e)}function Sa(){if(A.value){Ca();return}A.value=!0}function Ca(){A.value=!1,(0,d.nextTick)(()=>na(()=>et.value?.focusPageDecorations()))}function wa(){return Mr(),r.cloneTemplateValue(kr())}function Ta(e){Qe(),ar(),X(e),G()}function Ea(){let e=q(!1);return h.value?c.cloneContractTemplateFiles(g.value):c.cloneContractTemplateFiles(c.replaceContractTemplateFile(g.value,_.value,e))}function Da(e,t){let n=c.normalizeContractTemplateFiles(e,void 0,p.pageSize),r=c.constrainContractTemplateFiles(n,p.pageSizeOptions),i=g.value;mt.value=!0,q(!1),g.value=r.files,Y(c.resolveContractTemplateActiveFileId(g.value,t??_.value),{syncCurrent:!1,shouldEmit:!0,forceRefresh:!0}),l.serializeFingerprint(i)!==l.serializeFingerprint(g.value)&&J(g.value,``)}function Oa(e){if(B.value)return;mt.value=!0,q(!0);let t=c.createContractTemplateFile(e||`合同文件 ${g.value.length+1}`,p.pageSize);return g.value=[...g.value,t],J(g.value,``),m(`file-add`,c.cloneContractTemplateFiles([t])[0]),Y(t.id,{syncCurrent:!1,shouldEmit:!0,forceRefresh:!0}),c.cloneContractTemplateFiles([t])[0]}function ka(e){!h.value&&!g.value.some(t=>t.id===e)||(mt.value=!0,Y(e))}function Aa(e,t){if(B.value)return;mt.value=!0,q(!1);let n=c.renameContractTemplateFile(g.value,e,t),r=n.find(t=>t.id===e);if(r)return g.value=n,J(n,e),c.cloneContractTemplateFiles([r])[0]}function ja(e){if(B.value||g.value.length<=1)return;mt.value=!0,q(!1);let t=g.value.find(t=>t.id===e);if(!t)return;let n=c.removeContractTemplateFile(g.value,e);if(n.length!==g.value.length)return g.value=n,J(n,``),m(`file-remove`,c.cloneContractTemplateFiles([t])[0]),_.value===e&&Y(c.resolveContractTemplateActiveFileId(n,n[0]?.id),{syncCurrent:!1,shouldEmit:!0,forceRefresh:!0}),c.cloneContractTemplateFiles([t])[0]}function Ma(e){if(B.value||g.value.length<=1)return;let t=g.value.find(t=>t.id===e);t&&Ee.Modal.confirm({title:`删除合同文件`,content:`删除“${t.name}”后,其正文和变量将无法恢复,是否继续?`,okText:`确认删除`,okType:`danger`,cancelText:`取消`,onOk:()=>{ja(e)}})}function Na(e,t){if(B.value)return;mt.value=!0,q(!1);let n=g.value.findIndex(t=>t.id===e),r=c.moveContractTemplateFile(g.value,e,t),i=r.findIndex(t=>t.id===e),a=r[i];if(!(!a||n===i))return g.value=r,J(r,``),m(`file-move`,c.cloneContractTemplateFiles([a])[0],n,i),c.cloneContractTemplateFiles([a])[0]}function Pa(){q(!1);let e=za(h.value?g.value.flatMap(e=>r.validateTemplateValue(e.template,{maxPages:W.value}).map(t=>({...t,fileId:e.id}))):r.validateTemplateValue(kr(),{maxPages:W.value}));return S.value=e,x.value=!0,m(`validate`,e),e}function Fa(e){if(e.fileId&&e.fileId!==_.value){ka(e.fileId),(0,d.nextTick)(()=>Fa({...e,fileId:void 0}));return}let n=t.resolvePageDecorationValidationPath(e);if(n){A.value=!0,(0,d.nextTick)(()=>tt.value?.focusField(n));return}if(e.variableKey){va(e.variableKey);return}if(e.pageId){xa(e.pageId);return}let r=v.value.variables.find(t=>t.id===e.id||t.key===e.id);if(r){_a(r);return}v.value.pages.some(t=>t.id===e.id)&&ya(e.id)}function Ia(e){return t.resolvePageDecorationValidationPath(e)?`页面装饰`:e.type===`variable`?`变量`:`字段`}function La(){return Mr(),r.exportTemplateValue(kr())}function Ra(){let e=q(!1),t=h.value?g.value:c.replaceContractTemplateFile(g.value,_.value,e);return c.exportContractTemplateFiles(t)}function za(e){let t=new Set;return e.filter(e=>{let n=`${e.fileId??``}|${e.code??``}|${e.id}|${e.pageId??``}|${e.message}`;return t.has(n)?!1:(t.add(n),!0)})}function Ba(e){S.value=[...e],x.value=!0}function Va(){S.value=[],x.value=!1}function Ha(){C.get(V.value?.id??b.value)?.focus()}function Ua(e){Tr(e)&&Z({type:`set-text-align`,value:e})}function Wa(e){(e===`paragraph`||Er(e))&&Z({type:`apply-block-style`,format:e})}function Ga(e){let t=Or(e);t&&(Z({type:`set-font-size`,value:t}),j.value=``)}function Ka(e){let t=String(e||``).trim();if(!t){Z({type:`unset-font-family`});return}Z({type:`set-font-family`,value:t})}function qa(e){Ja(e.target?.value??``)}function Ja(e){let t=e.trim();t&&Z({type:`set-color`,value:t})}function Ya(e){j.value=e}function Xa(){j.value.trim()&&Ga(j.value)}function Za(e){e.key===`Enter`&&(e.preventDefault(),Xa())}function Qa(e){e||(Xa(),j.value=``)}function $a(e){if(B.value)return;b.value=e.pageId,M.value=!1,N.value=!1,I.value=void 0,L.value=void 0,Zt.value=!1,Qt.value=``;let t=u.clampContextMenuPosition(e.clientX,e.clientY,304,300);P.value={pageId:e.pageId,x:t.x,y:t.y,hasSelection:e.hasSelection,selectionWidth:e.selectionWidth,leadingText:e.leadingText},(0,d.nextTick)(()=>{eo(),Gt.value?.focusFirstButton()})}function eo(){let e=Gt.value?.getMenuElement(),t=P.value;if(!e||!t)return;let n=u.clampContextMenuToElement(t.x,t.y,e);P.value={...t,x:n.x,y:n.y}}function to(e){if(B.value)return;b.value=e.pageId,M.value=!1,N.value=!1,P.value=void 0,L.value=void 0;let t=u.clampContextMenuPosition(e.clientX,e.clientY,248,400);I.value={...e,x:t.x,y:t.y},(0,d.nextTick)(()=>{let e=$t.value?.getMenuElement(),t=I.value;if(e&&t){let n=u.clampContextMenuToElement(t.x,t.y,e);I.value={...t,x:n.x,y:n.y}}$t.value?.focusFirstItem()})}function no(e){if(B.value)return;b.value=e.pageId,M.value=!1,N.value=!1,P.value=void 0,I.value=void 0,tn.value=e.image.width,nn.value=e.image.height,y.value=``;let t=u.clampContextMenuPosition(e.clientX,e.clientY,288,196);L.value={pageId:e.pageId,image:e.image,x:t.x,y:t.y},(0,d.nextTick)(()=>{ro(),en.value?.getMenuElement()?.querySelector(`input, button:not(:disabled)`)?.focus()})}function ro(){let e=en.value?.getMenuElement(),t=L.value;if(!e||!t)return;let n=u.clampContextMenuToElement(t.x,t.y,e);L.value={...t,x:n.x,y:n.y}}function io(){let e=L.value;!e||B.value||(C.get(e.pageId)?.updateSelectedContentImage({width:s.normalizeContractImageDimension(tn.value),height:s.normalizeContractImageDimension(nn.value)})&&(R.value=`已更新图片尺寸`),$())}function ao(){let e=L.value;!e||B.value||(C.get(e.pageId)?.updateSelectedContentImage({width:void 0,height:void 0})&&(R.value=`已恢复图片自然尺寸`),$())}function oo(e){e.type===`table`?to(e):e.type===`image`?no(e):$a(e)}function $(){P.value=void 0,I.value=void 0,L.value=void 0,Zt.value=!1,Qt.value=``}function so(){Cn(!1),M.value=!1,N.value=!1,Nt.value=!1,Ft.value=!1,It.value=!1,Lt.value=!1,Rt.value=!1}function co(){so(),O.value=!O.value,(0,d.nextTick)(()=>na(()=>et.value?.focusChromeToggle()))}let lo=[`.gd-contract-template-designer__context-menu`,`.gd-contract-template-designer__bubble-menu`,`.gd-contract-template-designer__bubble-menu-popup`].join(`,`);function uo(){let e=B.value||Yt.value||qt.value||On.value||A.value||w.value,t=b.value,n=e?void 0:C.get(t)?.getSelectionViewportRect();if(!n){F.value=void 0;return}let r=n.top-40-We,i=r>=12?r:n.bottom+We,a=(n.left+n.right)/2-380/2,o=u.clampContextMenuPosition(a,i,380,40);F.value={pageId:t,x:o.x,y:o.y},(0,d.nextTick)(()=>fo(n))}function fo(e){let t=Kt.value?.getMenuElement(),n=F.value;if(!t||!n)return;let r=t.getBoundingClientRect(),i=e.top-r.height-We,a=i>=12?i:e.bottom+We,o=(e.left+e.right)/2-r.width/2,s=u.clampContextMenuToElement(o,a,t);F.value={...n,x:s.x,y:s.y}}function po(){let e=F.value?.pageId??b.value,t=C.get(e)?.getSelectionRange();Jt=t?{pageId:e,...t}:void 0,qt.value=!0,F.value=void 0}function mo(e){if(!qt.value)return;let t=Jt,n=C.get(e)?.getSelectionRange();t&&n&&t.pageId===e&&t.from===n.from&&t.to===n.to||(qt.value=!1,Jt=void 0)}function ho(){!F.value||Xt!==void 0||(Xt=requestAnimationFrame(()=>{Xt=void 0,uo()}))}function go(){Yt.value&&(Yt.value=!1,uo())}function _o(){$(),ho()}function vo(e,t){C.get(F.value?.pageId??b.value)?.requestTextContextMenu(e,t)}function yo(e){let t=e.target instanceof Element?e.target:null;t?.closest(`.ProseMirror`)&&(Yt.value=!0,F.value=void 0),!(!P.value&&!I.value&&!L.value&&!F.value)&&(t?.closest(lo)||($(),F.value&&po()))}function bo(e){(e.target instanceof Element?e.target:null)?.closest(lo)||($(),ho())}function xo(e){let t=Je.value;if(!t||typeof document>`u`)return!1;let n=e.target instanceof Node?e.target:void 0,r=document.activeElement;return!!(n&&t.contains(n)||r&&t.contains(r)||n instanceof Element&&n.closest(`.gd-contract-template-designer__context-menu`))}function So(e){if(e.key!==`Escape`||!A.value||typeof document>`u`)return;let t=Je.value?.querySelector(`.gd-contract-template-designer__page-decorations-studio`);if(!t)return;let n=e.target instanceof Element?e.target:null,r=document.activeElement instanceof Element?document.activeElement:null,i=!!(n?.closest(on)||r?.closest(on)),a=!!(n&&t.contains(n)||r&&t.contains(r)),o=!!t.querySelector(`.ant-select-open, .ant-dropdown-open`);if(i||a&&o){an.add(e);return}!On.value&&(a||e.target===document)&&(e.preventDefault(),e.stopPropagation(),Ca())}function Co(e){if((e.ctrlKey||e.metaKey)&&!e.altKey&&e.key.toLowerCase()===`s`){if(!kn.value||!xo(e))return;e.preventDefault(),sr();return}if(e.key===`Escape`){if(an.has(e)){an.delete(e);return}let t=On.value,n=t||A.value;if(!t&&A.value&&Ca(),$(),so(),n&&e.stopPropagation(),!n){if(F.value){po(),e.stopPropagation();return}k.value?ia():D.value=!1}}}function wo(e,t){e===b.value&&t.selectedContentImage&&(y.value=``),e===b.value&&(mo(e),uo());let n=Pt.value[e];n&&Te.isSameEditorState(n,t)||(Pt.value={...Pt.value,[e]:t})}function To(e=rn.value.rows,t=rn.value.cols){Z({type:`insert-table`,options:{rows:Math.min(10,Math.max(1,Math.round(Number(e)||3))),cols:Math.min(10,Math.max(1,Math.round(Number(t)||3))),withHeaderRow:!!rn.value.withHeaderRow}}),M.value=!1,$()}let Eo={"delete-table-row":{label:`删除当前行`,countKey:`deleteRow`},"delete-table-column":{label:`删除当前列`,countKey:`deleteColumn`},"delete-table":{label:`删除表格`,countKey:`deleteTable`}};function Do(e){let t=I.value;if(!t)return;let n=()=>{Z(e,t.pageId),$()},r=Eo[e.type];if(!r){n();return}let i=t.affectedVariableCounts[r.countKey];$(),Ee.Modal.confirm({title:r.label,content:i?`此操作将移除 ${i} 个正文变量节点,是否继续?`:`此操作将修改表格结构,是否继续?`,okText:`确认`,okType:`danger`,cancelText:`取消`,onOk:n,onCancel:()=>C.get(t.pageId)?.focus()})}function Oo(e){let t=$t.value?.getMenuElement();if(!t)return;if(e.key===`Escape`){e.preventDefault(),e.stopPropagation();let t=I.value?.pageId;$(),C.get(t??``)?.focus();return}let n=Array.from(t.querySelectorAll(`button:not(:disabled)`));if(!n.length)return;if(e.key===`Home`||e.key===`End`){e.preventDefault(),n[e.key===`Home`?0:n.length-1]?.focus();return}if(![`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`].includes(e.key))return;let r=(Math.max(0,n.indexOf(document.activeElement))+(e.key===`ArrowUp`||e.key===`ArrowLeft`?-1:1)+n.length)%n.length;e.preventDefault(),n[r]?.focus()}function ko(e){if(e.key!==`Escape`)return;e.preventDefault(),e.stopPropagation();let t=P.value?.pageId;$(),C.get(t??``)?.focus()}function Ao(e){if(e.key!==`Escape`)return;e.preventDefault(),e.stopPropagation();let t=L.value?.pageId;$(),C.get(t??``)?.focus()}function jo(e){Z({type:e}),N.value=!1,$()}return Ge({getValue:wa,setValue:Ta,getFiles:Ea,setFiles:Da,addFile:Oa,selectFile:ka,renameFile:Aa,removeFile:ja,moveFile:Na,validate:Pa,exportTemplate:La,exportFiles:Ra,getSubmitData:ca,clearTemplate:ma,saveDraftCache:sr,loadDraftCache:cr,clearDraftCache:lr,getDraftCacheStatus:Rr,insertVariable:Fi,insertImage:pi,focus:Ha,openPreview:oa,closePreview:sa,openSubmitDataViewer:la,closeSubmitDataViewer:ua,getVariableData:da,openVariableDataViewer:fa,closeVariableDataViewer:pa,setServerValidationErrors:Ba,clearValidationErrors:Va,scrollToVariable:va,scrollToPage:xa,setZoom:Xi,resetZoom:Zi,getZoom:Qi,fitWidth:Ki}),(e,t)=>((0,d.openBlock)(),(0,d.createElementBlock)(`div`,{ref_key:`designerElement`,ref:Je,class:(0,d.normalizeClass)([`gd-contract-template-designer`,{"is-disabled":f.disabled,"is-readonly":B.value,"is-fullscreen":D.value,"is-immersive":k.value}]),style:(0,d.normalizeStyle)(qe.value),onKeydownCapture:t[31]||=(...e)=>(0,d.unref)(Dn)&&(0,d.unref)(Dn)(...e)},[h.value?((0,d.openBlock)(),(0,d.createBlock)(xe.default,{key:0,files:g.value,"active-file-id":_.value,readonly:B.value,onSelect:ka,onAdd:t[0]||=e=>Oa(),onRename:Aa,onRemove:Ma,onMove:Na},null,8,[`files`,`active-file-id`,`readonly`])):(0,d.createCommentVNode)(``,!0),(0,d.createElementVNode)(`div`,{class:(0,d.normalizeClass)([`gd-contract-template-designer__layout`,{"is-sidebar-collapsed":kt.value,"is-inspector-collapsed":At.value}])},[(0,d.createVNode)(Se.default,{collapsed:kt.value,"file-id":_.value,pages:v.value.pages,variables:v.value.variables,"decoration-variable-keys":rr.value,"active-page-id":b.value,"selected-variable-key":y.value,"normalized-max-pages":W.value,"page-limit-reached":nr.value,"selected-page":V.value,"selected-page-size":Pn.value,"normalized-page-size-options":Xn.value,"page-size-options":Zn.value,"selected-page-size-option-value":Qn.value,readonly:B.value,"get-page-size":Jr,onToggle:t[1]||=e=>kt.value=!kt.value,onAddPage:Zr,onActivatePage:ya,onNavigateOutline:ba,onDuplicatePage:Qr,onRemovePage:ei,onPatchPageFormat:Yr,onScrollToVariable:_a},null,8,[`collapsed`,`file-id`,`pages`,`variables`,`decoration-variable-keys`,`active-page-id`,`selected-variable-key`,`normalized-max-pages`,`page-limit-reached`,`selected-page`,`selected-page-size`,`normalized-page-size-options`,`page-size-options`,`selected-page-size-option-value`,`readonly`]),(0,d.createElementVNode)(`main`,{ref_key:`workspaceElement`,ref:$e,class:`gd-contract-template-designer__workspace`},[(0,d.withDirectives)((0,d.createElementVNode)(`div`,{id:rt,class:`gd-contract-template-designer__workspace-chrome`},[(0,d.createVNode)(ae.default,{ref_key:`workspaceHeaderElement`,ref:et,summary:Ln.value,"draft-cache-status-text":Vn.value,"draft-cache-status-class":Hn.value,"show-draft-cache-status":f.showDraftCacheStatus,"show-clear-button":f.showClearButton,"show-submit-data-viewer":f.showSubmitDataViewer,"show-variable-data-viewer":f.showVariableDataViewer,readonly:B.value,"zoom-percent":Un.value,"zoom-out-disabled":E.value<=Ne,"zoom-in-disabled":E.value>=Pe,"is-fullscreen":D.value,immersive:k.value,"page-decorations-open":A.value,"page-decorations-studio-id":nt,"page-decorations-preset-label":Rn.value,"page-decorations-enabled-count":Bn.value,"page-decorations-enabled-states":zn.value,"chrome-controls-id":rt,onZoomOut:ea,onZoomIn:$i,onFitWidth:(0,d.unref)(Ki),onResetZoom:Zi,onToggleFullscreen:ta,onToggleImmersive:aa,onClear:ha,onValidate:Pa,onPreview:oa,onSubmitData:la,onVariableData:fa,onTogglePageDecorations:Sa,onToggleChrome:co},{authoring:(0,d.withCtx)(()=>[(0,d.createVNode)(ce.default,{ref_key:`authoringBarElement`,ref:ot,compact:``,query:(0,d.unref)(mn),"onUpdate:query":t[2]||=e=>(0,d.isRef)(mn)?mn.value=e:null,replacement:(0,d.unref)(hn),"onUpdate:replacement":t[3]||=e=>(0,d.isRef)(hn)?hn.value=e:null,"match-case":(0,d.unref)(gn),"onUpdate:matchCase":t[4]||=e=>(0,d.isRef)(gn)?gn.value=e:null,panel:(0,d.unref)(pn),readonly:B.value,total:(0,d.unref)(_n).length,"current-index":(0,d.unref)(vn),"current-page":(0,d.unref)(yn)?(0,d.unref)(yn).pageIndex+1:void 0,feedback:(0,d.unref)(bn),onOpen:(0,d.unref)(Sn),onClose:t[5]||=e=>(0,d.unref)(Cn)(),onNavigate:(0,d.unref)(wn),onReplaceCurrent:(0,d.unref)(Tn),onReplaceAll:(0,d.unref)(En)},null,8,[`query`,`replacement`,`match-case`,`panel`,`readonly`,`total`,`current-index`,`current-page`,`feedback`,`onOpen`,`onNavigate`,`onReplaceCurrent`,`onReplaceAll`])]),_:1},8,[`summary`,`draft-cache-status-text`,`draft-cache-status-class`,`show-draft-cache-status`,`show-clear-button`,`show-submit-data-viewer`,`show-variable-data-viewer`,`readonly`,`zoom-percent`,`zoom-out-disabled`,`zoom-in-disabled`,`is-fullscreen`,`immersive`,`page-decorations-open`,`page-decorations-preset-label`,`page-decorations-enabled-count`,`page-decorations-enabled-states`,`onFitWidth`]),(0,d.createVNode)(se.default,{"variable-insert-popover-open":Ft.value,"onUpdate:variableInsertPopoverOpen":t[6]||=e=>Ft.value=e,"signing-layout-popover-open":Lt.value,"onUpdate:signingLayoutPopoverOpen":t[7]||=e=>Lt.value=e,"signing-mark-popover-open":Rt.value,"onUpdate:signingMarkPopoverOpen":t[8]||=e=>Rt.value=e,"image-insert-popover-open":It.value,"onUpdate:imageInsertPopoverOpen":t[9]||=e=>It.value=e,"image-insert-url":Bt.value,"onUpdate:imageInsertUrl":t[10]||=e=>Bt.value=e,"image-insert-width":Vt.value,"onUpdate:imageInsertWidth":t[11]||=e=>Vt.value=e,"image-insert-height":Ht.value,"onUpdate:imageInsertHeight":t[12]||=e=>Ht.value=e,"table-insert-popover-open":M.value,"onUpdate:tableInsertPopoverOpen":t[13]||=e=>M.value=e,"table-actions-popover-open":N.value,"onUpdate:tableActionsPopoverOpen":t[14]||=e=>N.value=e,"table-insert-draft":rn.value,"onUpdate:tableInsertDraft":t[15]||=e=>rn.value=e,"toolbar-more-open":Nt.value,"onUpdate:toolbarMoreOpen":t[16]||=e=>Nt.value=e,readonly:B.value,"editor-state":K.value,"current-block-format":_r.value,"block-format-options":qn,"font-family-select-options":Gn.value,"current-editor-font-family":vr.value,"font-size-preset-options":Sr.value,"current-editor-font-size":yr.value,"editor-font-size-search-value":j.value,"current-editor-text-color":br.value,"body-control-tool-items":tr.value,"signing-layout-presets":er.value,"page-limit-reached":nr.value,"normalized-max-pages":W.value,"image-processing":Wt.value,"image-insert-error":Ut.value,onCommand:t[17]||=e=>Z(e),onPatchBlockFormat:Wa,onPatchFontFamily:Ka,onPatchFontSize:Ga,onPatchColor:qa,onPatchTextAlign:Ua,onInsertVariable:_i,onInsertSigningLayout:Br,onInsertSigningMark:Ur,onOpenSigningLayoutCustom:Hr,onOpenImageFile:mi,onInsertImageUrl:gi,onAddPage:Zr,onInsertTable:To,onTableAction:jo,onFontSizeSearch:Ya,onFontSizeCommit:Xa,onFontSizeDropdownChange:Qa,onFontSizeKeydown:Za},null,8,`variable-insert-popover-open.signing-layout-popover-open.signing-mark-popover-open.image-insert-popover-open.image-insert-url.image-insert-width.image-insert-height.table-insert-popover-open.table-actions-popover-open.table-insert-draft.toolbar-more-open.readonly.editor-state.current-block-format.font-family-select-options.current-editor-font-family.font-size-preset-options.current-editor-font-size.editor-font-size-search-value.current-editor-text-color.body-control-tool-items.signing-layout-presets.page-limit-reached.normalized-max-pages.image-processing.image-insert-error`.split(`.`))],512),[[d.vShow,!O.value]]),O.value?((0,d.openBlock)(),(0,d.createBlock)((0,d.unref)(Ee.Tooltip),{key:0,title:`展开工具区`},{default:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`button`,{ref_key:`workspaceChromeHandleElement`,ref:it,type:`button`,class:`gd-contract-template-designer__workspace-chrome-handle`,"aria-label":`展开工具区`,"aria-expanded":!1,"aria-controls":rt,onClick:co},[(0,d.createVNode)((0,d.unref)(Oe.DownOutlined),{"aria-hidden":`true`})],512)]),_:1})):(0,d.createCommentVNode)(``,!0),k.value&&!A.value?((0,d.openBlock)(),(0,d.createElementBlock)(`button`,{key:1,ref_key:`immersiveExitElement`,ref:jt,type:`button`,class:`gd-contract-template-designer__immersive-exit`,"aria-label":`退出沉浸写作`,onClick:ia},[(0,d.createVNode)((0,d.unref)(Oe.CompressOutlined),{"aria-hidden":`true`}),t[32]||=(0,d.createElementVNode)(`span`,{class:`gd-contract-template-designer__immersive-exit-label`},`退出沉浸`,-1),t[33]||=(0,d.createElementVNode)(`kbd`,null,`Esc`,-1)],512)):(0,d.createCommentVNode)(``,!0),x.value?((0,d.openBlock)(),(0,d.createElementBlock)(`section`,ke,[(0,d.createVNode)((0,d.unref)(Ee.Alert),{type:Fn.value?`success`:`error`,message:In.value,"show-icon":``},null,8,[`type`,`message`]),S.value.length?((0,d.openBlock)(),(0,d.createElementBlock)(`div`,Ae,[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(S.value,e=>((0,d.openBlock)(),(0,d.createElementBlock)(`button`,{key:`${e.id}-${e.message}`,type:`button`,class:`gd-contract-template-designer__validation-item`,onClick:t=>Fa(e)},[(0,d.createElementVNode)(`span`,null,(0,d.toDisplayString)(e.message),1),(0,d.createElementVNode)(`small`,null,(0,d.toDisplayString)(Ia(e)),1)],8,je))),128))])):(0,d.createCommentVNode)(``,!0)])):(0,d.createCommentVNode)(``,!0),(0,d.createElementVNode)(`div`,{ref_key:`canvasElement`,ref:Ye,class:`gd-contract-template-designer__canvas`},[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(v.value.pages,(e,n)=>((0,d.openBlock)(),(0,d.createBlock)(re.default,{key:`${_.value}:${e.id}`,ref_for:!0,ref:t=>zr(e.id,t),page:e,"page-index":n,"page-size":Jr(e),"page-decorations":v.value.pageDecorations,"total-pages":v.value.pages.length,variables:v.value.variables,"selected-variable-key":y.value,active:b.value===e.id,readonly:f.readonly,disabled:f.disabled,zoom:E.value,"process-image-file":fi,"search-query":(0,d.unref)(xn),"search-match-case":(0,d.unref)(gn),"active-search-match":(0,d.unref)(yn)?.pageId===e.id?(0,d.unref)(yn):void 0,"get-scroll-container":Xe,onPageUpdate:qr,onVariableDrop:yi,onVariableSelect:bi,onEditorFocus:t[18]||=e=>ya(e,!1),onEditorReady:(0,d.unref)(ir),onCompositionEnd:(0,d.unref)(ir),onPageLayoutChange:(0,d.unref)(ir),onEditorStateChange:wo,onEditorContextMenu:oo,onWordPaste:di,onVariableMoveBlocked:t[19]||=e=>R.value=`变量只能在当前页内移动,跨页移动尚未支持。`},null,8,[`page`,`page-index`,`page-size`,`page-decorations`,`total-pages`,`variables`,`selected-variable-key`,`active`,`readonly`,`disabled`,`zoom`,`search-query`,`search-match-case`,`active-search-match`,`onEditorReady`,`onCompositionEnd`,`onPageLayoutChange`]))),128))],512)],512),(0,d.createVNode)(Ce.default,{collapsed:At.value,readonly:f.readonly,disabled:f.disabled,"body-control-tool-items":tr.value,"selected-variable":H.value,variables:v.value.variables,"current-variable-font-family":xr.value,"font-family-select-options":Gn.value,"text-align-options":(0,d.unref)(Kn),"border-style-options":Jn,"object-fit-options":Yn,"selected-variable-width-max":hr.value,"selected-variable-height-max":gr.value,"min-font-size":He,"max-font-size":Ue,"default-multiline-rows":(0,d.unref)(3),onToggle:t[20]||=e=>At.value=!At.value,onVariableDragStart:Hi,onInsertVariable:Ii,onDuplicateVariable:Pi,onRemoveVariable:Mi,onPatchVariable:Q,onRenameVariable:Si,onPatchStyle:Di,onPatchMultiline:Ai,onPatchRows:ji,onPatchFontFamily:Oi,onPatchFontSize:ki,onPatchTextAlign:wi,onPatchBorderStyle:Ti,onPatchObjectFit:Ei},null,8,[`collapsed`,`readonly`,`disabled`,`body-control-tool-items`,`selected-variable`,`variables`,`current-variable-font-family`,`font-family-select-options`,`text-align-options`,`selected-variable-width-max`,`selected-variable-height-max`,`default-multiline-rows`])],2),(0,d.withDirectives)((0,d.createVNode)(we.default,{ref_key:`pageDecorationsStudioElement`,ref:tt,id:nt,open:A.value,decorations:v.value.pageDecorations,variables:v.value.variables,"font-family-options":Gn.value,readonly:f.readonly,disabled:f.disabled,"active-tab":Mt.value,"onUpdate:activeTab":t[21]||=e=>Mt.value=e,onChange:Ci,onClose:Ca},null,8,[`open`,`decorations`,`variables`,`font-family-options`,`readonly`,`disabled`,`active-tab`]),[[d.vShow,A.value]]),((0,d.openBlock)(),(0,d.createBlock)(d.Teleport,{to:`body`},[I.value?((0,d.openBlock)(),(0,d.createBlock)(ie.default,{key:0,ref_key:`tableContextMenuElement`,ref:$t,capabilities:I.value.capabilities,"active-alignment":I.value.activeAlignment,style:(0,d.normalizeStyle)({left:`${I.value.x}px`,top:`${I.value.y}px`}),onExecute:Do,onKeydown:Oo},null,8,[`capabilities`,`active-alignment`,`style`])):(0,d.createCommentVNode)(``,!0),L.value?((0,d.openBlock)(),(0,d.createBlock)(fe.default,{key:1,ref_key:`imageContextMenuElement`,ref:en,width:tn.value,"onUpdate:width":t[22]||=e=>tn.value=e,height:nn.value,"onUpdate:height":t[23]||=e=>nn.value=e,x:L.value.x,y:L.value.y,readonly:B.value,onRestore:ao,onApply:io,onKeydown:Ao},null,8,[`width`,`height`,`x`,`y`,`readonly`])):(0,d.createCommentVNode)(``,!0),P.value?((0,d.openBlock)(),(0,d.createBlock)(ue.default,{key:2,ref_key:`textContextMenuElement`,ref:Gt,"bind-open":Zt.value,"onUpdate:bindOpen":t[24]||=e=>Zt.value=e,"bind-keyword":Qt.value,"onUpdate:bindKeyword":t[25]||=e=>Qt.value=e,x:P.value.x,y:P.value.y,"has-selection":P.value.hasSelection,"editor-state":K.value,"current-editor-text-color":br.value,"body-control-tool-items":tr.value,"text-menu-bindable-variables":mr.value,"variables-count":v.value.variables.length,"resolve-bind-variable-type-label":Bi,onCommand:Wr,onClipboard:Gr,onAddPage:vi,onInsertVariable:Li,onBindVariable:zi,onOpenBindPanel:Vi,onKeydown:ko,onPatchColor:Ja},null,8,[`bind-open`,`bind-keyword`,`x`,`y`,`has-selection`,`editor-state`,`current-editor-text-color`,`body-control-tool-items`,`text-menu-bindable-variables`,`variables-count`])):(0,d.createCommentVNode)(``,!0),F.value?((0,d.openBlock)(),(0,d.createBlock)(de.default,{key:3,ref_key:`textBubbleElement`,ref:Kt,x:F.value.x,y:F.value.y,"editor-state":K.value,"font-size-preset-options":Sr.value,"current-editor-font-size":yr.value,"editor-font-size-search-value":j.value,"current-editor-text-color":br.value,"text-align-options":(0,d.unref)(Kn),onCommand:Z,onPatchFontSize:Ga,onPatchTextAlign:Ua,onPatchColor:Ja,onFontSizeSearch:Ya,onFontSizeCommit:Xa,onFontSizeDropdownChange:Qa,onFontSizeKeydown:Za,onMore:vo},null,8,[`x`,`y`,`editor-state`,`font-size-preset-options`,`current-editor-font-size`,`editor-font-size-search-value`,`current-editor-text-color`,`text-align-options`])):(0,d.createCommentVNode)(``,!0)])),(0,d.createElementVNode)(`input`,{ref_key:`imageFileInputElement`,ref:at,class:`gd-contract-template-designer__hidden-file-input`,type:`file`,accept:`image/png,image/jpeg,image/webp,image/gif,image/bmp`,tabindex:`-1`,"aria-hidden":`true`,onChange:hi},null,544),(0,d.createElementVNode)(`span`,Me,(0,d.toDisplayString)(R.value),1),(0,d.createVNode)(pe.default,{open:w.value,"onUpdate:open":t[26]||=e=>w.value=e,"preview-pages":jn.value,"preview-file-groups":Mn.value,"preview-active-group":Nn.value,"preview-snapshot":T.value,"font-base-url":f.contractFontBaseUrl,onCancel:sa,onSelectFile:t[27]||=e=>wt.value=e},null,8,[`open`,`preview-pages`,`preview-file-groups`,`preview-active-group`,`preview-snapshot`,`font-base-url`]),(0,d.createVNode)(me.default,{open:Tt.value,"onUpdate:open":t[28]||=e=>Tt.value=e,json:Et.value,onCancel:ua},null,8,[`open`,`json`]),(0,d.createVNode)(he.default,{open:Dt.value,"onUpdate:open":t[29]||=e=>Dt.value=e,data:Ot.value,"file-name":An.value?.name,onCancel:pa},null,8,[`open`,`data`,`file-name`]),(0,d.createVNode)(ge.default,{open:zt.value,"onUpdate:open":t[30]||=e=>zt.value=e,disabled:B.value,onInsert:Vr},null,8,[`open`,`disabled`])],38))}});exports.default=f;