@aplus-frontend/ui 7.19.0-beta.2 → 7.19.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.
@@ -1,96 +1,96 @@
1
- import { defineComponent as oe, inject as s, ref as te, watch as se, nextTick as ae, createElementBlock as N, openBlock as y, normalizeClass as ne, unref as a, createVNode as k, withCtx as U, createElementVNode as S, createTextVNode as re, toDisplayString as D, withModifiers as ie, createCommentVNode as le, createBlock as ce, resolveDynamicComponent as ue } from "vue";
2
- import { UploadOutlined as pe } from "@ant-design/icons-vue";
3
- import { message as p, Upload as me, Button as de } from "@aplus-frontend/antdv";
4
- import { IconApAdLineDownload as fe } from "@aplus-frontend/icon";
5
- import { ApFilePreview as ge } from "../../ap-file-preview/index.mjs";
1
+ import { defineComponent as ne, inject as s, ref as re, watch as ie, nextTick as le, createElementBlock as N, openBlock as g, normalizeClass as ce, unref as a, createVNode as h, withCtx as w, createElementVNode as D, createTextVNode as L, toDisplayString as U, withModifiers as ue, createCommentVNode as pe, createBlock as z, resolveDynamicComponent as B, createSlots as de } from "vue";
2
+ import { UploadOutlined as me } from "@ant-design/icons-vue";
3
+ import { message as d, Upload as fe, Button as we, Tooltip as ge } from "@aplus-frontend/antdv";
4
+ import { IconApAdLineDownload as he } from "@aplus-frontend/icon";
5
+ import { ApFilePreview as ve } from "../../ap-file-preview/index.mjs";
6
6
  import "../../../config-provider/index.mjs";
7
- import { randomStr as we } from "../../../utils/index.mjs";
8
- import { useOss as he, getOssInstance as L } from "../hooks/useOss.mjs";
9
- import ve from "../style/index.mjs";
10
- import { fileMatchesAccept as xe, getAcceptText as ye } from "../utils/accept.mjs";
11
- import { getPath as ke, getName as be, getReturnData as z } from "../utils/returnData.mjs";
12
- import { useGlobalConfig as Ce } from "../../../config-provider/hooks/use-global-config.mjs";
13
- import { useLocale as Ne } from "../../../config-provider/hooks/use-locale.mjs";
14
- import { useNamespace as Ue } from "../../../config-provider/hooks/use-namespace.mjs";
15
- const Ee = { class: "multiple-file-context" }, _e = { key: 0 }, Fe = { key: 1 }, $e = /* @__PURE__ */ oe({
7
+ import { randomStr as xe } from "../../../utils/index.mjs";
8
+ import { useOss as ye, getOssInstance as O } from "../hooks/useOss.mjs";
9
+ import ke from "../style/index.mjs";
10
+ import { fileMatchesAccept as be, getAcceptText as Ce } from "../utils/accept.mjs";
11
+ import { getPath as _e, getName as Ne, getReturnData as V } from "../utils/returnData.mjs";
12
+ import { useGlobalConfig as Ue } from "../../../config-provider/hooks/use-global-config.mjs";
13
+ import { useLocale as Ee } from "../../../config-provider/hooks/use-locale.mjs";
14
+ import { useNamespace as Fe } from "../../../config-provider/hooks/use-namespace.mjs";
15
+ const Ae = { class: "multiple-file-context" }, Te = { key: 0 }, Pe = { key: 1 }, He = /* @__PURE__ */ ne({
16
16
  __name: "MultipleFile",
17
- setup(Ae, { expose: B }) {
18
- const E = Ce(
17
+ setup(Re, { expose: q }) {
18
+ const E = Ue(
19
19
  "downloadCenterTriggerConfig"
20
- ), { t: i } = Ne(), { b: O } = Ue("ap-upload-multiple-file"), V = ve("ap-upload"), { put: q } = he(), j = s("dirName"), $ = s("baseDirName"), b = s("accept") || "*", _ = s("maxSize") ?? 500, G = s("title") || i("ap.apUpload.uploadFile"), f = s("subTitle"), l = s("maxCount") ?? 10, m = s("uploadingCount"), F = s("beforeUpload"), A = s("customRequest"), g = s("getOssAccess"), W = s("maxSizeErrorMsg"), H = s("maxCountErrorMsg"), J = s("acceptErrorMsg"), P = s("onRemove"), C = s("showUploadErrorMsg"), T = s("bucket"), K = s("showDownload") ?? !0, w = s("showPreview") ?? !0, r = s("value"), c = [], h = s("needName"), d = te(null);
21
- se(
22
- () => r?.value,
20
+ ), { t: r } = Ee(), { b: j } = Fe("ap-upload-multiple-file"), $ = ke("ap-upload"), { put: G } = ye(), W = s("dirName"), H = s("baseDirName"), C = s("accept") || "*", F = s("maxSize") ?? 500, J = s("title") || r("ap.apUpload.uploadFile"), v = s("subTitle"), l = s("maxCount") ?? 10, m = s("uploadingCount"), A = s("beforeUpload"), T = s("customRequest"), x = s("getOssAccess"), K = s("maxSizeErrorMsg"), Q = s("maxCountErrorMsg"), X = s("acceptErrorMsg"), P = s("onRemove"), _ = s("showUploadErrorMsg"), R = s("bucket"), Y = s("showDownload") ?? !0, c = s("showPreview") ?? !0, i = s("value"), u = [], y = s("needName"), f = re(null);
21
+ ie(
22
+ () => i?.value,
23
23
  function(e) {
24
- !d?.value?.fileList?.length && e && I(e);
24
+ !f?.value?.fileList?.length && e && I(e);
25
25
  },
26
26
  { immediate: !0 }
27
27
  );
28
28
  function I(e) {
29
29
  if (!e) {
30
- u = [], d.value.fileList = [], r.value = void 0, c.splice(0, c.length);
30
+ p = [], f.value.fileList = [], i.value = void 0, u.splice(0, u.length);
31
31
  return;
32
32
  }
33
- ae(() => {
33
+ le(() => {
34
34
  const o = e.map((t) => {
35
- const n = ke(h, t), M = be(h, t), x = new File(
35
+ const n = _e(y, t), M = Ne(y, t), b = new File(
36
36
  [t],
37
37
  M,
38
38
  {}
39
39
  );
40
- return x.response = n, x.uid = we(18), x.status = "done", x;
40
+ return b.response = n, b.uid = xe(18), b.status = "done", b;
41
41
  });
42
42
  if (l && o.length > l) {
43
- p.warning(
44
- i("ap.apUpload.fileInitializationException", {
43
+ d.warning(
44
+ r("ap.apUpload.fileInitializationException", {
45
45
  maxCount: l
46
46
  })
47
47
  );
48
48
  return;
49
49
  }
50
50
  o.forEach((t) => {
51
- u.push(t), c.push({
51
+ p.push(t), u.push({
52
52
  uid: t.uid,
53
53
  path: t.response
54
54
  });
55
- }), d.value.fileList = o, r.value = e;
55
+ }), f.value.fileList = o, i.value = e;
56
56
  });
57
57
  }
58
- B({ setValue: I });
59
- let u = [], R;
60
- function v(e) {
58
+ q({ setValue: I });
59
+ let p = [], S;
60
+ function k(e) {
61
61
  setTimeout(() => {
62
- const o = d.value.fileList.findIndex(
62
+ const o = f.value.fileList.findIndex(
63
63
  (t) => t.uid === e.uid
64
64
  );
65
- o >= 0 && d.value.fileList.splice(o, 1);
65
+ o >= 0 && f.value.fileList.splice(o, 1);
66
66
  });
67
67
  }
68
- async function Q(e) {
69
- if (l && l > 1 && u.length >= l)
70
- return clearTimeout(R), R = setTimeout(() => {
71
- p.warning(
72
- H || i("ap.apUpload.maxUploadFiles", {
68
+ async function Z(e) {
69
+ if (l && l > 1 && p.length >= l)
70
+ return clearTimeout(S), S = setTimeout(() => {
71
+ d.warning(
72
+ Q || r("ap.apUpload.maxUploadFiles", {
73
73
  maxCount: l
74
74
  })
75
75
  );
76
- }), v(e), !1;
77
- if (e.size > _ * 1024 * 1024)
78
- return p.warning(
79
- W || i("ap.apUpload.maxUploadFileSize", {
80
- maxSize: _
76
+ }), k(e), !1;
77
+ if (e.size > F * 1024 * 1024)
78
+ return d.warning(
79
+ K || r("ap.apUpload.maxUploadFileSize", {
80
+ maxSize: F
81
81
  })
82
- ), v(e), !1;
83
- if (!xe(e, b))
84
- return p.warning(
85
- J || i("ap.apUpload.fileFormatNotSupported")
86
- ), v(e), !1;
87
- if (typeof F == "function" && await F(e) === !1)
88
- return v(e), !1;
89
- l && l === 1 && (u = [], r.value = void 0), u.push(e);
82
+ ), k(e), !1;
83
+ if (!be(e, C))
84
+ return d.warning(
85
+ X || r("ap.apUpload.fileFormatNotSupported")
86
+ ), k(e), !1;
87
+ if (typeof A == "function" && await A(e) === !1)
88
+ return k(e), !1;
89
+ l && l === 1 && (p = [], i.value = void 0), p.push(e);
90
90
  }
91
- async function X(e) {
92
- if (m.value++, typeof A == "function") {
93
- A({
91
+ async function ee(e) {
92
+ if (m.value++, typeof T == "function") {
93
+ T({
94
94
  onProgress: (o) => {
95
95
  setTimeout(() => {
96
96
  e.onProgress({
@@ -99,7 +99,7 @@ const Ee = { class: "multiple-file-context" }, _e = { key: 0 }, Fe = { key: 1 },
99
99
  });
100
100
  },
101
101
  onError: (o) => {
102
- C && p.warning(o || i("ap.apUpload.networkAnomaly")), setTimeout(() => {
102
+ _ && d.warning(o || r("ap.apUpload.networkAnomaly")), setTimeout(() => {
103
103
  e.onError({
104
104
  name: o,
105
105
  message: o
@@ -109,10 +109,10 @@ const Ee = { class: "multiple-file-context" }, _e = { key: 0 }, Fe = { key: 1 },
109
109
  onSuccess: (o) => {
110
110
  setTimeout(() => {
111
111
  e.onSuccess(o);
112
- }), r.value = [
113
- ...r.value || [],
114
- z(h, o, e.file.name)
115
- ], c.push({
112
+ }), i.value = [
113
+ ...i.value || [],
114
+ V(y, o, e.file.name)
115
+ ], u.push({
116
116
  uid: e.file.uid,
117
117
  path: o
118
118
  }), m.value--;
@@ -122,22 +122,22 @@ const Ee = { class: "multiple-file-context" }, _e = { key: 0 }, Fe = { key: 1 },
122
122
  return;
123
123
  }
124
124
  try {
125
- const o = await (T ? g(T) : g()), t = await L(async () => o);
126
- e.file.oss = t, q({
125
+ const o = await (R ? x(R) : x()), t = await O(async () => o);
126
+ e.file.oss = t, G({
127
127
  file: e.file,
128
- dirName: j,
128
+ dirName: W,
129
129
  oss: t,
130
130
  successCallBack(n) {
131
- e.onSuccess(n), r.value = [
132
- ...r.value || [],
133
- z(h, n, e.file.name)
134
- ], c.push({
131
+ e.onSuccess(n), i.value = [
132
+ ...i.value || [],
133
+ V(y, n, e.file.name)
134
+ ], u.push({
135
135
  uid: e.file.uid,
136
136
  path: n
137
137
  }), m.value--;
138
138
  },
139
139
  errorCallBack(n) {
140
- C && p.warning(n || i("ap.apUpload.networkAnomaly")), e.onError({
140
+ _ && d.warning(n || r("ap.apUpload.networkAnomaly")), e.onError({
141
141
  name: n,
142
142
  message: n
143
143
  }), m.value--;
@@ -147,32 +147,32 @@ const Ee = { class: "multiple-file-context" }, _e = { key: 0 }, Fe = { key: 1 },
147
147
  percent: n
148
148
  });
149
149
  },
150
- baseDirName: $,
150
+ baseDirName: H,
151
151
  bucket: o?.bucket
152
152
  });
153
153
  } catch (o) {
154
- C && p.warning(
155
- typeof o?.message == "string" ? o.message : i("ap.apUpload.networkAnomaly")
154
+ _ && d.warning(
155
+ typeof o?.message == "string" ? o.message : r("ap.apUpload.networkAnomaly")
156
156
  ), e.onError({
157
- name: o?.message || i("ap.apUpload.networkAnomaly"),
158
- message: o?.message || i("ap.apUpload.networkAnomaly")
157
+ name: o?.message || r("ap.apUpload.networkAnomaly"),
158
+ message: o?.message || r("ap.apUpload.networkAnomaly")
159
159
  }), m.value--;
160
160
  }
161
161
  }
162
- function Y(e) {
162
+ function oe(e) {
163
163
  if (P && P?.(e), e.response) {
164
- if (Array.isArray(r.value)) {
165
- const t = c.findIndex((n) => n.uid === e.uid);
166
- t >= 0 && (r?.value.splice(t, 1), c.splice(t, 1)), r.value.length === 0 && (r.value = void 0);
164
+ if (Array.isArray(i.value)) {
165
+ const t = u.findIndex((n) => n.uid === e.uid);
166
+ t >= 0 && (i?.value.splice(t, 1), u.splice(t, 1)), i.value.length === 0 && (i.value = void 0);
167
167
  }
168
168
  } else
169
169
  e?.oss?.pauseUpload();
170
- const o = u.findIndex(
170
+ const o = p.findIndex(
171
171
  (t) => t.uid === e.uid
172
172
  );
173
- return u.splice(o, 1), Promise.resolve(!0);
173
+ return p.splice(o, 1), Promise.resolve(!0);
174
174
  }
175
- const Z = async (e) => {
175
+ const te = async (e) => {
176
176
  if (E.value?.trigger) {
177
177
  let o = [e].map((t) => ({
178
178
  objectName: t.response,
@@ -181,8 +181,8 @@ const Ee = { class: "multiple-file-context" }, _e = { key: 0 }, Fe = { key: 1 },
181
181
  E.value?.trigger?.(o);
182
182
  } else {
183
183
  const o = e.response?.match(/^([^:]+):(.*)$/), t = o?.[1], n = o?.[2] ?? e.response;
184
- (await L(
185
- () => t ? g?.(t) : g?.()
184
+ (await O(
185
+ () => t ? x?.(t) : x?.()
186
186
  )).downloadFile([
187
187
  {
188
188
  path: n,
@@ -190,22 +190,22 @@ const Ee = { class: "multiple-file-context" }, _e = { key: 0 }, Fe = { key: 1 },
190
190
  }
191
191
  ]);
192
192
  }
193
- }, ee = (e) => {
194
- (typeof w == "function" ? w(e) : w) && ge.createFilePreviewModal({
193
+ }, se = (e) => {
194
+ (typeof c == "function" ? c(e) : c) && ve.createFilePreviewModal({
195
195
  src: e.response,
196
196
  fileName: e.name
197
197
  });
198
- };
199
- return (e, o) => (y(), N("div", {
200
- class: ne({
201
- [a(O)()]: !0,
202
- [a(V) ?? ""]: !0
198
+ }, ae = (e) => (typeof c == "function" ? c(e) : c) ? ["done"].includes(e.status) : !1;
199
+ return (e, o) => (g(), N("div", {
200
+ class: ce({
201
+ [a(j)()]: !0,
202
+ [a($) ?? ""]: !0
203
203
  })
204
204
  }, [
205
- k(a(me), {
205
+ h(a(fe), {
206
206
  ref_key: "uploadRef",
207
- ref: d,
208
- accept: a(b),
207
+ ref: f,
208
+ accept: a(C),
209
209
  multiple: "",
210
210
  "max-count": a(l),
211
211
  progress: {
@@ -213,37 +213,53 @@ const Ee = { class: "multiple-file-context" }, _e = { key: 0 }, Fe = { key: 1 },
213
213
  showInfo: !1,
214
214
  strokeColor: "#0070FF"
215
215
  },
216
- "before-upload": Q,
217
- "custom-request": X,
216
+ "before-upload": Z,
217
+ "custom-request": ee,
218
218
  "show-upload-list": {
219
- showDownloadIcon: a(K),
219
+ showDownloadIcon: a(Y),
220
220
  showRemoveIcon: !0,
221
- showPreviewIcon: a(w)
221
+ showPreviewIcon: a(c)
222
222
  },
223
- onPreview: ee,
224
- onRemove: Y,
225
- onDownload: Z
223
+ onPreview: se,
224
+ onRemove: oe,
225
+ onDownload: te
226
226
  }, {
227
- downloadIcon: U(() => [
228
- k(a(fe), { class: "anticon anticon-vertical-align-bottom" })
227
+ downloadIcon: w(() => [
228
+ h(a(he), { class: "anticon anticon-vertical-align-bottom" })
229
229
  ]),
230
- default: U(() => [
231
- S("div", Ee, [
232
- k(a(de), { class: "file-btn" }, {
233
- default: U(() => [
234
- k(a(pe)),
235
- re(" " + D(a(G)), 1)
230
+ itemRender: w(({ originNode: t, file: n }) => [
231
+ h(a(ge), null, de({
232
+ default: w(() => [
233
+ (g(), z(B(t)))
234
+ ]),
235
+ _: 2
236
+ }, [
237
+ ae(n) ? {
238
+ name: "title",
239
+ fn: w(() => [
240
+ L(U(a(r)("ap.apAppendix.previewFile")), 1)
241
+ ]),
242
+ key: "0"
243
+ } : void 0
244
+ ]), 1024)
245
+ ]),
246
+ default: w(() => [
247
+ D("div", Ae, [
248
+ h(a(we), { class: "file-btn" }, {
249
+ default: w(() => [
250
+ h(a(me)),
251
+ L(" " + U(a(J)), 1)
236
252
  ]),
237
253
  _: 1
238
254
  }),
239
- S("div", {
255
+ D("div", {
240
256
  class: "sub-title",
241
- onClick: o[0] || (o[0] = ie(() => {
257
+ onClick: o[0] || (o[0] = ue(() => {
242
258
  }, ["stop"]))
243
259
  }, [
244
- typeof a(f) == "string" ? (y(), N("div", _e, D(a(f) || `${a(i)("ap.apUpload.supportExtension")}:${a(ye)(a(b))}`), 1)) : a(f) ? (y(), N("div", Fe, [
245
- (y(), ce(ue(a(f))))
246
- ])) : le("", !0)
260
+ typeof a(v) == "string" ? (g(), N("div", Te, U(a(v) || `${a(r)("ap.apUpload.supportExtension")}:${a(Ce)(a(C))}`), 1)) : a(v) ? (g(), N("div", Pe, [
261
+ (g(), z(B(a(v))))
262
+ ])) : pe("", !0)
247
263
  ])
248
264
  ])
249
265
  ]),
@@ -253,5 +269,5 @@ const Ee = { class: "multiple-file-context" }, _e = { key: 0 }, Fe = { key: 1 },
253
269
  }
254
270
  });
255
271
  export {
256
- $e as default
272
+ He as default
257
273
  };
@@ -1,2 +1,2 @@
1
- declare const _default: "7.19.0-beta.2";
1
+ declare const _default: "7.19.0";
2
2
  export default _default;
@@ -1,4 +1,4 @@
1
- const e = "7.19.0-beta.2";
1
+ const e = "7.19.0";
2
2
  export {
3
3
  e as default
4
4
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("vue"),r=require("lodash-unified"),w=require("../../ap-form/index.js"),k=require("../../ap-form/context.js"),A=require("../../ap-form/hooks/use-watch.js"),P=require("../../ap-form/utils/get.js"),z=require("../../ap-form/utils/transform.js");require("../../config-provider/index.js");const H=require("../hooks/use-editable-columns.js"),K=require("../hooks/use-editable-form-item-api.js");require("../index.vue2.js");const G=require("../style/editable.js"),L=require("../utils.js"),m=require("./utils.js"),W=require("../../config-provider/hooks/use-namespace.js"),U=require("../../config-provider/hooks/use-global-config.js"),$=require("../index.vue.js"),J=o.defineComponent({name:"EditableGrid",__name:"form-item",props:{dropdownPrefixCls:{},bordered:{type:Boolean},locale:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{},showSorterTooltip:{type:[Boolean,Object]},prefixCls:{},rowKey:{type:[String,Function],default:"key"},tableLayout:{},title:{},id:{},showHeader:{type:Boolean},components:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean]},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean},indentSize:{},expandIconColumnIndex:{},showExpandColumn:{type:Boolean},expandedRowClassName:{},childrenColumnName:{},rowExpandable:{},transformCellText:{},rowHoverable:{type:Boolean},rowSelection:{type:[Boolean,Object]},onLoadingChange:{},onShownColumnsChange:{},pagination:{type:[Boolean,Object],default:!1},searchFormWrapperStyle:{},tableWrapperStyle:{},wrapperStyle:{},tableStyle:{},adaptive:{type:Boolean},columnResizable:{type:Boolean,default:!1},loading:{type:Boolean,default:void 0},summary:{},rowHeight:{default:66},getRowHeight:{},advanceRenderer:{type:Boolean},browserTooltips:{type:Boolean},virtual:{type:[Boolean,Object],default:void 0},onRowClicked:{},onScrollEnd:{},rowClassName:{},rowClassRules:{},autoHeight:{type:Boolean},onUpdate:{},customRow:{},theme:{},emptyComponent:{},emptyText:{},onColumnResized:{},animateRows:{type:Boolean},plugins:{},columns:{},defaultValue:{},onChange:{},maxLength:{},onFieldChange:{},label:{},name:{},formItem:{}},setup(y,{expose:h}){const b=o.useSlots(),t=y,{b:C}=W.useNamespace("editable-aggrid"),R=G.default("editable-aggrid"),s=o.ref(),{internalInstance:u}=k.useInjectForm();function v(e){const n=m.getColumnTransformOptions(t.columns||[]);if(!Object.keys(n).length||!e?.length)return e;let a=[];for(const d of e)a.push(z.transformValues(d,n));return a}const i=L.getShadowName(t.name);let p=[];o.onMounted(()=>{const e=t.formItem?.initialValue??P.getModelValue(u?.getInitialValues()??{},t.name);e&&(u?.updateInitialModel(i,m.arrayToObject(r.cloneDeep(e),t.rowKey)),p=r.cloneDeep(e),l.value||_(r.cloneDeep(e),"suffix",!0))});const l=o.ref([]),x=A.useWatch(t.name);o.watch(()=>x.value,e=>{r.isEqual(e,l.value)||f(e??r.cloneDeep(p))},{deep:!0,flush:"post",immediate:!0});const B=U.useGlobalConfig("valueTypeMap"),q=H.useGetEditableColumns(t,B,i),{add:I,addMultiple:S,__addMultiple:_,remove:T,removeByKey:E,getRowData:F,getRowsData:N,setRowData:V,clear:j,refreshRowIds:c}=K.useEditableFormItemApi(t,u,l,i);function D(){const e=s.value?._internalGridApi;if(!c.value?.length||!e)return;const n=c.value.map(a=>e.getRowNode(a)).filter(a=>!!a);e.refreshCells({rowNodes:n,force:!0}),c.value=[]}function f(e){l.value=[...e];const n=m.arrayToObject(e,t.rowKey);u?.setFieldValue(t.name,[...e]),u?.setFieldValue(i,n)}function g(e,n){const a=e==="end"?l.value.length-1:e;s.value?.scrollToRow(a,n)}function O(e,n){s.value?.scrollToColumn(e,n)}return h({add:I,addMultiple:S,remove:T,removeByKey:E,getRowData:F,getRowsData:N,setRowData:V,clear:j,setTableData:f,scrollTo:g,scrollToRow:g,scrollToColumn:O,table:s}),(e,n)=>(o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createVNode(o.unref(w.ApForm).FormItem,{hidden:"",name:e.name,"initial-value":e.formItem?.initialValue,transform:v},null,8,["name","initial-value"]),o.createVNode(o.unref(w.ApForm).FormItem,o.mergeProps({label:e.label},e.formItem),{default:o.withCtx(()=>[o.createVNode($.default,o.mergeProps(o.unref(r.omit)(t,["name","maxLength","onChange","defaultValue","formItem"]),{ref_key:"tableRef",ref:s,class:[o.unref(C)(),o.unref(R)],size:"mini",columns:o.unref(q),"data-source":l.value,"search-form":!1,onUpdate:D}),o.createSlots({_:2},[o.renderList(b,(a,d)=>({name:d,fn:o.withCtx(M=>[o.renderSlot(e.$slots,d,o.normalizeProps(o.guardReactiveProps(M||{})))])}))]),1040,["class","columns","data-source"])]),_:3},16,["label"])],64))}});exports.default=J;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("vue"),u=require("lodash-unified"),y=require("../../ap-form/index.js"),k=require("../../ap-form/context.js"),A=require("../../ap-form/hooks/use-watch.js"),z=require("../../ap-form/utils/get.js"),H=require("../../ap-form/utils/transform.js");require("../../config-provider/index.js");const L=require("../hooks/use-editable-columns.js"),G=require("../hooks/use-editable-form-item-api.js");require("../index.vue2.js");const W=require("../style/editable.js"),U=require("../utils.js"),c=require("./utils.js"),$=require("../../config-provider/hooks/use-namespace.js"),J=require("../../config-provider/hooks/use-global-config.js"),Q=require("../index.vue.js"),X=o.defineComponent({name:"EditableGrid",__name:"form-item",props:{dropdownPrefixCls:{},bordered:{type:Boolean},locale:{},onResizeColumn:{},getPopupContainer:{},scroll:{},sortDirections:{},showSorterTooltip:{type:[Boolean,Object]},prefixCls:{},rowKey:{type:[String,Function],default:"key"},tableLayout:{},title:{},id:{},showHeader:{type:Boolean},components:{},customHeaderRow:{},direction:{},expandFixed:{type:[String,Boolean]},expandColumnWidth:{},expandedRowKeys:{},defaultExpandedRowKeys:{},expandedRowRender:{},expandRowByClick:{type:Boolean},expandIcon:{},onExpand:{},onExpandedRowsChange:{},defaultExpandAllRows:{type:Boolean},indentSize:{},expandIconColumnIndex:{},showExpandColumn:{type:Boolean},expandedRowClassName:{},childrenColumnName:{},rowExpandable:{},transformCellText:{},rowHoverable:{type:Boolean},rowSelection:{type:[Boolean,Object]},onLoadingChange:{},onShownColumnsChange:{},pagination:{type:[Boolean,Object],default:!1},searchFormWrapperStyle:{},tableWrapperStyle:{},wrapperStyle:{},tableStyle:{},adaptive:{type:Boolean},columnResizable:{type:Boolean,default:!1},loading:{type:Boolean,default:void 0},summary:{},rowHeight:{default:66},getRowHeight:{},advanceRenderer:{type:Boolean},browserTooltips:{type:Boolean},virtual:{type:[Boolean,Object],default:void 0},onRowClicked:{},onScrollEnd:{},rowClassName:{},rowClassRules:{},autoHeight:{type:Boolean},onUpdate:{},customRow:{},theme:{},emptyComponent:{},emptyText:{},onColumnResized:{},animateRows:{type:Boolean},plugins:{},columns:{},defaultValue:{},onChange:{},maxLength:{},onFieldChange:{},label:{},name:{},formItem:{}},setup(h,{expose:b}){const C=o.useSlots(),a=h,{b:R}=$.useNamespace("editable-aggrid"),v=W.default("editable-aggrid"),d=o.ref(),{internalInstance:l}=k.useInjectForm();function x(e){const t=c.getColumnTransformOptions(a.columns||[]);if(!Object.keys(t).length||!e?.length)return e;let n=[];for(const i of e)n.push(H.transformValues(i,t));return n}const s=U.getShadowName(a.name);let f=[];o.onMounted(()=>{const e=a.formItem?.initialValue??z.getModelValue(l?.getInitialValues()??{},a.name);e&&(l?.updateInitialModel(s,c.arrayToObject(u.cloneDeep(e),a.rowKey)),f=u.cloneDeep(e),r.value||F(u.cloneDeep(e),"suffix",!0))});const r=o.ref([]),B=A.useWatch(a.name);o.watch(()=>B.value,e=>{u.isEqual(e,r.value)||g(e??u.cloneDeep(f))},{deep:!0,flush:"post",immediate:!0});const S=J.useGlobalConfig("valueTypeMap"),q=L.useGetEditableColumns(a,S,s),{add:I,addMultiple:_,__addMultiple:F,remove:T,removeByKey:E,getRowData:N,getRowsData:V,setRowData:j,clear:D,refreshRowIds:m}=G.useEditableFormItemApi(a,l,r,s);function O(){const e=d.value?._internalGridApi;if(!m.value?.length||!e)return;const t=m.value.map(n=>e.getRowNode(n)).filter(n=>!!n);e.refreshCells({rowNodes:t,force:!0}),m.value=[]}function g(e){r.value=[...e];const t=c.arrayToObject(e,a.rowKey);l?.setFieldValue(a.name,[...e]),l?.setFieldValue(s,t)}function w(e,t){const n=e==="end"?r.value.length-1:e;d.value?.scrollToRow(n,t)}function K(e,t){d.value?.scrollToColumn(e,t)}function M(e,t){const n=[s,String(e),t].flat();return l?.validateFields([n])}function P(e){const n=o.unref(r).map((i,p)=>[s,String(c.getRowKey(i,p,a.rowKey)),e].flat());return l?.validateFields(n)}return b({add:I,addMultiple:_,remove:T,removeByKey:E,getRowData:N,getRowsData:V,setRowData:j,clear:D,setTableData:g,scrollTo:w,scrollToRow:w,scrollToColumn:K,validateCell:M,validateColumn:P,table:d}),(e,t)=>(o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createVNode(o.unref(y.ApForm).FormItem,{hidden:"",name:e.name,"initial-value":e.formItem?.initialValue,transform:x},null,8,["name","initial-value"]),o.createVNode(o.unref(y.ApForm).FormItem,o.mergeProps({label:e.label},e.formItem),{default:o.withCtx(()=>[o.createVNode(Q.default,o.mergeProps(o.unref(u.omit)(a,["name","maxLength","onChange","defaultValue","formItem"]),{ref_key:"tableRef",ref:d,class:[o.unref(R)(),o.unref(v)],size:"mini",columns:o.unref(q),"data-source":r.value,"search-form":!1,onUpdate:O}),o.createSlots({_:2},[o.renderList(C,(n,i)=>({name:i,fn:o.withCtx(p=>[o.renderSlot(e.$slots,i,o.normalizeProps(o.guardReactiveProps(p||{})))])}))]),1040,["class","columns","data-source"])]),_:3},16,["label"])],64))}});exports.default=X;
@@ -87,7 +87,21 @@ export type EditableAgGridExpose<RecordType = any, ModelType = RecordType[]> = O
87
87
  validateFieldsReturnTransformed: EditableTableExpose<ModelType, RecordType>['validateFields'];
88
88
  table: AgGridExpose;
89
89
  };
90
- export type EditableAgGridFormItemExpose<RecordType = any, ModelType = RecordType[]> = Omit<EditableAgGridExpose<RecordType, ModelType>, 'resetFields' | 'validateFields' | 'validateFieldsReturnTransformed'>;
90
+ export type EditableAgGridFormItemExpose<RecordType = any, ModelType = RecordType[]> = Omit<EditableAgGridExpose<RecordType, ModelType>, 'resetFields' | 'validateFields' | 'validateFieldsReturnTransformed'> & {
91
+ /**
92
+ * 校验单元格
93
+ * @param rowId 行唯一标识
94
+ * @param field 字段
95
+ * @returns
96
+ */
97
+ validateCell: (rowId: any, field: NamePath) => any;
98
+ /**
99
+ * 校验列
100
+ * @param colKey 列唯一标识
101
+ * @returns
102
+ */
103
+ validateColumn: (colKey: string | number) => any;
104
+ };
91
105
  export type EditableAgGridFormItemProps<RecordType = any> = Omit<EditableAgGridProps<RecordType>, 'name' | 'value' | 'onUpdate:value'> & {
92
106
  label?: string;
93
107
  /**
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("vue"),Q=require("@aplus-frontend/antdv"),X=require("@vueuse/core"),u=require("lodash-unified");require("../render/index.js");const Y=require("../utils/warning.js"),Z=require("../utils/index.js"),A=require("./constant.js"),z=require("./context.js"),ee=require("./provider/context.js"),B=require("./utils/get.js"),h=require("./utils/params.js"),te=require("./utils/set.js"),V=require("./utils/transform.js"),T=require("../utils/is.js"),re=require("../render/render.js"),ne=r.defineComponent({name:"ApForm",__name:"ap-form",props:{layout:{default:"horizontal"},labelCol:{},wrapperCol:{},colon:{type:Boolean,default:!0},labelAlign:{default:"right"},labelWrap:{type:Boolean},prefixCls:{},requiredMark:{},hideRequiredMark:{type:Boolean,default:!1},rules:{},validateMessages:{},validateOnRuleChange:{type:Boolean,default:!0},scrollToFirstError:{},onSubmit:{},name:{},validateTrigger:{default:"change"},size:{},disabled:{type:Boolean},onFieldsChange:{},onFinish:{},onFinishFailed:{},onValidate:{},variant:{},initialValues:{},onValuesChange:{},syncToUrl:{type:[Boolean,Function],default:!1},syncToUrlPriority:{type:Boolean},autoFocusFirstInput:{type:Boolean}},setup(N,{expose:b}){const n=N;function m(e,t,o=!0,i){if(u.isArray(e)){let a=s;for(let F=0;F<e.length-1;F++)e[F]in a||(a[e[F]]={}),a=a[e[F]];i?i(a,e[e.length-1]):a[e[e.length-1]]=t}else i?i(s,e):s[e]=t;let w=u.isArray(e)?e[0]:e;if(o){const a={[w]:s[w]};p.triggerFormChange(n.name,a),n.onValuesChange?.(a,s,e)}y()}const l=r.shallowRef(),v=X.useUrlSearchParams(Z.getRouteType()),p=ee.useInjectFormProvider(),k=Y.useDevWarning("ApForm"),I=r.ref(n.syncToUrl?h.genParams(n.syncToUrl,v,"get"):{});let c=u.cloneDeep(M()),d={};const s=r.reactive(M());let g=[];function M(){const e=n.initialValues||{};return n.syncToUrlPriority?{...e,...r.unref(I)}:{...r.unref(I),...e}}function E(e){const t=V.transformValues(e,d,f);p.triggerFormFinish(n.name,e),n.syncToUrl&&h.setToParams(v,h.genParams(n.syncToUrl,t,"set")),n.onFinish?.(t)}const S=async()=>{l.value?.resetFields(),await r.nextTick(()=>{Object.keys(s).forEach(e=>delete s[e]),Object.assign(s,u.cloneDeep(c)),y(),n.syncToUrl&&h.setToParams(v,h.genParams(n.syncToUrl,V.transformValues(c,d,f),"set"))})},D=e=>{l.value?.clearValidate(e)},O=(e,t)=>l.value?.validateFields(e,t),x=async(e,t)=>{const o=await l.value?.validateFields(e,t);return V.transformValues(o,d,f)},f=e=>e===!0?r.toRaw(s):l.value?.getFieldsValue(e),j=e=>{const t=f(e);return V.transformValues(t,d,f)},W=(e,t)=>l.value?.validate(e,t),$=(e,t={})=>{l.value?.scrollToField(e,t)},K=e=>{Object.assign(s,e),y()},q=(e,t,o=!0,i)=>{m(e,t,o,i),y()};function C(e){return e(r.toRaw(s)),g.push(e),()=>{g=g.filter(t=>t!==e)}}function R(e,t){if(u.isArray(e)){let o=c;for(let i=0;i<e.length-1;i++)T.isDef(o[e[i]])||(o[e[i]]={}),o=o[e[i]];o[e[e.length-1]]=t}else c[e]=t}function L(e,t){if(!T.isDef(e)||!T.isDef(t))return;const o=B.getModelValue(c,t);if(u.isEqual(o,e))return;const i=B.getModelValue(r.unref(I),t);T.isDef(i)&&n.syncToUrlPriority||(m(t,e,!1),R(t,e))}function G(e,t){t&&(d=te.default(d,[e].flat(1),t,!0))}function P({initialValue:e,name:t,transform:o}){L(e,t),G(t,o)}function U(){return c}function H(e){if(k(e===A.INTERNAL_FORM_INSTANCE_MARK,"usage","getInternalInstance should only used at internal"),e===A.INTERNAL_FORM_INSTANCE_MARK)return{registerField:P,registerWatch:C,setFieldValue:q,getInitialValues:U,updateInitialModel:R}}function y(){if(g.length){const e=r.toRaw(s);g.forEach(t=>{t(e)})}}const _={resetFields:S,clearValidate:D,validateFields:O,getFieldsValue:f,validate:W,scrollToField:$,setFieldsValue:K,setFieldValue:q,registerWatch:C,validateFieldsReturnTransformed:x,getFieldsValueTransformed:j,getInternalInstance:H};r.watch(()=>n.name,e=>{e&&(p.registerForm(e,_),r.onWatcherCleanup(()=>{p.unregisterForm(n.name)}))},{immediate:!0});function J(e){return e.map((t,o)=>o===0&&r.isVNode(t)&&n.autoFocusFirstInput?r.cloneVNode(t,{autoFocus:n.autoFocusFirstInput}):t)}return z.useProvideForm({model:r.computed(()=>s),updateModel:m,internalInstance:{registerWatch:C,registerField:P,setFieldValue:q,getInitialValues:U,updateInitialModel:R}}),b(_),(e,t)=>(r.openBlock(),r.createBlock(r.unref(Q.Form),r.mergeProps({ref_key:"formRef",ref:l},r.unref(u.omit)(n,["initialValues","onValuesChange","onFinish","syncToUrl","syncToUrlPriority","autoFocusFirstInput"]),{model:s,"data-form-name":e.name,onFinish:E}),{default:r.withCtx(()=>[e.autoFocusFirstInput?(r.openBlock(),r.createBlock(r.unref(re.default),{key:1,renderer:J},{default:r.withCtx(()=>[r.renderSlot(e.$slots,"default")]),_:3})):r.renderSlot(e.$slots,"default",{key:0})]),_:3},16,["model","data-form-name"]))}});exports.default=ne;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("vue"),Q=require("@aplus-frontend/antdv"),X=require("@vueuse/core"),u=require("lodash-unified");require("../render/index.js");const Y=require("../utils/warning.js"),Z=require("../utils/index.js"),B=require("./constant.js"),z=require("./context.js"),ee=require("./provider/context.js"),N=require("./utils/get.js"),h=require("./utils/params.js"),te=require("./utils/set.js"),V=require("./utils/transform.js"),T=require("../utils/is.js"),re=require("../render/render.js"),ne=r.defineComponent({name:"ApForm",__name:"ap-form",props:{layout:{default:"horizontal"},labelCol:{},wrapperCol:{},colon:{type:Boolean,default:!0},labelAlign:{default:"right"},labelWrap:{type:Boolean},prefixCls:{},requiredMark:{},hideRequiredMark:{type:Boolean,default:!1},rules:{},validateMessages:{},validateOnRuleChange:{type:Boolean,default:!0},scrollToFirstError:{},onSubmit:{},name:{},validateTrigger:{default:"change"},size:{},disabled:{type:Boolean},onFieldsChange:{},onFinish:{},onFinishFailed:{},onValidate:{},variant:{},initialValues:{},onValuesChange:{},syncToUrl:{type:[Boolean,Function],default:!1},syncToUrlPriority:{type:Boolean},autoFocusFirstInput:{type:Boolean}},setup(b,{expose:k}){const n=b;function m(e,t,o=!0,i){if(u.isArray(e)){let a=s;for(let F=0;F<e.length-1;F++)e[F]in a||(a[e[F]]={}),a=a[e[F]];i?i(a,e[e.length-1]):a[e[e.length-1]]=t}else i?i(s,e):s[e]=t;let A=u.isArray(e)?e[0]:e;if(o){const a={[A]:s[A]};p.triggerFormChange(n.name,a),n.onValuesChange?.(a,s,e)}y()}const l=r.shallowRef(),v=X.useUrlSearchParams(Z.getRouteType()),p=ee.useInjectFormProvider(),E=Y.useDevWarning("ApForm"),I=r.ref(n.syncToUrl?h.genParams(n.syncToUrl,v,"get"):{});let c=u.cloneDeep(P()),d={};const s=r.reactive(P());let g=[];function P(){const e=n.initialValues||{};return n.syncToUrlPriority?{...e,...r.unref(I)}:{...r.unref(I),...e}}function S(e){const t=V.transformValues(e,d,f);p.triggerFormFinish(n.name,e),n.syncToUrl&&h.setToParams(v,h.genParams(n.syncToUrl,t,"set")),n.onFinish?.(t)}const D=async()=>{l.value?.resetFields(),await r.nextTick(()=>{Object.keys(s).forEach(e=>delete s[e]),Object.assign(s,u.cloneDeep(c)),y(),n.syncToUrl&&h.setToParams(v,h.genParams(n.syncToUrl,V.transformValues(c,d,f),"set"))})},O=e=>{l.value?.clearValidate(e)},q=(e,t)=>l.value?.validateFields(e,t),x=async(e,t)=>{const o=await l.value?.validateFields(e,t);return V.transformValues(o,d,f)},f=e=>e===!0?r.toRaw(s):l.value?.getFieldsValue(e),j=e=>{const t=f(e);return V.transformValues(t,d,f)},W=(e,t)=>l.value?.validate(e,t),$=(e,t={})=>{l.value?.scrollToField(e,t)},K=e=>{Object.assign(s,e),y()},C=(e,t,o=!0,i)=>{m(e,t,o,i),y()};function R(e){return e(r.toRaw(s)),g.push(e),()=>{g=g.filter(t=>t!==e)}}function M(e,t){if(u.isArray(e)){let o=c;for(let i=0;i<e.length-1;i++)T.isDef(o[e[i]])||(o[e[i]]={}),o=o[e[i]];o[e[e.length-1]]=t}else c[e]=t}function L(e,t){if(!T.isDef(e)||!T.isDef(t))return;const o=N.getModelValue(c,t);if(u.isEqual(o,e))return;const i=N.getModelValue(r.unref(I),t);T.isDef(i)&&n.syncToUrlPriority||(m(t,e,!1),M(t,e))}function G(e,t){t&&(d=te.default(d,[e].flat(1),t,!0))}function U({initialValue:e,name:t,transform:o}){L(e,t),G(t,o)}function _(){return c}function H(e){if(E(e===B.INTERNAL_FORM_INSTANCE_MARK,"usage","getInternalInstance should only used at internal"),e===B.INTERNAL_FORM_INSTANCE_MARK)return{registerField:U,registerWatch:R,setFieldValue:C,getInitialValues:_,updateInitialModel:M,validateFields:q}}function y(){if(g.length){const e=r.toRaw(s);g.forEach(t=>{t(e)})}}const w={resetFields:D,clearValidate:O,validateFields:q,getFieldsValue:f,validate:W,scrollToField:$,setFieldsValue:K,setFieldValue:C,registerWatch:R,validateFieldsReturnTransformed:x,getFieldsValueTransformed:j,getInternalInstance:H};r.watch(()=>n.name,e=>{e&&(p.registerForm(e,w),r.onWatcherCleanup(()=>{p.unregisterForm(n.name)}))},{immediate:!0});function J(e){return e.map((t,o)=>o===0&&r.isVNode(t)&&n.autoFocusFirstInput?r.cloneVNode(t,{autoFocus:n.autoFocusFirstInput}):t)}return z.useProvideForm({model:r.computed(()=>s),updateModel:m,internalInstance:{registerWatch:R,registerField:U,setFieldValue:C,getInitialValues:_,updateInitialModel:M,validateFields:q}}),k(w),(e,t)=>(r.openBlock(),r.createBlock(r.unref(Q.Form),r.mergeProps({ref_key:"formRef",ref:l},r.unref(u.omit)(n,["initialValues","onValuesChange","onFinish","syncToUrl","syncToUrlPriority","autoFocusFirstInput"]),{model:s,"data-form-name":e.name,onFinish:S}),{default:r.withCtx(()=>[e.autoFocusFirstInput?(r.openBlock(),r.createBlock(r.unref(re.default),{key:1,renderer:J},{default:r.withCtx(()=>[r.renderSlot(e.$slots,"default")]),_:3})):r.renderSlot(e.$slots,"default",{key:0})]),_:3},16,["model","data-form-name"]))}});exports.default=ne;
@@ -149,6 +149,10 @@ export type ApFormInternalInstance = {
149
149
  * 更新表单的初始值(仅用于某些组件内部调用的情况)
150
150
  */
151
151
  updateInitialModel: (name: FormItemProps['name'], val: any) => void;
152
+ /**
153
+ * 表单校验
154
+ */
155
+ validateFields: ApFormExpose['validateFields'];
152
156
  };
153
157
  export type ApFormItemExpose = FormItemExpose & {
154
158
  /**
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),q=require("@ant-design/icons-vue"),r=require("@aplus-frontend/antdv");require("../../../../ap-button/index.js");const X=require("../../../../utils/index.js");require("../../../../config-provider/index.js");const Y=require("../../../../utils/slot.js"),Z=require("../../../context.js"),ee=require("../../../hooks/use-table-column-state.js"),te=require("../../../hooks/use-table-template-storage.js"),ne=require("../../../style/setting.js"),ae=require("../context.js");require("../sorter/index.vue.js");require("../template/edit-form.vue.js");require("../template/index.vue.js");require("../tree-select/index.vue.js");const v=require("../utils.js"),le=require("../../../../config-provider/hooks/use-locale.js"),z=require("../../../../config-provider/hooks/use-namespace.js"),oe=require("../template/index.vue2.js"),re=require("../tree-select/index.vue2.js"),ue=require("../sorter/index.vue2.js"),ie=require("../../../../ap-button/ap-button.vue.js"),se=require("../template/edit-form.vue2.js"),ce={style:{"padding-inline":"8px"}},de=e.defineComponent({name:"ApTableSetting",__name:"index",props:{config:{default:()=>({persistenceKey:""})}},setup(B){const i=B,{columnsBackup:A,updateSize:D,updateColumns:K}=Z.useInjectApTable(),c=e.ref(),y=e.computed(()=>i.config.persistenceKey),g=e.ref(!1),{basicTemplate:E,customizeTemplateList:f,addTemplate:I,deleteTemplate:N,updateTemplate:R}=te.useTableTemplateStorage(i.config,y,Q),{columnState:s,setColumnState:T,isAllSelected:L,toggleSelectAll:O}=ee.useTableColumnState([]),x=e.computed(()=>`${y.value}__active_key`);function V(n){localStorage.setItem(x.value,n)}function _(){return localStorage.getItem(x.value)}const l=e.ref(i.config.defaultActiveKey??_());e.watch(()=>f.value,n=>{n.length&&!l.value&&(l.value=n[0]?.key)},{immediate:!0}),ae.useProvideApColumnSetting({activeKey:l,cacheConfig:e.toRef(i,"config"),deleteTemplate:H});const{t:u}=le.useLocale(),{b:p,be:C}=z.useNamespace("ap-column-setting"),{b:$}=z.useNamespace("ap-table"),P=ne.default("ap-column-setting"),m=e.ref(!1),k=e.ref(!1),M=e.useSlots(),b=Y.getSingleVNode(M.trigger)||e.createVNode(r.Button,{icon:e.createVNode(q.SettingOutlined,null,null),class:$("setting-trigger-button")},null),w=b?e.cloneVNode(b,{onClick:()=>{m.value=!0}}):null;function U(){T(v.customCloneColumnStates(e.unref(E).columnState))}function h(n,t){K?.(v.default(e.unref(A),n)),D?.(t)}function j(){h(e.unref(s),e.unref(c)),m.value=!1;const n=v.customCloneColumnStates(s.value),t=R(l.value,{columnState:n,size:c.value});V(l.value),i.config?.onChange?.(n,t)}function F(n){const t=i.config.getActiveKey?.(n)??X.randomStr(),a={key:t,label:n,columnState:s.value,size:c.value};I(a),g.value=!1,l.value=t,i.config.onChange?.(a.columnState,a)}function G(n,t){console.log(n,t);const a=[...t].find(o=>o?.key===n);a&&(T(v.customCloneColumnStates(a.columnState)),c.value=a.size)}function H(n){if(n!==l.value){N(n);return}const t=f.value,a=t.findIndex(d=>d.key===n),o=t[a+1]?.key??t[a-1]?.key;N(n),l.value=o,V(o)}function J(n){if(k.value=n,!n){const t=_();t&&t!==l.value&&(l.value=t)}}function Q(n){const t=_()??n[0].key;l.value=t;const a=[...n].find(o=>o?.key===t);a&&h(a.columnState,a.size)}e.watch([l,f],([n,t],[a,o])=>{if(t.length&&!o?.length&&n){const d=[...t].find(W=>W.key===n);if(!d)return;h(d.columnState,d.size)}G(n,t)},{immediate:!0});const S=e.ref(!1);return e.watch([c,s,m],([n,t,a])=>{if(!a)return;const o=f.value.find(d=>d.key===l.value);o&&(o.size!==n||!v.isEqualColumnStateIgnoreLabel(t,o.columnState))?S.value=!0:S.value=!1},{deep:!0}),e.watch(()=>l.value,n=>{i.config.onActiveChange?.(n)},{immediate:!0}),(n,t)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(w)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(w)),{key:0})):e.createCommentVNode("",!0),e.createVNode(e.unref(r.Modal),{open:m.value,"onUpdate:open":t[4]||(t[4]=a=>m.value=a),title:e.unref(u)("ap.apTable.setting.title"),width:1e3,centered:!0,"body-style":{padding:"0px !important",height:"516px"},"after-open-change":J,"wrap-class-name":`${e.unref(p)()} ${e.unref(P)}`,"ok-text":e.unref(u)("ap.apTable.setting.saveAndApply"),"mask-closable":!1,onOk:j},{footer:e.withCtx(({extra:a})=>[e.createVNode(e.unref(r.Flex),{justify:"space-between"},{default:e.withCtx(()=>[e.createVNode(e.unref(r.Space),{size:12},{default:e.withCtx(()=>[e.createVNode(e.unref(r.Popover),{open:g.value,"onUpdate:open":t[3]||(t[3]=o=>g.value=o),trigger:"click",arrow:!1,placement:"topLeft","destroy-tooltip-on-hide":""},{content:e.withCtx(()=>[e.createVNode(se.default,{onConfirm:F,onCancel:t[2]||(t[2]=()=>g.value=!1)})]),default:e.withCtx(()=>[e.createVNode(e.unref(ie.default),{type:"borderLink",disabled:!n.config.persistenceKey},{icon:e.withCtx(()=>[e.createVNode(e.unref(q.SaveOutlined))]),default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("ap.apTable.setting.saveAsTemplate"))+" ",1)]),_:1},8,["disabled"])]),_:1},8,["open"]),S.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(e.unref(p)("modify-tip"))},e.toDisplayString(e.unref(u)("ap.apTable.setting.modifyNotification")),3)):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.unref(r.Space),{size:10},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.cancelBtn))),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.okBtn)))]),_:2},1024)]),_:2},1024)]),default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(e.unref(p)("wrapper"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(p)("left"))},[e.createVNode(oe.default,{"customize-template-list":e.unref(f),"persistence-key":y.value},null,8,["customize-template-list","persistence-key"])],2),e.createVNode(e.unref(r.Divider),{type:"vertical",style:{height:"100%",margin:"0px"}}),e.createElementVNode("div",{class:e.normalizeClass(e.unref(p)("center"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(C)("center","header"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(C)("center","tip-wrapper"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(C)("center","header-tips"))},e.toDisplayString(e.unref(u)("ap.apTable.setting.selectAllTip")),3),e.createVNode(e.unref(r.Button),{type:"link",size:"small",onClick:e.unref(O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(L)?e.unref(u)("ap.apTable.setting.unSelectAll"):e.unref(u)("ap.apTable.setting.selectAll")),1)]),_:1},8,["onClick"])],2),e.createVNode(e.unref(r.RadioGroup),{value:c.value,"onUpdate:value":t[0]||(t[0]=a=>c.value=a)},{default:e.withCtx(()=>[e.createVNode(e.unref(r.RadioButton),{value:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("ap.apTable.setting.sizeSmall")),1)]),_:1}),e.createVNode(e.unref(r.RadioButton),{value:"middle"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("ap.apTable.setting.sizeNormal")),1)]),_:1})]),_:1},8,["value"])],2),e.createElementVNode("div",ce,[e.createVNode(e.unref(r.Divider),{dashed:"",style:{margin:"0px"}})]),e.createVNode(re.default,{class:e.normalizeClass(e.unref(C)("center","content")),value:e.unref(s)},null,8,["class","value"])],2),e.createVNode(e.unref(r.Divider),{type:"vertical",style:{height:"100%",margin:"0px"}}),e.createElementVNode("div",{class:e.normalizeClass(e.unref(p)("right"))},[e.createVNode(ue.default,{value:e.unref(s),"onUpdate:value":t[1]||(t[1]=a=>e.isRef(s)?s.value=a:null),onReset:U},null,8,["value"])],2)],2),[[e.vShow,k.value]])]),_:1},8,["open","title","wrap-class-name","ok-text"])],64))}});exports.default=de;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),q=require("@ant-design/icons-vue"),r=require("@aplus-frontend/antdv");require("../../../../ap-button/index.js");const X=require("../../../../utils/index.js");require("../../../../config-provider/index.js");const Y=require("../../../../utils/slot.js"),Z=require("../../../context.js"),ee=require("../../../hooks/use-table-column-state.js"),te=require("../../../hooks/use-table-template-storage.js"),ne=require("../../../style/setting.js"),ae=require("../context.js");require("../sorter/index.vue.js");require("../template/edit-form.vue.js");require("../template/index.vue.js");require("../tree-select/index.vue.js");const v=require("../utils.js"),le=require("../../../../config-provider/hooks/use-locale.js"),z=require("../../../../config-provider/hooks/use-namespace.js"),oe=require("../template/index.vue2.js"),re=require("../tree-select/index.vue2.js"),ue=require("../sorter/index.vue2.js"),ie=require("../../../../ap-button/ap-button.vue.js"),se=require("../template/edit-form.vue2.js"),ce={style:{"padding-inline":"8px"}},de=e.defineComponent({name:"ApTableSetting",__name:"index",props:{config:{default:()=>({persistenceKey:""})}},setup(B){const i=B,{columnsBackup:A,updateSize:D,updateColumns:K}=Z.useInjectApTable(),c=e.ref(),g=e.computed(()=>i.config.persistenceKey),C=e.ref(!1),{basicTemplate:E,customizeTemplateList:f,addTemplate:I,deleteTemplate:T,updateTemplate:R}=te.useTableTemplateStorage(i.config,g,Q),{columnState:s,setColumnState:k,isAllSelected:L,toggleSelectAll:O}=ee.useTableColumnState([]),y=e.computed(()=>g.value&&`${g.value}__active_key`);function x(n){y.value&&localStorage.setItem(y.value,n)}function h(){if(y.value)return localStorage.getItem(y.value)}const l=e.ref(i.config.defaultActiveKey??h());e.watch(()=>f.value,n=>{n.length&&!l.value&&(l.value=n[0]?.key)},{immediate:!0}),ae.useProvideApColumnSetting({activeKey:l,cacheConfig:e.toRef(i,"config"),deleteTemplate:H});const{t:u}=le.useLocale(),{b:p,be:_}=z.useNamespace("ap-column-setting"),{b:$}=z.useNamespace("ap-table"),P=ne.default("ap-column-setting"),m=e.ref(!1),V=e.ref(!1),M=e.useSlots(),b=Y.getSingleVNode(M.trigger)||e.createVNode(r.Button,{icon:e.createVNode(q.SettingOutlined,null,null),class:$("setting-trigger-button")},null),w=b?e.cloneVNode(b,{onClick:()=>{m.value=!0}}):null;function U(){k(v.customCloneColumnStates(e.unref(E).columnState))}function S(n,t){K?.(v.default(e.unref(A),n)),D?.(t)}function j(){S(e.unref(s),e.unref(c)),m.value=!1;const n=v.customCloneColumnStates(s.value),t=R(l.value,{columnState:n,size:c.value});x(l.value),i.config?.onChange?.(n,t)}function F(n){const t=i.config.getActiveKey?.(n)??X.randomStr(),a={key:t,label:n,columnState:s.value,size:c.value};I(a),C.value=!1,l.value=t,i.config.onChange?.(a.columnState,a)}function G(n,t){const a=[...t].find(o=>o?.key===n);a&&(k(v.customCloneColumnStates(a.columnState)),c.value=a.size)}function H(n){if(n!==l.value){T(n);return}const t=f.value,a=t.findIndex(d=>d.key===n),o=t[a+1]?.key??t[a-1]?.key;T(n),l.value=o,x(o)}function J(n){if(V.value=n,!n){const t=h();t&&t!==l.value&&(l.value=t)}}function Q(n){const t=h()??n[0].key;l.value=t;const a=[...n].find(o=>o?.key===t);a&&S(a.columnState,a.size)}e.watch([l,f],([n,t],[a,o])=>{if(t.length&&!o?.length&&n){const d=[...t].find(W=>W.key===n);if(!d)return;S(d.columnState,d.size)}G(n,t)},{immediate:!0});const N=e.ref(!1);return e.watch([c,s,m],([n,t,a])=>{if(!a)return;const o=f.value.find(d=>d.key===l.value);o&&(o.size!==n||!v.isEqualColumnStateIgnoreLabel(t,o.columnState))?N.value=!0:N.value=!1},{deep:!0}),e.watch(()=>l.value,n=>{i.config.onActiveChange?.(n)},{immediate:!0}),(n,t)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(w)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(w)),{key:0})):e.createCommentVNode("",!0),e.createVNode(e.unref(r.Modal),{open:m.value,"onUpdate:open":t[4]||(t[4]=a=>m.value=a),title:e.unref(u)("ap.apTable.setting.title"),width:1e3,centered:!0,"body-style":{padding:"0px !important",height:"516px"},"after-open-change":J,"wrap-class-name":`${e.unref(p)()} ${e.unref(P)}`,"ok-text":e.unref(u)("ap.apTable.setting.saveAndApply"),"mask-closable":!1,onOk:j},{footer:e.withCtx(({extra:a})=>[e.createVNode(e.unref(r.Flex),{justify:"space-between"},{default:e.withCtx(()=>[e.createVNode(e.unref(r.Space),{size:12},{default:e.withCtx(()=>[e.createVNode(e.unref(r.Popover),{open:C.value,"onUpdate:open":t[3]||(t[3]=o=>C.value=o),trigger:"click",arrow:!1,placement:"topLeft","destroy-tooltip-on-hide":""},{content:e.withCtx(()=>[e.createVNode(se.default,{onConfirm:F,onCancel:t[2]||(t[2]=()=>C.value=!1)})]),default:e.withCtx(()=>[e.createVNode(e.unref(ie.default),{type:"borderLink",disabled:!n.config.persistenceKey},{icon:e.withCtx(()=>[e.createVNode(e.unref(q.SaveOutlined))]),default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("ap.apTable.setting.saveAsTemplate"))+" ",1)]),_:1},8,["disabled"])]),_:1},8,["open"]),N.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(e.unref(p)("modify-tip"))},e.toDisplayString(e.unref(u)("ap.apTable.setting.modifyNotification")),3)):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.unref(r.Space),{size:10},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.cancelBtn))),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.okBtn)))]),_:2},1024)]),_:2},1024)]),default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(e.unref(p)("wrapper"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(p)("left"))},[e.createVNode(oe.default,{"customize-template-list":e.unref(f),"persistence-key":g.value},null,8,["customize-template-list","persistence-key"])],2),e.createVNode(e.unref(r.Divider),{type:"vertical",style:{height:"100%",margin:"0px"}}),e.createElementVNode("div",{class:e.normalizeClass(e.unref(p)("center"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(_)("center","header"))},[e.createElementVNode("div",{class:e.normalizeClass(e.unref(_)("center","tip-wrapper"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(_)("center","header-tips"))},e.toDisplayString(e.unref(u)("ap.apTable.setting.selectAllTip")),3),e.createVNode(e.unref(r.Button),{type:"link",size:"small",onClick:e.unref(O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(L)?e.unref(u)("ap.apTable.setting.unSelectAll"):e.unref(u)("ap.apTable.setting.selectAll")),1)]),_:1},8,["onClick"])],2),e.createVNode(e.unref(r.RadioGroup),{value:c.value,"onUpdate:value":t[0]||(t[0]=a=>c.value=a)},{default:e.withCtx(()=>[e.createVNode(e.unref(r.RadioButton),{value:"small"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("ap.apTable.setting.sizeSmall")),1)]),_:1}),e.createVNode(e.unref(r.RadioButton),{value:"middle"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("ap.apTable.setting.sizeNormal")),1)]),_:1})]),_:1},8,["value"])],2),e.createElementVNode("div",ce,[e.createVNode(e.unref(r.Divider),{dashed:"",style:{margin:"0px"}})]),e.createVNode(re.default,{class:e.normalizeClass(e.unref(_)("center","content")),value:e.unref(s)},null,8,["class","value"])],2),e.createVNode(e.unref(r.Divider),{type:"vertical",style:{height:"100%",margin:"0px"}}),e.createElementVNode("div",{class:e.normalizeClass(e.unref(p)("right"))},[e.createVNode(ue.default,{value:e.unref(s),"onUpdate:value":t[1]||(t[1]=a=>e.isRef(s)?s.value=a:null),onReset:U},null,8,["value"])],2)],2),[[e.vShow,V.value]])]),_:1},8,["open","title","wrap-class-name","ok-text"])],64))}});exports.default=de;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const B=require("@aplus-frontend/antdv/es/theme/internal"),c=require("lodash-unified"),s=require("vue");require("../../config-provider/index.js");const k=require("../../utils/index.js"),F=require("../components/setting/utils.js"),M=require("../context.js"),J=require("../utils.js"),P=require("../../config-provider/hooks/use-locale.js"),U=require("../../config-provider/hooks/use-namespace.js");function W(r,e,n,a){return a?a.fixed:e?e.fixed:n&&"fixed"in n?n.fixed:c.isBoolean(r.fixed)?r.fixed?"left":void 0:r.fixed}const x=Number.MAX_SAFE_INTEGER,b=k.randomStr();function C(r,e){const n=c.isNumber(r.order)?r.order:x;let a=c.isNumber(e.order)?e.order:x;return r.fixed==="right"&&e.fixed!=="right"&&(a=n-1),e.fixed==="left"&&r.fixed!=="left"&&(a=n-1),n-a}function G(r,e){e&&r.removeItem(e)}function y(r,e){if(!e)return[];const n=r.getItem(e);if(!n)return[];const a=JSON.parse(n);return Array.isArray(a)?a:(G(r,e),[])}function q(r,e){if(c.isObject(r)&&c.isObject(e))return c.mergeWith({},r,e,q)}const R=(r,e,n)=>{const{columnsBackup:a,size:f}=M.useInjectApTable(),{t:A}=P.useLocale(),{be:N}=U.useNamespace("ap-table"),[X,I]=B.useToken(),m=s.ref(),u=s.ref([]),z=s.watch(()=>a?.value,(t,i)=>{t?.length&&!i?.length&&(u.value=T(y(localStorage,s.unref(e))),z?.())},{immediate:!0});s.watch([a,f],([t,i])=>{t&&(m.value={label:"basic_template",columnState:d(t),key:b,size:i})},{immediate:!0,deep:!0}),s.watch(()=>e.value,t=>{const i=T(y(localStorage,t));u.value=i,m.value={label:"basic_template",columnState:d(a?.value||[]),key:b,size:f?.value},n(i??[])});function T(t){return t.length?t.map(i=>({...i,columnState:d(a.value,i.columnState,!1)})):[{label:A("ap.apTable.setting.defaultTemplate"),key:r.getActiveKey?.("DEFAULT_TEMPLATE")??k.randomStr(),size:f?.value,columnState:d(a?.value||[])}]}function d(t,i={},l=!0){const v=c.mergeWith({},l?r.defaultValue||{}:{},i,q);function h(w,L,j){return w.map(o=>{const S=L?.[o.key]||{},g={key:o.key,label:c.isString(o.title)?J.getTableTitle(o,N("table-header","title"),void 0,I.value.colorTextTertiary):o.title,show:!0,fixed:W(o,i[o.key],l?r.defaultValue?.[o.key]:void 0,j),disabled:!1,...c.omit(S,["children","fixed"])};return g.children=o.children?.length?h(o.children,S.children,g):void 0,g}).sort(C)}return h(t||[],v)}function p(t){if(s.unref(e)){const i=t.map(l=>({...l,columnState:F.getColumnStateString(l.columnState)}));localStorage.setItem(s.unref(e),JSON.stringify(i))}}function E(t){u.value.push(t)}function O(t){const i=u.value.findIndex(l=>l.key===t);u.value.splice(i,1)}function _(t,i){const l=u.value.findIndex(v=>v.key===t);return u.value[l]={...u.value[l],...i},u.value[l]}return s.watch(()=>u.value,t=>{t.length&&p(t)},{deep:!0,immediate:!0}),{basicTemplate:m,customizeTemplateList:u,syncTemplateListToStorage:p,addTemplate:E,deleteTemplate:O,updateTemplate:_}};exports.useTableTemplateStorage=R;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const B=require("@aplus-frontend/antdv/es/theme/internal"),c=require("lodash-unified"),s=require("vue");require("../../config-provider/index.js");const q=require("../../utils/index.js"),F=require("../components/setting/utils.js"),M=require("../context.js"),J=require("../utils.js"),P=require("../../config-provider/hooks/use-locale.js"),U=require("../../config-provider/hooks/use-namespace.js");function W(r,e,n,a){return a?a.fixed:e?e.fixed:n&&"fixed"in n?n.fixed:c.isBoolean(r.fixed)?r.fixed?"left":void 0:r.fixed}const b=Number.MAX_SAFE_INTEGER,y=q.randomStr();function C(r,e){const n=c.isNumber(r.order)?r.order:b;let a=c.isNumber(e.order)?e.order:b;return r.fixed==="right"&&e.fixed!=="right"&&(a=n-1),e.fixed==="left"&&r.fixed!=="left"&&(a=n-1),n-a}function G(r,e){e&&r.removeItem(e)}function k(r,e){if(!e)return[];const n=r.getItem(e);if(!n)return[];const a=JSON.parse(n);return Array.isArray(a)?a:(G(r,e),[])}function A(r,e){if(c.isObject(r)&&c.isObject(e))return c.mergeWith({},r,e,A)}const R=(r,e,n)=>{const{columnsBackup:a,size:f}=M.useInjectApTable(),{t:N}=P.useLocale(),{be:I}=U.useNamespace("ap-table"),[X,z]=B.useToken(),m=s.ref(),u=s.ref([]);let T;T=s.watch(()=>a?.value,(t,i)=>{t?.length&&!i?.length&&(u.value=p(k(localStorage,s.unref(e))),T?.())},{immediate:!0}),s.watch([a,f],([t,i])=>{t&&(m.value={label:"basic_template",columnState:d(t),key:y,size:i})},{immediate:!0,deep:!0}),s.watch(()=>e.value,t=>{const i=p(k(localStorage,t));u.value=i,m.value={label:"basic_template",columnState:d(a?.value||[]),key:y,size:f?.value},n(i??[])});function p(t){return t.length?t.map(i=>({...i,columnState:d(a.value,i.columnState,!1)})):[{label:N("ap.apTable.setting.defaultTemplate"),key:r.getActiveKey?.("DEFAULT_TEMPLATE")??q.randomStr(),size:f?.value,columnState:d(a?.value||[])}]}function d(t,i={},l=!0){const v=c.mergeWith({},l?r.defaultValue||{}:{},i,A);function S(w,L,j){return w.map(o=>{const x=L?.[o.key]||{},g={key:o.key,label:c.isString(o.title)?J.getTableTitle(o,I("table-header","title"),void 0,z.value.colorTextTertiary):o.title,show:!0,fixed:W(o,i[o.key],l?r.defaultValue?.[o.key]:void 0,j),disabled:!1,...c.omit(x,["children","fixed"])};return g.children=o.children?.length?S(o.children,x.children,g):void 0,g}).sort(C)}return S(t||[],v)}function h(t){if(s.unref(e)){const i=t.map(l=>({...l,columnState:F.getColumnStateString(l.columnState)}));localStorage.setItem(s.unref(e),JSON.stringify(i))}}function E(t){u.value.push(t)}function O(t){const i=u.value.findIndex(l=>l.key===t);u.value.splice(i,1)}function _(t,i){const l=u.value.findIndex(v=>v.key===t);return u.value[l]={...u.value[l],...i},u.value[l]}return s.watch(()=>u.value,t=>{t.length&&h(t)},{deep:!0,immediate:!0}),{basicTemplate:m,customizeTemplateList:u,syncTemplateListToStorage:h,addTemplate:E,deleteTemplate:O,updateTemplate:_}};exports.useTableTemplateStorage=R;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),K=require("@ant-design/icons-vue"),i=require("@aplus-frontend/antdv"),Q=require("@aplus-frontend/icon"),X=require("../../ap-file-preview/index.js");require("../../../config-provider/index.js");const Y=require("../../../utils/index.js"),b=require("../hooks/useOss.js"),Z=require("../style/index.js"),I=require("../utils/accept.js"),x=require("../utils/returnData.js"),ee=require("../../../config-provider/hooks/use-global-config.js"),te=require("../../../config-provider/hooks/use-locale.js"),oe=require("../../../config-provider/hooks/use-namespace.js"),ne={class:"multiple-file-context"},se={key:0},ae={key:1},re=e.defineComponent({__name:"MultipleFile",setup(ce,{expose:P}){const C=ee.useGlobalConfig("downloadCenterTriggerConfig"),{t:r}=te.useLocale(),{b:T}=oe.useNamespace("ap-upload-multiple-file"),D=Z.default("ap-upload"),{put:M}=b.useOss(),R=e.inject("dirName"),S=e.inject("baseDirName"),k=e.inject("accept")||"*",j=e.inject("maxSize")??500,B=e.inject("title")||r("ap.apUpload.uploadFile"),m=e.inject("subTitle"),c=e.inject("maxCount")??10,p=e.inject("uploadingCount"),N=e.inject("beforeUpload"),E=e.inject("customRequest"),f=e.inject("getOssAccess"),L=e.inject("maxSizeErrorMsg"),O=e.inject("maxCountErrorMsg"),V=e.inject("acceptErrorMsg"),U=e.inject("onRemove"),y=e.inject("showUploadErrorMsg"),_=e.inject("bucket"),z=e.inject("showDownload")??!0,g=e.inject("showPreview")??!0,a=e.inject("value"),u=[],w=e.inject("needName"),d=e.ref(null);e.watch(()=>a?.value,function(t){!d?.value?.fileList?.length&&t&&q(t)},{immediate:!0});function q(t){if(!t){l=[],d.value.fileList=[],a.value=void 0,u.splice(0,u.length);return}e.nextTick(()=>{const o=t.map(n=>{const s=x.getPath(w,n),A=x.getName(w,n),v=new File([n],A,{});return v.response=s,v.uid=Y.randomStr(18),v.status="done",v});if(c&&o.length>c){i.message.warning(r("ap.apUpload.fileInitializationException",{maxCount:c}));return}o.forEach(n=>{l.push(n),u.push({uid:n.uid,path:n.response})}),d.value.fileList=o,a.value=t})}P({setValue:q});let l=[],F;function h(t){setTimeout(()=>{const o=d.value.fileList.findIndex(n=>n.uid===t.uid);o>=0&&d.value.fileList.splice(o,1)})}async function $(t){if(c&&c>1&&l.length>=c)return clearTimeout(F),F=setTimeout(()=>{i.message.warning(O||r("ap.apUpload.maxUploadFiles",{maxCount:c}))}),h(t),!1;if(t.size>j*1024*1024)return i.message.warning(L||r("ap.apUpload.maxUploadFileSize",{maxSize:j})),h(t),!1;if(!I.fileMatchesAccept(t,k))return i.message.warning(V||r("ap.apUpload.fileFormatNotSupported")),h(t),!1;if(typeof N=="function"&&await N(t)===!1)return h(t),!1;c&&c===1&&(l=[],a.value=void 0),l.push(t)}async function G(t){if(p.value++,typeof E=="function"){E({onProgress:o=>{setTimeout(()=>{t.onProgress({percent:o})})},onError:o=>{y&&i.message.warning(o||r("ap.apUpload.networkAnomaly")),setTimeout(()=>{t.onError({name:o,message:o})}),p.value--},onSuccess:o=>{setTimeout(()=>{t.onSuccess(o)}),a.value=[...a.value||[],x.getReturnData(w,o,t.file.name)],u.push({uid:t.file.uid,path:o}),p.value--},file:t.file});return}try{const o=await(_?f(_):f()),n=await b.getOssInstance(async()=>o);t.file.oss=n,M({file:t.file,dirName:R,oss:n,successCallBack(s){t.onSuccess(s),a.value=[...a.value||[],x.getReturnData(w,s,t.file.name)],u.push({uid:t.file.uid,path:s}),p.value--},errorCallBack(s){y&&i.message.warning(s||r("ap.apUpload.networkAnomaly")),t.onError({name:s,message:s}),p.value--},progressCallBack(s){t.onProgress({percent:s})},baseDirName:S,bucket:o?.bucket})}catch(o){y&&i.message.warning(typeof o?.message=="string"?o.message:r("ap.apUpload.networkAnomaly")),t.onError({name:o?.message||r("ap.apUpload.networkAnomaly"),message:o?.message||r("ap.apUpload.networkAnomaly")}),p.value--}}function W(t){if(U&&U?.(t),t.response){if(Array.isArray(a.value)){const n=u.findIndex(s=>s.uid===t.uid);n>=0&&(a?.value.splice(n,1),u.splice(n,1)),a.value.length===0&&(a.value=void 0)}}else t?.oss?.pauseUpload();const o=l.findIndex(n=>n.uid===t.uid);return l.splice(o,1),Promise.resolve(!0)}const H=async t=>{if(C.value?.trigger){let o=[t].map(n=>({objectName:n.response,fileName:n.name}));C.value?.trigger?.(o)}else{const o=t.response?.match(/^([^:]+):(.*)$/),n=o?.[1],s=o?.[2]??t.response;(await b.getOssInstance(()=>n?f?.(n):f?.())).downloadFile([{path:s,fileName:t.name}])}},J=t=>{(typeof g=="function"?g(t):g)&&X.ApFilePreview.createFilePreviewModal({src:t.response,fileName:t.name})};return(t,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({[e.unref(T)()]:!0,[e.unref(D)??""]:!0})},[e.createVNode(e.unref(i.Upload),{ref_key:"uploadRef",ref:d,accept:e.unref(k),multiple:"","max-count":e.unref(c),progress:{strokeWidth:3,showInfo:!1,strokeColor:"#0070FF"},"before-upload":$,"custom-request":G,"show-upload-list":{showDownloadIcon:e.unref(z),showRemoveIcon:!0,showPreviewIcon:e.unref(g)},onPreview:J,onRemove:W,onDownload:H},{downloadIcon:e.withCtx(()=>[e.createVNode(e.unref(Q.IconApAdLineDownload),{class:"anticon anticon-vertical-align-bottom"})]),default:e.withCtx(()=>[e.createElementVNode("div",ne,[e.createVNode(e.unref(i.Button),{class:"file-btn"},{default:e.withCtx(()=>[e.createVNode(e.unref(K.UploadOutlined)),e.createTextVNode(" "+e.toDisplayString(e.unref(B)),1)]),_:1}),e.createElementVNode("div",{class:"sub-title",onClick:o[0]||(o[0]=e.withModifiers(()=>{},["stop"]))},[typeof e.unref(m)=="string"?(e.openBlock(),e.createElementBlock("div",se,e.toDisplayString(e.unref(m)||`${e.unref(r)("ap.apUpload.supportExtension")}:${e.unref(I.getAcceptText)(e.unref(k))}`),1)):e.unref(m)?(e.openBlock(),e.createElementBlock("div",ae,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(m))))])):e.createCommentVNode("",!0)])])]),_:1},8,["accept","max-count","show-upload-list"])],2))}});exports.default=re;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),Q=require("@ant-design/icons-vue"),c=require("@aplus-frontend/antdv"),X=require("@aplus-frontend/icon"),Y=require("../../ap-file-preview/index.js");require("../../../config-provider/index.js");const Z=require("../../../utils/index.js"),C=require("../hooks/useOss.js"),ee=require("../style/index.js"),A=require("../utils/accept.js"),x=require("../utils/returnData.js"),te=require("../../../config-provider/hooks/use-global-config.js"),oe=require("../../../config-provider/hooks/use-locale.js"),ne=require("../../../config-provider/hooks/use-namespace.js"),se={class:"multiple-file-context"},ae={key:0},re={key:1},ie=e.defineComponent({__name:"MultipleFile",setup(ce,{expose:D}){const N=te.useGlobalConfig("downloadCenterTriggerConfig"),{t:a}=oe.useLocale(),{b:P}=ne.useNamespace("ap-upload-multiple-file"),S=ee.default("ap-upload"),{put:I}=C.useOss(),R=e.inject("dirName"),B=e.inject("baseDirName"),k=e.inject("accept")||"*",b=e.inject("maxSize")??500,M=e.inject("title")||a("ap.apUpload.uploadFile"),f=e.inject("subTitle"),i=e.inject("maxCount")??10,d=e.inject("uploadingCount"),j=e.inject("beforeUpload"),_=e.inject("customRequest"),g=e.inject("getOssAccess"),L=e.inject("maxSizeErrorMsg"),V=e.inject("maxCountErrorMsg"),O=e.inject("acceptErrorMsg"),E=e.inject("onRemove"),y=e.inject("showUploadErrorMsg"),U=e.inject("bucket"),z=e.inject("showDownload")??!0,l=e.inject("showPreview")??!0,r=e.inject("value"),u=[],w=e.inject("needName"),m=e.ref(null);e.watch(()=>r?.value,function(t){!m?.value?.fileList?.length&&t&&q(t)},{immediate:!0});function q(t){if(!t){p=[],m.value.fileList=[],r.value=void 0,u.splice(0,u.length);return}e.nextTick(()=>{const o=t.map(n=>{const s=x.getPath(w,n),F=x.getName(w,n),v=new File([n],F,{});return v.response=s,v.uid=Z.randomStr(18),v.status="done",v});if(i&&o.length>i){c.message.warning(a("ap.apUpload.fileInitializationException",{maxCount:i}));return}o.forEach(n=>{p.push(n),u.push({uid:n.uid,path:n.response})}),m.value.fileList=o,r.value=t})}D({setValue:q});let p=[],T;function h(t){setTimeout(()=>{const o=m.value.fileList.findIndex(n=>n.uid===t.uid);o>=0&&m.value.fileList.splice(o,1)})}async function $(t){if(i&&i>1&&p.length>=i)return clearTimeout(T),T=setTimeout(()=>{c.message.warning(V||a("ap.apUpload.maxUploadFiles",{maxCount:i}))}),h(t),!1;if(t.size>b*1024*1024)return c.message.warning(L||a("ap.apUpload.maxUploadFileSize",{maxSize:b})),h(t),!1;if(!A.fileMatchesAccept(t,k))return c.message.warning(O||a("ap.apUpload.fileFormatNotSupported")),h(t),!1;if(typeof j=="function"&&await j(t)===!1)return h(t),!1;i&&i===1&&(p=[],r.value=void 0),p.push(t)}async function G(t){if(d.value++,typeof _=="function"){_({onProgress:o=>{setTimeout(()=>{t.onProgress({percent:o})})},onError:o=>{y&&c.message.warning(o||a("ap.apUpload.networkAnomaly")),setTimeout(()=>{t.onError({name:o,message:o})}),d.value--},onSuccess:o=>{setTimeout(()=>{t.onSuccess(o)}),r.value=[...r.value||[],x.getReturnData(w,o,t.file.name)],u.push({uid:t.file.uid,path:o}),d.value--},file:t.file});return}try{const o=await(U?g(U):g()),n=await C.getOssInstance(async()=>o);t.file.oss=n,I({file:t.file,dirName:R,oss:n,successCallBack(s){t.onSuccess(s),r.value=[...r.value||[],x.getReturnData(w,s,t.file.name)],u.push({uid:t.file.uid,path:s}),d.value--},errorCallBack(s){y&&c.message.warning(s||a("ap.apUpload.networkAnomaly")),t.onError({name:s,message:s}),d.value--},progressCallBack(s){t.onProgress({percent:s})},baseDirName:B,bucket:o?.bucket})}catch(o){y&&c.message.warning(typeof o?.message=="string"?o.message:a("ap.apUpload.networkAnomaly")),t.onError({name:o?.message||a("ap.apUpload.networkAnomaly"),message:o?.message||a("ap.apUpload.networkAnomaly")}),d.value--}}function W(t){if(E&&E?.(t),t.response){if(Array.isArray(r.value)){const n=u.findIndex(s=>s.uid===t.uid);n>=0&&(r?.value.splice(n,1),u.splice(n,1)),r.value.length===0&&(r.value=void 0)}}else t?.oss?.pauseUpload();const o=p.findIndex(n=>n.uid===t.uid);return p.splice(o,1),Promise.resolve(!0)}const H=async t=>{if(N.value?.trigger){let o=[t].map(n=>({objectName:n.response,fileName:n.name}));N.value?.trigger?.(o)}else{const o=t.response?.match(/^([^:]+):(.*)$/),n=o?.[1],s=o?.[2]??t.response;(await C.getOssInstance(()=>n?g?.(n):g?.())).downloadFile([{path:s,fileName:t.name}])}},J=t=>{(typeof l=="function"?l(t):l)&&Y.ApFilePreview.createFilePreviewModal({src:t.response,fileName:t.name})},K=t=>(typeof l=="function"?l(t):l)?["done"].includes(t.status):!1;return(t,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({[e.unref(P)()]:!0,[e.unref(S)??""]:!0})},[e.createVNode(e.unref(c.Upload),{ref_key:"uploadRef",ref:m,accept:e.unref(k),multiple:"","max-count":e.unref(i),progress:{strokeWidth:3,showInfo:!1,strokeColor:"#0070FF"},"before-upload":$,"custom-request":G,"show-upload-list":{showDownloadIcon:e.unref(z),showRemoveIcon:!0,showPreviewIcon:e.unref(l)},onPreview:J,onRemove:W,onDownload:H},{downloadIcon:e.withCtx(()=>[e.createVNode(e.unref(X.IconApAdLineDownload),{class:"anticon anticon-vertical-align-bottom"})]),itemRender:e.withCtx(({originNode:n,file:s})=>[e.createVNode(e.unref(c.Tooltip),null,e.createSlots({default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n)))]),_:2},[K(s)?{name:"title",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("ap.apAppendix.previewFile")),1)]),key:"0"}:void 0]),1024)]),default:e.withCtx(()=>[e.createElementVNode("div",se,[e.createVNode(e.unref(c.Button),{class:"file-btn"},{default:e.withCtx(()=>[e.createVNode(e.unref(Q.UploadOutlined)),e.createTextVNode(" "+e.toDisplayString(e.unref(M)),1)]),_:1}),e.createElementVNode("div",{class:"sub-title",onClick:o[0]||(o[0]=e.withModifiers(()=>{},["stop"]))},[typeof e.unref(f)=="string"?(e.openBlock(),e.createElementBlock("div",ae,e.toDisplayString(e.unref(f)||`${e.unref(a)("ap.apUpload.supportExtension")}:${e.unref(A.getAcceptText)(e.unref(k))}`),1)):e.unref(f)?(e.openBlock(),e.createElementBlock("div",re,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(f))))])):e.createCommentVNode("",!0)])])]),_:1},8,["accept","max-count","show-upload-list"])],2))}});exports.default=ie;
@@ -1,2 +1,2 @@
1
- declare const _default: "7.19.0-beta.2";
1
+ declare const _default: "7.19.0";
2
2
  export default _default;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="7.19.0-beta.2";exports.default=e;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="7.19.0";exports.default=e;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aplus-frontend/ui",
3
- "version": "7.19.0-beta.2",
3
+ "version": "7.19.0",
4
4
  "main": "./lib/index.js",
5
5
  "type": "module",
6
6
  "typings": "./lib/index.d.ts",