@xiaohaih/json-form-vant 0.0.1

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 (213) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/README.md +807 -0
  3. package/TODO.md +36 -0
  4. package/components/area/index.ts +6 -0
  5. package/components/area/index.vue +120 -0
  6. package/components/area/types.ts +84 -0
  7. package/components/cascader/index.ts +6 -0
  8. package/components/cascader/index.vue +146 -0
  9. package/components/cascader/types.ts +75 -0
  10. package/components/checkbox/index.ts +6 -0
  11. package/components/checkbox/index.vue +59 -0
  12. package/components/checkbox/types.ts +54 -0
  13. package/components/checkbox-group/index.ts +6 -0
  14. package/components/checkbox-group/index.vue +67 -0
  15. package/components/checkbox-group/types.ts +63 -0
  16. package/components/component-definition/components.ts +29 -0
  17. package/components/component-definition/definition.ts +25 -0
  18. package/components/component-definition/index.ts +4 -0
  19. package/components/custom-render/index.ts +6 -0
  20. package/components/custom-render/index.vue +66 -0
  21. package/components/custom-render/types.ts +43 -0
  22. package/components/date-picker/index.ts +6 -0
  23. package/components/date-picker/index.vue +130 -0
  24. package/components/date-picker/types.ts +91 -0
  25. package/components/date-time-picker-group/index.ts +6 -0
  26. package/components/date-time-picker-group/index.vue +158 -0
  27. package/components/date-time-picker-group/types.ts +115 -0
  28. package/components/datetime-picker/index.ts +6 -0
  29. package/components/datetime-picker/index.vue +128 -0
  30. package/components/datetime-picker/types.ts +78 -0
  31. package/components/dynamic-group/index.ts +10 -0
  32. package/components/dynamic-group/index.vue +140 -0
  33. package/components/dynamic-group/types.ts +68 -0
  34. package/components/group/assist.ts +99 -0
  35. package/components/group/index.ts +7 -0
  36. package/components/group/index.vue +117 -0
  37. package/components/group/types.ts +57 -0
  38. package/components/group/virtual-group.vue +38 -0
  39. package/components/index.ts +10 -0
  40. package/components/input/index.ts +6 -0
  41. package/components/input/index.vue +83 -0
  42. package/components/input/types.ts +43 -0
  43. package/components/input-slot/index.ts +6 -0
  44. package/components/input-slot/index.vue +148 -0
  45. package/components/input-slot/types.ts +34 -0
  46. package/components/number-keyboard/index.ts +6 -0
  47. package/components/number-keyboard/index.vue +81 -0
  48. package/components/number-keyboard/types.ts +57 -0
  49. package/components/password-input/index.ts +6 -0
  50. package/components/password-input/index.vue +103 -0
  51. package/components/password-input/types.ts +64 -0
  52. package/components/picker/index.ts +6 -0
  53. package/components/picker/index.vue +136 -0
  54. package/components/picker/types.ts +94 -0
  55. package/components/radio/index.ts +6 -0
  56. package/components/radio/index.vue +68 -0
  57. package/components/radio/types.ts +58 -0
  58. package/components/radio-group/index.ts +6 -0
  59. package/components/radio-group/index.vue +74 -0
  60. package/components/radio-group/types.ts +65 -0
  61. package/components/rate/index.ts +6 -0
  62. package/components/rate/index.vue +63 -0
  63. package/components/rate/types.ts +47 -0
  64. package/components/share.ts +78 -0
  65. package/components/signature/index.ts +6 -0
  66. package/components/signature/index.vue +65 -0
  67. package/components/signature/instance.vue +161 -0
  68. package/components/signature/types.ts +79 -0
  69. package/components/slider/index.ts +6 -0
  70. package/components/slider/index.vue +63 -0
  71. package/components/slider/types.ts +53 -0
  72. package/components/stepper/index.ts +6 -0
  73. package/components/stepper/index.vue +62 -0
  74. package/components/stepper/types.ts +47 -0
  75. package/components/switch/index.ts +6 -0
  76. package/components/switch/index.vue +61 -0
  77. package/components/switch/types.ts +51 -0
  78. package/components/time-picker/index.ts +6 -0
  79. package/components/time-picker/index.vue +130 -0
  80. package/components/time-picker/types.ts +91 -0
  81. package/components/tree-select/index.ts +6 -0
  82. package/components/tree-select/index.vue +160 -0
  83. package/components/tree-select/types.ts +77 -0
  84. package/components/upload/index.ts +6 -0
  85. package/components/upload/index.vue +109 -0
  86. package/components/upload/types.ts +85 -0
  87. package/components/use.ts +45 -0
  88. package/components/utils.ts +52 -0
  89. package/components/wrapper/index.ts +6 -0
  90. package/components/wrapper/index.vue +117 -0
  91. package/components/wrapper/types.ts +94 -0
  92. package/dist/components/area/index.d.ts +5 -0
  93. package/dist/components/area/index.vue.d.ts +1843 -0
  94. package/dist/components/area/types.d.ts +1434 -0
  95. package/dist/components/cascader/index.d.ts +5 -0
  96. package/dist/components/cascader/index.vue.d.ts +2467 -0
  97. package/dist/components/cascader/types.d.ts +1419 -0
  98. package/dist/components/checkbox/index.d.ts +5 -0
  99. package/dist/components/checkbox/index.vue.d.ts +1550 -0
  100. package/dist/components/checkbox/types.d.ts +1313 -0
  101. package/dist/components/checkbox-group/index.d.ts +5 -0
  102. package/dist/components/checkbox-group/index.vue.d.ts +1643 -0
  103. package/dist/components/checkbox-group/types.d.ts +1372 -0
  104. package/dist/components/component-definition/components.d.ts +30 -0
  105. package/dist/components/component-definition/index.d.ts +4 -0
  106. package/dist/components/custom-render/index.d.ts +5 -0
  107. package/dist/components/custom-render/index.vue.d.ts +1473 -0
  108. package/dist/components/custom-render/types.d.ts +1175 -0
  109. package/dist/components/date-picker/index.d.ts +5 -0
  110. package/dist/components/date-picker/index.vue.d.ts +1888 -0
  111. package/dist/components/date-picker/types.d.ts +1458 -0
  112. package/dist/components/date-time-picker-group/index.d.ts +5 -0
  113. package/dist/components/date-time-picker-group/index.vue.d.ts +2181 -0
  114. package/dist/components/date-time-picker-group/types.d.ts +1549 -0
  115. package/dist/components/dynamic-group/index.d.ts +5 -0
  116. package/dist/components/dynamic-group/index.vue.d.ts +457 -0
  117. package/dist/components/dynamic-group/types.d.ts +403 -0
  118. package/dist/components/group/assist.d.ts +58 -0
  119. package/dist/components/group/index.d.ts +6 -0
  120. package/dist/components/group/index.vue.d.ts +139 -0
  121. package/dist/components/group/types.d.ts +189 -0
  122. package/dist/components/group/virtual-group.vue.d.ts +42 -0
  123. package/dist/components/index.d.ts +3 -0
  124. package/dist/components/input/index.d.ts +5 -0
  125. package/dist/components/input/index.vue.d.ts +2229 -0
  126. package/dist/components/input/types.d.ts +1258 -0
  127. package/dist/components/input-slot/index.d.ts +5 -0
  128. package/dist/components/input-slot/index.vue.d.ts +626 -0
  129. package/dist/components/input-slot/types.d.ts +311 -0
  130. package/dist/components/number-keyboard/index.d.ts +5 -0
  131. package/dist/components/number-keyboard/index.vue.d.ts +1643 -0
  132. package/dist/components/number-keyboard/types.d.ts +1324 -0
  133. package/dist/components/password-input/index.d.ts +5 -0
  134. package/dist/components/password-input/index.vue.d.ts +1715 -0
  135. package/dist/components/password-input/types.d.ts +1357 -0
  136. package/dist/components/picker/index.d.ts +5 -0
  137. package/dist/components/picker/index.vue.d.ts +1868 -0
  138. package/dist/components/picker/types.d.ts +1466 -0
  139. package/dist/components/radio/index.d.ts +5 -0
  140. package/dist/components/radio/index.vue.d.ts +1563 -0
  141. package/dist/components/radio/types.d.ts +1327 -0
  142. package/dist/components/radio-group/index.d.ts +5 -0
  143. package/dist/components/radio-group/index.vue.d.ts +1617 -0
  144. package/dist/components/radio-group/types.d.ts +1383 -0
  145. package/dist/components/rate/index.d.ts +5 -0
  146. package/dist/components/rate/index.vue.d.ts +1557 -0
  147. package/dist/components/rate/types.d.ts +1281 -0
  148. package/dist/components/share.d.ts +679 -0
  149. package/dist/components/signature/index.d.ts +5 -0
  150. package/dist/components/signature/index.vue.d.ts +3017 -0
  151. package/dist/components/signature/instance.vue.d.ts +1614 -0
  152. package/dist/components/signature/types.d.ts +1369 -0
  153. package/dist/components/slider/index.d.ts +5 -0
  154. package/dist/components/slider/index.vue.d.ts +1563 -0
  155. package/dist/components/slider/types.d.ts +1302 -0
  156. package/dist/components/stepper/index.d.ts +5 -0
  157. package/dist/components/stepper/index.vue.d.ts +1620 -0
  158. package/dist/components/stepper/types.d.ts +1281 -0
  159. package/dist/components/switch/index.d.ts +5 -0
  160. package/dist/components/switch/index.vue.d.ts +1529 -0
  161. package/dist/components/switch/types.d.ts +1296 -0
  162. package/dist/components/time-picker/index.d.ts +5 -0
  163. package/dist/components/time-picker/index.vue.d.ts +1936 -0
  164. package/dist/components/time-picker/types.d.ts +1458 -0
  165. package/dist/components/tree-select/index.d.ts +5 -0
  166. package/dist/components/tree-select/index.vue.d.ts +1802 -0
  167. package/dist/components/tree-select/types.d.ts +1411 -0
  168. package/dist/components/upload/index.d.ts +5 -0
  169. package/dist/components/upload/index.vue.d.ts +1697 -0
  170. package/dist/components/upload/types.d.ts +1376 -0
  171. package/dist/components/use.d.ts +53 -0
  172. package/dist/components/utils.d.ts +15 -0
  173. package/dist/components/wrapper/index.d.ts +5 -0
  174. package/dist/components/wrapper/index.vue.d.ts +1085 -0
  175. package/dist/components/wrapper/types.d.ts +541 -0
  176. package/dist/docs/.vitepress/config.d.ts +3 -0
  177. package/dist/docs/.vitepress/theme/index.d.ts +2 -0
  178. package/dist/index.cjs.js +5459 -0
  179. package/dist/index.cjs.js.map +1 -0
  180. package/dist/index.cjs.min.js +3568 -0
  181. package/dist/index.cjs.min.js.map +1 -0
  182. package/dist/index.esm.js +5264 -0
  183. package/dist/index.esm.js.map +1 -0
  184. package/dist/index.esm.min.js +3559 -0
  185. package/dist/index.esm.min.js.map +1 -0
  186. package/dist/index.umd.js +5465 -0
  187. package/dist/index.umd.js.map +1 -0
  188. package/dist/index.umd.min.js +3573 -0
  189. package/dist/index.umd.min.js.map +1 -0
  190. package/dist/src/assist.d.ts +32 -0
  191. package/dist/src/index.d.ts +5 -0
  192. package/dist/src/interface.d.ts +129 -0
  193. package/dist/src/utils.d.ts +9 -0
  194. package/dist/src/version.d.ts +2 -0
  195. package/docs/.vitepress/config.ts +99 -0
  196. package/docs/.vitepress/theme/index.ts +5 -0
  197. package/docs/README.md +20 -0
  198. package/docs/index.md +25 -0
  199. package/env.d.ts +8 -0
  200. package/package.json +71 -0
  201. package/scripts/generate-version.mjs +26 -0
  202. package/scripts/postinstall.cjs +13 -0
  203. package/scripts/utils.cjs +67 -0
  204. package/src/assist.ts +40 -0
  205. package/src/index.ts +5 -0
  206. package/src/interface.ts +293 -0
  207. package/src/utils.ts +22 -0
  208. package/src/version.ts +2 -0
  209. package/tsconfig.app.json +41 -0
  210. package/tsconfig.json +7 -0
  211. package/tsconfig.node.json +24 -0
  212. package/tsdown.config.ts +12 -0
  213. package/vite.config.ts +93 -0
@@ -0,0 +1,189 @@
1
+ import { EventsWithoutInstance, getProvideValue } from '@xiaohaih/json-form-core';
2
+ import { ExtractPublicPropTypes, PropType } from 'vue';
3
+ import { ComponentType } from '../share';
4
+ export interface GroupHookOption {
5
+ /** 组件创建前触发的钩子, 可在内部监听生命周期, 获取实例, 以及操作该组件内的各种属性 */
6
+ created?: (options: {
7
+ props: ExtractPublicPropTypes<ReturnType<typeof groupPropsGeneric>>;
8
+ wrapper: ReturnType<typeof getProvideValue>;
9
+ } & EventsWithoutInstance) => void;
10
+ }
11
+ /** 组件传参 */
12
+ export declare function groupPropsGeneric<Query extends Record<string, any>, OptionQuery extends Record<string, any>>(): {
13
+ /** 当前组件类型(防止被继承, 主动声明) */
14
+ readonly t: {
15
+ readonly type: StringConstructor;
16
+ };
17
+ /** 提交字段 */
18
+ readonly field: {
19
+ readonly type: StringConstructor;
20
+ };
21
+ /** 当前条件对象 */
22
+ readonly query: {
23
+ readonly type: PropType<Query>;
24
+ readonly required: true;
25
+ };
26
+ /** 渲染的标签 */
27
+ readonly tag: {
28
+ readonly type: PropType<any>;
29
+ readonly default: "div";
30
+ };
31
+ /** 传递给渲染标签的插槽(默认插槽是渲染的子条件) */
32
+ readonly tagSlots: {
33
+ readonly type: PropType<Record<string, ComponentType<{
34
+ query: Query;
35
+ wrapper: ReturnType<typeof getProvideValue>;
36
+ }>>>;
37
+ };
38
+ /** 渲染的子条件 */
39
+ readonly config: {
40
+ readonly type: PropType<any>;
41
+ };
42
+ /** 传递给组件的插槽 */
43
+ readonly slots: {
44
+ readonly type: PropType<GroupSlots<Query, OptionQuery>>;
45
+ };
46
+ /** 组件额外的钩子() */
47
+ readonly hooks: {
48
+ readonly type: PropType<GroupHookOption>;
49
+ readonly default: undefined;
50
+ };
51
+ /** 获取表单组件实例 */
52
+ readonly getFormRef: {
53
+ readonly type: PropType<() => any>;
54
+ };
55
+ readonly class: {
56
+ type: PropType<string | Record<string, any> | any[]>;
57
+ };
58
+ readonly style: {
59
+ type: PropType<string | Record<string, any> | any[]>;
60
+ };
61
+ };
62
+ /** 组件传参 */
63
+ export declare const groupPropsPrivate: {
64
+ /** 当前组件类型(防止被继承, 主动声明) */
65
+ readonly t: {
66
+ readonly type: StringConstructor;
67
+ };
68
+ /** 提交字段 */
69
+ readonly field: {
70
+ readonly type: StringConstructor;
71
+ };
72
+ /** 当前条件对象 */
73
+ readonly query: {
74
+ readonly type: PropType<Record<string, any>>;
75
+ readonly required: true;
76
+ };
77
+ /** 渲染的标签 */
78
+ readonly tag: {
79
+ readonly type: PropType<any>;
80
+ readonly default: "div";
81
+ };
82
+ /** 传递给渲染标签的插槽(默认插槽是渲染的子条件) */
83
+ readonly tagSlots: {
84
+ readonly type: PropType<Record<string, ComponentType<{
85
+ query: Record<string, any>;
86
+ wrapper: ReturnType<typeof getProvideValue>;
87
+ }>>>;
88
+ };
89
+ /** 渲染的子条件 */
90
+ readonly config: {
91
+ readonly type: PropType<any>;
92
+ };
93
+ /** 传递给组件的插槽 */
94
+ readonly slots: {
95
+ readonly type: PropType<GroupSlots<Record<string, any>, Record<string, any>>>;
96
+ };
97
+ /** 组件额外的钩子() */
98
+ readonly hooks: {
99
+ readonly type: PropType<GroupHookOption>;
100
+ readonly default: undefined;
101
+ };
102
+ /** 获取表单组件实例 */
103
+ readonly getFormRef: {
104
+ readonly type: PropType<() => any>;
105
+ };
106
+ readonly class: {
107
+ type: PropType<string | Record<string, any> | any[]>;
108
+ };
109
+ readonly style: {
110
+ type: PropType<string | Record<string, any> | any[]>;
111
+ };
112
+ };
113
+ /** 组件传参 - 外部调用 */
114
+ export declare const groupProps: {
115
+ /** 当前组件类型(防止被继承, 主动声明) */
116
+ readonly t: {
117
+ readonly type: StringConstructor;
118
+ };
119
+ /** 提交字段 */
120
+ readonly field: {
121
+ readonly type: StringConstructor;
122
+ };
123
+ /** 当前条件对象 */
124
+ readonly query: {
125
+ readonly type: PropType<Record<string, any>>;
126
+ readonly required: true;
127
+ };
128
+ /** 渲染的标签 */
129
+ readonly tag: {
130
+ readonly type: PropType<any>;
131
+ readonly default: "div";
132
+ };
133
+ /** 传递给渲染标签的插槽(默认插槽是渲染的子条件) */
134
+ readonly tagSlots: {
135
+ readonly type: PropType<Record<string, ComponentType<{
136
+ query: Record<string, any>;
137
+ wrapper: ReturnType<typeof getProvideValue>;
138
+ }>>>;
139
+ };
140
+ /** 渲染的子条件 */
141
+ readonly config: {
142
+ readonly type: PropType<any>;
143
+ };
144
+ /** 传递给组件的插槽 */
145
+ readonly slots: {
146
+ readonly type: PropType<GroupSlots<Record<string, any>, Record<string, any>>>;
147
+ };
148
+ /** 组件额外的钩子() */
149
+ readonly hooks: {
150
+ readonly type: PropType<GroupHookOption>;
151
+ readonly default: undefined;
152
+ };
153
+ /** 获取表单组件实例 */
154
+ readonly getFormRef: {
155
+ readonly type: PropType<() => any>;
156
+ };
157
+ readonly class: {
158
+ type: PropType<string | Record<string, any> | any[]>;
159
+ };
160
+ readonly style: {
161
+ type: PropType<string | Record<string, any> | any[]>;
162
+ };
163
+ };
164
+ export type GroupProps<Query extends Record<string, any>, OptionQuery extends Record<string, any>> = ExtractPublicPropTypes<ReturnType<typeof groupPropsGeneric<Query, OptionQuery>>>;
165
+ /** 组件事件 */
166
+ export declare function groupEmitsGeneric<T>(): {};
167
+ /** 组件事件 */
168
+ export declare const groupEmitsPrivate: {};
169
+ /** 组件事件 - 外部调用 */
170
+ export declare const groupEmits: {};
171
+ export type GroupEmits<T> = ReturnType<typeof groupEmitsGeneric<T>>;
172
+ export interface GroupSlots<Query extends Record<string, any> = any, OptionQuery extends Record<string, any> = any> {
173
+ /** 在表单项前渲染 */
174
+ prepend?: ComponentType<{
175
+ query: Query;
176
+ wrapper: ReturnType<typeof getProvideValue>;
177
+ }>;
178
+ /** 自定义表单渲染逻辑 */
179
+ default?: ComponentType<{
180
+ config: Record<string, any> | Record<string, any>[];
181
+ query: Query;
182
+ wrapper: ReturnType<typeof getProvideValue>;
183
+ }>;
184
+ /** 在表单项后渲染 */
185
+ append?: ComponentType<{
186
+ query: Query;
187
+ wrapper: ReturnType<typeof getProvideValue>;
188
+ }>;
189
+ }
@@ -0,0 +1,42 @@
1
+ import { getNode } from '@xiaohaih/json-form-core';
2
+ import { PropType } from 'vue';
3
+ /**
4
+ * @file 对 Group 组件进行包装, 以支持无根节点渲染
5
+ */
6
+ declare const _default: typeof __VLS_export;
7
+ export default _default;
8
+ declare const __VLS_export: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
9
+ tag: {
10
+ type: PropType<any>;
11
+ default: string;
12
+ };
13
+ slots: {
14
+ type: PropType<Record<string, any>>;
15
+ };
16
+ wrapper: {
17
+ type: PropType<Record<string, any>>;
18
+ };
19
+ query: {
20
+ type: PropType<Record<string, any>>;
21
+ };
22
+ }>, {
23
+ getNode: typeof getNode;
24
+ tagRef: import('vue').Ref<Record<string, any> | undefined, Record<string, any> | undefined>;
25
+ events: import('vue').ComputedRef<any>;
26
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
27
+ tag: {
28
+ type: PropType<any>;
29
+ default: string;
30
+ };
31
+ slots: {
32
+ type: PropType<Record<string, any>>;
33
+ };
34
+ wrapper: {
35
+ type: PropType<Record<string, any>>;
36
+ };
37
+ query: {
38
+ type: PropType<Record<string, any>>;
39
+ };
40
+ }>> & Readonly<{}>, {
41
+ tag: any;
42
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
@@ -0,0 +1,3 @@
1
+ export * from './component-definition/index';
2
+ export * from './share';
3
+ export * from './wrapper/index';
@@ -0,0 +1,5 @@
1
+ import { ComponentExposed } from 'vue-component-type-helpers';
2
+ import { default as HInput } from './index.vue';
3
+ export { HInput };
4
+ export type HInputInstance = ComponentExposed<typeof HInput>;
5
+ export * from './types';