@skyfox2000/webui 1.2.12 → 1.3.0

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 (45) hide show
  1. package/lib/assets/modules/{file-upload-CGyzCx7I.js → file-upload-C4GVmWjB.js} +1 -1
  2. package/lib/assets/modules/{form-excel-DWirWVPA.js → form-excel-Cr2hcL1s.js} +3 -3
  3. package/lib/assets/modules/{index-Czk7DDWM.js → index-D5onbqkl.js} +2 -2
  4. package/lib/assets/modules/{index-C1zkNPmi.js → index-DjBruVH-.js} +1 -1
  5. package/lib/assets/modules/{menuTabs-BOax-dro.js → menuTabs-B9fCWfN1.js} +36 -36
  6. package/lib/assets/modules/{toolIcon-vJF7OgP6.js → toolIcon-DKTf30Tq.js} +1 -1
  7. package/lib/assets/modules/{uploadList-DaUjVXLU.js → uploadList-CY57np42.js} +980 -923
  8. package/lib/assets/modules/uploadList-D2lisNHt.js +327 -0
  9. package/lib/components/form/autoComplete/index.vue.d.ts +15 -52
  10. package/lib/components/form/cascader/index.vue.d.ts +16 -56
  11. package/lib/components/form/checkbox/index.vue.d.ts +15 -54
  12. package/lib/components/form/index.d.ts +1 -1
  13. package/lib/components/form/propEditor/index.vue.d.ts +1 -7
  14. package/lib/components/form/radio/index.vue.d.ts +15 -54
  15. package/lib/components/form/select/index.vue.d.ts +15 -60
  16. package/lib/components/form/switch/index.vue.d.ts +62 -29
  17. package/lib/es/AceEditor/index.js +3 -3
  18. package/lib/es/BasicLayout/index.js +6 -6
  19. package/lib/es/Error403/index.js +1 -1
  20. package/lib/es/Error404/index.js +1 -1
  21. package/lib/es/ExcelForm/index.js +37 -37
  22. package/lib/es/UploadForm/index.js +4 -4
  23. package/lib/index.d.ts +1 -1
  24. package/lib/typings/form.d.ts +19 -0
  25. package/lib/typings/option.d.ts +93 -74
  26. package/lib/utils/options.d.ts +4 -7
  27. package/lib/utils/page.d.ts +5 -0
  28. package/lib/webui.css +1 -1
  29. package/lib/webui.es.js +861 -851
  30. package/package.json +14 -14
  31. package/src/components/form/autoComplete/index.vue +29 -16
  32. package/src/components/form/cascader/index.vue +25 -9
  33. package/src/components/form/checkbox/index.vue +26 -10
  34. package/src/components/form/index.ts +1 -1
  35. package/src/components/form/propEditor/index.vue +6 -21
  36. package/src/components/form/radio/index.vue +26 -10
  37. package/src/components/form/select/index.vue +38 -40
  38. package/src/components/form/switch/index.vue +23 -5
  39. package/src/index.ts +8 -1
  40. package/src/typings/form.d.ts +19 -0
  41. package/src/typings/option.d.ts +93 -73
  42. package/src/utils/form-excel.ts +2 -2
  43. package/src/utils/options.ts +58 -62
  44. package/src/utils/page.ts +41 -0
  45. package/lib/assets/modules/uploadList-BW23uSvi.js +0 -369
@@ -1,5 +1,7 @@
1
- import { IUrlInfo, ReqParams } from '../../../../../502417_fapi';
1
+ import { OptionItemProps } from '../../../index';
2
+ import { IUrlInfo } from '../../../../../502417_fapi';
2
3
  import { DefineComponent, ExtractPropTypes, PropType, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
4
+ import { OptionControl } from '../../../typings/option';
3
5
  declare const _default: DefineComponent<ExtractPropTypes<{
4
6
  value: {
5
7
  type: (ArrayConstructor | StringConstructor | NumberConstructor | null)[];
@@ -12,35 +14,12 @@ declare const _default: DefineComponent<ExtractPropTypes<{
12
14
  wrap: {
13
15
  type: NumberConstructor;
14
16
  };
15
- autoload: {
16
- type: PropType<boolean>;
17
- required: boolean;
18
- default: boolean;
19
- };
20
- all: {
21
- type: PropType<boolean>;
22
- required: boolean;
23
- default: boolean;
24
- };
25
- data: {
26
- type: PropType<Record<string, any>[]>;
27
- required: boolean;
28
- };
29
- fieldMap: {
30
- type: PropType<Record<string, string>>;
31
- required: boolean;
32
- };
33
17
  url: {
34
18
  type: PropType<IUrlInfo>;
35
19
  required: boolean;
36
20
  };
37
- reload: {
38
- type: PropType<boolean>;
39
- required: boolean;
40
- default: boolean;
41
- };
42
- params: {
43
- type: PropType<ReqParams>;
21
+ data: {
22
+ type: PropType<OptionItemProps[]>;
44
23
  required: boolean;
45
24
  };
46
25
  labels: {
@@ -63,6 +42,10 @@ declare const _default: DefineComponent<ExtractPropTypes<{
63
42
  type: PropType<[string | string[], string]>;
64
43
  required: boolean;
65
44
  };
45
+ optionCtrl: {
46
+ type: PropType<OptionControl>;
47
+ required: boolean;
48
+ };
66
49
  }>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
67
50
  change: (...args: any[]) => void;
68
51
  "update:value": (...args: any[]) => void;
@@ -79,35 +62,12 @@ declare const _default: DefineComponent<ExtractPropTypes<{
79
62
  wrap: {
80
63
  type: NumberConstructor;
81
64
  };
82
- autoload: {
83
- type: PropType<boolean>;
84
- required: boolean;
85
- default: boolean;
86
- };
87
- all: {
88
- type: PropType<boolean>;
89
- required: boolean;
90
- default: boolean;
91
- };
92
- data: {
93
- type: PropType<Record<string, any>[]>;
94
- required: boolean;
95
- };
96
- fieldMap: {
97
- type: PropType<Record<string, string>>;
98
- required: boolean;
99
- };
100
65
  url: {
101
66
  type: PropType<IUrlInfo>;
102
67
  required: boolean;
103
68
  };
104
- reload: {
105
- type: PropType<boolean>;
106
- required: boolean;
107
- default: boolean;
108
- };
109
- params: {
110
- type: PropType<ReqParams>;
69
+ data: {
70
+ type: PropType<OptionItemProps[]>;
111
71
  required: boolean;
112
72
  };
113
73
  labels: {
@@ -130,15 +90,16 @@ declare const _default: DefineComponent<ExtractPropTypes<{
130
90
  type: PropType<[string | string[], string]>;
131
91
  required: boolean;
132
92
  };
93
+ optionCtrl: {
94
+ type: PropType<OptionControl>;
95
+ required: boolean;
96
+ };
133
97
  }>> & Readonly<{
134
98
  onChange?: ((...args: any[]) => any) | undefined;
135
99
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
136
100
  "onUpdate:labels"?: ((...args: any[]) => any) | undefined;
137
101
  }>, {
138
102
  value: string | number | unknown[] | null;
139
- reload: boolean;
140
- all: boolean;
141
- autoload: boolean;
142
103
  nodata: string;
143
104
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
144
105
  export default _default;
@@ -1,5 +1,7 @@
1
1
  import { PropType, DefineComponent, ExtractPropTypes, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
2
- import { IUrlInfo, ReqParams } from '../../../../../502417_fapi';
2
+ import { OptionItemProps } from '../../../index';
3
+ import { IUrlInfo } from '../../../../../502417_fapi';
4
+ import { OptionControl } from '../../../typings/option';
3
5
  type SelectValueType = string | number | string[] | number[] | null;
4
6
  declare const _default: DefineComponent<ExtractPropTypes<{
5
7
  value: {
@@ -14,38 +16,12 @@ declare const _default: DefineComponent<ExtractPropTypes<{
14
16
  type: PropType<string>;
15
17
  required: false;
16
18
  };
17
- all: {
18
- type: PropType<boolean>;
19
- default: boolean;
20
- };
21
- allValue: {
22
- type: PropType<string | number | string[] | number[]>;
23
- required: false;
24
- };
25
- autoload: {
26
- type: PropType<boolean>;
27
- required: boolean;
28
- default: boolean;
29
- };
30
- data: {
31
- type: PropType<Record<string, any>[]>;
32
- required: boolean;
33
- };
34
- fieldMap: {
35
- type: PropType<Record<string, string>>;
36
- required: boolean;
37
- };
38
19
  url: {
39
20
  type: PropType<IUrlInfo>;
40
21
  required: boolean;
41
22
  };
42
- reload: {
43
- type: PropType<boolean>;
44
- required: boolean;
45
- default: boolean;
46
- };
47
- params: {
48
- type: PropType< ReqParams>;
23
+ data: {
24
+ type: PropType<OptionItemProps[]>;
49
25
  required: boolean;
50
26
  };
51
27
  labels: {
@@ -68,6 +44,10 @@ declare const _default: DefineComponent<ExtractPropTypes<{
68
44
  type: PropType<[string | string[], string]>;
69
45
  required: boolean;
70
46
  };
47
+ optionCtrl: {
48
+ type: PropType< OptionControl>;
49
+ required: boolean;
50
+ };
71
51
  }>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
72
52
  change: (...args: any[]) => void;
73
53
  "update:value": (...args: any[]) => void;
@@ -85,38 +65,12 @@ declare const _default: DefineComponent<ExtractPropTypes<{
85
65
  type: PropType<string>;
86
66
  required: false;
87
67
  };
88
- all: {
89
- type: PropType<boolean>;
90
- default: boolean;
91
- };
92
- allValue: {
93
- type: PropType<string | number | string[] | number[]>;
94
- required: false;
95
- };
96
- autoload: {
97
- type: PropType<boolean>;
98
- required: boolean;
99
- default: boolean;
100
- };
101
- data: {
102
- type: PropType<Record<string, any>[]>;
103
- required: boolean;
104
- };
105
- fieldMap: {
106
- type: PropType<Record<string, string>>;
107
- required: boolean;
108
- };
109
68
  url: {
110
69
  type: PropType<IUrlInfo>;
111
70
  required: boolean;
112
71
  };
113
- reload: {
114
- type: PropType<boolean>;
115
- required: boolean;
116
- default: boolean;
117
- };
118
- params: {
119
- type: PropType< ReqParams>;
72
+ data: {
73
+ type: PropType<OptionItemProps[]>;
120
74
  required: boolean;
121
75
  };
122
76
  labels: {
@@ -139,15 +93,16 @@ declare const _default: DefineComponent<ExtractPropTypes<{
139
93
  type: PropType<[string | string[], string]>;
140
94
  required: boolean;
141
95
  };
96
+ optionCtrl: {
97
+ type: PropType< OptionControl>;
98
+ required: boolean;
99
+ };
142
100
  }>> & Readonly<{
143
101
  onChange?: ((...args: any[]) => any) | undefined;
144
102
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
145
103
  "onUpdate:labels"?: ((...args: any[]) => any) | undefined;
146
104
  }>, {
147
105
  value: SelectValueType;
148
- reload: boolean;
149
- all: boolean;
150
- autoload: boolean;
151
106
  selectFirst: boolean;
152
107
  }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
153
108
  export default _default;
@@ -1,42 +1,75 @@
1
- import { DefineComponent, ExtractPropTypes, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
1
+ import { PropType, DefineComponent, ExtractPropTypes, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
2
+ import { OptionItemProps } from '../../../index';
3
+ import { IUrlInfo } from '../../../../../502417_fapi';
4
+ import { OptionControl } from '../../../typings/option';
2
5
  declare const _default: DefineComponent<ExtractPropTypes<{
3
6
  data: {
4
- type: {
5
- (arrayLength: number): Record<string, any>[];
6
- (...items: Record<string, any>[]): Record<string, any>[];
7
- new (arrayLength: number): Record<string, any>[];
8
- new (...items: Record<string, any>[]): Record<string, any>[];
9
- isArray(arg: any): arg is any[];
10
- readonly prototype: any[];
11
- from<T>(arrayLike: ArrayLike<T>): T[];
12
- from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
13
- from<T>(iterable: Iterable<T> | ArrayLike<T>): T[];
14
- from<T, U>(iterable: Iterable<T> | ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
15
- of<T>(...items: T[]): T[];
16
- readonly [Symbol.species]: ArrayConstructor;
17
- };
7
+ type: PropType<OptionItemProps[]>;
18
8
  required: true;
19
9
  };
10
+ url: {
11
+ type: PropType< IUrlInfo>;
12
+ required: boolean;
13
+ };
14
+ labels: {
15
+ type: PropType<string | number | (string | number)[]>;
16
+ required: boolean;
17
+ };
18
+ formData: {
19
+ type: PropType<Record<string, any>>;
20
+ required: boolean;
21
+ };
22
+ outFields: {
23
+ type: PropType<Record<string, string>>;
24
+ required: boolean;
25
+ };
26
+ reloadEvent: {
27
+ type: PropType<string>;
28
+ required: boolean;
29
+ };
30
+ changeEvent: {
31
+ type: PropType<[string | string[], string]>;
32
+ required: boolean;
33
+ };
34
+ optionCtrl: {
35
+ type: PropType< OptionControl>;
36
+ required: boolean;
37
+ };
20
38
  }>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
21
39
  change: (checked: string | number | boolean) => any;
22
40
  }, string, PublicProps, Readonly< ExtractPropTypes<{
23
41
  data: {
24
- type: {
25
- (arrayLength: number): Record<string, any>[];
26
- (...items: Record<string, any>[]): Record<string, any>[];
27
- new (arrayLength: number): Record<string, any>[];
28
- new (...items: Record<string, any>[]): Record<string, any>[];
29
- isArray(arg: any): arg is any[];
30
- readonly prototype: any[];
31
- from<T>(arrayLike: ArrayLike<T>): T[];
32
- from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
33
- from<T>(iterable: Iterable<T> | ArrayLike<T>): T[];
34
- from<T, U>(iterable: Iterable<T> | ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
35
- of<T>(...items: T[]): T[];
36
- readonly [Symbol.species]: ArrayConstructor;
37
- };
42
+ type: PropType<OptionItemProps[]>;
38
43
  required: true;
39
44
  };
45
+ url: {
46
+ type: PropType< IUrlInfo>;
47
+ required: boolean;
48
+ };
49
+ labels: {
50
+ type: PropType<string | number | (string | number)[]>;
51
+ required: boolean;
52
+ };
53
+ formData: {
54
+ type: PropType<Record<string, any>>;
55
+ required: boolean;
56
+ };
57
+ outFields: {
58
+ type: PropType<Record<string, string>>;
59
+ required: boolean;
60
+ };
61
+ reloadEvent: {
62
+ type: PropType<string>;
63
+ required: boolean;
64
+ };
65
+ changeEvent: {
66
+ type: PropType<[string | string[], string]>;
67
+ required: boolean;
68
+ };
69
+ optionCtrl: {
70
+ type: PropType< OptionControl>;
71
+ required: boolean;
72
+ };
40
73
  }>> & Readonly<{
41
74
  onChange?: ((checked: string | number | boolean) => any) | undefined;
42
75
  }>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
@@ -1,13 +1,13 @@
1
1
  import { defineComponent as F, defineAsyncComponent as M, ref as m, watch as V, onMounted as J, createElementBlock as x, openBlock as p, Fragment as K, createElementVNode as v, createVNode as _, toDisplayString as W, unref as i, createBlock as P, withKeys as f, normalizeClass as N, withModifiers as w, withCtx as z, createCommentVNode as L } from "vue";
2
2
  import "ant-design-vue";
3
- import { _ as q } from "../../assets/modules/toolIcon-vJF7OgP6.js";
3
+ import { _ as q } from "../../assets/modules/toolIcon-DKTf30Tq.js";
4
4
  import "@skyfox2000/fapi";
5
- import "../../assets/modules/uploadList-DaUjVXLU.js";
5
+ import "../../assets/modules/uploadList-CY57np42.js";
6
6
  import "@skyfox2000/microbase";
7
7
  import "vue-m-message";
8
8
  import "async-validator";
9
9
  import "dayjs";
10
- import { _ as D } from "../../assets/modules/index-Czk7DDWM.js";
10
+ import { _ as D } from "../../assets/modules/index-D5onbqkl.js";
11
11
  import "vue-draggable-next";
12
12
  const h = async (s) => window.ace ? window.ace : new Promise((l, t) => {
13
13
  const o = document.createElement("script");
@@ -1,8 +1,8 @@
1
- import { defineComponent as y, ref as I, watch as C, onMounted as b, resolveComponent as g, createBlock as n, openBlock as o, unref as e, withCtx as l, createCommentVNode as c, createVNode as r, createElementVNode as u, createElementBlock as k, toDisplayString as w, normalizeClass as S, KeepAlive as N, resolveDynamicComponent as $ } from "vue";
1
+ import { defineComponent as y, ref as I, watch as C, onMounted as g, resolveComponent as b, createBlock as n, openBlock as o, unref as e, withCtx as l, createCommentVNode as c, createVNode as r, createElementVNode as u, createElementBlock as k, toDisplayString as w, normalizeClass as S, KeepAlive as N, resolveDynamicComponent as $ } from "vue";
2
2
  import { Layout as f, LayoutSider as E } from "ant-design-vue";
3
- import { a as z } from "../../assets/modules/toolIcon-vJF7OgP6.js";
4
- import { I as A, _ as B, f as L, d as V, g as D } from "../../assets/modules/menuTabs-BOax-dro.js";
5
- import { ab as j, a as K, ad as M } from "../../assets/modules/uploadList-DaUjVXLU.js";
3
+ import { a as z } from "../../assets/modules/toolIcon-DKTf30Tq.js";
4
+ import { I as A, _ as B, f as L, d as V, g as D } from "../../assets/modules/menuTabs-B9fCWfN1.js";
5
+ import { ad as j, a as K, af as M } from "../../assets/modules/uploadList-CY57np42.js";
6
6
  import "@skyfox2000/microbase";
7
7
  import "@skyfox2000/fapi";
8
8
  import P from "vue-m-message";
@@ -24,10 +24,10 @@ const T = { class: "h-[40px] max-h-[40px] bg-[rgba(240,240,240,0.2)] flex flex-n
24
24
  (i) => {
25
25
  p.value = i ? "h-[calc(100vh-40px)]" : "h-[calc(100vh-80px)]";
26
26
  }
27
- ), b(() => {
27
+ ), g(() => {
28
28
  P.closeAll();
29
29
  }), (i, m) => {
30
- const h = g("router-view");
30
+ const h = b("router-view");
31
31
  return o(), n(e(f), { class: "h-screen" }, {
32
32
  default: l(() => [
33
33
  e(s).fullscreen ? c("", !0) : (o(), n(e(E), {
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as i, createBlock as p, openBlock as m, unref as r, withCtx as e, createVNode as n, createTextVNode as a } from "vue";
2
- import { r as s } from "../../assets/modules/uploadList-DaUjVXLU.js";
2
+ import { r as s } from "../../assets/modules/uploadList-CY57np42.js";
3
3
  import "@skyfox2000/microbase";
4
4
  import "@skyfox2000/fapi";
5
5
  import "vue-m-message";
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as i, createBlock as p, openBlock as m, unref as r, withCtx as e, createVNode as n, createTextVNode as a } from "vue";
2
- import { r as s } from "../../assets/modules/uploadList-DaUjVXLU.js";
2
+ import { r as s } from "../../assets/modules/uploadList-CY57np42.js";
3
3
  import "@skyfox2000/microbase";
4
4
  import "@skyfox2000/fapi";
5
5
  import "vue-m-message";
@@ -1,12 +1,12 @@
1
- import { defineComponent as Y, ref as r, watch as V, onMounted as Z, createBlock as ee, openBlock as d, unref as i, withCtx as _, renderSlot as le, createElementVNode as c, createVNode as m, createElementBlock as f, createCommentVNode as M, createTextVNode as O, toDisplayString as F, normalizeClass as ae, Fragment as $, renderList as P } from "vue";
2
- import { _ as A } from "../../assets/modules/index-C1zkNPmi.js";
1
+ import { defineComponent as Y, ref as r, watch as V, onMounted as Z, createBlock as ee, openBlock as d, unref as i, withCtx as _, renderSlot as ae, createElementVNode as c, createVNode as m, createElementBlock as f, createCommentVNode as M, createTextVNode as O, toDisplayString as F, normalizeClass as le, Fragment as P, renderList as $ } from "vue";
2
+ import { _ as A } from "../../assets/modules/index-DjBruVH-.js";
3
3
  import { Modal as te, Upload as I, Alert as G, Space as re } from "ant-design-vue";
4
4
  import { ResStatus as oe } from "@skyfox2000/fapi";
5
- import { $ as se, a5 as ie } from "../../assets/modules/uploadList-DaUjVXLU.js";
6
- import { A as ue, p as ne, U as ce } from "../../assets/modules/file-upload-CGyzCx7I.js";
5
+ import { a1 as se, a7 as ie } from "../../assets/modules/uploadList-CY57np42.js";
6
+ import { A as ue, p as ne, U as ce } from "../../assets/modules/file-upload-C4GVmWjB.js";
7
7
  import "@skyfox2000/microbase";
8
8
  import n from "vue-m-message";
9
- import { p as ve, v as de, c as fe } from "../../assets/modules/form-excel-DWirWVPA.js";
9
+ import { p as ve, v as de, c as fe } from "../../assets/modules/form-excel-Cr2hcL1s.js";
10
10
  import "dayjs";
11
11
  import "vue-draggable-next";
12
12
  import pe from "@vue-office/excel";
@@ -25,7 +25,7 @@ const me = { class: "mb-4 flex items-center" }, xe = {
25
25
  }, we = { class: "overflow-y-auto" }, Ce = { class: "text-[13px] text-gray-600" }, Fe = { class: "pl-5 mt-1 mb-0" }, Ee = {
26
26
  key: 0,
27
27
  class: "mt-3"
28
- }, Ue = { class: "text-[12px] text-gray-600 p-1" }, Se = { class: "text-[13px] text-gray-600" }, ke = { class: "pl-5 mt-1 mb-0" }, De = { class: "text-[12px] text-gray-600" }, $e = /* @__PURE__ */ Y({
28
+ }, Ue = { class: "text-[12px] text-gray-600 p-1" }, Se = { class: "text-[13px] text-gray-600" }, ke = { class: "pl-5 mt-1 mb-0" }, De = { class: "text-[12px] text-gray-600" }, Pe = /* @__PURE__ */ Y({
29
29
  __name: "excelForm",
30
30
  props: {
31
31
  title: {},
@@ -51,8 +51,8 @@ const me = { class: "mb-4 flex items-center" }, xe = {
51
51
  }
52
52
  );
53
53
  const R = r(o.uploadParams), p = r(R.value.uploadUrl), g = r(R.value.duplicateRules), C = r(R.value.duplicateUrl), H = async () => {
54
- const l = p.value;
55
- if (!l) {
54
+ const a = p.value;
55
+ if (!a) {
56
56
  n.error("未配置文件上传地址!");
57
57
  return;
58
58
  }
@@ -66,7 +66,7 @@ const me = { class: "mb-4 flex items-center" }, xe = {
66
66
  n.warning("请先选择Excel文件!"), e.isFormLoading.value = !1;
67
67
  return;
68
68
  }
69
- const a = new ue(l, 1), s = new File([z.value], x.value, {
69
+ const l = new ue(a, 1), s = new File([z.value], x.value, {
70
70
  type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
71
71
  }), t = ne.join(R.value.basePath, x.value), v = {
72
72
  uid: "1",
@@ -79,18 +79,18 @@ const me = { class: "mb-4 flex items-center" }, xe = {
79
79
  }
80
80
  }, y = new AbortController();
81
81
  try {
82
- await a.uploadFile(v, y.signal, (u) => {
82
+ await l.uploadFile(v, y.signal, (u) => {
83
83
  v.percent = u;
84
84
  }), n.success("文件上传成功,开始业务处理!"), J(v);
85
85
  } catch (u) {
86
86
  throw console.error("文件上传错误:", u), n.error((u == null ? void 0 : u.message) || "文件上传失败,请稍后再试!"), u;
87
87
  }
88
- } catch (a) {
89
- console.error("上传处理错误:", a), n.error("上传处理失败:" + ((a == null ? void 0 : a.message) || "未知错误"));
88
+ } catch (l) {
89
+ console.error("上传处理错误:", l), n.error("上传处理失败:" + ((l == null ? void 0 : l.message) || "未知错误"));
90
90
  } finally {
91
91
  e.isFormLoading.value = !1;
92
92
  }
93
- }, J = async (l) => {
93
+ }, J = async (a) => {
94
94
  if (e.formData.value) {
95
95
  if (o.excelBatchField) {
96
96
  const t = await ve(z.value);
@@ -105,8 +105,8 @@ const me = { class: "mb-4 flex items-center" }, xe = {
105
105
  });
106
106
  e.formData.value[o.excelBatchField] = y;
107
107
  }
108
- const a = o.fileField ?? "FileInfo";
109
- e.formData.value[a] = l, e.beforeSave && e.beforeSave();
108
+ const l = o.fileField ?? "FileInfo";
109
+ e.formData.value[l] = a, e.beforeSave && e.beforeSave();
110
110
  const s = {
111
111
  Data: {
112
112
  ...e.formData.value
@@ -129,15 +129,15 @@ const me = { class: "mb-4 flex items-center" }, xe = {
129
129
  e.isFormLoading.value = !1;
130
130
  }
131
131
  }
132
- }, B = r(!1), N = r(!1), z = r(null), W = async (l) => {
133
- if (!(l.type === "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" || l.type === "application/vnd.ms-excel"))
132
+ }, B = r(!1), N = r(!1), z = r(null), W = async (a) => {
133
+ if (!(a.type === "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" || a.type === "application/vnd.ms-excel"))
134
134
  return n.error("只能上传Excel文件!"), I.LIST_IGNORE;
135
135
  try {
136
- x.value = l.name, B.value = !1, N.value = !1, E.value = !0, U.value = "待验证数据规则", S.value = "warning", k.value = "待验证重复数据", D.value = "warning";
137
- const s = await l.arrayBuffer();
136
+ x.value = a.name, B.value = !1, N.value = !1, E.value = !0, U.value = "待验证数据规则", S.value = "warning", k.value = "待验证重复数据", D.value = "warning";
137
+ const s = await a.arrayBuffer();
138
138
  z.value = s;
139
139
  const t = new FileReader();
140
- t.readAsDataURL(l), t.onload = async (v) => {
140
+ t.readAsDataURL(a), t.onload = async (v) => {
141
141
  if (v.target) {
142
142
  const { hasError: y, errBlob: u } = await de(s, e.formRules.value);
143
143
  if (y) {
@@ -179,14 +179,14 @@ const me = { class: "mb-4 flex items-center" }, xe = {
179
179
  return !1;
180
180
  }, T = se(e.formRules.value);
181
181
  Z(() => {
182
- const l = o.gridCtrl.page;
183
- if (p.value = p.value ?? l.urls.upload, !p.value) {
182
+ const a = o.gridCtrl.page;
183
+ if (p.value = p.value ?? a.urls.upload, !p.value) {
184
184
  n.error("未配置文件上传地址!");
185
185
  return;
186
186
  }
187
- p.value.api || (p.value.api = l.api), p.value.authorize === void 0 && (p.value.authorize = l.authorize);
188
- for (const a in e.formData.value)
189
- o.gridCtrl.rowData.value && (e.formData.value[a] = o.gridCtrl.rowData.value[a]);
187
+ p.value.api || (p.value.api = a.api), p.value.authorize === void 0 && (p.value.authorize = a.authorize);
188
+ for (const l in e.formData.value)
189
+ o.gridCtrl.rowData.value && (e.formData.value[l] = o.gridCtrl.rowData.value[l]);
190
190
  b.value = e.visible.value;
191
191
  });
192
192
  const K = () => {
@@ -194,11 +194,11 @@ const me = { class: "mb-4 flex items-center" }, xe = {
194
194
  }, X = () => {
195
195
  console.error("渲染失败");
196
196
  };
197
- return (l, a) => (d(), ee(i(te), {
198
- title: l.title ?? "Excel文件上传",
197
+ return (a, l) => (d(), ee(i(te), {
198
+ title: a.title ?? "Excel文件上传",
199
199
  open: b.value,
200
- "onUpdate:open": a[0] || (a[0] = (s) => b.value = s),
201
- wrapClassName: ["modal", "mx-auto", l.$attrs.width ? "w-[" + l.$attrs.width + "]" : ""].join(" "),
200
+ "onUpdate:open": l[0] || (l[0] = (s) => b.value = s),
201
+ wrapClassName: ["modal", "mx-auto", a.$attrs.width ? "w-[" + a.$attrs.width + "]" : ""].join(" "),
202
202
  width: 940,
203
203
  onClose: K
204
204
  }, {
@@ -206,7 +206,7 @@ const me = { class: "mb-4 flex items-center" }, xe = {
206
206
  m(i(re), null, {
207
207
  default: _(() => [
208
208
  m(i(A), { onClick: K }, {
209
- default: _(() => a[2] || (a[2] = [
209
+ default: _(() => l[2] || (l[2] = [
210
210
  O("取消")
211
211
  ])),
212
212
  _: 1,
@@ -219,7 +219,7 @@ const me = { class: "mb-4 flex items-center" }, xe = {
219
219
  disabled: !w.value || B.value || N.value || E.value
220
220
  }, {
221
221
  default: _(() => [
222
- O(F(l.saveText ?? "上传文件"), 1)
222
+ O(F(a.saveText ?? "上传文件"), 1)
223
223
  ]),
224
224
  _: 1
225
225
  }, 8, ["loading", "disabled"])
@@ -228,7 +228,7 @@ const me = { class: "mb-4 flex items-center" }, xe = {
228
228
  })
229
229
  ]),
230
230
  default: _(() => [
231
- le(l.$slots, "default"),
231
+ ae(a.$slots, "default"),
232
232
  c("div", me, [
233
233
  m(i(I), {
234
234
  "file-list": q.value,
@@ -238,7 +238,7 @@ const me = { class: "mb-4 flex items-center" }, xe = {
238
238
  }, {
239
239
  default: _(() => [
240
240
  m(i(A), { type: "primary" }, {
241
- default: _(() => a[1] || (a[1] = [
241
+ default: _(() => l[1] || (l[1] = [
242
242
  O("选择Excel文件")
243
243
  ])),
244
244
  _: 1,
@@ -253,7 +253,7 @@ const me = { class: "mb-4 flex items-center" }, xe = {
253
253
  ]),
254
254
  c("div", ge, [
255
255
  c("div", {
256
- class: ae(["flex-shrink-0 excel-container", [i(T).length === 0 ? "w-[100%]" : "w-[80%]"]]),
256
+ class: le(["flex-shrink-0 excel-container", [i(T).length === 0 ? "w-[100%]" : "w-[80%]"]]),
257
257
  style: { height: "430px" }
258
258
  }, [
259
259
  m(i(pe), {
@@ -280,13 +280,13 @@ const me = { class: "mb-4 flex items-center" }, xe = {
280
280
  class: "mb-2"
281
281
  }, null, 8, ["message", "type"]),
282
282
  c("div", we, [
283
- (d(!0), f($, null, P(i(T), (s, t) => (d(), f("div", {
283
+ (d(!0), f(P, null, $(i(T), (s, t) => (d(), f("div", {
284
284
  key: t,
285
285
  class: "border-b pb-0"
286
286
  }, [
287
287
  c("div", Ce, F(s.field), 1),
288
288
  c("ul", Fe, [
289
- (d(!0), f($, null, P(s.rules, (v, y) => (d(), f("li", {
289
+ (d(!0), f(P, null, $(s.rules, (v, y) => (d(), f("li", {
290
290
  key: y,
291
291
  class: "text-[12px] text-gray-600"
292
292
  }, F(v), 1))), 128))
@@ -317,5 +317,5 @@ const me = { class: "mb-4 flex items-center" }, xe = {
317
317
  }
318
318
  });
319
319
  export {
320
- $e as default
320
+ Pe as default
321
321
  };
@@ -1,15 +1,15 @@
1
1
  import { defineComponent as y, ref as f, watch as S, onMounted as z, createBlock as D, openBlock as F, unref as u, withCtx as s, createVNode as m, createTextVNode as C } from "vue";
2
- import { _ as c } from "../../assets/modules/index-C1zkNPmi.js";
2
+ import { _ as c } from "../../assets/modules/index-DjBruVH-.js";
3
3
  import { Modal as _, Space as k } from "ant-design-vue";
4
4
  import { ResStatus as E } from "@skyfox2000/fapi";
5
- import { a1 as h } from "../../assets/modules/uploadList-DaUjVXLU.js";
5
+ import { a3 as h } from "../../assets/modules/uploadList-CY57np42.js";
6
6
  import "@skyfox2000/microbase";
7
7
  import L from "vue-m-message";
8
8
  import "async-validator";
9
9
  import "dayjs";
10
- import { A as N } from "../../assets/modules/file-upload-CGyzCx7I.js";
10
+ import { A as N } from "../../assets/modules/file-upload-C4GVmWjB.js";
11
11
  import "vue-draggable-next";
12
- import { U as B } from "../../assets/modules/uploadList-BW23uSvi.js";
12
+ import { U as B } from "../../assets/modules/uploadList-D2lisNHt.js";
13
13
  const K = /* @__PURE__ */ y({
14
14
  __name: "uploadForm",
15
15
  props: {
package/lib/index.d.ts CHANGED
@@ -18,7 +18,7 @@ export { initDirective } from './directives/index';
18
18
  export { isEmpty } from './utils/isEmpty';
19
19
  export { queryTree } from './utils/tree';
20
20
  export { getToolByKey, getToolGroup, getToolStatus, getToolVisible, onReloadClick, onToolClicked, onFullscreenClick, onColumnVisibleChanged, defaultTools, useToolFactory, } from './utils/tools';
21
- export { initPageFactory, useEditorFactory, useGridFactory, useTreeFactory, usePageFactory } from './utils/page';
21
+ export { initPageFactory, useEditorFactory, useGridFactory, useTreeFactory, usePageFactory, useOptionFactory, } from './utils/page';
22
22
  export { loadOption, unloadOption, getSelectedValues, outFormDataFields, onOptionChanged, getSelectedLabels, } from './utils/options';
23
23
  export { downloadBlob, donwloadFromMinio } from './utils/download';
24
24
  export { ICONS_LIB, checkIconsExpired, circleLoading, createFromIconfont, parseIcons, getIconTransform, } from './utils/icon-loader';
@@ -184,4 +184,23 @@ export interface InputFactoryItems<T> {
184
184
  inputEmit?: (evt: any, ...args) => void;
185
185
  }
186
186
 
187
+ /**
188
+ * 属性编辑器配置项
189
+ */
190
+ export interface PropConfigItem {
191
+ id: number;
192
+ /**
193
+ * 文本
194
+ */
195
+ text?: string;
196
+ /**
197
+ * 配置名
198
+ */
199
+ field: string;
200
+ /**
201
+ * 配置值
202
+ */
203
+ value: string;
204
+ }
205
+
187
206
  export type { ValidateRule, ValidateRuleItem, ValidateError };