@guodun/antdv 1.3.2 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/es/components/contract-signing-location/index.mjs +1 -0
- package/dist/es/components/contract-signing-location/src/ContractSigningLocation.vue.mjs +304 -289
- package/dist/es/components/contract-signing-location/src/ContractSigningLocationCanvas.vue.mjs +337 -326
- 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 +128 -125
- 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 +135 -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/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 +3 -1
- package/dist/types/components/contract-signing-location/src/ContractSigningLocationInspector.vue.d.ts +2 -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 +47 -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 +12 -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 +2 -1
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { resolveContractTemplateFileTabTargetIndex as e } from "./utils/file-tabs.mjs";
|
|
2
|
+
import { Fragment as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createTextVNode as o, createVNode as s, defineComponent as c, nextTick as l, normalizeClass as u, openBlock as d, renderList as f, shallowRef as p, toDisplayString as m, unref as h, useTemplateRef as g, withCtx as _ } from "vue";
|
|
3
|
+
import { Button as v, Input as y, Tooltip as b } from "ant-design-vue";
|
|
4
|
+
import { DeleteOutlined as x, EditOutlined as S, LeftOutlined as C, PlusOutlined as w, RightOutlined as T } from "@ant-design/icons-vue";
|
|
5
|
+
//#region src/components/pro-contract-template-designer/src/ContractTemplateFileBar.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
+
var E = {
|
|
7
|
+
class: "gd-contract-template-designer__file-bar",
|
|
8
|
+
"aria-label": "合同文件"
|
|
9
|
+
}, D = {
|
|
10
|
+
class: "gd-contract-template-designer__file-list",
|
|
11
|
+
role: "tablist",
|
|
12
|
+
"aria-label": "合同文件列表"
|
|
13
|
+
}, O = [
|
|
14
|
+
"data-file-id",
|
|
15
|
+
"aria-selected",
|
|
16
|
+
"tabindex",
|
|
17
|
+
"title",
|
|
18
|
+
"onClick",
|
|
19
|
+
"onDblclick",
|
|
20
|
+
"onKeydown"
|
|
21
|
+
], k = { class: "gd-contract-template-designer__file-index" }, A = { class: "gd-contract-template-designer__file-name" }, j = {
|
|
22
|
+
key: 2,
|
|
23
|
+
class: "gd-contract-template-designer__file-actions"
|
|
24
|
+
}, M = /* @__PURE__ */ c({
|
|
25
|
+
name: "ContractTemplateFileBar",
|
|
26
|
+
__name: "ContractTemplateFileBar",
|
|
27
|
+
props: {
|
|
28
|
+
files: {},
|
|
29
|
+
activeFileId: {},
|
|
30
|
+
readonly: { type: Boolean }
|
|
31
|
+
},
|
|
32
|
+
emits: [
|
|
33
|
+
"select",
|
|
34
|
+
"add",
|
|
35
|
+
"rename",
|
|
36
|
+
"remove",
|
|
37
|
+
"move"
|
|
38
|
+
],
|
|
39
|
+
setup(c, { emit: M }) {
|
|
40
|
+
let N = c, P = M, F = p(""), I = p(""), L = g("renameInput");
|
|
41
|
+
function R(e) {
|
|
42
|
+
N.readonly || (F.value = e.id, I.value = e.name, l(() => L.value?.$el?.querySelector("input")?.focus()));
|
|
43
|
+
}
|
|
44
|
+
function z() {
|
|
45
|
+
F.value = "", I.value = "";
|
|
46
|
+
}
|
|
47
|
+
function B() {
|
|
48
|
+
let e = F.value;
|
|
49
|
+
e && (P("rename", e, I.value), z());
|
|
50
|
+
}
|
|
51
|
+
function V(e) {
|
|
52
|
+
e.key === "Escape" && (e.preventDefault(), z());
|
|
53
|
+
}
|
|
54
|
+
function H(t, n) {
|
|
55
|
+
let r = e(n, t.key, N.files.length);
|
|
56
|
+
if (r === void 0) return;
|
|
57
|
+
t.preventDefault();
|
|
58
|
+
let i = t.currentTarget?.closest("[role=\"tablist\"]"), a = N.files[r];
|
|
59
|
+
a && (P("select", a.id), l(() => {
|
|
60
|
+
Array.from(i?.querySelectorAll("[role=\"tab\"]") ?? []).find((e) => e.dataset.fileId === a.id)?.focus();
|
|
61
|
+
}));
|
|
62
|
+
}
|
|
63
|
+
return (e, l) => (d(), i("nav", E, [a("div", D, [(d(!0), i(t, null, f(c.files, (e, t) => (d(), i("div", {
|
|
64
|
+
key: e.id,
|
|
65
|
+
class: u(["gd-contract-template-designer__file-item", { "is-active": c.activeFileId === e.id }])
|
|
66
|
+
}, [F.value === e.id ? (d(), n(h(y), {
|
|
67
|
+
key: 0,
|
|
68
|
+
ref_for: !0,
|
|
69
|
+
ref_key: "renameInput",
|
|
70
|
+
ref: L,
|
|
71
|
+
value: I.value,
|
|
72
|
+
"onUpdate:value": l[0] ||= (e) => I.value = e,
|
|
73
|
+
class: "gd-contract-template-designer__file-rename",
|
|
74
|
+
size: "small",
|
|
75
|
+
maxlength: 80,
|
|
76
|
+
"aria-label": "文件名称",
|
|
77
|
+
onBlur: B,
|
|
78
|
+
onPressEnter: B,
|
|
79
|
+
onKeydown: V
|
|
80
|
+
}, null, 8, ["value"])) : (d(), i("button", {
|
|
81
|
+
key: 1,
|
|
82
|
+
type: "button",
|
|
83
|
+
class: "gd-contract-template-designer__file-tab",
|
|
84
|
+
role: "tab",
|
|
85
|
+
"data-file-id": e.id,
|
|
86
|
+
"aria-selected": c.activeFileId === e.id,
|
|
87
|
+
tabindex: c.activeFileId === e.id ? 0 : -1,
|
|
88
|
+
title: e.name,
|
|
89
|
+
onClick: (t) => P("select", e.id),
|
|
90
|
+
onDblclick: (t) => R(e),
|
|
91
|
+
onKeydown: (e) => H(e, t)
|
|
92
|
+
}, [
|
|
93
|
+
a("span", k, m(t + 1), 1),
|
|
94
|
+
a("span", A, m(e.name), 1),
|
|
95
|
+
a("small", null, m(e.template.pages.length) + " 页", 1)
|
|
96
|
+
], 40, O)), c.activeFileId === e.id && F.value !== e.id ? (d(), i("div", j, [
|
|
97
|
+
s(h(b), { title: "左移文件" }, {
|
|
98
|
+
default: _(() => [s(h(v), {
|
|
99
|
+
size: "small",
|
|
100
|
+
type: "text",
|
|
101
|
+
disabled: c.readonly || t === 0,
|
|
102
|
+
"aria-label": "左移文件",
|
|
103
|
+
onClick: (t) => P("move", e.id, -1)
|
|
104
|
+
}, {
|
|
105
|
+
default: _(() => [s(h(C), { "aria-hidden": "true" })]),
|
|
106
|
+
_: 1
|
|
107
|
+
}, 8, ["disabled", "onClick"])]),
|
|
108
|
+
_: 2
|
|
109
|
+
}, 1024),
|
|
110
|
+
s(h(b), { title: "右移文件" }, {
|
|
111
|
+
default: _(() => [s(h(v), {
|
|
112
|
+
size: "small",
|
|
113
|
+
type: "text",
|
|
114
|
+
disabled: c.readonly || t === c.files.length - 1,
|
|
115
|
+
"aria-label": "右移文件",
|
|
116
|
+
onClick: (t) => P("move", e.id, 1)
|
|
117
|
+
}, {
|
|
118
|
+
default: _(() => [s(h(T), { "aria-hidden": "true" })]),
|
|
119
|
+
_: 1
|
|
120
|
+
}, 8, ["disabled", "onClick"])]),
|
|
121
|
+
_: 2
|
|
122
|
+
}, 1024),
|
|
123
|
+
s(h(b), { title: "重命名文件" }, {
|
|
124
|
+
default: _(() => [s(h(v), {
|
|
125
|
+
size: "small",
|
|
126
|
+
type: "text",
|
|
127
|
+
disabled: c.readonly,
|
|
128
|
+
"aria-label": "重命名文件",
|
|
129
|
+
onClick: (t) => R(e)
|
|
130
|
+
}, {
|
|
131
|
+
default: _(() => [s(h(S), { "aria-hidden": "true" })]),
|
|
132
|
+
_: 1
|
|
133
|
+
}, 8, ["disabled", "onClick"])]),
|
|
134
|
+
_: 2
|
|
135
|
+
}, 1024),
|
|
136
|
+
s(h(b), { title: c.files.length <= 1 ? "至少保留一份文件" : "删除文件" }, {
|
|
137
|
+
default: _(() => [s(h(v), {
|
|
138
|
+
size: "small",
|
|
139
|
+
type: "text",
|
|
140
|
+
danger: "",
|
|
141
|
+
disabled: c.readonly || c.files.length <= 1,
|
|
142
|
+
"aria-label": "删除文件",
|
|
143
|
+
onClick: (t) => P("remove", e.id)
|
|
144
|
+
}, {
|
|
145
|
+
default: _(() => [s(h(x), { "aria-hidden": "true" })]),
|
|
146
|
+
_: 1
|
|
147
|
+
}, 8, ["disabled", "onClick"])]),
|
|
148
|
+
_: 2
|
|
149
|
+
}, 1032, ["title"])
|
|
150
|
+
])) : r("", !0)], 2))), 128))]), s(h(b), { title: "新增合同文件" }, {
|
|
151
|
+
default: _(() => [s(h(v), {
|
|
152
|
+
size: "small",
|
|
153
|
+
class: "gd-contract-template-designer__file-add",
|
|
154
|
+
disabled: c.readonly,
|
|
155
|
+
"aria-label": "新增合同文件",
|
|
156
|
+
onClick: l[1] ||= (e) => P("add")
|
|
157
|
+
}, {
|
|
158
|
+
default: _(() => [s(h(w), { "aria-hidden": "true" }), l[2] ||= o(" 新增文件 ", -1)]),
|
|
159
|
+
_: 1
|
|
160
|
+
}, 8, ["disabled"])]),
|
|
161
|
+
_: 1
|
|
162
|
+
})]));
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
//#endregion
|
|
166
|
+
export { M as default };
|
package/dist/es/components/pro-contract-template-designer/src/ContractTemplateRendererField.vue.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { isContractTemplateFieldType as e } from "./types.mjs";
|
|
2
|
+
import { getFieldOption as t } from "./composables/use-template-designer.mjs";
|
|
3
|
+
import { isSafeContractImageUrl as n } from "./utils/image-url.mjs";
|
|
4
4
|
import { resolveFieldTypeIcon as r } from "./utils/template-tool-icons.mjs";
|
|
5
5
|
import { Fragment as i, computed as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createTextVNode as u, createVNode as d, defineComponent as f, normalizeClass as p, openBlock as m, renderList as h, resolveDynamicComponent as g, toDisplayString as _, unref as v, withCtx as y, withModifiers as b } from "vue";
|
|
6
6
|
import { Button as x, Checkbox as S, DatePicker as C, Image as w, Input as T, InputNumber as E, Tooltip as D } from "ant-design-vue";
|
|
@@ -46,7 +46,7 @@ var A = { class: "gd-contract-template-renderer__field-head" }, j = { class: "gd
|
|
|
46
46
|
if (B.value === void 0 || B.value === null || B.value === "") return;
|
|
47
47
|
let e = Number(B.value);
|
|
48
48
|
return Number.isFinite(e) ? e : void 0;
|
|
49
|
-
}), G = a(() => B.value === !0 || B.value === "true" || B.value === "1" || B.value === "是" || B.value === "已选"), K = a(() => B.errors.length > 0), q = a(() => U.value &&
|
|
49
|
+
}), G = a(() => B.value === !0 || B.value === "true" || B.value === "1" || B.value === "是" || B.value === "已选"), K = a(() => B.errors.length > 0), q = a(() => U.value && n(U.value) ? U.value : ""), J = a(() => e(B.variable.type) ? B.variable.type : "text"), Y = a(() => r(J.value)), X = a(() => t(J.value).label);
|
|
50
50
|
function Z(e) {
|
|
51
51
|
V("updateValue", e);
|
|
52
52
|
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Fragment as e, createCommentVNode as t, createElementBlock as n, createElementVNode as r, defineComponent as i, normalizeClass as a, openBlock as o, renderList as s, toDisplayString as c } from "vue";
|
|
2
|
+
//#region src/components/pro-contract-template-designer/src/ContractTemplateRendererValidation.vue?vue&type=script&setup=true&lang.ts
|
|
3
|
+
var l = { class: "gd-contract-template-renderer__validation-bar" }, u = ["aria-expanded"], d = {
|
|
4
|
+
key: 0,
|
|
5
|
+
class: "gd-contract-template-renderer__validation-list"
|
|
6
|
+
}, f = ["onClick"], p = /* @__PURE__ */ i({
|
|
7
|
+
name: "ContractTemplateRendererValidation",
|
|
8
|
+
__name: "ContractTemplateRendererValidation",
|
|
9
|
+
props: {
|
|
10
|
+
passed: { type: Boolean },
|
|
11
|
+
summary: {},
|
|
12
|
+
errors: {},
|
|
13
|
+
expanded: { type: Boolean }
|
|
14
|
+
},
|
|
15
|
+
emits: ["toggle", "focusError"],
|
|
16
|
+
setup(i, { emit: p }) {
|
|
17
|
+
let m = p;
|
|
18
|
+
return (p, h) => (o(), n("div", {
|
|
19
|
+
class: a(["gd-contract-template-renderer__validation", i.passed ? "is-success" : "is-error"]),
|
|
20
|
+
role: "status"
|
|
21
|
+
}, [r("div", l, [r("span", null, c(i.summary), 1), i.errors.length ? (o(), n("button", {
|
|
22
|
+
key: 0,
|
|
23
|
+
type: "button",
|
|
24
|
+
class: "gd-contract-template-renderer__validation-toggle",
|
|
25
|
+
"aria-expanded": i.expanded,
|
|
26
|
+
onClick: h[0] ||= (e) => m("toggle")
|
|
27
|
+
}, c(i.expanded ? "收起" : `展开 ${i.errors.length} 个问题`), 9, u)) : t("", !0)]), i.expanded && i.errors.length ? (o(), n("div", d, [(o(!0), n(e, null, s(i.errors, (e) => (o(), n("button", {
|
|
28
|
+
key: `${e.code}-${e.id}-${e.message}`,
|
|
29
|
+
type: "button",
|
|
30
|
+
class: "gd-contract-template-renderer__validation-item",
|
|
31
|
+
onClick: (t) => m("focusError", e)
|
|
32
|
+
}, c(e.message), 9, f))), 128))])) : t("", !0)], 2));
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
//#endregion
|
|
36
|
+
export { p as default };
|