vft 0.0.46 → 0.0.48

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 (297) hide show
  1. package/dist/index.css +1 -1
  2. package/es/component.js +30 -27
  3. package/es/components/avatar/avatar.vue.d.ts +4 -4
  4. package/es/components/avatar/index.d.ts +4 -4
  5. package/es/components/avatar/index.js +4 -3
  6. package/es/components/back-top/back-top.vue.d.ts +21 -0
  7. package/es/components/back-top/back-top.vue2.js +23 -21
  8. package/es/components/back-top/index.d.ts +8 -1
  9. package/es/components/back-top/index.js +4 -3
  10. package/es/components/back-top/use-back-top.d.ts +1 -1
  11. package/es/components/back-top/use-back-top.js +23 -21
  12. package/es/components/clamp/index.js +4 -3
  13. package/es/components/clamp-toggle/clamp-toggle.vue2.js +15 -15
  14. package/es/components/clamp-toggle/index.js +4 -3
  15. package/es/components/config-provider/hooks/use-global-config.js +1 -1
  16. package/es/components/config-provider/index.js +11 -10
  17. package/es/components/context-menu/context-menu.vue2.js +3 -2
  18. package/es/components/descriptions/description.vue2.js +1 -1
  19. package/es/components/descriptions/index.js +6 -5
  20. package/es/components/divider/divider.vue.d.ts +2 -2
  21. package/es/components/divider/index.d.ts +2 -2
  22. package/es/components/divider/index.js +4 -3
  23. package/es/components/empty/index.js +6 -5
  24. package/es/components/exception/exception.vue2.js +13 -11
  25. package/es/components/exception/index.js +4 -3
  26. package/es/components/footer-layout/index.js +4 -3
  27. package/es/components/form/constants.d.ts +4 -0
  28. package/es/components/form/constants.js +5 -0
  29. package/es/components/form/form-item.vue.d.ts +133 -0
  30. package/es/components/form/form-item.vue.js +4 -0
  31. package/es/components/form/form-item.vue2.js +244 -0
  32. package/es/components/form/form-label-wrap.d.ts +11 -0
  33. package/es/components/form/form-label-wrap.js +70 -0
  34. package/es/components/form/form.vue.d.ts +168 -0
  35. package/es/components/form/form.vue.js +4 -0
  36. package/es/components/form/form.vue2.js +151 -0
  37. package/es/components/form/hooks/index.d.ts +2 -0
  38. package/es/components/form/hooks/index.js +10 -0
  39. package/es/components/form/hooks/use-form-common-props.d.ts +6 -0
  40. package/es/components/form/hooks/use-form-common-props.js +28 -0
  41. package/es/components/form/hooks/use-form-item.d.ts +18 -0
  42. package/es/components/form/hooks/use-form-item.js +48 -0
  43. package/es/components/form/index.d.ts +338 -0
  44. package/es/components/form/index.js +28 -0
  45. package/es/components/form/style/css.d.ts +0 -0
  46. package/es/components/form/style/css.js +2 -0
  47. package/es/components/form/style/index.d.ts +0 -0
  48. package/es/components/form/style/index.js +2 -0
  49. package/es/components/form/types.d.ts +43 -0
  50. package/es/components/form/types.js +9 -0
  51. package/es/components/form/utils.d.ts +9 -0
  52. package/es/components/form/utils.js +42 -0
  53. package/es/components/form-item/style/css.d.ts +0 -0
  54. package/es/components/form-item/style/css.js +2 -0
  55. package/es/components/form-item/style/index.d.ts +0 -0
  56. package/es/components/form-item/style/index.js +2 -0
  57. package/es/components/full-screen/index.js +4 -3
  58. package/es/components/header-layout/index.js +4 -3
  59. package/es/components/icon/icon.vue2.js +24 -24
  60. package/es/components/icon/index.js +5 -4
  61. package/es/components/icon-text/icon-text.vue2.js +20 -21
  62. package/es/components/icon-text/index.js +4 -3
  63. package/es/components/iframe-layout/index.js +4 -3
  64. package/es/components/image/index.js +4 -3
  65. package/es/components/index.d.ts +1 -0
  66. package/es/components/index.js +119 -103
  67. package/es/components/input/index.d.ts +4 -4
  68. package/es/components/input/index.js +4 -3
  69. package/es/components/input/input.vue.d.ts +4 -4
  70. package/es/components/input/input.vue2.js +28 -25
  71. package/es/components/link/index.js +4 -3
  72. package/es/components/logo/index.js +4 -3
  73. package/es/components/md-code-demo/index.js +4 -3
  74. package/es/components/md-code-tabs/index.js +4 -3
  75. package/es/components/md-comment/index.js +4 -3
  76. package/es/components/md-container/index.js +4 -3
  77. package/es/components/md-container/md-container.vue2.js +69 -66
  78. package/es/components/md-tabs/index.js +4 -3
  79. package/es/components/md-vue-playground/index.js +4 -3
  80. package/es/components/menu/index.js +9 -8
  81. package/es/components/menu/menu-item.vue2.js +4 -3
  82. package/es/components/menu/menu.vue2.js +1 -1
  83. package/es/components/menu/sub-menu.vue2.js +3 -2
  84. package/es/components/message/index.js +8 -7
  85. package/es/components/multiple-tabs/multiple-tabs.vue2.js +42 -40
  86. package/es/components/multiple-tabs/tab-content.vue2.js +3 -2
  87. package/es/components/multiple-tabs/use/use-tab-dropdown.js +20 -20
  88. package/es/components/overlay/index.js +4 -3
  89. package/es/components/page-wrapper/index.js +4 -3
  90. package/es/components/pagination/index.d.ts +2 -2
  91. package/es/components/pagination/index.js +9 -8
  92. package/es/components/pagination/pagination.d.ts +2 -2
  93. package/es/components/popover/index.d.ts +4 -4
  94. package/es/components/popover/index.js +4 -3
  95. package/es/components/popper/composables/use-content.d.ts +2 -2
  96. package/es/components/popper/index.d.ts +2 -2
  97. package/es/components/popper/index.js +10 -9
  98. package/es/components/popper/popper.vue.d.ts +2 -2
  99. package/es/components/qrcode/index.js +4 -3
  100. package/es/components/result/index.js +4 -3
  101. package/es/components/result/result.vue2.js +3 -2
  102. package/es/components/router-view-content/index.js +4 -3
  103. package/es/components/search/index.d.ts +3 -3
  104. package/es/components/search/index.js +4 -3
  105. package/es/components/search/search.vue.d.ts +3 -3
  106. package/es/components/search/search.vue2.js +3 -2
  107. package/es/components/side-menu/index.js +4 -3
  108. package/es/components/side-menu/side-menu.vue2.js +52 -54
  109. package/es/components/tabs/index.d.ts +2 -2
  110. package/es/components/tabs/index.js +9 -8
  111. package/es/components/tabs/tab-nav.vue2.js +4 -3
  112. package/es/components/tabs/tab-pane.vue2.js +1 -1
  113. package/es/components/tabs/tabs.vue.d.ts +2 -2
  114. package/es/components/tag/index.js +4 -3
  115. package/es/components/tag/tag.vue2.js +8 -7
  116. package/es/components/tooltip/index.d.ts +8 -8
  117. package/es/components/tooltip/index.js +4 -3
  118. package/es/components/tooltip/tooltip.vue.d.ts +2 -2
  119. package/es/components/tooltip/trigger.vue2.js +1 -1
  120. package/es/hooks/index.d.ts +2 -0
  121. package/es/hooks/index.js +30 -25
  122. package/es/hooks/use-id/index.js +3 -2
  123. package/es/hooks/use-ordered-children/index.js +5 -4
  124. package/es/hooks/use-popper/index.d.ts +2 -2
  125. package/es/hooks/use-prop/index.d.ts +2 -0
  126. package/es/hooks/use-prop/index.js +11 -0
  127. package/es/hooks/use-size/index.d.ts +7 -0
  128. package/es/hooks/use-size/index.js +9 -0
  129. package/es/index.js +203 -177
  130. package/es/package.json.js +1 -1
  131. package/es/utils/index.d.ts +1 -0
  132. package/es/utils/index.js +27 -22
  133. package/es/utils/ns-cover.d.ts +12 -0
  134. package/es/utils/ns-cover.js +17 -5
  135. package/es/utils/objects.d.ts +4 -0
  136. package/es/utils/objects.js +12 -0
  137. package/lib/component.cjs +1 -1
  138. package/lib/components/avatar/avatar.vue.d.ts +4 -4
  139. package/lib/components/avatar/index.cjs +1 -1
  140. package/lib/components/avatar/index.d.ts +4 -4
  141. package/lib/components/back-top/back-top.vue.d.ts +21 -0
  142. package/lib/components/back-top/back-top.vue2.cjs +1 -1
  143. package/lib/components/back-top/index.cjs +1 -1
  144. package/lib/components/back-top/index.d.ts +8 -1
  145. package/lib/components/back-top/use-back-top.cjs +1 -1
  146. package/lib/components/back-top/use-back-top.d.ts +1 -1
  147. package/lib/components/clamp/index.cjs +1 -1
  148. package/lib/components/clamp-toggle/clamp-toggle.vue2.cjs +1 -1
  149. package/lib/components/clamp-toggle/index.cjs +1 -1
  150. package/lib/components/config-provider/hooks/use-global-config.cjs +1 -1
  151. package/lib/components/config-provider/index.cjs +1 -1
  152. package/lib/components/context-menu/context-menu.vue2.cjs +1 -1
  153. package/lib/components/descriptions/description.vue2.cjs +1 -1
  154. package/lib/components/descriptions/index.cjs +1 -1
  155. package/lib/components/divider/divider.vue.d.ts +2 -2
  156. package/lib/components/divider/index.cjs +1 -1
  157. package/lib/components/divider/index.d.ts +2 -2
  158. package/lib/components/empty/index.cjs +1 -1
  159. package/lib/components/exception/exception.vue2.cjs +1 -1
  160. package/lib/components/exception/index.cjs +1 -1
  161. package/lib/components/footer-layout/index.cjs +1 -1
  162. package/lib/components/form/constants.cjs +1 -0
  163. package/lib/components/form/constants.d.ts +4 -0
  164. package/lib/components/form/form-item.vue.cjs +1 -0
  165. package/lib/components/form/form-item.vue.d.ts +133 -0
  166. package/lib/components/form/form-item.vue2.cjs +1 -0
  167. package/lib/components/form/form-label-wrap.cjs +1 -0
  168. package/lib/components/form/form-label-wrap.d.ts +11 -0
  169. package/lib/components/form/form.vue.cjs +1 -0
  170. package/lib/components/form/form.vue.d.ts +168 -0
  171. package/lib/components/form/form.vue2.cjs +1 -0
  172. package/lib/components/form/hooks/index.cjs +1 -0
  173. package/lib/components/form/hooks/index.d.ts +2 -0
  174. package/lib/components/form/hooks/use-form-common-props.cjs +1 -0
  175. package/lib/components/form/hooks/use-form-common-props.d.ts +6 -0
  176. package/lib/components/form/hooks/use-form-item.cjs +1 -0
  177. package/lib/components/form/hooks/use-form-item.d.ts +18 -0
  178. package/lib/components/form/index.cjs +1 -0
  179. package/lib/components/form/index.d.ts +338 -0
  180. package/lib/components/form/style/css.cjs +1 -0
  181. package/lib/components/form/style/css.d.ts +0 -0
  182. package/lib/components/form/style/index.cjs +1 -0
  183. package/lib/components/form/style/index.d.ts +0 -0
  184. package/lib/components/form/types.cjs +1 -0
  185. package/lib/components/form/types.d.ts +43 -0
  186. package/lib/components/form/utils.cjs +1 -0
  187. package/lib/components/form/utils.d.ts +9 -0
  188. package/lib/components/form-item/style/css.cjs +1 -0
  189. package/lib/components/form-item/style/css.d.ts +0 -0
  190. package/lib/components/form-item/style/index.cjs +1 -0
  191. package/lib/components/form-item/style/index.d.ts +0 -0
  192. package/lib/components/full-screen/index.cjs +1 -1
  193. package/lib/components/header-layout/index.cjs +1 -1
  194. package/lib/components/icon/icon.vue2.cjs +1 -1
  195. package/lib/components/icon/index.cjs +1 -1
  196. package/lib/components/icon-text/icon-text.vue2.cjs +1 -1
  197. package/lib/components/icon-text/index.cjs +1 -1
  198. package/lib/components/iframe-layout/index.cjs +1 -1
  199. package/lib/components/image/index.cjs +1 -1
  200. package/lib/components/index.cjs +1 -1
  201. package/lib/components/index.d.ts +1 -0
  202. package/lib/components/input/index.cjs +1 -1
  203. package/lib/components/input/index.d.ts +4 -4
  204. package/lib/components/input/input.vue.d.ts +4 -4
  205. package/lib/components/input/input.vue2.cjs +1 -1
  206. package/lib/components/link/index.cjs +1 -1
  207. package/lib/components/logo/index.cjs +1 -1
  208. package/lib/components/md-code-demo/index.cjs +1 -1
  209. package/lib/components/md-code-tabs/index.cjs +1 -1
  210. package/lib/components/md-comment/index.cjs +1 -1
  211. package/lib/components/md-container/index.cjs +1 -1
  212. package/lib/components/md-container/md-container.vue2.cjs +1 -1
  213. package/lib/components/md-tabs/index.cjs +1 -1
  214. package/lib/components/md-vue-playground/index.cjs +1 -1
  215. package/lib/components/menu/index.cjs +1 -1
  216. package/lib/components/menu/menu-item.vue2.cjs +1 -1
  217. package/lib/components/menu/menu.vue2.cjs +1 -1
  218. package/lib/components/menu/sub-menu.vue2.cjs +1 -1
  219. package/lib/components/message/index.cjs +1 -1
  220. package/lib/components/multiple-tabs/multiple-tabs.vue2.cjs +1 -1
  221. package/lib/components/multiple-tabs/tab-content.vue2.cjs +1 -1
  222. package/lib/components/multiple-tabs/use/use-tab-dropdown.cjs +1 -1
  223. package/lib/components/overlay/index.cjs +1 -1
  224. package/lib/components/page-wrapper/index.cjs +1 -1
  225. package/lib/components/pagination/index.cjs +1 -1
  226. package/lib/components/pagination/index.d.ts +2 -2
  227. package/lib/components/pagination/pagination.d.ts +2 -2
  228. package/lib/components/popover/index.cjs +1 -1
  229. package/lib/components/popover/index.d.ts +4 -4
  230. package/lib/components/popper/composables/use-content.d.ts +2 -2
  231. package/lib/components/popper/index.cjs +1 -1
  232. package/lib/components/popper/index.d.ts +2 -2
  233. package/lib/components/popper/popper.vue.d.ts +2 -2
  234. package/lib/components/qrcode/index.cjs +1 -1
  235. package/lib/components/result/index.cjs +1 -1
  236. package/lib/components/result/result.vue2.cjs +1 -1
  237. package/lib/components/router-view-content/index.cjs +1 -1
  238. package/lib/components/search/index.cjs +1 -1
  239. package/lib/components/search/index.d.ts +3 -3
  240. package/lib/components/search/search.vue.d.ts +3 -3
  241. package/lib/components/search/search.vue2.cjs +1 -1
  242. package/lib/components/side-menu/index.cjs +1 -1
  243. package/lib/components/side-menu/side-menu.vue2.cjs +1 -1
  244. package/lib/components/tabs/index.cjs +1 -1
  245. package/lib/components/tabs/index.d.ts +2 -2
  246. package/lib/components/tabs/tab-nav.vue2.cjs +1 -1
  247. package/lib/components/tabs/tab-pane.vue2.cjs +1 -1
  248. package/lib/components/tabs/tabs.vue.d.ts +2 -2
  249. package/lib/components/tag/index.cjs +1 -1
  250. package/lib/components/tag/tag.vue2.cjs +1 -1
  251. package/lib/components/tooltip/index.cjs +1 -1
  252. package/lib/components/tooltip/index.d.ts +8 -8
  253. package/lib/components/tooltip/tooltip.vue.d.ts +2 -2
  254. package/lib/components/tooltip/trigger.vue2.cjs +1 -1
  255. package/lib/hooks/index.cjs +1 -1
  256. package/lib/hooks/index.d.ts +2 -0
  257. package/lib/hooks/use-id/index.cjs +1 -1
  258. package/lib/hooks/use-ordered-children/index.cjs +1 -1
  259. package/lib/hooks/use-popper/index.d.ts +2 -2
  260. package/lib/hooks/use-prop/index.cjs +1 -0
  261. package/lib/hooks/use-prop/index.d.ts +2 -0
  262. package/lib/hooks/use-size/index.cjs +1 -0
  263. package/lib/hooks/use-size/index.d.ts +7 -0
  264. package/lib/index.cjs +1 -1
  265. package/lib/package.json.cjs +1 -1
  266. package/lib/utils/index.cjs +1 -1
  267. package/lib/utils/index.d.ts +1 -0
  268. package/lib/utils/ns-cover.cjs +1 -1
  269. package/lib/utils/ns-cover.d.ts +12 -0
  270. package/lib/utils/objects.cjs +1 -0
  271. package/lib/utils/objects.d.ts +4 -0
  272. package/package.json +4 -5
  273. package/theme-style/dark/css-vars.css +1 -1
  274. package/theme-style/index.css +1 -1
  275. package/theme-style/src/common/var.scss +16 -9
  276. package/theme-style/src/dark/css-vars.scss +1 -1
  277. package/theme-style/src/dark/var.scss +13 -12
  278. package/theme-style/src/form-item.scss +0 -0
  279. package/theme-style/src/form.scss +241 -0
  280. package/theme-style/src/header-layout.scss +0 -4
  281. package/theme-style/src/index.scss +2 -0
  282. package/theme-style/src/md-container.scss +1 -3
  283. package/theme-style/src/menu.scss +3 -1
  284. package/theme-style/src/side-menu.scss +1 -3
  285. package/theme-style/vft-form-item.css +0 -0
  286. package/theme-style/vft-form.css +1 -0
  287. package/theme-style/vft-full-screen.css +1 -1
  288. package/theme-style/vft-header-layout.css +1 -1
  289. package/theme-style/vft-loading.css +1 -1
  290. package/theme-style/vft-md-container.css +1 -1
  291. package/theme-style/vft-menu.css +1 -1
  292. package/theme-style/vft-side-menu.css +1 -1
  293. package/theme-style/vft-tabs.css +1 -1
  294. package/es/components/back-top/types.d.ts +0 -13
  295. package/es/components/back-top/types.js +0 -1
  296. package/lib/components/back-top/types.cjs +0 -1
  297. package/lib/components/back-top/types.d.ts +0 -13
@@ -0,0 +1,168 @@
1
+ import type { PropType as __PropType } from 'vue';
2
+ import type { ComponentSize } from '../types';
3
+ import type { Arrayable } from 'vft/es/utils';
4
+ import type { FormRules, FormItemProp, FormValidateCallback, FormValidationResult } from './types';
5
+ export interface FormProps {
6
+ size?: ComponentSize;
7
+ disabled?: boolean;
8
+ model?: object;
9
+ rules?: FormRules;
10
+ labelPosition?: 'left' | 'right' | 'top';
11
+ requireAsteriskPosition?: 'left' | 'right';
12
+ labelWidth?: Numberish;
13
+ labelSuffix?: string;
14
+ inline?: boolean;
15
+ inlineMessage?: boolean;
16
+ statusIcon?: boolean;
17
+ showMessage?: boolean;
18
+ validateOnRuleChange?: boolean;
19
+ hideRequiredAsterisk?: boolean;
20
+ scrollToError?: boolean;
21
+ }
22
+ declare const _sfc_main: import("vue").DefineComponent<{
23
+ size: {
24
+ type: __PropType<ComponentSize | undefined>;
25
+ required: false;
26
+ };
27
+ disabled: {
28
+ type: __PropType<boolean | undefined>;
29
+ required: false;
30
+ };
31
+ model: {
32
+ type: __PropType<object | undefined>;
33
+ required: false;
34
+ };
35
+ rules: {
36
+ type: __PropType<Partial<Record<string, Arrayable<import("./types").FormItemRule>>> | undefined>;
37
+ required: false;
38
+ };
39
+ labelPosition: {
40
+ type: __PropType<"left" | "right" | "top" | undefined>;
41
+ required: false;
42
+ };
43
+ requireAsteriskPosition: {
44
+ type: __PropType<"left" | "right" | undefined>;
45
+ required: false;
46
+ };
47
+ labelWidth: {
48
+ type: __PropType<Numberish | undefined>;
49
+ required: false;
50
+ };
51
+ labelSuffix: {
52
+ type: __PropType<string | undefined>;
53
+ required: false;
54
+ };
55
+ inline: {
56
+ type: __PropType<boolean | undefined>;
57
+ required: false;
58
+ };
59
+ inlineMessage: {
60
+ type: __PropType<boolean | undefined>;
61
+ required: false;
62
+ };
63
+ statusIcon: {
64
+ type: __PropType<boolean | undefined>;
65
+ required: false;
66
+ };
67
+ showMessage: {
68
+ type: __PropType<boolean | undefined>;
69
+ required: false;
70
+ };
71
+ validateOnRuleChange: {
72
+ type: __PropType<boolean | undefined>;
73
+ required: false;
74
+ };
75
+ hideRequiredAsterisk: {
76
+ type: __PropType<boolean | undefined>;
77
+ required: false;
78
+ };
79
+ scrollToError: {
80
+ type: __PropType<boolean | undefined>;
81
+ required: false;
82
+ };
83
+ }, {
84
+ /**
85
+ * @description Validate the whole form. Receives a callback or returns `Promise`.
86
+ */
87
+ validate: (callback?: FormValidateCallback) => FormValidationResult;
88
+ /**
89
+ * @description Validate specified fields.
90
+ */
91
+ validateField: (props?: Arrayable<FormItemProp> | undefined, callback?: FormValidateCallback | undefined) => FormValidationResult;
92
+ /**
93
+ * @description Reset specified fields and remove validation result.
94
+ */
95
+ resetFields: (props?: Arrayable<FormItemProp> | undefined) => void;
96
+ /**
97
+ * @description Clear validation message for specified fields.
98
+ */
99
+ clearValidate: (props?: Arrayable<FormItemProp> | undefined) => void;
100
+ /**
101
+ * @description Scroll to the specified fields.
102
+ */
103
+ scrollToField: (prop: FormItemProp) => void;
104
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "validate"[], "validate", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
105
+ size: {
106
+ type: __PropType<ComponentSize | undefined>;
107
+ required: false;
108
+ };
109
+ disabled: {
110
+ type: __PropType<boolean | undefined>;
111
+ required: false;
112
+ };
113
+ model: {
114
+ type: __PropType<object | undefined>;
115
+ required: false;
116
+ };
117
+ rules: {
118
+ type: __PropType<Partial<Record<string, Arrayable<import("./types").FormItemRule>>> | undefined>;
119
+ required: false;
120
+ };
121
+ labelPosition: {
122
+ type: __PropType<"left" | "right" | "top" | undefined>;
123
+ required: false;
124
+ };
125
+ requireAsteriskPosition: {
126
+ type: __PropType<"left" | "right" | undefined>;
127
+ required: false;
128
+ };
129
+ labelWidth: {
130
+ type: __PropType<Numberish | undefined>;
131
+ required: false;
132
+ };
133
+ labelSuffix: {
134
+ type: __PropType<string | undefined>;
135
+ required: false;
136
+ };
137
+ inline: {
138
+ type: __PropType<boolean | undefined>;
139
+ required: false;
140
+ };
141
+ inlineMessage: {
142
+ type: __PropType<boolean | undefined>;
143
+ required: false;
144
+ };
145
+ statusIcon: {
146
+ type: __PropType<boolean | undefined>;
147
+ required: false;
148
+ };
149
+ showMessage: {
150
+ type: __PropType<boolean | undefined>;
151
+ required: false;
152
+ };
153
+ validateOnRuleChange: {
154
+ type: __PropType<boolean | undefined>;
155
+ required: false;
156
+ };
157
+ hideRequiredAsterisk: {
158
+ type: __PropType<boolean | undefined>;
159
+ required: false;
160
+ };
161
+ scrollToError: {
162
+ type: __PropType<boolean | undefined>;
163
+ required: false;
164
+ };
165
+ }>> & {
166
+ onValidate?: ((...args: any[]) => any) | undefined;
167
+ }, {}>;
168
+ export default _sfc_main;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("vue"),E=require("@vft/utils"),d=require("../../utils/error.cjs");require("../../utils/ns-cover.cjs");require("lodash");const O=require("../../hooks/use-namespace/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");require("@vueuse/core");const S=require("./hooks/use-form-common-props.cjs"),V=require("./constants.cjs"),u=require("./utils.cjs"),l=O.useNamespace("form"),W=r.defineComponent({name:l.b()}),j=r.defineComponent({...W,props:{size:null,disabled:{type:Boolean},model:null,rules:null,labelPosition:{default:"right"},requireAsteriskPosition:{default:"left"},labelWidth:{default:""},labelSuffix:{default:""},inline:{type:Boolean},inlineMessage:{type:Boolean},statusIcon:{type:Boolean},showMessage:{type:Boolean,default:!0},validateOnRuleChange:{type:Boolean,default:!0},hideRequiredAsterisk:{type:Boolean,default:!1},scrollToError:{type:Boolean}},emits:["validate"],setup(n,{expose:v,emit:p}){const s=[],y=S.useFormSize(),g=r.computed(()=>[l.b(),l.m(y.value||"default"),{[l.m(`label-${n.labelPosition}`)]:n.labelPosition,[l.m("inline")]:n.inline}]),q=e=>{s.push(e)},b=e=>{e.prop&&s.splice(s.indexOf(e),1)},c=(e=[])=>{if(!n.model){d.debugWarn(l.b(),"model is required for resetFields to work.");return}u.filterFields(s,e).forEach(t=>t.resetField())},m=(e=[])=>{u.filterFields(s,e).forEach(t=>t.clearValidate())},B=r.computed(()=>{const e=!!n.model;return e||d.debugWarn(l.b(),"model is required for validate to work."),e}),w=e=>{if(s.length===0)return[];const t=u.filterFields(s,e);return t.length?t:(d.debugWarn(l.b(),"please pass correct props!"),[])},h=async e=>f(void 0,e),C=async(e=[])=>{if(!B.value)return!1;const t=w(e);if(t.length===0)return!0;let o={};for(const i of t)try{await i.validate("")}catch(a){o={...o,...a}}return Object.keys(o).length===0?!0:Promise.reject(o)},f=async(e=[],t)=>{const o=!E.isFunction(t);try{const i=await C(e);return i===!0&&(t==null||t(i)),i}catch(i){if(i instanceof Error)throw i;const a=i;return n.scrollToError&&F(Object.keys(a)[0]),t==null||t(!1,a),o&&Promise.reject(a)}},F=e=>{var o;const t=u.filterFields(s,e)[0];t&&((o=t.$el)==null||o.scrollIntoView())};r.watch(()=>n.rules,()=>{n.validateOnRuleChange&&h().catch(e=>d.debugWarn(e))},{deep:!0});const P=r.getCurrentInstance();return r.provide(V.formContextKey,r.reactive({...P.props,emit:p,resetFields:c,clearValidate:m,validateField:f,addField:q,removeField:b,...u.useFormLabelWidth()})),v({validate:h,validateField:f,resetFields:c,clearValidate:m,scrollToField:F}),(e,t)=>(r.openBlock(),r.createElementBlock("form",{class:r.normalizeClass(r.unref(g))},[r.renderSlot(e.$slots,"default")],2))}});exports.default=j;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./use-form-common-props.cjs"),s=require("./use-form-item.cjs");exports.useDisabled=e.useDisabled;exports.useFormDisabled=e.useFormDisabled;exports.useFormSize=e.useFormSize;exports.useSize=e.useSize;exports.useFormItem=s.useFormItem;exports.useFormItemInputId=s.useFormItemInputId;
@@ -0,0 +1,2 @@
1
+ export * from './use-form-common-props';
2
+ export * from './use-form-item';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue");require("../../config-provider/hooks/use-global-config.cjs");require("@popperjs/core");require("lodash");require("../../../hooks/use-z-index/index.cjs");require("@vueuse/core");require("@vft/utils");require("../../../utils/ns-cover.cjs");const n=require("../../../hooks/use-prop/index.cjs"),b=require("../../../hooks/use-size/index.cjs"),u=require("../constants.cjs"),c=(o,s={})=>{const i=e.ref(void 0),l=s.prop?i:n.useProp("size"),a=s.global?i:b.useGlobalSize(),r=s.form?{size:void 0}:e.inject(u.formContextKey,void 0),t=s.formItem?{size:void 0}:e.inject(u.formItemContextKey,void 0);return e.computed(()=>l.value||e.unref(o)||(t==null?void 0:t.size)||(r==null?void 0:r.size)||a.value||"")},d=o=>{const s=n.useProp("disabled"),i=e.inject(u.formContextKey,void 0);return e.computed(()=>s.value||e.unref(o)||(i==null?void 0:i.disabled)||!1)},m=c,q=d;exports.useDisabled=q;exports.useFormDisabled=d;exports.useFormSize=c;exports.useSize=m;
@@ -0,0 +1,6 @@
1
+ import type { ComponentSize } from 'vft/es/constants';
2
+ import type { MaybeRef } from '@vueuse/core';
3
+ export declare const useFormSize: (fallback?: MaybeRef<ComponentSize | undefined>, ignore?: Partial<Record<'prop' | 'form' | 'formItem' | 'global', boolean>>) => import("vue").ComputedRef<"" | "large" | "small" | "default">;
4
+ export declare const useFormDisabled: (fallback?: MaybeRef<boolean | undefined>) => import("vue").ComputedRef<boolean>;
5
+ export declare const useSize: (fallback?: MaybeRef<ComponentSize | undefined>, ignore?: Partial<Record<'prop' | 'form' | 'formItem' | 'global', boolean>>) => import("vue").ComputedRef<"" | "large" | "small" | "default">;
6
+ export declare const useDisabled: (fallback?: MaybeRef<boolean | undefined>) => import("vue").ComputedRef<boolean>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("vue");require("../../config-provider/hooks/use-global-config.cjs");require("@popperjs/core");require("lodash");require("../../../hooks/use-z-index/index.cjs");const o=require("../../../hooks/use-id/index.cjs");require("@vueuse/core");require("@vft/utils");require("../../../utils/ns-cover.cjs");const l=require("../constants.cjs"),y=()=>{const c=r.inject(l.formContextKey,void 0),u=r.inject(l.formItemContextKey,void 0);return{form:c,formItem:u}},F=(c,{formItemContext:u,disableIdGeneration:d,disableIdManagement:i})=>{d||(d=r.ref(!1)),i||(i=r.ref(!1));const e=r.ref();let p;const n=r.computed(()=>{var v;return!!(!c.label&&u&&u.inputIds&&((v=u.inputIds)==null?void 0:v.length)<=1)});return r.onMounted(()=>{p=r.watch([r.toRef(c,"id"),d],([v,q])=>{const s=v??(q?void 0:o.useId().value);s!==e.value&&(u!=null&&u.removeInputId&&(e.value&&u.removeInputId(e.value),!(i!=null&&i.value)&&!q&&s&&u.addInputId(s)),e.value=s)},{immediate:!0})}),r.onUnmounted(()=>{p&&p(),u!=null&&u.removeInputId&&e.value&&u.removeInputId(e.value)}),{isLabeledByFormItem:n,inputId:e}};exports.useFormItem=y;exports.useFormItemInputId=F;
@@ -0,0 +1,18 @@
1
+ import type { ComputedRef, Ref } from 'vue';
2
+ import type { FormItemContext } from '../types';
3
+ export declare const useFormItem: () => {
4
+ form: import("../types").FormContext | undefined;
5
+ formItem: FormItemContext | undefined;
6
+ };
7
+ export type IUseFormItemInputCommonProps = {
8
+ id?: string;
9
+ label?: string | number | boolean | Record<string, any>;
10
+ };
11
+ export declare const useFormItemInputId: (props: Partial<IUseFormItemInputCommonProps>, { formItemContext, disableIdGeneration, disableIdManagement }: {
12
+ formItemContext?: FormItemContext | undefined;
13
+ disableIdGeneration?: ComputedRef<boolean> | Ref<boolean> | undefined;
14
+ disableIdManagement?: ComputedRef<boolean> | Ref<boolean> | undefined;
15
+ }) => {
16
+ isLabeledByFormItem: ComputedRef<boolean>;
17
+ inputId: Ref<string | undefined>;
18
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("../../utils/vue/install.cjs");require("vue");require("@vft/utils");require("../../utils/ns-cover.cjs");require("lodash");const m=require("./form.vue2.cjs"),r=require("./form-item.vue2.cjs"),i=require("./types.cjs"),o=require("./constants.cjs"),e=require("./hooks/use-form-common-props.cjs"),u=require("./hooks/use-form-item.cjs"),s=t.withInstall(m.default,{FormItem:r.default}),n=t.withNoopInstall(r.default);exports.formItemValidateStates=i.formItemValidateStates;exports.formContextKey=o.formContextKey;exports.formItemContextKey=o.formItemContextKey;exports.useDisabled=e.useDisabled;exports.useFormDisabled=e.useFormDisabled;exports.useFormSize=e.useFormSize;exports.useSize=e.useSize;exports.useFormItem=u.useFormItem;exports.useFormItemInputId=u.useFormItemInputId;exports.VftForm=s;exports.VftFormItem=n;exports.default=s;
@@ -0,0 +1,338 @@
1
+ import Form from './form.vue';
2
+ import FormItem from './form-item.vue';
3
+ export declare const VftForm: import("vft/es/utils").SFCWithInstall<import("vue").DefineComponent<{
4
+ size: {
5
+ type: import("vue").PropType<import("../types").ComponentSize | undefined>;
6
+ required: false;
7
+ };
8
+ disabled: {
9
+ type: import("vue").PropType<boolean | undefined>;
10
+ required: false;
11
+ };
12
+ model: {
13
+ type: import("vue").PropType<object | undefined>;
14
+ required: false;
15
+ };
16
+ rules: {
17
+ type: import("vue").PropType<Partial<Record<string, import("vft/es/utils").Arrayable<import("./types").FormItemRule>>> | undefined>;
18
+ required: false;
19
+ };
20
+ labelPosition: {
21
+ type: import("vue").PropType<"left" | "right" | "top" | undefined>;
22
+ required: false;
23
+ };
24
+ requireAsteriskPosition: {
25
+ type: import("vue").PropType<"left" | "right" | undefined>;
26
+ required: false;
27
+ };
28
+ labelWidth: {
29
+ type: import("vue").PropType<Numberish | undefined>;
30
+ required: false;
31
+ };
32
+ labelSuffix: {
33
+ type: import("vue").PropType<string | undefined>;
34
+ required: false;
35
+ };
36
+ inline: {
37
+ type: import("vue").PropType<boolean | undefined>;
38
+ required: false;
39
+ };
40
+ inlineMessage: {
41
+ type: import("vue").PropType<boolean | undefined>;
42
+ required: false;
43
+ };
44
+ statusIcon: {
45
+ type: import("vue").PropType<boolean | undefined>;
46
+ required: false;
47
+ };
48
+ showMessage: {
49
+ type: import("vue").PropType<boolean | undefined>;
50
+ required: false;
51
+ };
52
+ validateOnRuleChange: {
53
+ type: import("vue").PropType<boolean | undefined>;
54
+ required: false;
55
+ };
56
+ hideRequiredAsterisk: {
57
+ type: import("vue").PropType<boolean | undefined>;
58
+ required: false;
59
+ };
60
+ scrollToError: {
61
+ type: import("vue").PropType<boolean | undefined>;
62
+ required: false;
63
+ };
64
+ }, {
65
+ validate: (callback?: import("./types").FormValidateCallback | undefined) => import("./types").FormValidationResult;
66
+ validateField: (props?: import("vft/es/utils").Arrayable<import("./types").FormItemProp> | undefined, callback?: import("./types").FormValidateCallback | undefined) => import("./types").FormValidationResult;
67
+ resetFields: (props?: import("vft/es/utils").Arrayable<import("./types").FormItemProp> | undefined) => void;
68
+ clearValidate: (props?: import("vft/es/utils").Arrayable<import("./types").FormItemProp> | undefined) => void;
69
+ scrollToField: (prop: import("./types").FormItemProp) => void;
70
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "validate"[], "validate", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
71
+ size: {
72
+ type: import("vue").PropType<import("../types").ComponentSize | undefined>;
73
+ required: false;
74
+ };
75
+ disabled: {
76
+ type: import("vue").PropType<boolean | undefined>;
77
+ required: false;
78
+ };
79
+ model: {
80
+ type: import("vue").PropType<object | undefined>;
81
+ required: false;
82
+ };
83
+ rules: {
84
+ type: import("vue").PropType<Partial<Record<string, import("vft/es/utils").Arrayable<import("./types").FormItemRule>>> | undefined>;
85
+ required: false;
86
+ };
87
+ labelPosition: {
88
+ type: import("vue").PropType<"left" | "right" | "top" | undefined>;
89
+ required: false;
90
+ };
91
+ requireAsteriskPosition: {
92
+ type: import("vue").PropType<"left" | "right" | undefined>;
93
+ required: false;
94
+ };
95
+ labelWidth: {
96
+ type: import("vue").PropType<Numberish | undefined>;
97
+ required: false;
98
+ };
99
+ labelSuffix: {
100
+ type: import("vue").PropType<string | undefined>;
101
+ required: false;
102
+ };
103
+ inline: {
104
+ type: import("vue").PropType<boolean | undefined>;
105
+ required: false;
106
+ };
107
+ inlineMessage: {
108
+ type: import("vue").PropType<boolean | undefined>;
109
+ required: false;
110
+ };
111
+ statusIcon: {
112
+ type: import("vue").PropType<boolean | undefined>;
113
+ required: false;
114
+ };
115
+ showMessage: {
116
+ type: import("vue").PropType<boolean | undefined>;
117
+ required: false;
118
+ };
119
+ validateOnRuleChange: {
120
+ type: import("vue").PropType<boolean | undefined>;
121
+ required: false;
122
+ };
123
+ hideRequiredAsterisk: {
124
+ type: import("vue").PropType<boolean | undefined>;
125
+ required: false;
126
+ };
127
+ scrollToError: {
128
+ type: import("vue").PropType<boolean | undefined>;
129
+ required: false;
130
+ };
131
+ }>> & {
132
+ onValidate?: ((...args: any[]) => any) | undefined;
133
+ }, {}>> & {
134
+ FormItem: import("vue").DefineComponent<{
135
+ label: {
136
+ type: import("vue").PropType<string | undefined>;
137
+ required: false;
138
+ };
139
+ labelWidth: {
140
+ type: import("vue").PropType<Numberish | undefined>;
141
+ required: false;
142
+ };
143
+ prop: {
144
+ type: import("vue").PropType<import("./types").FormItemProp | undefined>;
145
+ required: false;
146
+ };
147
+ required: {
148
+ type: import("vue").PropType<boolean | undefined>;
149
+ required: false;
150
+ };
151
+ rules: {
152
+ type: import("vue").PropType<import("./types").FormItemRule | undefined>;
153
+ required: false;
154
+ };
155
+ error: {
156
+ type: import("vue").PropType<string | undefined>;
157
+ required: false;
158
+ };
159
+ for: {
160
+ type: import("vue").PropType<string | undefined>;
161
+ required: false;
162
+ };
163
+ validateStatus: {
164
+ type: import("vue").PropType<string | undefined>;
165
+ required: false;
166
+ };
167
+ inlineMessage: {
168
+ type: import("vue").PropType<string | boolean | undefined>;
169
+ required: false;
170
+ };
171
+ showMessage: {
172
+ type: import("vue").PropType<boolean | undefined>;
173
+ required: false;
174
+ };
175
+ size: {
176
+ type: import("vue").PropType<import("../types").ComponentSize | undefined>;
177
+ required: false;
178
+ };
179
+ }, {
180
+ size: import("vue").ComputedRef<"" | "large" | "small" | "default">;
181
+ validateMessage: import("vue").Ref<string>;
182
+ validateState: import("vue").Ref<"" | "error" | "validating" | "success">;
183
+ validate: (trigger: string, callback?: import("./types").FormValidateCallback | undefined) => import("./types").FormValidationResult;
184
+ clearValidate: () => void;
185
+ resetField: () => void;
186
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
187
+ label: {
188
+ type: import("vue").PropType<string | undefined>;
189
+ required: false;
190
+ };
191
+ labelWidth: {
192
+ type: import("vue").PropType<Numberish | undefined>;
193
+ required: false;
194
+ };
195
+ prop: {
196
+ type: import("vue").PropType<import("./types").FormItemProp | undefined>;
197
+ required: false;
198
+ };
199
+ required: {
200
+ type: import("vue").PropType<boolean | undefined>;
201
+ required: false;
202
+ };
203
+ rules: {
204
+ type: import("vue").PropType<import("./types").FormItemRule | undefined>;
205
+ required: false;
206
+ };
207
+ error: {
208
+ type: import("vue").PropType<string | undefined>;
209
+ required: false;
210
+ };
211
+ for: {
212
+ type: import("vue").PropType<string | undefined>;
213
+ required: false;
214
+ };
215
+ validateStatus: {
216
+ type: import("vue").PropType<string | undefined>;
217
+ required: false;
218
+ };
219
+ inlineMessage: {
220
+ type: import("vue").PropType<string | boolean | undefined>;
221
+ required: false;
222
+ };
223
+ showMessage: {
224
+ type: import("vue").PropType<boolean | undefined>;
225
+ required: false;
226
+ };
227
+ size: {
228
+ type: import("vue").PropType<import("../types").ComponentSize | undefined>;
229
+ required: false;
230
+ };
231
+ }>>, {}>;
232
+ };
233
+ export default VftForm;
234
+ export declare const VftFormItem: import("vft/es/utils").SFCWithInstall<import("vue").DefineComponent<{
235
+ label: {
236
+ type: import("vue").PropType<string | undefined>;
237
+ required: false;
238
+ };
239
+ labelWidth: {
240
+ type: import("vue").PropType<Numberish | undefined>;
241
+ required: false;
242
+ };
243
+ prop: {
244
+ type: import("vue").PropType<import("./types").FormItemProp | undefined>;
245
+ required: false;
246
+ };
247
+ required: {
248
+ type: import("vue").PropType<boolean | undefined>;
249
+ required: false;
250
+ };
251
+ rules: {
252
+ type: import("vue").PropType<import("./types").FormItemRule | undefined>;
253
+ required: false;
254
+ };
255
+ error: {
256
+ type: import("vue").PropType<string | undefined>;
257
+ required: false;
258
+ };
259
+ for: {
260
+ type: import("vue").PropType<string | undefined>;
261
+ required: false;
262
+ };
263
+ validateStatus: {
264
+ type: import("vue").PropType<string | undefined>;
265
+ required: false;
266
+ };
267
+ inlineMessage: {
268
+ type: import("vue").PropType<string | boolean | undefined>;
269
+ required: false;
270
+ };
271
+ showMessage: {
272
+ type: import("vue").PropType<boolean | undefined>;
273
+ required: false;
274
+ };
275
+ size: {
276
+ type: import("vue").PropType<import("../types").ComponentSize | undefined>;
277
+ required: false;
278
+ };
279
+ }, {
280
+ size: import("vue").ComputedRef<"" | "large" | "small" | "default">;
281
+ validateMessage: import("vue").Ref<string>;
282
+ validateState: import("vue").Ref<"" | "error" | "validating" | "success">;
283
+ validate: (trigger: string, callback?: import("./types").FormValidateCallback | undefined) => import("./types").FormValidationResult;
284
+ clearValidate: () => void;
285
+ resetField: () => void;
286
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
287
+ label: {
288
+ type: import("vue").PropType<string | undefined>;
289
+ required: false;
290
+ };
291
+ labelWidth: {
292
+ type: import("vue").PropType<Numberish | undefined>;
293
+ required: false;
294
+ };
295
+ prop: {
296
+ type: import("vue").PropType<import("./types").FormItemProp | undefined>;
297
+ required: false;
298
+ };
299
+ required: {
300
+ type: import("vue").PropType<boolean | undefined>;
301
+ required: false;
302
+ };
303
+ rules: {
304
+ type: import("vue").PropType<import("./types").FormItemRule | undefined>;
305
+ required: false;
306
+ };
307
+ error: {
308
+ type: import("vue").PropType<string | undefined>;
309
+ required: false;
310
+ };
311
+ for: {
312
+ type: import("vue").PropType<string | undefined>;
313
+ required: false;
314
+ };
315
+ validateStatus: {
316
+ type: import("vue").PropType<string | undefined>;
317
+ required: false;
318
+ };
319
+ inlineMessage: {
320
+ type: import("vue").PropType<string | boolean | undefined>;
321
+ required: false;
322
+ };
323
+ showMessage: {
324
+ type: import("vue").PropType<boolean | undefined>;
325
+ required: false;
326
+ };
327
+ size: {
328
+ type: import("vue").PropType<import("../types").ComponentSize | undefined>;
329
+ required: false;
330
+ };
331
+ }>>, {}>>;
332
+ export * from './form.vue';
333
+ export * from './form-item.vue';
334
+ export * from './types';
335
+ export * from './constants';
336
+ export * from './hooks';
337
+ export type FormInstance = InstanceType<typeof Form>;
338
+ export type FormItemInstance = InstanceType<typeof FormItem>;
@@ -0,0 +1 @@
1
+ "use strict";require("vft/theme-style/base.css");require("vft/theme-style/vft-form.css");
File without changes
@@ -0,0 +1 @@
1
+ "use strict";require("vft/theme-style/src/base.scss");require("vft/theme-style/src/form.scss");
File without changes
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=["","error","validating","success"];exports.formItemValidateStates=t;
@@ -0,0 +1,43 @@
1
+ import type { SetupContext, UnwrapRef } from 'vue';
2
+ import type { RuleItem, ValidateError, ValidateFieldsError } from 'async-validator';
3
+ import type { ComponentSize } from 'vft/es/constants';
4
+ import type { Arrayable } from 'vft/es/utils';
5
+ import { type FormItemProps } from './form-item.vue';
6
+ import { type FormProps } from './form.vue';
7
+ import type { useFormLabelWidth } from './utils';
8
+ export type FormItemProp = Arrayable<string>;
9
+ export declare const formItemValidateStates: readonly ["", "error", "validating", "success"];
10
+ export type FormItemValidateState = typeof formItemValidateStates[number];
11
+ export type FormLabelWidthContext = ReturnType<typeof useFormLabelWidth>;
12
+ export interface FormItemRule extends RuleItem {
13
+ trigger?: Arrayable<string>;
14
+ }
15
+ export type FormRules = Partial<Record<string, Arrayable<FormItemRule>>>;
16
+ export type FormValidationResult = Promise<boolean>;
17
+ export type FormValidateCallback = (isValid: boolean, invalidFields?: ValidateFieldsError) => void;
18
+ export interface FormValidateFailure {
19
+ errors: ValidateError[] | null;
20
+ fields: ValidateFieldsError;
21
+ }
22
+ export type FormContext = FormProps & UnwrapRef<FormLabelWidthContext> & {
23
+ emit: SetupContext['emit'];
24
+ addField: (field: FormItemContext) => void;
25
+ removeField: (field: FormItemContext) => void;
26
+ resetFields: (props?: Arrayable<FormItemProp>) => void;
27
+ clearValidate: (props?: Arrayable<FormItemProp>) => void;
28
+ validateField: (props?: Arrayable<FormItemProp>, callback?: FormValidateCallback) => FormValidationResult;
29
+ };
30
+ export interface FormItemContext extends FormItemProps {
31
+ $el: HTMLDivElement | undefined;
32
+ size: ComponentSize;
33
+ validateState: FormItemValidateState;
34
+ isGroup: boolean;
35
+ labelId: string;
36
+ inputIds: string[];
37
+ hasLabel: boolean;
38
+ addInputId: (id: string) => void;
39
+ removeInputId: (id: string) => void;
40
+ validate: (trigger: string, callback?: FormValidateCallback) => FormValidationResult;
41
+ resetField(): void;
42
+ clearValidate(): void;
43
+ }
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue");require("@vft/utils");const l=require("../../utils/error.cjs");require("../../utils/ns-cover.cjs");const a=require("lodash"),d="vft-form";function f(){const t=o.ref([]),i=o.computed(()=>{if(!t.value.length)return"0";const e=Math.max(...t.value);return e?`${e}px`:""});function n(e){const r=t.value.indexOf(e);return r===-1&&i.value==="0"&&l.debugWarn(d,`unexpected width ${e}`),r}function u(e,r){if(e&&r){const c=n(r);t.value.splice(c,1,e)}else e&&t.value.push(e)}function s(e){const r=n(e);r>-1&&t.value.splice(r,1)}return{autoLabelWidth:i,registerLabelWidth:u,deregisterLabelWidth:s}}const h=(t,i)=>{const n=a.castArray(i);return n.length>0?t.filter(u=>u.prop&&n.includes(u.prop)):t};exports.filterFields=h;exports.useFormLabelWidth=f;
@@ -0,0 +1,9 @@
1
+ import type { Arrayable } from 'vft/es/utils';
2
+ import type { FormItemContext } from './types';
3
+ import type { FormItemProp } from './form-item.vue';
4
+ export declare function useFormLabelWidth(): {
5
+ autoLabelWidth: import("vue").ComputedRef<string>;
6
+ registerLabelWidth: (val: number, oldVal: number) => void;
7
+ deregisterLabelWidth: (val: number) => void;
8
+ };
9
+ export declare const filterFields: (fields: FormItemContext[], props: Arrayable<FormItemProp>) => FormItemContext[];
@@ -0,0 +1 @@
1
+ "use strict";require("vft/theme-style/base.css");require("vft/theme-style/vft-form-item.css");
File without changes
@@ -0,0 +1 @@
1
+ "use strict";require("vft/theme-style/src/base.scss");require("vft/theme-style/src/form-item.scss");
File without changes
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("../../utils/vue/install.cjs");require("vue");require("@vft/utils");require("../../utils/ns-cover.cjs");const r=require("./full-screen.vue2.cjs"),e=t.withInstall(r.default);exports.VftFullScreen=e;exports.default=e;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("../../utils/vue/install.cjs");require("vue");require("@vft/utils");require("../../utils/ns-cover.cjs");require("lodash");const t=require("./full-screen.vue2.cjs"),e=r.withInstall(t.default);exports.VftFullScreen=e;exports.default=e;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("../../utils/vue/install.cjs");require("vue");require("@vft/utils");require("../../utils/ns-cover.cjs");const r=require("./header-layout.vue2.cjs"),e=t.withInstall(r.default);exports.VftHeaderLayout=e;exports.default=e;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("../../utils/vue/install.cjs");require("vue");require("@vft/utils");require("../../utils/ns-cover.cjs");require("lodash");const r=require("./header-layout.vue2.cjs"),e=t.withInstall(r.default);exports.VftHeaderLayout=e;exports.default=e;