@glodon-aiot/dataset-annotation 3.15.0-alpha.3 → 3.16.0-alpha.35

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 (129) hide show
  1. package/dist/es/DatasetContext/index.mjs +6 -3
  2. package/dist/es/components/DetectionAnnotation/components/ImageDetail/index.mjs +110 -101
  3. package/dist/es/components/DetectionAnnotation/components/ImageModal/index.mjs +153 -0
  4. package/dist/es/components/DetectionAnnotation/components/ImageModal/style.less.mjs +4 -0
  5. package/dist/es/components/DetectionAnnotation/components/LabelMaker/Drawable.mjs +37 -28
  6. package/dist/es/components/DetectionAnnotation/components/LabelMaker/RectLabel.mjs +145 -101
  7. package/dist/es/components/DetectionAnnotation/components/LabelMaker/index.mjs +276 -196
  8. package/dist/es/components/DetectionAnnotation/index.mjs +595 -480
  9. package/dist/es/components/DetectionStatus/index.mjs +44 -0
  10. package/dist/es/components/DetectionStatus/style.less.mjs +4 -0
  11. package/dist/es/components/Iconfont/index.mjs +2 -2
  12. package/dist/es/components/OcrAnnotation/MarkKVOCRModal/KVOCRLabelMaker/index.mjs +1 -1
  13. package/dist/es/components/OcrAnnotation/MarkOCRBoxModal/OCRBoxMaker/index.mjs +1 -1
  14. package/dist/es/components/OcrAnnotation/OcrModal/index.mjs +43 -45
  15. package/dist/es/components/PicZipImportModal/config.mjs +47 -0
  16. package/dist/es/components/PicZipImportModal/index.mjs +308 -293
  17. package/dist/es/components/PicZipImportModal/pic_vlm_json_zip.svg.mjs +4 -0
  18. package/dist/es/components/PicZipImportModal/pic_vlm_zip.svg.mjs +4 -0
  19. package/dist/es/components/PreLabelOCR/PreLabelModal.mjs +171 -180
  20. package/dist/es/components/PreLabelOCR/index.mjs +14 -12
  21. package/dist/es/components/PreLableTable/index.mjs +93 -0
  22. package/dist/es/components/PreLableTable/style.less.mjs +4 -0
  23. package/dist/es/components/VLMAnnotation/RegionItem.mjs +170 -0
  24. package/dist/es/components/VLMAnnotation/TextAnnotationPanel.mjs +94 -0
  25. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useAIButtonHover.mjs +193 -0
  26. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useCanvasDrag.mjs +116 -0
  27. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useCanvasSetup.mjs +115 -0
  28. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useCanvasZoom.mjs +42 -0
  29. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useCropRegionImage.mjs +55 -0
  30. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useDeleteControl.mjs +51 -0
  31. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useDeleteRegion.mjs +62 -0
  32. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useDrawingMode.mjs +484 -0
  33. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useOCRControl.mjs +100 -0
  34. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useOCRLoadingIcon.mjs +106 -0
  35. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useOCRRecognition.mjs +101 -0
  36. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionBoundaryCheck.mjs +103 -0
  37. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionHover.mjs +38 -0
  38. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionLoader.mjs +173 -0
  39. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionNameText.mjs +72 -0
  40. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionSelection.mjs +218 -0
  41. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionUpdate.mjs +98 -0
  42. package/dist/es/components/VLMAnnotation/VLMLabelMaker/hooks/useTextLayouts.mjs +156 -0
  43. package/dist/es/components/VLMAnnotation/VLMLabelMaker/icons/ai.svg.mjs +4 -0
  44. package/dist/es/components/VLMAnnotation/VLMLabelMaker/icons/del.png.mjs +4 -0
  45. package/dist/es/components/VLMAnnotation/VLMLabelMaker/icons/error.svg.mjs +4 -0
  46. package/dist/es/components/VLMAnnotation/VLMLabelMaker/icons/loading.svg.mjs +4 -0
  47. package/dist/es/components/VLMAnnotation/VLMLabelMaker/icons/star.svg.mjs +4 -0
  48. package/dist/es/components/VLMAnnotation/VLMLabelMaker/index.mjs +678 -0
  49. package/dist/es/components/VLMAnnotation/VLMLabelMaker/style.less.mjs +4 -0
  50. package/dist/es/components/VLMAnnotation/VLMLabelMaker/utils/coordinateUtils.mjs +33 -0
  51. package/dist/es/components/VLMAnnotation/components/AIErrorTooltip/AIErrorTooltip.less.mjs +4 -0
  52. package/dist/es/components/VLMAnnotation/components/AIErrorTooltip/index.mjs +24 -0
  53. package/dist/es/components/VLMAnnotation/components/DragButton.mjs +18 -0
  54. package/dist/es/components/VLMAnnotation/components/FitToScreenButton.mjs +16 -0
  55. package/dist/es/components/VLMAnnotation/components/RectangleButton.mjs +30 -0
  56. package/dist/es/components/VLMAnnotation/components/Toolbar.mjs +40 -0
  57. package/dist/es/components/VLMAnnotation/components/ZoomControls.mjs +44 -0
  58. package/dist/es/components/VLMAnnotation/constants.mjs +57 -0
  59. package/dist/es/components/VLMAnnotation/index.mjs +279 -0
  60. package/dist/es/components/VLMAnnotation/style.less.mjs +4 -0
  61. package/dist/es/components/VLMAnnotationDetail/MarkVLMBoxModal/AttributeDetail/index.mjs +343 -0
  62. package/dist/es/components/VLMAnnotationDetail/MarkVLMBoxModal/AttributeDetail/style.less.mjs +4 -0
  63. package/dist/es/components/VLMAnnotationDetail/MarkVLMBoxModal/QADetail/QAGenerationConfig.mjs +290 -0
  64. package/dist/es/components/VLMAnnotationDetail/MarkVLMBoxModal/QADetail/index.mjs +193 -0
  65. package/dist/es/components/VLMAnnotationDetail/MarkVLMBoxModal/QADetail/style.less.mjs +4 -0
  66. package/dist/es/components/VLMAnnotationDetail/VLMDetail/index.mjs +445 -0
  67. package/dist/es/components/VLMAnnotationDetail/VLMDetail/style.less.mjs +4 -0
  68. package/dist/es/components/VLMAnnotationDetail/VlmModal/index.mjs +285 -0
  69. package/dist/es/components/VLMAnnotationDetail/VlmModal/style.less.mjs +4 -0
  70. package/dist/es/components/VLMAnnotationDetail/index.mjs +455 -0
  71. package/dist/es/components/VLMAnnotationDetail/style.less.mjs +4 -0
  72. package/dist/es/constant.mjs +3 -3
  73. package/dist/es/createVlmtasetAnnotation/index.mjs +131 -0
  74. package/dist/es/featuresConfig.mjs +13 -9
  75. package/dist/es/index.mjs +11 -7
  76. package/dist/lib/index.js +4 -3
  77. package/dist/src/DatasetContext/index.d.ts +2 -0
  78. package/dist/src/components/DetectionAnnotation/components/ImageDetail/index.d.ts +1 -0
  79. package/dist/src/components/DetectionAnnotation/components/ImageModal/index.d.ts +34 -0
  80. package/dist/src/components/DetectionAnnotation/index.d.ts +6 -0
  81. package/dist/src/components/DetectionStatus/index.d.ts +7 -0
  82. package/dist/src/components/Iconfont/font_4439177_tgvowh6bmlb.d.ts +0 -0
  83. package/dist/src/components/PicZipImportModal/config.d.ts +23 -0
  84. package/dist/src/components/PreLabelOCR/index.d.ts +1 -0
  85. package/dist/src/components/PreLableTable/index.d.ts +7 -0
  86. package/dist/src/components/VLMAnnotation/ImageAnnotationDebugger.d.ts +4 -0
  87. package/dist/src/components/VLMAnnotation/RegionItem.d.ts +4 -0
  88. package/dist/src/components/VLMAnnotation/TextAnnotationPanel.d.ts +4 -0
  89. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useAIButtonHover.d.ts +16 -0
  90. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useCanvasDrag.d.ts +13 -0
  91. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useCanvasSetup.d.ts +38 -0
  92. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useCanvasZoom.d.ts +18 -0
  93. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useCropRegionImage.d.ts +7 -0
  94. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useDeleteControl.d.ts +13 -0
  95. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useDeleteRegion.d.ts +22 -0
  96. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useDrawingMode.d.ts +35 -0
  97. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useOCRControl.d.ts +16 -0
  98. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useOCRLoadingIcon.d.ts +11 -0
  99. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useOCRRecognition.d.ts +29 -0
  100. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionBoundaryCheck.d.ts +31 -0
  101. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionHover.d.ts +13 -0
  102. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionLoader.d.ts +41 -0
  103. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionNameText.d.ts +12 -0
  104. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionSelection.d.ts +16 -0
  105. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useRegionUpdate.d.ts +32 -0
  106. package/dist/src/components/VLMAnnotation/VLMLabelMaker/hooks/useTextLayouts.d.ts +25 -0
  107. package/dist/src/components/VLMAnnotation/VLMLabelMaker/index.d.ts +4 -0
  108. package/dist/src/components/VLMAnnotation/VLMLabelMaker/utils/coordinateUtils.d.ts +32 -0
  109. package/dist/src/components/VLMAnnotation/components/AIErrorTooltip/index.d.ts +8 -0
  110. package/dist/src/components/VLMAnnotation/components/DragButton.d.ts +7 -0
  111. package/dist/src/components/VLMAnnotation/components/FitToScreenButton.d.ts +6 -0
  112. package/dist/src/components/VLMAnnotation/components/RectangleButton.d.ts +7 -0
  113. package/dist/src/components/VLMAnnotation/components/Toolbar.d.ts +4 -0
  114. package/dist/src/components/VLMAnnotation/components/ZoomControls.d.ts +4 -0
  115. package/dist/src/components/VLMAnnotation/constants.d.ts +113 -0
  116. package/dist/src/components/VLMAnnotation/index.d.ts +6 -0
  117. package/dist/src/components/VLMAnnotation/types.d.ts +187 -0
  118. package/dist/src/components/VLMAnnotationDetail/MarkVLMBoxModal/AttributeDetail/index.d.ts +14 -0
  119. package/dist/src/components/VLMAnnotationDetail/MarkVLMBoxModal/QADetail/QAGenerationConfig.d.ts +13 -0
  120. package/dist/src/components/VLMAnnotationDetail/MarkVLMBoxModal/QADetail/index.d.ts +12 -0
  121. package/dist/src/components/VLMAnnotationDetail/MarkVLMBoxModal/index.d.ts +12 -0
  122. package/dist/src/components/VLMAnnotationDetail/VLMDetail/index.d.ts +21 -0
  123. package/dist/src/components/VLMAnnotationDetail/VlmModal/index.d.ts +26 -0
  124. package/dist/src/components/VLMAnnotationDetail/index.d.ts +6 -0
  125. package/dist/src/constant.d.ts +1 -1
  126. package/dist/src/createVlmtasetAnnotation/index.d.ts +16 -0
  127. package/dist/src/featuresConfig.d.ts +5 -1
  128. package/dist/src/index.d.ts +3 -0
  129. package/package.json +2 -2
@@ -1,10 +1,13 @@
1
- import { createContext as t } from "react";
2
- const a = t({
1
+ import { createContext as e } from "react";
2
+ const a = e({
3
3
  datasetId: "",
4
4
  versionId: "",
5
5
  no: "",
6
6
  loading: !1,
7
- services: {}
7
+ services: {},
8
+ token: "",
9
+ apiUrl: "",
10
+ featuresConfig: {}
8
11
  });
9
12
  export {
10
13
  a as default
@@ -1,166 +1,175 @@
1
- var Z = Object.defineProperty, _ = Object.defineProperties;
2
- var $ = Object.getOwnPropertyDescriptors;
3
- var E = Object.getOwnPropertySymbols;
4
- var V = Object.prototype.hasOwnProperty, S = Object.prototype.propertyIsEnumerable;
5
- var F = (n, t, a) => t in n ? Z(n, t, { enumerable: !0, configurable: !0, writable: !0, value: a }) : n[t] = a, m = (n, t) => {
6
- for (var a in t || (t = {}))
7
- V.call(t, a) && F(n, a, t[a]);
8
- if (E)
9
- for (var a of E(t))
10
- S.call(t, a) && F(n, a, t[a]);
1
+ var _ = Object.defineProperty, $ = Object.defineProperties;
2
+ var V = Object.getOwnPropertyDescriptors;
3
+ var M = Object.getOwnPropertySymbols;
4
+ var S = Object.prototype.hasOwnProperty, ee = Object.prototype.propertyIsEnumerable;
5
+ var A = (n, l, a) => l in n ? _(n, l, { enumerable: !0, configurable: !0, writable: !0, value: a }) : n[l] = a, m = (n, l) => {
6
+ for (var a in l || (l = {}))
7
+ S.call(l, a) && A(n, a, l[a]);
8
+ if (M)
9
+ for (var a of M(l))
10
+ ee.call(l, a) && A(n, a, l[a]);
11
11
  return n;
12
- }, N = (n, t) => _(n, $(t));
13
- import { jsxs as p, jsx as r } from "react/jsx-runtime";
14
- import { useRef as M, useState as b, useEffect as x } from "react";
15
- import { Button as A } from "antd";
16
- import { useKeyPress as B } from "ahooks";
12
+ }, x = (n, l) => $(n, V(l));
13
+ import { jsxs as b, jsx as d } from "react/jsx-runtime";
14
+ import { useRef as B, useState as h, useEffect as g } from "react";
15
+ import { Button as H } from "antd";
16
+ import { useKeyPress as K } from "ahooks";
17
17
  import "./style.less.mjs";
18
- import ee from "../Labels/index.mjs";
19
- import ie from "../LabelMaker/index.mjs";
20
- import H from "../../../Iconfont/index.mjs";
21
- const fe = (n) => {
22
- var P, z, D;
18
+ import ie from "../Labels/index.mjs";
19
+ import te from "../LabelMaker/index.mjs";
20
+ import O from "../../../Iconfont/index.mjs";
21
+ import se from "../../../DetectionStatus/index.mjs";
22
+ const he = (n) => {
23
+ var z, E, F;
23
24
  const {
24
- datasetId: t,
25
+ datasetId: l,
25
26
  isImageDetailVisible: a = !0,
26
27
  currentSample: e,
27
- onNextClick: h,
28
- onPrevClick: g,
29
- labels: d = [],
30
- editing: K,
31
- onRefresh: v,
32
- onChange: R,
33
- isPreLabel: j,
34
- settingHide: k,
28
+ onNextClick: v,
29
+ onPrevClick: p,
30
+ labels: r = [],
31
+ editing: q,
32
+ onRefresh: L,
33
+ onChange: k,
34
+ isPreLabel: C,
35
+ settingHide: U,
35
36
  imgCount: c,
36
- readonly: O,
37
- showLabelList: q = !0,
38
- renderLabelItem: G
39
- } = n, J = M(null), Q = M({}), [C, T] = b({}), [u, L] = b(), [o, I] = b(), [W, X] = b(!1), [U, w] = b(!1);
40
- B("rightarrow", () => {
41
- h && h();
42
- }), B("leftarrow", () => {
43
- g && g();
44
- }), x(() => () => {
45
- W && v && v();
46
- }, []), x(() => {
47
- var l, s;
48
- if (L(void 0), I(void 0), !a || !((l = e == null ? void 0 : e.labels) != null && l.length))
37
+ readonly: G,
38
+ showLabelList: D = !0,
39
+ renderLabelItem: J,
40
+ onLoadingChange: w
41
+ } = n, Q = B(null), T = B({}), [P, W] = h({}), [I, N] = h(), [o, y] = h(), [X, Y] = h(!1), [u, R] = h(!1);
42
+ K("rightarrow", () => {
43
+ v && v();
44
+ }), K("leftarrow", () => {
45
+ p && p();
46
+ }), g(() => () => {
47
+ X && L && L();
48
+ }, []), g(() => {
49
+ var t, s;
50
+ if (N(void 0), y(void 0), !a || !((t = e == null ? void 0 : e.labels) != null && t.length))
49
51
  return;
50
- const i = (s = o || e) == null ? void 0 : s.labels.reduce((f, y) => (f[y.id] ? ++f[y.id] : f[y.id] = 1, f), {});
51
- T(i || {});
52
- }, [a, e, o]), x(() => {
53
- e != null && e.fileUrl && w(!0);
54
- }, [e == null ? void 0 : e.fileUrl]), x(() => {
52
+ const i = (s = o || e) == null ? void 0 : s.labels.reduce((f, j) => (f[j.id] ? ++f[j.id] : f[j.id] = 1, f), {});
53
+ W(i || {});
54
+ }, [a, e, o]), g(() => {
55
+ e != null && e.fileUrl && R(!0);
56
+ }, [e == null ? void 0 : e.fileUrl]), g(() => {
57
+ w && w(u);
58
+ }, [u, w]), g(() => {
55
59
  if (o != null && o.labels) {
56
60
  const i = [];
57
- o.labels.forEach((l) => {
58
- const s = d.find((f) => f.id === l.id);
59
- s && i.push(N(m({}, l), {
61
+ o.labels.forEach((t) => {
62
+ const s = r.find((f) => f.id === t.id);
63
+ s && i.push(x(m({}, t), {
60
64
  label: s.label
61
65
  }));
62
- }), o.labels = i, I(m({}, o));
66
+ }), o.labels = i, y(m({}, o));
63
67
  }
64
- }, [d]);
65
- const Y = () => {
66
- J.current && w(!1);
68
+ }, [r]);
69
+ const Z = () => {
70
+ Q.current && R(!1);
67
71
  };
68
- return window.onresize = Y, /* @__PURE__ */ p("div", {
72
+ return window.onresize = Z, /* @__PURE__ */ b("div", {
69
73
  className: "detection-image-detail",
70
- children: [/* @__PURE__ */ p("div", {
74
+ children: [/* @__PURE__ */ b("div", {
71
75
  className: "detail-image",
72
- children: [k ? /* @__PURE__ */ p("div", {
76
+ children: [U ? /* @__PURE__ */ b("div", {
73
77
  className: "img-detail-info",
74
78
  children: ["第 ", c == null ? void 0 : c.index, " 张 / 共 ", c == null ? void 0 : c.total, " 张"]
75
- }) : /* @__PURE__ */ r("div", {
79
+ }) : /* @__PURE__ */ d("div", {
76
80
  className: "img-detail-info",
77
81
  children: c == null ? void 0 : c.index
78
- }), /* @__PURE__ */ p("div", {
82
+ }), /* @__PURE__ */ b("div", {
79
83
  className: "detail-content",
80
- children: [g && /* @__PURE__ */ r(A, {
84
+ children: [p && /* @__PURE__ */ d(H, {
81
85
  className: "select-prev",
82
- icon: /* @__PURE__ */ r(H, {
86
+ icon: /* @__PURE__ */ d(O, {
83
87
  type: "icon-zuojiantou"
84
88
  }),
85
89
  type: "text",
86
- disabled: U,
87
- onClick: () => g(),
90
+ disabled: u,
91
+ onClick: () => p(),
88
92
  tabIndex: 0
89
- }), /* @__PURE__ */ r("div", {
93
+ }), /* @__PURE__ */ b("div", {
90
94
  className: "select-main",
91
- ref: Q,
92
- children: /* @__PURE__ */ r(ie, {
93
- disabled: O,
95
+ ref: T,
96
+ children: [((z = e == null ? void 0 : e.sampleFileName) == null ? void 0 : z.name) && /* @__PURE__ */ d("div", {
97
+ className: "img-detail-name-overlay",
98
+ children: e.sampleFileName.name
99
+ }), /* @__PURE__ */ d("div", {
100
+ className: "detection-status-wrapper",
101
+ children: /* @__PURE__ */ d(se, {
102
+ sample: e
103
+ })
104
+ }), /* @__PURE__ */ d(te, {
105
+ disabled: G,
94
106
  imageUrl: (e == null ? void 0 : e.fileUrl) || "",
95
- pen: u,
96
- labels: ((P = o ? o.labels : e == null ? void 0 : e.labels) == null ? void 0 : P.map((i) => {
97
- var l;
98
- return N(m({}, i), {
99
- color: ((l = d.find((s) => s.id === i.id)) == null ? void 0 : l.color) || ""
107
+ pen: I,
108
+ labels: ((E = o ? o.labels : e == null ? void 0 : e.labels) == null ? void 0 : E.map((i) => {
109
+ var t;
110
+ return x(m({}, i), {
111
+ color: ((t = r.find((s) => s.id === i.id)) == null ? void 0 : t.color) || ""
100
112
  });
101
113
  })) || [],
102
- onImageLoad: () => w(!1),
114
+ onImageLoad: () => R(!1),
103
115
  onChange: (i) => {
104
- if (L(void 0), !e)
116
+ if (N(void 0), !e)
105
117
  return;
106
- const l = N(m({}, e), {
118
+ const t = x(m({}, e), {
107
119
  labels: i.map((s) => ({
108
120
  id: s.id,
109
121
  label: s.label,
110
122
  box: s.box
111
123
  }))
112
124
  });
113
- I(l), R && R(l);
125
+ y(t), k && k(t);
114
126
  },
115
- isPreLabel: j,
116
- renderLabelItem: G
117
- })
118
- }), h && /* @__PURE__ */ r(A, {
127
+ isPreLabel: C,
128
+ renderLabelItem: J
129
+ }, D ? "with-slide" : "no-slide")]
130
+ }), v && /* @__PURE__ */ d(H, {
119
131
  className: "select-next",
120
- icon: /* @__PURE__ */ r(H, {
132
+ icon: /* @__PURE__ */ d(O, {
121
133
  type: "icon-youjiantou"
122
134
  }),
123
135
  type: "text",
124
- disabled: U,
125
- onClick: () => h()
136
+ disabled: u,
137
+ onClick: () => v()
126
138
  })]
127
- }), ((z = e == null ? void 0 : e.sampleFileName) == null ? void 0 : z.name) && /* @__PURE__ */ r("div", {
128
- className: "img-detail-info",
129
- children: e.sampleFileName.name
130
139
  })]
131
- }), (!!(d != null && d.length) || K) && q && /* @__PURE__ */ r("div", {
140
+ }), (!!(r != null && r.length) || q) && D && /* @__PURE__ */ d("div", {
132
141
  className: "detail-slide",
133
- children: /* @__PURE__ */ r(ee, {
134
- datasetId: t,
142
+ children: /* @__PURE__ */ d(ie, {
143
+ datasetId: l,
135
144
  selectMode: "single",
136
- data: ((D = Object.keys(C)) == null ? void 0 : D.map((i) => {
137
- const l = d.find((s) => s.id === i);
138
- if (l)
139
- return l.count = C[i], l;
145
+ data: ((F = Object.keys(P)) == null ? void 0 : F.map((i) => {
146
+ const t = r.find((s) => s.id === i);
147
+ if (t)
148
+ return t.count = P[i], t;
140
149
  }).filter((i) => !!i)) || [],
141
150
  shortcut: !0,
142
- selected: u ? [u] : [],
151
+ selected: I ? [I] : [],
143
152
  onSelectedChange: (i) => {
144
153
  if (i.length > 2) {
145
154
  console.warn("不支持选中多个标签");
146
155
  return;
147
156
  }
148
157
  if (!i.length) {
149
- L(void 0);
158
+ N(void 0);
150
159
  return;
151
160
  }
152
- const l = d == null ? void 0 : d.find((s) => i[0].label === s.label);
153
- L(l);
161
+ const t = r == null ? void 0 : r.find((s) => i[0].label === s.label);
162
+ N(t);
154
163
  },
155
164
  onListChange: () => {
156
- X(!0), v && v();
165
+ Y(!0), L && L();
157
166
  },
158
- isPreLabel: j,
159
- settingHide: k
167
+ isPreLabel: C,
168
+ settingHide: U
160
169
  })
161
170
  })]
162
171
  });
163
172
  };
164
173
  export {
165
- fe as default
174
+ he as default
166
175
  };
@@ -0,0 +1,153 @@
1
+ import { jsxs as d, jsx as i } from "react/jsx-runtime";
2
+ import { useState as K } from "react";
3
+ import { Modal as C, Tabs as O, Space as V, Button as l, Tooltip as x } from "antd";
4
+ import { useKeyPress as I } from "ahooks";
5
+ import B from "../ImageDetail/index.mjs";
6
+ import "./style.less.mjs";
7
+ import F from "../../../DataEmpty/index.mjs";
8
+ import { ISampleActionType as u } from "../../index.mjs";
9
+ const W = (L) => {
10
+ const {
11
+ datasetId: N,
12
+ setIsImageDetailVisible: c,
13
+ isImageDetailVisible: m = !0,
14
+ currentSample: e,
15
+ onNextClick: a,
16
+ onPrevClick: o,
17
+ onSave: s,
18
+ onDeleteSample: f,
19
+ labels: v = [],
20
+ onRefresh: w,
21
+ onChange: D,
22
+ isPreLabel: r,
23
+ settingHide: k,
24
+ imgCount: H,
25
+ showLabelList: M = !0,
26
+ renderLabelItem: E,
27
+ onEnterEdit: h,
28
+ filterItems: g,
29
+ filterMode: T,
30
+ onFilterChange: p,
31
+ previewMode: t = !0,
32
+ canLabel: n = !1,
33
+ canDelete: b = !1
34
+ } = L, [y, j] = K(!1);
35
+ return I("rightarrow", () => {
36
+ t || a && a(e == null ? void 0 : e.confirmStatus);
37
+ }), I("leftarrow", () => {
38
+ t || o && o(e == null ? void 0 : e.confirmStatus);
39
+ }), /* @__PURE__ */ d(C, {
40
+ title: /* @__PURE__ */ i("div", {
41
+ className: "detection-sample-detail-title",
42
+ children: /* @__PURE__ */ i("span", {
43
+ children: t ? "详情" : "标注"
44
+ })
45
+ }),
46
+ width: "100%",
47
+ open: m,
48
+ onCancel: () => c(!1),
49
+ footer: null,
50
+ centered: !0,
51
+ wrapClassName: "detection-modal-wrap",
52
+ className: "detection-modal",
53
+ bodyStyle: {
54
+ padding: 0
55
+ },
56
+ destroyOnClose: !1,
57
+ children: [/* @__PURE__ */ i("div", {
58
+ className: "detail-tabs",
59
+ children: !t && g && /* @__PURE__ */ i(O, {
60
+ activeKey: T,
61
+ items: g,
62
+ onChange: (A) => p && p(A)
63
+ })
64
+ }), e ? /* @__PURE__ */ i(B, {
65
+ datasetId: N,
66
+ isImageDetailVisible: m,
67
+ setIsImageDetailVisible: c,
68
+ currentSample: e,
69
+ onNextClick: t ? () => a == null ? void 0 : a(e == null ? void 0 : e.confirmStatus) : void 0,
70
+ onPrevClick: t ? () => o == null ? void 0 : o(e == null ? void 0 : e.confirmStatus) : void 0,
71
+ labels: v,
72
+ editing: !t,
73
+ onRefresh: w,
74
+ onChange: D,
75
+ isPreLabel: r,
76
+ settingHide: k,
77
+ readonly: t || !n,
78
+ showLabelList: t ? !1 : M,
79
+ renderLabelItem: E,
80
+ onLoadingChange: j
81
+ }) : /* @__PURE__ */ i(F, {}), e && /* @__PURE__ */ i("div", {
82
+ className: "detail-footer",
83
+ children: t ? /* @__PURE__ */ d(V, {
84
+ children: [h && n && /* @__PURE__ */ i("div", {
85
+ className: "detail-actions",
86
+ children: /* @__PURE__ */ i(l, {
87
+ type: "primary",
88
+ onClick: h,
89
+ children: "标注"
90
+ })
91
+ }), b && /* @__PURE__ */ i(l, {
92
+ danger: !0,
93
+ onClick: f,
94
+ children: "删除数据"
95
+ })]
96
+ }) : /* @__PURE__ */ d("div", {
97
+ className: "footer-bar",
98
+ children: [/* @__PURE__ */ i("div", {
99
+ className: "footer-left"
100
+ }), /* @__PURE__ */ d("div", {
101
+ className: "footer-center",
102
+ children: [/* @__PURE__ */ i(l, {
103
+ onClick: () => o == null ? void 0 : o(e == null ? void 0 : e.confirmStatus),
104
+ disabled: y,
105
+ children: "上一张"
106
+ }), /* @__PURE__ */ i(l, {
107
+ onClick: () => a == null ? void 0 : a(e == null ? void 0 : e.confirmStatus),
108
+ disabled: y,
109
+ children: "下一张"
110
+ })]
111
+ }), /* @__PURE__ */ d("div", {
112
+ className: "footer-right",
113
+ children: [n && /* @__PURE__ */ i(x, {
114
+ title: /* @__PURE__ */ i("span", {
115
+ style: {
116
+ color: "#ff9800"
117
+ },
118
+ children: 'AI预标注数据,请"确认标注"完成审核'
119
+ }),
120
+ placement: "top",
121
+ children: /* @__PURE__ */ i(l, {
122
+ type: "primary",
123
+ onClick: () => {
124
+ C.confirm({
125
+ title: "确认",
126
+ content: "是否确认当前标注?",
127
+ onOk: () => {
128
+ s == null || s(0, u.Confirm);
129
+ }
130
+ });
131
+ },
132
+ disabled: r,
133
+ className: "confirm-label-btn",
134
+ children: "确认标注"
135
+ })
136
+ }), n && e.confirmStatus === 1 && /* @__PURE__ */ i(l, {
137
+ type: "primary",
138
+ onClick: () => s == null ? void 0 : s(1, u.Save),
139
+ disabled: r,
140
+ children: "保存标注"
141
+ }), b && /* @__PURE__ */ i(l, {
142
+ onClick: f,
143
+ disabled: r,
144
+ children: "删除数据"
145
+ })]
146
+ })]
147
+ })
148
+ })]
149
+ });
150
+ };
151
+ export {
152
+ W as default
153
+ };
@@ -0,0 +1,4 @@
1
+ const t = "";
2
+ export {
3
+ t as default
4
+ };
@@ -1,45 +1,54 @@
1
- function I(e, u) {
2
- y(e);
3
- let h = -1, s = -1, n = 0, p = 0;
4
- e.on("mouse:down", (g) => {
5
- h = -1, s = -1, n = 0, p = 0;
6
- const i = e.getZoom();
7
- s = g.e.offsetX / i, h = g.e.offsetY / i;
8
- }), e.on("mouse:up", (g) => {
9
- if (s === -1 && h === -1)
1
+ function X(e, n) {
2
+ T(e);
3
+ let h = -1, s = -1, p = 0, m = 0, w = !1;
4
+ e.on("mouse:down:before", (d) => {
5
+ const f = d.target, u = e.getActiveObject();
6
+ if (f && f !== e.backgroundImage) {
7
+ u !== f && (e.setActiveObject(f), e.requestRenderAll()), e.skipTargetFind = !1;
10
8
  return;
11
- const i = e.getZoom(), m = g.e.offsetX > e.getWidth() ? e.getWidth() / i : g.e.offsetX / i, w = g.e.offsetY > e.getHeight() ? e.getHeight() / i : g.e.offsetY / i;
12
- if (n = Math.abs(m - s), p = Math.abs(w - h), n === 0 || p === 0)
9
+ }
10
+ u && (e.discardActiveObject(), e.renderAll()), e.skipTargetFind = !0;
11
+ }), e.on("mouse:down", (d) => {
12
+ if (!e.skipTargetFind)
13
13
  return;
14
- const T = e.viewportTransform ? e.viewportTransform[4] / i : 0, X = e.viewportTransform ? e.viewportTransform[5] / i : 0;
15
- let f = h > w ? w : h, r = s > m ? m : s, l = n, d = p;
16
- f = f - X, r = r - T;
17
- const Y = () => {
18
- var o, b;
14
+ w = !0, h = -1, s = -1, p = 0, m = 0;
15
+ const f = e.getZoom();
16
+ s = d.e.offsetX / f, h = d.e.offsetY / f;
17
+ }), e.on("mouse:up", (d) => {
18
+ if (e.skipTargetFind = !1, !w || (w = !1, s === -1 && h === -1))
19
+ return;
20
+ const f = e.getZoom(), u = d.e.offsetX > e.getWidth() ? e.getWidth() / f : d.e.offsetX / f, b = d.e.offsetY > e.getHeight() ? e.getHeight() / f : d.e.offsetY / f;
21
+ if (p = Math.abs(u - s), m = Math.abs(b - h), p === 0 || m === 0)
22
+ return;
23
+ const y = e.viewportTransform ? e.viewportTransform[4] / f : 0, A = e.viewportTransform ? e.viewportTransform[5] / f : 0;
24
+ let r = h > b ? b : h, i = s > u ? u : s, l = p, g = m;
25
+ r = r - A, i = i - y;
26
+ const F = () => {
27
+ var o, k;
19
28
  const t = e.backgroundImage;
20
- t && typeof t != "string" && ((o = t.aCoords) != null && o.tl.x, (b = t.aCoords) != null && b.tl.y), t && typeof t != "string" && t.top !== void 0 && t.height !== void 0 && t.left !== void 0 && t.width !== void 0 && (f < t.top && (d = d - (t.top - f), f = t.top), f + d > t.top + t.height && (d = t.top + t.height - f + d - d, f = t.height + t.top - d), r < t.left && (l = l - (t.left - r), r = t.left), r + l > t.left + t.width && (l = t.left + t.width - r + l - l, r = t.width + t.left - l));
21
- }, k = (t) => {
29
+ t && typeof t != "string" && ((o = t.aCoords) != null && o.tl.x, (k = t.aCoords) != null && k.tl.y), t && typeof t != "string" && t.top !== void 0 && t.height !== void 0 && t.left !== void 0 && t.width !== void 0 && (r < t.top && (g = g - (t.top - r), r = t.top), r + g > t.top + t.height && (g = t.top + t.height - r + g - g, r = t.height + t.top - g), i < t.left && (l = l - (t.left - i), i = t.left), i + l > t.left + t.width && (l = t.left + t.width - i + l - l, i = t.width + t.left - l));
30
+ }, I = (t) => {
22
31
  const o = e.backgroundImage;
23
32
  return !(o && typeof o != "string" && o.top !== void 0 && o.height !== void 0 && o.left !== void 0 && o.width !== void 0 && (t[0] < o.left || t[1] < o.top || t[0] > o.left + o.width || t[1] > o.top + o.height));
24
33
  };
25
- Y();
26
- const c = [[r, f], [r + l, f], [r + l, f + d], [r, f + d]];
27
- u && c.every((t) => k(t)) && u({
34
+ F();
35
+ const c = [[i, r], [i + l, r], [i + l, r + g], [i, r + g]];
36
+ n && c.every((t) => I(t)) && n({
28
37
  id: "",
29
38
  color: "#cccccc",
30
39
  label: "未知",
31
40
  box: c
32
- }), e.skipTargetFind = !1, y(e);
41
+ }), T(e);
33
42
  });
34
43
  }
35
- const y = (e) => {
36
- e.off("mouse:down"), e.off("mouse:up");
44
+ const T = (e) => {
45
+ e.off("mouse:down"), e.off("mouse:down:before"), e.off("mouse:up"), e.skipTargetFind = !1;
37
46
  };
38
- function x(e, u, h) {
47
+ function Y(e, n, h) {
39
48
  if (!h)
40
- return I(e, u), e;
49
+ return X(e, n), e;
41
50
  }
42
51
  export {
43
- x as drawable,
44
- y as stopDraw
52
+ Y as drawable,
53
+ T as stopDraw
45
54
  };