@yuku123/z-team-component 0.2.55 → 0.2.57

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 (52) hide show
  1. package/dist/{ChangeLogView-R6boINWk.js → ChangeLogView-Cstbioyw.js} +137 -137
  2. package/dist/{ComponentDoc-DTJyJAy-.js → ComponentDoc-0L_mpFyu.js} +121 -121
  3. package/dist/{InvitationManagementPage-BZOxuoM5.js → InvitationManagementPage-Ba5yy-Hl.js} +1 -1
  4. package/dist/{OnboardingPage-Be3MXW9i.js → OnboardingPage-rEAorVv0.js} +2 -2
  5. package/dist/{ScheduledTasks-CxDbixJe.js → ScheduledTasks-Db5a-nxu.js} +2992 -2957
  6. package/dist/{SystemShell-BEKwj3WF.js → SystemShell-BbREgRq8.js} +1 -1
  7. package/dist/{admin-logs-DMF0dtG1.js → admin-logs-B9KS6VJz.js} +2 -2
  8. package/dist/{api-DqNgdbLm.js → api-B4-sB0Pv.js} +1 -1
  9. package/dist/{api-DhuqONeb.js → api-CALqShkO.js} +228 -210
  10. package/dist/createWorkspaceWsHandler-DP30xvug.js +13035 -0
  11. package/dist/{index-CZ9xxAL0.js → index-4YxdJwFm.js} +3 -3
  12. package/dist/{index-C5O0cK8A.js → index-8gCovDDT.js} +6 -6
  13. package/dist/{index-DQmgOqd1.js → index-9w4zGIUG.js} +1121 -1123
  14. package/dist/{index-DV8rmjvN.js → index-BVYQ8p6A.js} +5 -5
  15. package/dist/{index-B8eiFO_f.js → index-C2Wkg1b5.js} +3 -3
  16. package/dist/{index-BOcKPM37.js → index-C3B7CbHo.js} +1 -1
  17. package/dist/{index-BkX0I2aB.js → index-C6S3MIu4.js} +56 -56
  18. package/dist/index-C88kp8U2.js +1143 -0
  19. package/dist/{index-DpNZTqcn.js → index-C90C1lUS.js} +3 -3
  20. package/dist/{index-CzePRAbT.js → index-CGWttFLb.js} +4 -4
  21. package/dist/{index-B7cZdoRq.js → index-CHb5cxi8.js} +1 -1
  22. package/dist/{index-Ct9MzvZV.js → index-CLWgeKwr.js} +2 -2
  23. package/dist/{index-JMzBzwiO.js → index-CinRd7Nz.js} +618 -617
  24. package/dist/index-CmToF3CG.js +9257 -0
  25. package/dist/{index-BKVWW3ba.js → index-DET70T3j.js} +1 -1
  26. package/dist/{index-TPTesErt.js → index-DJGEEIGt.js} +2 -2
  27. package/dist/{index-Otx98G8z.js → index-DJOyOVn_.js} +87 -74
  28. package/dist/{index-CbUsvCMy.js → index-DKeYG0Fu.js} +4 -4
  29. package/dist/{index-8Qtz0IKN.js → index-DRQFmqYV.js} +2 -2
  30. package/dist/index-DTGL9OWw.js +1195 -0
  31. package/dist/index-DWsfQMp8.js +208 -0
  32. package/dist/{index-DQk6Pt6U.js → index-JpY3wmeg.js} +3 -3
  33. package/dist/index-WIsi8fln.js +339 -0
  34. package/dist/{index-BM6XpIcw.js → index-aw72ID7y.js} +1 -1
  35. package/dist/{index-BP97Ev-W.js → index-lftFkqfI.js} +4 -4
  36. package/dist/{index-CZxihNo5.js → index-m8V5TniT.js} +7 -7
  37. package/dist/index.js +1 -1
  38. package/dist/{instance-Cr4_XM2r.js → instance-f3C-1qYl.js} +1 -1
  39. package/dist/pages.js +1 -1
  40. package/dist/{schedule-BNLns-p4.js → schedule-DfkgwPdE.js} +1 -1
  41. package/dist/{send-default-agent-team-message-C9VWSWKJ.js → send-default-agent-team-message-d_ECdczr.js} +1 -1
  42. package/dist/{sso-user-Cme2tmGq.js → sso-user-HcsSzg8P.js} +1 -1
  43. package/dist/{training-SjRAdtNQ.js → training-DnNQN0An.js} +1 -1
  44. package/dist/{useAppStore-C63xiq3-.js → useAppStore-kRZEA5WZ.js} +1 -1
  45. package/dist/webide-BcRzJX-h.js +8255 -0
  46. package/dist/z-team-component.css +2 -2
  47. package/package.json +1 -1
  48. package/dist/createWorkspaceWsHandler-BKcAIc4B.js +0 -13034
  49. package/dist/index-B30K72xQ.js +0 -1330
  50. package/dist/index-C8Wkx3H_.js +0 -8960
  51. package/dist/index-mXMdvUYD.js +0 -1182
  52. package/dist/webide-DDFxSedU.js +0 -7845
@@ -1,11 +1,11 @@
1
- import { jsxs as i, jsx as a, Fragment as te } from "react/jsx-runtime";
2
- import { h as be, j as ae, r as Ne, k as Te } from "./api-DhuqONeb.js";
3
- import { message as ne, Button as V, DatePicker as De, Spin as j, Empty as ie, Tag as re } from "antd";
1
+ import { jsxs as n, jsx as a, Fragment as te } from "react/jsx-runtime";
2
+ import { h as ve, j as ae, r as Ne, k as Te } from "./api-CALqShkO.js";
3
+ import { message as ie, Button as V, DatePicker as De, Spin as j, Empty as ne, Tag as re } from "antd";
4
4
  import S from "dayjs";
5
5
  import "./echarts-B1OU1xr4.js";
6
- import { useState as u, useCallback as x, useEffect as I, useMemo as H, useRef as se } from "react";
6
+ import { useState as p, useCallback as x, useEffect as I, useMemo as H, useRef as se } from "react";
7
7
  import * as Se from "echarts/core";
8
- const we = "_screen_12g84_2", Ce = "_banner_12g84_14", Le = "_shareBtn_12g84_22", Be = "_bannerInner_12g84_50", xe = "_bannerLeft_12g84_59", Ie = "_bannerTitle_12g84_65", Re = "_bannerSubtitle_12g84_73", Ae = "_stats_12g84_79", He = "_statItem_12g84_86", Ee = "_statNum_12g84_93", Oe = "_statLabel_12g84_100", ke = "_statDivider_12g84_105", We = "_chartSection_12g84_112", $e = "_chartInner_12g84_118", Me = "_chartHeader_12g84_125", Ve = "_chartHeaderLeft_12g84_133", je = "_chartRangeWrap_12g84_139", ze = "_rangeBtns_12g84_146", Pe = "_rangeBtn_12g84_146", Ge = "_rangeBtnActive_12g84_170", qe = "_chartRangePicker_12g84_183", Fe = "_chartTitle_12g84_197", Ye = "_chartSubtitle_12g84_204", Ke = "_chartBody_12g84_210", Xe = "_chartLoading_12g84_214", Ze = "_chartEmpty_12g84_215", Je = "_main_12g84_225", Qe = "_timeline_12g84_236", Ue = "_timelineHeader_12g84_247", et = "_timelineScroll_12g84_256", tt = "_timelineItem_12g84_262", at = "_timelineItemActive_12g84_277", nt = "_timelineDot_12g84_282", it = "_timelineContent_12g84_297", rt = "_timelineTop_12g84_302", st = "_versionTag_12g84_309", ct = "_versionDate_12g84_315", lt = "_timelineSummary_12g84_320", ot = "_timelineMeta_12g84_330", dt = "_latestBadge_12g84_336", mt = "_detail_12g84_348", ht = "_detailHeader_12g84_359", gt = "_detailTitleRow_12g84_365", _t = "_detailVersion_12g84_371", pt = "_detailDate_12g84_377", ut = "_detailSummary_12g84_382", ft = "_detailScroll_12g84_389", yt = "_pointGrid_12g84_396", vt = "_pointCard_12g84_402", bt = "_pointHead_12g84_416", Nt = "_pointTitle_12g84_424", Tt = "_pointHeadRight_12g84_432", Dt = "_committerTag_12g84_441", St = "_pointTag_12g84_452", wt = "_pointDetail_12g84_458", Ct = "_loadingWrap_12g84_466", Lt = "_emptyWrap_12g84_473", Bt = "_authBox_12g84_483", xt = "_authHint_12g84_487", It = "_embedScreen_12g84_496", e = {
8
+ const we = "_screen_irfbu_12", Ce = "_banner_irfbu_49", Le = "_shareBtn_irfbu_60", Be = "_bannerInner_irfbu_88", xe = "_bannerLeft_irfbu_97", Ie = "_bannerTitle_irfbu_103", Re = "_bannerSubtitle_irfbu_111", Ae = "_stats_irfbu_117", He = "_statItem_irfbu_124", Ee = "_statNum_irfbu_131", Oe = "_statLabel_irfbu_139", ke = "_statDivider_irfbu_144", We = "_chartSection_irfbu_151", $e = "_chartInner_irfbu_157", Me = "_chartHeader_irfbu_165", Ve = "_chartHeaderLeft_irfbu_173", je = "_chartRangeWrap_irfbu_179", ze = "_rangeBtns_irfbu_186", Pe = "_rangeBtn_irfbu_186", Ge = "_rangeBtnActive_irfbu_211", qe = "_chartRangePicker_irfbu_224", Fe = "_chartTitle_irfbu_238", Ye = "_chartSubtitle_irfbu_245", Ke = "_chartBody_irfbu_251", Xe = "_chartLoading_irfbu_255", Ze = "_chartEmpty_irfbu_256", Je = "_main_irfbu_266", Qe = "_timeline_irfbu_277", Ue = "_timelineHeader_irfbu_289", et = "_timelineScroll_irfbu_298", tt = "_timelineItem_irfbu_304", at = "_timelineItemActive_irfbu_319", it = "_timelineDot_irfbu_324", nt = "_timelineContent_irfbu_339", rt = "_timelineTop_irfbu_344", st = "_versionTag_irfbu_351", ct = "_versionDate_irfbu_357", lt = "_timelineSummary_irfbu_362", ot = "_timelineMeta_irfbu_372", dt = "_latestBadge_irfbu_378", mt = "_detail_irfbu_392", ht = "_detailHeader_irfbu_404", ut = "_detailTitleRow_irfbu_410", ft = "_detailVersion_irfbu_416", _t = "_detailDate_irfbu_423", pt = "_detailSummary_irfbu_428", gt = "_detailScroll_irfbu_435", bt = "_pointGrid_irfbu_442", yt = "_pointCard_irfbu_448", vt = "_pointHead_irfbu_463", Nt = "_pointTitle_irfbu_471", Tt = "_pointHeadRight_irfbu_479", Dt = "_committerTag_irfbu_488", St = "_pointTag_irfbu_499", wt = "_pointDetail_irfbu_505", Ct = "_loadingWrap_irfbu_513", Lt = "_emptyWrap_irfbu_520", Bt = "_authBox_irfbu_530", xt = "_authHint_irfbu_534", It = "_embedScreen_irfbu_543", e = {
9
9
  screen: we,
10
10
  banner: Ce,
11
11
  shareBtn: Le,
@@ -38,8 +38,8 @@ const we = "_screen_12g84_2", Ce = "_banner_12g84_14", Le = "_shareBtn_12g84_22"
38
38
  timelineScroll: et,
39
39
  timelineItem: tt,
40
40
  timelineItemActive: at,
41
- timelineDot: nt,
42
- timelineContent: it,
41
+ timelineDot: it,
42
+ timelineContent: nt,
43
43
  timelineTop: rt,
44
44
  versionTag: st,
45
45
  versionDate: ct,
@@ -48,14 +48,14 @@ const we = "_screen_12g84_2", Ce = "_banner_12g84_14", Le = "_shareBtn_12g84_22"
48
48
  latestBadge: dt,
49
49
  detail: mt,
50
50
  detailHeader: ht,
51
- detailTitleRow: gt,
52
- detailVersion: _t,
53
- detailDate: pt,
54
- detailSummary: ut,
55
- detailScroll: ft,
56
- pointGrid: yt,
57
- pointCard: vt,
58
- pointHead: bt,
51
+ detailTitleRow: ut,
52
+ detailVersion: ft,
53
+ detailDate: _t,
54
+ detailSummary: pt,
55
+ detailScroll: gt,
56
+ pointGrid: bt,
57
+ pointCard: yt,
58
+ pointHead: vt,
59
59
  pointTitle: Nt,
60
60
  pointHeadRight: Tt,
61
61
  committerTag: Dt,
@@ -79,57 +79,57 @@ const we = "_screen_12g84_2", Ce = "_banner_12g84_14", Le = "_shareBtn_12g84_22"
79
79
  重构: "#722ed1",
80
80
  其他: "#8c8c8c"
81
81
  }, ce = 8;
82
- function At(g) {
83
- const w = String((g == null ? void 0 : g.userMessage) || (g == null ? void 0 : g.message) || "");
82
+ function At(u) {
83
+ const w = String((u == null ? void 0 : u.userMessage) || (u == null ? void 0 : u.message) || "");
84
84
  return /未登录|Token无效|登录已失效|登录失效|登录过期|重新登录/.test(w);
85
85
  }
86
86
  function Ht({
87
- option: g,
87
+ option: u,
88
88
  height: w = 320
89
89
  }) {
90
90
  const N = se(null), d = se(null);
91
91
  return I(() => {
92
92
  if (!N.current) return;
93
- d.current || (d.current = Se.init(N.current)), d.current.setOption(g, !0);
94
- const y = () => {
95
- var v;
96
- return (v = d.current) == null ? void 0 : v.resize();
93
+ d.current || (d.current = Se.init(N.current)), d.current.setOption(u, !0);
94
+ const b = () => {
95
+ var y;
96
+ return (y = d.current) == null ? void 0 : y.resize();
97
97
  };
98
- return window.addEventListener("resize", y), () => window.removeEventListener("resize", y);
99
- }, [g]), I(
98
+ return window.addEventListener("resize", b), () => window.removeEventListener("resize", b);
99
+ }, [u]), I(
100
100
  () => () => {
101
- var y;
102
- (y = d.current) == null || y.dispose(), d.current = null;
101
+ var b;
102
+ (b = d.current) == null || b.dispose(), d.current = null;
103
103
  },
104
104
  []
105
105
  ), /* @__PURE__ */ a("div", { ref: N, style: { width: "100%", height: `${w}px` } });
106
106
  }
107
107
  function Vt({
108
- variant: g = "page"
108
+ variant: u = "page"
109
109
  }) {
110
- const [w, N] = u(!1), [d, y] = u([]), [v, E] = u(null), [_, P] = u(null), [le, G] = u(!1), [O, oe] = u(
110
+ const [w, N] = p(!1), [d, b] = p([]), [y, E] = p(null), [f, P] = p(null), [le, G] = p(!1), [O, oe] = p(
111
111
  {}
112
- ), [de, q] = u(!1), [C, F] = u(!1), [R, L] = u([
112
+ ), [de, q] = p(!1), [C, F] = p(!1), [R, L] = p([
113
113
  S().subtract(6, "day").startOf("day"),
114
114
  S().endOf("day")
115
- ]), [k, Y] = u("7"), K = x(async () => {
115
+ ]), [k, Y] = p("7"), K = x(async () => {
116
116
  N(!0);
117
117
  try {
118
- const n = await be("z-team"), o = [...(Array.isArray(n) ? n : []).filter(
118
+ const i = await ve("z-team"), o = [...(Array.isArray(i) ? i : []).filter(
119
119
  (c) => c && typeof c == "object"
120
120
  )].sort(
121
121
  (c, l) => new Date(l.commitDate).getTime() - new Date(c.commitDate).getTime()
122
122
  );
123
- y(o), F(!1), o.length > 0 ? E(o[0].id) : (E(null), P(null));
124
- } catch (n) {
125
- console.error("[ChangeLogView] load versions error:", n), At(n) && F(!0);
123
+ b(o), F(!1), o.length > 0 ? E(o[0].id) : (E(null), P(null));
124
+ } catch (i) {
125
+ console.error("[ChangeLogView] load versions error:", i), At(i) && F(!0);
126
126
  } finally {
127
127
  N(!1);
128
128
  }
129
- }, []), X = x(async (n) => {
129
+ }, []), X = x(async (i) => {
130
130
  G(!0);
131
131
  try {
132
- const r = await ae(n, void 0, "z-team");
132
+ const r = await ae(i, void 0, "z-team");
133
133
  P(r && typeof r == "object" ? r : null);
134
134
  } catch (r) {
135
135
  console.error("[ChangeLogView] load detail error:", r);
@@ -140,10 +140,10 @@ function Vt({
140
140
  I(() => {
141
141
  K();
142
142
  }, [K]), I(() => {
143
- v != null && X(v);
144
- }, [v, X]);
143
+ y != null && X(y);
144
+ }, [y, X]);
145
145
  const W = H(() => {
146
- const n = d.length, r = d.reduce(
146
+ const i = d.length, r = d.reduce(
147
147
  (c, l) => c + (l.pointCount ?? 0),
148
148
  0
149
149
  );
@@ -154,48 +154,48 @@ function Vt({
154
154
  (Math.max(...c) - Math.min(...c)) / 864e5
155
155
  ));
156
156
  }
157
- return { versionCount: n, pointTotal: r, spanDays: o };
158
- }, [d]), b = H(() => {
157
+ return { versionCount: i, pointTotal: r, spanDays: o };
158
+ }, [d]), v = H(() => {
159
159
  if (!R) return d;
160
- const [n, r] = R, o = n.startOf("day").valueOf(), c = r.endOf("day").valueOf();
160
+ const [i, r] = R, o = i.startOf("day").valueOf(), c = r.endOf("day").valueOf();
161
161
  return d.filter((l) => {
162
162
  const T = new Date(l.commitDate).getTime();
163
163
  return !Number.isNaN(T) && T >= o && T <= c;
164
164
  });
165
165
  }, [d, R]);
166
166
  I(() => {
167
- if (b.length === 0) return;
168
- let n = !1;
167
+ if (v.length === 0) return;
168
+ let i = !1;
169
169
  return q(!0), Promise.all(
170
- b.map(
170
+ v.map(
171
171
  (r) => ae(r.id, void 0, "z-team").catch((o) => (console.warn(
172
172
  `[ChangeLogView] failed to load detail for version ${r.version}`,
173
173
  o
174
174
  ), null))
175
175
  )
176
176
  ).then((r) => {
177
- if (n) return;
177
+ if (i) return;
178
178
  const o = {};
179
179
  r.forEach((c, l) => {
180
- c && typeof c == "object" && b[l] && (o[b[l].id] = c);
180
+ c && typeof c == "object" && v[l] && (o[v[l].id] = c);
181
181
  }), oe(o);
182
182
  }).finally(() => {
183
- n || q(!1);
183
+ i || q(!1);
184
184
  }), () => {
185
- n = !0;
185
+ i = !0;
186
186
  };
187
- }, [b]);
187
+ }, [v]);
188
188
  const { chartOption: me, hasChartData: he } = H(() => {
189
- const n = [...b].sort(
189
+ const i = [...v].sort(
190
190
  (t, s) => new Date(t.commitDate).getTime() - new Date(s.commitDate).getTime()
191
- ), r = n.map((t) => t.commitDate), o = /* @__PURE__ */ new Set(), c = {};
191
+ ), r = i.map((t) => t.commitDate), o = /* @__PURE__ */ new Set(), c = {};
192
192
  Object.values(O).forEach((t) => {
193
193
  (Array.isArray(t == null ? void 0 : t.items) ? t.items : []).forEach((m) => {
194
194
  if (m.category ? o.add(m.category) : o.add("其他"), typeof m.committers == "string") {
195
- const p = m.committers.split(",").map((h) => h.trim()).filter(Boolean);
196
- if (p.length > 0) {
197
- const h = 1 / p.length;
198
- p.forEach((B) => {
195
+ const _ = m.committers.split(",").map((h) => h.trim()).filter(Boolean);
196
+ if (_.length > 0) {
197
+ const h = 1 / _.length;
198
+ _.forEach((B) => {
199
199
  c[B] = (c[B] || 0) + h;
200
200
  });
201
201
  }
@@ -208,14 +208,14 @@ function Vt({
208
208
  o.forEach((t) => {
209
209
  l.includes(t) || l.push(t);
210
210
  });
211
- const T = Object.entries(c).sort((t, s) => s[1] - t[1]).map(([t]) => t), pe = T.slice(0, ce), Q = T.length > ce, D = {};
211
+ const T = Object.entries(c).sort((t, s) => s[1] - t[1]).map(([t]) => t), _e = T.slice(0, ce), Q = T.length > ce, D = {};
212
212
  l.forEach(
213
213
  (t) => D[t] = new Array(r.length).fill(0)
214
214
  );
215
- const f = {};
216
- pe.forEach(
217
- (t) => f[t] = new Array(r.length).fill(0)
218
- ), Q && (f.其他 = new Array(r.length).fill(0)), n.forEach((t, s) => {
215
+ const g = {};
216
+ _e.forEach(
217
+ (t) => g[t] = new Array(r.length).fill(0)
218
+ ), Q && (g.其他 = new Array(r.length).fill(0)), i.forEach((t, s) => {
219
219
  const m = O[t.id];
220
220
  if (!m) return;
221
221
  (Array.isArray(m.items) ? m.items : []).forEach((h) => {
@@ -225,23 +225,23 @@ function Vt({
225
225
  if (M.length > 0) {
226
226
  const A = 1 / M.length;
227
227
  M.forEach((ee) => {
228
- f[ee] ? f[ee][s] += A : Q && (f.其他[s] += A);
228
+ g[ee] ? g[ee][s] += A : Q && (g.其他[s] += A);
229
229
  });
230
230
  }
231
231
  }
232
232
  });
233
233
  });
234
- const ue = n.reduce((t, s) => {
234
+ const pe = i.reduce((t, s) => {
235
235
  const m = t.length > 0 ? t[t.length - 1] : 0;
236
236
  return t.push(m + (s.pointCount ?? 0)), t;
237
237
  }, []), U = {};
238
238
  l.forEach((t) => {
239
239
  U[t] = D[t].reduce((s, m) => {
240
- const p = s.length > 0 ? s[s.length - 1] : 0;
241
- return s.push(p + m), s;
240
+ const _ = s.length > 0 ? s[s.length - 1] : 0;
241
+ return s.push(_ + m), s;
242
242
  }, []);
243
243
  });
244
- const fe = [
244
+ const ge = [
245
245
  ...l.map((t) => ({
246
246
  name: t,
247
247
  type: "bar",
@@ -250,18 +250,18 @@ function Vt({
250
250
  itemStyle: { color: z[t] || "#8c8c8c" },
251
251
  barMaxWidth: 40
252
252
  })),
253
- ...Object.keys(f).map((t) => ({
253
+ ...Object.keys(g).map((t) => ({
254
254
  name: `@${t}`,
255
255
  type: "bar",
256
256
  stack: "committer",
257
- data: f[t],
257
+ data: g[t],
258
258
  barMaxWidth: 40
259
259
  })),
260
260
  {
261
261
  name: "要点累计",
262
262
  type: "line",
263
263
  yAxisIndex: 1,
264
- data: ue,
264
+ data: pe,
265
265
  smooth: !0,
266
266
  symbol: "circle",
267
267
  symbolSize: 6,
@@ -282,7 +282,7 @@ function Vt({
282
282
  },
283
283
  itemStyle: { color: z[t] || "#8c8c8c" }
284
284
  }))
285
- ], ye = {
285
+ ], be = {
286
286
  tooltip: {
287
287
  trigger: "axis",
288
288
  axisPointer: { type: "shadow" },
@@ -292,11 +292,11 @@ function Vt({
292
292
  formatter: (t) => {
293
293
  if (!Array.isArray(t) || t.length === 0) return "";
294
294
  let m = `<div style="font-weight:600;margin-bottom:6px;">${t[0].axisValue}</div>`;
295
- return t.forEach((p) => {
296
- const h = Number(p.value) || 0;
295
+ return t.forEach((_) => {
296
+ const h = Number(_.value) || 0;
297
297
  h > 0 && (m += `<div style="display:flex;align-items:center;gap:8px;line-height:1.8;">
298
- <span style="display:inline-block;width:10px;height:10px;border-radius:50%;background:${p.color};"></span>
299
- <span style="flex:1;">${p.seriesName}</span>
298
+ <span style="display:inline-block;width:10px;height:10px;border-radius:50%;background:${_.color};"></span>
299
+ <span style="flex:1;">${_.seriesName}</span>
300
300
  <span style="font-weight:600;">${Number.isInteger(h) ? h : h.toFixed(2)}</span>
301
301
  </div>`);
302
302
  }), m;
@@ -345,53 +345,53 @@ function Vt({
345
345
  axisLabel: { color: "#2f70f1" }
346
346
  }
347
347
  ],
348
- series: fe,
348
+ series: ge,
349
349
  animationDuration: 600
350
- }, ve = n.length > 0 && (Object.values(D).some((t) => t.some((s) => s > 0)) || Object.values(f).some((t) => t.some((s) => s > 0)));
351
- return { chartOption: ye, hasChartData: ve };
352
- }, [b, O]), Z = x(() => {
350
+ }, ye = i.length > 0 && (Object.values(D).some((t) => t.some((s) => s > 0)) || Object.values(g).some((t) => t.some((s) => s > 0)));
351
+ return { chartOption: be, hasChartData: ye };
352
+ }, [v, O]), Z = x(() => {
353
353
  try {
354
354
  Ne();
355
- } catch (n) {
356
- console.error("[ChangeLogView] redirect to login failed:", n), window.location.href = "/login";
355
+ } catch (i) {
356
+ console.error("[ChangeLogView] redirect to login failed:", i), window.location.href = "/login";
357
357
  }
358
- }, []), ge = x(async () => {
359
- const n = window.location.href;
358
+ }, []), ue = x(async () => {
359
+ const i = window.location.href;
360
360
  try {
361
- await navigator.clipboard.writeText(n), ne.success("链接已复制,可直接发送");
361
+ await navigator.clipboard.writeText(i), ie.success("链接已复制,可直接发送");
362
362
  } catch {
363
- ne.error("复制失败,请手动复制地址栏链接");
363
+ ie.error("复制失败,请手动复制地址栏链接");
364
364
  }
365
- }, []), $ = x((n) => {
366
- Y(n), L(n === "7" ? [
365
+ }, []), $ = x((i) => {
366
+ Y(i), L(i === "7" ? [
367
367
  S().subtract(6, "day").startOf("day"),
368
368
  S().endOf("day")
369
- ] : n === "30" ? [
369
+ ] : i === "30" ? [
370
370
  S().subtract(29, "day").startOf("day"),
371
371
  S().endOf("day")
372
372
  ] : null);
373
- }, []), _e = g === "embed", J = H(
374
- () => Array.isArray(_ == null ? void 0 : _.items) ? _.items : [],
375
- [_]
373
+ }, []), fe = u === "embed", J = H(
374
+ () => Array.isArray(f == null ? void 0 : f.items) ? f.items : [],
375
+ [f]
376
376
  );
377
- return /* @__PURE__ */ i("div", { className: _e ? `${e.screen} ${e.embedScreen}` : e.screen, children: [
378
- /* @__PURE__ */ a("header", { className: e.banner, children: /* @__PURE__ */ i("div", { className: e.bannerInner, children: [
379
- /* @__PURE__ */ i("div", { className: e.bannerLeft, children: [
377
+ return /* @__PURE__ */ n("div", { className: fe ? `${e.screen} ${e.embedScreen}` : e.screen, children: [
378
+ /* @__PURE__ */ a("header", { className: e.banner, children: /* @__PURE__ */ n("div", { className: e.bannerInner, children: [
379
+ /* @__PURE__ */ n("div", { className: e.bannerLeft, children: [
380
380
  /* @__PURE__ */ a("h1", { className: e.bannerTitle, children: "Z Team 产品迭代日志" }),
381
381
  /* @__PURE__ */ a("p", { className: e.bannerSubtitle, children: "每一次代码提交背后,都是产品的进化" })
382
382
  ] }),
383
- /* @__PURE__ */ i("div", { className: e.stats, children: [
384
- /* @__PURE__ */ i("div", { className: e.statItem, children: [
383
+ /* @__PURE__ */ n("div", { className: e.stats, children: [
384
+ /* @__PURE__ */ n("div", { className: e.statItem, children: [
385
385
  /* @__PURE__ */ a("div", { className: e.statNum, children: C ? "—" : W.versionCount }),
386
386
  /* @__PURE__ */ a("div", { className: e.statLabel, children: "迭代版本" })
387
387
  ] }),
388
388
  /* @__PURE__ */ a("div", { className: e.statDivider }),
389
- /* @__PURE__ */ i("div", { className: e.statItem, children: [
389
+ /* @__PURE__ */ n("div", { className: e.statItem, children: [
390
390
  /* @__PURE__ */ a("div", { className: e.statNum, children: C ? "—" : W.pointTotal }),
391
391
  /* @__PURE__ */ a("div", { className: e.statLabel, children: "产品要点" })
392
392
  ] }),
393
393
  /* @__PURE__ */ a("div", { className: e.statDivider }),
394
- /* @__PURE__ */ i("div", { className: e.statItem, children: [
394
+ /* @__PURE__ */ n("div", { className: e.statItem, children: [
395
395
  /* @__PURE__ */ a("div", { className: e.statNum, children: C ? "—" : W.spanDays }),
396
396
  /* @__PURE__ */ a("div", { className: e.statLabel, children: "持续天数" })
397
397
  ] })
@@ -402,19 +402,19 @@ function Vt({
402
402
  className: e.shareBtn,
403
403
  type: "default",
404
404
  ghost: !0,
405
- onClick: ge,
405
+ onClick: ue,
406
406
  children: "分享链接"
407
407
  }
408
408
  )
409
409
  ] }) }),
410
- /* @__PURE__ */ a("section", { className: e.chartSection, children: /* @__PURE__ */ i("div", { className: e.chartInner, children: [
411
- /* @__PURE__ */ i("div", { className: e.chartHeader, children: [
412
- /* @__PURE__ */ i("div", { className: e.chartHeaderLeft, children: [
410
+ /* @__PURE__ */ a("section", { className: e.chartSection, children: /* @__PURE__ */ n("div", { className: e.chartInner, children: [
411
+ /* @__PURE__ */ n("div", { className: e.chartHeader, children: [
412
+ /* @__PURE__ */ n("div", { className: e.chartHeaderLeft, children: [
413
413
  /* @__PURE__ */ a("h2", { className: e.chartTitle, children: "迭代节奏与贡献分布" }),
414
414
  /* @__PURE__ */ a("p", { className: e.chartSubtitle, children: "两根柱:类型拆分 · 人员拆分(多人贡献均摊);折线:各类型/总量累计" })
415
415
  ] }),
416
- /* @__PURE__ */ i("div", { className: e.chartRangeWrap, children: [
417
- /* @__PURE__ */ i("div", { className: e.rangeBtns, children: [
416
+ /* @__PURE__ */ n("div", { className: e.chartRangeWrap, children: [
417
+ /* @__PURE__ */ n("div", { className: e.rangeBtns, children: [
418
418
  /* @__PURE__ */ a(
419
419
  "button",
420
420
  {
@@ -447,14 +447,14 @@ function Vt({
447
447
  value: R,
448
448
  allowClear: !0,
449
449
  placeholder: ["开始日期", "结束日期"],
450
- onChange: (n) => {
451
- Y(""), n && n[0] && n[1] ? L([n[0], n[1]]) : L(null);
450
+ onChange: (i) => {
451
+ Y(""), i && i[0] && i[1] ? L([i[0], i[1]]) : L(null);
452
452
  }
453
453
  }
454
454
  )
455
455
  ] })
456
456
  ] }),
457
- /* @__PURE__ */ a("div", { className: e.chartBody, children: de ? /* @__PURE__ */ a("div", { className: e.chartLoading, children: /* @__PURE__ */ a(j, { description: "正在生成统计图表..." }) }) : he ? /* @__PURE__ */ a(Ht, { option: me, height: 360 }) : C ? /* @__PURE__ */ i("div", { className: `${e.chartEmpty} ${e.authBox}`, children: [
457
+ /* @__PURE__ */ a("div", { className: e.chartBody, children: de ? /* @__PURE__ */ a("div", { className: e.chartLoading, children: /* @__PURE__ */ a(j, { description: "正在生成统计图表..." }) }) : he ? /* @__PURE__ */ a(Ht, { option: me, height: 360 }) : C ? /* @__PURE__ */ n("div", { className: `${e.chartEmpty} ${e.authBox}`, children: [
458
458
  /* @__PURE__ */ a("div", { className: e.authHint, children: "登录后可查看完整的产品迭代日志" }),
459
459
  /* @__PURE__ */ a(
460
460
  V,
@@ -467,10 +467,10 @@ function Vt({
467
467
  )
468
468
  ] }) : /* @__PURE__ */ a("div", { className: e.chartEmpty, children: "暂无足够数据生成图表" }) })
469
469
  ] }) }),
470
- /* @__PURE__ */ i("main", { className: e.main, children: [
471
- /* @__PURE__ */ i("aside", { className: e.timeline, children: [
470
+ /* @__PURE__ */ n("main", { className: e.main, children: [
471
+ /* @__PURE__ */ n("aside", { className: e.timeline, children: [
472
472
  /* @__PURE__ */ a("div", { className: e.timelineHeader, children: /* @__PURE__ */ a("span", { children: "迭代时间线" }) }),
473
- /* @__PURE__ */ a("div", { className: e.timelineScroll, children: w ? /* @__PURE__ */ a("div", { className: e.loadingWrap, children: /* @__PURE__ */ a(j, { description: "加载中..." }) }) : d.length === 0 ? /* @__PURE__ */ a("div", { className: `${e.emptyWrap} ${e.authBox}`, children: C ? /* @__PURE__ */ i(te, { children: [
473
+ /* @__PURE__ */ a("div", { className: e.timelineScroll, children: w ? /* @__PURE__ */ a("div", { className: e.loadingWrap, children: /* @__PURE__ */ a(j, { description: "加载中..." }) }) : d.length === 0 ? /* @__PURE__ */ a("div", { className: `${e.emptyWrap} ${e.authBox}`, children: C ? /* @__PURE__ */ n(te, { children: [
474
474
  /* @__PURE__ */ a("div", { className: e.authHint, children: "登录后可查看完整的产品迭代日志" }),
475
475
  /* @__PURE__ */ a(
476
476
  V,
@@ -481,59 +481,59 @@ function Vt({
481
481
  children: "登录查看"
482
482
  }
483
483
  )
484
- ] }) : "暂无迭代记录" }) : d.map((n, r) => /* @__PURE__ */ i(
484
+ ] }) : "暂无迭代记录" }) : d.map((i, r) => /* @__PURE__ */ n(
485
485
  "div",
486
486
  {
487
- className: `${e.timelineItem} ${Te(v, n.id) ? e.timelineItemActive : ""}`,
488
- onClick: () => E(n.id),
487
+ className: `${e.timelineItem} ${Te(y, i.id) ? e.timelineItemActive : ""}`,
488
+ onClick: () => E(i.id),
489
489
  children: [
490
490
  /* @__PURE__ */ a("div", { className: e.timelineDot }),
491
- /* @__PURE__ */ i("div", { className: e.timelineContent, children: [
492
- /* @__PURE__ */ i("div", { className: e.timelineTop, children: [
493
- /* @__PURE__ */ a("span", { className: e.versionTag, children: n.version }),
494
- /* @__PURE__ */ a("span", { className: e.versionDate, children: n.commitDate })
491
+ /* @__PURE__ */ n("div", { className: e.timelineContent, children: [
492
+ /* @__PURE__ */ n("div", { className: e.timelineTop, children: [
493
+ /* @__PURE__ */ a("span", { className: e.versionTag, children: i.version }),
494
+ /* @__PURE__ */ a("span", { className: e.versionDate, children: i.commitDate })
495
495
  ] }),
496
- n.summary && /* @__PURE__ */ a("div", { className: e.timelineSummary, title: n.summary, children: n.summary }),
497
- /* @__PURE__ */ a("div", { className: e.timelineMeta, children: /* @__PURE__ */ i("span", { children: [
498
- n.pointCount ?? 0,
496
+ i.summary && /* @__PURE__ */ a("div", { className: e.timelineSummary, title: i.summary, children: i.summary }),
497
+ /* @__PURE__ */ a("div", { className: e.timelineMeta, children: /* @__PURE__ */ n("span", { children: [
498
+ i.pointCount ?? 0,
499
499
  " 条产品要点"
500
500
  ] }) })
501
501
  ] }),
502
502
  r === 0 && /* @__PURE__ */ a("span", { className: e.latestBadge, children: "最新" })
503
503
  ]
504
504
  },
505
- n.id
505
+ i.id
506
506
  )) })
507
507
  ] }),
508
- /* @__PURE__ */ a("section", { className: e.detail, children: le ? /* @__PURE__ */ a("div", { className: e.loadingWrap, children: /* @__PURE__ */ a(j, { description: "加载产品要点..." }) }) : _ ? /* @__PURE__ */ i(te, { children: [
509
- /* @__PURE__ */ i("div", { className: e.detailHeader, children: [
510
- /* @__PURE__ */ i("div", { className: e.detailTitleRow, children: [
511
- /* @__PURE__ */ a("span", { className: e.detailVersion, children: _.version }),
512
- /* @__PURE__ */ a("span", { className: e.detailDate, children: _.commitDate })
508
+ /* @__PURE__ */ a("section", { className: e.detail, children: le ? /* @__PURE__ */ a("div", { className: e.loadingWrap, children: /* @__PURE__ */ a(j, { description: "加载产品要点..." }) }) : f ? /* @__PURE__ */ n(te, { children: [
509
+ /* @__PURE__ */ n("div", { className: e.detailHeader, children: [
510
+ /* @__PURE__ */ n("div", { className: e.detailTitleRow, children: [
511
+ /* @__PURE__ */ a("span", { className: e.detailVersion, children: f.version }),
512
+ /* @__PURE__ */ a("span", { className: e.detailDate, children: f.commitDate })
513
513
  ] }),
514
- _.summary && /* @__PURE__ */ a("div", { className: e.detailSummary, children: _.summary })
514
+ f.summary && /* @__PURE__ */ a("div", { className: e.detailSummary, children: f.summary })
515
515
  ] }),
516
- /* @__PURE__ */ a("div", { className: e.detailScroll, children: J.length === 0 ? /* @__PURE__ */ a(ie, { description: "该版本下暂无产品迭代要点" }) : /* @__PURE__ */ a("div", { className: e.pointGrid, children: J.map((n) => /* @__PURE__ */ i("div", { className: e.pointCard, children: [
517
- /* @__PURE__ */ i("div", { className: e.pointHead, children: [
518
- /* @__PURE__ */ a("span", { className: e.pointTitle, children: n.pointTitle }),
519
- /* @__PURE__ */ i("div", { className: e.pointHeadRight, children: [
520
- typeof n.committers == "string" && n.committers.split(",").map((r) => /* @__PURE__ */ i(re, { className: e.committerTag, children: [
516
+ /* @__PURE__ */ a("div", { className: e.detailScroll, children: J.length === 0 ? /* @__PURE__ */ a(ne, { description: "该版本下暂无产品迭代要点" }) : /* @__PURE__ */ a("div", { className: e.pointGrid, children: J.map((i) => /* @__PURE__ */ n("div", { className: e.pointCard, children: [
517
+ /* @__PURE__ */ n("div", { className: e.pointHead, children: [
518
+ /* @__PURE__ */ a("span", { className: e.pointTitle, children: i.pointTitle }),
519
+ /* @__PURE__ */ n("div", { className: e.pointHeadRight, children: [
520
+ typeof i.committers == "string" && i.committers.split(",").map((r) => /* @__PURE__ */ n(re, { className: e.committerTag, children: [
521
521
  "@",
522
522
  r.trim()
523
523
  ] }, r)),
524
- n.category && /* @__PURE__ */ a(
524
+ i.category && /* @__PURE__ */ a(
525
525
  re,
526
526
  {
527
527
  className: e.pointTag,
528
- color: Rt[n.category] || "default",
529
- children: n.category
528
+ color: Rt[i.category] || "default",
529
+ children: i.category
530
530
  }
531
531
  )
532
532
  ] })
533
533
  ] }),
534
- n.pointDetail && /* @__PURE__ */ a("div", { className: e.pointDetail, children: n.pointDetail })
535
- ] }, n.id)) }) })
536
- ] }) : /* @__PURE__ */ a("div", { className: e.emptyWrap, children: /* @__PURE__ */ a(ie, { description: "选择左侧版本查看产品迭代要点" }) }) })
534
+ i.pointDetail && /* @__PURE__ */ a("div", { className: e.pointDetail, children: i.pointDetail })
535
+ ] }, i.id)) }) })
536
+ ] }) : /* @__PURE__ */ a("div", { className: e.emptyWrap, children: /* @__PURE__ */ a(ne, { description: "选择左侧版本查看产品迭代要点" }) }) })
537
537
  ] })
538
538
  ] });
539
539
  }