@marktowin/prototype-core 1.2.19 → 1.2.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as an, computed as x, openBlock as v, createBlock as He, resolveDynamicComponent as bo, createElementBlock as f, Fragment as D, renderList as R, normalizeClass as E, createTextVNode as z, toDisplayString as c, createElementVNode as t, normalizeStyle as Be, createCommentVNode as C, ref as w, watch as ze, createVNode as V, Transition as nl, withCtx as ol, unref as i, withModifiers as Ie, withDirectives as N, vModelText as G, createStaticVNode as ji, reactive as yo, onBeforeUnmount as us, onMounted as ml, vModelSelect as lt, nextTick as Ha, isRef as go, vModelCheckbox as Id, withKeys as Ka } from "vue";
2
2
  import { Save as $d, CloudUpload as _d, Download as Pd, X as hn, Plus as Bn, ChevronDown as Dd, ChevronRight as Ad, Trash2 as Un, RefreshCw as rr, FileSpreadsheet as ur, AlertTriangle as Ed, CheckCircle2 as Td, CircleDot as Mi, Bug as Nd, ImagePlus as Vi, Filter as Rd, Search as sl, ArrowLeft as Li, FileJson as cr, ArrowUp as Od, ArrowDown as Bd, Check as dr, CircleAlert as pr, Clipboard as vr, SunMedium as Ud, RotateCcw as jd, PanelTop as fr, BookOpen as Fi, Cloud as Md, Database as Gi, PanelLeft as Vd, MessageSquare as Ld, Keyboard as Fd } from "@lucide/vue";
3
- import { g as xo, a as ca, s as Gd } from "./index-guF2cLL6.js";
3
+ import { g as xo, a as ca, s as Gd } from "./index-xlX5FPCA.js";
4
4
  const Qo = /* @__PURE__ */ an({
5
5
  __name: "ScreenRenderer",
6
6
  props: {
@@ -293,15 +293,15 @@ const Qo = /* @__PURE__ */ an({
293
293
  st.value = null;
294
294
  }, 2500);
295
295
  }
296
- const U = w(!1), re = w(!1);
296
+ const U = w(!1), le = w(!1);
297
297
  function Ce() {
298
298
  U.value || (U.value = !0, s("save", JSON.parse(JSON.stringify(r.value)), (_) => {
299
299
  U.value = !1, At(_ ? "保存成功,流程模式已更新" : "保存失败,已保留当前编辑", _ ? "success" : "error");
300
300
  }));
301
301
  }
302
302
  function jt() {
303
- re.value || !o.canPushRemote || (re.value = !0, s("push", JSON.parse(JSON.stringify(r.value)), (_) => {
304
- re.value = !1, At(_ ? "已推送到 Gitee,流程模式已更新" : "推送失败,本地编辑已保留", _ ? "success" : "error");
303
+ le.value || !o.canPushRemote || (le.value = !0, s("push", JSON.parse(JSON.stringify(r.value)), (_) => {
304
+ le.value = !1, At(_ ? "已推送到 Gitee,流程模式已更新" : "推送失败,本地编辑已保留", _ ? "success" : "error");
305
305
  }));
306
306
  }
307
307
  function yt() {
@@ -342,12 +342,12 @@ const Qo = /* @__PURE__ */ an({
342
342
  ], 8, sp),
343
343
  t("button", {
344
344
  class: "flex items-center gap-1.5 rounded-lg bg-ink px-3 py-1.5 text-sm font-medium text-white transition hover:bg-ocean disabled:cursor-not-allowed disabled:opacity-40",
345
- disabled: re.value || !e.canPushRemote,
345
+ disabled: le.value || !e.canPushRemote,
346
346
  title: e.canPushRemote ? "推送到当前代码分支的 Gitee 流程文件" : "Gitee 未配置或当前代码分支不可识别",
347
347
  onClick: jt
348
348
  }, [
349
349
  V(i(_d), { class: "h-4 w-4" }),
350
- z(" " + c(re.value ? "推送中…" : "推送到 Gitee"), 1)
350
+ z(" " + c(le.value ? "推送中…" : "推送到 Gitee"), 1)
351
351
  ], 8, ap),
352
352
  t("button", {
353
353
  class: "flex items-center gap-1.5 rounded-lg bg-ocean px-3 py-1.5 text-sm font-medium text-white hover:opacity-90 transition",
@@ -1564,7 +1564,7 @@ const hf = { class: "bug-page" }, yf = { class: "bug-page-head" }, bf = { class:
1564
1564
  sourceSideVersion: "",
1565
1565
  ownerRole: "后端开发",
1566
1566
  description: ""
1567
- }), ge = w(re()), Me = w([]), Qe = w(""), Ke = w(null), L = yo({
1567
+ }), ge = w(le()), Me = w([]), Qe = w(""), Ke = w(null), L = yo({
1568
1568
  type: "全部",
1569
1569
  severity: "全部",
1570
1570
  sourceSide: "全部",
@@ -1590,7 +1590,7 @@ const hf = { class: "bug-page" }, yf = { class: "bug-page-head" }, bf = { class:
1590
1590
  function U(y) {
1591
1591
  y.key !== "Escape" || !Pe.value || (y.preventDefault(), y.stopPropagation(), Pe.value = null);
1592
1592
  }
1593
- function re() {
1593
+ function le() {
1594
1594
  var y;
1595
1595
  return ((y = crypto.randomUUID) == null ? void 0 : y.call(crypto)) ?? `submission-${Date.now()}-${Math.random().toString(16).slice(2)}`;
1596
1596
  }
@@ -1645,7 +1645,7 @@ const hf = { class: "bug-page" }, yf = { class: "bug-page-head" }, bf = { class:
1645
1645
  window.localStorage.removeItem(Ce());
1646
1646
  } catch {
1647
1647
  }
1648
- Me.value = [], ge.value = re();
1648
+ Me.value = [], ge.value = le();
1649
1649
  }
1650
1650
  const K = yt();
1651
1651
  K && (Object.assign(A, K.form), ge.value = K.submissionId, Me.value = K.attachments, k.value = K.attachments.map((y) => ({
@@ -1713,12 +1713,12 @@ const hf = { class: "bug-page" }, yf = { class: "bug-page-head" }, bf = { class:
1713
1713
  }
1714
1714
  function ys(y, p) {
1715
1715
  const F = (/* @__PURE__ */ new Date()).toISOString().replace(/\D/g, "").slice(0, 14);
1716
- return `bugs/${y}/${F}-${wa(p.name)}.${Sa(p)}`;
1716
+ return `bugs/${y}/${F}-${p.id}-${wa(p.name)}.${Sa(p)}`;
1717
1717
  }
1718
1718
  async function bs(y) {
1719
1719
  if (!["image/png", "image/jpeg", "image/jpg", "image/webp"].includes(y.type)) throw new Error("仅支持 png、jpg、jpeg、webp 图片");
1720
1720
  return {
1721
- id: `pending-image-${Date.now()}-${Math.random().toString(16).slice(2)}`,
1721
+ id: `pending-image-${le()}`,
1722
1722
  name: y.name || `clipboard-${Date.now()}.png`,
1723
1723
  file: y,
1724
1724
  previewUrl: URL.createObjectURL(y),
@@ -3422,16 +3422,16 @@ const Ug = { class: "test-case-workbench" }, jg = { class: "test-case-toolbar" }
3422
3422
  t("b", null, c(U.code), 1),
3423
3423
  t("span", null, c(U.title), 1)
3424
3424
  ]),
3425
- (v(!0), f(D, null, R(U.scopes, (re) => {
3425
+ (v(!0), f(D, null, R(U.scopes, (le) => {
3426
3426
  var Ce, jt, yt;
3427
3427
  return v(), f("button", {
3428
- key: re.id,
3428
+ key: le.id,
3429
3429
  type: "button",
3430
- class: E({ active: re.id === i(g), unknown: !re.known }),
3431
- onClick: (Jt) => ce(re)
3430
+ class: E({ active: le.id === i(g), unknown: !le.known }),
3431
+ onClick: (Jt) => ce(le)
3432
3432
  }, [
3433
- t("span", null, c(re.stateLabel), 1),
3434
- t("small", null, c(((yt = (jt = (Ce = i(d)) == null ? void 0 : Ce.scopes) == null ? void 0 : jt[re.id]) == null ? void 0 : yt.count) ?? i(r).filter((Jt) => i(nt)(Jt.screenId, Jt.stateId) === re.id).length), 1)
3433
+ t("span", null, c(le.stateLabel), 1),
3434
+ t("small", null, c(((yt = (jt = (Ce = i(d)) == null ? void 0 : Ce.scopes) == null ? void 0 : jt[le.id]) == null ? void 0 : yt.count) ?? i(r).filter((Jt) => i(nt)(Jt.screenId, Jt.stateId) === le.id).length), 1)
3435
3435
  ], 10, Yg);
3436
3436
  }), 128))
3437
3437
  ]))), 128))
@@ -3508,14 +3508,14 @@ const Ug = { class: "test-case-workbench" }, jg = { class: "test-case-toolbar" }
3508
3508
  ]),
3509
3509
  t("tbody", null, [
3510
3510
  (v(!0), f(D, null, R(Ke.value, (U) => {
3511
- var re;
3511
+ var le;
3512
3512
  return v(), f("tr", {
3513
3513
  key: U.id,
3514
3514
  onClick: (Ce) => te(U)
3515
3515
  }, [
3516
3516
  t("td", null, [
3517
3517
  t("b", null, c(U.module), 1),
3518
- Ae.value === "all" ? (v(), f("small", rh, c((re = i(b)(e.lang).find((Ce) => Ce.id === i(nt)(U.screenId, U.stateId))) == null ? void 0 : re.stateLabel), 1)) : C("", !0)
3518
+ Ae.value === "all" ? (v(), f("small", rh, c((le = i(b)(e.lang).find((Ce) => Ce.id === i(nt)(U.screenId, U.stateId))) == null ? void 0 : le.stateLabel), 1)) : C("", !0)
3519
3519
  ]),
3520
3520
  t("td", null, c(U.testItem), 1),
3521
3521
  t("td", null, c(U.testPoint), 1),
@@ -3607,31 +3607,31 @@ const Ug = { class: "test-case-workbench" }, jg = { class: "test-case-toolbar" }
3607
3607
  ]),
3608
3608
  t("fieldset", null, [
3609
3609
  t("legend", null, c(B.steps) + " *", 1),
3610
- (v(!0), f(D, null, R(H.steps, (U, re) => (v(), f("div", {
3611
- key: re,
3610
+ (v(!0), f(D, null, R(H.steps, (U, le) => (v(), f("div", {
3611
+ key: le,
3612
3612
  class: "test-case-step"
3613
3613
  }, [
3614
- t("b", null, c(re + 1), 1),
3614
+ t("b", null, c(le + 1), 1),
3615
3615
  N(t("textarea", {
3616
- "onUpdate:modelValue": (Ce) => H.steps[re] = Ce,
3616
+ "onUpdate:modelValue": (Ce) => H.steps[le] = Ce,
3617
3617
  rows: "2"
3618
3618
  }, null, 8, mh), [
3619
- [G, H.steps[re]]
3619
+ [G, H.steps[le]]
3620
3620
  ]),
3621
3621
  t("div", null, [
3622
3622
  t("button", {
3623
3623
  type: "button",
3624
3624
  "aria-label": B.moveUp,
3625
- disabled: re === 0,
3626
- onClick: (Ce) => xe(re, -1)
3625
+ disabled: le === 0,
3626
+ onClick: (Ce) => xe(le, -1)
3627
3627
  }, [
3628
3628
  V(i(Od))
3629
3629
  ], 8, gh),
3630
3630
  t("button", {
3631
3631
  type: "button",
3632
3632
  "aria-label": B.moveDown,
3633
- disabled: re === H.steps.length - 1,
3634
- onClick: (Ce) => xe(re, 1)
3633
+ disabled: le === H.steps.length - 1,
3634
+ onClick: (Ce) => xe(le, 1)
3635
3635
  }, [
3636
3636
  V(i(Bd))
3637
3637
  ], 8, hh),
@@ -3639,7 +3639,7 @@ const Ug = { class: "test-case-workbench" }, jg = { class: "test-case-toolbar" }
3639
3639
  type: "button",
3640
3640
  "aria-label": B.removeStep,
3641
3641
  disabled: H.steps.length === 1,
3642
- onClick: (Ce) => H.steps.splice(re, 1)
3642
+ onClick: (Ce) => H.steps.splice(le, 1)
3643
3643
  }, [
3644
3644
  V(i(hn))
3645
3645
  ], 8, yh)
@@ -4513,7 +4513,7 @@ Git 状态:未提交 / 已提交 / 已推送
4513
4513
  __name: "PrototypeCoreHelpPage",
4514
4514
  emits: ["close"],
4515
4515
  setup(e) {
4516
- const n = w("idle"), o = "1.2.19";
4516
+ const n = w("idle"), o = "1.2.20";
4517
4517
  let s;
4518
4518
  function r() {
4519
4519
  const g = document.createElement("textarea");
@@ -4585,7 +4585,7 @@ Git 状态:未提交 / 已提交 / 已推送
4585
4585
  __name: "PrototypeCoreThemeGuidePage",
4586
4586
  emits: ["close"],
4587
4587
  setup(e) {
4588
- const n = w("idle"), o = "1.2.19";
4588
+ const n = w("idle"), o = "1.2.20";
4589
4589
  let s;
4590
4590
  function r() {
4591
4591
  const g = document.createElement("textarea");
@@ -4860,7 +4860,7 @@ const zh = Qt({
4860
4860
  Object.entries(eu).forEach(([e, n]) => {
4861
4861
  n.length && (Il[e] = n[0].id);
4862
4862
  });
4863
- const Jh = w("annotations"), ln = w(Cr), gn = w("idle"), yn = w(Cr ? "云端协作已启用" : "本地兜底模式"), Dt = w(""), So = w(pu), sa = w(String(pu)), aa = w(""), Wh = w(!1), Yh = w(!0), fa = w(!1), ma = w(""), cs = w(null), $l = w(""), ds = w("view"), jn = w({ featureName: "", featureDescription: "", specialNote: "", color: Mt.ocean }), le = w([]), bn = w(null), Ze = w([]), ht = w(null), Hn = w("local-seed"), gu = w(!1), Gt = w({
4863
+ const Jh = w("annotations"), ln = w(Cr), gn = w("idle"), yn = w(Cr ? "云端协作已启用" : "本地兜底模式"), Dt = w(""), So = w(pu), sa = w(String(pu)), aa = w(""), Wh = w(!1), Yh = w(!0), fa = w(!1), ma = w(""), cs = w(null), $l = w(""), ds = w("view"), jn = w({ featureName: "", featureDescription: "", specialNote: "", color: Mt.ocean }), ie = w([]), bn = w(null), Ze = w([]), ht = w(null), Hn = w("local-seed"), gu = w(!1), Gt = w({
4864
4864
  gitee: {},
4865
4865
  "local-cache": {},
4866
4866
  "local-seed": {}
@@ -4914,7 +4914,7 @@ const Qh = x(() => {
4914
4914
  const e = Object.values(Ue.value).find((n) => n.status === "error");
4915
4915
  return (e == null ? void 0 : e.message) || "注释 / 页面描述 / 流程";
4916
4916
  }), ny = x(() => De.remoteWritable && fn.value !== "running");
4917
- function ie(e, n, o, s = "", r) {
4917
+ function re(e, n, o, s = "", r) {
4918
4918
  Ue.value = {
4919
4919
  ...Ue.value,
4920
4920
  [e]: { source: n, status: o, message: s, syncedAt: r ?? Ue.value[e].syncedAt }
@@ -4927,7 +4927,7 @@ function Pl(e, n, o, s, r) {
4927
4927
  d && d !== n && (aa.value = `检测到远端${s}更新,已同步到当前页面`);
4928
4928
  }
4929
4929
  function Dl(e, n) {
4930
- ie(e, Ue.value[e].source, "conflict", n), gn.value = "error", yn.value = n;
4930
+ re(e, Ue.value[e].source, "conflict", n), gn.value = "error", yn.value = n;
4931
4931
  }
4932
4932
  function oy(e, n) {
4933
4933
  ls.value = { ...ls.value, [e]: n };
@@ -5123,7 +5123,7 @@ function vs(e) {
5123
5123
  function sn() {
5124
5124
  return j(ft.value, St.value);
5125
5125
  }
5126
- const pl = x(() => le.value.filter((e) => j(e.screenId, e.stateId) === sn())), Nl = x(() => Gt.value[Hn.value][sn()] ?? null);
5126
+ const pl = x(() => ie.value.filter((e) => j(e.screenId, e.stateId) === sn())), Nl = x(() => Gt.value[Hn.value][sn()] ?? null);
5127
5127
  function vl(e) {
5128
5128
  return Object.fromEntries(e.map((n) => [j(n.screenId, n.stateId), n]));
5129
5129
  }
@@ -5158,7 +5158,7 @@ function ky(e) {
5158
5158
  fs(r) && (o[s.id] = Pu(r));
5159
5159
  }), o;
5160
5160
  }
5161
- const xy = x(() => ky(ft.value)), Iy = x(() => Du(ft.value)), $y = x(() => fs(sn())), Au = x(() => le.value.find((e) => e.id === $l.value) ?? null), _y = x(() => le.value.find((e) => e.id === ma.value) ?? null);
5161
+ const xy = x(() => ky(ft.value)), Iy = x(() => Du(ft.value)), $y = x(() => fs(sn())), Au = x(() => ie.value.find((e) => e.id === $l.value) ?? null), _y = x(() => ie.value.find((e) => e.id === ma.value) ?? null);
5162
5162
  function ms(e) {
5163
5163
  return typeof e == "string" && rs(e) ? e.toLowerCase() : void 0;
5164
5164
  }
@@ -5274,11 +5274,11 @@ async function Dy() {
5274
5274
  }), Wi("pageDescriptions", A);
5275
5275
  }
5276
5276
  const I = ut("annotations"), ee = ut("pageDescriptions"), me = Object.values(I.scopes).flatMap((A) => A.value), oe = Object.values(ee.scopes).map((A) => A.value), Z = new Set(Object.keys(I.scopes)), ae = new Set(Object.keys(ee.scopes)), B = [...g.annotations.filter((A) => !Z.has(j(A.screenId, A.stateId))), ...me], ke = [...g.pageDescriptions.filter((A) => !ae.has(j(A.screenId, A.stateId))), ...oe], we = wr("flows"), Ae = Z.size ? { value: B, source: "local-cache" } : { value: g.annotations, source: "local-seed" }, Y = ae.size ? { value: ke, source: "local-cache" } : { value: g.pageDescriptions, source: "local-seed" }, $e = pv(we, g.flows);
5277
- le.value = Ae.value, Ze.value = Y.value, Gt.value = {
5277
+ ie.value = Ae.value, Ze.value = Y.value, Gt.value = {
5278
5278
  gitee: {},
5279
5279
  "local-cache": vl(oe),
5280
5280
  "local-seed": vl(g.pageDescriptions)
5281
- }, Hn.value = Gt.value["local-cache"][sn()] ? "local-cache" : "local-seed", tt.value = $e.value, ie("annotations", Ae.source, "idle"), ie("pageDescriptions", Y.source, "idle"), ie("flows", $e.source, "idle"), Kt.value = ((_e = tt.value[0]) == null ? void 0 : _e.id) ?? "", ln.value ? await ua(!1) : yn.value = De.unavailableReason, Kn(), hu.value = !0;
5281
+ }, Hn.value = Gt.value["local-cache"][sn()] ? "local-cache" : "local-seed", tt.value = $e.value, re("annotations", Ae.source, "idle"), re("pageDescriptions", Y.source, "idle"), re("flows", $e.source, "idle"), Kt.value = ((_e = tt.value[0]) == null ? void 0 : _e.id) ?? "", ln.value ? await ua(!1) : yn.value = De.unavailableReason, Kn(), hu.value = !0;
5282
5282
  }
5283
5283
  ze([Te, Ct], () => {
5284
5284
  var e;
@@ -5327,8 +5327,8 @@ async function Ay(e, n = ps(e, St.value), o = !1) {
5327
5327
  if (!s) return !1;
5328
5328
  const r = j(e, n);
5329
5329
  Pl("annotations", s.sha, o, "注释", r);
5330
- const d = ra(s.value).map((b) => ({ ...b, screenId: e, stateId: n })), g = [...le.value.filter((b) => j(b.screenId, b.stateId) !== r), ...d], h = (/* @__PURE__ */ new Date()).toISOString();
5331
- return ot("annotations", r, d, s.sha, h, "synced"), le.value = g, ga(e, n, d.length), ie("annotations", "gitee", "success", s.legacy ? "已读取主分支旧目录" : "", h), !0;
5330
+ const d = ra(s.value).map((b) => ({ ...b, screenId: e, stateId: n })), g = [...ie.value.filter((b) => j(b.screenId, b.stateId) !== r), ...d], h = (/* @__PURE__ */ new Date()).toISOString();
5331
+ return ot("annotations", r, d, s.sha, h, "synced"), ie.value = g, ga(e, n, d.length), re("annotations", "gitee", "success", s.legacy ? "已读取主分支旧目录" : "", h), !0;
5332
5332
  }
5333
5333
  async function Ey(e = !1) {
5334
5334
  const n = ft.value, o = St.value, s = j(n, o), r = await _r(j(n, o));
@@ -5340,10 +5340,10 @@ async function Ey(e = !1) {
5340
5340
  Bt("gitee", s, d);
5341
5341
  const h = ut("pageDescriptions").scopes[s];
5342
5342
  if ((h == null ? void 0 : h.status) === "pending")
5343
- ie("pageDescriptions", "local-cache", "idle", "已读取 Gitee,本地缓存仍有待推送修改", g);
5343
+ re("pageDescriptions", "local-cache", "idle", "已读取 Gitee,本地缓存仍有待推送修改", g);
5344
5344
  else {
5345
5345
  const b = [...Ze.value.filter((I) => j(I.screenId, I.stateId) !== s), d];
5346
- ot("pageDescriptions", s, d, r.sha, g, "synced"), Bt("local-cache", s, d), Ze.value = b, ha(n, o, 1, d.highlighted, d.highlightColor), gu.value || (Hn.value = "gitee"), ie("pageDescriptions", "gitee", "success", r.legacy ? "已读取主分支旧目录" : "", g);
5346
+ ot("pageDescriptions", s, d, r.sha, g, "synced"), Bt("local-cache", s, d), Ze.value = b, ha(n, o, 1, d.highlighted, d.highlightColor), gu.value || (Hn.value = "gitee"), re("pageDescriptions", "gitee", "success", r.legacy ? "已读取主分支旧目录" : "", g);
5347
5347
  }
5348
5348
  return s === sn() && Kn(), !0;
5349
5349
  }
@@ -5351,23 +5351,23 @@ async function Rl(e = !1) {
5351
5351
  var n;
5352
5352
  if (ln.value) {
5353
5353
  if (pa(e, ls.value.annotations)) {
5354
- ie("annotations", Ue.value.annotations.source, "idle", "检测到本地编辑,已暂缓轮询覆盖");
5354
+ re("annotations", Ue.value.annotations.source, "idle", "检测到本地编辑,已暂缓轮询覆盖");
5355
5355
  return;
5356
5356
  }
5357
- gn.value = "syncing", ie("annotations", Ue.value.annotations.source, "syncing");
5357
+ gn.value = "syncing", re("annotations", Ue.value.annotations.source, "syncing");
5358
5358
  try {
5359
5359
  const o = await Sv();
5360
5360
  bn.value = (o == null ? void 0 : o.value) ?? bn.value;
5361
5361
  const s = await Ay(ft.value, St.value, e), r = j(ft.value, St.value);
5362
5362
  if (!s && !((n = o == null ? void 0 : o.value.scopes) != null && n[r])) {
5363
- const d = le.value.filter((h) => j(h.screenId, h.stateId) !== r), g = (/* @__PURE__ */ new Date()).toISOString();
5364
- gl("annotations", r), le.value = d, ie("annotations", "gitee", "success", "", g);
5363
+ const d = ie.value.filter((h) => j(h.screenId, h.stateId) !== r), g = (/* @__PURE__ */ new Date()).toISOString();
5364
+ gl("annotations", r), ie.value = d, re("annotations", "gitee", "success", "", g);
5365
5365
  } else if (!s)
5366
5366
  throw new Error("Gitee 当前注释文件不存在");
5367
5367
  gn.value = "success", yn.value = "注释已同步";
5368
5368
  } catch (o) {
5369
5369
  const s = sn(), r = ut("annotations").scopes[s];
5370
- r && ot("annotations", s, r.value, r.revision, r.lastRemoteSyncAt, "stale", o instanceof Error ? o.message : "注释同步失败"), gn.value = "error", yn.value = "注释同步失败", ie("annotations", Ue.value.annotations.source, "error", o instanceof Error ? o.message : "注释同步失败");
5370
+ r && ot("annotations", s, r.value, r.revision, r.lastRemoteSyncAt, "stale", o instanceof Error ? o.message : "注释同步失败"), gn.value = "error", yn.value = "注释同步失败", re("annotations", Ue.value.annotations.source, "error", o instanceof Error ? o.message : "注释同步失败");
5371
5371
  }
5372
5372
  }
5373
5373
  }
@@ -5375,10 +5375,10 @@ async function Ol(e = !1) {
5375
5375
  var n;
5376
5376
  if (ln.value) {
5377
5377
  if (pa(e, ls.value.pageDescriptions)) {
5378
- ie("pageDescriptions", Ue.value.pageDescriptions.source, "idle", "检测到本地编辑,已暂缓轮询覆盖");
5378
+ re("pageDescriptions", Ue.value.pageDescriptions.source, "idle", "检测到本地编辑,已暂缓轮询覆盖");
5379
5379
  return;
5380
5380
  }
5381
- gn.value = "syncing", ie("pageDescriptions", Ue.value.pageDescriptions.source, "syncing");
5381
+ gn.value = "syncing", re("pageDescriptions", Ue.value.pageDescriptions.source, "syncing");
5382
5382
  try {
5383
5383
  const o = await $r();
5384
5384
  ht.value = (o == null ? void 0 : o.value) ?? ht.value;
@@ -5386,12 +5386,12 @@ async function Ol(e = !1) {
5386
5386
  if (!s && !((n = o == null ? void 0 : o.value.scopes) != null && n[r])) {
5387
5387
  Bt("gitee", r, null);
5388
5388
  const d = ut("pageDescriptions").scopes[r];
5389
- (d == null ? void 0 : d.status) === "pending" ? ie("pageDescriptions", "local-cache", "idle", "Gitee 当前 Scope 不存在,本地缓存待推送") : (gl("pageDescriptions", r), Bt("local-cache", r, null), Ze.value = Ze.value.filter((g) => j(g.screenId, g.stateId) !== r), ie("pageDescriptions", "gitee", "success", "", (/* @__PURE__ */ new Date()).toISOString())), Kn();
5389
+ (d == null ? void 0 : d.status) === "pending" ? re("pageDescriptions", "local-cache", "idle", "Gitee 当前 Scope 不存在,本地缓存待推送") : (gl("pageDescriptions", r), Bt("local-cache", r, null), Ze.value = Ze.value.filter((g) => j(g.screenId, g.stateId) !== r), re("pageDescriptions", "gitee", "success", "", (/* @__PURE__ */ new Date()).toISOString())), Kn();
5390
5390
  } else if (!s) throw new Error("Gitee 当前页面描述不存在");
5391
5391
  gn.value = "success", yn.value = Ue.value.pageDescriptions.source === "local-cache" ? "已读取 Gitee,本地缓存待推送" : "页面说明已同步";
5392
5392
  } catch (o) {
5393
5393
  const s = sn(), r = ut("pageDescriptions").scopes[s];
5394
- r && ot("pageDescriptions", s, r.value, r.revision, r.lastRemoteSyncAt, r.status === "pending" ? "pending" : "stale", o instanceof Error ? o.message : "页面描述同步失败"), gn.value = "error", yn.value = "页面说明同步失败", ie("pageDescriptions", Ue.value.pageDescriptions.source, "error", o instanceof Error ? o.message : "页面描述同步失败");
5394
+ r && ot("pageDescriptions", s, r.value, r.revision, r.lastRemoteSyncAt, r.status === "pending" ? "pending" : "stale", o instanceof Error ? o.message : "页面描述同步失败"), gn.value = "error", yn.value = "页面说明同步失败", re("pageDescriptions", Ue.value.pageDescriptions.source, "error", o instanceof Error ? o.message : "页面描述同步失败");
5395
5395
  }
5396
5396
  }
5397
5397
  }
@@ -5399,23 +5399,23 @@ async function Eu(e = !1) {
5399
5399
  var n, o, s, r;
5400
5400
  if (ln.value) {
5401
5401
  if (bu.value) {
5402
- tt.value = ((n = en("flows")) == null ? void 0 : n.value) ?? tt.value, ie("flows", "local-cache", "idle", "存在未推送到 Gitee 的本地流程");
5402
+ tt.value = ((n = en("flows")) == null ? void 0 : n.value) ?? tt.value, re("flows", "local-cache", "idle", "存在未推送到 Gitee 的本地流程");
5403
5403
  return;
5404
5404
  }
5405
5405
  if (pa(e, ls.value.flows)) {
5406
- ie("flows", Ue.value.flows.source, "idle", "检测到流程编辑,已暂缓轮询覆盖");
5406
+ re("flows", Ue.value.flows.source, "idle", "检测到流程编辑,已暂缓轮询覆盖");
5407
5407
  return;
5408
5408
  }
5409
- ie("flows", Ue.value.flows.source, "syncing");
5409
+ re("flows", Ue.value.flows.source, "syncing");
5410
5410
  try {
5411
5411
  const d = await $v(), g = Array.isArray((o = d == null ? void 0 : d.value) == null ? void 0 : o.flows) ? d.value.flows : null;
5412
5412
  if (!d || !g) throw new Error("Gitee 流程文件不存在");
5413
5413
  Pl("flows", d.sha, e, "流程");
5414
5414
  const h = (/* @__PURE__ */ new Date()).toISOString();
5415
- tn("flows", g, d.sha, h, "synced"), tt.value = ((s = en("flows")) == null ? void 0 : s.value) ?? g, tt.value.some((b) => b.id === Kt.value) || (Kt.value = ((r = tt.value[0]) == null ? void 0 : r.id) ?? ""), ie("flows", "gitee", "success", "", h);
5415
+ tn("flows", g, d.sha, h, "synced"), tt.value = ((s = en("flows")) == null ? void 0 : s.value) ?? g, tt.value.some((b) => b.id === Kt.value) || (Kt.value = ((r = tt.value[0]) == null ? void 0 : r.id) ?? ""), re("flows", "gitee", "success", "", h);
5416
5416
  } catch (d) {
5417
5417
  const g = en("flows");
5418
- g && tn("flows", g.value, g.revision, g.lastRemoteSyncAt, "stale", d instanceof Error ? d.message : "流程同步失败"), ie("flows", Ue.value.flows.source, "error", d instanceof Error ? d.message : "流程同步失败");
5418
+ g && tn("flows", g.value, g.revision, g.lastRemoteSyncAt, "stale", d instanceof Error ? d.message : "流程同步失败"), re("flows", Ue.value.flows.source, "error", d instanceof Error ? d.message : "流程同步失败");
5419
5419
  }
5420
5420
  }
5421
5421
  }
@@ -5423,7 +5423,7 @@ async function ua(e = !1) {
5423
5423
  await Promise.all([Rl(e), Ol(e), Eu(e)]);
5424
5424
  }
5425
5425
  function nr(e) {
5426
- const n = (/* @__PURE__ */ new Date()).toISOString(), o = e === "annotations" ? le.value : Ze.value, s = /* @__PURE__ */ new Map();
5426
+ const n = (/* @__PURE__ */ new Date()).toISOString(), o = e === "annotations" ? ie.value : Ze.value, s = /* @__PURE__ */ new Map();
5427
5427
  o.forEach((g) => {
5428
5428
  const h = j(g.screenId, g.stateId), b = s.get(h), I = e === "pageDescriptions" && g.highlighted === !0;
5429
5429
  s.set(h, {
@@ -5453,7 +5453,7 @@ async function Ty() {
5453
5453
  return;
5454
5454
  }
5455
5455
  const n = [], o = /* @__PURE__ */ new Map();
5456
- le.value.forEach((r) => {
5456
+ ie.value.forEach((r) => {
5457
5457
  const d = j(r.screenId, r.stateId);
5458
5458
  o.set(d, [...o.get(d) ?? [], r]);
5459
5459
  }), o.forEach((r, d) => n.push({ label: `注释:${d}`, run: () => On("annotations", d, r, e) })), n.push({ label: "注释索引", run: () => On("annotations", void 0, nr("annotations"), e) }), Ze.value.forEach((r) => {
@@ -5507,17 +5507,17 @@ async function ya(e, n, o, s) {
5507
5507
  if (!r) return null;
5508
5508
  const d = ra(r.value).map((b) => ({ ...b, screenId: e, stateId: n }));
5509
5509
  ga(e, n, d.length);
5510
- const g = (/* @__PURE__ */ new Date()).toISOString(), h = [...le.value.filter((b) => j(b.screenId, b.stateId) !== j(e, n)), ...d];
5511
- if (ot("annotations", j(e, n), d, r.sha, g, "synced"), le.value = h, bn.value)
5510
+ const g = (/* @__PURE__ */ new Date()).toISOString(), h = [...ie.value.filter((b) => j(b.screenId, b.stateId) !== j(e, n)), ...d];
5511
+ if (ot("annotations", j(e, n), d, r.sha, g, "synced"), ie.value = h, bn.value)
5512
5512
  try {
5513
5513
  await kv(bn.value, Dt.value.trim() || "未署名", j(e, n));
5514
5514
  } catch (b) {
5515
- return ie("annotations", "gitee", "error", `注释已保存,但索引同步失败:${b instanceof Error ? b.message : "未知错误"}`, g), d;
5515
+ return re("annotations", "gitee", "error", `注释已保存,但索引同步失败:${b instanceof Error ? b.message : "未知错误"}`, g), d;
5516
5516
  }
5517
- return ie("annotations", "gitee", "success", "", g), d;
5517
+ return re("annotations", "gitee", "success", "", g), d;
5518
5518
  } catch (r) {
5519
5519
  const d = r instanceof Error ? r.message : "注释保存失败";
5520
- r instanceof Cn ? Dl("annotations", d) : ie("annotations", Ue.value.annotations.source, "error", d);
5520
+ r instanceof Cn ? Dl("annotations", d) : re("annotations", Ue.value.annotations.source, "error", d);
5521
5521
  return;
5522
5522
  }
5523
5523
  }
@@ -5535,10 +5535,10 @@ async function Oy() {
5535
5535
  createdAt: n,
5536
5536
  updatedAt: n
5537
5537
  }, s = await ya(e.screenId, e.stateId, "新增", (r) => [...r, o]);
5538
- s !== void 0 && (s ? le.value = [...le.value.filter((r) => j(r.screenId, r.stateId) !== j(e.screenId, e.stateId)), ...s] : (le.value = [...le.value, o], ga(e.screenId, e.stateId, pl.value.length), ot("annotations", j(e.screenId, e.stateId), pl.value, null, null, "pending"), ie("annotations", "local-cache", "success", De.unavailableReason)), Tu());
5538
+ s !== void 0 && (s ? ie.value = [...ie.value.filter((r) => j(r.screenId, r.stateId) !== j(e.screenId, e.stateId)), ...s] : (ie.value = [...ie.value, o], ga(e.screenId, e.stateId, pl.value.length), ot("annotations", j(e.screenId, e.stateId), pl.value, null, null, "pending"), re("annotations", "local-cache", "success", De.unavailableReason)), Tu());
5539
5539
  }
5540
5540
  function By(e) {
5541
- const n = le.value.find((o) => o.id === e);
5541
+ const n = ie.value.find((o) => o.id === e);
5542
5542
  n && ($l.value = e, jn.value = {
5543
5543
  featureName: n.featureName,
5544
5544
  featureDescription: n.featureDescription,
@@ -5561,10 +5561,10 @@ async function Uy() {
5561
5561
  authorName: Dt.value.trim() || r.authorName,
5562
5562
  updatedAt: n
5563
5563
  } : r, s = await ya(e.screenId, e.stateId, "编辑", (r) => r.map(o));
5564
- s !== void 0 && (le.value = s ? [...le.value.filter((r) => j(r.screenId, r.stateId) !== j(e.screenId, e.stateId)), ...s] : le.value.map(o), s === null && ot("annotations", j(e.screenId, e.stateId), le.value.filter((r) => j(r.screenId, r.stateId) === j(e.screenId, e.stateId)), null, null, "pending"), Nu());
5564
+ s !== void 0 && (ie.value = s ? [...ie.value.filter((r) => j(r.screenId, r.stateId) !== j(e.screenId, e.stateId)), ...s] : ie.value.map(o), s === null && ot("annotations", j(e.screenId, e.stateId), ie.value.filter((r) => j(r.screenId, r.stateId) === j(e.screenId, e.stateId)), null, null, "pending"), Nu());
5565
5565
  }
5566
5566
  async function jy(e, n, o) {
5567
- const s = le.value.find((b) => b.id === e);
5567
+ const s = ie.value.find((b) => b.id === e);
5568
5568
  if (!s) return !1;
5569
5569
  const r = (/* @__PURE__ */ new Date()).toISOString(), d = (b) => b.id === e ? {
5570
5570
  ...b,
@@ -5578,13 +5578,13 @@ async function jy(e, n, o) {
5578
5578
  "编辑",
5579
5579
  (b) => b.some((I) => I.id === e) ? b.map(d) : [...b, g]
5580
5580
  );
5581
- return h === void 0 ? !1 : (le.value = h ? [...le.value.filter((b) => j(b.screenId, b.stateId) !== j(s.screenId, s.stateId)), ...h] : le.value.map(d), h === null && ot("annotations", j(s.screenId, s.stateId), le.value.filter((b) => j(b.screenId, b.stateId) === j(s.screenId, s.stateId)), null, null, "pending"), !0);
5581
+ return h === void 0 ? !1 : (ie.value = h ? [...ie.value.filter((b) => j(b.screenId, b.stateId) !== j(s.screenId, s.stateId)), ...h] : ie.value.map(d), h === null && ot("annotations", j(s.screenId, s.stateId), ie.value.filter((b) => j(b.screenId, b.stateId) === j(s.screenId, s.stateId)), null, null, "pending"), !0);
5582
5582
  }
5583
5583
  async function My(e) {
5584
- const n = le.value.find((s) => s.id === e);
5584
+ const n = ie.value.find((s) => s.id === e);
5585
5585
  if (!n) return;
5586
5586
  const o = await ya(n.screenId, n.stateId, "删除", (s) => s.filter((r) => r.id !== e));
5587
- o !== void 0 && (le.value = o ? [...le.value.filter((s) => j(s.screenId, s.stateId) !== j(n.screenId, n.stateId)), ...o] : le.value.filter((s) => s.id !== e), o === null && ot("annotations", j(n.screenId, n.stateId), le.value.filter((s) => j(s.screenId, s.stateId) === j(n.screenId, n.stateId)), null, null, "pending"), ga(n.screenId, n.stateId, le.value.filter((s) => j(s.screenId, s.stateId) === j(n.screenId, n.stateId)).length));
5587
+ o !== void 0 && (ie.value = o ? [...ie.value.filter((s) => j(s.screenId, s.stateId) !== j(n.screenId, n.stateId)), ...o] : ie.value.filter((s) => s.id !== e), o === null && ot("annotations", j(n.screenId, n.stateId), ie.value.filter((s) => j(s.screenId, s.stateId) === j(n.screenId, n.stateId)), null, null, "pending"), ga(n.screenId, n.stateId, ie.value.filter((s) => j(s.screenId, s.stateId) === j(n.screenId, n.stateId)).length));
5588
5588
  }
5589
5589
  function Vy(e) {
5590
5590
  is.value && window.clearTimeout(is.value), ma.value = e;
@@ -5602,12 +5602,12 @@ function Ru(e) {
5602
5602
  var s, r, d;
5603
5603
  return (d = (r = (s = bn.value) == null ? void 0 : s.scopes) == null ? void 0 : r[o]) == null ? void 0 : d.count;
5604
5604
  });
5605
- return n.some((o) => typeof o == "number") ? n.reduce((o, s) => o + (s ?? 0), 0) : le.value.filter((o) => o.screenId === e).length;
5605
+ return n.some((o) => typeof o == "number") ? n.reduce((o, s) => o + (s ?? 0), 0) : ie.value.filter((o) => o.screenId === e).length;
5606
5606
  }
5607
5607
  function fl(e, n) {
5608
5608
  var s, r, d;
5609
5609
  const o = j(e, n);
5610
- return ((d = (r = (s = bn.value) == null ? void 0 : s.scopes) == null ? void 0 : r[o]) == null ? void 0 : d.count) ?? le.value.filter((g) => j(g.screenId, g.stateId) === o).length;
5610
+ return ((d = (r = (s = bn.value) == null ? void 0 : s.scopes) == null ? void 0 : r[o]) == null ? void 0 : d.count) ?? ie.value.filter((g) => j(g.screenId, g.stateId) === o).length;
5611
5611
  }
5612
5612
  function Bl() {
5613
5613
  const e = ft.value, n = St.value, o = (/* @__PURE__ */ new Date()).toISOString(), s = Nl.value;
@@ -5622,11 +5622,11 @@ function Bl() {
5622
5622
  }
5623
5623
  function Ul() {
5624
5624
  const e = Bl(), n = j(e.screenId, e.stateId), o = ut("pageDescriptions").scopes[n];
5625
- return ot("pageDescriptions", n, e, (o == null ? void 0 : o.revision) ?? null, (o == null ? void 0 : o.lastRemoteSyncAt) ?? null, "pending"), Bt("local-cache", n, e), Ze.value = [...Ze.value.filter((s) => j(s.screenId, s.stateId) !== n), e], ha(e.screenId, e.stateId, 1, e.highlighted, e.highlightColor), ie("pageDescriptions", "local-cache", "success", "页面描述已保存到本地缓存,尚未推送 Gitee"), !0;
5625
+ return ot("pageDescriptions", n, e, (o == null ? void 0 : o.revision) ?? null, (o == null ? void 0 : o.lastRemoteSyncAt) ?? null, "pending"), Bt("local-cache", n, e), Ze.value = [...Ze.value.filter((s) => j(s.screenId, s.stateId) !== n), e], ha(e.screenId, e.stateId, 1, e.highlighted, e.highlightColor), re("pageDescriptions", "local-cache", "success", "页面描述已保存到本地缓存,尚未推送 Gitee"), !0;
5626
5626
  }
5627
5627
  async function Ou(e) {
5628
5628
  if (!De.remoteWritable)
5629
- return ie("pageDescriptions", Hn.value, "error", De.unavailableReason || "Gitee 当前不可写"), !1;
5629
+ return re("pageDescriptions", Hn.value, "error", De.unavailableReason || "Gitee 当前不可写"), !1;
5630
5630
  const n = j(e.screenId, e.stateId);
5631
5631
  try {
5632
5632
  const o = await Pr(n, e.authorName ?? "未署名", e);
@@ -5636,10 +5636,10 @@ async function Ou(e) {
5636
5636
  const r = Ln([{ ...o.value, screenId: e.screenId, stateId: e.stateId }])[0];
5637
5637
  if (!r) throw new Error(`页面描述 ${n} 回读内容无效`);
5638
5638
  const d = (/* @__PURE__ */ new Date()).toISOString();
5639
- return ot("pageDescriptions", n, r, o.sha, d, "synced"), Bt("gitee", n, r), Bt("local-cache", n, r), Ze.value = [...Ze.value.filter((g) => j(g.screenId, g.stateId) !== n), r], ht.value = s.value, ie("pageDescriptions", "gitee", "success", "", d), !0;
5639
+ return ot("pageDescriptions", n, r, o.sha, d, "synced"), Bt("gitee", n, r), Bt("local-cache", n, r), Ze.value = [...Ze.value.filter((g) => j(g.screenId, g.stateId) !== n), r], ht.value = s.value, re("pageDescriptions", "gitee", "success", "", d), !0;
5640
5640
  } catch (o) {
5641
5641
  const s = o instanceof Error ? o.message : "页面描述保存失败";
5642
- return o instanceof Cn ? Dl("pageDescriptions", s) : ie("pageDescriptions", Ue.value.pageDescriptions.source, "error", s), !1;
5642
+ return o instanceof Cn ? Dl("pageDescriptions", s) : re("pageDescriptions", Ue.value.pageDescriptions.source, "error", s), !1;
5643
5643
  }
5644
5644
  }
5645
5645
  async function Gy() {
@@ -5649,10 +5649,10 @@ async function Gy() {
5649
5649
  async function zy(e) {
5650
5650
  if (e === "gitee") return !1;
5651
5651
  if (!De.remoteWritable)
5652
- return ie("pageDescriptions", e, "error", De.unavailableReason || "Gitee 当前不可写"), !1;
5652
+ return re("pageDescriptions", e, "error", De.unavailableReason || "Gitee 当前不可写"), !1;
5653
5653
  const n = sn(), o = e === "local-cache" ? Bl() : Gt.value[e][n];
5654
5654
  if (!o)
5655
- return ie("pageDescriptions", e, "error", `${e === "local-cache" ? "本地缓存" : "JSON"} 当前 Scope 不存在页面描述`), !1;
5655
+ return re("pageDescriptions", e, "error", `${e === "local-cache" ? "本地缓存" : "JSON"} 当前 Scope 不存在页面描述`), !1;
5656
5656
  e === "local-cache" && Ul();
5657
5657
  const s = await Ou(o);
5658
5658
  return s && (Hn.value = "gitee", Kn()), s;
@@ -5697,10 +5697,10 @@ async function Bu(e = {}) {
5697
5697
  }
5698
5698
  Kn();
5699
5699
  const ee = `JSON 同步完成:成功 ${h.length},跳过 ${b.length},失败 ${I.length}`;
5700
- return ie("pageDescriptions", "gitee", I.length ? "error" : "success", ee, (/* @__PURE__ */ new Date()).toISOString()), { syncedScopes: h, skippedScopes: b, failedScopes: I, total: d.length };
5700
+ return re("pageDescriptions", "gitee", I.length ? "error" : "success", ee, (/* @__PURE__ */ new Date()).toISOString()), { syncedScopes: h, skippedScopes: b, failedScopes: I, total: d.length };
5701
5701
  }
5702
5702
  function Hy() {
5703
- const e = new Blob([JSON.stringify(le.value, null, 2)], { type: "application/json;charset=utf-8" }), n = document.createElement("a");
5703
+ const e = new Blob([JSON.stringify(ie.value, null, 2)], { type: "application/json;charset=utf-8" }), n = document.createElement("a");
5704
5704
  n.href = URL.createObjectURL(e), n.download = "annotations.json", n.click(), URL.revokeObjectURL(n.href);
5705
5705
  }
5706
5706
  function Ky() {
@@ -5806,7 +5806,7 @@ function Mu(e) {
5806
5806
  function Vu(e) {
5807
5807
  var s;
5808
5808
  const n = JSON.parse(JSON.stringify(e)), o = en("flows");
5809
- return tn("flows", n, (o == null ? void 0 : o.revision) ?? null, (o == null ? void 0 : o.lastRemoteSyncAt) ?? null, "pending"), tt.value = n, wu(!0), tt.value.some((r) => r.id === Kt.value) || (Kt.value = ((s = tt.value[0]) == null ? void 0 : s.id) ?? ""), ie("flows", "local-cache", "success", De.unavailableReason), !0;
5809
+ return tn("flows", n, (o == null ? void 0 : o.revision) ?? null, (o == null ? void 0 : o.lastRemoteSyncAt) ?? null, "pending"), tt.value = n, wu(!0), tt.value.some((r) => r.id === Kt.value) || (Kt.value = ((s = tt.value[0]) == null ? void 0 : s.id) ?? ""), re("flows", "local-cache", "success", De.unavailableReason), !0;
5810
5810
  }
5811
5811
  async function cb(e) {
5812
5812
  var o, s;
@@ -5816,10 +5816,10 @@ async function cb(e) {
5816
5816
  const r = await _v(Dt.value.trim() || "未署名", n), d = Array.isArray((o = r == null ? void 0 : r.value) == null ? void 0 : o.flows) ? r.value.flows : null;
5817
5817
  if (!r || !d) return !1;
5818
5818
  const g = (/* @__PURE__ */ new Date()).toISOString();
5819
- return tn("flows", d, r.sha, g, "synced"), tt.value = d, wu(!1), tt.value.some((h) => h.id === Kt.value) || (Kt.value = ((s = tt.value[0]) == null ? void 0 : s.id) ?? ""), ie("flows", "gitee", "success", "", g), !0;
5819
+ return tn("flows", d, r.sha, g, "synced"), tt.value = d, wu(!1), tt.value.some((h) => h.id === Kt.value) || (Kt.value = ((s = tt.value[0]) == null ? void 0 : s.id) ?? ""), re("flows", "gitee", "success", "", g), !0;
5820
5820
  } catch (r) {
5821
5821
  const d = r instanceof Error ? r.message : "流程推送失败";
5822
- return r instanceof Cn ? Dl("flows", d) : ie("flows", Ue.value.flows.source, "error", d), !1;
5822
+ return r instanceof Cn ? Dl("flows", d) : re("flows", Ue.value.flows.source, "error", d), !1;
5823
5823
  }
5824
5824
  }
5825
5825
  function db(e = tt.value) {
@@ -6203,7 +6203,7 @@ const fb = {
6203
6203
  themeLabel: Pe,
6204
6204
  themeDescription: At,
6205
6205
  screens: U,
6206
- mainFlows: re,
6206
+ mainFlows: le,
6207
6207
  showFlowEditor: Ce,
6208
6208
  canPushFlowsToRemote: jt,
6209
6209
  currentMeta: yt,
@@ -6408,7 +6408,7 @@ const fb = {
6408
6408
  ]
6409
6409
  }
6410
6410
  ];
6411
- }), Yl = x(() => _a.value.reduce((u, a) => u + a.items.length, 0)), Xl = x(() => _a.value.reduce((u, a) => u + a.items.filter((l) => l.configured).length, 0)), Pa = x(() => Yl.value - Xl.value), Da = "1.2.19", Aa = w(""), An = w("idle"), rc = x(() => An.value === "success" && Aa.value !== Da), uc = x(() => An.value === "success" ? `v${Aa.value}` : An.value === "error" ? "版本暂不可用" : "版本检测中");
6411
+ }), Yl = x(() => _a.value.reduce((u, a) => u + a.items.length, 0)), Xl = x(() => _a.value.reduce((u, a) => u + a.items.filter((l) => l.configured).length, 0)), Pa = x(() => Yl.value - Xl.value), Da = "1.2.20", Aa = w(""), An = w("idle"), rc = x(() => An.value === "success" && Aa.value !== Da), uc = x(() => An.value === "success" ? `v${Aa.value}` : An.value === "error" ? "版本暂不可用" : "版本检测中");
6412
6412
  async function cc() {
6413
6413
  if (An.value !== "idle") return;
6414
6414
  An.value = "loading";
@@ -6717,7 +6717,7 @@ Scope:${u}
6717
6717
  return a ? `${u}__${a}` : u;
6718
6718
  }
6719
6719
  const Ba = x(
6720
- () => re.value.flatMap(
6720
+ () => le.value.flatMap(
6721
6721
  (u) => u.rows.flatMap(
6722
6722
  (a, l) => a.filter((S) => S.screenId).map((S, O) => ({
6723
6723
  flowId: u.id,
@@ -6767,7 +6767,7 @@ Scope:${u}
6767
6767
  return [
6768
6768
  { label: "页面", value: U.length, detail: "已注册屏幕" },
6769
6769
  { label: "状态", value: u, detail: "页面/状态 scope" },
6770
- { label: "流程", value: re.value.length, detail: `${Ba.value.length} 个节点` },
6770
+ { label: "流程", value: le.value.length, detail: `${Ba.value.length} 个节点` },
6771
6771
  { label: "页面描述", value: `${a}/${u}`, detail: Fc.value },
6772
6772
  { label: "注释", value: l, detail: ke.value ? "当前已加载云端数据" : "当前本地数据" }
6773
6773
  ];
@@ -7665,7 +7665,7 @@ Scope:${u}
7665
7665
  z(" 编辑流程 ", -1)
7666
7666
  ])])
7667
7667
  ]),
7668
- (v(!0), f(D, null, R(i(re), (l) => (v(), f("button", {
7668
+ (v(!0), f(D, null, R(i(le), (l) => (v(), f("button", {
7669
7669
  key: l.id,
7670
7670
  class: E(["nav-row flow-nav-row", { active: i(b) === l.id }]),
7671
7671
  onClick: (S) => i($t)(l.id)
@@ -8838,7 +8838,7 @@ Scope:${u}
8838
8838
  }, " 退出演示 (Esc) ")) : C("", !0),
8839
8839
  pe.value === "prototype" && i(Ce) && !fe.value ? (v(), He(cv, {
8840
8840
  key: 17,
8841
- flows: i(re),
8841
+ flows: i(le),
8842
8842
  screens: i(U),
8843
8843
  "state-options-by-screen": i(q),
8844
8844
  "can-push-remote": i(jt),
@@ -25,7 +25,7 @@ async function s(t) {
25
25
  i(t.product), c(t.runtimeConfig);
26
26
  const [{ createApp: n }, { default: u }] = await Promise.all([
27
27
  import("vue"),
28
- import("./App-cYNZMbZV.js")
28
+ import("./App-BZFBSdyT.js")
29
29
  ]);
30
30
  return n(u).mount(t.target ?? "#app");
31
31
  }
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { c as e, b as r, m as p, u } from "./index-guF2cLL6.js";
1
+ import { c as e, b as r, m as p, u } from "./index-xlX5FPCA.js";
2
2
  export {
3
3
  e as configurePrototypeProduct,
4
4
  r as configurePrototypeRuntime,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@marktowin/prototype-core",
3
- "version": "1.2.19",
3
+ "version": "1.2.20",
4
4
  "description": "面向移动端与 PC Web 原型的 Vue 评审、流程和协作内核",
5
5
  "license": "MIT",
6
6
  "type": "module",