@tmagic/form 1.0.0-beta.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 (94) hide show
  1. package/dist/style.css +161 -0
  2. package/dist/tmagic-form.es.js +3749 -0
  3. package/dist/tmagic-form.es.js.map +1 -0
  4. package/dist/tmagic-form.umd.js +3790 -0
  5. package/dist/tmagic-form.umd.js.map +1 -0
  6. package/dist/types/src/Form.vue.d.ts +304 -0
  7. package/dist/types/src/FormDialog.vue.d.ts +641 -0
  8. package/dist/types/src/containers/Container.vue.d.ts +69 -0
  9. package/dist/types/src/containers/Fieldset.vue.d.ts +56 -0
  10. package/dist/types/src/containers/GroupList.vue.d.ts +56 -0
  11. package/dist/types/src/containers/GroupListItem.vue.d.ts +72 -0
  12. package/dist/types/src/containers/Panel.vue.d.ts +41 -0
  13. package/dist/types/src/containers/Row.vue.d.ts +42 -0
  14. package/dist/types/src/containers/Step.vue.d.ts +45 -0
  15. package/dist/types/src/containers/Table.vue.d.ts +1401 -0
  16. package/dist/types/src/containers/Tabs.vue.d.ts +45 -0
  17. package/dist/types/src/fields/Cascader.vue.d.ts +1748 -0
  18. package/dist/types/src/fields/Checkbox.vue.d.ts +59 -0
  19. package/dist/types/src/fields/CheckboxGroup.vue.d.ts +56 -0
  20. package/dist/types/src/fields/Date.vue.d.ts +58 -0
  21. package/dist/types/src/fields/DateTime.vue.d.ts +57 -0
  22. package/dist/types/src/fields/Daterange.vue.d.ts +57 -0
  23. package/dist/types/src/fields/Display.vue.d.ts +3 -0
  24. package/dist/types/src/fields/DynamicField.vue.d.ts +76 -0
  25. package/dist/types/src/fields/Hidden.vue.d.ts +3 -0
  26. package/dist/types/src/fields/Link.vue.d.ts +1365 -0
  27. package/dist/types/src/fields/Number.vue.d.ts +59 -0
  28. package/dist/types/src/fields/RadioGroup.vue.d.ts +55 -0
  29. package/dist/types/src/fields/Select.vue.d.ts +975 -0
  30. package/dist/types/src/fields/Switch.vue.d.ts +59 -0
  31. package/dist/types/src/fields/Text.vue.d.ts +61 -0
  32. package/dist/types/src/fields/Textarea.vue.d.ts +56 -0
  33. package/dist/types/src/fields/Time.vue.d.ts +54 -0
  34. package/dist/types/src/index.d.ts +36 -0
  35. package/dist/types/src/schema.d.ts +495 -0
  36. package/dist/types/src/shims-vue.d.ts +6 -0
  37. package/dist/types/src/utils/config.d.ts +3 -0
  38. package/dist/types/src/utils/fieldProps.d.ts +21 -0
  39. package/dist/types/src/utils/form.d.ts +8 -0
  40. package/dist/types/src/utils/useAddField.d.ts +1 -0
  41. package/dist/types/src/vite-env.d.ts +1 -0
  42. package/package.json +51 -0
  43. package/src/Form.vue +188 -0
  44. package/src/FormDialog.vue +163 -0
  45. package/src/containers/Container.vue +263 -0
  46. package/src/containers/Fieldset.vue +138 -0
  47. package/src/containers/GroupList.vue +152 -0
  48. package/src/containers/GroupListItem.vue +159 -0
  49. package/src/containers/Panel.vue +106 -0
  50. package/src/containers/Row.vue +68 -0
  51. package/src/containers/Step.vue +82 -0
  52. package/src/containers/Table.vue +624 -0
  53. package/src/containers/Tabs.vue +176 -0
  54. package/src/fields/Cascader.vue +147 -0
  55. package/src/fields/Checkbox.vue +67 -0
  56. package/src/fields/CheckboxGroup.vue +44 -0
  57. package/src/fields/ColorPicker.vue +38 -0
  58. package/src/fields/Date.vue +51 -0
  59. package/src/fields/DateTime.vue +59 -0
  60. package/src/fields/Daterange.vue +75 -0
  61. package/src/fields/Display.vue +34 -0
  62. package/src/fields/DynamicField.vue +109 -0
  63. package/src/fields/Hidden.vue +29 -0
  64. package/src/fields/Link.vue +112 -0
  65. package/src/fields/Number.vue +53 -0
  66. package/src/fields/RadioGroup.vue +33 -0
  67. package/src/fields/Select.vue +393 -0
  68. package/src/fields/Switch.vue +65 -0
  69. package/src/fields/Text.vue +134 -0
  70. package/src/fields/Textarea.vue +62 -0
  71. package/src/fields/Time.vue +48 -0
  72. package/src/index.ts +127 -0
  73. package/src/schema.ts +638 -0
  74. package/src/shims-vue.d.ts +6 -0
  75. package/src/theme/date-time.scss +7 -0
  76. package/src/theme/fieldset.scss +24 -0
  77. package/src/theme/form-dialog.scss +13 -0
  78. package/src/theme/form.scss +30 -0
  79. package/src/theme/group-list.scss +23 -0
  80. package/src/theme/index.scss +9 -0
  81. package/src/theme/link.scss +3 -0
  82. package/src/theme/panel.scss +18 -0
  83. package/src/theme/select.scss +3 -0
  84. package/src/theme/table.scss +69 -0
  85. package/src/theme/tabs.scss +25 -0
  86. package/src/utils/config.ts +27 -0
  87. package/src/utils/containerProps.ts +50 -0
  88. package/src/utils/createForm.ts +25 -0
  89. package/src/utils/fieldProps.ts +39 -0
  90. package/src/utils/form.ts +266 -0
  91. package/src/utils/useAddField.ts +40 -0
  92. package/src/vite-env.d.ts +1 -0
  93. package/tsconfig.json +9 -0
  94. package/vite.config.ts +27 -0
@@ -0,0 +1,69 @@
1
+ import type { DefineComponent, Ref, ComputedRef, ConcreteComponent, ComputedOptions, MethodOptions, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes, PropType } from 'vue';
2
+ import type { FormConfig, Rule, ChildConfig, FormValue } from '../schema';
3
+ declare const _default: DefineComponent<{
4
+ labelWidth: StringConstructor;
5
+ expandMore: BooleanConstructor;
6
+ model: {
7
+ type: PropType<FormValue>;
8
+ required: true;
9
+ };
10
+ config: {
11
+ type: PropType<ChildConfig>;
12
+ required: true;
13
+ };
14
+ prop: {
15
+ type: StringConstructor;
16
+ default: () => string;
17
+ };
18
+ stepActive: {
19
+ type: (StringConstructor | NumberConstructor)[];
20
+ };
21
+ size: {
22
+ type: StringConstructor;
23
+ default: string;
24
+ };
25
+ }, {
26
+ expand: Ref<boolean>;
27
+ name: ComputedRef<string | number>;
28
+ type: ComputedRef<string>;
29
+ disabled: ComputedRef<any>;
30
+ itemProp: ComputedRef<string>;
31
+ items: ComputedRef<FormConfig>;
32
+ display: ComputedRef<boolean>;
33
+ tagName: ComputedRef<ConcreteComponent<{}, any, any, ComputedOptions, MethodOptions> | "m-fields-text">;
34
+ rule: ComputedRef<Rule[]>;
35
+ tooltip: ComputedRef<any>;
36
+ extra: ComputedRef<any>;
37
+ key: (config: any) => any;
38
+ onChangeHandler: (v: FormValue, key?: string | undefined) => Promise<void>;
39
+ expandHandler: () => boolean;
40
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "change"[], "change", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
41
+ labelWidth: StringConstructor;
42
+ expandMore: BooleanConstructor;
43
+ model: {
44
+ type: PropType<FormValue>;
45
+ required: true;
46
+ };
47
+ config: {
48
+ type: PropType<ChildConfig>;
49
+ required: true;
50
+ };
51
+ prop: {
52
+ type: StringConstructor;
53
+ default: () => string;
54
+ };
55
+ stepActive: {
56
+ type: (StringConstructor | NumberConstructor)[];
57
+ };
58
+ size: {
59
+ type: StringConstructor;
60
+ default: string;
61
+ };
62
+ }>> & {
63
+ onChange?: ((...args: any[]) => any) | undefined;
64
+ }, {
65
+ size: string;
66
+ expandMore: boolean;
67
+ prop: string;
68
+ }>;
69
+ export default _default;
@@ -0,0 +1,56 @@
1
+ import type { DefineComponent, ComputedRef, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes, PropType } from 'vue';
2
+ import { FieldsetConfig, FormState } from '../schema';
3
+ declare const _default: DefineComponent<{
4
+ labelWidth: StringConstructor;
5
+ model: {
6
+ type: ObjectConstructor;
7
+ default: () => {};
8
+ };
9
+ config: {
10
+ type: PropType<FieldsetConfig>;
11
+ default: () => {};
12
+ };
13
+ rules: {
14
+ type: ObjectConstructor;
15
+ default: () => {};
16
+ };
17
+ prop: {
18
+ type: StringConstructor;
19
+ default: () => string;
20
+ };
21
+ size: StringConstructor;
22
+ }, {
23
+ show: ComputedRef<any>;
24
+ name: ComputedRef<string | number>;
25
+ mForm: FormState | undefined;
26
+ lWidth: ComputedRef<string | null | undefined>;
27
+ key: (item: any, index: number) => any;
28
+ change: () => void;
29
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "change"[], "change", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
30
+ labelWidth: StringConstructor;
31
+ model: {
32
+ type: ObjectConstructor;
33
+ default: () => {};
34
+ };
35
+ config: {
36
+ type: PropType<FieldsetConfig>;
37
+ default: () => {};
38
+ };
39
+ rules: {
40
+ type: ObjectConstructor;
41
+ default: () => {};
42
+ };
43
+ prop: {
44
+ type: StringConstructor;
45
+ default: () => string;
46
+ };
47
+ size: StringConstructor;
48
+ }>> & {
49
+ onChange?: ((...args: any[]) => any) | undefined;
50
+ }, {
51
+ model: Record<string, any>;
52
+ rules: Record<string, any>;
53
+ config: FieldsetConfig;
54
+ prop: string;
55
+ }>;
56
+ export default _default;
@@ -0,0 +1,56 @@
1
+ import type { DefineComponent, ComputedRef, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes, PropType } from 'vue';
2
+ import { GroupListConfig } from '../schema';
3
+ declare const _default: DefineComponent<{
4
+ labelWidth: StringConstructor;
5
+ model: {
6
+ type: ObjectConstructor;
7
+ default: () => {};
8
+ };
9
+ config: {
10
+ type: PropType<GroupListConfig>;
11
+ default: () => {};
12
+ };
13
+ prop: {
14
+ type: StringConstructor;
15
+ default: string;
16
+ };
17
+ size: StringConstructor;
18
+ name: {
19
+ type: StringConstructor;
20
+ default: string;
21
+ };
22
+ }, {
23
+ addable: ComputedRef<boolean | "undefined">;
24
+ toggleMode: () => void;
25
+ removeHandler: (index: number) => false | undefined;
26
+ swapHandler: (idx1: number, idx2: number) => false | undefined;
27
+ changeHandler: () => false | undefined;
28
+ addHandler: () => Promise<false | undefined>;
29
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "change"[], "change", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
30
+ labelWidth: StringConstructor;
31
+ model: {
32
+ type: ObjectConstructor;
33
+ default: () => {};
34
+ };
35
+ config: {
36
+ type: PropType<GroupListConfig>;
37
+ default: () => {};
38
+ };
39
+ prop: {
40
+ type: StringConstructor;
41
+ default: string;
42
+ };
43
+ size: StringConstructor;
44
+ name: {
45
+ type: StringConstructor;
46
+ default: string;
47
+ };
48
+ }>> & {
49
+ onChange?: ((...args: any[]) => any) | undefined;
50
+ }, {
51
+ model: Record<string, any>;
52
+ name: string;
53
+ config: GroupListConfig;
54
+ prop: string;
55
+ }>;
56
+ export default _default;
@@ -0,0 +1,72 @@
1
+ import type { DefineComponent, Ref, ComputedRef, ComponentOptionsMixin, EmitsOptions, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes, PropType } from 'vue';
2
+ import type { FormConfig, GroupListConfig } from '../schema';
3
+ declare const _default: DefineComponent<{
4
+ labelWidth: StringConstructor;
5
+ model: {
6
+ type: ObjectConstructor;
7
+ default: () => {};
8
+ };
9
+ config: {
10
+ type: PropType<GroupListConfig>;
11
+ default: () => {};
12
+ };
13
+ prop: StringConstructor;
14
+ size: StringConstructor;
15
+ index: {
16
+ type: (SymbolConstructor | StringConstructor | NumberConstructor)[];
17
+ default: number;
18
+ };
19
+ groupModel: {
20
+ type: ArrayConstructor;
21
+ default: () => never[];
22
+ };
23
+ }, {
24
+ expand: Ref<boolean>;
25
+ expandHandler: () => void;
26
+ title: ComputedRef<any>;
27
+ showDelete: (index: number) => boolean;
28
+ removeHandler: () => void;
29
+ movable: () => boolean;
30
+ changeOrder: (offset?: number) => void;
31
+ itemExtra: ComputedRef<any>;
32
+ rowConfig: ComputedRef<{
33
+ [x: string]: string | number | FormConfig | undefined;
34
+ type: string;
35
+ span: number;
36
+ items: FormConfig;
37
+ labelWidth: string | undefined;
38
+ }>;
39
+ changeHandler: () => void;
40
+ length: ComputedRef<number>;
41
+ Delete: DefineComponent<{}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, EmitsOptions, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<{}>, {}>;
42
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("change" | "swap-item" | "remove-item")[], "change" | "swap-item" | "remove-item", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
43
+ labelWidth: StringConstructor;
44
+ model: {
45
+ type: ObjectConstructor;
46
+ default: () => {};
47
+ };
48
+ config: {
49
+ type: PropType<GroupListConfig>;
50
+ default: () => {};
51
+ };
52
+ prop: StringConstructor;
53
+ size: StringConstructor;
54
+ index: {
55
+ type: (SymbolConstructor | StringConstructor | NumberConstructor)[];
56
+ default: number;
57
+ };
58
+ groupModel: {
59
+ type: ArrayConstructor;
60
+ default: () => never[];
61
+ };
62
+ }>> & {
63
+ onChange?: ((...args: any[]) => any) | undefined;
64
+ "onSwap-item"?: ((...args: any[]) => any) | undefined;
65
+ "onRemove-item"?: ((...args: any[]) => any) | undefined;
66
+ }, {
67
+ model: Record<string, any>;
68
+ config: GroupListConfig;
69
+ index: string | number | symbol;
70
+ groupModel: unknown[];
71
+ }>;
72
+ export default _default;
@@ -0,0 +1,41 @@
1
+ import type { DefineComponent, Ref, ComputedRef, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes, PropType } from 'vue';
2
+ import type { FormConfig, FormState, PanelConfig } from '../schema';
3
+ declare const _default: DefineComponent<{
4
+ labelWidth: StringConstructor;
5
+ model: {
6
+ type: ObjectConstructor;
7
+ default: () => {};
8
+ };
9
+ config: {
10
+ type: PropType<PanelConfig>;
11
+ default: () => {};
12
+ };
13
+ prop: StringConstructor;
14
+ size: StringConstructor;
15
+ name: StringConstructor;
16
+ }, {
17
+ mForm: FormState | undefined;
18
+ expand: Ref<boolean>;
19
+ items: ComputedRef<FormConfig>;
20
+ filter: (config: any) => any;
21
+ changeHandler: () => void;
22
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "change"[], "change", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
23
+ labelWidth: StringConstructor;
24
+ model: {
25
+ type: ObjectConstructor;
26
+ default: () => {};
27
+ };
28
+ config: {
29
+ type: PropType<PanelConfig>;
30
+ default: () => {};
31
+ };
32
+ prop: StringConstructor;
33
+ size: StringConstructor;
34
+ name: StringConstructor;
35
+ }>> & {
36
+ onChange?: ((...args: any[]) => any) | undefined;
37
+ }, {
38
+ model: Record<string, any>;
39
+ config: PanelConfig;
40
+ }>;
41
+ export default _default;
@@ -0,0 +1,42 @@
1
+ import type { DefineComponent, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes, PropType } from 'vue';
2
+ import { FormState, RowConfig } from '../schema';
3
+ declare const _default: DefineComponent<{
4
+ labelWidth: StringConstructor;
5
+ expandMore: BooleanConstructor;
6
+ model: {
7
+ type: ObjectConstructor;
8
+ default: () => {};
9
+ };
10
+ config: {
11
+ type: PropType<RowConfig>;
12
+ default: () => {};
13
+ };
14
+ prop: StringConstructor;
15
+ name: StringConstructor;
16
+ size: StringConstructor;
17
+ }, {
18
+ mForm: FormState | undefined;
19
+ display(config: any): any;
20
+ changeHandler: () => void;
21
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "change"[], "change", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
22
+ labelWidth: StringConstructor;
23
+ expandMore: BooleanConstructor;
24
+ model: {
25
+ type: ObjectConstructor;
26
+ default: () => {};
27
+ };
28
+ config: {
29
+ type: PropType<RowConfig>;
30
+ default: () => {};
31
+ };
32
+ prop: StringConstructor;
33
+ name: StringConstructor;
34
+ size: StringConstructor;
35
+ }>> & {
36
+ onChange?: ((...args: any[]) => any) | undefined;
37
+ }, {
38
+ model: Record<string, any>;
39
+ expandMore: boolean;
40
+ config: RowConfig;
41
+ }>;
42
+ export default _default;
@@ -0,0 +1,45 @@
1
+ import type { DefineComponent, Ref, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes, PropType } from 'vue';
2
+ import { FormState, StepConfig } from '../schema';
3
+ declare const _default: DefineComponent<{
4
+ model: {
5
+ type: ObjectConstructor;
6
+ default: () => {};
7
+ };
8
+ config: {
9
+ type: PropType<StepConfig>;
10
+ default: () => {};
11
+ };
12
+ stepActive: {
13
+ type: NumberConstructor;
14
+ default: () => number;
15
+ };
16
+ size: StringConstructor;
17
+ labelWidth: StringConstructor;
18
+ }, {
19
+ mForm: FormState | undefined;
20
+ active: Ref<number>;
21
+ stepClick: (index: number) => void;
22
+ changeHandler: () => void;
23
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "change"[], "change", VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
24
+ model: {
25
+ type: ObjectConstructor;
26
+ default: () => {};
27
+ };
28
+ config: {
29
+ type: PropType<StepConfig>;
30
+ default: () => {};
31
+ };
32
+ stepActive: {
33
+ type: NumberConstructor;
34
+ default: () => number;
35
+ };
36
+ size: StringConstructor;
37
+ labelWidth: StringConstructor;
38
+ }>> & {
39
+ onChange?: ((...args: any[]) => any) | undefined;
40
+ }, {
41
+ model: Record<string, any>;
42
+ config: StepConfig;
43
+ stepActive: number;
44
+ }>;
45
+ export default _default;