@shwfed/config 2.10.2 → 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.
Files changed (158) hide show
  1. package/dist/mcp.mjs +143 -89
  2. package/dist/module.json +1 -1
  3. package/dist/preview/assets/{FieldGroup.vue_vue_type_script_setup_true_lang-DX5M_WNF.js → FieldGroup.vue_vue_type_script_setup_true_lang-DIjsktfi.js} +1 -1
  4. package/dist/preview/assets/badge-Cr6_n00S.js +1 -0
  5. package/dist/preview/assets/config-1VGYa1Zb.js +1 -0
  6. package/dist/preview/assets/config-B2rtOFE1.js +1 -0
  7. package/dist/preview/assets/config-BemROLz0.js +1 -0
  8. package/dist/preview/assets/{config-DeDCNzY_.js → config-BjUIO7Ps.js} +1 -1
  9. package/dist/preview/assets/config-Bu-ffrDi.js +1 -0
  10. package/dist/preview/assets/config-CNY70agP.js +1 -0
  11. package/dist/preview/assets/{config-CSmHhOh2.js → config-CSauYxAG.js} +1 -1
  12. package/dist/preview/assets/{config-CTF5-TTQ.js → config-CrA5lAMB.js} +1 -1
  13. package/dist/preview/assets/{config-BiOW8fS2.js → config-CwbWyadd.js} +1 -1
  14. package/dist/preview/assets/{config-DBtEKoan.js → config-DF4u2WzQ.js} +1 -1
  15. package/dist/preview/assets/config-DTDFg08z.js +1 -0
  16. package/dist/preview/assets/config-DpcMlGoM.js +1 -0
  17. package/dist/preview/assets/config-Dx9AeOjb.js +1 -0
  18. package/dist/preview/assets/config-hXHOfKvD.js +1 -0
  19. package/dist/preview/assets/{definition.vue_vue_type_script_setup_true_lang-Cu0CEKYT.js → definition.vue_vue_type_script_setup_true_lang-v2AaUd8i.js} +1 -1
  20. package/dist/preview/assets/index-BDbNnENM.js +1 -0
  21. package/dist/preview/assets/index-ButPJaOR.css +1 -0
  22. package/dist/preview/assets/index-BzWZj-hV.js +1 -0
  23. package/dist/preview/assets/{index-DX9_iE4h.js → index-E3_P6Fhz.js} +207 -189
  24. package/dist/preview/assets/item-B_QcL62I.js +1 -0
  25. package/dist/preview/assets/runtime-BRg0jxiK.js +1 -0
  26. package/dist/preview/assets/runtime-BbiAwZZ9.js +1 -0
  27. package/dist/preview/assets/runtime-CKoLdM68.js +1 -0
  28. package/dist/preview/assets/{runtime-CFb1tHwr.js → runtime-CZ6uHCIE.js} +1 -1
  29. package/dist/preview/assets/runtime-Cd79TXff.js +1 -0
  30. package/dist/preview/assets/{runtime-BN-jMAt7.js → runtime-Cfup01hl.js} +1 -1
  31. package/dist/preview/assets/runtime-Cu_C4Joj.js +1 -0
  32. package/dist/preview/assets/{runtime-yfWYeUh4.js → runtime-D-MaRCSg.js} +1 -1
  33. package/dist/preview/assets/runtime-DUMSbsqb.js +1 -0
  34. package/dist/preview/assets/runtime-hClBh8tp.js +1 -0
  35. package/dist/preview/assets/{schema-meta-6ZPO8dHv.js → schema-meta-BACRMkVo.js} +1 -1
  36. package/dist/preview/index.html +2 -2
  37. package/dist/runtime/components/actions/buttons/2026-05-15/com.shwfed.actions.button.event.dispatch/schema.d.ts +16 -10
  38. package/dist/runtime/components/actions/buttons/2026-05-15/com.shwfed.actions.button.event.dispatch/schema.js +68 -43
  39. package/dist/runtime/components/actions/buttons/2026-05-21/com.shwfed.actions.button.http.download/schema.d.ts +1 -0
  40. package/dist/runtime/components/actions/buttons/2026-05-21/com.shwfed.actions.button.http.download/schema.js +5 -1
  41. package/dist/runtime/components/block-layout-editor/index.vue +8 -0
  42. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/config.d.vue.ts +2 -2
  43. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/config.vue.d.ts +2 -2
  44. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/runtime.d.vue.ts +4 -4
  45. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/runtime.vue.d.ts +4 -4
  46. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.form/schema.d.ts +1 -1
  47. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.d.vue.ts +2 -2
  48. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/config.vue.d.ts +2 -2
  49. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.d.vue.ts +2 -2
  50. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/runtime.vue.d.ts +2 -2
  51. package/dist/runtime/components/config/blocks/2026-05-06/com.shwfed.block.table/schema.d.ts +2 -2
  52. package/dist/runtime/components/config/index.vue +5 -1
  53. package/dist/runtime/components/config/schema.d.ts +10 -0
  54. package/dist/runtime/components/config/schema.js +23 -0
  55. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/config.d.vue.ts +134 -0
  56. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/config.vue +78 -2
  57. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/config.vue.d.ts +134 -0
  58. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/runtime.vue +24 -0
  59. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/schema.d.ts +132 -0
  60. package/dist/runtime/components/form/fields/2026-04-22/com.shwfed.form.field.text/schema.js +14 -1
  61. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.combobox.single/config.d.vue.ts +16 -16
  62. package/dist/runtime/components/form/fields/2026-04-24/com.shwfed.form.field.combobox.single/config.vue.d.ts +16 -16
  63. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.d.vue.ts +4 -4
  64. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.daterange/config.vue.d.ts +4 -4
  65. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.d.vue.ts +6 -6
  66. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.datetimerange/config.vue.d.ts +6 -6
  67. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/config.d.vue.ts +2 -2
  68. package/dist/runtime/components/form/fields/2026-04-27/com.shwfed.form.field.timerange/config.vue.d.ts +2 -2
  69. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.d.vue.ts +140 -6
  70. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.vue +77 -2
  71. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/config.vue.d.ts +140 -6
  72. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/runtime.vue +24 -0
  73. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/schema.d.ts +132 -0
  74. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.number/schema.js +14 -1
  75. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/config.d.vue.ts +6 -6
  76. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.numberrange/config.vue.d.ts +6 -6
  77. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/config.d.vue.ts +22 -22
  78. package/dist/runtime/components/form/fields/2026-04-28/com.shwfed.form.field.switch/config.vue.d.ts +22 -22
  79. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/config.d.vue.ts +16 -16
  80. package/dist/runtime/components/form/fields/2026-05-13/com.shwfed.form.field.combobox.single.remote/config.vue.d.ts +16 -16
  81. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.d.vue.ts +8 -8
  82. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.vue.d.ts +8 -8
  83. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.d.vue.ts +4 -4
  84. package/dist/runtime/components/form/fields/2026-05-24/com.shwfed.form.field.monthrange/config.vue.d.ts +4 -4
  85. package/dist/runtime/components/form/fields/2026-05-25/com.shwfed.form.field.combobox.multi/config.d.vue.ts +16 -16
  86. package/dist/runtime/components/form/fields/2026-05-25/com.shwfed.form.field.combobox.multi/config.vue.d.ts +16 -16
  87. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +8 -8
  88. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +8 -8
  89. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +8 -8
  90. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +8 -8
  91. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +8 -8
  92. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +8 -8
  93. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +8 -8
  94. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +8 -8
  95. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.d.vue.ts +8 -8
  96. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.vue.d.ts +8 -8
  97. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.d.vue.ts +8 -8
  98. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.vue.d.ts +8 -8
  99. package/dist/runtime/components/form/schema.d.ts +2 -2
  100. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.http.download/config.d.vue.ts +31 -0
  101. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.http.download/config.vue +103 -0
  102. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.http.download/config.vue.d.ts +31 -0
  103. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.http.download/runtime.d.ts +2 -0
  104. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.http.download/runtime.js +63 -0
  105. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.http.download/schema.d.ts +21 -0
  106. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.http.download/schema.js +63 -0
  107. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.navigation/config.d.vue.ts +17 -0
  108. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.navigation/config.vue +85 -0
  109. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.navigation/config.vue.d.ts +17 -0
  110. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.navigation/runtime.d.ts +2 -0
  111. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.navigation/runtime.js +36 -0
  112. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.navigation/schema.d.ts +14 -0
  113. package/dist/runtime/components/operations/2026-06-15/com.shwfed.operation.navigation/schema.js +38 -0
  114. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.d.vue.ts +4 -4
  115. package/dist/runtime/components/table/columns/2026-05-24/com.shwfed.table.column.combobox-single.remote.options-remote/config.vue.d.ts +4 -4
  116. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.d.vue.ts +4 -4
  117. package/dist/runtime/components/table/columns/2026-05-25/com.shwfed.table.column.combobox-multi.remote.options-remote/config.vue.d.ts +4 -4
  118. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +10 -10
  119. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +10 -10
  120. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +10 -10
  121. package/dist/runtime/components/table/columns/2026-05-27/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +10 -10
  122. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +10 -10
  123. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +10 -10
  124. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +10 -10
  125. package/dist/runtime/components/table/columns/2026-05-28/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +10 -10
  126. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/config.d.vue.ts +10 -10
  127. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-multi/config.vue.d.ts +10 -10
  128. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/config.d.vue.ts +10 -10
  129. package/dist/runtime/components/table/columns/2026-06-14/com.shwfed.table.column.tree-combobox-single/config.vue.d.ts +10 -10
  130. package/dist/runtime/components/table/schema.d.ts +3 -3
  131. package/dist/runtime/components/ui/date-picker/DatePickerInput.d.vue.ts +1 -1
  132. package/dist/runtime/components/ui/date-picker/DatePickerInput.vue.d.ts +1 -1
  133. package/dist/runtime/components/ui/date-picker/DatePickerTimeInput.d.vue.ts +1 -1
  134. package/dist/runtime/components/ui/date-picker/DatePickerTimeInput.vue.d.ts +1 -1
  135. package/dist/runtime/components/ui/date-range-picker/DateRangePickerInput.d.vue.ts +1 -1
  136. package/dist/runtime/components/ui/date-range-picker/DateRangePickerInput.vue.d.ts +1 -1
  137. package/dist/runtime/components/ui/date-range-picker/DateRangePickerTimeInput.d.vue.ts +2 -2
  138. package/dist/runtime/components/ui/date-range-picker/DateRangePickerTimeInput.vue.d.ts +2 -2
  139. package/package.json +1 -1
  140. package/dist/preview/assets/badge-DFZBH8N6.js +0 -1
  141. package/dist/preview/assets/config-BH2BmDoD.js +0 -1
  142. package/dist/preview/assets/config-Bg7a8Rid.js +0 -1
  143. package/dist/preview/assets/config-Bnp547Nm.js +0 -1
  144. package/dist/preview/assets/config-CqeWJt_H.js +0 -1
  145. package/dist/preview/assets/config-Dj3w2JkF.js +0 -1
  146. package/dist/preview/assets/config-XGJ9V32V.js +0 -1
  147. package/dist/preview/assets/config-uIHUHvNR.js +0 -1
  148. package/dist/preview/assets/index-CGChrBji.js +0 -1
  149. package/dist/preview/assets/index-CQA6q2ay.js +0 -1
  150. package/dist/preview/assets/index-pkoEF5dC.css +0 -1
  151. package/dist/preview/assets/item-C4VJfiq8.js +0 -1
  152. package/dist/preview/assets/runtime-6Zrje7Y1.js +0 -1
  153. package/dist/preview/assets/runtime-BQMnWueG.js +0 -1
  154. package/dist/preview/assets/runtime-CBz5XstF.js +0 -1
  155. package/dist/preview/assets/runtime-DQL6lCFp.js +0 -1
  156. package/dist/preview/assets/runtime-DcdmMgqL.js +0 -1
  157. package/dist/preview/assets/runtime-okYOTQd6.js +0 -1
  158. package/dist/preview/assets/runtime-qPyuMgsh.js +0 -1
@@ -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
- <div class="flex flex-col gap-3">
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>
@@ -42,9 +42,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
42
42
  readonly mode: "formula" | "prefill";
43
43
  readonly expression: string;
44
44
  } | undefined;
45
- readonly precision?: number | undefined;
46
- readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
47
- readonly valueAsString?: boolean | undefined;
48
45
  readonly validations?: readonly {
49
46
  readonly message: readonly [{
50
47
  readonly locale: "zh";
@@ -56,6 +53,76 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
56
53
  readonly warning?: boolean | undefined;
57
54
  readonly when: string;
58
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;
123
+ readonly precision?: number | undefined;
124
+ readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
125
+ readonly valueAsString?: boolean | undefined;
59
126
  }) => any;
60
127
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
61
128
  "onUpdate:modelValue"?: ((value: {
@@ -97,9 +164,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
97
164
  readonly mode: "formula" | "prefill";
98
165
  readonly expression: string;
99
166
  } | undefined;
100
- readonly precision?: number | undefined;
101
- readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
102
- readonly valueAsString?: boolean | undefined;
103
167
  readonly validations?: readonly {
104
168
  readonly message: readonly [{
105
169
  readonly locale: "zh";
@@ -111,6 +175,76 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
111
175
  readonly warning?: boolean | undefined;
112
176
  readonly when: string;
113
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;
245
+ readonly precision?: number | undefined;
246
+ readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
247
+ readonly valueAsString?: boolean | undefined;
114
248
  }) => any) | undefined;
115
249
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
116
250
  declare const _default: typeof __VLS_export;
@@ -9,6 +9,7 @@ import { getLocalizedText } from "../../../../../share/locale";
9
9
  import { Field, FieldLabel, FieldMessages } from "../../../../ui/field";
10
10
  import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupNumberField } from "../../../../ui/input-group";
11
11
  import { Markdown } from "../../../../ui/markdown";
12
+ import ShwfedActions from "../../../../actions/components/group.vue";
12
13
  import { DEFAULT_FIELD_ORIENTATION } from "../../../utils/common";
13
14
  import { useFieldValue } from "../../../utils/field-value";
14
15
  import { useFieldValidation } from "../../../utils/validation";
@@ -93,6 +94,18 @@ function applyRounding(n, precision, mode) {
93
94
  return Math.round(n * factor) / factor;
94
95
  }
95
96
  }
97
+ const addonConfig = computed(() => {
98
+ const addon = props.config.addon;
99
+ if (!addon || addon.items.length === 0) return null;
100
+ return {
101
+ kind: "shwfed.component.action",
102
+ size: addon.size ?? "xs",
103
+ gap: addon.gap,
104
+ style: addon.style,
105
+ groups: addon.groups.map((group) => ({ ...group, variant: group.variant ?? "ghost" })),
106
+ items: addon.items
107
+ };
108
+ });
96
109
  const showClear = computed(() => !isDisabled.value && draft.value !== void 0);
97
110
  function handleClear() {
98
111
  draft.value = void 0;
@@ -179,6 +192,13 @@ async function onBlur() {
179
192
  <Icon icon="fluent:dismiss-20-regular" />
180
193
  </InputGroupButton>
181
194
  </InputGroupAddon>
195
+ <InputGroupAddon
196
+ v-if="addonConfig"
197
+ align="inline-end"
198
+ class="field-addon-actions"
199
+ >
200
+ <ShwfedActions :config="addonConfig" />
201
+ </InputGroupAddon>
182
202
  </InputGroup>
183
203
  <FieldMessages
184
204
  v-if="visible"
@@ -187,3 +207,7 @@ async function onBlur() {
187
207
  />
188
208
  </Field>
189
209
  </template>
210
+
211
+ <style scoped>
212
+ .field-addon-actions :deep([data-slot=buttons]){align-items:center;gap:.125rem}.field-addon-actions :deep([data-slot=buttons-dropdown-trigger]),.field-addon-actions :deep([data-slot=buttons-item]){border-radius:.125rem;color:#71717a;height:1.5rem;min-width:1.5rem;padding:0}.field-addon-actions :deep([data-slot=buttons-dropdown-trigger]:hover:not(:disabled)),.field-addon-actions :deep([data-slot=buttons-item]:hover:not(:disabled)){color:#3f3f46}
213
+ </style>
@@ -52,6 +52,138 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
52
52
  valueAsString: Schema.optional<Schema.SchemaClass<boolean, boolean, never>>;
53
53
  min: Schema.optional<Schema.Schema<string, string, never>>;
54
54
  max: Schema.optional<Schema.Schema<string, string, never>>;
55
+ addon: Schema.optional<Schema.Struct<{
56
+ groups: Schema.optionalWith<Schema.Array$<Schema.Struct<{
57
+ id: Schema.refine<string, typeof Schema.String>;
58
+ variant: Schema.optional<Schema.Literal<["default", "primary", "destructive", "ghost", "link"]>>;
59
+ }>>, {
60
+ default: () => never[];
61
+ }>;
62
+ items: Schema.optionalWith<Schema.Array$<Schema.Schema<import("../../../../actions/schema.js").RegistryItemValue | {
63
+ readonly disabled?: string | undefined;
64
+ readonly id: string;
65
+ readonly title: readonly [{
66
+ readonly locale: "zh";
67
+ readonly message: string;
68
+ }, ...{
69
+ readonly locale: "en" | "ja" | "ko";
70
+ readonly message: string;
71
+ }[]];
72
+ readonly icon?: string | undefined;
73
+ readonly hidden?: string | undefined;
74
+ readonly tooltip?: readonly [{
75
+ readonly locale: "zh";
76
+ readonly message: string;
77
+ }, ...{
78
+ readonly locale: "en" | "ja" | "ko";
79
+ readonly message: string;
80
+ }[]] | undefined;
81
+ readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
82
+ readonly action?: any;
83
+ readonly groupId: string;
84
+ readonly hideTitle?: boolean | undefined;
85
+ } | {
86
+ readonly id: string;
87
+ readonly title: readonly [{
88
+ readonly locale: "zh";
89
+ readonly message: string;
90
+ }, ...{
91
+ readonly locale: "en" | "ja" | "ko";
92
+ readonly message: string;
93
+ }[]];
94
+ readonly icon?: string | undefined;
95
+ readonly items: readonly (import("../../../../actions/schema.js").RegistrySubItemValue | {
96
+ readonly disabled?: string | undefined;
97
+ readonly id: string;
98
+ readonly title: readonly [{
99
+ readonly locale: "zh";
100
+ readonly message: string;
101
+ }, ...{
102
+ readonly locale: "en" | "ja" | "ko";
103
+ readonly message: string;
104
+ }[]];
105
+ readonly icon?: string | undefined;
106
+ readonly hidden?: string | undefined;
107
+ readonly tooltip?: readonly [{
108
+ readonly locale: "zh";
109
+ readonly message: string;
110
+ }, ...{
111
+ readonly locale: "en" | "ja" | "ko";
112
+ readonly message: string;
113
+ }[]] | undefined;
114
+ readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
115
+ readonly action?: any;
116
+ })[];
117
+ readonly groupId: string;
118
+ readonly hideTitle?: boolean | undefined;
119
+ }, import("../../../../actions/schema.js").RegistryItemValue | {
120
+ readonly id: string;
121
+ readonly title: readonly [{
122
+ readonly locale: "zh";
123
+ readonly message: string;
124
+ }, ...{
125
+ readonly locale: "en" | "ja" | "ko";
126
+ readonly message: string;
127
+ }[]];
128
+ readonly groupId: string;
129
+ readonly disabled?: string | undefined;
130
+ readonly icon?: string | undefined;
131
+ readonly hidden?: string | undefined;
132
+ readonly tooltip?: readonly [{
133
+ readonly locale: "zh";
134
+ readonly message: string;
135
+ }, ...{
136
+ readonly locale: "en" | "ja" | "ko";
137
+ readonly message: string;
138
+ }[]] | undefined;
139
+ readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
140
+ readonly action?: any;
141
+ readonly hideTitle?: boolean | undefined;
142
+ } | {
143
+ readonly id: string;
144
+ readonly title: readonly [{
145
+ readonly locale: "zh";
146
+ readonly message: string;
147
+ }, ...{
148
+ readonly locale: "en" | "ja" | "ko";
149
+ readonly message: string;
150
+ }[]];
151
+ readonly items: readonly (import("../../../../actions/schema.js").RegistrySubItemValue | {
152
+ readonly id: string;
153
+ readonly title: readonly [{
154
+ readonly locale: "zh";
155
+ readonly message: string;
156
+ }, ...{
157
+ readonly locale: "en" | "ja" | "ko";
158
+ readonly message: string;
159
+ }[]];
160
+ readonly disabled?: string | undefined;
161
+ readonly icon?: string | undefined;
162
+ readonly hidden?: string | undefined;
163
+ readonly tooltip?: readonly [{
164
+ readonly locale: "zh";
165
+ readonly message: string;
166
+ }, ...{
167
+ readonly locale: "en" | "ja" | "ko";
168
+ readonly message: string;
169
+ }[]] | undefined;
170
+ readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
171
+ readonly action?: any;
172
+ })[];
173
+ readonly groupId: string;
174
+ readonly icon?: string | undefined;
175
+ readonly hideTitle?: boolean | undefined;
176
+ }, never>>, {
177
+ default: () => never[];
178
+ }>;
179
+ size: Schema.optionalWith<Schema.Literal<["default", "sm", "xs"]>, {
180
+ default: () => "default";
181
+ }>;
182
+ gap: Schema.optionalWith<Schema.filter<Schema.filter<typeof Schema.Number>>, {
183
+ default: () => number;
184
+ }>;
185
+ style: Schema.optional<typeof Schema.String>;
186
+ }>>;
55
187
  id: Schema.refine<string, typeof Schema.String>;
56
188
  displayName: Schema.optional<Schema.SchemaClass<string, string, never>>;
57
189
  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.number";
6
18
  export const compatibilityDate = "2026-04-28";
7
19
  export const metadata = {
@@ -66,7 +78,8 @@ export function schema(configure) {
66
78
  max: Schema.optional(CelNumber.annotations({
67
79
  title: "\u6700\u5927\u503C",
68
80
  description: "\u5141\u8BB8\u8F93\u5165\u7684\u6700\u5927\u503C\u8868\u8FBE\u5F0F\uFF1B\u7559\u7A7A\u65F6\u4E0D\u9650\u5236\u4E0A\u9650"
69
- }))
81
+ })),
82
+ addon: Schema.optional(AddonActions(configure))
70
83
  }).annotations({
71
84
  title: "NumberField",
72
85
  description: "\u6570\u503C\u8F93\u5165"
@@ -50,9 +50,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
50
50
  readonly locale: "en" | "ja" | "ko";
51
51
  readonly message: string;
52
52
  }[]] | undefined;
53
- readonly precision?: number | undefined;
54
- readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
55
- readonly valueAsString?: boolean | undefined;
56
53
  readonly validations?: readonly {
57
54
  readonly message: readonly [{
58
55
  readonly locale: "zh";
@@ -64,6 +61,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
64
61
  readonly warning?: boolean | undefined;
65
62
  readonly when: string;
66
63
  }[] | undefined;
64
+ readonly precision?: number | undefined;
65
+ readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
66
+ readonly valueAsString?: boolean | undefined;
67
67
  }) => any;
68
68
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
69
69
  "onUpdate:modelValue"?: ((value: {
@@ -113,9 +113,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
113
113
  readonly locale: "en" | "ja" | "ko";
114
114
  readonly message: string;
115
115
  }[]] | undefined;
116
- readonly precision?: number | undefined;
117
- readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
118
- readonly valueAsString?: boolean | undefined;
119
116
  readonly validations?: readonly {
120
117
  readonly message: readonly [{
121
118
  readonly locale: "zh";
@@ -127,6 +124,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
127
124
  readonly warning?: boolean | undefined;
128
125
  readonly when: string;
129
126
  }[] | undefined;
127
+ readonly precision?: number | undefined;
128
+ readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
129
+ readonly valueAsString?: boolean | undefined;
130
130
  }) => any) | undefined;
131
131
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
132
132
  declare const _default: typeof __VLS_export;
@@ -50,9 +50,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
50
50
  readonly locale: "en" | "ja" | "ko";
51
51
  readonly message: string;
52
52
  }[]] | undefined;
53
- readonly precision?: number | undefined;
54
- readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
55
- readonly valueAsString?: boolean | undefined;
56
53
  readonly validations?: readonly {
57
54
  readonly message: readonly [{
58
55
  readonly locale: "zh";
@@ -64,6 +61,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
64
61
  readonly warning?: boolean | undefined;
65
62
  readonly when: string;
66
63
  }[] | undefined;
64
+ readonly precision?: number | undefined;
65
+ readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
66
+ readonly valueAsString?: boolean | undefined;
67
67
  }) => any;
68
68
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
69
69
  "onUpdate:modelValue"?: ((value: {
@@ -113,9 +113,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
113
113
  readonly locale: "en" | "ja" | "ko";
114
114
  readonly message: string;
115
115
  }[]] | undefined;
116
- readonly precision?: number | undefined;
117
- readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
118
- readonly valueAsString?: boolean | undefined;
119
116
  readonly validations?: readonly {
120
117
  readonly message: readonly [{
121
118
  readonly locale: "zh";
@@ -127,6 +124,9 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
127
124
  readonly warning?: boolean | undefined;
128
125
  readonly when: string;
129
126
  }[] | undefined;
127
+ readonly precision?: number | undefined;
128
+ readonly roundingMode?: "round" | "floor" | "ceil" | undefined;
129
+ readonly valueAsString?: boolean | undefined;
130
130
  }) => any) | undefined;
131
131
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
132
132
  declare const _default: typeof __VLS_export;
@@ -31,6 +31,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
31
31
  readonly mode: "formula" | "prefill";
32
32
  readonly expression: string;
33
33
  } | undefined;
34
+ readonly validations?: readonly {
35
+ readonly message: readonly [{
36
+ readonly locale: "zh";
37
+ readonly message: string;
38
+ }, ...{
39
+ readonly locale: "en" | "ja" | "ko";
40
+ readonly message: string;
41
+ }[]];
42
+ readonly warning?: boolean | undefined;
43
+ readonly when: string;
44
+ }[] | undefined;
34
45
  readonly trueLabel?: readonly [{
35
46
  readonly locale: "zh";
36
47
  readonly message: string;
@@ -45,17 +56,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
45
56
  readonly locale: "en" | "ja" | "ko";
46
57
  readonly message: string;
47
58
  }[]] | undefined;
48
- readonly validations?: readonly {
49
- readonly message: readonly [{
50
- readonly locale: "zh";
51
- readonly message: string;
52
- }, ...{
53
- readonly locale: "en" | "ja" | "ko";
54
- readonly message: string;
55
- }[]];
56
- readonly warning?: boolean | undefined;
57
- readonly when: string;
58
- }[] | undefined;
59
59
  }) => any;
60
60
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
61
61
  "onUpdate:modelValue"?: ((value: {
@@ -86,6 +86,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
86
86
  readonly mode: "formula" | "prefill";
87
87
  readonly expression: string;
88
88
  } | undefined;
89
+ readonly validations?: readonly {
90
+ readonly message: readonly [{
91
+ readonly locale: "zh";
92
+ readonly message: string;
93
+ }, ...{
94
+ readonly locale: "en" | "ja" | "ko";
95
+ readonly message: string;
96
+ }[]];
97
+ readonly warning?: boolean | undefined;
98
+ readonly when: string;
99
+ }[] | undefined;
89
100
  readonly trueLabel?: readonly [{
90
101
  readonly locale: "zh";
91
102
  readonly message: string;
@@ -100,17 +111,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
100
111
  readonly locale: "en" | "ja" | "ko";
101
112
  readonly message: string;
102
113
  }[]] | undefined;
103
- readonly validations?: readonly {
104
- readonly message: readonly [{
105
- readonly locale: "zh";
106
- readonly message: string;
107
- }, ...{
108
- readonly locale: "en" | "ja" | "ko";
109
- readonly message: string;
110
- }[]];
111
- readonly warning?: boolean | undefined;
112
- readonly when: string;
113
- }[] | undefined;
114
114
  }) => any) | undefined;
115
115
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
116
116
  declare const _default: typeof __VLS_export;