@guodun/antdv 1.3.2 → 1.4.1
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.
- package/dist/es/components/contract-signing-location/index.mjs +1 -0
- package/dist/es/components/contract-signing-location/src/ContractSigningLocation.vue.mjs +311 -289
- package/dist/es/components/contract-signing-location/src/ContractSigningLocationCanvas.vue.mjs +337 -326
- package/dist/es/components/contract-signing-location/src/ContractSigningLocationInspector.vue.mjs +3 -2
- package/dist/es/components/contract-signing-location/src/ContractSigningLocationNavigator.vue.mjs +41 -33
- package/dist/es/components/contract-signing-location/src/ContractSigningTemplatePage.mjs +5 -0
- package/dist/es/components/contract-signing-location/src/ContractSigningTemplatePage.vue.mjs +23 -0
- package/dist/es/components/contract-signing-location/src/location-rules.mjs +115 -77
- package/dist/es/components/contract-signing-location/src/template-source.mjs +85 -0
- package/dist/es/components/contract-signing-location/style/index.css +1 -1
- package/dist/es/components/index.mjs +8 -6
- package/dist/es/components/pro-contract-signing-flow/src/ContractSigningFlowCanvas.vue.mjs +164 -57
- package/dist/es/components/pro-contract-signing-flow/src/ContractSigningFlowInspector.vue.mjs +132 -126
- package/dist/es/components/pro-contract-signing-flow/src/ContractSigningFlowNodeCard.vue.mjs +75 -49
- package/dist/es/components/pro-contract-signing-flow/src/ProContractSigningFlow.vue.mjs +136 -91
- package/dist/es/components/pro-contract-signing-flow/src/constants.mjs +25 -5
- package/dist/es/components/pro-contract-signing-flow/style/index.css +1 -1
- package/dist/es/components/pro-contract-template-designer/index.mjs +5 -4
- package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerInspector.mjs +5 -0
- package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerInspector.vue.mjs +347 -0
- package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerSidebar.mjs +5 -0
- package/dist/es/components/pro-contract-template-designer/src/ContractTemplateDesignerSidebar.vue.mjs +171 -0
- package/dist/es/components/pro-contract-template-designer/src/ContractTemplateFileBar.mjs +5 -0
- package/dist/es/components/pro-contract-template-designer/src/ContractTemplateFileBar.vue.mjs +166 -0
- package/dist/es/components/pro-contract-template-designer/src/ContractTemplateRendererField.vue.mjs +4 -4
- package/dist/es/components/pro-contract-template-designer/src/ContractTemplateRendererValidation.mjs +5 -0
- package/dist/es/components/pro-contract-template-designer/src/ContractTemplateRendererValidation.vue.mjs +36 -0
- package/dist/es/components/pro-contract-template-designer/src/DesignerPage.vue.mjs +202 -202
- package/dist/es/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.mjs +1591 -1612
- package/dist/es/components/pro-contract-template-designer/src/ProContractTemplateRenderer.vue.mjs +235 -239
- package/dist/es/components/pro-contract-template-designer/src/SigningPlacementLayer.vue.mjs +16 -16
- package/dist/es/components/pro-contract-template-designer/src/composables/use-template-designer.mjs +166 -166
- package/dist/es/components/pro-contract-template-designer/src/composables/use-template-draft-cache.mjs +100 -33
- package/dist/es/components/pro-contract-template-designer/src/composables/use-template-files.mjs +77 -0
- package/dist/es/components/pro-contract-template-designer/src/extensions/word-paste.mjs +23 -23
- package/dist/es/components/pro-contract-template-designer/src/utils/file-tabs.mjs +14 -0
- package/dist/es/components/pro-contract-template-designer/src/utils/template-renderer.mjs +121 -121
- package/dist/es/components/pro-contract-template-designer/src/utils/toolbar-overflow.mjs +19 -0
- package/dist/es/components/pro-contract-template-designer/style/index.css +1 -1
- package/dist/es/index.mjs +23 -21
- package/dist/lib/components/contract-signing-location/index.cjs +1 -1
- package/dist/lib/components/contract-signing-location/src/ContractSigningLocation.vue.cjs +1 -1
- package/dist/lib/components/contract-signing-location/src/ContractSigningLocationCanvas.vue.cjs +1 -1
- package/dist/lib/components/contract-signing-location/src/ContractSigningLocationInspector.vue.cjs +1 -1
- package/dist/lib/components/contract-signing-location/src/ContractSigningLocationNavigator.vue.cjs +1 -1
- package/dist/lib/components/contract-signing-location/src/ContractSigningTemplatePage.cjs +1 -0
- package/dist/lib/components/contract-signing-location/src/ContractSigningTemplatePage.vue.cjs +1 -0
- package/dist/lib/components/contract-signing-location/src/location-rules.cjs +1 -1
- package/dist/lib/components/contract-signing-location/src/template-source.cjs +1 -0
- package/dist/lib/components/contract-signing-location/style/index.css +1 -1
- package/dist/lib/components/index.cjs +1 -1
- package/dist/lib/components/pro-contract-signing-flow/src/ContractSigningFlowCanvas.vue.cjs +1 -1
- package/dist/lib/components/pro-contract-signing-flow/src/ContractSigningFlowInspector.vue.cjs +1 -1
- package/dist/lib/components/pro-contract-signing-flow/src/ContractSigningFlowNodeCard.vue.cjs +1 -1
- package/dist/lib/components/pro-contract-signing-flow/src/ProContractSigningFlow.vue.cjs +1 -1
- package/dist/lib/components/pro-contract-signing-flow/src/constants.cjs +1 -1
- package/dist/lib/components/pro-contract-signing-flow/style/index.css +1 -1
- package/dist/lib/components/pro-contract-template-designer/index.cjs +1 -1
- package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerInspector.cjs +1 -0
- package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerInspector.vue.cjs +1 -0
- package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerSidebar.cjs +1 -0
- package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateDesignerSidebar.vue.cjs +1 -0
- package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateFileBar.cjs +1 -0
- package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateFileBar.vue.cjs +1 -0
- package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateRendererField.vue.cjs +1 -1
- package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateRendererValidation.cjs +1 -0
- package/dist/lib/components/pro-contract-template-designer/src/ContractTemplateRendererValidation.vue.cjs +1 -0
- package/dist/lib/components/pro-contract-template-designer/src/DesignerPage.vue.cjs +2 -2
- package/dist/lib/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.cjs +1 -1
- package/dist/lib/components/pro-contract-template-designer/src/ProContractTemplateRenderer.vue.cjs +1 -1
- package/dist/lib/components/pro-contract-template-designer/src/SigningPlacementLayer.vue.cjs +1 -1
- package/dist/lib/components/pro-contract-template-designer/src/composables/use-template-designer.cjs +2 -2
- package/dist/lib/components/pro-contract-template-designer/src/composables/use-template-draft-cache.cjs +1 -1
- package/dist/lib/components/pro-contract-template-designer/src/composables/use-template-files.cjs +2 -0
- package/dist/lib/components/pro-contract-template-designer/src/extensions/word-paste.cjs +1 -1
- package/dist/lib/components/pro-contract-template-designer/src/utils/file-tabs.cjs +1 -0
- package/dist/lib/components/pro-contract-template-designer/src/utils/template-renderer.cjs +2 -2
- package/dist/lib/components/pro-contract-template-designer/src/utils/toolbar-overflow.cjs +1 -0
- package/dist/lib/components/pro-contract-template-designer/style/index.css +1 -1
- package/dist/lib/index.cjs +1 -1
- package/dist/theme/contract-signing-location.css +1 -1
- package/dist/theme/icon.css +1 -1
- package/dist/theme/index.css +1 -1
- package/dist/theme/pro-contract-signing-flow.css +1 -1
- package/dist/types/components/contract-signing-location/index.d.ts +1 -0
- package/dist/types/components/contract-signing-location/src/ContractSigningLocation.vue.d.ts +4 -1
- package/dist/types/components/contract-signing-location/src/ContractSigningLocationInspector.vue.d.ts +3 -2
- package/dist/types/components/contract-signing-location/src/ContractSigningTemplatePage.vue.d.ts +6 -0
- package/dist/types/components/contract-signing-location/src/location-rules.d.ts +3 -3
- package/dist/types/components/contract-signing-location/src/template-source.d.ts +20 -0
- package/dist/types/components/contract-signing-location/src/types.d.ts +49 -2
- package/dist/types/components/pro-contract-signing-flow/src/ContractSigningFlowCanvas.vue.d.ts +19 -3
- package/dist/types/components/pro-contract-signing-flow/src/ProContractSigningFlow.vue.d.ts +223 -2
- package/dist/types/components/pro-contract-signing-flow/src/constants.d.ts +15 -0
- package/dist/types/components/pro-contract-signing-flow/src/types.d.ts +14 -0
- package/dist/types/components/pro-contract-template-designer/index.d.ts +1 -0
- package/dist/types/components/pro-contract-template-designer/src/ContractTemplateDesignerInspector.vue.d.ts +103 -0
- package/dist/types/components/pro-contract-template-designer/src/ContractTemplateDesignerSidebar.vue.d.ts +48 -0
- package/dist/types/components/pro-contract-template-designer/src/ContractTemplateFileBar.vue.d.ts +231 -0
- package/dist/types/components/pro-contract-template-designer/src/ContractTemplateRendererValidation.vue.d.ts +15 -0
- package/dist/types/components/pro-contract-template-designer/src/DesignerPage.vue.d.ts +1 -1
- package/dist/types/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.d.ts +25 -2
- package/dist/types/components/pro-contract-template-designer/src/SigningPlacementInspector.vue.d.ts +2 -2
- package/dist/types/components/pro-contract-template-designer/src/composables/use-template-designer.d.ts +1 -1
- package/dist/types/components/pro-contract-template-designer/src/composables/use-template-draft-cache.d.ts +29 -1
- package/dist/types/components/pro-contract-template-designer/src/composables/use-template-files.d.ts +24 -0
- package/dist/types/components/pro-contract-template-designer/src/constants.d.ts +2 -2
- package/dist/types/components/pro-contract-template-designer/src/types.d.ts +59 -1
- package/dist/types/components/pro-contract-template-designer/src/utils/file-tabs.d.ts +3 -0
- package/dist/types/components/pro-contract-template-designer/src/utils/toolbar-overflow.d.ts +11 -0
- package/package.json +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--gdant-primary-50:var(--primary-50,#f4f9ff);--gdant-primary-100:var(--primary-100,#e9f1f6);--gdant-primary-200:var(--primary-200,#bcd7ff);--gdant-primary-300:var(--primary-300,#7fb0ff);--gdant-primary-400:var(--primary-400,#3b87ff);--gdant-primary-500:var(--primary-500,#1161ff);--gdant-primary-600:var(--primary-600,#0d4ed1);--gdant-primary-700:var(--primary-700,#0a3da5);--gdant-primary-800:var(--primary-800,#082c79);--gdant-primary-900:var(--primary-900,#05204d);--gdant-neutral-0:var(--neutral-0,#fff);--gdant-neutral-50:var(--neutral-50,#fafbfc);--gdant-neutral-100:var(--neutral-100,#f5f6f8);--gdant-neutral-200:var(--neutral-200,#eaecef);--gdant-neutral-300:var(--neutral-300,#d9dce0);--gdant-neutral-400:var(--neutral-400,#aab0b7);--gdant-neutral-500:var(--neutral-500,#7a818b);--gdant-neutral-600:var(--neutral-600,#565b66);--gdant-neutral-700:var(--neutral-700,#383d47);--gdant-neutral-800:var(--neutral-800,#262a33);--gdant-neutral-900:var(--neutral-900,#0f131a);--gdant-success-50:var(--success-50,#e8f9ed);--gdant-success-500:var(--success-500,#00b42a);--gdant-success-600:var(--success-600,#009023);--gdant-warning-50:var(--warning-50,#fff3e8);--gdant-warning-100:var(--warning-100,#ffe4cc);--gdant-warning-500:var(--warning-500,#f58634);--gdant-warning-600:var(--warning-600,#d96c1c);--gdant-warning-700:var(--warning-700,#b35316);--gdant-error-50:var(--error-50,#fde9e9);--gdant-error-100:var(--error-100,#fcd4d4);--gdant-error-300:var(--error-300,#f47070);--gdant-error-500:var(--error-500,#ee3939);--gdant-error-600:var(--error-600,#c92626);--gdant-error-700:var(--error-700,#a31c1c);--gdant-radius-xs:var(--radius-xs,2px);--gdant-radius-sm:var(--radius-sm,4px);--gdant-radius-md:var(--radius-md,6px);--gdant-radius-lg:var(--radius-lg,8px);--gdant-radius-xl:var(--radius-xl,12px);--gdant-radius-pill:var(--radius-pill,9999px);--gdant-shadow-raised:var(--shadow-raised,0 1px 2px #0f172a0a, 0 1px 4px #0f172a0f);--gdant-shadow-overlay:var(--shadow-overlay,0 4px 12px #0f172a14, 0 2px 6px #0f172a0a);--gdant-shadow-modal:var(--shadow-modal,0 16px 48px #0f172a29, 0 4px 12px #0f172a14);--gdant-spacing-xs:var(--spacing-xs,4px);--gdant-spacing-sm:var(--spacing-sm,8px);--gdant-spacing-md:var(--spacing-md,12px);--gdant-spacing-base:var(--spacing-base,16px);--gdant-spacing-lg:var(--spacing-lg,20px);--gdant-spacing-xl:var(--spacing-xl,24px);--gdant-text-body:var(--text-body,14px);--gdant-text-body-sm:var(--text-body-sm,12px);--gdant-text-h3:var(--text-h3,16px);--gdant-font-medium:var(--font-medium,500);--gdant-font-semibold:var(--font-semibold,600);--gdant-duration-normal:var(--duration-normal,.2s);--gdant-duration-slow:var(--duration-slow,.3s);--gdant-easing-default:var(--easing-default,cubic-bezier(.2, 0, 0, 1));--gdant-overlay-bg:#ffffffb8;--gdant-z-overlay:var(--z-overlay,1040);--gdant-z-modal:var(--z-modal,1050)}.gd-contract-signing-flow{box-sizing:border-box;border:1px solid var(--gdant-neutral-300);border-radius:var(--gdant-radius-lg);background:var(--gdant-neutral-100);width:100%;min-width:0;min-height:560px;color:var(--gdant-neutral-800);font-family:var(--gdant-font-family);font-size:14px;overflow:hidden;container-type:inline-size}.gd-contract-signing-flow__layout{grid-template-columns:minmax(0,1fr) 336px;width:100%;height:100%;min-height:0;display:grid}.gd-contract-signing-flow__canvas-panel{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.gd-contract-signing-flow__canvas-header,.gd-contract-signing-flow__inspector-header{border-bottom:1px solid var(--gdant-neutral-200);background:var(--gdant-neutral-0);justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:12px 16px;display:flex}.gd-contract-signing-flow__canvas-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.gd-contract-signing-flow__canvas-header h2,.gd-contract-signing-flow__inspector-header h2{color:var(--gdant-neutral-800);margin:0;font-size:16px;line-height:1.4}.gd-contract-signing-flow__canvas-header p,.gd-contract-signing-flow__inspector-header p{color:var(--gdant-neutral-500);margin:3px 0 0;font-size:12px}.gd-contract-signing-flow__canvas-scroll{background-color:var(--gdant-neutral-50);background-image:radial-gradient(var(--gdant-neutral-300) .7px, transparent .7px);background-size:18px 18px;flex:1;min-height:0;overflow:auto}.gd-contract-signing-flow__canvas{flex-direction:column;align-items:center;min-width:300px;min-height:100%;padding:28px 20px 36px;display:flex}.gd-contract-signing-flow__step{flex-direction:column;align-items:center;display:flex}.gd-contract-signing-flow__node{border:1px solid var(--gdant-neutral-200);border-radius:var(--gdant-radius-md);background:var(--gdant-neutral-0);width:min(520px,100cqw - 420px);min-width:280px;min-height:64px;box-shadow:var(--gdant-shadow-raised);cursor:pointer;transition:border-color var(--gdant-duration-fast), box-shadow var(--gdant-duration-fast);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid;position:relative}.gd-contract-signing-flow__node:hover{border-color:var(--gdant-primary-300)}.gd-contract-signing-flow__node.is-selected{border-color:var(--gdant-primary-500);box-shadow:0 0 0 2px color-mix(in srgb, var(--gdant-primary-500) 12%, transparent), var(--gdant-shadow-raised)}.gd-contract-signing-flow__node.is-unknown{border-color:var(--gdant-warning-400)}.gd-contract-signing-flow__node-icon{border-radius:var(--gdant-radius-md);background:var(--gdant-primary-50);width:32px;height:32px;color:var(--gdant-primary-600);justify-content:center;align-items:center;font-size:15px;display:flex}.gd-contract-signing-flow__node-icon.is-start{background:var(--gdant-success-50);color:var(--gdant-success-600)}.gd-contract-signing-flow__node-icon.is-end{background:var(--gdant-neutral-100);color:var(--gdant-neutral-600)}.gd-contract-signing-flow__node-body{min-width:0}.gd-contract-signing-flow__node-title-row{align-items:center;gap:7px;min-width:0;display:flex}.gd-contract-signing-flow__node-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.gd-contract-signing-flow__node-title-row .ant-tag{flex:none;margin-inline-end:0;line-height:18px}.gd-contract-signing-flow__node-meta{color:var(--gdant-neutral-500);white-space:nowrap;gap:10px;margin-top:5px;font-size:11px;display:flex;overflow:hidden}.gd-contract-signing-flow__node-meta span{text-overflow:ellipsis;align-items:center;gap:3px;min-width:0;display:inline-flex;overflow:hidden}.gd-contract-signing-flow__node-description{color:var(--gdant-neutral-500);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:11px;overflow:hidden}.gd-contract-signing-flow__node-actions{align-items:center;gap:0;display:flex}.gd-contract-signing-flow__node-actions .ant-btn{width:26px;height:26px;padding:0}.gd-contract-signing-flow__connector{width:24px;height:34px;position:relative}.gd-contract-signing-flow__connector span{background:var(--gdant-neutral-400);width:1px;height:24px;position:absolute;top:0;left:50%}.gd-contract-signing-flow__connector i{border-right:1px solid var(--gdant-neutral-500);border-bottom:1px solid var(--gdant-neutral-500);width:8px;height:8px;position:absolute;bottom:3px;left:calc(50% - 4px);transform:rotate(45deg)}.gd-contract-signing-flow__add-node{margin-top:14px}.gd-contract-signing-flow__inspector{border-left:1px solid var(--gdant-neutral-200);background:var(--gdant-neutral-0);flex-direction:column;min-width:0;min-height:0;display:flex}.gd-contract-signing-flow__inspector-header .ant-tag{margin-inline-end:0}.gd-contract-signing-flow__inspector-scroll{min-height:0;overflow:auto}.gd-contract-signing-flow__form-section{border-bottom:1px solid var(--gdant-neutral-200);padding:14px 16px}.gd-contract-signing-flow__form-section.is-collapsed .gd-contract-signing-flow__section-heading{margin-bottom:0}.gd-contract-signing-flow__form-section.is-placement{background:var(--gdant-neutral-50)}.gd-contract-signing-flow__section-heading{justify-content:space-between;align-items:center;gap:8px;min-height:24px;margin-bottom:11px;display:flex}.gd-contract-signing-flow__section-heading.is-toggle{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:0;padding:0}.gd-contract-signing-flow__section-heading-meta{color:var(--gdant-neutral-500);align-items:center;gap:6px;font-size:12px;display:inline-flex}.gd-contract-signing-flow__section-heading-meta .anticon{color:var(--gdant-neutral-500);transition:transform var(--gdant-duration-fast);font-size:12px}.gd-contract-signing-flow__section-heading h3{margin:0;font-size:13px}.gd-contract-signing-flow__section-heading p{color:var(--gdant-neutral-500);margin:3px 0 0;font-size:11px}.gd-contract-signing-flow__section-heading .ant-tag{margin-inline-end:0}.gd-contract-signing-flow__form .ant-form-item{margin-bottom:10px}.gd-contract-signing-flow__form .ant-form-item:last-child{margin-bottom:0}.gd-contract-signing-flow__form .ant-form-item-label,.gd-contract-signing-flow__rule-grid .ant-form-item-label,.gd-contract-signing-flow__inline-form-item .ant-form-item-label{padding-bottom:4px}.gd-contract-signing-flow__form .ant-form-item-label>label,.gd-contract-signing-flow__rule-grid .ant-form-item-label>label,.gd-contract-signing-flow__inline-form-item .ant-form-item-label>label{color:var(--gdant-neutral-600);font-size:12px}.gd-contract-signing-flow__form .ant-input,.gd-contract-signing-flow__form .ant-input-affix-wrapper,.gd-contract-signing-flow__form .ant-select-selector,.gd-contract-signing-flow__rule-grid .ant-select-selector,.gd-contract-signing-flow__inline-form-item .ant-select-selector{border-radius:var(--gdant-radius-md)}.gd-contract-signing-flow__setting-list{gap:10px;margin-top:13px;display:grid}.gd-contract-signing-flow__setting-list.is-compact{gap:0;margin-top:0}.gd-contract-signing-flow__setting-row{min-height:30px;color:var(--gdant-neutral-700);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.gd-contract-signing-flow__setting-row>div{gap:2px;display:grid}.gd-contract-signing-flow__setting-row strong{font-size:12px;font-weight:600}.gd-contract-signing-flow__setting-row span{color:var(--gdant-neutral-700)}.gd-contract-signing-flow__setting-row div span{color:var(--gdant-neutral-500);font-size:11px}.gd-contract-signing-flow__setting-list.is-compact .gd-contract-signing-flow__setting-row{border-bottom:1px solid var(--gdant-neutral-100);min-height:32px}.gd-contract-signing-flow__setting-list.is-compact .gd-contract-signing-flow__setting-row:last-child{border-bottom:0}.gd-contract-signing-flow__rule-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.gd-contract-signing-flow__rule-grid .ant-form-item{margin-bottom:0}.gd-contract-signing-flow__inline-form-item{margin:0}.gd-contract-signing-flow__inline-form-item .ant-form-item-control-input{min-height:32px}.gd-contract-signing-flow__field-label{color:var(--gdant-neutral-600);margin:13px 0 7px;font-size:12px;display:block}.gd-contract-signing-flow__seal-list{grid-template-columns:1fr 1fr;gap:7px 12px;display:grid}.gd-contract-signing-flow__seal-list .ant-checkbox-wrapper{color:var(--gdant-neutral-600);font-size:11px}.gd-contract-signing-flow__node-overview{text-align:center;place-items:center;gap:8px;min-height:260px;padding:28px;display:grid}.gd-contract-signing-flow__node-overview-icon{background:var(--gdant-primary-50);width:42px;height:42px;color:var(--gdant-primary-600);border-radius:50%;place-items:center;font-weight:700;display:grid}.gd-contract-signing-flow__node-overview h3{margin:0;font-size:15px}.gd-contract-signing-flow__node-overview p{max-width:220px;color:var(--gdant-neutral-500);margin:0;font-size:12px;line-height:1.6}.gd-contract-signing-flow__node-overview .ant-tag{margin:0}.gd-contract-signing-flow__empty-inspector{flex:1;min-height:260px}.gd-contract-signing-flow.is-disabled{filter:saturate(.75)}@container (width<=820px){.gd-contract-signing-flow__layout{grid-template-rows:minmax(420px,1fr) auto;grid-template-columns:1fr;overflow:auto}.gd-contract-signing-flow__inspector{border-top:1px solid var(--gdant-neutral-200);border-left:0;max-height:none}.gd-contract-signing-flow__node{width:min(520px,100cqw - 40px)}}@container (width<=460px){.gd-contract-signing-flow__canvas-header,.gd-contract-signing-flow__inspector-header{padding:10px 12px}.gd-contract-signing-flow__canvas-header .ant-btn{padding-inline:9px}.gd-contract-signing-flow__canvas-actions{flex-wrap:nowrap}.gd-contract-signing-flow__canvas{min-width:0;padding-inline:12px}.gd-contract-signing-flow__node{grid-template-columns:30px minmax(0,1fr) auto;width:calc(100cqw - 24px);min-width:0;padding-inline:9px}.gd-contract-signing-flow__node-icon{width:30px;height:30px}.gd-contract-signing-flow__node-meta{gap:7px}.gd-contract-signing-flow__node-meta span:nth-child(3){display:none}.gd-contract-signing-flow__node-actions .ant-btn{width:23px}.gd-contract-signing-flow__form-section{padding-inline:12px}}@media (prefers-reduced-motion:reduce){.gd-contract-signing-flow *{transition:none!important}}
|
|
1
|
+
:root{--gdant-primary-50:var(--primary-50,#f4f9ff);--gdant-primary-100:var(--primary-100,#e9f1f6);--gdant-primary-200:var(--primary-200,#bcd7ff);--gdant-primary-300:var(--primary-300,#7fb0ff);--gdant-primary-400:var(--primary-400,#3b87ff);--gdant-primary-500:var(--primary-500,#1161ff);--gdant-primary-600:var(--primary-600,#0d4ed1);--gdant-primary-700:var(--primary-700,#0a3da5);--gdant-primary-800:var(--primary-800,#082c79);--gdant-primary-900:var(--primary-900,#05204d);--gdant-neutral-0:var(--neutral-0,#fff);--gdant-neutral-50:var(--neutral-50,#fafbfc);--gdant-neutral-100:var(--neutral-100,#f5f6f8);--gdant-neutral-200:var(--neutral-200,#eaecef);--gdant-neutral-300:var(--neutral-300,#d9dce0);--gdant-neutral-400:var(--neutral-400,#aab0b7);--gdant-neutral-500:var(--neutral-500,#7a818b);--gdant-neutral-600:var(--neutral-600,#565b66);--gdant-neutral-700:var(--neutral-700,#383d47);--gdant-neutral-800:var(--neutral-800,#262a33);--gdant-neutral-900:var(--neutral-900,#0f131a);--gdant-success-50:var(--success-50,#e8f9ed);--gdant-success-500:var(--success-500,#00b42a);--gdant-success-600:var(--success-600,#009023);--gdant-warning-50:var(--warning-50,#fff3e8);--gdant-warning-100:var(--warning-100,#ffe4cc);--gdant-warning-500:var(--warning-500,#f58634);--gdant-warning-600:var(--warning-600,#d96c1c);--gdant-warning-700:var(--warning-700,#b35316);--gdant-error-50:var(--error-50,#fde9e9);--gdant-error-100:var(--error-100,#fcd4d4);--gdant-error-300:var(--error-300,#f47070);--gdant-error-500:var(--error-500,#ee3939);--gdant-error-600:var(--error-600,#c92626);--gdant-error-700:var(--error-700,#a31c1c);--gdant-radius-xs:var(--radius-xs,2px);--gdant-radius-sm:var(--radius-sm,4px);--gdant-radius-md:var(--radius-md,6px);--gdant-radius-lg:var(--radius-lg,8px);--gdant-radius-xl:var(--radius-xl,12px);--gdant-radius-pill:var(--radius-pill,9999px);--gdant-shadow-raised:var(--shadow-raised,0 1px 2px #0f172a0a, 0 1px 4px #0f172a0f);--gdant-shadow-overlay:var(--shadow-overlay,0 4px 12px #0f172a14, 0 2px 6px #0f172a0a);--gdant-shadow-modal:var(--shadow-modal,0 16px 48px #0f172a29, 0 4px 12px #0f172a14);--gdant-spacing-xs:var(--spacing-xs,4px);--gdant-spacing-sm:var(--spacing-sm,8px);--gdant-spacing-md:var(--spacing-md,12px);--gdant-spacing-base:var(--spacing-base,16px);--gdant-spacing-lg:var(--spacing-lg,20px);--gdant-spacing-xl:var(--spacing-xl,24px);--gdant-text-body:var(--text-body,14px);--gdant-text-body-sm:var(--text-body-sm,12px);--gdant-text-h3:var(--text-h3,16px);--gdant-font-medium:var(--font-medium,500);--gdant-font-semibold:var(--font-semibold,600);--gdant-duration-normal:var(--duration-normal,.2s);--gdant-duration-slow:var(--duration-slow,.3s);--gdant-easing-default:var(--easing-default,cubic-bezier(.2, 0, 0, 1));--gdant-overlay-bg:#ffffffb8;--gdant-z-overlay:var(--z-overlay,1040);--gdant-z-modal:var(--z-modal,1050)}.gd-contract-signing-flow{box-sizing:border-box;border:1px solid var(--gdant-neutral-300);border-radius:var(--gdant-radius-lg);background:var(--gdant-neutral-100);width:100%;min-width:0;min-height:560px;color:var(--gdant-neutral-800);font-family:var(--gdant-font-family);outline:none;font-size:14px;overflow:hidden;container-type:inline-size}.gd-contract-signing-flow:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb, var(--gdant-primary-500) 20%, transparent)}.gd-contract-signing-flow__layout{grid-template-columns:minmax(0,1fr) 336px;width:100%;height:100%;min-height:0;display:grid}.gd-contract-signing-flow__canvas-panel{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.gd-contract-signing-flow__canvas-header,.gd-contract-signing-flow__inspector-header{justify-content:space-between;align-items:center;gap:var(--gdant-spacing-md);min-height:64px;padding:var(--gdant-spacing-md) var(--gdant-spacing-base);border-bottom:1px solid var(--gdant-neutral-200);background:var(--gdant-neutral-0);display:flex}.gd-contract-signing-flow__canvas-actions{align-items:center;gap:var(--gdant-spacing-sm);flex-shrink:0;display:flex}.gd-contract-signing-flow__zoom-tools{align-items:center;gap:var(--gdant-spacing-xs);padding:var(--gdant-spacing-xs);border:1px solid var(--gdant-neutral-200);border-radius:var(--gdant-radius-md);background:var(--gdant-neutral-50);flex:none;display:inline-flex}.gd-contract-signing-flow__zoom-tools .ant-btn{width:calc(var(--gdant-spacing-base) + var(--gdant-spacing-md));height:calc(var(--gdant-spacing-base) + var(--gdant-spacing-md));padding:0}.gd-contract-signing-flow__zoom-value{appearance:none;min-width:calc(var(--gdant-spacing-xl) * 2);height:calc(var(--gdant-spacing-base) + var(--gdant-spacing-md));padding:0 var(--gdant-spacing-xs);border-radius:var(--gdant-radius-sm);color:var(--gdant-neutral-700);font:inherit;font-size:var(--gdant-text-body-sm);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0}.gd-contract-signing-flow__zoom-value:hover,.gd-contract-signing-flow__zoom-value:focus-visible{background:var(--gdant-primary-50);color:var(--gdant-primary-700);outline:none}.gd-contract-signing-flow__canvas-header p,.gd-contract-signing-flow__inspector-header p{margin:var(--gdant-spacing-xs) 0 0;color:var(--gdant-neutral-500);font-size:var(--gdant-text-body-sm)}.gd-contract-signing-flow__inspector-type{padding:0 var(--gdant-spacing-xs);border:1px solid var(--gdant-neutral-200);border-radius:var(--gdant-radius-sm);background:var(--gdant-neutral-50);color:var(--gdant-neutral-600);font-size:var(--gdant-text-body-sm);flex:none;align-items:center;line-height:1.5;display:inline-flex}.gd-contract-signing-flow__canvas-scroll{background-color:var(--gdant-neutral-50);background-image:radial-gradient(var(--gdant-neutral-300) .7px, transparent .7px);background-size:18px 18px;flex:1;min-height:0;overflow:auto}.gd-contract-signing-flow__canvas-scale{min-width:300px;min-height:100%;position:relative}.gd-contract-signing-flow__canvas{box-sizing:border-box;will-change:transform;min-width:300px;transition:transform var(--gdant-duration-normal);flex-direction:column;align-items:center;padding:28px 20px 36px;display:flex;position:absolute;top:0;left:50%}.gd-contract-signing-flow__step{flex-direction:column;align-items:center;width:100%;display:flex}.gd-contract-signing-flow__node{box-sizing:border-box;cursor:pointer;min-width:0;max-width:100%;transition:border-color var(--gdant-duration-normal), box-shadow var(--gdant-duration-normal);outline:none;flex-direction:column;align-items:center;display:flex;position:relative;overflow:visible}.gd-contract-signing-flow__node.is-disabled{cursor:not-allowed}.gd-contract-signing-flow__node.is-terminal{width:auto;box-shadow:none;gap:var(--gdant-spacing-xs);background:0 0;border:0;padding:0}.gd-contract-signing-flow__node.is-sign,.gd-contract-signing-flow__node.is-unknown{align-items:start;gap:var(--gdant-spacing-sm);width:288px;padding:var(--gdant-spacing-sm) var(--gdant-spacing-md);border:1px solid var(--gdant-neutral-200);border-radius:var(--gdant-radius-md);background:var(--gdant-neutral-0);box-shadow:var(--gdant-shadow-raised);grid-template-rows:auto;grid-template-columns:36px minmax(0,1fr);display:grid}.gd-contract-signing-flow__node.is-sign{padding-left:calc(var(--gdant-spacing-md) + var(--gdant-spacing-xs))}.gd-contract-signing-flow__node.is-sign:before{content:"";width:var(--gdant-spacing-xs);border-radius:var(--gdant-radius-md) 0 0 var(--gdant-radius-md);background:var(--gdant-primary-500);position:absolute;top:0;bottom:0;left:0}.gd-contract-signing-flow__node.is-sign.is-person:before{background:var(--gdant-warning-500)}.gd-contract-signing-flow__node.is-sign.is-company:before{background:var(--gdant-primary-500)}.gd-contract-signing-flow__node.is-sign:hover{border-color:var(--gdant-primary-300)}.gd-contract-signing-flow__node.is-sign.is-selected,.gd-contract-signing-flow__node.is-sign:focus-visible{border-color:var(--gdant-primary-500);box-shadow:0 0 0 2px color-mix(in srgb, var(--gdant-primary-500) 12%, transparent), var(--gdant-shadow-raised)}.gd-contract-signing-flow__node.is-unknown{border-color:var(--gdant-warning-500)}.gd-contract-signing-flow__node.is-unknown:hover,.gd-contract-signing-flow__node.is-unknown.is-selected,.gd-contract-signing-flow__node.is-unknown:focus-visible{border-color:var(--gdant-warning-600);box-shadow:0 0 0 2px color-mix(in srgb, var(--gdant-warning-500) 12%, transparent), var(--gdant-shadow-raised)}.gd-contract-signing-flow__node-icon{border-radius:var(--gdant-radius-pill);background:var(--gdant-primary-50);width:36px;height:36px;color:var(--gdant-primary-600);font-size:var(--gdant-text-body);flex:none;justify-content:center;align-items:center;display:flex}.gd-contract-signing-flow__node.is-terminal .gd-contract-signing-flow__node-icon{width:40px;height:40px}.gd-contract-signing-flow__node-icon.is-start{background:var(--gdant-success-50);color:var(--gdant-success-600)}.gd-contract-signing-flow__node-icon.is-end{background:var(--gdant-neutral-100);color:var(--gdant-neutral-600)}.gd-contract-signing-flow__node.is-unknown .gd-contract-signing-flow__node-icon{background:var(--gdant-warning-50);color:var(--gdant-warning-600)}.gd-contract-signing-flow__node.is-terminal.is-selected .gd-contract-signing-flow__node-icon,.gd-contract-signing-flow__node.is-terminal:focus-visible .gd-contract-signing-flow__node-icon{box-shadow:0 0 0 2px var(--gdant-primary-500), 0 0 0 4px color-mix(in srgb, var(--gdant-primary-500) 12%, transparent)}.gd-contract-signing-flow__node-caption{color:var(--gdant-neutral-600);font-size:var(--gdant-text-body-sm);line-height:1.5}.gd-contract-signing-flow__node.is-sign .gd-contract-signing-flow__node-icon,.gd-contract-signing-flow__node.is-unknown .gd-contract-signing-flow__node-icon{grid-area:1/1}.gd-contract-signing-flow__node-body{grid-area:1/2;min-width:0}.gd-contract-signing-flow__node-title-row{align-items:center;gap:var(--gdant-spacing-xs);min-width:0;display:flex}.gd-contract-signing-flow__node-name{min-width:0;color:var(--gdant-neutral-800);font-size:var(--gdant-text-body);font-weight:var(--gdant-font-semibold);overflow-wrap:anywhere;line-height:1.4}.gd-contract-signing-flow__node-chips{gap:var(--gdant-spacing-xs);margin-top:var(--gdant-spacing-xs);flex-wrap:wrap;display:flex}.gd-contract-signing-flow__node-chip{max-width:100%;padding:0 var(--gdant-spacing-xs);border:1px solid var(--gdant-neutral-200);border-radius:var(--gdant-radius-sm);background:var(--gdant-neutral-50);color:var(--gdant-neutral-600);font-size:var(--gdant-text-body-sm);align-items:center;line-height:1.5;display:inline-flex}.gd-contract-signing-flow__node-description{margin:var(--gdant-spacing-xs) 0 0;color:var(--gdant-neutral-500);font-size:var(--gdant-text-body-sm);overflow-wrap:anywhere;line-height:1.5}.gd-contract-signing-flow__node-actions{top:calc(var(--gdant-spacing-md) * -1);right:var(--gdant-spacing-sm);z-index:1;padding:var(--gdant-spacing-xs);border:1px solid var(--gdant-neutral-200);border-radius:var(--gdant-radius-sm);background:var(--gdant-neutral-0);box-shadow:var(--gdant-shadow-overlay);align-items:center;display:flex;position:absolute}.gd-contract-signing-flow__node-actions .ant-btn{width:26px;height:26px;padding:0}.gd-contract-signing-flow__connector{flex:none;width:24px;height:48px;position:relative}.gd-contract-signing-flow__connector span{background:var(--gdant-neutral-400);width:1px;height:38px;position:absolute;top:0;left:50%}.gd-contract-signing-flow__connector i{left:calc(50% - 4px);bottom:var(--gdant-spacing-xs);border-right:1px solid var(--gdant-neutral-500);border-bottom:1px solid var(--gdant-neutral-500);width:8px;height:8px;position:absolute;transform:rotate(45deg)}.gd-contract-signing-flow__add-on-timeline{appearance:none;align-items:center;gap:var(--gdant-spacing-xs);margin:var(--gdant-spacing-sm) 0 0;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;padding:0;display:flex}.gd-contract-signing-flow__add-on-timeline:disabled{cursor:not-allowed;opacity:.45}.gd-contract-signing-flow__add-on-timeline-icon{border:1px dashed var(--gdant-neutral-300);border-radius:var(--gdant-radius-pill);background:var(--gdant-neutral-0);width:40px;height:40px;color:var(--gdant-primary-600);place-items:center;display:grid}.gd-contract-signing-flow__add-on-timeline:hover:not(:disabled) .gd-contract-signing-flow__add-on-timeline-icon{border-color:var(--gdant-primary-300)}.gd-contract-signing-flow__add-on-timeline:focus-visible{outline:none}.gd-contract-signing-flow__add-on-timeline:focus-visible .gd-contract-signing-flow__add-on-timeline-icon{box-shadow:0 0 0 2px var(--gdant-primary-500), 0 0 0 4px color-mix(in srgb, var(--gdant-primary-500) 12%, transparent)}.gd-contract-signing-flow__add-on-timeline-caption{color:var(--gdant-neutral-600);font-size:var(--gdant-text-body-sm);line-height:1.5}.gd-contract-signing-flow__inspector{border-left:1px solid var(--gdant-neutral-200);background:var(--gdant-neutral-0);flex-direction:column;min-width:0;min-height:0;display:flex}.gd-contract-signing-flow__inspector-scroll{min-height:0;overflow:auto}.gd-contract-signing-flow__form-section{padding:14px var(--gdant-spacing-base);border-bottom:1px solid var(--gdant-neutral-200)}.gd-contract-signing-flow__form-section.is-collapsed .gd-contract-signing-flow__section-heading{margin-bottom:0}.gd-contract-signing-flow__form-section.is-placement{background:var(--gdant-neutral-50)}.gd-contract-signing-flow__section-heading{justify-content:space-between;align-items:center;gap:var(--gdant-spacing-sm);min-height:24px;margin-bottom:11px;display:flex}.gd-contract-signing-flow__section-heading.is-toggle{appearance:none;cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:0;padding:0}.gd-contract-signing-flow__section-heading-meta{align-items:center;gap:var(--gdant-spacing-sm);color:var(--gdant-neutral-500);font-size:var(--gdant-text-body-sm);display:inline-flex}.gd-contract-signing-flow__section-heading-meta .anticon{color:var(--gdant-neutral-500);font-size:var(--gdant-text-body-sm);transition:transform var(--gdant-duration-normal)}.gd-contract-signing-flow__section-heading h3{align-items:center;margin:0;font-size:13px;display:flex}.gd-contract-signing-flow__section-heading h3:before{content:"";width:var(--gdant-spacing-xs);height:var(--gdant-spacing-md);border-radius:var(--gdant-radius-xs);background:var(--gdant-primary-500);margin-inline-end:var(--gdant-spacing-sm);display:inline-block}.gd-contract-signing-flow__section-heading p{margin:var(--gdant-spacing-xs) 0 0;color:var(--gdant-neutral-500);font-size:11px}.gd-contract-signing-flow__section-heading .ant-tag{margin-inline-end:0}.gd-contract-signing-flow__rule-summary{padding:0 var(--gdant-spacing-xs);border:1px solid var(--gdant-neutral-200);border-radius:var(--gdant-radius-sm);background:var(--gdant-neutral-50);color:var(--gdant-neutral-600);font-size:var(--gdant-text-body-sm);flex:none;align-items:center;line-height:1.5;display:inline-flex}.gd-contract-signing-flow__form .ant-form-item{margin-bottom:10px}.gd-contract-signing-flow__form .ant-form-item:last-child{margin-bottom:0}.gd-contract-signing-flow__form .ant-form-item-label,.gd-contract-signing-flow__rule-grid .ant-form-item-label,.gd-contract-signing-flow__inline-form-item .ant-form-item-label{padding-bottom:var(--gdant-spacing-xs)}.gd-contract-signing-flow__form .ant-form-item-label>label,.gd-contract-signing-flow__rule-grid .ant-form-item-label>label,.gd-contract-signing-flow__inline-form-item .ant-form-item-label>label{color:var(--gdant-neutral-600);font-size:12px}.gd-contract-signing-flow__form .ant-input,.gd-contract-signing-flow__form .ant-input-affix-wrapper,.gd-contract-signing-flow__form .ant-select-selector,.gd-contract-signing-flow__rule-grid .ant-select-selector,.gd-contract-signing-flow__inline-form-item .ant-select-selector{border-radius:var(--gdant-radius-md)}.gd-contract-signing-flow__setting-list{gap:10px;margin-top:13px;display:grid}.gd-contract-signing-flow__setting-list.is-compact{gap:0;margin-top:0}.gd-contract-signing-flow__setting-row{min-height:30px;color:var(--gdant-neutral-700);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.gd-contract-signing-flow__setting-row>div{gap:2px;display:grid}.gd-contract-signing-flow__setting-row strong{font-size:12px;font-weight:var(--gdant-font-semibold)}.gd-contract-signing-flow__setting-row span{color:var(--gdant-neutral-700)}.gd-contract-signing-flow__setting-row div span{color:var(--gdant-neutral-500);font-size:11px}.gd-contract-signing-flow__setting-list.is-compact .gd-contract-signing-flow__setting-row{border-bottom:1px solid var(--gdant-neutral-100);min-height:32px}.gd-contract-signing-flow__setting-list.is-compact .gd-contract-signing-flow__setting-row:last-child{border-bottom:0}.gd-contract-signing-flow__rule-grid{gap:var(--gdant-spacing-sm);grid-template-columns:1fr;display:grid}.gd-contract-signing-flow__rule-grid .ant-form-item{margin-bottom:0}.gd-contract-signing-flow__inline-form-item{margin:0}.gd-contract-signing-flow__inline-form-item .ant-form-item-control-input{min-height:32px}.gd-contract-signing-flow__field-label{color:var(--gdant-neutral-600);font-size:var(--gdant-text-body-sm);margin:13px 0 7px;display:block}.gd-contract-signing-flow__segmented{width:100%;padding:var(--gdant-spacing-xs);border-radius:var(--gdant-radius-md);background:var(--gdant-neutral-100)}.gd-contract-signing-flow__segmented .ant-radio-group{width:100%;display:grid}.gd-contract-signing-flow__segmented.is-two .ant-radio-group{grid-template-columns:repeat(2,minmax(0,1fr))}.gd-contract-signing-flow__segmented.is-three .ant-radio-group{grid-template-columns:repeat(3,minmax(0,1fr))}.gd-contract-signing-flow__segmented .ant-radio-button-wrapper{min-width:0;height:28px;padding:0 var(--gdant-spacing-xs);border-radius:var(--gdant-radius-sm);color:var(--gdant-neutral-700);text-align:center;box-shadow:none;background:0 0;border:0;justify-content:center;align-items:center;display:flex}.gd-contract-signing-flow__segmented .ant-radio-button-wrapper:before{display:none}.gd-contract-signing-flow__segmented .ant-radio-button-wrapper:not(:first-child){margin-inline-start:0}.gd-contract-signing-flow__segmented .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){background:var(--gdant-primary-500);color:var(--gdant-neutral-0)}.gd-contract-signing-flow__segmented .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover,.gd-contract-signing-flow__segmented .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within{background:var(--gdant-primary-600);color:var(--gdant-neutral-0)}.gd-contract-signing-flow__segmented .ant-radio-button-wrapper-checked>span{color:inherit}.gd-contract-signing-flow__segmented .ant-radio-button-wrapper:not(.ant-radio-button-wrapper-checked):not(.ant-radio-button-wrapper-disabled):hover{color:var(--gdant-primary-600)}.gd-contract-signing-flow__segmented .ant-radio-button-wrapper-disabled{color:var(--gdant-neutral-400)}.gd-contract-signing-flow__segmented .ant-radio-button-wrapper-checked.ant-radio-button-wrapper-disabled{background:var(--gdant-neutral-200);color:var(--gdant-neutral-500)}.gd-contract-signing-flow__identity-note{margin:var(--gdant-spacing-sm) 0 0;padding:var(--gdant-spacing-sm);border-left:var(--gdant-spacing-xs) solid var(--gdant-primary-300);background:var(--gdant-neutral-50);color:var(--gdant-neutral-600);font-size:var(--gdant-text-body-sm);line-height:1.5}.gd-contract-signing-flow__seal-list{gap:var(--gdant-spacing-sm);grid-template-columns:1fr 1fr;display:grid}.gd-contract-signing-flow__seal-tile{min-height:32px;padding:var(--gdant-spacing-xs) var(--gdant-spacing-sm);border:1px solid var(--gdant-neutral-200);border-radius:var(--gdant-radius-sm);background:var(--gdant-neutral-50);color:var(--gdant-neutral-600);align-items:center;font-size:11px;display:flex}.gd-contract-signing-flow__seal-tile.ant-checkbox-wrapper-checked{border-color:var(--gdant-primary-300);background:var(--gdant-primary-50);color:var(--gdant-primary-700)}.gd-contract-signing-flow__placement-summary{align-items:center;gap:var(--gdant-spacing-sm);margin-bottom:var(--gdant-spacing-sm);padding:var(--gdant-spacing-sm) var(--gdant-spacing-md);border:1px solid var(--gdant-neutral-200);border-radius:var(--gdant-radius-md);background:var(--gdant-neutral-0);display:flex}.gd-contract-signing-flow__placement-summary strong{color:var(--gdant-neutral-800);font-size:var(--gdant-text-body-sm);font-weight:var(--gdant-font-semibold);display:block}.gd-contract-signing-flow__placement-summary p{color:var(--gdant-neutral-500);font-size:var(--gdant-text-body-sm);margin:0;line-height:1.5}.gd-contract-signing-flow__placement-count{border-radius:var(--gdant-radius-sm);background:var(--gdant-success-50);width:32px;height:32px;color:var(--gdant-success-600);font-weight:var(--gdant-font-semibold);flex:none;place-items:center;display:grid}.gd-contract-signing-flow__node-overview{place-items:center;gap:var(--gdant-spacing-sm);text-align:center;min-height:260px;padding:28px;display:grid}.gd-contract-signing-flow__node-overview-icon{border-radius:var(--gdant-radius-pill);background:var(--gdant-warning-50);width:40px;height:40px;color:var(--gdant-warning-600);font-size:var(--gdant-text-body);place-items:center;display:grid}.gd-contract-signing-flow__node-overview.is-start .gd-contract-signing-flow__node-overview-icon{background:var(--gdant-success-50);color:var(--gdant-success-600)}.gd-contract-signing-flow__node-overview.is-end .gd-contract-signing-flow__node-overview-icon{background:var(--gdant-neutral-100);color:var(--gdant-neutral-600)}.gd-contract-signing-flow__node-overview h3{margin:0;font-size:15px}.gd-contract-signing-flow__node-overview p{max-width:220px;color:var(--gdant-neutral-500);font-size:var(--gdant-text-body-sm);margin:0;line-height:1.6}.gd-contract-signing-flow__node-overview-hint{padding:0 var(--gdant-spacing-xs);border:1px solid var(--gdant-neutral-200);border-radius:var(--gdant-radius-sm);background:var(--gdant-neutral-50);color:var(--gdant-neutral-600);font-size:var(--gdant-text-body-sm);align-items:center;line-height:1.5;display:inline-flex}.gd-contract-signing-flow__empty-inspector{flex:1;min-height:260px}.gd-contract-signing-flow.is-disabled{filter:saturate(.75)}@container (width<=820px){.gd-contract-signing-flow__layout{grid-template-rows:minmax(420px,1fr) auto;grid-template-columns:1fr;overflow:auto}.gd-contract-signing-flow__inspector{border-top:1px solid var(--gdant-neutral-200);border-left:0;max-height:none}.gd-contract-signing-flow__canvas-header{align-items:flex-start}.gd-contract-signing-flow__canvas-actions{flex-wrap:wrap;justify-content:flex-end}.gd-contract-signing-flow__node.is-sign,.gd-contract-signing-flow__node.is-unknown{width:100%;min-width:0}}@container (width<=460px){.gd-contract-signing-flow__canvas-header,.gd-contract-signing-flow__inspector-header{padding:var(--gdant-spacing-sm) var(--gdant-spacing-md)}.gd-contract-signing-flow__canvas-header{flex-direction:column}.gd-contract-signing-flow__canvas-header .ant-btn{padding-inline:var(--gdant-spacing-sm)}.gd-contract-signing-flow__canvas-actions{justify-content:space-between;width:100%}.gd-contract-signing-flow__zoom-tools{margin-inline-start:auto}.gd-contract-signing-flow__canvas{min-width:0;padding-inline:12px}.gd-contract-signing-flow__canvas-scale{min-width:0}.gd-contract-signing-flow__node-actions .ant-btn{width:23px}.gd-contract-signing-flow__form-section{padding-inline:12px}}@media (prefers-reduced-motion:reduce){.gd-contract-signing-flow *{transition:none!important}}
|
|
@@ -5,6 +5,7 @@ export * from './src/coordinates';
|
|
|
5
5
|
export * from './src/location-rules';
|
|
6
6
|
export * from './src/page-layout';
|
|
7
7
|
export * from './src/signing-visuals';
|
|
8
|
+
export * from './src/template-source';
|
|
8
9
|
export * from './src/types';
|
|
9
10
|
export declare const GdAntContractSigningLocation: SFCWithInstall<typeof ContractSigningLocation>;
|
|
10
11
|
export default GdAntContractSigningLocation;
|
package/dist/types/components/contract-signing-location/src/ContractSigningLocation.vue.d.ts
CHANGED
|
@@ -33,8 +33,9 @@ declare const _default: import('vue').DefineComponent<ContractSigningLocationPro
|
|
|
33
33
|
"onUpdate:zoom"?: ((value: number) => any) | undefined;
|
|
34
34
|
"onFile-change"?: ((fileId: string) => any) | undefined;
|
|
35
35
|
}>, {
|
|
36
|
+
mode: import('./types').ContractSigningLocationMode;
|
|
36
37
|
disabled: boolean;
|
|
37
|
-
modelValue:
|
|
38
|
+
modelValue: import('./types').ContractSigningLocationInput;
|
|
38
39
|
height: string | number;
|
|
39
40
|
resizable: boolean;
|
|
40
41
|
readonly: boolean;
|
|
@@ -43,12 +44,14 @@ declare const _default: import('vue').DefineComponent<ContractSigningLocationPro
|
|
|
43
44
|
minZoom: number;
|
|
44
45
|
maxZoom: number;
|
|
45
46
|
sizeProfile: import('./types').ContractSigningSizeProfileName | import('./types').ContractSigningSizeProfile;
|
|
47
|
+
allowedPlacementTypes: ContractSigningPlacementType[];
|
|
46
48
|
contractId: string;
|
|
47
49
|
dataProvider: import('./types').ContractSigningLocationProvider;
|
|
48
50
|
autoLoad: boolean;
|
|
49
51
|
sealMinSize: number;
|
|
50
52
|
sealMaxSize: number;
|
|
51
53
|
showSubmitButton: boolean;
|
|
54
|
+
showInspector: boolean;
|
|
52
55
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
53
56
|
canvasRef: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
|
|
54
57
|
file?: import('./types').ContractSigningFile;
|
|
@@ -9,18 +9,19 @@ type __VLS_Props = {
|
|
|
9
9
|
sealSizeLimit: ContractSigningSealSizeLimit;
|
|
10
10
|
sealTypeOptions: ContractSigningSealTypeOption[];
|
|
11
11
|
sizeProfile?: ContractSigningSizeProfileName | ContractSigningSizeProfile;
|
|
12
|
+
allowedPlacementTypes: ContractSigningPlacementType[];
|
|
12
13
|
};
|
|
13
14
|
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
14
15
|
add: (type: ContractSigningPlacementType) => any;
|
|
15
16
|
remove: (id: string) => any;
|
|
16
|
-
update: (value: Partial<ContractSigningPlacement>) => any;
|
|
17
17
|
duplicate: () => any;
|
|
18
|
+
update: (value: Partial<ContractSigningPlacement>) => any;
|
|
18
19
|
locate: (id: string) => any;
|
|
19
20
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
20
21
|
onAdd?: ((type: ContractSigningPlacementType) => any) | undefined;
|
|
21
22
|
onRemove?: ((id: string) => any) | undefined;
|
|
22
|
-
onUpdate?: ((value: Partial<ContractSigningPlacement>) => any) | undefined;
|
|
23
23
|
onDuplicate?: (() => any) | undefined;
|
|
24
|
+
onUpdate?: ((value: Partial<ContractSigningPlacement>) => any) | undefined;
|
|
24
25
|
onLocate?: ((id: string) => any) | undefined;
|
|
25
26
|
}>, {
|
|
26
27
|
placement: ContractSigningPlacement;
|
package/dist/types/components/contract-signing-location/src/ContractSigningTemplatePage.vue.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ContractSigningTemplateRenderPage } from './template-source';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
page: ContractSigningTemplateRenderPage;
|
|
4
|
+
};
|
|
5
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
6
|
+
export default _default;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ContractSigningLocationError, ContractSigningLocationOutput, ContractSigningLocationRule, ContractSigningLocationValue, ContractSigningLocationValidationOptions, ContractSigningPage, ContractSigningPlacement, ContractSigningPlacementType, ContractSigningSealSizeLimit, ContractSigningSizeProfile, ContractSigningSizeProfileName, ContractSigningSealTypeOption } from './types';
|
|
1
|
+
import { ContractSigningLocationError, ContractSigningLocationOutput, ContractSigningLocationInput, ContractSigningLocationRule, ContractSigningLocationValue, ContractSigningLocationValidationOptions, ContractSigningPage, ContractSigningPlacement, ContractSigningPlacementType, ContractSigningSealSizeLimit, ContractSigningSizeProfile, ContractSigningSizeProfileName, ContractSigningSealTypeOption } from './types';
|
|
2
2
|
export declare function createContractSigningLocationValue(contractId?: string): ContractSigningLocationValue;
|
|
3
|
-
export declare function normalizeContractSigningLocationValue(value: ContractSigningLocationValue | undefined, options?: {
|
|
3
|
+
export declare function normalizeContractSigningLocationValue(value: ContractSigningLocationInput | ContractSigningLocationValue | undefined, options?: {
|
|
4
4
|
sealSizeLimit?: ContractSigningSealSizeLimit;
|
|
5
5
|
sealTypeOptions?: readonly ContractSigningSealTypeOption[];
|
|
6
6
|
}): ContractSigningLocationValue;
|
|
@@ -9,7 +9,7 @@ export declare function cloneContractSigningLocationValue(value: ContractSigning
|
|
|
9
9
|
* 把宿主页面接口的尺寸/位置统一收敛为 locationRules 使用的 PDF 逻辑坐标。
|
|
10
10
|
* 该转换只对 dataProvider 返回值执行,不能对已经受控的 modelValue 重复执行。
|
|
11
11
|
*/
|
|
12
|
-
export declare function normalizeContractSigningProviderValue(value: ContractSigningLocationValue, coordinateScale?: number): ContractSigningLocationValue;
|
|
12
|
+
export declare function normalizeContractSigningProviderValue(value: ContractSigningLocationInput | ContractSigningLocationValue, coordinateScale?: number): ContractSigningLocationValue;
|
|
13
13
|
export declare function findContractSigningPage(value: ContractSigningLocationValue, fileId: string, pageIndex: number): ContractSigningPage | undefined;
|
|
14
14
|
/** 首页按最小零基 pageIndex 取,不假设 pages[0] 已排序。 */
|
|
15
15
|
export declare function getContractSigningHomePage<T extends {
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ContractSigningFile, ContractSigningLocationError, ContractSigningTemplateFileSource } from './types';
|
|
2
|
+
export interface ContractSigningTemplateRenderPage {
|
|
3
|
+
pageIndex: number;
|
|
4
|
+
pageId: string;
|
|
5
|
+
title: string;
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
contentHtml: string;
|
|
9
|
+
errors: string[];
|
|
10
|
+
}
|
|
11
|
+
export declare function isContractSigningTemplateSource(source: ContractSigningFile['source'] | unknown): source is ContractSigningTemplateFileSource;
|
|
12
|
+
export declare function isContractSigningTemplateFile(file: Pick<ContractSigningFile, 'source'> | undefined): boolean;
|
|
13
|
+
/**
|
|
14
|
+
* 把模板设计器 DTO 转成 B 画布可消费的安全逐页快照。
|
|
15
|
+
* 每页单独构建以保留原数组下标;非法页会被跳过并由 errors 显式反馈,而不是让渲染异常逃逸。
|
|
16
|
+
*/
|
|
17
|
+
export declare function buildContractSigningTemplateRenderPages(source: ContractSigningFile['source'] | unknown): ContractSigningTemplateRenderPage[];
|
|
18
|
+
/** 模板校验错误转换成 B 的公共错误结构,供 validate/submit 与画布错误态共用。 */
|
|
19
|
+
export declare function validateContractSigningTemplateFile(file: Pick<ContractSigningFile, 'fileId' | 'fileName' | 'source'>): ContractSigningLocationError[];
|
|
20
|
+
export declare function getContractSigningTemplateDisplayError(file: Pick<ContractSigningFile, 'fileId' | 'fileName' | 'source'> | undefined): string;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { ContractTemplateData, ContractTemplateRenderValues } from '../../pro-contract-template-designer/src/types';
|
|
1
2
|
export type ContractSigningPlacementType = 'seal' | 'signature' | 'date';
|
|
3
|
+
export type ContractSigningLocationMode = 'preview' | 'placement';
|
|
2
4
|
export interface ContractSigningPage {
|
|
3
5
|
/** 规则层使用的零基页序。 */
|
|
4
6
|
pageIndex: number;
|
|
@@ -7,14 +9,41 @@ export interface ContractSigningPage {
|
|
|
7
9
|
/** locationRules 使用的 PDF 逻辑坐标宽高。 */
|
|
8
10
|
width: number;
|
|
9
11
|
height: number;
|
|
12
|
+
/** 模板文件页的稳定页面 ID;预览文件可不传。 */
|
|
13
|
+
pageId?: string;
|
|
10
14
|
previewUrl?: string;
|
|
11
15
|
thumbnailUrl?: string;
|
|
12
16
|
}
|
|
17
|
+
/** 未声明 source 的历史文件继续按页面预览图渲染。 */
|
|
18
|
+
export interface ContractSigningPreviewFileSource {
|
|
19
|
+
type: 'preview';
|
|
20
|
+
}
|
|
21
|
+
/** 直接消费模板设计器数据,不再要求宿主先把 HTML 转成 PDF。 */
|
|
22
|
+
export interface ContractSigningTemplateFileSource {
|
|
23
|
+
type: 'template';
|
|
24
|
+
template: ContractTemplateData;
|
|
25
|
+
/** 可选填写值;缺省时使用模板变量的默认值/占位文案。 */
|
|
26
|
+
values?: ContractTemplateRenderValues;
|
|
27
|
+
}
|
|
28
|
+
export type ContractSigningFileSource = ContractSigningPreviewFileSource | ContractSigningTemplateFileSource;
|
|
13
29
|
export interface ContractSigningFile {
|
|
14
30
|
fileId: string;
|
|
15
31
|
fileName: string;
|
|
16
32
|
pages: ContractSigningPage[];
|
|
33
|
+
/** 缺省等同于 `{ type: 'preview' }`,保证旧 files[] 输入无须迁移。 */
|
|
34
|
+
source?: ContractSigningFileSource;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* 模板文件输入不必重复拼 pages;组件会按模板页序与逐页原始尺寸生成页面元数据。
|
|
38
|
+
* 归一化、change、getValue 与 submit 输出仍统一为 pages 必填的 ContractSigningFile。
|
|
39
|
+
*/
|
|
40
|
+
export interface ContractSigningTemplateFileInput {
|
|
41
|
+
fileId: string;
|
|
42
|
+
fileName: string;
|
|
43
|
+
pages?: ContractSigningPage[];
|
|
44
|
+
source: ContractSigningTemplateFileSource;
|
|
17
45
|
}
|
|
46
|
+
export type ContractSigningFileInput = ContractSigningFile | ContractSigningTemplateFileInput;
|
|
18
47
|
export interface ContractSigningPlacement {
|
|
19
48
|
id: string;
|
|
20
49
|
fileId: string;
|
|
@@ -32,6 +61,12 @@ export interface ContractSigningLocationValue {
|
|
|
32
61
|
files: ContractSigningFile[];
|
|
33
62
|
placements: ContractSigningPlacement[];
|
|
34
63
|
}
|
|
64
|
+
/** modelValue / dataProvider 的宽松输入;模板文件可省略可推导的 pages。 */
|
|
65
|
+
export interface ContractSigningLocationInput {
|
|
66
|
+
contractId?: string;
|
|
67
|
+
files: ContractSigningFileInput[];
|
|
68
|
+
placements: ContractSigningPlacement[];
|
|
69
|
+
}
|
|
35
70
|
export interface ContractSigningLocationRule {
|
|
36
71
|
mustSign: boolean;
|
|
37
72
|
location: {
|
|
@@ -57,7 +92,7 @@ export interface ContractSigningLocationProvider {
|
|
|
57
92
|
/** 根据 PaaS 合同 ID 加载真实文件和页面元数据。 */
|
|
58
93
|
loadContract: (input: {
|
|
59
94
|
contractId: string;
|
|
60
|
-
}) => Promise<
|
|
95
|
+
}) => Promise<ContractSigningLocationInput>;
|
|
61
96
|
/** 页面预览可按需加载;缩略图与中间大图允许由宿主走不同尺寸接口。 */
|
|
62
97
|
loadPagePreview?: (input: {
|
|
63
98
|
contractId?: string;
|
|
@@ -108,7 +143,12 @@ export interface ContractSigningSealSizeLimit {
|
|
|
108
143
|
}
|
|
109
144
|
export interface ContractSigningLocationProps {
|
|
110
145
|
/** 当前标注数据(files + placements),与 v-model 双向绑定 */
|
|
111
|
-
modelValue?:
|
|
146
|
+
modelValue?: ContractSigningLocationInput;
|
|
147
|
+
/**
|
|
148
|
+
* preview 用作只读合同预览,默认隐藏右侧属性面板和提交入口;placement 用于配置签署位置。
|
|
149
|
+
* @default 'placement'
|
|
150
|
+
*/
|
|
151
|
+
mode?: ContractSigningLocationMode;
|
|
112
152
|
/**
|
|
113
153
|
* PaaS 合同 ID;autoLoad 时传给 dataProvider.loadContract
|
|
114
154
|
* @default ''
|
|
@@ -121,6 +161,8 @@ export interface ContractSigningLocationProps {
|
|
|
121
161
|
* @default 内置 01~05
|
|
122
162
|
*/
|
|
123
163
|
sealTypeOptions?: ContractSigningSealTypeOption[];
|
|
164
|
+
/** 宿主允许添加的位置类型;未传时允许印章、签名和日期。 */
|
|
165
|
+
allowedPlacementTypes?: ContractSigningPlacementType[];
|
|
124
166
|
/**
|
|
125
167
|
* 新建位置默认宽高;印章按章型标准毫米规格换算,签名/日期使用 profile。
|
|
126
168
|
* @default 'default'
|
|
@@ -181,6 +223,11 @@ export interface ContractSigningLocationProps {
|
|
|
181
223
|
* @default true
|
|
182
224
|
*/
|
|
183
225
|
showSubmitButton?: boolean;
|
|
226
|
+
/**
|
|
227
|
+
* 是否展示右侧签署工具与属性面板;不传时由 mode 决定,显式传入可覆盖模式默认值。
|
|
228
|
+
* @default mode === 'placement'
|
|
229
|
+
*/
|
|
230
|
+
showInspector?: boolean;
|
|
184
231
|
}
|
|
185
232
|
export interface ContractSigningLocationError {
|
|
186
233
|
code: string;
|
package/dist/types/components/pro-contract-signing-flow/src/ContractSigningFlowCanvas.vue.d.ts
CHANGED
|
@@ -4,7 +4,9 @@ type __VLS_Props = {
|
|
|
4
4
|
selectedKey?: string;
|
|
5
5
|
readonly?: boolean;
|
|
6
6
|
disabled?: boolean;
|
|
7
|
+
zoom?: number;
|
|
7
8
|
};
|
|
9
|
+
declare function fitWidth(): number;
|
|
8
10
|
declare function __VLS_template(): {
|
|
9
11
|
attrs: Partial<{}>;
|
|
10
12
|
slots: Readonly<{
|
|
@@ -18,21 +20,35 @@ declare function __VLS_template(): {
|
|
|
18
20
|
disabled?: boolean;
|
|
19
21
|
}) => any;
|
|
20
22
|
};
|
|
21
|
-
refs: {
|
|
23
|
+
refs: {
|
|
24
|
+
canvasScrollRef: HTMLDivElement;
|
|
25
|
+
canvasElementRef: HTMLDivElement;
|
|
26
|
+
};
|
|
22
27
|
rootEl: HTMLElement;
|
|
23
28
|
};
|
|
24
29
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
25
|
-
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
|
|
30
|
+
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
|
|
31
|
+
fitWidth: typeof fitWidth;
|
|
32
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
26
33
|
add: () => any;
|
|
27
34
|
select: (node: ContractSigningFlowNode) => any;
|
|
28
35
|
remove: (node: ContractSigningFlowNode) => any;
|
|
29
36
|
move: (node: ContractSigningFlowNode, direction: 1 | -1) => any;
|
|
37
|
+
"zoom-change": (zoom: number) => any;
|
|
38
|
+
"fit-width": () => any;
|
|
30
39
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
31
40
|
onAdd?: (() => any) | undefined;
|
|
32
41
|
onSelect?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
33
42
|
onRemove?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
34
43
|
onMove?: ((node: ContractSigningFlowNode, direction: 1 | -1) => any) | undefined;
|
|
35
|
-
|
|
44
|
+
"onZoom-change"?: ((zoom: number) => any) | undefined;
|
|
45
|
+
"onFit-width"?: (() => any) | undefined;
|
|
46
|
+
}>, {
|
|
47
|
+
zoom: number;
|
|
48
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
49
|
+
canvasScrollRef: HTMLDivElement;
|
|
50
|
+
canvasElementRef: HTMLDivElement;
|
|
51
|
+
}, HTMLElement>;
|
|
36
52
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
37
53
|
export default _default;
|
|
38
54
|
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
@@ -12,7 +12,114 @@ declare function __VLS_template(): {
|
|
|
12
12
|
disabled?: boolean;
|
|
13
13
|
}) => any;
|
|
14
14
|
};
|
|
15
|
-
refs: {
|
|
15
|
+
refs: {
|
|
16
|
+
rootRef: HTMLDivElement;
|
|
17
|
+
canvasRef: ({
|
|
18
|
+
$: import('vue').ComponentInternalInstance;
|
|
19
|
+
$data: {};
|
|
20
|
+
$props: {
|
|
21
|
+
readonly nodes: ContractSigningFlowNode[];
|
|
22
|
+
readonly selectedKey?: string | undefined;
|
|
23
|
+
readonly readonly?: boolean | undefined;
|
|
24
|
+
readonly disabled?: boolean | undefined;
|
|
25
|
+
readonly zoom?: number | undefined;
|
|
26
|
+
readonly onAdd?: (() => any) | undefined;
|
|
27
|
+
readonly onSelect?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
28
|
+
readonly onRemove?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
29
|
+
readonly onMove?: ((node: ContractSigningFlowNode, direction: 1 | -1) => any) | undefined;
|
|
30
|
+
readonly "onZoom-change"?: ((zoom: number) => any) | undefined;
|
|
31
|
+
readonly "onFit-width"?: (() => any) | undefined;
|
|
32
|
+
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps;
|
|
33
|
+
$attrs: import('vue').Attrs;
|
|
34
|
+
$refs: {
|
|
35
|
+
[x: string]: unknown;
|
|
36
|
+
} & {
|
|
37
|
+
canvasScrollRef: HTMLDivElement;
|
|
38
|
+
canvasElementRef: HTMLDivElement;
|
|
39
|
+
};
|
|
40
|
+
$slots: Readonly<{
|
|
41
|
+
[name: string]: import('vue').Slot<any> | undefined;
|
|
42
|
+
}>;
|
|
43
|
+
$root: import('vue').ComponentPublicInstance | null;
|
|
44
|
+
$parent: import('vue').ComponentPublicInstance | null;
|
|
45
|
+
$host: Element | null;
|
|
46
|
+
$emit: ((event: "add") => void) & ((event: "select", node: ContractSigningFlowNode) => void) & ((event: "remove", node: ContractSigningFlowNode) => void) & ((event: "move", node: ContractSigningFlowNode, direction: 1 | -1) => void) & ((event: "zoom-change", zoom: number) => void) & ((event: "fit-width") => void);
|
|
47
|
+
$el: HTMLElement;
|
|
48
|
+
$options: import('vue').ComponentOptionsBase<Readonly<{
|
|
49
|
+
nodes: ContractSigningFlowNode[];
|
|
50
|
+
selectedKey?: string;
|
|
51
|
+
readonly?: boolean;
|
|
52
|
+
disabled?: boolean;
|
|
53
|
+
zoom?: number;
|
|
54
|
+
}> & Readonly<{
|
|
55
|
+
onAdd?: (() => any) | undefined;
|
|
56
|
+
onSelect?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
57
|
+
onRemove?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
58
|
+
onMove?: ((node: ContractSigningFlowNode, direction: 1 | -1) => any) | undefined;
|
|
59
|
+
"onZoom-change"?: ((zoom: number) => any) | undefined;
|
|
60
|
+
"onFit-width"?: (() => any) | undefined;
|
|
61
|
+
}>, {
|
|
62
|
+
fitWidth: () => number;
|
|
63
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
64
|
+
add: () => any;
|
|
65
|
+
select: (node: ContractSigningFlowNode) => any;
|
|
66
|
+
remove: (node: ContractSigningFlowNode) => any;
|
|
67
|
+
move: (node: ContractSigningFlowNode, direction: 1 | -1) => any;
|
|
68
|
+
"zoom-change": (zoom: number) => any;
|
|
69
|
+
"fit-width": () => any;
|
|
70
|
+
}, string, {
|
|
71
|
+
zoom: number;
|
|
72
|
+
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
|
|
73
|
+
beforeCreate?: (() => void) | (() => void)[];
|
|
74
|
+
created?: (() => void) | (() => void)[];
|
|
75
|
+
beforeMount?: (() => void) | (() => void)[];
|
|
76
|
+
mounted?: (() => void) | (() => void)[];
|
|
77
|
+
beforeUpdate?: (() => void) | (() => void)[];
|
|
78
|
+
updated?: (() => void) | (() => void)[];
|
|
79
|
+
activated?: (() => void) | (() => void)[];
|
|
80
|
+
deactivated?: (() => void) | (() => void)[];
|
|
81
|
+
beforeDestroy?: (() => void) | (() => void)[];
|
|
82
|
+
beforeUnmount?: (() => void) | (() => void)[];
|
|
83
|
+
destroyed?: (() => void) | (() => void)[];
|
|
84
|
+
unmounted?: (() => void) | (() => void)[];
|
|
85
|
+
renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
|
|
86
|
+
renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
|
|
87
|
+
errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
|
|
88
|
+
};
|
|
89
|
+
$forceUpdate: () => void;
|
|
90
|
+
$nextTick: typeof import('vue').nextTick;
|
|
91
|
+
$watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
|
|
92
|
+
} & Readonly<{
|
|
93
|
+
zoom: number;
|
|
94
|
+
}> & Omit<Readonly<{
|
|
95
|
+
nodes: ContractSigningFlowNode[];
|
|
96
|
+
selectedKey?: string;
|
|
97
|
+
readonly?: boolean;
|
|
98
|
+
disabled?: boolean;
|
|
99
|
+
zoom?: number;
|
|
100
|
+
}> & Readonly<{
|
|
101
|
+
onAdd?: (() => any) | undefined;
|
|
102
|
+
onSelect?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
103
|
+
onRemove?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
104
|
+
onMove?: ((node: ContractSigningFlowNode, direction: 1 | -1) => any) | undefined;
|
|
105
|
+
"onZoom-change"?: ((zoom: number) => any) | undefined;
|
|
106
|
+
"onFit-width"?: (() => any) | undefined;
|
|
107
|
+
}>, "zoom" | "fitWidth"> & {
|
|
108
|
+
fitWidth: () => number;
|
|
109
|
+
} & {} & import('vue').ComponentCustomProperties & {} & {
|
|
110
|
+
$slots: Readonly<{
|
|
111
|
+
headerExtra?: (props: {
|
|
112
|
+
readonly?: boolean;
|
|
113
|
+
disabled?: boolean;
|
|
114
|
+
}) => any;
|
|
115
|
+
}> & {
|
|
116
|
+
headerExtra?: (props: {
|
|
117
|
+
readonly?: boolean;
|
|
118
|
+
disabled?: boolean;
|
|
119
|
+
}) => any;
|
|
120
|
+
};
|
|
121
|
+
}) | null;
|
|
122
|
+
};
|
|
16
123
|
rootEl: HTMLDivElement;
|
|
17
124
|
};
|
|
18
125
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
@@ -24,10 +131,15 @@ declare const __VLS_component: import('vue').DefineComponent<ContractSigningFlow
|
|
|
24
131
|
removeSignNode: (nodeKey: string) => void;
|
|
25
132
|
moveSignNode: (nodeKey: string, direction: -1 | 1) => void;
|
|
26
133
|
setNodeLocationRules: (nodeKey: string, locationRules: ContractSigningFlowLocationRule[]) => void;
|
|
134
|
+
setZoom: (value: number) => number;
|
|
135
|
+
resetZoom: () => number;
|
|
136
|
+
getZoom: () => number;
|
|
137
|
+
fitWidth: () => number;
|
|
27
138
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
28
139
|
validate: (errors: import('./types').ContractSigningFlowValidationError[]) => any;
|
|
29
140
|
"update:modelValue": (value: ContractSigningFlowDefinition) => any;
|
|
30
141
|
change: (value: ContractSigningFlowDefinition) => any;
|
|
142
|
+
"update:zoom": (value: number) => any;
|
|
31
143
|
"node-add": (node: ContractSigningFlowNode) => any;
|
|
32
144
|
"node-change": (node: ContractSigningFlowNode) => any;
|
|
33
145
|
"node-remove": (nodeKey: string) => any;
|
|
@@ -38,6 +150,7 @@ declare const __VLS_component: import('vue').DefineComponent<ContractSigningFlow
|
|
|
38
150
|
onValidate?: ((errors: import('./types').ContractSigningFlowValidationError[]) => any) | undefined;
|
|
39
151
|
"onUpdate:modelValue"?: ((value: ContractSigningFlowDefinition) => any) | undefined;
|
|
40
152
|
onChange?: ((value: ContractSigningFlowDefinition) => any) | undefined;
|
|
153
|
+
"onUpdate:zoom"?: ((value: number) => any) | undefined;
|
|
41
154
|
"onNode-add"?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
42
155
|
"onNode-change"?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
43
156
|
"onNode-remove"?: ((nodeKey: string) => any) | undefined;
|
|
@@ -48,8 +161,116 @@ declare const __VLS_component: import('vue').DefineComponent<ContractSigningFlow
|
|
|
48
161
|
disabled: boolean;
|
|
49
162
|
height: string | number;
|
|
50
163
|
readonly: boolean;
|
|
164
|
+
zoom: number;
|
|
51
165
|
requireSigningLocation: boolean;
|
|
52
|
-
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
166
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
167
|
+
rootRef: HTMLDivElement;
|
|
168
|
+
canvasRef: ({
|
|
169
|
+
$: import('vue').ComponentInternalInstance;
|
|
170
|
+
$data: {};
|
|
171
|
+
$props: {
|
|
172
|
+
readonly nodes: ContractSigningFlowNode[];
|
|
173
|
+
readonly selectedKey?: string | undefined;
|
|
174
|
+
readonly readonly?: boolean | undefined;
|
|
175
|
+
readonly disabled?: boolean | undefined;
|
|
176
|
+
readonly zoom?: number | undefined;
|
|
177
|
+
readonly onAdd?: (() => any) | undefined;
|
|
178
|
+
readonly onSelect?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
179
|
+
readonly onRemove?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
180
|
+
readonly onMove?: ((node: ContractSigningFlowNode, direction: 1 | -1) => any) | undefined;
|
|
181
|
+
readonly "onZoom-change"?: ((zoom: number) => any) | undefined;
|
|
182
|
+
readonly "onFit-width"?: (() => any) | undefined;
|
|
183
|
+
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps;
|
|
184
|
+
$attrs: import('vue').Attrs;
|
|
185
|
+
$refs: {
|
|
186
|
+
[x: string]: unknown;
|
|
187
|
+
} & {
|
|
188
|
+
canvasScrollRef: HTMLDivElement;
|
|
189
|
+
canvasElementRef: HTMLDivElement;
|
|
190
|
+
};
|
|
191
|
+
$slots: Readonly<{
|
|
192
|
+
[name: string]: import('vue').Slot<any> | undefined;
|
|
193
|
+
}>;
|
|
194
|
+
$root: import('vue').ComponentPublicInstance | null;
|
|
195
|
+
$parent: import('vue').ComponentPublicInstance | null;
|
|
196
|
+
$host: Element | null;
|
|
197
|
+
$emit: ((event: "add") => void) & ((event: "select", node: ContractSigningFlowNode) => void) & ((event: "remove", node: ContractSigningFlowNode) => void) & ((event: "move", node: ContractSigningFlowNode, direction: 1 | -1) => void) & ((event: "zoom-change", zoom: number) => void) & ((event: "fit-width") => void);
|
|
198
|
+
$el: HTMLElement;
|
|
199
|
+
$options: import('vue').ComponentOptionsBase<Readonly<{
|
|
200
|
+
nodes: ContractSigningFlowNode[];
|
|
201
|
+
selectedKey?: string;
|
|
202
|
+
readonly?: boolean;
|
|
203
|
+
disabled?: boolean;
|
|
204
|
+
zoom?: number;
|
|
205
|
+
}> & Readonly<{
|
|
206
|
+
onAdd?: (() => any) | undefined;
|
|
207
|
+
onSelect?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
208
|
+
onRemove?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
209
|
+
onMove?: ((node: ContractSigningFlowNode, direction: 1 | -1) => any) | undefined;
|
|
210
|
+
"onZoom-change"?: ((zoom: number) => any) | undefined;
|
|
211
|
+
"onFit-width"?: (() => any) | undefined;
|
|
212
|
+
}>, {
|
|
213
|
+
fitWidth: () => number;
|
|
214
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
215
|
+
add: () => any;
|
|
216
|
+
select: (node: ContractSigningFlowNode) => any;
|
|
217
|
+
remove: (node: ContractSigningFlowNode) => any;
|
|
218
|
+
move: (node: ContractSigningFlowNode, direction: 1 | -1) => any;
|
|
219
|
+
"zoom-change": (zoom: number) => any;
|
|
220
|
+
"fit-width": () => any;
|
|
221
|
+
}, string, {
|
|
222
|
+
zoom: number;
|
|
223
|
+
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
|
|
224
|
+
beforeCreate?: (() => void) | (() => void)[];
|
|
225
|
+
created?: (() => void) | (() => void)[];
|
|
226
|
+
beforeMount?: (() => void) | (() => void)[];
|
|
227
|
+
mounted?: (() => void) | (() => void)[];
|
|
228
|
+
beforeUpdate?: (() => void) | (() => void)[];
|
|
229
|
+
updated?: (() => void) | (() => void)[];
|
|
230
|
+
activated?: (() => void) | (() => void)[];
|
|
231
|
+
deactivated?: (() => void) | (() => void)[];
|
|
232
|
+
beforeDestroy?: (() => void) | (() => void)[];
|
|
233
|
+
beforeUnmount?: (() => void) | (() => void)[];
|
|
234
|
+
destroyed?: (() => void) | (() => void)[];
|
|
235
|
+
unmounted?: (() => void) | (() => void)[];
|
|
236
|
+
renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
|
|
237
|
+
renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
|
|
238
|
+
errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
|
|
239
|
+
};
|
|
240
|
+
$forceUpdate: () => void;
|
|
241
|
+
$nextTick: typeof import('vue').nextTick;
|
|
242
|
+
$watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
|
|
243
|
+
} & Readonly<{
|
|
244
|
+
zoom: number;
|
|
245
|
+
}> & Omit<Readonly<{
|
|
246
|
+
nodes: ContractSigningFlowNode[];
|
|
247
|
+
selectedKey?: string;
|
|
248
|
+
readonly?: boolean;
|
|
249
|
+
disabled?: boolean;
|
|
250
|
+
zoom?: number;
|
|
251
|
+
}> & Readonly<{
|
|
252
|
+
onAdd?: (() => any) | undefined;
|
|
253
|
+
onSelect?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
254
|
+
onRemove?: ((node: ContractSigningFlowNode) => any) | undefined;
|
|
255
|
+
onMove?: ((node: ContractSigningFlowNode, direction: 1 | -1) => any) | undefined;
|
|
256
|
+
"onZoom-change"?: ((zoom: number) => any) | undefined;
|
|
257
|
+
"onFit-width"?: (() => any) | undefined;
|
|
258
|
+
}>, "zoom" | "fitWidth"> & {
|
|
259
|
+
fitWidth: () => number;
|
|
260
|
+
} & {} & import('vue').ComponentCustomProperties & {} & {
|
|
261
|
+
$slots: Readonly<{
|
|
262
|
+
headerExtra?: (props: {
|
|
263
|
+
readonly?: boolean;
|
|
264
|
+
disabled?: boolean;
|
|
265
|
+
}) => any;
|
|
266
|
+
}> & {
|
|
267
|
+
headerExtra?: (props: {
|
|
268
|
+
readonly?: boolean;
|
|
269
|
+
disabled?: boolean;
|
|
270
|
+
}) => any;
|
|
271
|
+
};
|
|
272
|
+
}) | null;
|
|
273
|
+
}, HTMLDivElement>;
|
|
53
274
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
54
275
|
export default _default;
|
|
55
276
|
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
@@ -1,4 +1,19 @@
|
|
|
1
1
|
import { ContractSigningFlowIdentity, ContractSigningFlowSignAction } from './types';
|
|
2
|
+
/** 签署流程画布缩放边界与步进;缩放只影响画布视觉,不进入流程 DTO。 */
|
|
3
|
+
export declare const CONTRACT_SIGNING_FLOW_MIN_ZOOM = 0.5;
|
|
4
|
+
export declare const CONTRACT_SIGNING_FLOW_MAX_ZOOM = 1.5;
|
|
5
|
+
export declare const CONTRACT_SIGNING_FLOW_ZOOM_STEP = 0.1;
|
|
6
|
+
export type ContractSigningFlowZoomShortcut = 'in' | 'out' | 'reset';
|
|
7
|
+
/** 根快捷键只响应画布自身,不能截获 Inspector 等表单控件的输入。 */
|
|
8
|
+
export declare function isContractSigningFlowInteractiveTarget(target: EventTarget | null): boolean;
|
|
9
|
+
export declare function resolveContractSigningFlowZoomShortcutForTarget(event: Pick<KeyboardEvent, 'altKey' | 'code' | 'ctrlKey' | 'key' | 'metaKey' | 'target'>): ContractSigningFlowZoomShortcut | undefined;
|
|
10
|
+
/**
|
|
11
|
+
* 统一缩放归一化,避免按钮/滚轮连续运算产生 0.799999 等浮点长尾。
|
|
12
|
+
* 非法值回落 100%,公共 API 与受控 prop 共用同一规则。
|
|
13
|
+
*/
|
|
14
|
+
export declare function normalizeContractSigningFlowZoom(value: unknown): number;
|
|
15
|
+
/** 只识别组件内 Ctrl/⌘ 缩放组合键,普通按键继续交给输入框和浏览器。 */
|
|
16
|
+
export declare function resolveContractSigningFlowZoomShortcut(event: Pick<KeyboardEvent, 'altKey' | 'code' | 'ctrlKey' | 'key' | 'metaKey'>): ContractSigningFlowZoomShortcut | undefined;
|
|
2
17
|
export declare const CONTRACT_SIGNING_FLOW_SIGN_ACTIONS: Array<{
|
|
3
18
|
value: ContractSigningFlowSignAction;
|
|
4
19
|
label: string;
|