@shwfed/config 2.10.3 → 2.10.4
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/mcp.mjs +26 -2
- package/dist/module.json +1 -1
- package/dist/preview/assets/{FieldGroup.vue_vue_type_script_setup_true_lang-sT5i_dnE.js → FieldGroup.vue_vue_type_script_setup_true_lang-DIjsktfi.js} +1 -1
- package/dist/preview/assets/{badge-ZFj45FMd.js → badge-Cr6_n00S.js} +1 -1
- package/dist/preview/assets/{config-BwDPPmtn.js → config-1VGYa1Zb.js} +1 -1
- package/dist/preview/assets/{config-3rP_f_3o.js → config-B2rtOFE1.js} +1 -1
- package/dist/preview/assets/{config-DZPLqFqt.js → config-BemROLz0.js} +1 -1
- package/dist/preview/assets/{config-BLesYihN.js → config-BjUIO7Ps.js} +1 -1
- package/dist/preview/assets/{config-BBvebIQw.js → config-Bu-ffrDi.js} +1 -1
- package/dist/preview/assets/{config-CSR1JNVB.js → config-CNY70agP.js} +1 -1
- package/dist/preview/assets/{config-D1uMzMiN.js → config-CSauYxAG.js} +1 -1
- package/dist/preview/assets/{config-Rz0II9u6.js → config-CrA5lAMB.js} +1 -1
- package/dist/preview/assets/{config-CEBzJOHo.js → config-CwbWyadd.js} +1 -1
- package/dist/preview/assets/{config-cD091sze.js → config-DF4u2WzQ.js} +1 -1
- package/dist/preview/assets/{config-CgM75jSO.js → config-DTDFg08z.js} +1 -1
- package/dist/preview/assets/{config-lskK7grq.js → config-DpcMlGoM.js} +1 -1
- package/dist/preview/assets/{config-DfVc2Iy9.js → config-Dx9AeOjb.js} +1 -1
- package/dist/preview/assets/{config-2iinn_1E.js → config-hXHOfKvD.js} +1 -1
- package/dist/preview/assets/{definition.vue_vue_type_script_setup_true_lang-Ce_NeQUa.js → definition.vue_vue_type_script_setup_true_lang-v2AaUd8i.js} +1 -1
- package/dist/preview/assets/index-BDbNnENM.js +1 -0
- package/dist/preview/assets/index-ButPJaOR.css +1 -0
- package/dist/preview/assets/{index-_KA5_QIV.js → index-BzWZj-hV.js} +1 -1
- package/dist/preview/assets/{index-Zc4Mcm3J.js → index-E3_P6Fhz.js} +177 -177
- package/dist/preview/assets/{item-CBFJ6f6b.js → item-B_QcL62I.js} +1 -1
- package/dist/preview/assets/{runtime-Q_isegB9.js → runtime-BRg0jxiK.js} +1 -1
- package/dist/preview/assets/{runtime-DO9HS0Rb.js → runtime-BbiAwZZ9.js} +1 -1
- package/dist/preview/assets/{runtime-jWibKv1T.js → runtime-CKoLdM68.js} +1 -1
- package/dist/preview/assets/{runtime-DQXLscBz.js → runtime-CZ6uHCIE.js} +1 -1
- package/dist/preview/assets/{runtime-enspc5HG.js → runtime-Cd79TXff.js} +1 -1
- package/dist/preview/assets/{runtime-Cu0RJn8g.js → runtime-Cfup01hl.js} +1 -1
- package/dist/preview/assets/{runtime-BIGEoc5L.js → runtime-Cu_C4Joj.js} +1 -1
- package/dist/preview/assets/{runtime-CvMryNNx.js → runtime-D-MaRCSg.js} +1 -1
- package/dist/preview/assets/{runtime-BKqyqEeD.js → runtime-DUMSbsqb.js} +1 -1
- package/dist/preview/assets/{runtime-CIc3k_jd.js → runtime-hClBh8tp.js} +1 -1
- package/dist/preview/assets/{schema-meta-B5tln_XH.js → schema-meta-BACRMkVo.js} +1 -1
- package/dist/preview/index.html +2 -2
- package/dist/runtime/components/block-layout-editor/index.vue +8 -0
- package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/config.d.vue.ts +134 -0
- package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/config.vue +78 -2
- package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/config.vue.d.ts +134 -0
- package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/runtime.vue +24 -0
- package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/schema.d.ts +132 -0
- package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/schema.js +14 -1
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.d.vue.ts +4 -4
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.vue.d.ts +4 -4
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.d.vue.ts +6 -6
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.vue.d.ts +6 -6
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/config.d.vue.ts +2 -2
- package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/config.vue.d.ts +2 -2
- package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.d.vue.ts +134 -0
- package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.vue +77 -2
- package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.vue.d.ts +134 -0
- package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/runtime.vue +24 -0
- package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/schema.d.ts +132 -0
- package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/schema.js +14 -1
- package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.d.vue.ts +4 -4
- package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.vue.d.ts +4 -4
- package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-static/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-static/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-multi.remote/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-26/com.shwfed.table.column.combobox-single.remote/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-multi/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.combobox-single/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-multi/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-multi/config.vue.d.ts +2 -2
- package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-single/config.d.vue.ts +2 -2
- package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.combobox-single/config.vue.d.ts +2 -2
- package/dist/runtime/components/ui/date-picker/DatePickerInput.d.vue.ts +1 -1
- package/dist/runtime/components/ui/date-picker/DatePickerInput.vue.d.ts +1 -1
- package/dist/runtime/components/ui/date-picker/DatePickerTimeInput.d.vue.ts +1 -1
- package/dist/runtime/components/ui/date-picker/DatePickerTimeInput.vue.d.ts +1 -1
- package/dist/runtime/components/ui/date-range-picker/DateRangePickerInput.d.vue.ts +1 -1
- package/dist/runtime/components/ui/date-range-picker/DateRangePickerInput.vue.d.ts +1 -1
- package/dist/runtime/components/ui/date-range-picker/DateRangePickerTimeInput.d.vue.ts +2 -2
- package/dist/runtime/components/ui/date-range-picker/DateRangePickerTimeInput.vue.d.ts +2 -2
- package/package.json +1 -1
- package/dist/preview/assets/index-pkoEF5dC.css +0 -1
- package/dist/preview/assets/index-snO3CfdE.js +0 -1
package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/schema.d.ts
CHANGED
|
@@ -46,6 +46,138 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
|
|
|
46
46
|
mode: Schema.Literal<["formula", "prefill"]>;
|
|
47
47
|
expression: Schema.Schema<string, string, never>;
|
|
48
48
|
}>>;
|
|
49
|
+
addon: Schema.optional<Schema.Struct<{
|
|
50
|
+
groups: Schema.optionalWith<Schema.Array$<Schema.Struct<{
|
|
51
|
+
id: Schema.refine<string, typeof Schema.String>;
|
|
52
|
+
variant: Schema.optional<Schema.Literal<["default", "primary", "destructive", "ghost", "link"]>>;
|
|
53
|
+
}>>, {
|
|
54
|
+
default: () => never[];
|
|
55
|
+
}>;
|
|
56
|
+
items: Schema.optionalWith<Schema.Array$<Schema.Schema<import("../../../../actions/schema.js").RegistryItemValue | {
|
|
57
|
+
readonly disabled?: string | undefined;
|
|
58
|
+
readonly id: string;
|
|
59
|
+
readonly title: readonly [{
|
|
60
|
+
readonly locale: "zh";
|
|
61
|
+
readonly message: string;
|
|
62
|
+
}, ...{
|
|
63
|
+
readonly locale: "en" | "ja" | "ko";
|
|
64
|
+
readonly message: string;
|
|
65
|
+
}[]];
|
|
66
|
+
readonly icon?: string | undefined;
|
|
67
|
+
readonly hidden?: string | undefined;
|
|
68
|
+
readonly tooltip?: readonly [{
|
|
69
|
+
readonly locale: "zh";
|
|
70
|
+
readonly message: string;
|
|
71
|
+
}, ...{
|
|
72
|
+
readonly locale: "en" | "ja" | "ko";
|
|
73
|
+
readonly message: string;
|
|
74
|
+
}[]] | undefined;
|
|
75
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
76
|
+
readonly action?: any;
|
|
77
|
+
readonly groupId: string;
|
|
78
|
+
readonly hideTitle?: boolean | undefined;
|
|
79
|
+
} | {
|
|
80
|
+
readonly id: string;
|
|
81
|
+
readonly title: readonly [{
|
|
82
|
+
readonly locale: "zh";
|
|
83
|
+
readonly message: string;
|
|
84
|
+
}, ...{
|
|
85
|
+
readonly locale: "en" | "ja" | "ko";
|
|
86
|
+
readonly message: string;
|
|
87
|
+
}[]];
|
|
88
|
+
readonly icon?: string | undefined;
|
|
89
|
+
readonly items: readonly (import("../../../../actions/schema.js").RegistrySubItemValue | {
|
|
90
|
+
readonly disabled?: string | undefined;
|
|
91
|
+
readonly id: string;
|
|
92
|
+
readonly title: readonly [{
|
|
93
|
+
readonly locale: "zh";
|
|
94
|
+
readonly message: string;
|
|
95
|
+
}, ...{
|
|
96
|
+
readonly locale: "en" | "ja" | "ko";
|
|
97
|
+
readonly message: string;
|
|
98
|
+
}[]];
|
|
99
|
+
readonly icon?: string | undefined;
|
|
100
|
+
readonly hidden?: string | undefined;
|
|
101
|
+
readonly tooltip?: readonly [{
|
|
102
|
+
readonly locale: "zh";
|
|
103
|
+
readonly message: string;
|
|
104
|
+
}, ...{
|
|
105
|
+
readonly locale: "en" | "ja" | "ko";
|
|
106
|
+
readonly message: string;
|
|
107
|
+
}[]] | undefined;
|
|
108
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
109
|
+
readonly action?: any;
|
|
110
|
+
})[];
|
|
111
|
+
readonly groupId: string;
|
|
112
|
+
readonly hideTitle?: boolean | undefined;
|
|
113
|
+
}, import("../../../../actions/schema.js").RegistryItemValue | {
|
|
114
|
+
readonly id: string;
|
|
115
|
+
readonly title: readonly [{
|
|
116
|
+
readonly locale: "zh";
|
|
117
|
+
readonly message: string;
|
|
118
|
+
}, ...{
|
|
119
|
+
readonly locale: "en" | "ja" | "ko";
|
|
120
|
+
readonly message: string;
|
|
121
|
+
}[]];
|
|
122
|
+
readonly groupId: string;
|
|
123
|
+
readonly disabled?: string | undefined;
|
|
124
|
+
readonly icon?: string | undefined;
|
|
125
|
+
readonly hidden?: string | undefined;
|
|
126
|
+
readonly tooltip?: readonly [{
|
|
127
|
+
readonly locale: "zh";
|
|
128
|
+
readonly message: string;
|
|
129
|
+
}, ...{
|
|
130
|
+
readonly locale: "en" | "ja" | "ko";
|
|
131
|
+
readonly message: string;
|
|
132
|
+
}[]] | undefined;
|
|
133
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
134
|
+
readonly action?: any;
|
|
135
|
+
readonly hideTitle?: boolean | undefined;
|
|
136
|
+
} | {
|
|
137
|
+
readonly id: string;
|
|
138
|
+
readonly title: readonly [{
|
|
139
|
+
readonly locale: "zh";
|
|
140
|
+
readonly message: string;
|
|
141
|
+
}, ...{
|
|
142
|
+
readonly locale: "en" | "ja" | "ko";
|
|
143
|
+
readonly message: string;
|
|
144
|
+
}[]];
|
|
145
|
+
readonly items: readonly (import("../../../../actions/schema.js").RegistrySubItemValue | {
|
|
146
|
+
readonly id: string;
|
|
147
|
+
readonly title: readonly [{
|
|
148
|
+
readonly locale: "zh";
|
|
149
|
+
readonly message: string;
|
|
150
|
+
}, ...{
|
|
151
|
+
readonly locale: "en" | "ja" | "ko";
|
|
152
|
+
readonly message: string;
|
|
153
|
+
}[]];
|
|
154
|
+
readonly disabled?: string | undefined;
|
|
155
|
+
readonly icon?: string | undefined;
|
|
156
|
+
readonly hidden?: string | undefined;
|
|
157
|
+
readonly tooltip?: readonly [{
|
|
158
|
+
readonly locale: "zh";
|
|
159
|
+
readonly message: string;
|
|
160
|
+
}, ...{
|
|
161
|
+
readonly locale: "en" | "ja" | "ko";
|
|
162
|
+
readonly message: string;
|
|
163
|
+
}[]] | undefined;
|
|
164
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
165
|
+
readonly action?: any;
|
|
166
|
+
})[];
|
|
167
|
+
readonly groupId: string;
|
|
168
|
+
readonly icon?: string | undefined;
|
|
169
|
+
readonly hideTitle?: boolean | undefined;
|
|
170
|
+
}, never>>, {
|
|
171
|
+
default: () => never[];
|
|
172
|
+
}>;
|
|
173
|
+
size: Schema.optionalWith<Schema.Literal<["default", "sm", "xs"]>, {
|
|
174
|
+
default: () => "default";
|
|
175
|
+
}>;
|
|
176
|
+
gap: Schema.optionalWith<Schema.filter<Schema.filter<typeof Schema.Number>>, {
|
|
177
|
+
default: () => number;
|
|
178
|
+
}>;
|
|
179
|
+
style: Schema.optional<typeof Schema.String>;
|
|
180
|
+
}>>;
|
|
49
181
|
id: Schema.refine<string, typeof Schema.String>;
|
|
50
182
|
displayName: Schema.optional<Schema.SchemaClass<string, string, never>>;
|
|
51
183
|
hidden: Schema.optional<Schema.Schema<string, string, never>>;
|
|
@@ -1,7 +1,19 @@
|
|
|
1
1
|
import { Schema } from "effect";
|
|
2
2
|
import { Expression } from "../../../../../share/expression.js";
|
|
3
3
|
import { Locale } from "../../../../../share/locale.js";
|
|
4
|
+
import { ActionSchemaFields } from "../../../../actions/schema.js";
|
|
4
5
|
import { commonFieldFields, derivedField, FieldOrientationSchema } from "../../../utils/common.js";
|
|
6
|
+
function AddonActions(configure) {
|
|
7
|
+
const { groups, items, ...rest } = ActionSchemaFields(configure).fields;
|
|
8
|
+
return Schema.Struct({
|
|
9
|
+
...rest,
|
|
10
|
+
groups: Schema.optionalWith(groups, { default: () => [] }),
|
|
11
|
+
items: Schema.optionalWith(items, { default: () => [] })
|
|
12
|
+
}).annotations({
|
|
13
|
+
title: "\u8F93\u5165\u6846\u5185\u6309\u94AE",
|
|
14
|
+
description: "\u5728\u8F93\u5165\u6846\u53F3\u4FA7\u5185\u5D4C\u4E00\u7EC4\u64CD\u4F5C\u6309\u94AE"
|
|
15
|
+
});
|
|
16
|
+
}
|
|
5
17
|
export const type = "com.shwfed.form.field.text";
|
|
6
18
|
export const compatibilityDate = "2026-04-22";
|
|
7
19
|
export const metadata = {
|
|
@@ -41,7 +53,8 @@ export function schema(configure) {
|
|
|
41
53
|
title: "\u53EA\u8BFB\u6761\u4EF6",
|
|
42
54
|
description: "\u8FD4\u56DE `true` \u65F6\u4EC5\u4EE5\u7EAF\u6587\u672C\u5C55\u793A\u5F53\u524D\u503C"
|
|
43
55
|
})),
|
|
44
|
-
derived: derivedField(configure, "string")
|
|
56
|
+
derived: derivedField(configure, "string"),
|
|
57
|
+
addon: Schema.optional(AddonActions(configure))
|
|
45
58
|
}).annotations({
|
|
46
59
|
title: "TextField",
|
|
47
60
|
description: "\u5355\u884C\u6587\u672C\u8F93\u5165"
|
|
@@ -33,9 +33,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
33
33
|
readonly expression: string;
|
|
34
34
|
} | undefined;
|
|
35
35
|
readonly numberOfMonths?: number | undefined;
|
|
36
|
-
readonly format?: string | undefined;
|
|
37
|
-
readonly valueFormat?: string | undefined;
|
|
38
36
|
readonly rangeSeparatorIcon?: string | undefined;
|
|
37
|
+
readonly format?: string | undefined;
|
|
39
38
|
readonly startPlaceholder?: readonly [{
|
|
40
39
|
readonly locale: "zh";
|
|
41
40
|
readonly message: string;
|
|
@@ -50,6 +49,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
50
49
|
readonly locale: "en" | "ja" | "ko";
|
|
51
50
|
readonly message: string;
|
|
52
51
|
}[]] | undefined;
|
|
52
|
+
readonly valueFormat?: string | undefined;
|
|
53
53
|
readonly validations?: readonly {
|
|
54
54
|
readonly message: readonly [{
|
|
55
55
|
readonly locale: "zh";
|
|
@@ -105,9 +105,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
105
105
|
readonly expression: string;
|
|
106
106
|
} | undefined;
|
|
107
107
|
readonly numberOfMonths?: number | undefined;
|
|
108
|
-
readonly format?: string | undefined;
|
|
109
|
-
readonly valueFormat?: string | undefined;
|
|
110
108
|
readonly rangeSeparatorIcon?: string | undefined;
|
|
109
|
+
readonly format?: string | undefined;
|
|
111
110
|
readonly startPlaceholder?: readonly [{
|
|
112
111
|
readonly locale: "zh";
|
|
113
112
|
readonly message: string;
|
|
@@ -122,6 +121,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
122
121
|
readonly locale: "en" | "ja" | "ko";
|
|
123
122
|
readonly message: string;
|
|
124
123
|
}[]] | undefined;
|
|
124
|
+
readonly valueFormat?: string | undefined;
|
|
125
125
|
readonly validations?: readonly {
|
|
126
126
|
readonly message: readonly [{
|
|
127
127
|
readonly locale: "zh";
|
|
@@ -33,9 +33,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
33
33
|
readonly expression: string;
|
|
34
34
|
} | undefined;
|
|
35
35
|
readonly numberOfMonths?: number | undefined;
|
|
36
|
-
readonly format?: string | undefined;
|
|
37
|
-
readonly valueFormat?: string | undefined;
|
|
38
36
|
readonly rangeSeparatorIcon?: string | undefined;
|
|
37
|
+
readonly format?: string | undefined;
|
|
39
38
|
readonly startPlaceholder?: readonly [{
|
|
40
39
|
readonly locale: "zh";
|
|
41
40
|
readonly message: string;
|
|
@@ -50,6 +49,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
50
49
|
readonly locale: "en" | "ja" | "ko";
|
|
51
50
|
readonly message: string;
|
|
52
51
|
}[]] | undefined;
|
|
52
|
+
readonly valueFormat?: string | undefined;
|
|
53
53
|
readonly validations?: readonly {
|
|
54
54
|
readonly message: readonly [{
|
|
55
55
|
readonly locale: "zh";
|
|
@@ -105,9 +105,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
105
105
|
readonly expression: string;
|
|
106
106
|
} | undefined;
|
|
107
107
|
readonly numberOfMonths?: number | undefined;
|
|
108
|
-
readonly format?: string | undefined;
|
|
109
|
-
readonly valueFormat?: string | undefined;
|
|
110
108
|
readonly rangeSeparatorIcon?: string | undefined;
|
|
109
|
+
readonly format?: string | undefined;
|
|
111
110
|
readonly startPlaceholder?: readonly [{
|
|
112
111
|
readonly locale: "zh";
|
|
113
112
|
readonly message: string;
|
|
@@ -122,6 +121,7 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
122
121
|
readonly locale: "en" | "ja" | "ko";
|
|
123
122
|
readonly message: string;
|
|
124
123
|
}[]] | undefined;
|
|
124
|
+
readonly valueFormat?: string | undefined;
|
|
125
125
|
readonly validations?: readonly {
|
|
126
126
|
readonly message: readonly [{
|
|
127
127
|
readonly locale: "zh";
|
|
@@ -34,10 +34,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
34
34
|
} | undefined;
|
|
35
35
|
readonly numberOfMonths?: number | undefined;
|
|
36
36
|
readonly hourCycle?: 12 | 24 | undefined;
|
|
37
|
-
readonly format?: string | undefined;
|
|
38
|
-
readonly valueFormat?: string | undefined;
|
|
39
|
-
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
40
37
|
readonly rangeSeparatorIcon?: string | undefined;
|
|
38
|
+
readonly format?: string | undefined;
|
|
41
39
|
readonly startPlaceholder?: readonly [{
|
|
42
40
|
readonly locale: "zh";
|
|
43
41
|
readonly message: string;
|
|
@@ -52,6 +50,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
52
50
|
readonly locale: "en" | "ja" | "ko";
|
|
53
51
|
readonly message: string;
|
|
54
52
|
}[]] | undefined;
|
|
53
|
+
readonly valueFormat?: string | undefined;
|
|
54
|
+
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
55
55
|
readonly validations?: readonly {
|
|
56
56
|
readonly message: readonly [{
|
|
57
57
|
readonly locale: "zh";
|
|
@@ -108,10 +108,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
108
108
|
} | undefined;
|
|
109
109
|
readonly numberOfMonths?: number | undefined;
|
|
110
110
|
readonly hourCycle?: 12 | 24 | undefined;
|
|
111
|
-
readonly format?: string | undefined;
|
|
112
|
-
readonly valueFormat?: string | undefined;
|
|
113
|
-
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
114
111
|
readonly rangeSeparatorIcon?: string | undefined;
|
|
112
|
+
readonly format?: string | undefined;
|
|
115
113
|
readonly startPlaceholder?: readonly [{
|
|
116
114
|
readonly locale: "zh";
|
|
117
115
|
readonly message: string;
|
|
@@ -126,6 +124,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
126
124
|
readonly locale: "en" | "ja" | "ko";
|
|
127
125
|
readonly message: string;
|
|
128
126
|
}[]] | undefined;
|
|
127
|
+
readonly valueFormat?: string | undefined;
|
|
128
|
+
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
129
129
|
readonly validations?: readonly {
|
|
130
130
|
readonly message: readonly [{
|
|
131
131
|
readonly locale: "zh";
|
|
@@ -34,10 +34,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
34
34
|
} | undefined;
|
|
35
35
|
readonly numberOfMonths?: number | undefined;
|
|
36
36
|
readonly hourCycle?: 12 | 24 | undefined;
|
|
37
|
-
readonly format?: string | undefined;
|
|
38
|
-
readonly valueFormat?: string | undefined;
|
|
39
|
-
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
40
37
|
readonly rangeSeparatorIcon?: string | undefined;
|
|
38
|
+
readonly format?: string | undefined;
|
|
41
39
|
readonly startPlaceholder?: readonly [{
|
|
42
40
|
readonly locale: "zh";
|
|
43
41
|
readonly message: string;
|
|
@@ -52,6 +50,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
52
50
|
readonly locale: "en" | "ja" | "ko";
|
|
53
51
|
readonly message: string;
|
|
54
52
|
}[]] | undefined;
|
|
53
|
+
readonly valueFormat?: string | undefined;
|
|
54
|
+
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
55
55
|
readonly validations?: readonly {
|
|
56
56
|
readonly message: readonly [{
|
|
57
57
|
readonly locale: "zh";
|
|
@@ -108,10 +108,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
108
108
|
} | undefined;
|
|
109
109
|
readonly numberOfMonths?: number | undefined;
|
|
110
110
|
readonly hourCycle?: 12 | 24 | undefined;
|
|
111
|
-
readonly format?: string | undefined;
|
|
112
|
-
readonly valueFormat?: string | undefined;
|
|
113
|
-
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
114
111
|
readonly rangeSeparatorIcon?: string | undefined;
|
|
112
|
+
readonly format?: string | undefined;
|
|
115
113
|
readonly startPlaceholder?: readonly [{
|
|
116
114
|
readonly locale: "zh";
|
|
117
115
|
readonly message: string;
|
|
@@ -126,6 +124,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
126
124
|
readonly locale: "en" | "ja" | "ko";
|
|
127
125
|
readonly message: string;
|
|
128
126
|
}[]] | undefined;
|
|
127
|
+
readonly valueFormat?: string | undefined;
|
|
128
|
+
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
129
129
|
readonly validations?: readonly {
|
|
130
130
|
readonly message: readonly [{
|
|
131
131
|
readonly locale: "zh";
|
|
@@ -33,9 +33,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
33
33
|
readonly expression: string;
|
|
34
34
|
} | undefined;
|
|
35
35
|
readonly hourCycle?: 12 | 24 | undefined;
|
|
36
|
+
readonly rangeSeparatorIcon?: string | undefined;
|
|
36
37
|
readonly valueFormat?: string | undefined;
|
|
37
38
|
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
38
|
-
readonly rangeSeparatorIcon?: string | undefined;
|
|
39
39
|
readonly validations?: readonly {
|
|
40
40
|
readonly message: readonly [{
|
|
41
41
|
readonly locale: "zh";
|
|
@@ -79,9 +79,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
79
79
|
readonly expression: string;
|
|
80
80
|
} | undefined;
|
|
81
81
|
readonly hourCycle?: 12 | 24 | undefined;
|
|
82
|
+
readonly rangeSeparatorIcon?: string | undefined;
|
|
82
83
|
readonly valueFormat?: string | undefined;
|
|
83
84
|
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
84
|
-
readonly rangeSeparatorIcon?: string | undefined;
|
|
85
85
|
readonly validations?: readonly {
|
|
86
86
|
readonly message: readonly [{
|
|
87
87
|
readonly locale: "zh";
|
|
@@ -33,9 +33,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
33
33
|
readonly expression: string;
|
|
34
34
|
} | undefined;
|
|
35
35
|
readonly hourCycle?: 12 | 24 | undefined;
|
|
36
|
+
readonly rangeSeparatorIcon?: string | undefined;
|
|
36
37
|
readonly valueFormat?: string | undefined;
|
|
37
38
|
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
38
|
-
readonly rangeSeparatorIcon?: string | undefined;
|
|
39
39
|
readonly validations?: readonly {
|
|
40
40
|
readonly message: readonly [{
|
|
41
41
|
readonly locale: "zh";
|
|
@@ -79,9 +79,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
79
79
|
readonly expression: string;
|
|
80
80
|
} | undefined;
|
|
81
81
|
readonly hourCycle?: 12 | 24 | undefined;
|
|
82
|
+
readonly rangeSeparatorIcon?: string | undefined;
|
|
82
83
|
readonly valueFormat?: string | undefined;
|
|
83
84
|
readonly timeGranularity?: "hour" | "minute" | "second" | undefined;
|
|
84
|
-
readonly rangeSeparatorIcon?: string | undefined;
|
|
85
85
|
readonly validations?: readonly {
|
|
86
86
|
readonly message: readonly [{
|
|
87
87
|
readonly locale: "zh";
|
package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.d.vue.ts
CHANGED
|
@@ -53,6 +53,73 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
53
53
|
readonly warning?: boolean | undefined;
|
|
54
54
|
readonly when: string;
|
|
55
55
|
}[] | undefined;
|
|
56
|
+
readonly addon?: {
|
|
57
|
+
readonly size: "default" | "sm" | "xs";
|
|
58
|
+
readonly style?: string | undefined;
|
|
59
|
+
readonly gap: number;
|
|
60
|
+
readonly items: readonly (import("../../../../actions/schema.js").RegistryItemValue | {
|
|
61
|
+
readonly disabled?: string | undefined;
|
|
62
|
+
readonly id: string;
|
|
63
|
+
readonly title: readonly [{
|
|
64
|
+
readonly locale: "zh";
|
|
65
|
+
readonly message: string;
|
|
66
|
+
}, ...{
|
|
67
|
+
readonly locale: "en" | "ja" | "ko";
|
|
68
|
+
readonly message: string;
|
|
69
|
+
}[]];
|
|
70
|
+
readonly icon?: string | undefined;
|
|
71
|
+
readonly hidden?: string | undefined;
|
|
72
|
+
readonly tooltip?: readonly [{
|
|
73
|
+
readonly locale: "zh";
|
|
74
|
+
readonly message: string;
|
|
75
|
+
}, ...{
|
|
76
|
+
readonly locale: "en" | "ja" | "ko";
|
|
77
|
+
readonly message: string;
|
|
78
|
+
}[]] | undefined;
|
|
79
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
80
|
+
readonly action?: any;
|
|
81
|
+
readonly groupId: string;
|
|
82
|
+
readonly hideTitle?: boolean | undefined;
|
|
83
|
+
} | {
|
|
84
|
+
readonly id: string;
|
|
85
|
+
readonly title: readonly [{
|
|
86
|
+
readonly locale: "zh";
|
|
87
|
+
readonly message: string;
|
|
88
|
+
}, ...{
|
|
89
|
+
readonly locale: "en" | "ja" | "ko";
|
|
90
|
+
readonly message: string;
|
|
91
|
+
}[]];
|
|
92
|
+
readonly icon?: string | undefined;
|
|
93
|
+
readonly items: readonly (import("../../../../actions/schema.js").RegistrySubItemValue | {
|
|
94
|
+
readonly disabled?: string | undefined;
|
|
95
|
+
readonly id: string;
|
|
96
|
+
readonly title: readonly [{
|
|
97
|
+
readonly locale: "zh";
|
|
98
|
+
readonly message: string;
|
|
99
|
+
}, ...{
|
|
100
|
+
readonly locale: "en" | "ja" | "ko";
|
|
101
|
+
readonly message: string;
|
|
102
|
+
}[]];
|
|
103
|
+
readonly icon?: string | undefined;
|
|
104
|
+
readonly hidden?: string | undefined;
|
|
105
|
+
readonly tooltip?: readonly [{
|
|
106
|
+
readonly locale: "zh";
|
|
107
|
+
readonly message: string;
|
|
108
|
+
}, ...{
|
|
109
|
+
readonly locale: "en" | "ja" | "ko";
|
|
110
|
+
readonly message: string;
|
|
111
|
+
}[]] | undefined;
|
|
112
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
113
|
+
readonly action?: any;
|
|
114
|
+
})[];
|
|
115
|
+
readonly groupId: string;
|
|
116
|
+
readonly hideTitle?: boolean | undefined;
|
|
117
|
+
})[];
|
|
118
|
+
readonly groups: readonly {
|
|
119
|
+
readonly id: string;
|
|
120
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
121
|
+
}[];
|
|
122
|
+
} | undefined;
|
|
56
123
|
readonly precision?: number | undefined;
|
|
57
124
|
readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
|
|
58
125
|
readonly valueAsString?: boolean | undefined;
|
|
@@ -108,6 +175,73 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
|
|
|
108
175
|
readonly warning?: boolean | undefined;
|
|
109
176
|
readonly when: string;
|
|
110
177
|
}[] | undefined;
|
|
178
|
+
readonly addon?: {
|
|
179
|
+
readonly size: "default" | "sm" | "xs";
|
|
180
|
+
readonly style?: string | undefined;
|
|
181
|
+
readonly gap: number;
|
|
182
|
+
readonly items: readonly (import("../../../../actions/schema.js").RegistryItemValue | {
|
|
183
|
+
readonly disabled?: string | undefined;
|
|
184
|
+
readonly id: string;
|
|
185
|
+
readonly title: readonly [{
|
|
186
|
+
readonly locale: "zh";
|
|
187
|
+
readonly message: string;
|
|
188
|
+
}, ...{
|
|
189
|
+
readonly locale: "en" | "ja" | "ko";
|
|
190
|
+
readonly message: string;
|
|
191
|
+
}[]];
|
|
192
|
+
readonly icon?: string | undefined;
|
|
193
|
+
readonly hidden?: string | undefined;
|
|
194
|
+
readonly tooltip?: readonly [{
|
|
195
|
+
readonly locale: "zh";
|
|
196
|
+
readonly message: string;
|
|
197
|
+
}, ...{
|
|
198
|
+
readonly locale: "en" | "ja" | "ko";
|
|
199
|
+
readonly message: string;
|
|
200
|
+
}[]] | undefined;
|
|
201
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
202
|
+
readonly action?: any;
|
|
203
|
+
readonly groupId: string;
|
|
204
|
+
readonly hideTitle?: boolean | undefined;
|
|
205
|
+
} | {
|
|
206
|
+
readonly id: string;
|
|
207
|
+
readonly title: readonly [{
|
|
208
|
+
readonly locale: "zh";
|
|
209
|
+
readonly message: string;
|
|
210
|
+
}, ...{
|
|
211
|
+
readonly locale: "en" | "ja" | "ko";
|
|
212
|
+
readonly message: string;
|
|
213
|
+
}[]];
|
|
214
|
+
readonly icon?: string | undefined;
|
|
215
|
+
readonly items: readonly (import("../../../../actions/schema.js").RegistrySubItemValue | {
|
|
216
|
+
readonly disabled?: string | undefined;
|
|
217
|
+
readonly id: string;
|
|
218
|
+
readonly title: readonly [{
|
|
219
|
+
readonly locale: "zh";
|
|
220
|
+
readonly message: string;
|
|
221
|
+
}, ...{
|
|
222
|
+
readonly locale: "en" | "ja" | "ko";
|
|
223
|
+
readonly message: string;
|
|
224
|
+
}[]];
|
|
225
|
+
readonly icon?: string | undefined;
|
|
226
|
+
readonly hidden?: string | undefined;
|
|
227
|
+
readonly tooltip?: readonly [{
|
|
228
|
+
readonly locale: "zh";
|
|
229
|
+
readonly message: string;
|
|
230
|
+
}, ...{
|
|
231
|
+
readonly locale: "en" | "ja" | "ko";
|
|
232
|
+
readonly message: string;
|
|
233
|
+
}[]] | undefined;
|
|
234
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
235
|
+
readonly action?: any;
|
|
236
|
+
})[];
|
|
237
|
+
readonly groupId: string;
|
|
238
|
+
readonly hideTitle?: boolean | undefined;
|
|
239
|
+
})[];
|
|
240
|
+
readonly groups: readonly {
|
|
241
|
+
readonly id: string;
|
|
242
|
+
readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
|
|
243
|
+
}[];
|
|
244
|
+
} | undefined;
|
|
111
245
|
readonly precision?: number | undefined;
|
|
112
246
|
readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
|
|
113
247
|
readonly valueAsString?: boolean | undefined;
|
package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.vue
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<script setup>
|
|
2
|
-
import { computed } from "vue";
|
|
2
|
+
import { computed, inject, onBeforeUnmount, ref, watch } from "vue";
|
|
3
3
|
import { Icon } from "@iconify/vue";
|
|
4
4
|
import {
|
|
5
5
|
DropdownMenu,
|
|
@@ -10,6 +10,7 @@ import {
|
|
|
10
10
|
import { ExpressionEditor } from "../../../../ui/expression-editor";
|
|
11
11
|
import DerivedValueEditor from "../../../DerivedValueEditor.vue";
|
|
12
12
|
import ValidationRulesField from "../../../ValidationRulesField.vue";
|
|
13
|
+
import { Button } from "../../../../ui/button";
|
|
13
14
|
import { Field, FieldLabel } from "../../../../ui/field";
|
|
14
15
|
import {
|
|
15
16
|
InputGroup,
|
|
@@ -20,6 +21,7 @@ import {
|
|
|
20
21
|
} from "../../../../ui/input-group";
|
|
21
22
|
import { Locale as LocaleField } from "../../../../ui/locale";
|
|
22
23
|
import { Markdown } from "../../../../ui/markdown";
|
|
24
|
+
import ActionsConfigEditor from "../../../../actions/config.vue";
|
|
23
25
|
import {
|
|
24
26
|
Select,
|
|
25
27
|
SelectContent,
|
|
@@ -29,6 +31,8 @@ import {
|
|
|
29
31
|
} from "../../../../ui/select";
|
|
30
32
|
import { Switch } from "../../../../ui/switch";
|
|
31
33
|
import { getStructFieldDescription, getStructFieldTitle } from "../../../schema";
|
|
34
|
+
import { FORM_FIELD_LAYOUT_KEY } from "../../../field-layout";
|
|
35
|
+
import { BREADCRUMB_EXTENSION_KEY } from "../../../../config/breadcrumb-extension";
|
|
32
36
|
import { DEFAULT_FIELD_ORIENTATION, FIELD_ORIENTATION_OPTIONS } from "../../../utils/common";
|
|
33
37
|
import { schema } from "./schema";
|
|
34
38
|
defineOptions({ name: "ShwfedNumberFieldConfig" });
|
|
@@ -37,6 +41,47 @@ const fieldSchema = schema(() => {
|
|
|
37
41
|
});
|
|
38
42
|
const fieldTitle = (f) => getStructFieldTitle(fieldSchema, f) ?? f;
|
|
39
43
|
const fieldDescription = (f) => getStructFieldDescription(fieldSchema, f);
|
|
44
|
+
const layout = inject(FORM_FIELD_LAYOUT_KEY, null);
|
|
45
|
+
const breadcrumbExt = inject(BREADCRUMB_EXTENSION_KEY, null);
|
|
46
|
+
const editingAddon = ref(false);
|
|
47
|
+
function closeAddon() {
|
|
48
|
+
editingAddon.value = false;
|
|
49
|
+
}
|
|
50
|
+
const addonCrumb = breadcrumbExt?.add();
|
|
51
|
+
watch(editingAddon, (on) => {
|
|
52
|
+
if (layout) layout.fullPane.value = on;
|
|
53
|
+
if (addonCrumb) {
|
|
54
|
+
addonCrumb.label.value = on ? "\u8F93\u5165\u6846\u5185\u6309\u94AE" : null;
|
|
55
|
+
addonCrumb.back.value = on ? closeAddon : null;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
onBeforeUnmount(() => {
|
|
59
|
+
if (layout) layout.fullPane.value = false;
|
|
60
|
+
addonCrumb?.dispose();
|
|
61
|
+
});
|
|
62
|
+
const addonItemCount = computed(() => value.value.addon?.items.length ?? 0);
|
|
63
|
+
const addonValue = computed({
|
|
64
|
+
get: () => ({
|
|
65
|
+
kind: "shwfed.component.action",
|
|
66
|
+
size: value.value.addon?.size ?? "xs",
|
|
67
|
+
gap: value.value.addon?.gap ?? 4,
|
|
68
|
+
style: value.value.addon?.style,
|
|
69
|
+
groups: value.value.addon?.groups ?? [],
|
|
70
|
+
items: value.value.addon?.items ?? []
|
|
71
|
+
}),
|
|
72
|
+
set: (next) => {
|
|
73
|
+
const { size, gap, style, groups, items } = next;
|
|
74
|
+
if (groups.length === 0 && items.length === 0) {
|
|
75
|
+
const { addon: _omit, ...rest } = value.value;
|
|
76
|
+
value.value = rest;
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
value.value = {
|
|
80
|
+
...value.value,
|
|
81
|
+
addon: { size, gap, groups, items, ...style === void 0 ? {} : { style } }
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
});
|
|
40
85
|
const ROUNDING_MODE_OPTIONS = [
|
|
41
86
|
{ value: "round", label: "\u56DB\u820D\u4E94\u5165" },
|
|
42
87
|
{ value: "floor", label: "\u5411\u4E0B\u53D6\u6574" },
|
|
@@ -89,7 +134,16 @@ function onValueAsStringChange(next) {
|
|
|
89
134
|
</script>
|
|
90
135
|
|
|
91
136
|
<template>
|
|
92
|
-
<
|
|
137
|
+
<ActionsConfigEditor
|
|
138
|
+
v-if="editingAddon"
|
|
139
|
+
v-model="addonValue"
|
|
140
|
+
hide-size
|
|
141
|
+
/>
|
|
142
|
+
|
|
143
|
+
<div
|
|
144
|
+
v-else
|
|
145
|
+
class="flex flex-col gap-3"
|
|
146
|
+
>
|
|
93
147
|
<div class="grid grid-cols-2 gap-3">
|
|
94
148
|
<Field orientation="vertical">
|
|
95
149
|
<FieldLabel class="text-xs text-zinc-500">
|
|
@@ -491,5 +545,26 @@ function onValueAsStringChange(next) {
|
|
|
491
545
|
@update:model-value="(v) => value = { ...value, validations: v.length > 0 ? v : void 0 }"
|
|
492
546
|
/>
|
|
493
547
|
</Field>
|
|
548
|
+
|
|
549
|
+
<Field orientation="vertical">
|
|
550
|
+
<FieldLabel class="text-xs text-zinc-500">
|
|
551
|
+
<template #tooltip>
|
|
552
|
+
<Markdown
|
|
553
|
+
:source="fieldDescription('addon')"
|
|
554
|
+
block
|
|
555
|
+
class="prose prose-sm prose-zinc"
|
|
556
|
+
/>
|
|
557
|
+
</template>
|
|
558
|
+
{{ fieldTitle("addon") }}
|
|
559
|
+
</FieldLabel>
|
|
560
|
+
<Button
|
|
561
|
+
type="button"
|
|
562
|
+
class="w-full justify-center"
|
|
563
|
+
@click="editingAddon = true"
|
|
564
|
+
>
|
|
565
|
+
<Icon icon="fluent:add-20-regular" />
|
|
566
|
+
<span>{{ addonItemCount > 0 ? "\u914D\u7F6E\u6309\u94AE" : "\u6DFB\u52A0\u6309\u94AE" }}</span>
|
|
567
|
+
</Button>
|
|
568
|
+
</Field>
|
|
494
569
|
</div>
|
|
495
570
|
</template>
|