@glodon-aiot/dataset-annotation 3.10.0-alpha.18 → 3.10.0-snapshot.15

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 (30) hide show
  1. package/dist/dataset-annotation.js +123598 -0
  2. package/dist/dataset-annotation.umd.cjs +1017 -0
  3. package/dist/es/components/DetectionAnnotation/components/LabelMaker/Drawable.mjs +28 -37
  4. package/dist/es/components/OcrAnnotation/MarkKVOCRModal/KVOCRLabelMaker/index.mjs +1 -1
  5. package/dist/es/components/OcrAnnotation/MarkOCRBoxModal/OCRBoxMaker/index.mjs +1 -1
  6. package/dist/es/components/OcrAnnotation/OcrModal/index.mjs +45 -43
  7. package/dist/es/components/PicZipImportModal/index.mjs +220 -219
  8. package/dist/es/components/VLMAnnotationDetail/MarkVLMBoxModal/AttributeDetail/index.mjs +21 -19
  9. package/dist/es/components/VLMAnnotationDetail/MarkVLMBoxModal/QADetail/index.mjs +43 -43
  10. package/dist/es/components/VLMAnnotationDetail/MarkVLMBoxModal/index.mjs +230 -247
  11. package/dist/es/components/VLMAnnotationDetail/VlmModal/index.mjs +64 -68
  12. package/dist/es/components/VLMAnnotationDetail/index.mjs +174 -177
  13. package/dist/es/index.mjs +1 -1
  14. package/dist/example/DatasetAnnotationDemo.d.ts +3 -0
  15. package/dist/example/DemoTabs.d.ts +3 -0
  16. package/dist/example/DetectionDatasetDemo.d.ts +5 -0
  17. package/dist/example/DetectionImageDemo.d.ts +5 -0
  18. package/dist/example/OcrDatasetDemo.d.ts +5 -0
  19. package/dist/example/OcrImageDemo.d.ts +5 -0
  20. package/dist/example/OcrkvcDatasetDemo.d.ts +5 -0
  21. package/dist/example/constant.local.d.ts +6 -0
  22. package/dist/example/index.d.ts +1 -0
  23. package/dist/lib/index.js +3 -3
  24. package/dist/src/components/VLMAnnotationDetail/MarkVLMBoxModal/ImageDetail/index.d.ts +16 -0
  25. package/dist/src/components/VLMAnnotationDetail/MarkVLMBoxModal/OCRBoxMaker/LabelEditorInput.d.ts +12 -0
  26. package/dist/src/components/VLMAnnotationDetail/MarkVLMBoxModal/OCRBoxMaker/LabelEditorItem.d.ts +21 -0
  27. package/dist/src/components/VLMAnnotationDetail/MarkVLMBoxModal/OCRBoxMaker/LableEditor.d.ts +16 -0
  28. package/dist/src/components/VLMAnnotationDetail/MarkVLMBoxModal/OCRBoxMaker/index.d.ts +19 -0
  29. package/dist/src/utils/reactCompatibility.d.ts +5 -0
  30. package/package.json +8 -4
@@ -1,191 +1,192 @@
1
- var ul = Object.defineProperty;
2
- var Oe = Object.getOwnPropertySymbols;
3
- var ml = Object.prototype.hasOwnProperty, fl = Object.prototype.propertyIsEnumerable;
4
- var Ve = (w, e, i) => e in w ? ul(w, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : w[e] = i, je = (w, e) => {
5
- for (var i in e || (e = {}))
6
- ml.call(e, i) && Ve(w, i, e[i]);
7
- if (Oe)
8
- for (var i of Oe(e))
9
- fl.call(e, i) && Ve(w, i, e[i]);
10
- return w;
1
+ var pl = Object.defineProperty;
2
+ var Ve = Object.getOwnPropertySymbols;
3
+ var ul = Object.prototype.hasOwnProperty, ml = Object.prototype.propertyIsEnumerable;
4
+ var Pe = (z, e, s) => e in z ? pl(z, e, { enumerable: !0, configurable: !0, writable: !0, value: s }) : z[e] = s, Me = (z, e) => {
5
+ for (var s in e || (e = {}))
6
+ ul.call(e, s) && Pe(z, s, e[s]);
7
+ if (Ve)
8
+ for (var s of Ve(e))
9
+ ml.call(e, s) && Pe(z, s, e[s]);
10
+ return z;
11
11
  };
12
- var ce = (w, e, i) => new Promise((m, K) => {
13
- var Z = (E) => {
12
+ var ce = (z, e, s) => new Promise((m, K) => {
13
+ var _ = (N) => {
14
14
  try {
15
- U(i.next(E));
15
+ T(s.next(N));
16
16
  } catch (v) {
17
17
  K(v);
18
18
  }
19
- }, h = (E) => {
19
+ }, h = (N) => {
20
20
  try {
21
- U(i.throw(E));
21
+ T(s.throw(N));
22
22
  } catch (v) {
23
23
  K(v);
24
24
  }
25
- }, U = (E) => E.done ? m(E.value) : Promise.resolve(E.value).then(Z, h);
26
- U((i = i.apply(w, e)).next());
25
+ }, T = (N) => N.done ? m(N.value) : Promise.resolve(N.value).then(_, h);
26
+ T((s = s.apply(z, e)).next());
27
27
  });
28
28
  import { jsxs as d, Fragment as de, jsx as l } from "react/jsx-runtime";
29
- import { useContext as hl, useState as r, useRef as gl, useEffect as O } from "react";
30
- import { Form as V, message as R, Modal as H, Button as j, Radio as $, Tooltip as Cl, Space as Pe, Upload as Me, Row as pe, Col as bl, Spin as yl, Result as De } from "antd";
29
+ import { useContext as fl, useState as r, useRef as hl, useEffect as O } from "react";
30
+ import { Form as V, message as $, Modal as H, Button as P, Radio as k, Tooltip as gl, Space as je, Upload as Cl, Row as pe, Col as bl, Spin as yl, Result as De } from "antd";
31
31
  import "./style.less.mjs";
32
- import { InfoCircleOutlined as zl, CloudUploadOutlined as wl, PaperClipOutlined as Sl, DeleteOutlined as Nl, PlusOutlined as El } from "@ant-design/icons";
32
+ import { InfoCircleOutlined as Sl, CloudUploadOutlined as zl, PaperClipOutlined as wl, DeleteOutlined as El, PlusOutlined as Nl } from "@ant-design/icons";
33
33
  import vl from "browser-md5-file";
34
- import { initMinio as Ke, putObjectBuffer as Ze } from "@glodon-aiot/minio";
35
- import xl from "./pic_zip.svg.mjs";
34
+ import { initMinio as Ke, putObjectBuffer as _e } from "@glodon-aiot/minio";
35
+ import xl from "antd/lib/upload/Dragger";
36
+ import Al from "./pic_zip.svg.mjs";
36
37
  import Fl from "./pic_zip_json.svg.mjs";
37
- import Al from "./pic_vlm_json_zip.svg.mjs";
38
+ import Rl from "./pic_vlm_json_zip.svg.mjs";
38
39
  import Bl from "./pic_vlm_zip.svg.mjs";
39
- import { MB as _e, GB as kl } from "../../constant.mjs";
40
- import { fileSuffixToLowerCase as Rl } from "../../utils/index.mjs";
41
- import $l from "../../DatasetContext/index.mjs";
42
- import { EXAMPLE_SRC_ROOT as Ul } from "../../featuresConfig.mjs";
43
- import { getImportConfig as Tl } from "./config.mjs";
44
- let f = 0, G = 0, P = 0, I = 0;
45
- const st = (w) => {
40
+ import { MB as Ze, GB as $l } from "../../constant.mjs";
41
+ import { fileSuffixToLowerCase as kl } from "../../utils/index.mjs";
42
+ import Tl from "../../DatasetContext/index.mjs";
43
+ import { EXAMPLE_SRC_ROOT as Ul, VLM_EXAMPLE_SRC_ROOT as Ll } from "../../featuresConfig.mjs";
44
+ import { getImportConfig as Ol } from "./config.mjs";
45
+ let f = 0, G = 0, M = 0, I = 0;
46
+ const ot = (z) => {
46
47
  const {
47
48
  datasetIam: e,
48
- datasetId: i,
49
+ datasetId: s,
49
50
  currentVersion: m,
50
51
  tenCode: K,
51
- isVisible: Z,
52
+ isVisible: _,
52
53
  markType: h,
53
- setIsVisible: U,
54
- getVersionListRequest: E,
54
+ setIsVisible: T,
55
+ getVersionListRequest: N,
55
56
  onUploadStatusChange: v,
56
57
  setIsConfirm: Q,
57
58
  tableReload: ue,
58
59
  loadVersionData: q,
59
60
  actionAfterFinish: me
60
- } = w, {
61
+ } = z, {
61
62
  services: {
62
63
  cvforceDatahub: p
63
64
  },
64
65
  featuresConfig: {
65
- exampleSrcRoot: fe
66
+ exampleSrcRoot: fe,
67
+ vlmExampleSrcRoot: he
66
68
  } = {
67
- exampleSrcRoot: Ul
69
+ exampleSrcRoot: Ul,
70
+ vlmExampleSrcRoot: Ll
68
71
  }
69
- } = hl($l), [S, Ge] = r(0), [N, Ie] = r(0), [Y, qe] = r([]), [M, Je] = r(), [he, Ll] = r([]), [ee, J] = r(!1), [ge, le] = r(!1), [_, te] = r(!1), [se, We] = r(0), [Ce, Xe] = r(0), [W, be] = r(-1), [ie, Ol] = r([]), [ye, Vl] = r([]), [ze, ne] = r(!1), He = new vl(), [X] = V.useForm(), n = V.useWatch("acceptType", X), A = V.useWatch("labelState", X), [C, we] = r([]), [B, Se] = r([]), [k, Qe] = r(), [Ne, Ee] = r(0), [ve, xe] = r(!1), [jl, Fe] = r(""), [Ye, Ae] = r(!1), [Be, el] = r(
72
+ } = fl(Tl), [w, Ge] = r(0), [E, Ie] = r(0), [Y, qe] = r([]), [j, Xe] = r(), [ge, Vl] = r([]), [ee, X] = r(!1), [Ce, le] = r(!1), [Z, te] = r(!1), [ie, Je] = r(0), [be, We] = r(0), [J, ye] = r(-1), [se, Pl] = r([]), [Se, Ml] = r([]), [ze, ne] = r(!1), He = new vl(), [W] = V.useForm(), n = V.useWatch("acceptType", W), F = V.useWatch("labelState", W), [C, we] = r([]), [R, Ee] = r([]), [B, Qe] = r(), [Ne, ve] = r(0), [xe, Ae] = r(!1), [jl, Fe] = r(""), [Ye, Re] = r(!1), [Be, el] = r(
70
73
  "unlabeled"
71
74
  /* Unlabeled */
72
- ), ae = gl(!0), {
73
- Dragger: ll
74
- } = Me, g = Tl(h), oe = g.imageMimeTypes, ke = g.imageAccept, re = g.maxImageSize;
75
+ ), oe = hl(!0), g = Ol(h), ae = g.imageMimeTypes, $e = g.imageAccept, re = g.maxImageSize;
75
76
  O(() => {
76
- f = 0, G = 0, P = 0, I = 0, te(!1), Z && (ae.current = !1, q && q());
77
- }, [Z]);
78
- const Re = (t, s) => {
79
- var a;
77
+ f = 0, G = 0, M = 0, I = 0, te(!1), _ && (oe.current = !1, q && q());
78
+ }, [_]);
79
+ const ke = (t, i) => {
80
+ var o;
80
81
  if (n === "image") {
81
82
  ne(!0);
82
- let o = 0;
83
- if (f = f + 1, G = G + 1, s.length === 0)
83
+ let a = 0;
84
+ if (f = f + 1, G = G + 1, i.length === 0)
84
85
  return;
85
86
  let u = 0;
86
- const [...c] = s, y = window.URL || window.webkitURL, z = new Image();
87
- z.src = y.createObjectURL(t), z.onload = () => {
87
+ const [...c] = i, y = window.URL || window.webkitURL, S = new Image();
88
+ S.src = y.createObjectURL(t), S.onload = () => {
88
89
  Y.push({
89
90
  name: t.name,
90
- src: z.src,
91
- width: z.width,
92
- height: z.height
91
+ src: S.src,
92
+ width: S.width,
93
+ height: S.height
93
94
  }), qe(Y);
94
- }, s.map((x) => {
95
- const F = oe.some((L) => L === x.type), T = x.size <= re;
96
- F ? T || (o = o + 1, c.splice(c.findIndex((L) => L.name === x.name), 1)) : (u = u + 1, c.splice(c.findIndex((L) => L.name === x.name), 1));
97
- }), c.length > 100 && c.splice(100, c.length), Ge(u), Ie(o), G === s.length && (ne(!0), G = 0);
98
- const b = oe.some((x) => x === t.type), D = t.size <= re;
95
+ }, i.map((x) => {
96
+ const A = ae.some((L) => L === x.type), U = x.size <= re;
97
+ A ? U || (a = a + 1, c.splice(c.findIndex((L) => L.name === x.name), 1)) : (u = u + 1, c.splice(c.findIndex((L) => L.name === x.name), 1));
98
+ }), c.length > 100 && c.splice(100, c.length), Ge(u), Ie(a), G === i.length && (ne(!0), G = 0);
99
+ const b = ae.some((x) => x === t.type), D = t.size <= re;
99
100
  if (b) {
100
101
  if (!D)
101
102
  return !1;
102
103
  } else
103
104
  return !1;
104
105
  } else {
105
- if (t.size > 2 * kl)
106
- return R.error(`${t.name}文件总大小不能超过2G`), !1;
107
- const o = (a = t.name) == null ? void 0 : a.substring(t.name.lastIndexOf("."));
108
- if (n === "zip" && o !== ".zip")
109
- return R.error("存在格式不正确的文件,已自动去除"), !1;
110
- Se((u) => u.length >= 1 ? u : [...u, t]);
106
+ if (t.size > 2 * $l)
107
+ return $.error(`${t.name}文件总大小不能超过2G`), !1;
108
+ const a = (o = t.name) == null ? void 0 : o.substring(t.name.lastIndexOf("."));
109
+ if (n === "zip" && a !== ".zip")
110
+ return $.error("存在格式不正确的文件,已自动去除"), !1;
111
+ Ee((u) => u.length >= 1 ? u : [...u, t]);
111
112
  }
112
113
  return !1;
113
114
  };
114
115
  O(() => {
115
- ze !== !1 && (!S && !N && !f || (f = f - I - S - N, f < 101 ? S > 0 && N > 0 ? (R.error(`${S + N}个文件添加失败,格式、大小或数量不符合要求`), f = f - S - N) : S > 0 && N === 0 ? R.error(`${S}个文件添加失败,格式不符合要求`) : S === 0 && N > 0 ? R.error(`${N}个文件添加失败,单张图片超过${g.maxImageSize / _e}M`) : S === 0 && N === 0 && R.success("校验成功") : S + N === 0 ? (R.error(`${f - 100}个文件添加失败,超过数量限制`), f = 100) : (R.error(`${f - 100 + S + N}个文件添加失败,格式、大小或数量不符合要求`), f = f < 101 ? f : 100), ne(!1)));
116
+ ze !== !1 && (!w && !E && !f || (f = f - I - w - E, f < 101 ? w > 0 && E > 0 ? ($.error(`${w + E}个文件添加失败,格式、大小或数量不符合要求`), f = f - w - E) : w > 0 && E === 0 ? $.error(`${w}个文件添加失败,格式不符合要求`) : w === 0 && E > 0 ? $.error(`${E}个文件添加失败,单张图片超过${g.maxImageSize / Ze}M`) : w === 0 && E === 0 && $.success("校验成功") : w + E === 0 ? ($.error(`${f - 100}个文件添加失败,超过数量限制`), f = 100) : ($.error(`${f - 100 + w + E}个文件添加失败,格式、大小或数量不符合要求`), f = f < 101 ? f : 100), ne(!1)));
116
117
  }, [ze]);
117
- const tl = (t) => {
118
- const s = t.originFileObj;
119
- return new Promise((a, o) => {
120
- He.md5(s, (u, c) => {
121
- u && o(u), il(c, s), a(c);
118
+ const ll = (t) => {
119
+ const i = t.originFileObj;
120
+ return new Promise((o, a) => {
121
+ He.md5(i, (u, c) => {
122
+ u && a(u), il(c, i), o(c);
122
123
  });
123
124
  });
124
- }, sl = () => ce(void 0, null, function* () {
125
+ }, tl = () => ce(void 0, null, function* () {
125
126
  if (!C)
126
127
  return;
127
128
  const t = [];
128
- for (let s = 0; s < C.length; s++) {
129
- const a = C[s], o = yield tl(a);
130
- t.push(o);
129
+ for (let i = 0; i < C.length; i++) {
130
+ const o = C[i], a = yield ll(o);
131
+ t.push(a);
131
132
  }
132
- !i || t.length === 0 || p == null || p.getDeduplication(t, i).then((s) => {
133
- Je(s), Ae(!1);
133
+ !s || t.length === 0 || p == null || p.getDeduplication(t, s).then((i) => {
134
+ Xe(i), Re(!1);
134
135
  });
135
136
  });
136
137
  O(() => {
137
- sl();
138
+ tl();
138
139
  }, [C]);
139
- const il = (t, s) => {
140
- s.md5 = t, he.push(s);
141
- }, $e = ({
140
+ const il = (t, i) => {
141
+ i.md5 = t, ge.push(i);
142
+ }, Te = ({
142
143
  fileList: t
143
144
  }) => {
144
145
  if (n === "zip")
145
146
  return;
146
- Ae(!0);
147
- const s = t.filter((a) => a.size && a.size <= re ? oe.some((o) => a.type === o) : !1);
148
- s.splice(100, s.length), s.length < C.length ? (we(s), I++) : (P = P - I, I = 0, P++, P == s.length && we(s), P > s.length && (P = s.length));
147
+ Re(!0);
148
+ const i = t.filter((o) => o.size && o.size <= re ? ae.some((a) => o.type === a) : !1);
149
+ i.splice(100, i.length), i.length < C.length ? (we(i), I++) : (M = M - I, I = 0, M++, M == i.length && we(i), M > i.length && (M = i.length));
149
150
  }, Ue = () => {
150
- n === "zip" && (ae.current = !0), U(!1);
151
- }, nl = () => {
151
+ n === "zip" && (oe.current = !0), T(!1);
152
+ }, sl = () => {
152
153
  if (n === "image") {
153
- if (!M)
154
+ if (!j)
154
155
  return;
155
- let t = 0, s = 0;
156
- if (M.duplicated.length !== 0 && M.duplicated.map((a, o) => {
156
+ let t = 0, i = 0;
157
+ if (j.duplicated.length !== 0 && j.duplicated.map((o, a) => {
157
158
  var y;
158
- const u = M.duplicatedMd5[o], c = ((y = C.find((z) => {
159
+ const u = j.duplicatedMd5[a], c = ((y = C.find((S) => {
159
160
  var b;
160
- return ((b = z.originFileObj) == null ? void 0 : b.md5) === u;
161
+ return ((b = S.originFileObj) == null ? void 0 : b.md5) === u;
161
162
  })) == null ? void 0 : y.name) || "";
162
- ie.push({
163
+ se.push({
163
164
  labels: [],
164
- fileKey: a,
165
+ fileKey: o,
165
166
  sampleFileName: {
166
167
  name: c
167
168
  }
168
169
  });
169
- }), M.unduplicated.length !== 0) {
170
- const a = M.unduplicated.map((o) => new Promise((u) => {
171
- const c = he.find((T) => T.md5 === o);
170
+ }), j.unduplicated.length !== 0) {
171
+ const o = j.unduplicated.map((a) => new Promise((u) => {
172
+ const c = ge.find((U) => U.md5 === a);
172
173
  if (!c)
173
174
  return u();
174
- const y = c.name, z = y.substring(y.indexOf(".")), b = Y.find((T) => T.name === y), D = {
175
+ const y = c.name, S = y.substring(y.indexOf(".")), b = Y.find((U) => U.name === y), D = {
175
176
  "Content-Type": "application/octet-stream",
176
177
  "X-Amz-Meta-Width": b == null ? void 0 : b.width,
177
178
  "X-Amz-Meta-Height": b == null ? void 0 : b.height
178
- }, x = `dataset/${i}/sample/${o}${Rl(z)}`;
179
+ }, x = `dataset/${s}/sample/${a}${kl(S)}`;
179
180
  delete c.md5;
180
- const F = new FileReader();
181
- F.readAsArrayBuffer(c), F.onload = (T) => {
181
+ const A = new FileReader();
182
+ A.readAsArrayBuffer(c), A.onload = (U) => {
182
183
  Ke({
183
184
  endPoint: e == null ? void 0 : e.endpoints[0],
184
185
  useSSL: e == null ? void 0 : e.useSSL,
185
186
  accessKey: e == null ? void 0 : e.accessKey,
186
187
  secretKey: e == null ? void 0 : e.secretKey
187
- }), Ze(K, x, T.target.result, D, (L, Pl) => {
188
- J(!0), s += 1, L && (t += 1, Xe(t)), We(s), ye.push({
188
+ }), _e(K, x, U.target.result, D, (L, Dl) => {
189
+ X(!0), i += 1, L && (t += 1, We(t)), Je(i), Se.push({
189
190
  labels: [],
190
191
  fileKey: `${K}/${x}`,
191
192
  sampleFileName: {
@@ -195,109 +196,109 @@ const st = (w) => {
195
196
  });
196
197
  };
197
198
  }));
198
- Promise.all(a).then(() => {
199
- !i || !m || setTimeout(() => {
200
- p == null || p.postDatasetsIdVersionsVidSamples(i, m.id, {
201
- samples: ye.concat(ie)
199
+ Promise.all(o).then(() => {
200
+ !s || !m || setTimeout(() => {
201
+ p == null || p.postDatasetsIdVersionsVidSamples(s, m.id, {
202
+ samples: Se.concat(se)
202
203
  }).then(() => {
203
- p.getDatasetsIdVersionsVid(i, m.id).then((o) => {
204
- be(o.samplesCount - m.samplesCount);
204
+ p.getDatasetsIdVersionsVid(s, m.id).then((a) => {
205
+ ye(a.samplesCount - m.samplesCount);
205
206
  }), Q(!0), v && v(!1);
206
207
  });
207
208
  }, 100);
208
209
  });
209
210
  } else {
210
- if (!i || !m)
211
+ if (!s || !m)
211
212
  return;
212
- p == null || p.postDatasetsIdVersionsVidSamples(i, m.id, {
213
- samples: ie
213
+ p == null || p.postDatasetsIdVersionsVidSamples(s, m.id, {
214
+ samples: se
214
215
  }).then(() => {
215
- p.getDatasetsIdVersionsVid(i, m.id).then((a) => {
216
- be(a.samplesCount - m.samplesCount);
216
+ p.getDatasetsIdVersionsVid(s, m.id).then((o) => {
217
+ ye(o.samplesCount - m.samplesCount);
217
218
  }), Q(!0), v && v(!1);
218
219
  });
219
220
  }
220
221
  } else
221
- al(B);
222
- }, al = (t) => {
223
- !i || !m || t.map((s, a) => {
224
- var z;
225
- const o = {
222
+ nl(R);
223
+ }, nl = (t) => {
224
+ !s || !m || t.map((i, o) => {
225
+ var S;
226
+ const a = {
226
227
  "Content-Type": "application/octet-stream"
227
228
  }, u = {
228
229
  endPoint: e == null ? void 0 : e.endpoints[0],
229
230
  useSSL: e == null ? void 0 : e.useSSL,
230
231
  accessKey: e == null ? void 0 : e.accessKey,
231
232
  secretKey: e == null ? void 0 : e.secretKey
232
- }, c = (e == null ? void 0 : e.prefix) + ((z = t[0]) == null ? void 0 : z.name), y = new FileReader();
233
- y.readAsArrayBuffer(s), y.onload = (b) => {
234
- Ke(u), Ze(e == null ? void 0 : e.bucket, c, b.target.result, o, (D, x) => {
233
+ }, c = (e == null ? void 0 : e.prefix) + ((S = t[0]) == null ? void 0 : S.name), y = new FileReader();
234
+ y.readAsArrayBuffer(i), y.onload = (b) => {
235
+ Ke(u), _e(e == null ? void 0 : e.bucket, c, b.target.result, a, (D, x) => {
235
236
  if (D)
236
237
  console.log(D);
237
238
  else {
238
- if (ae.current)
239
+ if (oe.current)
239
240
  return;
240
- J(!0), h === "vlm" ? p == null || p.postVlmUploadPicsZip(i, m.id, {
241
+ X(!0), h === "vlm" ? p == null || p.postVlmUploadPicsZip(s, m.id, {
241
242
  zipUrl: (e == null ? void 0 : e.bucket) + "/" + c,
242
- type: A === "labeled" ? 2 : 1
243
- }).then((F) => {
244
- Te(F), Fe(F);
245
- }) : p == null || p.postUploadPicsZip(i, m.id, je({
243
+ type: F === "labeled" ? 2 : 1
244
+ }).then((A) => {
245
+ Le(A), Fe(A);
246
+ }) : p == null || p.postUploadPicsZip(s, m.id, Me({
246
247
  zipUrls: [(e == null ? void 0 : e.bucket) + "/" + c]
247
248
  }, (h === "ocr" || h === "vlm") && {
248
- type: A === "labeled" ? 1 : 0
249
- })).then((F) => {
250
- Te(F), Fe(F);
249
+ type: F === "labeled" ? 1 : 0
250
+ })).then((A) => {
251
+ Le(A), Fe(A);
251
252
  });
252
253
  }
253
254
  });
254
255
  };
255
256
  });
256
- }, Te = (t) => ce(void 0, null, function* () {
257
- var s;
258
- if (!(!i || !m || !p))
257
+ }, Le = (t) => ce(void 0, null, function* () {
258
+ var i;
259
+ if (!(!s || !m || !p))
259
260
  try {
260
- const a = yield p.checkFileResult(i, m.id, {
261
+ const o = yield p.checkFileResult(s, m.id, {
261
262
  taskId: t
262
- }, 5e3, h, (o) => {
263
- Ee(o);
263
+ }, 5e3, h, (a) => {
264
+ ve(a);
264
265
  });
265
- a && Qe(JSON.parse(a));
266
- } catch (a) {
267
- if (((s = a.cause) == null ? void 0 : s.code) === -101) {
268
- xe(!0);
266
+ o && Qe(JSON.parse(o));
267
+ } catch (o) {
268
+ if (((i = o.cause) == null ? void 0 : i.code) === -101) {
269
+ Ae(!0);
269
270
  return;
270
271
  }
271
272
  }
272
273
  });
273
274
  O(() => {
274
- k && (Ee(100), le(!0));
275
- }, [k]), O(() => {
276
- se !== 0 && (Q(!1), v && v(!0));
277
- }, [se]), O(() => {
278
- W !== -1 && (le(!0), te(!1));
279
- }, [W]);
275
+ B && (ve(100), le(!0));
276
+ }, [B]), O(() => {
277
+ ie !== 0 && (Q(!1), v && v(!0));
278
+ }, [ie]), O(() => {
279
+ J !== -1 && (le(!0), te(!1));
280
+ }, [J]);
280
281
  const ol = () => {
281
- Le(), le(!1), me && me();
282
- }, Le = () => {
283
- E(), J(!1), U(!1), ue && ue(), q && q();
284
- }, rl = /* @__PURE__ */ d("div", {
285
- children: [/* @__PURE__ */ l(El, {}), /* @__PURE__ */ l("div", {
282
+ Oe(), le(!1), me && me();
283
+ }, Oe = () => {
284
+ N(), X(!1), T(!1), ue && ue(), q && q();
285
+ }, al = /* @__PURE__ */ d("div", {
286
+ children: [/* @__PURE__ */ l(Nl, {}), /* @__PURE__ */ l("div", {
286
287
  style: {
287
288
  marginTop: 8
288
289
  },
289
290
  children: "添加图片"
290
291
  })]
291
- }), cl = (t) => {
292
- const s = B.filter((a) => a.uid !== t.uid);
293
- Se(s);
292
+ }), rl = (t) => {
293
+ const i = R.filter((o) => o.uid !== t.uid);
294
+ Ee(i);
295
+ }, cl = () => {
296
+ F === "labeled" ? h === "vlm" ? window.location.href = `${he}/%E6%9C%89%E6%A0%87%E6%B3%A8%E7%A4%BA%E4%BE%8B.zip` : window.location.href = `${fe}/%E6%A0%87%E6%B3%A8%E6%A0%BC%E5%BC%8F%E7%A4%BA%E4%BE%8B.zip` : h === "vlm" ? window.location.href = `${he}/%E6%97%A0%E6%A0%87%E6%B3%A8%E7%A4%BA%E4%BE%8B.zip` : window.location.href = `${fe}/%E7%A4%BA%E4%BE%8B%E5%8E%8B%E7%BC%A9%E5%8C%85.zip`;
294
297
  }, dl = () => {
295
- A === "labeled" ? h === "vlm" ? window.location.href = "https://sjzn-cv-data.obs.cn-north-4.myhuaweicloud.com:443/dataset_data/%E6%9C%89%E6%A0%87%E6%B3%A8%E7%A4%BA%E4%BE%8B.zip" : window.location.href = `${fe}/%E6%A0%87%E6%B3%A8%E6%A0%BC%E5%BC%8F%E7%A4%BA%E4%BE%8B.zip` : h === "vlm" ? window.location.href = "https://sjzn-cv-data.obs.cn-north-4.myhuaweicloud.com:443/dataset_data/%E6%97%A0%E6%A0%87%E6%B3%A8%E7%A4%BA%E4%BE%8B.zip" : window.location.href = `${fe}/%E7%A4%BA%E4%BE%8B%E5%8E%8B%E7%BC%A9%E5%8C%85.zip`;
296
- }, pl = () => {
297
- E(), xe(!1), J(!1), U(!1);
298
+ N(), Ae(!1), X(!1), T(!1);
298
299
  };
299
300
  return O(() => {
300
- Be === "labeled" && X.setFieldsValue({
301
+ Be === "labeled" && W.setFieldsValue({
301
302
  labelFormat: g.labelFormat || "json",
302
303
  acceptType: "zip"
303
304
  /* Zip */
@@ -307,29 +308,29 @@ const st = (w) => {
307
308
  className: "upload-pics",
308
309
  width: 600,
309
310
  title: "导入数据",
310
- open: Z,
311
+ open: _,
311
312
  destroyOnClose: !0,
312
313
  onCancel: () => Ue(),
313
314
  maskClosable: !1,
314
315
  centered: !0,
315
- footer: [/* @__PURE__ */ l(j, {
316
+ footer: [/* @__PURE__ */ l(P, {
316
317
  onClick: Ue,
317
318
  children: "取消"
318
- }, "cancel"), /* @__PURE__ */ l(j, {
319
+ }, "cancel"), /* @__PURE__ */ l(P, {
319
320
  type: "primary",
320
321
  htmlType: "submit",
321
322
  form: "importModal",
322
- disabled: n === "image" && !C.length || n === "zip" && !B.length || ee && Ne == 0 || Ye,
323
- loading: _ == !0,
323
+ disabled: n === "image" && !C.length || n === "zip" && !R.length || ee && Ne == 0 || Ye,
324
+ loading: Z == !0,
324
325
  onClick: () => {
325
- nl(), te(!0);
326
+ sl(), te(!0);
326
327
  },
327
328
  children: "导入"
328
329
  }, "confirm")],
329
330
  children: /* @__PURE__ */ d(V, {
330
331
  className: "file-form",
331
332
  preserve: !1,
332
- form: X,
333
+ form: W,
333
334
  initialValues: {
334
335
  acceptType: "image",
335
336
  labelState: "unlabeled"
@@ -349,19 +350,19 @@ const st = (w) => {
349
350
  required: !0,
350
351
  message: "请选择数据标注状态"
351
352
  }],
352
- children: /* @__PURE__ */ d($.Group, {
353
- disabled: _,
353
+ children: /* @__PURE__ */ d(k.Group, {
354
+ disabled: Z,
354
355
  onChange: (t) => {
355
356
  el(t.target.value);
356
357
  },
357
- children: [/* @__PURE__ */ l($, {
358
+ children: [/* @__PURE__ */ l(k, {
358
359
  value: "unlabeled",
359
360
  children: "无标注信息"
360
- }), /* @__PURE__ */ d($, {
361
+ }), /* @__PURE__ */ d(k, {
361
362
  value: "labeled",
362
- children: ["有标注信息", h === "vlm" && /* @__PURE__ */ l(Cl, {
363
+ children: ["有标注信息", h === "vlm" && /* @__PURE__ */ l(gl, {
363
364
  title: "支持上传带OCR标注信息的数据",
364
- children: /* @__PURE__ */ l(zl, {
365
+ children: /* @__PURE__ */ l(Sl, {
365
366
  style: {
366
367
  cursor: "pointer",
367
368
  marginLeft: 4,
@@ -371,16 +372,16 @@ const st = (w) => {
371
372
  })]
372
373
  })]
373
374
  })
374
- }), A === "labeled" && /* @__PURE__ */ l(V.Item, {
375
+ }), F === "labeled" && /* @__PURE__ */ l(V.Item, {
375
376
  label: "标注格式",
376
377
  name: "labelFormat",
377
378
  rules: [{
378
379
  required: !0,
379
380
  message: "请选择标注格式"
380
381
  }],
381
- children: /* @__PURE__ */ l($.Group, {
382
- disabled: _,
383
- children: /* @__PURE__ */ l($, {
382
+ children: /* @__PURE__ */ l(k.Group, {
383
+ disabled: Z,
384
+ children: /* @__PURE__ */ l(k, {
384
385
  value: g.labelFormat || "json",
385
386
  children: g.labelFormat || "json"
386
387
  })
@@ -392,38 +393,38 @@ const st = (w) => {
392
393
  required: !0,
393
394
  message: "请选择导入方式"
394
395
  }],
395
- children: /* @__PURE__ */ d($.Group, {
396
- disabled: _,
397
- children: [A !== "labeled" && /* @__PURE__ */ l($.Button, {
396
+ children: /* @__PURE__ */ d(k.Group, {
397
+ disabled: Z,
398
+ children: [F !== "labeled" && /* @__PURE__ */ l(k.Button, {
398
399
  value: "image",
399
400
  children: "上传图片"
400
- }), /* @__PURE__ */ l($.Button, {
401
+ }), /* @__PURE__ */ l(k.Button, {
401
402
  value: "zip",
402
403
  children: "上传压缩包"
403
404
  })]
404
405
  })
405
406
  }), /* @__PURE__ */ d("div", {
406
407
  className: "file-upload",
407
- children: [(n === "image" && !C.length || n === "zip") && /* @__PURE__ */ d(ll, {
408
+ children: [(n === "image" && !C.length || n === "zip") && /* @__PURE__ */ d(xl, {
408
409
  name: "file",
409
410
  showUploadList: !1,
410
411
  multiple: !0,
411
- beforeUpload: Re,
412
- accept: n === "zip" ? ".zip" : ke,
412
+ beforeUpload: ke,
413
+ accept: n === "zip" ? ".zip" : $e,
413
414
  maxCount: n === "zip" ? 1 : void 0,
414
- onChange: $e,
415
- disabled: n === "zip" ? B.length === 1 : !1,
415
+ onChange: Te,
416
+ disabled: n === "zip" ? R.length === 1 : !1,
416
417
  children: [/* @__PURE__ */ l("span", {
417
418
  className: "file-upload-icon",
418
- children: /* @__PURE__ */ l(wl, {})
419
- }), /* @__PURE__ */ d(Pe, {
419
+ children: /* @__PURE__ */ l(zl, {})
420
+ }), /* @__PURE__ */ d(je, {
420
421
  className: "file-upload-action",
421
- children: [n === "image" && "拖拽图片至此,或者", n === "zip" && "拖拽包含“图片”的压缩包至此,或者", /* @__PURE__ */ l(j, {
422
+ children: [n === "image" && "拖拽图片至此,或者", n === "zip" && "拖拽包含“图片”的压缩包至此,或者", /* @__PURE__ */ l(P, {
422
423
  type: "link",
423
424
  style: {
424
425
  padding: 0
425
426
  },
426
- disabled: n === "zip" ? B.length === 1 : !1,
427
+ disabled: n === "zip" ? R.length === 1 : !1,
427
428
  children: n === "image" ? "上传图片" : "上传压缩包"
428
429
  })]
429
430
  }), n === "image" && /* @__PURE__ */ d("div", {
@@ -433,7 +434,7 @@ const st = (w) => {
433
434
  },
434
435
  children: [/* @__PURE__ */ d("div", {
435
436
  className: "item-upload-desc item-upload-desc__1",
436
- children: ["1. 支持", g.imageFormatsText, "格式,单张图片不超过", g.maxImageSize / _e, "M;"]
437
+ children: ["1. 支持", g.imageFormatsText, "格式,单张图片不超过", g.maxImageSize / Ze, "M;"]
437
438
  }), /* @__PURE__ */ l("div", {
438
439
  className: "item-upload-desc",
439
440
  children: "2. 单次上传最多可选择100个文件。"
@@ -446,41 +447,41 @@ const st = (w) => {
446
447
  children: [/* @__PURE__ */ l("div", {
447
448
  className: "item-upload-desc item-upload-desc__1",
448
449
  children: "1. 仅支持.zip格式,单个压缩包不超过2G;"
449
- }), A === "labeled" ? /* @__PURE__ */ l(de, {
450
- children: g.zipUploadTexts.labeled.description.map((t, s) => /* @__PURE__ */ d("div", {
450
+ }), F === "labeled" ? /* @__PURE__ */ l(de, {
451
+ children: g.zipUploadTexts.labeled.description.map((t, i) => /* @__PURE__ */ d("div", {
451
452
  className: "item-upload-desc",
452
- children: [s + 2, ". ", t]
453
- }, s))
453
+ children: [i + 2, ". ", t]
454
+ }, i))
454
455
  }) : /* @__PURE__ */ d("div", {
455
456
  className: "item-upload-desc",
456
457
  children: ["2. ", g.zipUploadTexts.unlabeled.description[0]]
457
458
  }), /* @__PURE__ */ d("div", {
458
459
  className: "item-upload-desc",
459
- children: [A === "labeled" ? g.zipUploadTexts.labeled.description.length + 2 : 3, ". 单次仅可上传1个文件。"]
460
+ children: [F === "labeled" ? g.zipUploadTexts.labeled.description.length + 2 : 3, ". 单次仅可上传1个文件。"]
460
461
  })]
461
462
  })]
462
463
  }), n === "image" && C.length ? /* @__PURE__ */ l("div", {
463
464
  className: "picture-upload",
464
- children: /* @__PURE__ */ l(Me, {
465
+ children: /* @__PURE__ */ l(Cl, {
465
466
  listType: "picture-card",
466
467
  fileList: C,
467
468
  multiple: !0,
468
469
  showUploadList: {
469
470
  showPreviewIcon: !1
470
471
  },
471
- beforeUpload: Re,
472
- accept: ke,
473
- onChange: $e,
474
- children: C.length < 100 ? rl : null
472
+ beforeUpload: ke,
473
+ accept: $e,
474
+ onChange: Te,
475
+ children: C.length < 100 ? al : null
475
476
  })
476
477
  }) : /* @__PURE__ */ l(de, {}), n === "zip" && /* @__PURE__ */ d("div", {
477
478
  className: "upload-wrapper",
478
- children: [B != null && B.length ? /* @__PURE__ */ l("div", {
479
+ children: [R != null && R.length ? /* @__PURE__ */ l("div", {
479
480
  className: "upload-main",
480
481
  children: /* @__PURE__ */ l(pe, {
481
482
  gutter: [24, 8],
482
483
  className: "upload-pannel",
483
- children: B.map((t) => /* @__PURE__ */ l(bl, {
484
+ children: R.map((t) => /* @__PURE__ */ l(bl, {
484
485
  span: 24,
485
486
  className: "upload-item",
486
487
  children: /* @__PURE__ */ d(pe, {
@@ -490,17 +491,17 @@ const st = (w) => {
490
491
  align: "middle",
491
492
  children: [/* @__PURE__ */ l("span", {
492
493
  className: "upload-item-file-icon",
493
- children: /* @__PURE__ */ l(Sl, {})
494
+ children: /* @__PURE__ */ l(wl, {})
494
495
  }), /* @__PURE__ */ l("span", {
495
496
  className: "upload-item-name",
496
497
  children: t.name
497
498
  })]
498
- }), /* @__PURE__ */ l(j, {
499
+ }), /* @__PURE__ */ l(P, {
499
500
  className: "upload-item-upload-delete",
500
501
  type: "link",
501
- disabled: _,
502
- onClick: () => cl(t),
503
- children: /* @__PURE__ */ l(Nl, {})
502
+ disabled: Z,
503
+ onClick: () => rl(t),
504
+ children: /* @__PURE__ */ l(El, {})
504
505
  })]
505
506
  })
506
507
  }, t.uid))
@@ -509,17 +510,17 @@ const st = (w) => {
509
510
  className: "upload-example",
510
511
  children: [/* @__PURE__ */ l("div", {
511
512
  className: "upload-example-header",
512
- children: /* @__PURE__ */ d(Pe, {
513
+ children: /* @__PURE__ */ d(je, {
513
514
  children: [/* @__PURE__ */ l("span", {
514
515
  children: "数据示例:"
515
- }), /* @__PURE__ */ l(j, {
516
+ }), /* @__PURE__ */ l(P, {
516
517
  size: "small",
517
518
  type: "link",
518
519
  style: {
519
520
  padding: 0
520
521
  },
521
522
  onClick: (t) => {
522
- t.stopPropagation(), dl();
523
+ t.stopPropagation(), cl();
523
524
  },
524
525
  children: "下载示例 >"
525
526
  })]
@@ -527,7 +528,7 @@ const st = (w) => {
527
528
  }), /* @__PURE__ */ l("div", {
528
529
  className: "upload-example-main",
529
530
  children: /* @__PURE__ */ l("img", {
530
- src: A === "labeled" ? h === "vlm" ? Al : Fl : h === "vlm" ? Bl : xl
531
+ src: F === "labeled" ? h === "vlm" ? Rl : Fl : h === "vlm" ? Bl : Al
531
532
  })
532
533
  })]
533
534
  })]
@@ -542,42 +543,42 @@ const st = (w) => {
542
543
  maskClosable: !1,
543
544
  closable: n !== "image",
544
545
  onCancel: () => {
545
- Le();
546
+ Oe();
546
547
  },
547
548
  footer: null,
548
549
  children: /* @__PURE__ */ l("div", {
549
550
  className: "upload-spin",
550
551
  children: /* @__PURE__ */ l(yl, {
551
- tip: n === "image" ? `数据导入中(${se}/${C.length}),请耐心等待` : `处理中(${Ne}/100%),请耐心等待`,
552
+ tip: n === "image" ? `数据导入中(${ie}/${C.length}),请耐心等待` : `处理中(${Ne}/100%),请耐心等待`,
552
553
  size: "large",
553
554
  children: /* @__PURE__ */ l("div", {
554
555
  className: "content"
555
556
  })
556
557
  })
557
558
  })
558
- }), ge && /* @__PURE__ */ l(H, {
559
+ }), Ce && /* @__PURE__ */ l(H, {
559
560
  className: "result",
560
561
  width: 424,
561
562
  title: null,
562
- open: ge,
563
+ open: Ce,
563
564
  closable: !1,
564
565
  footer: null,
565
566
  children: /* @__PURE__ */ l("div", {
566
567
  className: "upload-result",
567
568
  children: /* @__PURE__ */ l(De, {
568
569
  status: "success",
569
- title: n === "image" ? `数据导入完成,成功${W}个,失败${Ce}个,去重${C.length - W - Ce}个` : k && `数据导入完成,格式不符合的图片${k.formatErrorCount || 0}个,成功${k.successCount || 0}个,去重${k.repeatCount || 0}个,失败${k.failedCount || 0}个` + (A === "labeled" ? `(${(g.labelFormat || "json").toUpperCase()}格式不符合${k.labelErrorCount}个)` : ""),
570
- extra: [/* @__PURE__ */ l(j, {
570
+ title: n === "image" ? `数据导入完成,成功${J}个,失败${be}个,去重${C.length - J - be}个` : B && `数据导入完成,格式不符合的图片${B.formatErrorCount || 0}个,成功${B.successCount || 0}个,去重${B.repeatCount || 0}个,失败${B.failedCount || 0}个` + (F === "labeled" ? `(${(g.labelFormat || "json").toUpperCase()}格式不符合${B.labelErrorCount}个)` : ""),
571
+ extra: [/* @__PURE__ */ l(P, {
571
572
  onClick: ol,
572
573
  children: "关闭"
573
574
  }, "close")]
574
575
  })
575
576
  })
576
- }), ve && /* @__PURE__ */ l(H, {
577
+ }), xe && /* @__PURE__ */ l(H, {
577
578
  className: "result",
578
579
  width: 424,
579
580
  title: null,
580
- open: ve,
581
+ open: xe,
581
582
  closable: !1,
582
583
  footer: null,
583
584
  children: /* @__PURE__ */ l("div", {
@@ -585,8 +586,8 @@ const st = (w) => {
585
586
  children: /* @__PURE__ */ l(De, {
586
587
  status: "error",
587
588
  title: "文件处理失败",
588
- extra: [/* @__PURE__ */ l(j, {
589
- onClick: pl,
589
+ extra: [/* @__PURE__ */ l(P, {
590
+ onClick: dl,
590
591
  children: "关闭"
591
592
  }, "close")]
592
593
  })
@@ -595,5 +596,5 @@ const st = (w) => {
595
596
  });
596
597
  };
597
598
  export {
598
- st as default
599
+ ot as default
599
600
  };