@guodun/antdv 1.3.0 → 1.3.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/src/ContractSigningLocation.vue.mjs +241 -236
- package/dist/es/components/pro-contract-signing-flow/src/ContractSigningFlowCanvas.vue.mjs +22 -19
- package/dist/es/components/pro-contract-signing-flow/src/ContractSigningFlowInspector.vue.mjs +173 -147
- package/dist/es/components/pro-contract-signing-flow/src/ProContractSigningFlow.vue.mjs +83 -74
- package/dist/es/components/pro-contract-signing-flow/src/composables/use-contract-signing-flow.mjs +32 -32
- package/dist/es/components/pro-contract-signing-flow/style/index.css +1 -1
- package/dist/es/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.mjs +8 -4
- package/dist/es/components/pro-contract-template-designer/src/extensions/word-paste.mjs +24 -20
- package/dist/es/components/pro-contract-template-designer/src/utils/word-paste.mjs +112 -112
- package/dist/es/components/pro-contract-template-designer/style/index.css +1 -1
- package/dist/lib/components/contract-signing-location/src/ContractSigningLocation.vue.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/ProContractSigningFlow.vue.cjs +1 -1
- package/dist/lib/components/pro-contract-signing-flow/src/composables/use-contract-signing-flow.cjs +1 -1
- package/dist/lib/components/pro-contract-signing-flow/style/index.css +1 -1
- package/dist/lib/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.cjs +1 -1
- 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/word-paste.cjs +2 -2
- package/dist/lib/components/pro-contract-template-designer/style/index.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/src/ContractSigningLocation.vue.d.ts +1 -0
- package/dist/types/components/contract-signing-location/src/types.d.ts +5 -0
- package/dist/types/components/pro-contract-signing-flow/src/ContractSigningFlowCanvas.vue.d.ts +24 -1
- package/dist/types/components/pro-contract-signing-flow/src/ContractSigningFlowInspector.vue.d.ts +1 -0
- package/dist/types/components/pro-contract-signing-flow/src/ProContractSigningFlow.vue.d.ts +25 -1
- package/dist/types/components/pro-contract-signing-flow/src/composables/use-contract-signing-flow.d.ts +6 -2
- package/dist/types/components/pro-contract-signing-flow/src/types.d.ts +5 -0
- package/dist/types/components/pro-contract-template-designer/src/ContractTemplateRendererHeader.vue.d.ts +1 -1
- package/dist/types/components/pro-contract-template-designer/src/ProContractTemplateRenderer.vue.d.ts +1 -1
- package/dist/types/components/pro-contract-template-designer/src/extensions/word-paste.d.ts +1 -1
- package/dist/types/components/pro-contract-template-designer/src/types.d.ts +1 -1
- package/dist/types/components/pro-contract-template-designer/src/utils/word-paste.d.ts +2 -0
- package/package.json +1 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import e from "./ContractSigningFlowCanvas.mjs";
|
|
2
2
|
import t from "./ContractSigningFlowInspector.mjs";
|
|
3
3
|
import { normalizeContractSigningFlow as n, useContractSigningFlow as r } from "./composables/use-contract-signing-flow.mjs";
|
|
4
|
-
import { computed as i, createElementBlock as a, createElementVNode as o, createVNode as s, defineComponent as c,
|
|
4
|
+
import { computed as i, createElementBlock as a, createElementVNode as o, createVNode as s, defineComponent as c, guardReactiveProps as l, normalizeClass as u, normalizeProps as d, normalizeStyle as f, openBlock as p, renderSlot as m, unref as h, watch as g, withCtx as _ } from "vue";
|
|
5
5
|
//#region src/components/pro-contract-signing-flow/src/ProContractSigningFlow.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
-
var
|
|
6
|
+
var v = { class: "gd-contract-signing-flow__layout" }, y = /* @__PURE__ */ c({
|
|
7
7
|
name: "ProContractSigningFlow",
|
|
8
8
|
__name: "ProContractSigningFlow",
|
|
9
9
|
props: {
|
|
@@ -16,7 +16,11 @@ var m = { class: "gd-contract-signing-flow__layout" }, h = /* @__PURE__ */ c({
|
|
|
16
16
|
type: Boolean,
|
|
17
17
|
default: !1
|
|
18
18
|
},
|
|
19
|
-
height: { default: 720 }
|
|
19
|
+
height: { default: 720 },
|
|
20
|
+
requireSigningLocation: {
|
|
21
|
+
type: Boolean,
|
|
22
|
+
default: !0
|
|
23
|
+
}
|
|
20
24
|
},
|
|
21
25
|
emits: [
|
|
22
26
|
"update:modelValue",
|
|
@@ -29,115 +33,120 @@ var m = { class: "gd-contract-signing-flow__layout" }, h = /* @__PURE__ */ c({
|
|
|
29
33
|
"node-select",
|
|
30
34
|
"placement-request"
|
|
31
35
|
],
|
|
32
|
-
setup(c, { expose:
|
|
33
|
-
let
|
|
34
|
-
function
|
|
36
|
+
setup(c, { expose: y, emit: b }) {
|
|
37
|
+
let x = c, S = b, C = r(x.modelValue), w = i(() => ({ height: typeof x.height == "number" ? `${x.height}px` : x.height }));
|
|
38
|
+
function T(e) {
|
|
35
39
|
return JSON.parse(JSON.stringify(e));
|
|
36
40
|
}
|
|
37
|
-
function
|
|
38
|
-
|
|
41
|
+
function E() {
|
|
42
|
+
C.value.value.nodeList.some((e) => e.key === C.selectedKey.value) || (C.selectedKey.value = C.value.value.nodeList.find((e) => e.type === "sign")?.key || C.value.value.nodeList[0]?.key);
|
|
39
43
|
}
|
|
40
|
-
|
|
41
|
-
|
|
44
|
+
g(() => x.modelValue, (e) => {
|
|
45
|
+
C.replace(e), E();
|
|
42
46
|
}, { deep: !0 });
|
|
43
|
-
function
|
|
44
|
-
return n(
|
|
47
|
+
function D() {
|
|
48
|
+
return n(C.value.value);
|
|
45
49
|
}
|
|
46
|
-
function
|
|
47
|
-
let e =
|
|
48
|
-
|
|
50
|
+
function O() {
|
|
51
|
+
let e = D();
|
|
52
|
+
S("update:modelValue", e), S("change", e);
|
|
49
53
|
}
|
|
50
|
-
function
|
|
51
|
-
|
|
54
|
+
function k(e) {
|
|
55
|
+
x.disabled || (C.selectedKey.value = e?.key, S("node-select", e ? T(e) : void 0));
|
|
52
56
|
}
|
|
53
|
-
function
|
|
54
|
-
if (
|
|
55
|
-
let e =
|
|
56
|
-
return
|
|
57
|
+
function A() {
|
|
58
|
+
if (x.readonly || x.disabled) return T(C.value.value.nodeList.find((e) => e.type === "sign"));
|
|
59
|
+
let e = C.addSignNode();
|
|
60
|
+
return O(), S("node-add", T(e)), S("node-select", T(e)), T(e);
|
|
57
61
|
}
|
|
58
|
-
function
|
|
59
|
-
|
|
62
|
+
function j(e) {
|
|
63
|
+
x.readonly || x.disabled || (C.removeSignNode(e), O(), S("node-remove", e), S("node-select", C.selectedNode.value ? T(C.selectedNode.value) : void 0));
|
|
60
64
|
}
|
|
61
|
-
function
|
|
62
|
-
|
|
65
|
+
function M(e, t) {
|
|
66
|
+
x.readonly || x.disabled || (C.moveSignNode(e, t), O(), S("node-move", e, t));
|
|
63
67
|
}
|
|
64
|
-
function
|
|
65
|
-
if (
|
|
66
|
-
let t =
|
|
67
|
-
t < 0 || (
|
|
68
|
+
function N(e) {
|
|
69
|
+
if (x.readonly || x.disabled) return;
|
|
70
|
+
let t = C.value.value.nodeList.findIndex((t) => t.key === e.key);
|
|
71
|
+
t < 0 || (C.value.value.nodeList[t] = n({
|
|
68
72
|
key: null,
|
|
69
73
|
name: null,
|
|
70
74
|
description: null,
|
|
71
75
|
nodeList: [e],
|
|
72
76
|
connectList: []
|
|
73
|
-
}).nodeList[0],
|
|
77
|
+
}).nodeList[0], O(), S("node-change", T(C.value.value.nodeList[t])));
|
|
74
78
|
}
|
|
75
|
-
function
|
|
76
|
-
|
|
79
|
+
function P(e, t) {
|
|
80
|
+
M(e.key, t);
|
|
77
81
|
}
|
|
78
|
-
function
|
|
79
|
-
let e =
|
|
80
|
-
!e || e.type !== "sign" ||
|
|
81
|
-
node:
|
|
82
|
-
locationRules:
|
|
82
|
+
function F() {
|
|
83
|
+
let e = C.selectedNode.value;
|
|
84
|
+
!e || e.type !== "sign" || x.disabled || S("placement-request", {
|
|
85
|
+
node: T(e),
|
|
86
|
+
locationRules: T(e.config.locationRules || [])
|
|
83
87
|
});
|
|
84
88
|
}
|
|
85
|
-
function
|
|
86
|
-
if (
|
|
87
|
-
|
|
88
|
-
let n =
|
|
89
|
-
n &&
|
|
89
|
+
function I(e, t) {
|
|
90
|
+
if (x.readonly || x.disabled) return;
|
|
91
|
+
C.setNodeLocationRules(e, t), O();
|
|
92
|
+
let n = C.value.value.nodeList.find((t) => t.key === e);
|
|
93
|
+
n && S("node-change", T(n));
|
|
90
94
|
}
|
|
91
|
-
function
|
|
92
|
-
return
|
|
95
|
+
function L() {
|
|
96
|
+
return D();
|
|
93
97
|
}
|
|
94
|
-
function
|
|
95
|
-
|
|
98
|
+
function R(e) {
|
|
99
|
+
C.replace(e), E(), O();
|
|
96
100
|
}
|
|
97
|
-
function
|
|
98
|
-
let e =
|
|
99
|
-
return
|
|
100
|
-
}
|
|
101
|
-
return
|
|
102
|
-
getValue:
|
|
103
|
-
setValue:
|
|
104
|
-
validate:
|
|
105
|
-
addSignNode:
|
|
106
|
-
removeSignNode:
|
|
107
|
-
moveSignNode:
|
|
108
|
-
setNodeLocationRules:
|
|
109
|
-
}), (n, r) => (
|
|
110
|
-
class:
|
|
101
|
+
function z() {
|
|
102
|
+
let e = C.validate({ requireLocation: x.requireSigningLocation });
|
|
103
|
+
return S("validate", e), e;
|
|
104
|
+
}
|
|
105
|
+
return y({
|
|
106
|
+
getValue: L,
|
|
107
|
+
setValue: R,
|
|
108
|
+
validate: z,
|
|
109
|
+
addSignNode: A,
|
|
110
|
+
removeSignNode: j,
|
|
111
|
+
moveSignNode: M,
|
|
112
|
+
setNodeLocationRules: I
|
|
113
|
+
}), (n, r) => (p(), a("div", {
|
|
114
|
+
class: u(["gd-contract-signing-flow", {
|
|
111
115
|
"is-readonly": c.readonly,
|
|
112
116
|
"is-disabled": c.disabled
|
|
113
117
|
}]),
|
|
114
|
-
style:
|
|
115
|
-
}, [o("div",
|
|
116
|
-
nodes:
|
|
117
|
-
"selected-key":
|
|
118
|
+
style: f(w.value)
|
|
119
|
+
}, [o("div", v, [s(e, {
|
|
120
|
+
nodes: h(C).value.value.nodeList,
|
|
121
|
+
"selected-key": h(C).selectedKey.value,
|
|
118
122
|
readonly: c.readonly,
|
|
119
123
|
disabled: c.disabled,
|
|
120
|
-
onSelect:
|
|
121
|
-
onAdd:
|
|
122
|
-
onRemove: r[0] ||= (e) =>
|
|
123
|
-
onMove:
|
|
124
|
-
},
|
|
124
|
+
onSelect: k,
|
|
125
|
+
onAdd: A,
|
|
126
|
+
onRemove: r[0] ||= (e) => j(e.key),
|
|
127
|
+
onMove: P
|
|
128
|
+
}, {
|
|
129
|
+
headerExtra: _((e) => [m(n.$slots, "headerExtra", d(l(e)))]),
|
|
130
|
+
_: 3
|
|
131
|
+
}, 8, [
|
|
125
132
|
"nodes",
|
|
126
133
|
"selected-key",
|
|
127
134
|
"readonly",
|
|
128
135
|
"disabled"
|
|
129
136
|
]), s(t, {
|
|
130
|
-
node:
|
|
137
|
+
node: h(C).selectedNode.value,
|
|
131
138
|
readonly: c.readonly,
|
|
132
139
|
disabled: c.disabled,
|
|
133
|
-
|
|
134
|
-
|
|
140
|
+
"show-placement": c.requireSigningLocation,
|
|
141
|
+
onChange: N,
|
|
142
|
+
onPlacementRequest: F
|
|
135
143
|
}, null, 8, [
|
|
136
144
|
"node",
|
|
137
145
|
"readonly",
|
|
138
|
-
"disabled"
|
|
146
|
+
"disabled",
|
|
147
|
+
"show-placement"
|
|
139
148
|
])])], 6));
|
|
140
149
|
}
|
|
141
150
|
});
|
|
142
151
|
//#endregion
|
|
143
|
-
export {
|
|
152
|
+
export { y as default };
|
package/dist/es/components/pro-contract-signing-flow/src/composables/use-contract-signing-flow.mjs
CHANGED
|
@@ -155,116 +155,116 @@ function h(e) {
|
|
|
155
155
|
function g(e) {
|
|
156
156
|
return e === "start" ? 0 : e === "sign" ? 1 : e === "end" ? 3 : 2;
|
|
157
157
|
}
|
|
158
|
-
function _(e) {
|
|
159
|
-
let
|
|
160
|
-
|
|
158
|
+
function _(e, t) {
|
|
159
|
+
let n = [], r = e.nodeList || [], i = r.filter((e) => e.type === "start"), a = r.filter((e) => e.type === "end"), o = r.filter((e) => e.type === "sign");
|
|
160
|
+
i.length !== 1 && n.push({
|
|
161
161
|
type: "flow",
|
|
162
162
|
code: "FLOW_START_COUNT_INVALID",
|
|
163
163
|
message: "流程必须包含一个开始节点"
|
|
164
|
-
}),
|
|
164
|
+
}), a.length !== 1 && n.push({
|
|
165
165
|
type: "flow",
|
|
166
166
|
code: "FLOW_END_COUNT_INVALID",
|
|
167
167
|
message: "流程必须包含一个结束节点"
|
|
168
|
-
}),
|
|
168
|
+
}), o.length || n.push({
|
|
169
169
|
type: "flow",
|
|
170
170
|
code: "FLOW_SIGN_NODE_REQUIRED",
|
|
171
171
|
message: "流程至少需要一个签署节点"
|
|
172
|
-
}),
|
|
172
|
+
}), r[0]?.type !== "start" && n.push({
|
|
173
173
|
type: "flow",
|
|
174
174
|
code: "FLOW_START_NOT_FIRST",
|
|
175
175
|
message: "开始节点必须位于首位"
|
|
176
|
-
}),
|
|
176
|
+
}), r.length && r[r.length - 1]?.type !== "end" && n.push({
|
|
177
177
|
type: "flow",
|
|
178
178
|
code: "FLOW_END_NOT_LAST",
|
|
179
179
|
message: "结束节点必须位于末位"
|
|
180
180
|
});
|
|
181
|
-
let
|
|
182
|
-
for (let e of
|
|
183
|
-
if (
|
|
181
|
+
let s = /* @__PURE__ */ new Set(), c = /* @__PURE__ */ new Set();
|
|
182
|
+
for (let e of r) {
|
|
183
|
+
if (s.has(e.key) && n.push({
|
|
184
184
|
type: "flow",
|
|
185
185
|
code: "FLOW_NODE_KEY_DUPLICATE",
|
|
186
186
|
nodeKey: e.key,
|
|
187
187
|
message: "节点 key 不能重复"
|
|
188
|
-
}),
|
|
188
|
+
}), s.add(e.key), e.type !== "start" && e.type !== "sign" && e.type !== "end" && n.push({
|
|
189
189
|
type: "node",
|
|
190
190
|
code: "FLOW_NODE_TYPE_UNSUPPORTED",
|
|
191
191
|
nodeKey: e.key,
|
|
192
192
|
message: "不支持的节点类型"
|
|
193
|
-
}), e.customKey && (
|
|
193
|
+
}), e.customKey && (c.has(e.customKey) && n.push({
|
|
194
194
|
type: "flow",
|
|
195
195
|
code: "FLOW_CUSTOM_KEY_DUPLICATE",
|
|
196
196
|
nodeKey: e.key,
|
|
197
197
|
message: "节点标识不能重复"
|
|
198
|
-
}),
|
|
199
|
-
let
|
|
200
|
-
e.name.trim() ||
|
|
198
|
+
}), c.add(e.customKey)), e.type !== "sign") continue;
|
|
199
|
+
let r = e.identity;
|
|
200
|
+
e.name.trim() || n.push({
|
|
201
201
|
type: "node",
|
|
202
202
|
code: "FLOW_NODE_NAME_REQUIRED",
|
|
203
203
|
nodeKey: e.key,
|
|
204
204
|
message: "签署节点名称不能为空"
|
|
205
|
-
}), e.customKey?.trim() ||
|
|
205
|
+
}), e.customKey?.trim() || n.push({
|
|
206
206
|
type: "node",
|
|
207
207
|
code: "FLOW_NODE_CUSTOM_KEY_REQUIRED",
|
|
208
208
|
nodeKey: e.key,
|
|
209
209
|
message: "签署节点标识不能为空"
|
|
210
|
-
}),
|
|
210
|
+
}), r !== "person" && r !== "company" && n.push({
|
|
211
211
|
type: "node",
|
|
212
212
|
code: "FLOW_NODE_IDENTITY_INVALID",
|
|
213
213
|
nodeKey: e.key,
|
|
214
214
|
message: "签署主体必须是个人或企业"
|
|
215
215
|
});
|
|
216
|
-
let
|
|
217
|
-
|
|
216
|
+
let i = e.config.signRule;
|
|
217
|
+
i ? (i.mustSeal && i.cannotSeal && n.push({
|
|
218
218
|
type: "node",
|
|
219
219
|
code: "FLOW_SIGN_RULE_CONFLICT",
|
|
220
220
|
nodeKey: e.key,
|
|
221
221
|
message: "印章规则不能同时必选和禁止"
|
|
222
|
-
}),
|
|
222
|
+
}), i.mustSignature && i.cannotSignature && n.push({
|
|
223
223
|
type: "node",
|
|
224
224
|
code: "FLOW_SIGN_RULE_CONFLICT",
|
|
225
225
|
nodeKey: e.key,
|
|
226
226
|
message: "签名规则不能同时必选和禁止"
|
|
227
|
-
}),
|
|
227
|
+
}), i.mustSeal && !i.sealType.length && n.push({
|
|
228
228
|
type: "node",
|
|
229
229
|
code: "FLOW_SIGN_RULE_SEAL_TYPE_REQUIRED",
|
|
230
230
|
nodeKey: e.key,
|
|
231
231
|
message: "必须盖章时至少选择一种印章类型"
|
|
232
|
-
}),
|
|
232
|
+
}), i.cannotSeal && i.sealType.length && n.push({
|
|
233
233
|
type: "node",
|
|
234
234
|
code: "FLOW_SIGN_RULE_SEAL_TYPE_FORBIDDEN",
|
|
235
235
|
nodeKey: e.key,
|
|
236
236
|
message: "禁止盖章时不能指定印章类型"
|
|
237
|
-
}),
|
|
237
|
+
}), i.noneVerify && (i.smsVerify || i.faceVerify || i.passwordVerify) && n.push({
|
|
238
238
|
type: "node",
|
|
239
239
|
code: "FLOW_VERIFY_RULE_CONFLICT",
|
|
240
240
|
nodeKey: e.key,
|
|
241
241
|
message: "免验证不能与短信、人脸或密码验证同时启用"
|
|
242
|
-
}),
|
|
242
|
+
}), r === "person" && (i.mustSeal || i.sealType.length || i.perforationSealEnable) && n.push({
|
|
243
243
|
type: "node",
|
|
244
244
|
code: "FLOW_PERSON_SEAL_FORBIDDEN",
|
|
245
245
|
nodeKey: e.key,
|
|
246
246
|
message: "个人节点不能配置印章或骑缝章"
|
|
247
|
-
})) :
|
|
247
|
+
})) : n.push({
|
|
248
248
|
type: "node",
|
|
249
249
|
code: "FLOW_SIGN_RULE_REQUIRED",
|
|
250
250
|
nodeKey: e.key,
|
|
251
251
|
message: "签署规则不能为空"
|
|
252
252
|
});
|
|
253
|
-
let
|
|
254
|
-
|
|
253
|
+
let a = e.config.locationRules || [];
|
|
254
|
+
!a.length && t?.requireLocation !== !1 && n.push({
|
|
255
255
|
type: "node",
|
|
256
256
|
code: "FLOW_LOCATION_REQUIRED",
|
|
257
257
|
nodeKey: e.key,
|
|
258
258
|
message: "请至少设置一个签署位置"
|
|
259
259
|
});
|
|
260
|
-
for (let
|
|
260
|
+
for (let t of a) y(n, e, t, i);
|
|
261
261
|
}
|
|
262
|
-
let
|
|
263
|
-
return (e.connectList.length !==
|
|
262
|
+
let l = v(r);
|
|
263
|
+
return (e.connectList.length !== l.length || e.connectList.some((e, t) => e.sourceKey !== l[t].sourceKey || e.targetKey !== l[t].targetKey)) && n.push({
|
|
264
264
|
type: "flow",
|
|
265
265
|
code: "FLOW_CONNECT_INVALID",
|
|
266
266
|
message: "流程连接必须与节点顺序一致"
|
|
267
|
-
}),
|
|
267
|
+
}), n;
|
|
268
268
|
}
|
|
269
269
|
function v(e) {
|
|
270
270
|
return e.slice(0, -1).map((t, n) => ({
|
|
@@ -358,7 +358,7 @@ function b(r) {
|
|
|
358
358
|
let n = i.value.nodeList.find((t) => t.key === e);
|
|
359
359
|
!n || n.type !== "sign" || (n.config.locationRules = o(t));
|
|
360
360
|
},
|
|
361
|
-
validate: () => _(i.value)
|
|
361
|
+
validate: (e) => _(i.value, e)
|
|
362
362
|
};
|
|
363
363
|
}
|
|
364
364
|
//#endregion
|
|
@@ -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-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-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 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{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);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}}
|
package/dist/es/components/pro-contract-template-designer/src/ProContractTemplateDesigner.vue.mjs
CHANGED
|
@@ -53,7 +53,10 @@ import { useElementSize as Jt } from "@vueuse/core";
|
|
|
53
53
|
var Yt = ["aria-label", "aria-expanded"], Xt = { class: "gd-contract-template-designer__panel-stack" }, Zt = { class: "gd-contract-template-designer__panel gd-contract-template-designer__panel--navigation" }, Qt = { class: "gd-contract-template-designer__panel-head" }, $t = { class: "gd-contract-template-designer__panel-actions" }, en = ["onClick"], tn = { class: "gd-contract-template-designer__page-nav-actions" }, nn = {
|
|
54
54
|
key: 0,
|
|
55
55
|
class: "gd-contract-template-designer__page-config"
|
|
56
|
-
}, rn = { class: "gd-contract-template-designer__form-row" }, an = { class: "gd-contract-template-designer__page-size-note" }, on = { class: "gd-contract-template-designer__panel gd-contract-template-designer__panel--navigation" }, sn = { class: "gd-contract-template-designer__panel-head" }, cn = ["onClick"], ln = {
|
|
56
|
+
}, rn = { class: "gd-contract-template-designer__form-row" }, an = { class: "gd-contract-template-designer__page-size-note" }, on = { class: "gd-contract-template-designer__panel gd-contract-template-designer__panel--navigation" }, sn = { class: "gd-contract-template-designer__panel-head" }, cn = ["onClick"], ln = {
|
|
57
|
+
key: 0,
|
|
58
|
+
class: "gd-contract-template-designer__panel gd-contract-template-designer__panel--navigation"
|
|
59
|
+
}, un = { class: "gd-contract-template-designer__panel-head" }, dn = ["onClick"], fn = { class: "gd-contract-template-designer__workspace-header" }, pn = { class: "gd-contract-template-designer__workspace-meta" }, mn = { class: "gd-contract-template-designer__workspace-actions" }, hn = { class: "gd-contract-template-designer__workspace-controls" }, gn = { class: "gd-contract-template-designer__zoom" }, _n = { class: "gd-contract-template-designer__workspace-buttons" }, vn = { class: "gd-contract-template-designer__toolbar" }, yn = { class: "gd-contract-template-designer__toolbar-group" }, bn = { class: "gd-contract-template-designer__toolbar-group gd-contract-template-designer__toolbar-group--style" }, xn = { class: "gd-contract-template-designer__toolbar-group gd-contract-template-designer__toolbar-group--format" }, Sn = { class: "gd-contract-template-designer__toolbar-group gd-contract-template-designer__toolbar-group--insert" }, Cn = { class: "gd-contract-template-designer__popover gd-contract-template-designer__control-insert-popover" }, wn = { class: "gd-contract-template-designer__text-menu-control-options" }, Tn = ["aria-label", "onClick"], En = { class: "gd-contract-template-designer__popover gd-contract-template-designer__image-insert-popover" }, Dn = {
|
|
57
60
|
class: "gd-contract-template-designer__image-size-fields",
|
|
58
61
|
role: "group",
|
|
59
62
|
"aria-label": "图片尺寸"
|
|
@@ -502,6 +505,7 @@ var Yt = ["aria-label", "aria-expanded"], Xt = { class: "gd-contract-template-de
|
|
|
502
505
|
return oo([...U.value, i]), P.value = t, Z(i.id), _("signing-placement-add", X(i)), i;
|
|
503
506
|
}
|
|
504
507
|
function co(e, t, n, r) {
|
|
508
|
+
if (!c.showSigningPlacementTools) return;
|
|
505
509
|
let i = qe(t.type);
|
|
506
510
|
so(t.type, e, {
|
|
507
511
|
x: n - i.width / 2,
|
|
@@ -1533,7 +1537,7 @@ var Yt = ["aria-label", "aria-expanded"], Xt = { class: "gd-contract-template-de
|
|
|
1533
1537
|
onClick: (t) => Is(e)
|
|
1534
1538
|
}, [m("span", null, C(e.label), 1), m("small", null, C(e.type || "text") + " · " + C(e.key), 1)], 10, cn))), 128))
|
|
1535
1539
|
]),
|
|
1536
|
-
|
|
1540
|
+
c.showSigningPlacementTools ? (b(), p("section", ln, [
|
|
1537
1541
|
m("div", un, [s[84] ||= m("strong", null, "签署位置", -1), g(w(qt), null, {
|
|
1538
1542
|
default: T(() => [h(C(oa.value.length), 1)]),
|
|
1539
1543
|
_: 1
|
|
@@ -1549,7 +1553,7 @@ var Yt = ["aria-label", "aria-expanded"], Xt = { class: "gd-contract-template-de
|
|
|
1549
1553
|
class: y(["gd-contract-template-designer__nav-item", { "is-active": N.value === e.placement.id }]),
|
|
1550
1554
|
onClick: (t) => Rs(e.placement.id)
|
|
1551
1555
|
}, [m("span", null, C(e.label), 1), m("small", null, C(e.detail) + " · x" + C(e.placement.x) + " y" + C(e.placement.y), 1)], 10, dn))), 128))
|
|
1552
|
-
])
|
|
1556
|
+
])) : f("", !0)
|
|
1553
1557
|
])], 2),
|
|
1554
1558
|
m("main", {
|
|
1555
1559
|
ref_key: "workspaceElement",
|
|
@@ -2315,7 +2319,7 @@ var Yt = ["aria-label", "aria-expanded"], Xt = { class: "gd-contract-template-de
|
|
|
2315
2319
|
onDragstart: (t) => uo(t, e),
|
|
2316
2320
|
onClick: (t) => lo(e)
|
|
2317
2321
|
}, [m("span", Zn, [(b(), d(It(w(jt)(e.type))))]), m("span", Qn, [m("span", $n, C(e.label), 1), m("small", null, C(w(Be)[e.type]) + " · 页面坐标", 1)])], 40, Xn))), 128))])) : f("", !0),
|
|
2318
|
-
aa.value ? (b(), d(kt, {
|
|
2322
|
+
c.showSigningPlacementTools && aa.value ? (b(), d(kt, {
|
|
2319
2323
|
key: 1,
|
|
2320
2324
|
placement: aa.value,
|
|
2321
2325
|
"page-size": sa.value,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { detectClipboardHtmlSource as e,
|
|
1
|
+
import { detectClipboardHtmlSource as e, extractRtfImageDataUrls as t, normalizeWordClipboardHtml as n, plainTextToSafeHtml as r, readClipboardImageFiles as i } from "../utils/word-paste.mjs";
|
|
2
2
|
import { escapeHtmlAttribute as a } from "../utils/html.mjs";
|
|
3
3
|
import { Extension as o } from "@tiptap/core";
|
|
4
4
|
import { Plugin as s, PluginKey as c } from "@tiptap/pm/state";
|
|
@@ -21,7 +21,7 @@ var l = 0, u = "application/x-gd-contract-template", d = `contract-template-${Da
|
|
|
21
21
|
return t && (t.source = r.source, t.recoveredRtfImages = r.recoveredImageCount), r.html;
|
|
22
22
|
},
|
|
23
23
|
addProseMirrorPlugins() {
|
|
24
|
-
let
|
|
24
|
+
let t = this.editor, o = this.storage, c = this.options.processImageFile;
|
|
25
25
|
return [new s({
|
|
26
26
|
key: f,
|
|
27
27
|
state: {
|
|
@@ -62,40 +62,41 @@ var l = 0, u = "application/x-gd-contract-template", d = `contract-template-${Da
|
|
|
62
62
|
recoveredRtfImages: 0,
|
|
63
63
|
trustedInternal: r.getData(u) === d || i.includes(`data-gd-contract-copy="${d}"`) || i.includes(`data-gd-contract-copy='${d}'`)
|
|
64
64
|
};
|
|
65
|
-
return
|
|
66
|
-
|
|
65
|
+
return o.pending = a, queueMicrotask(() => {
|
|
66
|
+
o.pending === a && (o.pending = void 0);
|
|
67
67
|
}), !1;
|
|
68
68
|
}
|
|
69
69
|
},
|
|
70
70
|
handlePaste: (e, s) => {
|
|
71
|
-
let u =
|
|
71
|
+
let u = o.pending;
|
|
72
72
|
if (!u) return !1;
|
|
73
|
-
let d = u.files.length ? u.files : _(s.clipboardData),
|
|
74
|
-
if (
|
|
73
|
+
let d = u.files.length ? u.files : _(s.clipboardData), p = u.recoveredRtfImages || v(u.rtf), m = d.length > 0 && p === 0 && !u.trustedInternal;
|
|
74
|
+
if (o.pending = void 0, !m) return !1;
|
|
75
75
|
s.preventDefault();
|
|
76
|
-
let
|
|
77
|
-
token:
|
|
76
|
+
let y = `word-paste-${++l}`, b = {
|
|
77
|
+
token: y,
|
|
78
78
|
from: e.state.selection.from,
|
|
79
79
|
to: e.state.selection.to
|
|
80
80
|
};
|
|
81
81
|
return e.dispatch(e.state.tr.setMeta(f, {
|
|
82
82
|
type: "set",
|
|
83
|
-
...
|
|
84
|
-
}).setMeta("addToHistory", !1)), i(d,
|
|
85
|
-
if (
|
|
86
|
-
let
|
|
87
|
-
if (!
|
|
88
|
-
let
|
|
89
|
-
g(
|
|
83
|
+
...b
|
|
84
|
+
}).setMeta("addToHistory", !1)), i(d, c).then((e) => {
|
|
85
|
+
if (t.isDestroyed) return;
|
|
86
|
+
let i = f.getState(t.state)?.get(y);
|
|
87
|
+
if (!i) return;
|
|
88
|
+
let o = e.filter((e) => !!e);
|
|
89
|
+
g(t, i, (u.html ? n(u.html, {
|
|
90
90
|
plainText: u.plainText,
|
|
91
91
|
rtf: u.rtf,
|
|
92
92
|
clipboardImages: e,
|
|
93
|
+
preferClipboardImages: !0,
|
|
93
94
|
trustedInternal: u.trustedInternal
|
|
94
|
-
}).html :
|
|
95
|
+
}).html : o.length ? `<p>${o.map((e) => `<img src="${a(e)}" alt="">`).join("")}</p>` : r(u.plainText)) || r(u.plainText));
|
|
95
96
|
}).catch(() => {
|
|
96
|
-
if (
|
|
97
|
-
let e = f.getState(
|
|
98
|
-
e ? g(
|
|
97
|
+
if (t.isDestroyed) return;
|
|
98
|
+
let e = f.getState(t.state)?.get(y);
|
|
99
|
+
e ? g(t, e, r(u.plainText)) : h(t, y);
|
|
99
100
|
}), !0;
|
|
100
101
|
}
|
|
101
102
|
}
|
|
@@ -137,5 +138,8 @@ function _(e) {
|
|
|
137
138
|
if (!t.length) for (let n of Array.from(e.files)) n.type.toLowerCase().startsWith("image/") && t.push(n);
|
|
138
139
|
return t;
|
|
139
140
|
}
|
|
141
|
+
function v(e) {
|
|
142
|
+
return t(e).length;
|
|
143
|
+
}
|
|
140
144
|
//#endregion
|
|
141
145
|
export { p as WordPaste };
|