@shwfed/config 2.10.11 → 2.10.12

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 (76) hide show
  1. package/dist/mcp.mjs +1043 -880
  2. package/dist/module.json +1 -1
  3. package/dist/preview/assets/{FieldGroup.vue_vue_type_script_setup_true_lang-DSupaUBQ.js → FieldGroup.vue_vue_type_script_setup_true_lang-BeqytPDr.js} +1 -1
  4. package/dist/preview/assets/{badge-BpMIBZb2.js → badge-DkHwLDps.js} +1 -1
  5. package/dist/preview/assets/{config-CY9L8__h.js → config-7KeAl8UU.js} +1 -1
  6. package/dist/preview/assets/{config-Bx4-IdW5.js → config-CVPVYMuh.js} +1 -1
  7. package/dist/preview/assets/{config-Bz643_RE.js → config-CZ1e9utV.js} +1 -1
  8. package/dist/preview/assets/{config-DrkDnICQ.js → config-Cedm-E2H.js} +1 -1
  9. package/dist/preview/assets/{config-CM4nX_7y.js → config-Cft-srKd.js} +1 -1
  10. package/dist/preview/assets/{config-v7UFMF25.js → config-Cy6Eix27.js} +1 -1
  11. package/dist/preview/assets/{config-Cc1ThF9T.js → config-DAZ2Uj6B.js} +1 -1
  12. package/dist/preview/assets/{config-DbtYnaaf.js → config-DCANpbtq.js} +1 -1
  13. package/dist/preview/assets/{config-CujkaO8S.js → config-DJQ2LOWo.js} +1 -1
  14. package/dist/preview/assets/{config-C7nJ8jl6.js → config-DQVKd54J.js} +1 -1
  15. package/dist/preview/assets/{config-agH4hNej.js → config-DbV3RlZz.js} +1 -1
  16. package/dist/preview/assets/{config-c2iiXckz.js → config-Dx1SXsSf.js} +1 -1
  17. package/dist/preview/assets/{config-CNJS9Ncm.js → config-OPQWANCx.js} +1 -1
  18. package/dist/preview/assets/{config-BCCT-UCw.js → config-Uw4cvZGX.js} +1 -1
  19. package/dist/preview/assets/{definition.vue_vue_type_script_setup_true_lang-B1dZHF9Z.js → definition.vue_vue_type_script_setup_true_lang-D4Gh9PzS.js} +1 -1
  20. package/dist/preview/assets/{index-DdySlgoq.js → index-B3HnlKis.js} +193 -193
  21. package/dist/preview/assets/index-BAY6NLoo.css +1 -0
  22. package/dist/preview/assets/{index-B10aTz32.js → index-Cum0oK9u.js} +1 -1
  23. package/dist/preview/assets/index-CxUuhfsO.js +1 -0
  24. package/dist/preview/assets/{item-DxWeqOxe.js → item-H4QeOpnC.js} +1 -1
  25. package/dist/preview/assets/{runtime-BcWQ55Ub.js → runtime-BotFX6qJ.js} +1 -1
  26. package/dist/preview/assets/{runtime-C6oMTKIZ.js → runtime-C3532B0Y.js} +1 -1
  27. package/dist/preview/assets/{runtime-rpKOBs2Q.js → runtime-CNMjRr9Y.js} +1 -1
  28. package/dist/preview/assets/{runtime-CeItNJdF.js → runtime-CTnwTJlw.js} +1 -1
  29. package/dist/preview/assets/{runtime-P58D1JCj.js → runtime-CwgX0PuH.js} +1 -1
  30. package/dist/preview/assets/{runtime-DwgCzoDf.js → runtime-D5HcLLLR.js} +1 -1
  31. package/dist/preview/assets/{runtime-3VPnK4Ve.js → runtime-DvCHNIPq.js} +1 -1
  32. package/dist/preview/assets/{runtime-D6jswLOt.js → runtime-cKOD2A6u.js} +1 -1
  33. package/dist/preview/assets/{runtime-BO_Ak4ly.js → runtime-ibuFFD1K.js} +1 -1
  34. package/dist/preview/assets/{runtime-DQK6Vajf.js → runtime-sPGVp7yA.js} +1 -1
  35. package/dist/preview/assets/{schema-meta-BtDKldOy.js → schema-meta-DtZNwp3h.js} +1 -1
  36. package/dist/preview/index.html +2 -2
  37. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.d.vue.ts +22 -22
  38. package/dist/runtime/components/form/fields/2026-05-23/com.shwfed.form.field.tree.multi/config.vue.d.ts +22 -22
  39. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +22 -22
  40. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +22 -22
  41. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +22 -22
  42. package/dist/runtime/components/form/fields/2026-05-26/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +22 -22
  43. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.d.vue.ts +22 -22
  44. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.multi/config.vue.d.ts +22 -22
  45. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.d.vue.ts +22 -22
  46. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.combobox.single/config.vue.d.ts +22 -22
  47. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.d.vue.ts +22 -22
  48. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.multi/config.vue.d.ts +22 -22
  49. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.d.vue.ts +22 -22
  50. package/dist/runtime/components/form/fields/2026-05-28/com.shwfed.form.field.tree.single/config.vue.d.ts +22 -22
  51. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.number-input/config.vue +83 -3
  52. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.number-input/runtime.vue +28 -0
  53. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.number-input/schema.d.ts +132 -0
  54. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.number-input/schema.js +19 -2
  55. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.text-input/config.vue +82 -2
  56. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.text-input/runtime.vue +28 -0
  57. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.text-input/schema.d.ts +132 -0
  58. package/dist/runtime/components/table/columns/2026-05-20/com.shwfed.table.column.text-input/schema.js +19 -2
  59. package/dist/runtime/components/table/columns/2026-06-17/com.shwfed.table.column.date-input/runtime.vue +8 -0
  60. package/dist/runtime/components/table/columns/2026-06-22/com.shwfed.table.column.date-range-input/config.d.vue.ts +10 -0
  61. package/dist/runtime/components/table/columns/2026-06-22/com.shwfed.table.column.date-range-input/config.vue +717 -0
  62. package/dist/runtime/components/table/columns/2026-06-22/com.shwfed.table.column.date-range-input/config.vue.d.ts +10 -0
  63. package/dist/runtime/components/table/columns/2026-06-22/com.shwfed.table.column.date-range-input/runtime.d.vue.ts +9 -0
  64. package/dist/runtime/components/table/columns/2026-06-22/com.shwfed.table.column.date-range-input/runtime.vue +152 -0
  65. package/dist/runtime/components/table/columns/2026-06-22/com.shwfed.table.column.date-range-input/runtime.vue.d.ts +9 -0
  66. package/dist/runtime/components/table/columns/2026-06-22/com.shwfed.table.column.date-range-input/schema.d.ts +87 -0
  67. package/dist/runtime/components/table/columns/2026-06-22/com.shwfed.table.column.date-range-input/schema.js +122 -0
  68. package/dist/runtime/components/ui/date-picker/DatePicker.d.vue.ts +1 -0
  69. package/dist/runtime/components/ui/date-picker/DatePicker.vue +3 -0
  70. package/dist/runtime/components/ui/date-picker/DatePicker.vue.d.ts +1 -0
  71. package/dist/runtime/components/ui/date-range-picker/DateRangePicker.d.vue.ts +1 -0
  72. package/dist/runtime/components/ui/date-range-picker/DateRangePicker.vue +2 -0
  73. package/dist/runtime/components/ui/date-range-picker/DateRangePicker.vue.d.ts +1 -0
  74. package/package.json +1 -1
  75. package/dist/preview/assets/index-Cc4BT5dc.css +0 -1
  76. package/dist/preview/assets/index-j5Pri4vN.js +0 -1
@@ -44,17 +44,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
44
44
  readonly data: string;
45
45
  readonly request?: string | undefined;
46
46
  };
47
- readonly validations?: readonly {
48
- readonly message: readonly [{
49
- readonly locale: "zh";
50
- readonly message: string;
51
- }, ...{
52
- readonly locale: "en" | "ja" | "ko";
53
- readonly message: string;
54
- }[]];
55
- readonly warning?: boolean | undefined;
56
- readonly when: string;
57
- }[] | undefined;
58
47
  readonly nodeKey: string;
59
48
  readonly nodeChildren: string;
60
49
  readonly nodeLabel: readonly [{
@@ -73,6 +62,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
73
62
  }[]] | undefined;
74
63
  readonly nodeSelectable?: string | undefined;
75
64
  readonly expandAll: boolean;
65
+ readonly validations?: readonly {
66
+ readonly message: readonly [{
67
+ readonly locale: "zh";
68
+ readonly message: string;
69
+ }, ...{
70
+ readonly locale: "en" | "ja" | "ko";
71
+ readonly message: string;
72
+ }[]];
73
+ readonly warning?: boolean | undefined;
74
+ readonly when: string;
75
+ }[] | undefined;
76
76
  }) => any;
77
77
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
78
78
  "onUpdate:modelValue"?: ((value: {
@@ -116,17 +116,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
116
116
  readonly data: string;
117
117
  readonly request?: string | undefined;
118
118
  };
119
- readonly validations?: readonly {
120
- readonly message: readonly [{
121
- readonly locale: "zh";
122
- readonly message: string;
123
- }, ...{
124
- readonly locale: "en" | "ja" | "ko";
125
- readonly message: string;
126
- }[]];
127
- readonly warning?: boolean | undefined;
128
- readonly when: string;
129
- }[] | undefined;
130
119
  readonly nodeKey: string;
131
120
  readonly nodeChildren: string;
132
121
  readonly nodeLabel: readonly [{
@@ -145,6 +134,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
145
134
  }[]] | undefined;
146
135
  readonly nodeSelectable?: string | undefined;
147
136
  readonly expandAll: boolean;
137
+ readonly validations?: readonly {
138
+ readonly message: readonly [{
139
+ readonly locale: "zh";
140
+ readonly message: string;
141
+ }, ...{
142
+ readonly locale: "en" | "ja" | "ko";
143
+ readonly message: string;
144
+ }[]];
145
+ readonly warning?: boolean | undefined;
146
+ readonly when: string;
147
+ }[] | undefined;
148
148
  }) => any) | undefined;
149
149
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
150
150
  declare const _default: typeof __VLS_export;
@@ -47,17 +47,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
47
47
  readonly request?: string | undefined;
48
48
  };
49
49
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
50
- readonly validations?: readonly {
51
- readonly message: readonly [{
52
- readonly locale: "zh";
53
- readonly message: string;
54
- }, ...{
55
- readonly locale: "en" | "ja" | "ko";
56
- readonly message: string;
57
- }[]];
58
- readonly warning?: boolean | undefined;
59
- readonly when: string;
60
- }[] | undefined;
61
50
  readonly nodeKey: string;
62
51
  readonly nodeChildren: string;
63
52
  readonly nodeLabel: readonly [{
@@ -76,6 +65,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
76
65
  }[]] | undefined;
77
66
  readonly nodeSelectable?: string | undefined;
78
67
  readonly expandAll: boolean;
68
+ readonly validations?: readonly {
69
+ readonly message: readonly [{
70
+ readonly locale: "zh";
71
+ readonly message: string;
72
+ }, ...{
73
+ readonly locale: "en" | "ja" | "ko";
74
+ readonly message: string;
75
+ }[]];
76
+ readonly warning?: boolean | undefined;
77
+ readonly when: string;
78
+ }[] | undefined;
79
79
  }) => any;
80
80
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
81
81
  "onUpdate:modelValue"?: ((value: {
@@ -122,17 +122,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
122
122
  readonly request?: string | undefined;
123
123
  };
124
124
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
125
- readonly validations?: readonly {
126
- readonly message: readonly [{
127
- readonly locale: "zh";
128
- readonly message: string;
129
- }, ...{
130
- readonly locale: "en" | "ja" | "ko";
131
- readonly message: string;
132
- }[]];
133
- readonly warning?: boolean | undefined;
134
- readonly when: string;
135
- }[] | undefined;
136
125
  readonly nodeKey: string;
137
126
  readonly nodeChildren: string;
138
127
  readonly nodeLabel: readonly [{
@@ -151,6 +140,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
151
140
  }[]] | undefined;
152
141
  readonly nodeSelectable?: string | undefined;
153
142
  readonly expandAll: boolean;
143
+ readonly validations?: readonly {
144
+ readonly message: readonly [{
145
+ readonly locale: "zh";
146
+ readonly message: string;
147
+ }, ...{
148
+ readonly locale: "en" | "ja" | "ko";
149
+ readonly message: string;
150
+ }[]];
151
+ readonly warning?: boolean | undefined;
152
+ readonly when: string;
153
+ }[] | undefined;
154
154
  }) => any) | undefined;
155
155
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
156
156
  declare const _default: typeof __VLS_export;
@@ -47,17 +47,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
47
47
  readonly request?: string | undefined;
48
48
  };
49
49
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
50
- readonly validations?: readonly {
51
- readonly message: readonly [{
52
- readonly locale: "zh";
53
- readonly message: string;
54
- }, ...{
55
- readonly locale: "en" | "ja" | "ko";
56
- readonly message: string;
57
- }[]];
58
- readonly warning?: boolean | undefined;
59
- readonly when: string;
60
- }[] | undefined;
61
50
  readonly nodeKey: string;
62
51
  readonly nodeChildren: string;
63
52
  readonly nodeLabel: readonly [{
@@ -76,6 +65,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
76
65
  }[]] | undefined;
77
66
  readonly nodeSelectable?: string | undefined;
78
67
  readonly expandAll: boolean;
68
+ readonly validations?: readonly {
69
+ readonly message: readonly [{
70
+ readonly locale: "zh";
71
+ readonly message: string;
72
+ }, ...{
73
+ readonly locale: "en" | "ja" | "ko";
74
+ readonly message: string;
75
+ }[]];
76
+ readonly warning?: boolean | undefined;
77
+ readonly when: string;
78
+ }[] | undefined;
79
79
  }) => any;
80
80
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
81
81
  "onUpdate:modelValue"?: ((value: {
@@ -122,17 +122,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
122
122
  readonly request?: string | undefined;
123
123
  };
124
124
  readonly cascade: "independent" | "cascade-down" | "cascade-both";
125
- readonly validations?: readonly {
126
- readonly message: readonly [{
127
- readonly locale: "zh";
128
- readonly message: string;
129
- }, ...{
130
- readonly locale: "en" | "ja" | "ko";
131
- readonly message: string;
132
- }[]];
133
- readonly warning?: boolean | undefined;
134
- readonly when: string;
135
- }[] | undefined;
136
125
  readonly nodeKey: string;
137
126
  readonly nodeChildren: string;
138
127
  readonly nodeLabel: readonly [{
@@ -151,6 +140,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
151
140
  }[]] | undefined;
152
141
  readonly nodeSelectable?: string | undefined;
153
142
  readonly expandAll: boolean;
143
+ readonly validations?: readonly {
144
+ readonly message: readonly [{
145
+ readonly locale: "zh";
146
+ readonly message: string;
147
+ }, ...{
148
+ readonly locale: "en" | "ja" | "ko";
149
+ readonly message: string;
150
+ }[]];
151
+ readonly warning?: boolean | undefined;
152
+ readonly when: string;
153
+ }[] | undefined;
154
154
  }) => any) | undefined;
155
155
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
156
156
  declare const _default: typeof __VLS_export;
@@ -46,17 +46,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
46
46
  readonly data: string;
47
47
  readonly request?: string | undefined;
48
48
  };
49
- readonly validations?: readonly {
50
- readonly message: readonly [{
51
- readonly locale: "zh";
52
- readonly message: string;
53
- }, ...{
54
- readonly locale: "en" | "ja" | "ko";
55
- readonly message: string;
56
- }[]];
57
- readonly warning?: boolean | undefined;
58
- readonly when: string;
59
- }[] | undefined;
60
49
  readonly nodeKey: string;
61
50
  readonly nodeChildren: string;
62
51
  readonly nodeLabel: readonly [{
@@ -75,6 +64,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
75
64
  }[]] | undefined;
76
65
  readonly nodeSelectable?: string | undefined;
77
66
  readonly expandAll: boolean;
67
+ readonly validations?: readonly {
68
+ readonly message: readonly [{
69
+ readonly locale: "zh";
70
+ readonly message: string;
71
+ }, ...{
72
+ readonly locale: "en" | "ja" | "ko";
73
+ readonly message: string;
74
+ }[]];
75
+ readonly warning?: boolean | undefined;
76
+ readonly when: string;
77
+ }[] | undefined;
78
78
  }) => any;
79
79
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
80
80
  "onUpdate:modelValue"?: ((value: {
@@ -120,17 +120,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
120
120
  readonly data: string;
121
121
  readonly request?: string | undefined;
122
122
  };
123
- readonly validations?: readonly {
124
- readonly message: readonly [{
125
- readonly locale: "zh";
126
- readonly message: string;
127
- }, ...{
128
- readonly locale: "en" | "ja" | "ko";
129
- readonly message: string;
130
- }[]];
131
- readonly warning?: boolean | undefined;
132
- readonly when: string;
133
- }[] | undefined;
134
123
  readonly nodeKey: string;
135
124
  readonly nodeChildren: string;
136
125
  readonly nodeLabel: readonly [{
@@ -149,6 +138,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
149
138
  }[]] | undefined;
150
139
  readonly nodeSelectable?: string | undefined;
151
140
  readonly expandAll: boolean;
141
+ readonly validations?: readonly {
142
+ readonly message: readonly [{
143
+ readonly locale: "zh";
144
+ readonly message: string;
145
+ }, ...{
146
+ readonly locale: "en" | "ja" | "ko";
147
+ readonly message: string;
148
+ }[]];
149
+ readonly warning?: boolean | undefined;
150
+ readonly when: string;
151
+ }[] | undefined;
152
152
  }) => any) | undefined;
153
153
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
154
154
  declare const _default: typeof __VLS_export;
@@ -46,17 +46,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
46
46
  readonly data: string;
47
47
  readonly request?: string | undefined;
48
48
  };
49
- readonly validations?: readonly {
50
- readonly message: readonly [{
51
- readonly locale: "zh";
52
- readonly message: string;
53
- }, ...{
54
- readonly locale: "en" | "ja" | "ko";
55
- readonly message: string;
56
- }[]];
57
- readonly warning?: boolean | undefined;
58
- readonly when: string;
59
- }[] | undefined;
60
49
  readonly nodeKey: string;
61
50
  readonly nodeChildren: string;
62
51
  readonly nodeLabel: readonly [{
@@ -75,6 +64,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
75
64
  }[]] | undefined;
76
65
  readonly nodeSelectable?: string | undefined;
77
66
  readonly expandAll: boolean;
67
+ readonly validations?: readonly {
68
+ readonly message: readonly [{
69
+ readonly locale: "zh";
70
+ readonly message: string;
71
+ }, ...{
72
+ readonly locale: "en" | "ja" | "ko";
73
+ readonly message: string;
74
+ }[]];
75
+ readonly warning?: boolean | undefined;
76
+ readonly when: string;
77
+ }[] | undefined;
78
78
  }) => any;
79
79
  }, string, import("vue").PublicProps, Readonly<__VLS_ModelProps> & Readonly<{
80
80
  "onUpdate:modelValue"?: ((value: {
@@ -120,17 +120,6 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
120
120
  readonly data: string;
121
121
  readonly request?: string | undefined;
122
122
  };
123
- readonly validations?: readonly {
124
- readonly message: readonly [{
125
- readonly locale: "zh";
126
- readonly message: string;
127
- }, ...{
128
- readonly locale: "en" | "ja" | "ko";
129
- readonly message: string;
130
- }[]];
131
- readonly warning?: boolean | undefined;
132
- readonly when: string;
133
- }[] | undefined;
134
123
  readonly nodeKey: string;
135
124
  readonly nodeChildren: string;
136
125
  readonly nodeLabel: readonly [{
@@ -149,6 +138,17 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_ModelProps, {},
149
138
  }[]] | undefined;
150
139
  readonly nodeSelectable?: string | undefined;
151
140
  readonly expandAll: boolean;
141
+ readonly validations?: readonly {
142
+ readonly message: readonly [{
143
+ readonly locale: "zh";
144
+ readonly message: string;
145
+ }, ...{
146
+ readonly locale: "en" | "ja" | "ko";
147
+ readonly message: string;
148
+ }[]];
149
+ readonly warning?: boolean | undefined;
150
+ readonly when: string;
151
+ }[] | undefined;
152
152
  }) => any) | undefined;
153
153
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
154
154
  declare const _default: typeof __VLS_export;
@@ -1,11 +1,11 @@
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 { ExpressionEditor } from "../../../../ui/expression-editor";
5
5
  import { Switch } from "../../../../ui/switch";
6
6
  import { Separator } from "../../../../ui/separator";
7
+ import { Button } from "../../../../ui/button";
7
8
  import { Field, FieldLabel } from "../../../../ui/field";
8
- import { Locale } from "../../../../ui/locale";
9
9
  import {
10
10
  DropdownMenu,
11
11
  DropdownMenuContent,
@@ -19,9 +19,14 @@ import {
19
19
  InputGroupInput,
20
20
  InputGroupNumberField
21
21
  } from "../../../../ui/input-group";
22
+ import ActionsConfigEditor from "../../../../actions/config.vue";
22
23
  import { getStructFieldDescription, getStructFieldTitle } from "../../../utils/schema-meta";
23
24
  import { Markdown } from "../../../../ui/markdown";
24
25
  import DerivedValueEditor from "../../../../form/DerivedValueEditor.vue";
26
+ import { Locale } from "../../../../ui/locale";
27
+ import { TABLE_COLUMN_LAYOUT_KEY } from "../../../column-layout";
28
+ import { BREADCRUMB_EXTENSION_KEY } from "../../../../config/breadcrumb-extension";
29
+ import { registerRowVariablesIfAbsent } from "../../../utils/shared";
25
30
  import { schema } from "./schema";
26
31
  defineOptions({ name: "ShwfedTableNumberInputRendererConfig" });
27
32
  const value = defineModel({ type: Object, ...{ required: true } });
@@ -33,6 +38,47 @@ const ROW_VARS = {
33
38
  row: { type: "dyn", label: "\u5F53\u524D\u884C\u6570\u636E" },
34
39
  index: { type: "number", label: "\u884C\u7D22\u5F15" }
35
40
  };
41
+ const layout = inject(TABLE_COLUMN_LAYOUT_KEY, null);
42
+ const breadcrumbExt = inject(BREADCRUMB_EXTENSION_KEY, null);
43
+ const editingAddon = ref(false);
44
+ function closeAddon() {
45
+ editingAddon.value = false;
46
+ }
47
+ const addonCrumb = breadcrumbExt?.add();
48
+ watch(editingAddon, (on) => {
49
+ if (layout) layout.fullPane.value = on;
50
+ if (addonCrumb) {
51
+ addonCrumb.label.value = on ? "\u8F93\u5165\u6846\u5185\u6309\u94AE" : null;
52
+ addonCrumb.back.value = on ? closeAddon : null;
53
+ }
54
+ });
55
+ onBeforeUnmount(() => {
56
+ if (layout) layout.fullPane.value = false;
57
+ addonCrumb?.dispose();
58
+ });
59
+ const addonItemCount = computed(() => value.value.addon?.items.length ?? 0);
60
+ const addonValue = computed({
61
+ get: () => ({
62
+ kind: "shwfed.component.action",
63
+ size: value.value.addon?.size ?? "xs",
64
+ gap: value.value.addon?.gap ?? 4,
65
+ style: value.value.addon?.style,
66
+ groups: value.value.addon?.groups ?? [],
67
+ items: value.value.addon?.items ?? []
68
+ }),
69
+ set: (next) => {
70
+ const { size, gap, style, groups, items } = next;
71
+ if (groups.length === 0 && items.length === 0) {
72
+ const { addon: _omit, ...rest } = value.value;
73
+ value.value = rest;
74
+ return;
75
+ }
76
+ value.value = {
77
+ ...value.value,
78
+ addon: { size, gap, groups, items, ...style === void 0 ? {} : { style } }
79
+ };
80
+ }
81
+ });
36
82
  const ROUNDING_MODE_OPTIONS = [
37
83
  { value: "round", label: "\u56DB\u820D\u4E94\u5165" },
38
84
  { value: "floor", label: "\u5411\u4E0B\u53D6\u6574" },
@@ -145,7 +191,17 @@ function onMaxChange(v) {
145
191
  </script>
146
192
 
147
193
  <template>
148
- <div class="space-y-5">
194
+ <ActionsConfigEditor
195
+ v-if="editingAddon"
196
+ v-model="addonValue"
197
+ :configure="registerRowVariablesIfAbsent"
198
+ hide-size
199
+ />
200
+
201
+ <div
202
+ v-else
203
+ class="space-y-5"
204
+ >
149
205
  <div class="grid grid-cols-2 gap-x-6 gap-y-4">
150
206
  <Field orientation="vertical">
151
207
  <FieldLabel class="text-xs text-zinc-500">
@@ -530,5 +586,29 @@ function onMaxChange(v) {
530
586
  </InputGroup>
531
587
  </Field>
532
588
  </div>
589
+ <Separator />
590
+ <Field orientation="vertical">
591
+ <FieldLabel class="text-xs text-zinc-500">
592
+ <template
593
+ v-if="fieldDescription('addon')"
594
+ #tooltip
595
+ >
596
+ <Markdown
597
+ :source="fieldDescription('addon')"
598
+ block
599
+ class="prose prose-sm prose-zinc"
600
+ />
601
+ </template>
602
+ {{ fieldTitle("addon") }}
603
+ </FieldLabel>
604
+ <Button
605
+ type="button"
606
+ class="w-full justify-center"
607
+ @click="editingAddon = true"
608
+ >
609
+ <Icon icon="fluent:add-20-regular" />
610
+ <span>{{ addonItemCount > 0 ? "\u914D\u7F6E\u6309\u94AE" : "\u6DFB\u52A0\u6309\u94AE" }}</span>
611
+ </Button>
612
+ </Field>
533
613
  </div>
534
614
  </template>
@@ -8,6 +8,7 @@ import { celBindings, injectCELContext } from "../../../../../utils/cel-context"
8
8
  import { useFormReadonly } from "../../../../form/utils/readonly";
9
9
  import { getLocalizedText } from "../../../../../share/locale";
10
10
  import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupNumberField } from "../../../../ui/input-group";
11
+ import ShwfedActions from "../../../../actions/components/group.vue";
11
12
  import { useFieldValue } from "../../../../form/utils/field-value";
12
13
  defineOptions({ name: "ShwfedTableNumberInputRendererRuntime" });
13
14
  const props = defineProps({
@@ -80,6 +81,18 @@ function applyRounding(n, precision, mode) {
80
81
  return Math.round(n * factor) / factor;
81
82
  }
82
83
  }
84
+ const addonConfig = computed(() => {
85
+ const addon = props.column.addon;
86
+ if (!addon || addon.items.length === 0) return null;
87
+ return {
88
+ kind: "shwfed.component.action",
89
+ size: addon.size ?? "xs",
90
+ gap: addon.gap,
91
+ style: addon.style,
92
+ groups: addon.groups.map((group) => ({ ...group, variant: group.variant ?? "ghost" })),
93
+ items: addon.items
94
+ };
95
+ });
83
96
  const showClear = computed(() => !isDisabled.value && draft.value !== void 0);
84
97
  function handleClear() {
85
98
  draft.value = void 0;
@@ -164,6 +177,21 @@ async function onBlur() {
164
177
  />
165
178
  </InputGroupButton>
166
179
  </InputGroupAddon>
180
+ <!-- `mr-[-0.45rem]` mirrors the clear addon's `has-[>button]:mr-[-0.45rem]`
181
+ pull-back: that compensation only fires when the addon's direct child
182
+ is a `<button>`, but `ShwfedActions` roots a `<div>`, so without it the
183
+ `inline-end` `pr-3` would leave a ~12px dead gap before the border. -->
184
+ <InputGroupAddon
185
+ v-if="addonConfig"
186
+ align="inline-end"
187
+ class="field-addon-actions mr-[-0.45rem]"
188
+ >
189
+ <ShwfedActions :config="addonConfig" />
190
+ </InputGroupAddon>
167
191
  </InputGroup>
168
192
  </div>
169
193
  </template>
194
+
195
+ <style scoped>
196
+ .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:1rem;min-width:1rem;padding:0}.field-addon-actions :deep([data-slot=buttons-dropdown-trigger] svg),.field-addon-actions :deep([data-slot=buttons-item] svg){height:.75rem;width:.75rem}.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}
197
+ </style>
@@ -29,6 +29,138 @@ export declare function schema(configure: (env: Environment) => void): Schema.St
29
29
  mode: Schema.Literal<["formula", "prefill"]>;
30
30
  expression: Schema.Schema<string, string, never>;
31
31
  }>>;
32
+ addon: Schema.optional<Schema.Struct<{
33
+ groups: Schema.optionalWith<Schema.Array$<Schema.Struct<{
34
+ id: Schema.refine<string, typeof Schema.String>;
35
+ variant: Schema.optional<Schema.Literal<["default", "primary", "destructive", "ghost", "link"]>>;
36
+ }>>, {
37
+ default: () => never[];
38
+ }>;
39
+ items: Schema.optionalWith<Schema.Array$<Schema.Schema<import("../../../../actions/schema.js").RegistryItemValue | {
40
+ readonly disabled?: string | undefined;
41
+ readonly id: string;
42
+ readonly title: readonly [{
43
+ readonly locale: "zh";
44
+ readonly message: string;
45
+ }, ...{
46
+ readonly locale: "en" | "ja" | "ko";
47
+ readonly message: string;
48
+ }[]];
49
+ readonly icon?: string | undefined;
50
+ readonly hidden?: string | undefined;
51
+ readonly tooltip?: readonly [{
52
+ readonly locale: "zh";
53
+ readonly message: string;
54
+ }, ...{
55
+ readonly locale: "en" | "ja" | "ko";
56
+ readonly message: string;
57
+ }[]] | undefined;
58
+ readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
59
+ readonly action?: any;
60
+ readonly groupId: string;
61
+ readonly hideTitle?: boolean | undefined;
62
+ } | {
63
+ readonly id: string;
64
+ readonly title: readonly [{
65
+ readonly locale: "zh";
66
+ readonly message: string;
67
+ }, ...{
68
+ readonly locale: "en" | "ja" | "ko";
69
+ readonly message: string;
70
+ }[]];
71
+ readonly icon?: string | undefined;
72
+ readonly items: readonly (import("../../../../actions/schema.js").RegistrySubItemValue | {
73
+ readonly disabled?: string | undefined;
74
+ readonly id: string;
75
+ readonly title: readonly [{
76
+ readonly locale: "zh";
77
+ readonly message: string;
78
+ }, ...{
79
+ readonly locale: "en" | "ja" | "ko";
80
+ readonly message: string;
81
+ }[]];
82
+ readonly icon?: string | undefined;
83
+ readonly hidden?: string | undefined;
84
+ readonly tooltip?: readonly [{
85
+ readonly locale: "zh";
86
+ readonly message: string;
87
+ }, ...{
88
+ readonly locale: "en" | "ja" | "ko";
89
+ readonly message: string;
90
+ }[]] | undefined;
91
+ readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
92
+ readonly action?: any;
93
+ })[];
94
+ readonly groupId: string;
95
+ readonly hideTitle?: boolean | undefined;
96
+ }, import("../../../../actions/schema.js").RegistryItemValue | {
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 groupId: string;
106
+ readonly disabled?: string | undefined;
107
+ readonly icon?: string | undefined;
108
+ readonly hidden?: string | undefined;
109
+ readonly tooltip?: readonly [{
110
+ readonly locale: "zh";
111
+ readonly message: string;
112
+ }, ...{
113
+ readonly locale: "en" | "ja" | "ko";
114
+ readonly message: string;
115
+ }[]] | undefined;
116
+ readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
117
+ readonly action?: any;
118
+ readonly hideTitle?: boolean | undefined;
119
+ } | {
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 items: readonly (import("../../../../actions/schema.js").RegistrySubItemValue | {
129
+ readonly id: string;
130
+ readonly title: readonly [{
131
+ readonly locale: "zh";
132
+ readonly message: string;
133
+ }, ...{
134
+ readonly locale: "en" | "ja" | "ko";
135
+ readonly message: string;
136
+ }[]];
137
+ readonly disabled?: string | undefined;
138
+ readonly icon?: string | undefined;
139
+ readonly hidden?: string | undefined;
140
+ readonly tooltip?: readonly [{
141
+ readonly locale: "zh";
142
+ readonly message: string;
143
+ }, ...{
144
+ readonly locale: "en" | "ja" | "ko";
145
+ readonly message: string;
146
+ }[]] | undefined;
147
+ readonly variant?: "default" | "link" | "destructive" | "primary" | "ghost" | undefined;
148
+ readonly action?: any;
149
+ })[];
150
+ readonly groupId: string;
151
+ readonly icon?: string | undefined;
152
+ readonly hideTitle?: boolean | undefined;
153
+ }, never>>, {
154
+ default: () => never[];
155
+ }>;
156
+ size: Schema.optionalWith<Schema.Literal<["default", "sm", "xs"]>, {
157
+ default: () => "default";
158
+ }>;
159
+ gap: Schema.optionalWith<Schema.filter<Schema.filter<typeof Schema.Number>>, {
160
+ default: () => number;
161
+ }>;
162
+ style: Schema.optional<typeof Schema.String>;
163
+ }>>;
32
164
  title: Schema.TupleType<readonly [Schema.Struct<{
33
165
  locale: Schema.Literal<["zh"]>;
34
166
  message: Schema.SchemaClass<string, string, never>;