ss-component-new 1.2.22 → 1.2.23

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 (136) hide show
  1. package/dist/{MTLLoader-Cgu6hVsY.cjs → MTLLoader-B8MnfNfT.cjs} +1 -1
  2. package/dist/{MTLLoader-6BGR4SPQ.js → MTLLoader-BD3cbBAW.js} +1 -1
  3. package/dist/{OrbitControls-KuEu6kM3.cjs → OrbitControls-2UHRU9Fu.cjs} +1 -1
  4. package/dist/{OrbitControls-CqrkpfUW.js → OrbitControls-D1pz0uFI.js} +1 -1
  5. package/dist/{animationData-FMGneVai.cjs → animationData-Bwh55Xw6.cjs} +1 -1
  6. package/dist/{animationData-OlBnUG8w.js → animationData-D0TJ-9dd.js} +4 -4
  7. package/dist/array-DMPAgNcb.cjs +11 -0
  8. package/dist/array-DTXrs6ZK.js +1207 -0
  9. package/dist/{dataUtil-DPRubJA4.js → dataUtil-gEKo7CEq.js} +2 -2
  10. package/dist/{dataUtil-D2dUTgHP.cjs → dataUtil-i5X2xhin.cjs} +1 -1
  11. package/dist/{fileUtil-D4f4EJ9p.js → fileUtil-CN00xr9W.js} +1 -1
  12. package/dist/{fileUtil-DWuPXxGz.cjs → fileUtil-GIRXMs25.cjs} +1 -1
  13. package/dist/{iconfont-CiYOe1nN.cjs → iconfont-C9-pGpAJ.cjs} +1 -1
  14. package/dist/{iconfont-D1aDkauN.js → iconfont-DTSZW2AU.js} +2 -2
  15. package/dist/icons/svg/LowCodeEvent.svg +1 -1
  16. package/dist/icons/svg/LowCodeExtend.svg +1 -1
  17. package/dist/icons/svg/LowCodeSetting.svg +1 -1
  18. package/dist/icons/svg/LowCodeStyle.svg +1 -1
  19. package/dist/{index-Dv32OdnH.js → index-2fqHNrPg.js} +4 -4
  20. package/dist/{index-CfrqPhLf.cjs → index-7Ru3e632.cjs} +1 -1
  21. package/dist/{index-DyA4ALuY.cjs → index-7gU0r1We.cjs} +1 -1
  22. package/dist/{index-Cgs7cequ.js → index-7oJ8Ile4.js} +1 -1
  23. package/dist/{index-C9o3guTc.js → index-B0dydZDW.js} +17 -17
  24. package/dist/{index-CIn_YMID.js → index-BD5yZDAq.js} +2 -2
  25. package/dist/index-BLwwxnzs.cjs +1 -0
  26. package/dist/{index-BQ1gqL2T.cjs → index-BNYeBPmi.cjs} +1 -1
  27. package/dist/{index-DEBf-IBT.cjs → index-BOJUyAaV.cjs} +9 -9
  28. package/dist/{index-BsXwkKZt.js → index-BQBxzTyE.js} +2 -2
  29. package/dist/{index-CJhLlcnS.js → index-BTTpV9o2.js} +3 -3
  30. package/dist/{index-CdNhl58g.cjs → index-BTfg83yY.cjs} +1 -1
  31. package/dist/{index-CkdrE77c.js → index-BVFL7Z_0.js} +3 -3
  32. package/dist/index-BVdolwlx.js +7293 -0
  33. package/dist/{index-D_zs3Ywk.cjs → index-BXEOQo2c.cjs} +1 -1
  34. package/dist/{index-C0eoTBsi.js → index-Be1LJMUR.js} +2 -2
  35. package/dist/{index-y9I5saNf.cjs → index-BkIFY0hK.cjs} +1 -1
  36. package/dist/{index-BvyKSIqa.js → index-Bm3FE_ss.js} +3 -3
  37. package/dist/{index-i1HrhN2m.js → index-BpTrDbkf.js} +4 -4
  38. package/dist/{index-DcgnW8IS.js → index-Bt2MaT2G.js} +6 -6
  39. package/dist/{index-BOwTBtjA.js → index-BuSsSHAY.js} +2733 -2817
  40. package/dist/{index-Vo9hn1HO.js → index-Bvk4OpkL.js} +2 -2
  41. package/dist/{index-Br1HQap-.js → index-BwEfrokO.js} +2 -2
  42. package/dist/{index-dJ_vyooa.cjs → index-C54wX50t.cjs} +1 -1
  43. package/dist/{index-CMSMrWWB.cjs → index-C6C5VWbs.cjs} +1 -1
  44. package/dist/{index-wFocLxVz.cjs → index-CADH_aSQ.cjs} +1 -1
  45. package/dist/{index-GVURdQmb.cjs → index-CFriKZ-T.cjs} +1 -1
  46. package/dist/index-CK54pscx.cjs +1 -0
  47. package/dist/{index-DdYGa8y9.js → index-Cl6HMOao.js} +1 -1
  48. package/dist/{index-C1xFocJD.js → index-CptCatmL.js} +2 -2
  49. package/dist/{index-BdEr19ln.js → index-CqYUVCh5.js} +12 -12
  50. package/dist/index-CsOz5vsv.cjs +1 -0
  51. package/dist/{index-kFjfkR4F.cjs → index-CtXpoEg0.cjs} +1 -1
  52. package/dist/{index-Dw_mx2E5.js → index-CvC2498b.js} +2 -2
  53. package/dist/{index-DN2RDo7w.js → index-CvrBt7bU.js} +3 -3
  54. package/dist/{index-B0mK1X2Z.js → index-D4pN9YmB.js} +2 -2
  55. package/dist/index-D8Y3imz9.cjs +1 -0
  56. package/dist/index-DEEZPcpU.cjs +1 -0
  57. package/dist/index-DEs8s152.js +3621 -0
  58. package/dist/{index-DV1Onr_-.cjs → index-DHp714Ep.cjs} +1 -1
  59. package/dist/index-DMbCaqEC.cjs +15 -0
  60. package/dist/{index-C7Wgog15.js → index-DNs9XPOG.js} +2 -2
  61. package/dist/{index-B3vewIE0.js → index-DOhvzke2.js} +5 -5
  62. package/dist/index-DPX3w6cO.js +2643 -0
  63. package/dist/{index-D6aL_qQ4.cjs → index-DQ3y1xkr.cjs} +1 -1
  64. package/dist/{index-Gqf0Dw_K.cjs → index-DR9beXhk.cjs} +1 -1
  65. package/dist/{index-C8YYklCT.cjs → index-DSchKIyh.cjs} +1 -1
  66. package/dist/{index-vIQwCbI-.cjs → index-DSlPg3dk.cjs} +1 -1
  67. package/dist/{index-CYvWTBiC.cjs → index-DbCNaQ87.cjs} +1 -1
  68. package/dist/{index-B1KcMjms.cjs → index-Dfwm0xPp.cjs} +1 -1
  69. package/dist/index-DiRBJiMW.js +43 -0
  70. package/dist/{index-BuQNI1CB.js → index-DlIkbsRf.js} +6 -6
  71. package/dist/{index-B__9hFoC.cjs → index-DllJulGH.cjs} +1 -1
  72. package/dist/{index-BJadEVee.js → index-Dm_WlV6R.js} +5542 -5543
  73. package/dist/{index-D4nuGSp1.cjs → index-Do8zI4DM.cjs} +1 -1
  74. package/dist/{index-7w9QLGZ8.cjs → index-DrWIUUZK.cjs} +1 -1
  75. package/dist/index-G_cKl_J4.js +2379 -0
  76. package/dist/{index-CkJaR30x.js → index-NlkdTb--.js} +4 -4
  77. package/dist/{index-CuYt_7-p.js → index-ThNNBX7h.js} +1 -1
  78. package/dist/{index-DzuOO-jn.js → index-XXKsLOYd.js} +2 -2
  79. package/dist/{index-_7Qm6usF.cjs → index-dwX_BHyo.cjs} +1 -1
  80. package/dist/{index-D-ygp57X.cjs → index-eH9RMVXv.cjs} +1 -1
  81. package/dist/index-pmcRbjPd.cjs +1 -0
  82. package/dist/{index-B5KCSN4c.cjs → index-tttYIzsn.cjs} +1 -1
  83. package/dist/{index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-Bhj73Dii.js → index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-CtycIAIT.js} +2 -2
  84. package/dist/{index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-DAjyk3_9.cjs → index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-D6X3fCNs.cjs} +1 -1
  85. package/dist/{index.vue_vue_type_style_index_0_scoped_92477073_lang-DbaX17jD.js → index.vue_vue_type_style_index_0_scoped_92477073_lang-De0avjy5.js} +6 -6
  86. package/dist/{index.vue_vue_type_style_index_0_scoped_92477073_lang-B0Slk6gv.cjs → index.vue_vue_type_style_index_0_scoped_92477073_lang-DhMDLOg8.cjs} +1 -1
  87. package/dist/{index.vue_vue_type_style_index_0_scoped_980cb04a_lang-BmYxcD8z.js → index.vue_vue_type_style_index_0_scoped_bcdf4fb0_lang-CEcxaThh.js} +13 -13
  88. package/dist/{index.vue_vue_type_style_index_0_scoped_980cb04a_lang-DGpKXuuO.cjs → index.vue_vue_type_style_index_0_scoped_bcdf4fb0_lang-DLuOs1IZ.cjs} +1 -1
  89. package/dist/{index.vue_vue_type_style_index_1_lang-8MlG6f_5.js → index.vue_vue_type_style_index_1_lang-B0l6QIWy.js} +531 -536
  90. package/dist/{index.vue_vue_type_style_index_1_lang-BMAOkg3Y.cjs → index.vue_vue_type_style_index_1_lang-CC1o5rIu.cjs} +8 -8
  91. package/dist/{index.vue_vue_type_style_index_1_lang-C5-R1ghT.cjs → index.vue_vue_type_style_index_1_lang-Chzrrthw.cjs} +1 -1
  92. package/dist/{index.vue_vue_type_style_index_1_lang-QVwLsuO7.js → index.vue_vue_type_style_index_1_lang-DzZEPkuk.js} +5 -5
  93. package/dist/{isString-D6Z6SOrb.cjs → isString-CELwppr9.cjs} +1 -1
  94. package/dist/{isString-DOZgMp8l.js → isString-DvY0kl3S.js} +1 -1
  95. package/dist/{main-BCD-Orm3.js → main-DQXqHTYg.js} +5 -5
  96. package/dist/{main-DUUTokjq.cjs → main-yiUkyrA7.cjs} +1 -1
  97. package/dist/ss-component.cjs +1 -1
  98. package/dist/ss-component.css +2 -2
  99. package/dist/ss-component.js +12 -12
  100. package/dist/ss-component2.cjs +1 -1
  101. package/dist/ss-component2.js +12 -12
  102. package/dist/{threeModel-DWfIRtBe.js → threeModel-BiWZCOOI.js} +5 -5
  103. package/dist/{threeModel-D-cNRyXR.cjs → threeModel-Cva5i9Dy.cjs} +1 -1
  104. package/dist/{threePreview-CB4s2usq.cjs → threePreview-BNvDY6xx.cjs} +1 -1
  105. package/dist/{threePreview-BelyhkDx.js → threePreview-CjFKHY3_.js} +4 -4
  106. package/dist/{threeSceneView-9pPPVjCA.cjs → threeSceneView-DM8uof_D.cjs} +1 -1
  107. package/dist/{threeSceneView-C66YfUi3.js → threeSceneView-DPTQ_xR-.js} +11 -11
  108. package/dist/{threeSceneViewForCPMPIP-WBguXbnU.js → threeSceneViewForCPMPIP-Bqb44i-c.js} +50 -50
  109. package/dist/{threeSceneViewForCPMPIP-DLVSylJ7.cjs → threeSceneViewForCPMPIP-D5jl1r-h.cjs} +1 -1
  110. package/dist/{threeTrackPathView-DxO-9BKu.js → threeTrackPathView-BvxoafSz.js} +6 -6
  111. package/dist/{threeTrackPathView-C4c7FI2n.cjs → threeTrackPathView-DgnuPrBe.cjs} +1 -1
  112. package/dist/{threeViewerHost-CNs819Rf.js → threeViewerHost-CKmZPGir.js} +4 -4
  113. package/dist/{threeViewerHost-Ihdu1cjR.cjs → threeViewerHost-D80V4Cfh.cjs} +1 -1
  114. package/dist/{urdfTree-CLhAUUAD.js → urdfTree-BxuavyNQ.js} +1 -1
  115. package/dist/{urdfTree-Di3A1LA8.cjs → urdfTree-wR2vnG4s.cjs} +1 -1
  116. package/dist/{workpieceTreePanel-CzDrMcRN.cjs → workpieceTreePanel-C2BXrv3k.cjs} +1 -1
  117. package/dist/{workpieceTreePanel--iaoqT8x.js → workpieceTreePanel-CSKzSdIt.js} +5 -5
  118. package/package.json +1 -1
  119. package/public/icons/svg/LowCodeEvent.svg +1 -1
  120. package/public/icons/svg/LowCodeExtend.svg +1 -1
  121. package/public/icons/svg/LowCodeSetting.svg +1 -1
  122. package/public/icons/svg/LowCodeStyle.svg +1 -1
  123. package/dist/array-Ct7vOLI-.cjs +0 -11
  124. package/dist/array-W5079asF.js +0 -691
  125. package/dist/index-4WD9Ho5n.js +0 -2933
  126. package/dist/index-BA9JRDoC.cjs +0 -1
  127. package/dist/index-BVaHwt5f.cjs +0 -1
  128. package/dist/index-CFI3jKGA.js +0 -2671
  129. package/dist/index-CO41Br9G.cjs +0 -1
  130. package/dist/index-CTq3U1p_.cjs +0 -1
  131. package/dist/index-CvZk_MDD.cjs +0 -15
  132. package/dist/index-Db9w-sM_.cjs +0 -1
  133. package/dist/index-DitsEkB9.js +0 -673
  134. package/dist/index-DooNp_Nd.js +0 -12047
  135. package/dist/index-JAuJmfCC.cjs +0 -1
  136. package/dist/index-rlStojTL.js +0 -52
@@ -0,0 +1,2379 @@
1
+ import { resolveComponent as ce, createBlock as ue, openBlock as u, withCtx as m, createElementVNode as r, toDisplayString as re, ref as A, onMounted as Ot, watch as Ue, createElementBlock as S, Fragment as Ke, renderList as Le, createCommentVNode as H, normalizeStyle as Dt, defineComponent as qt, resolveDynamicComponent as Xt, unref as s, computed as ze, provide as bt, resolveDirective as da, createVNode as l, withDirectives as Ve, createTextVNode as Je, vShow as vt, renderSlot as ut, normalizeClass as Pt, onUnmounted as Da, createSlots as Ra } from "vue";
2
+ import { m as Zt, a as zt, b as _t } from "./index-DEs8s152.js";
3
+ import "./index.vue_vue_type_style_index_0_scoped_92477073_lang-De0avjy5.js";
4
+ import { _ as nt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
+ import { _ as Ma, a as Ua, b as Ta, e as Pa, s as ja } from "./index.vue_vue_type_style_index_0_scoped_bcdf4fb0_lang-CEcxaThh.js";
6
+ import { c as dt, p as De, s as Ee, u as $t, b as at, E as rt, g as Et, d as ra, e as Ka, f as Fa } from "./index-Dm_WlV6R.js";
7
+ import { i as ga, a as Ft, u as Nt, j as _e, k as ea, l as Na, m as pa } from "./index.vue_vue_type_style_index_1_lang-B0l6QIWy.js";
8
+ import { S as Qe } from "./index-BHtNKL1L.js";
9
+ import { a as ta, s as Ze, o as Vt, b as Lt, c as ma, d as ya, e as Aa, f as Jt, h as ha, i as Ya, j as fa, k as Ga, l as Ca, m as va, n as wa, p as xa, q as Ba } from "./index-BVdolwlx.js";
10
+ import { a as Va } from "./array-DTXrs6ZK.js";
11
+ import { u as aa, a as ka } from "./index-DPX3w6cO.js";
12
+ import "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-CtycIAIT.js";
13
+ import "./index.vue_vue_type_style_index_1_lang-DzZEPkuk.js";
14
+ import "./index-CvC2498b.js";
15
+ import { useRouter as La } from "vue-router";
16
+ import Ja from "./index-Bvk4OpkL.js";
17
+ import Wa from "./threeModel-BiWZCOOI.js";
18
+ import { s as jt, _ as ct } from "./index-B0dydZDW.js";
19
+ import { d as Kt, T as Wt, u as Ha, a as Oa } from "./threeViewerHost-CKmZPGir.js";
20
+ import { _ as Qt } from "./index-BuSsSHAY.js";
21
+ import { s as Ht } from "./index-2fqHNrPg.js";
22
+ import { g as ca, a as gt, b as qa, c as Xa, d as Za, e as Rt } from "./dataUtil-gEKo7CEq.js";
23
+ import { T as ua } from "./svgIcon-D-_fXUBL.js";
24
+ import { t as za, c as _a, b as $a } from "./index-CAPx0_D4.js";
25
+ import { v as en } from "./index-XXKsLOYd.js";
26
+ import { f as tn, a as an } from "./animationData-D0TJ-9dd.js";
27
+ const nn = { class: "menu-title" };
28
+ function on(h, Z, a, U, K, V) {
29
+ const o = ce("ssMenu");
30
+ return u(), ue(o, {
31
+ mode: h.mode,
32
+ menuList: h.renderMenuList,
33
+ onClickMenu: h.clickMenu,
34
+ onOpenMenu: h.openMenu,
35
+ onCloseMenu: h.closeMenu
36
+ }, {
37
+ title: m(({ menu: G }) => [
38
+ r("span", nn, re(G.title ?? ""), 1)
39
+ ]),
40
+ _: 1
41
+ }, 8, ["mode", "menuList", "onClickMenu", "onOpenMenu", "onCloseMenu"]);
42
+ }
43
+ const ln = /* @__PURE__ */ nt(Ma, [["render", on], ["__scopeId", "data-v-0cbc421d"]]), sn = { class: "bread-content" }, rn = ["onClick"], cn = {
44
+ key: 0,
45
+ class: "split-title"
46
+ }, un = {
47
+ __name: "index",
48
+ props: {
49
+ breadArray: {
50
+ type: Array,
51
+ default: () => []
52
+ }
53
+ },
54
+ emits: ["click"],
55
+ setup(h, { emit: Z }) {
56
+ const a = h, U = A([]), K = Z;
57
+ Ot(() => {
58
+ U.value = a == null ? void 0 : a.breadArray;
59
+ }), Ue(
60
+ () => a == null ? void 0 : a.breadArray,
61
+ () => {
62
+ U.value = a == null ? void 0 : a.breadArray;
63
+ },
64
+ { deep: !0, immediate: !0 }
65
+ );
66
+ const V = (o) => {
67
+ K("click", o);
68
+ };
69
+ return (o, G) => (u(), S("div", sn, [
70
+ (u(!0), S(Ke, null, Le(U.value, (z, q) => {
71
+ var y;
72
+ return u(), S("div", {
73
+ key: q,
74
+ class: "bread-item"
75
+ }, [
76
+ r("div", {
77
+ class: "bread-title",
78
+ onClick: (_) => V(z),
79
+ style: Dt({ opacity: ((y = U.value) == null ? void 0 : y.length) - 1 === q ? "0.7" : "1" })
80
+ }, re(z.value), 13, rn),
81
+ q !== U.value.length - 1 && Array.isArray(U.value) ? (u(), S("div", cn, re("/"))) : H("", !0)
82
+ ]);
83
+ }), 128))
84
+ ]));
85
+ }
86
+ }, Ia = /* @__PURE__ */ nt(un, [["__scopeId", "data-v-ded7e2bd"]]), wt = [
87
+ {
88
+ key: "型线生成",
89
+ value: "http://139.196.154.85:20024/api/algorithmRun/downloadFileByFileName/35326658522693/outputResources/sampling_points_20.cpt"
90
+ },
91
+ {
92
+ key: "曲面生成",
93
+ value: "http://139.196.154.85:20024/api/algorithmRun/downloadFileByFileName/35018179530309/outputResources/output.obj"
94
+ },
95
+ {
96
+ key: "叶片生成",
97
+ value: "http://139.196.154.85:20024/api/algorithmRun/downloadFileByFileName/35018289382469/outputResources/output_TwoSections_completed.obj"
98
+ },
99
+ {
100
+ key: "轨迹规划",
101
+ value: "http://139.196.154.85:20024/api/algorithmRun/downloadFileByFileName/35484063607109/outputResources/complete_data.txt"
102
+ },
103
+ {
104
+ key: "加工规划",
105
+ value: "http://139.196.154.85:20024/api/algorithmRun/downloadFileByFileName/35237389477957/outputResources/NC_BC.NC"
106
+ },
107
+ {
108
+ key: "产品检测",
109
+ value: "http://139.196.154.85:20024/api/algorithmRun/downloadFileByFileName/35459977498949/outputResources/source.pcd,http://139.196.154.85:20024/api/algorithmRun/downloadFileByFileName/35459977498949/outputResources/target.pcd"
110
+ },
111
+ {
112
+ key: "参数筛选训练方法",
113
+ value: "http://139.196.154.85:20024/api/algorithmRun/downloadFileByFileName/35277984187973/outputResources/fitness_iteration.png"
114
+ }
115
+ // {
116
+ // key: "参数筛选推理",
117
+ // value: "http://139.196.154.85:20024/api/algorithmRun/downloadFileByFileName/35277984187973/outputResources/fitness_iteration.png"
118
+ // }
119
+ ], dn = {
120
+ key: 0,
121
+ class: "item-view-group",
122
+ style: { display: "flex" }
123
+ }, gn = { class: "group-name-wrap" }, Sa = /* @__PURE__ */ qt({
124
+ __name: "lookComponent",
125
+ props: {
126
+ dialogItem: {},
127
+ componentParam: {}
128
+ },
129
+ emits: ["change", "contentChange"],
130
+ setup(h, { emit: Z }) {
131
+ const a = h, U = Z, K = A([]), V = (G, z = "data") => {
132
+ var q;
133
+ U("change", G, z, {
134
+ url: (q = a == null ? void 0 : a.componentParam) == null ? void 0 : q.routerUrl
135
+ });
136
+ }, o = (G) => {
137
+ U("contentChange", G);
138
+ };
139
+ return Ue(
140
+ () => a == null ? void 0 : a.dialogItem,
141
+ () => {
142
+ var G, z, q;
143
+ ((G = a == null ? void 0 : a.componentParam) == null ? void 0 : G.isEdit) === !0 ? K.value = (z = dt(a == null ? void 0 : a.dialogItem)) == null ? void 0 : z.map((y) => {
144
+ var _;
145
+ return (y == null ? void 0 : y.comp) === "Form" && (y.compData = (_ = y.compData) == null ? void 0 : _.map((N) => {
146
+ var L;
147
+ return (N == null ? void 0 : N.key) === "formContent" && (N.contents = (L = N.contents) == null ? void 0 : L.map((ne) => (ne.type = "Upload", ne))), N;
148
+ })), y;
149
+ }) : K.value = (q = dt(a == null ? void 0 : a.dialogItem)) == null ? void 0 : q.map((y) => {
150
+ var _, N;
151
+ return (y == null ? void 0 : y.comp) === "Table" && (y.compData = (_ = y.compData) == null ? void 0 : _.filter((L) => (L == null ? void 0 : L.key) !== "rowButton" && (L == null ? void 0 : L.key) !== "extraButton"), y.compData = (N = y.compData) == null ? void 0 : N.map((L) => {
152
+ var ne;
153
+ return (L == null ? void 0 : L.key) === "header" && (L.contents = (ne = L.contents) == null ? void 0 : ne.filter((X) => (X == null ? void 0 : X.prop) !== "操作")), L;
154
+ })), y;
155
+ });
156
+ },
157
+ { deep: !0, immediate: !0 }
158
+ ), (G, z) => {
159
+ var q;
160
+ return u(), S("div", null, [
161
+ (u(!0), S(Ke, null, Le((q = K.value) == null ? void 0 : q.filter((y) => y.comp !== "FormTop"), (y, _) => {
162
+ var N;
163
+ return u(), S("div", {
164
+ class: "item-view-content",
165
+ key: _
166
+ }, [
167
+ ((N = y == null ? void 0 : y.comp) == null ? void 0 : N.toUpperCase()) !== "TABLE" && (y != null && y.name) ? (u(), S("div", dn, [
168
+ r("div", gn, re(y.name), 1)
169
+ ])) : H("", !0),
170
+ (u(), ue(Xt(s(ta)(y.comp)), {
171
+ compName: y.name,
172
+ itemData: y == null ? void 0 : y.compData,
173
+ childItemData: y == null ? void 0 : y.itemChildData,
174
+ index: (y == null ? void 0 : y.id) ?? _,
175
+ onChange: V,
176
+ onContentChange: o
177
+ }, null, 40, ["compName", "itemData", "childItemData", "index"]))
178
+ ]);
179
+ }), 128))
180
+ ]);
181
+ };
182
+ }
183
+ }), pn = "data:image/png;base64,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", mn = "data:image/png;base64,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", yn = (h) => {
184
+ var K, V;
185
+ const Z = (V = (K = h == null ? void 0 : h.compData) == null ? void 0 : K.find((o) => (o == null ? void 0 : o.key) === "header")) == null ? void 0 : V.contents;
186
+ return (Z == null ? void 0 : Z.findIndex((o, G) => {
187
+ const { isMainKey: z } = o;
188
+ return z;
189
+ })) < 0 ? [] : Za(h);
190
+ }, An = (h) => h == null ? void 0 : h.map((a) => {
191
+ const K = gt("加工规划参数", a), V = "仿真数据", o = Rt(K);
192
+ return o == null ? void 0 : o[V];
193
+ }), hn = (h) => h == null ? void 0 : h.map((a) => {
194
+ const K = gt("任务详情", a), V = "工件模型文件", o = Rt(K);
195
+ return o == null ? void 0 : o[V];
196
+ }), fn = (h) => h == null ? void 0 : h.map((a) => {
197
+ const K = gt("任务详情", a), V = "工件", o = "工件类型", G = Rt(K);
198
+ return {
199
+ name: G == null ? void 0 : G[V],
200
+ type: G == null ? void 0 : G[o]
201
+ };
202
+ }), Cn = (h) => h == null ? void 0 : h.map((a) => {
203
+ const K = gt("任务详情", a), V = "机床", o = Rt(K);
204
+ return o == null ? void 0 : o[V];
205
+ }), vn = (h) => h == null ? void 0 : h.map((a) => {
206
+ const K = gt("任务详情", a), V = "刀具", o = Rt(K);
207
+ return o == null ? void 0 : o[V];
208
+ }), wn = async (h) => {
209
+ const a = gt("任务列表", h), U = yn(a), K = ["任务管理", "设计加工任务管理"], V = U == null ? void 0 : U.map((N) => Xa(K, N)), o = await Promise.all(V), G = An(o), z = hn(o), q = fn(o), y = Cn(o), _ = vn(o);
210
+ return {
211
+ csvUrlList: G,
212
+ bladeObjUrlList: z,
213
+ workPriceList: q,
214
+ machineList: y,
215
+ knifeList: _
216
+ };
217
+ }, Yt = {
218
+ firstMenu: "搭建工作站",
219
+ secondMenu: "弯管工作站",
220
+ groupName: "工作站"
221
+ }, Gt = {
222
+ firstMenu: "任务管理",
223
+ secondMenu: "设计加工任务管理",
224
+ groupName: "任务列表"
225
+ }, Ea = async () => {
226
+ const h = await ca([Yt.firstMenu, Yt.secondMenu]), Z = await ca([Gt.firstMenu, Gt.secondMenu]);
227
+ let a = "";
228
+ h && h.length > 0 ? a = "robot" : Z && Z.length > 0 && (a = "cpmpip");
229
+ let U = null, K = null;
230
+ switch (a) {
231
+ case "robot":
232
+ U = dt(h), K = Yt.groupName;
233
+ break;
234
+ case "cpmpip":
235
+ U = dt(Z), K = Gt.groupName;
236
+ break;
237
+ default:
238
+ console.error("未识别的任务类型");
239
+ break;
240
+ }
241
+ if (!K)
242
+ throw new Error("未识别到分组");
243
+ const V = gt(K, U), o = qa(V), G = [];
244
+ let z = 0;
245
+ switch (a) {
246
+ case "robot":
247
+ z = 1, o == null || o.forEach((ne) => {
248
+ const X = {};
249
+ X.id = z++, X.name = ne.名称, X.urdfUrl = ne.URDF模型, X.type = ne.设备类型, X.sceneType = "robot", G.push(X);
250
+ });
251
+ break;
252
+ case "cpmpip":
253
+ z = 1;
254
+ const { csvUrlList: q, bladeObjUrlList: y, machineList: _, workPriceList: N, knifeList: L } = await wn(U);
255
+ o == null || o.forEach((ne, X) => {
256
+ const se = {};
257
+ se.id = z++, se.name = ne.任务名称, se.urdfUrl = ne.机床模型文件, se.sceneType = "cpmpip", se.csvUrl = q == null ? void 0 : q[X], se.bladeObjUrl = y == null ? void 0 : y[X], se.machine = _ == null ? void 0 : _[X], se.workpieceInfo = N == null ? void 0 : N[X], se.knife = L == null ? void 0 : L[X], G.push(se);
258
+ });
259
+ break;
260
+ }
261
+ return G;
262
+ }, Bn = { class: "structure-buttons" }, kn = { class: "structure-paths" }, In = { class: "client-header-user" }, Sn = { class: "model-select" }, En = { class: "model-show" }, bn = { class: "model-fill" }, Qn = { class: "client-header-menu" }, Dn = { class: "client-header-user" }, Rn = {
263
+ class: "task-drop-menu",
264
+ "element-loading-text": "加载中",
265
+ "element-loading-background": "#ffffff"
266
+ }, Mn = ["title", "onClick"], Un = {
267
+ key: 0,
268
+ class: "top-red-dot"
269
+ }, Tn = { class: "message-tab-label" }, Pn = {
270
+ key: 0,
271
+ class: "unread-badge"
272
+ }, jn = { class: "message-list" }, Kn = ["onClick"], Fn = { class: "message-header" }, Nn = {
273
+ key: 0,
274
+ class: "text-unread",
275
+ style: { color: "#409eff" }
276
+ }, Yn = {
277
+ key: 1,
278
+ class: "text-read"
279
+ }, Gn = { class: "message-title" }, xn = { class: "message-time" }, Vn = { class: "message-content" }, Ln = {
280
+ key: 0,
281
+ class: "no-messages"
282
+ }, Jn = { class: "message-list" }, Wn = ["onClick"], Hn = { class: "message-header" }, On = {
283
+ key: 0,
284
+ class: "text-unread",
285
+ style: { color: "#409eff" }
286
+ }, qn = {
287
+ key: 1,
288
+ class: "text-read"
289
+ }, Xn = { class: "message-title" }, Zn = { class: "message-time" }, zn = { class: "message-content" }, _n = {
290
+ key: 0,
291
+ class: "no-messages"
292
+ }, $n = { class: "drop-menu" }, eo = { class: "user-base-info" }, to = { class: "base-info" }, ao = { class: "group-item" }, no = { class: "sys-button" }, oo = {
293
+ key: 0,
294
+ class: "main-back-btn"
295
+ }, lo = { class: "main-body" }, so = {
296
+ key: 0,
297
+ class: "item-view-group"
298
+ }, io = {
299
+ class: "group-name-wrap",
300
+ style: { fontWeight: 600, fontSize: "16px" }
301
+ }, ro = {
302
+ key: 2,
303
+ class: "item-view-child-content"
304
+ }, xt = "消息中心/我的消息", co = /* @__PURE__ */ qt({
305
+ __name: "index",
306
+ props: {
307
+ windowConfig: {
308
+ type: Object,
309
+ default: () => {
310
+ }
311
+ },
312
+ showButton: {
313
+ type: Boolean,
314
+ default: !0
315
+ },
316
+ platform: {
317
+ type: String,
318
+ default: "browser"
319
+ },
320
+ taskContent: {
321
+ type: Object
322
+ }
323
+ },
324
+ emits: ["showChild", "buildContent", "setLoginInfo"],
325
+ setup(h, { emit: Z }) {
326
+ const a = (i, d) => {
327
+ console.log(i, d);
328
+ }, U = A(), K = A([]), V = A([]), o = A([]), G = ze(
329
+ () => K.value.filter((i) => {
330
+ var d;
331
+ return ((d = i.find((Y) => Y.prop === "状态")) == null ? void 0 : d.value) === "未读";
332
+ }).length
333
+ ), z = ze(() => G.value > 99 ? "99+" : G.value), q = ga(De), { originalPath: y } = Ee(q), _ = y.value;
334
+ async function N() {
335
+ var i, d, Y, b, x, v;
336
+ try {
337
+ let P = function(t, k) {
338
+ return k.map((D) => t.map((j, p) => ({
339
+ ...j,
340
+ value: D[p] ?? ""
341
+ })));
342
+ };
343
+ const f = sessionStorage.getItem("systemKey"), [J] = await Promise.all([
344
+ _e(xt, f, "")
345
+ ]), te = (Y = (d = (i = J == null ? void 0 : J[0]) == null ? void 0 : i.compData) == null ? void 0 : d.find((t) => (t == null ? void 0 : t.key) === "tableContents")) == null ? void 0 : Y.contents, F = (v = (x = (b = J == null ? void 0 : J[0]) == null ? void 0 : b.compData) == null ? void 0 : x.find((t) => (t == null ? void 0 : t.key) === "header")) == null ? void 0 : v.contents;
346
+ let me = [], ve = [], ye = [], e = [];
347
+ Array.isArray(te) && Array.isArray(F) ? (ye = te.filter(
348
+ (t) => t.includes("未读")
349
+ ), e = te.filter(
350
+ (t) => t.includes("已读")
351
+ ), me = [...ye, ...e], ve = [...te]) : (ye = [], e = [], ve = [], console.warn("messagesContents 或 messagesHeader 不是数组")), V.value = P(F, ve), K.value = P(F, me), o.value = P(F, ye);
352
+ } catch (P) {
353
+ console.error("获取消息数据失败:", P);
354
+ }
355
+ }
356
+ let L = 0;
357
+ const ne = () => {
358
+ const i = Date.now();
359
+ i - L < 1200 || (L = i, N(), console.log("获取消息中心数据成功"));
360
+ }, X = async (i) => {
361
+ if (!i) return;
362
+ (async (Y) => {
363
+ var x, v, P, f;
364
+ const b = [
365
+ {
366
+ title: "我的消息",
367
+ path: xt,
368
+ level: 1,
369
+ show: !0,
370
+ carryData: !0,
371
+ isPenultimate: !0,
372
+ isRouter: !1,
373
+ children: [],
374
+ childMenus: []
375
+ }
376
+ // {
377
+ // title: '已读消息',
378
+ // path: readPath,
379
+ // level: 1,
380
+ // show: true,
381
+ // carryData: true,
382
+ // isPenultimate: true,
383
+ // isRouter: false,
384
+ // children: [],
385
+ // childMenus: []
386
+ // }
387
+ ];
388
+ try {
389
+ const J = Y.find((ve) => ve.prop === "状态"), te = Array.isArray(Y) ? Y.find((ve) => ve.isMainKey) : void 0;
390
+ if (!te) {
391
+ console.warn("该消息没有主键", Y);
392
+ return;
393
+ }
394
+ Me.setAsideMenus(b), (J == null ? void 0 : J.value) === "未读" && (J.value = "已读", Me.setActiveMenuPath(xt));
395
+ const F = Pe.value + _ + te.value, me = Pe.value;
396
+ await Na(F, F + _ + `updateLoading${((x = Ae.value) == null ? void 0 : x.account) || ((v = Ae.value) == null ? void 0 : v.账号)}`), ht.setRouteToChildPath(me), Me.setActiveMenuPath(F + _ + `updateLoading${((P = Ae.value) == null ? void 0 : P.account) || ((f = Ae.value) == null ? void 0 : f.账号)}`), Me.setActiveTopMenuPath("消息中心"), console.log("444showItems.value", Ze.value);
397
+ } catch (J) {
398
+ console.error("加载菜单或页面时出错:", J);
399
+ }
400
+ })(i);
401
+ }, se = aa(De), { selectTitle: oe } = Ee(se), Re = A(!1), pt = A(), Fe = A(null), $ = A(), $e = A(!1), mt = ka(De), { blobUrls: ke } = Ee(mt), yt = A(), We = A(!1), Bt = A(!1), Te = A(!1), de = A([]), pe = A(!1), He = A(null), Oe = A(), et = A(!1), ot = A(!1), At = A();
402
+ bt("contentRef", He);
403
+ const kt = $t(), { loginUserInfo: Ae } = Ee(kt), ht = Ft(De), { isEdit: he, routeToChildPath: tt } = Ee(ht), qe = Z, Me = Nt(De), { asideMenuLoading: lt, importLoading: It, activeAsideMenu: St, contentLoading: ft, platName: Ct, activeMenuPath: Pe } = Ee(Me), fe = h, je = ze(() => St.value.isRouter), n = () => {
404
+ sessionStorage.clear(), window.location.reload();
405
+ }, g = (i) => {
406
+ if ((i == null ? void 0 : i.type) === "table") {
407
+ let d = i == null ? void 0 : i.row;
408
+ const Y = i == null ? void 0 : i.rowData;
409
+ let b = d;
410
+ b && ($.value = {
411
+ url: b,
412
+ row: i == null ? void 0 : i.row
413
+ }, qe("showChild", {
414
+ url: b,
415
+ row: i == null ? void 0 : i.row,
416
+ rowData: Y
417
+ }));
418
+ }
419
+ }, B = async () => {
420
+ let i = {};
421
+ const d = await _e("弯管仿真加工分析/仿真动画生成", sessionStorage.getItem("systemKey"), ""), Y = await _e("弯管仿真加工分析/管件解析", sessionStorage.getItem("systemKey"), "");
422
+ let b = ["管长", "外径"], x = {};
423
+ Y == null || Y.forEach((v) => {
424
+ var P;
425
+ (v == null ? void 0 : v.comp) === "Form" && ((P = v == null ? void 0 : v.compData) == null || P.forEach((f) => {
426
+ var J;
427
+ (f == null ? void 0 : f.key) === "formContent" && ((J = f == null ? void 0 : f.contents) == null || J.forEach((te) => {
428
+ b.includes(te == null ? void 0 : te.key) && (x[te.key] = te.value);
429
+ }));
430
+ }));
431
+ }), d == null || d.forEach((v) => {
432
+ var P, f, J, te, F, me;
433
+ if ((v == null ? void 0 : v.comp) === "Table") {
434
+ let ve = [], ye = (J = (f = (P = v == null ? void 0 : v.compData) == null ? void 0 : P.find((t) => (t == null ? void 0 : t.key) === "header")) == null ? void 0 : f.contents) == null ? void 0 : J.map((t) => t == null ? void 0 : t.label), e = (me = (F = (te = v == null ? void 0 : v.compData) == null ? void 0 : te.find((t) => (t == null ? void 0 : t.key) === "tableContents")) == null ? void 0 : F.contents) == null ? void 0 : me.map((t) => (t = t == null ? void 0 : t.filter((k) => !(k != null && k.id)), t));
435
+ e == null || e.forEach((t) => {
436
+ ve.push(
437
+ ea(
438
+ t,
439
+ ye == null ? void 0 : ye.filter((k) => k !== "操作")
440
+ )
441
+ );
442
+ }), i[v.name] = ve, i[v.name + "Content"] = v;
443
+ }
444
+ }), i.extra = x, pt.value = i;
445
+ }, E = async () => {
446
+ var i, d, Y, b, x, v;
447
+ if ((fe == null ? void 0 : fe.platform) !== "browser") {
448
+ if (Re.value = !0, yt.value = (i = fe == null ? void 0 : fe.taskContent) == null ? void 0 : i.sceneType, Oe.value = [(d = fe == null ? void 0 : fe.taskContent) == null ? void 0 : d.url], $.value) {
449
+ const P = $.value;
450
+ let f = [];
451
+ typeof (P == null ? void 0 : P.url) == "string" && ((Y = P == null ? void 0 : P.url) != null && Y.includes(",") ? Oe.value = (b = P == null ? void 0 : P.url) == null ? void 0 : b.split(",") : Oe.value = [P == null ? void 0 : P.url]), (x = Fe.value) == null || x.loadModelByDefaultPath(f);
452
+ }
453
+ et.value = (v = Oe.value) == null ? void 0 : v.every((P) => P.toUpperCase().includes(".URDF"));
454
+ }
455
+ }, W = () => {
456
+ $e.value = !1, Fe.value = null;
457
+ };
458
+ Ue(
459
+ () => Pe.value,
460
+ async (i) => {
461
+ i && (Bt.value = !0), i === "弯管仿真加工分析/仿真动画生成" ? Te.value = !0 : Te.value = !1, i === "弯管仿真加工分析/程序输出" ? pe.value = !0 : pe.value = !1, wt != null && wt.find((d) => {
462
+ var Y;
463
+ return (d == null ? void 0 : d.key) === ((Y = i == null ? void 0 : i.split("/")) == null ? void 0 : Y[(i == null ? void 0 : i.split("/").length) - 1]);
464
+ }) ? We.value = !0 : We.value = !1;
465
+ },
466
+ { immediate: !0 }
467
+ ), Ue(
468
+ () => [ke == null ? void 0 : ke.value],
469
+ async () => {
470
+ var i, d, Y, b, x;
471
+ if (ke != null && ke.value && ((i = ke == null ? void 0 : ke.value) == null ? void 0 : i.length) > 0 && !We.value && !((d = Ze.value) != null && d.find((v) => (v == null ? void 0 : v.name) === "输入") && ((Y = Ze.value) != null && Y.find((v) => (v == null ? void 0 : v.name) === "输出")))) {
472
+ $e.value = !0;
473
+ let v = [];
474
+ const P = await ((b = dt(ke == null ? void 0 : ke.value)) == null ? void 0 : b.map(async (f) => {
475
+ var ve, ye, e, t, k, D, j, p, c, I;
476
+ let J, te, F;
477
+ f != null && f.blob.includes("undefined") ? F = (ye = (ve = f == null ? void 0 : f.blob) == null ? void 0 : ve.split("undefined,")) == null ? void 0 : ye[1] : F = f == null ? void 0 : f.blob;
478
+ let me = F == null ? void 0 : F.split(",");
479
+ if ((me == null ? void 0 : me.length) > 1) {
480
+ let O = await (me == null ? void 0 : me.map(async (w) => {
481
+ var ee, we, be, Se, C, Be;
482
+ J = await at.get(w, {
483
+ responseType: "blob",
484
+ headers: {
485
+ "Content-Type": "application/json"
486
+ }
487
+ });
488
+ let M = [];
489
+ if (((ee = f == null ? void 0 : f.mtlBlobs) == null ? void 0 : ee.length) > 0) {
490
+ let Ye = await ((we = f == null ? void 0 : f.mtlBlobs) == null ? void 0 : we.map(async (it) => {
491
+ let Xe = await at.get(it, {
492
+ responseType: "blob",
493
+ headers: {
494
+ "Content-Type": "application/json"
495
+ }
496
+ });
497
+ return M.push(
498
+ new Blob([Xe.data], {
499
+ type: "application/octet-stream;charset=UTF-8"
500
+ })
501
+ ), Xe;
502
+ }));
503
+ await Promise.all(Ye);
504
+ }
505
+ return ((Se = w == null ? void 0 : w.split(".")) == null ? void 0 : Se[((be = w == null ? void 0 : w.split(".")) == null ? void 0 : be.length) - 1]) !== "undefined" && v.push({
506
+ suffix: "." + ((Be = w == null ? void 0 : w.split(".")) == null ? void 0 : Be[((C = w == null ? void 0 : w.split(".")) == null ? void 0 : C.length) - 1]),
507
+ blob: new Blob([J.data], {
508
+ type: "application/octet-stream;charset=UTF-8"
509
+ }),
510
+ mtlBlobs: M
511
+ }), J;
512
+ }));
513
+ await Promise.all(O);
514
+ } else if (!(F != null && F.includes("https://")) && !(F != null && F.includes("http://"))) {
515
+ J = await Kt({
516
+ url: F
517
+ });
518
+ let O = [];
519
+ if (((e = f == null ? void 0 : f.mtlBlobs) == null ? void 0 : e.length) > 0) {
520
+ let w = await ((t = f == null ? void 0 : f.mtlBlobs) == null ? void 0 : t.map(async (M) => {
521
+ let ee = await Kt({
522
+ url: M
523
+ });
524
+ return O.push(
525
+ new Blob([ee.data], {
526
+ type: "application/octet-stream;charset=UTF-8"
527
+ })
528
+ ), ee;
529
+ }));
530
+ await Promise.all(w);
531
+ }
532
+ te = {
533
+ suffix: "." + ((D = F == null ? void 0 : F.split(".")) == null ? void 0 : D[((k = F == null ? void 0 : F.split(".")) == null ? void 0 : k.length) - 1]),
534
+ blob: new Blob([J.data], {
535
+ type: "application/octet-stream;charset=UTF-8"
536
+ }),
537
+ mtlBlobs: O
538
+ };
539
+ } else {
540
+ J = await at.get(F, {
541
+ responseType: "blob",
542
+ headers: {
543
+ "Content-Type": "application/json"
544
+ }
545
+ });
546
+ let O = [];
547
+ if (((j = f == null ? void 0 : f.mtlBlobs) == null ? void 0 : j.length) > 0) {
548
+ let w = await ((p = f == null ? void 0 : f.mtlBlobs) == null ? void 0 : p.map(async (M) => {
549
+ let ee = await at.get(M, {
550
+ responseType: "blob",
551
+ headers: {
552
+ "Content-Type": "application/json"
553
+ }
554
+ });
555
+ return O.push(
556
+ new Blob([ee.data], {
557
+ type: "application/octet-stream;charset=UTF-8"
558
+ })
559
+ ), ee;
560
+ }));
561
+ await Promise.all(w);
562
+ }
563
+ te = {
564
+ suffix: f != null && f.suffix ? f == null ? void 0 : f.suffix : "." + ((I = F == null ? void 0 : F.split(".")) == null ? void 0 : I[((c = F == null ? void 0 : F.split(".")) == null ? void 0 : c.length) - 1]),
565
+ blob: new Blob([J.data], {
566
+ type: "application/octet-stream;charset=UTF-8"
567
+ }),
568
+ mtlBlobs: O
569
+ };
570
+ }
571
+ te && v.push(te);
572
+ }));
573
+ await Promise.all(P), (v == null ? void 0 : v.length) !== 0 && ((x = Fe.value) == null || x.loadModelByDefaultPath(v));
574
+ }
575
+ },
576
+ { immediate: !0, deep: !0 }
577
+ );
578
+ const Q = (i, d) => {
579
+ ot.value = !0, At.value = d, (d == null ? void 0 : d.isEdit) === !0 ? de.value = i : de.value = i == null ? void 0 : i.map((Y) => {
580
+ var b;
581
+ return Y.compData = (b = Y.compData) == null ? void 0 : b.map((x) => {
582
+ var v;
583
+ return (x == null ? void 0 : x.key) === "formContent" && (x.contents = (v = x.contents) == null ? void 0 : v.map((P) => (P.disabled = !0, P))), x;
584
+ }), Y;
585
+ });
586
+ }, T = async () => {
587
+ await Ba();
588
+ }, R = A(!1), Ce = A([]), ge = async () => {
589
+ R.value = !0;
590
+ const i = await Ea().finally(() => {
591
+ R.value = !1;
592
+ });
593
+ Ce.value = i;
594
+ }, ae = async (i) => {
595
+ i && ge();
596
+ }, Ie = async (i) => {
597
+ qe("showChild", {
598
+ url: i == null ? void 0 : i.urdfUrl,
599
+ row: i == null ? void 0 : i.urdfUrl,
600
+ sceneType: i == null ? void 0 : i.sceneType,
601
+ rowData: i
602
+ });
603
+ };
604
+ Ot(async () => {
605
+ qe("setLoginInfo", Ae.value), await N(), U.value = "first";
606
+ });
607
+ const Ne = () => {
608
+ var Y, b;
609
+ if (tt.value === "" || ((b = Pe.value) == null ? void 0 : b[((Y = Pe.value) == null ? void 0 : Y.length) - 1]) === _) return !1;
610
+ const i = sessionStorage.getItem("authority"), d = JSON.parse(i || "");
611
+ if (Array.isArray(d)) {
612
+ const x = Array.isArray(d) && (d == null ? void 0 : d.filter((P) => P == null ? void 0 : P.includes(tt.value))), v = x == null ? void 0 : x.map((P) => {
613
+ var f;
614
+ return ((f = P == null ? void 0 : P.split("/")) == null ? void 0 : f.pop()) || "";
615
+ });
616
+ return !!(v != null && v.includes("新增") || v != null && v.includes("新建"));
617
+ } else return typeof d == "string" && (d == null ? void 0 : d.toUpperCase()) === "SUPERADMIN";
618
+ }, st = async () => {
619
+ };
620
+ return (i, d) => {
621
+ const Y = ce("el-dialog"), b = ce("el-button"), x = ce("el-header"), v = ce("el-splitter-panel"), P = ce("el-splitter"), f = ce("el-container"), J = ce("el-tab-pane"), te = ce("el-tabs"), F = ce("el-aside"), me = ce("router-view"), ve = ce("el-main"), ye = da("loading");
622
+ return u(), S(Ke, null, [
623
+ l(jt, {
624
+ visible: ot.value,
625
+ onBeforeDestroy: d[0] || (d[0] = (e) => ot.value = !1),
626
+ fullScreen: !0
627
+ }, {
628
+ default: m(() => [
629
+ l(Sa, {
630
+ dialogItem: de.value,
631
+ componentParam: At.value,
632
+ onChange: s(Lt),
633
+ onContentChange: s(Vt)
634
+ }, null, 8, ["dialogItem", "componentParam", "onChange", "onContentChange"])
635
+ ]),
636
+ _: 1
637
+ }, 8, ["visible"]),
638
+ l(Y, {
639
+ "append-to-body": "",
640
+ modelValue: Re.value,
641
+ "onUpdate:modelValue": d[1] || (d[1] = (e) => Re.value = e),
642
+ style: { height: "700px", width: "1800px" }
643
+ }, {
644
+ default: m(() => [
645
+ l(Wt, {
646
+ "file-urls": Oe.value,
647
+ isThreeScene: et.value,
648
+ componentType: yt.value,
649
+ onGetAnimationData: B
650
+ }, null, 8, ["file-urls", "isThreeScene", "componentType"])
651
+ ]),
652
+ _: 1
653
+ }, 8, ["modelValue"]),
654
+ Ve(l(f, { class: "client-container" }, {
655
+ default: m(() => [
656
+ l(x, { class: "client-structure-header" }, {
657
+ default: m(() => [
658
+ r("div", Bn, [
659
+ l(b, {
660
+ id: "transparentBgButton",
661
+ onClick: s(ma)
662
+ }, {
663
+ icon: m(() => [
664
+ l(Qe, { name: "Back" })
665
+ ]),
666
+ default: m(() => [
667
+ d[5] || (d[5] = Je(" 返回页面 "))
668
+ ]),
669
+ _: 1,
670
+ __: [5]
671
+ }, 8, ["onClick"])
672
+ ]),
673
+ r("div", kn, [
674
+ l(Ia, {
675
+ breadArray: s(oe),
676
+ onClick: s(ya)
677
+ }, null, 8, ["breadArray", "onClick"])
678
+ ]),
679
+ r("div", In, [
680
+ l(b, {
681
+ id: "themeButton",
682
+ onClick: d[2] || (d[2] = (e) => {
683
+ var t, k;
684
+ return s(Aa)((k = (t = s(oe)) == null ? void 0 : t.map((D) => D.value)) == null ? void 0 : k.join("/"));
685
+ })
686
+ }, {
687
+ icon: m(() => [
688
+ l(Qe, { name: "Store" })
689
+ ]),
690
+ default: m(() => [
691
+ d[6] || (d[6] = Je(" 保存页面 "))
692
+ ]),
693
+ _: 1,
694
+ __: [6]
695
+ })
696
+ ])
697
+ ]),
698
+ _: 1
699
+ }),
700
+ s(he) === "edit" ? (u(), ue(f, {
701
+ key: 0,
702
+ class: "model-operate"
703
+ }, {
704
+ default: m(() => [
705
+ l(P, null, {
706
+ default: m(() => [
707
+ l(v, {
708
+ size: 240,
709
+ min: 240,
710
+ resizable: !1
711
+ }, {
712
+ default: m(() => [
713
+ r("div", Sn, [
714
+ l(Zt)
715
+ ])
716
+ ]),
717
+ _: 1
718
+ }),
719
+ l(v, { min: 200 }, {
720
+ "start-collapsible": m(() => [
721
+ l(Qe, {
722
+ name: "Left",
723
+ style: { width: "15px", height: "15px" }
724
+ })
725
+ ]),
726
+ "end-collapsible": m(() => [
727
+ l(Qe, {
728
+ name: "Right",
729
+ style: { width: "15px", height: "15px" }
730
+ })
731
+ ]),
732
+ default: m(() => [
733
+ r("div", En, [
734
+ l(zt)
735
+ ])
736
+ ]),
737
+ _: 1
738
+ }),
739
+ l(v, {
740
+ min: 300,
741
+ size: 300,
742
+ collapsible: !0
743
+ }, {
744
+ default: m(() => [
745
+ r("div", bn, [
746
+ l(_t)
747
+ ])
748
+ ]),
749
+ _: 1
750
+ })
751
+ ]),
752
+ _: 1
753
+ })
754
+ ]),
755
+ _: 1
756
+ })) : H("", !0)
757
+ ]),
758
+ _: 1
759
+ }, 512), [
760
+ [vt, s(he) === "edit"]
761
+ ]),
762
+ Ve((u(), ue(f, {
763
+ class: "client-container",
764
+ "element-loading-text": "正在加载页面数据..."
765
+ }, {
766
+ default: m(() => [
767
+ l(x, { class: "client-header" }, {
768
+ default: m(() => [
769
+ r("div", {
770
+ class: "client-header-logo",
771
+ onClick: E
772
+ }, re(s(Ct) === "" ? "ISIP" : s(Ct)), 1),
773
+ r("div", Qn, [
774
+ l(ln, { mode: "horizontal" })
775
+ ]),
776
+ r("div", Dn, [
777
+ fe != null && fe.showButton && s(he) === "view" ? (u(), ue(b, {
778
+ key: 0,
779
+ class: "system-default-button",
780
+ onClick: s(Jt)
781
+ }, {
782
+ icon: m(() => [
783
+ l(Qe, { name: "write" })
784
+ ]),
785
+ default: m(() => [
786
+ d[7] || (d[7] = Je(" 界面修改 "))
787
+ ]),
788
+ _: 1,
789
+ __: [7]
790
+ }, 8, ["onClick"])) : H("", !0),
791
+ ut(i.$slots, "default", {}, void 0, !0),
792
+ l(Qt, {
793
+ class: "three-dropdown-menu",
794
+ "popper-class": "three-poper",
795
+ teleported: !1,
796
+ onVisibleChange: ae
797
+ }, {
798
+ dropTitle: m(() => [
799
+ s(he) === "view" && h.platform === "client" ? (u(), ue(b, {
800
+ key: 0,
801
+ class: "system-default-button"
802
+ }, {
803
+ icon: m(() => [
804
+ l(Qe, { name: "three" })
805
+ ]),
806
+ default: m(() => [
807
+ d[8] || (d[8] = Je(" 三维查看 "))
808
+ ]),
809
+ _: 1,
810
+ __: [8]
811
+ })) : H("", !0)
812
+ ]),
813
+ dropMenu: m(() => [
814
+ Ve((u(), S("div", Rn, [
815
+ (u(!0), S(Ke, null, Le(Ce.value, (e, t) => (u(), S("div", {
816
+ class: "task-item",
817
+ key: t,
818
+ title: e == null ? void 0 : e.name,
819
+ onClick: (k) => Ie(e)
820
+ }, re(e == null ? void 0 : e.name), 9, Mn))), 128))
821
+ ])), [
822
+ [ye, R.value]
823
+ ])
824
+ ]),
825
+ _: 1
826
+ }),
827
+ l(Qt, null, {
828
+ dropTitle: m(() => [
829
+ r("div", {
830
+ class: "icon-wrapper",
831
+ onMouseenter: ne
832
+ }, [
833
+ l(Qe, { name: "系统消息" }),
834
+ G.value > 0 ? (u(), S("span", Un)) : H("", !0)
835
+ ], 32)
836
+ ]),
837
+ dropMenu: m(() => [
838
+ l(te, {
839
+ modelValue: U.value,
840
+ "onUpdate:modelValue": d[3] || (d[3] = (e) => U.value = e),
841
+ class: "drop-menu1 message-dropdown",
842
+ onTabClick: a
843
+ }, {
844
+ default: m(() => [
845
+ l(J, {
846
+ label: "我的消息",
847
+ name: "first"
848
+ }, {
849
+ label: m(() => [
850
+ r("div", Tn, [
851
+ d[9] || (d[9] = r("span", null, "我的消息", -1)),
852
+ G.value > 0 ? (u(), S("span", Pn, re(z.value), 1)) : H("", !0)
853
+ ])
854
+ ]),
855
+ default: m(() => [
856
+ r("div", jn, [
857
+ (u(!0), S(Ke, null, Le(V.value, (e, t) => {
858
+ var k, D, j, p;
859
+ return u(), S("div", {
860
+ class: "message-item",
861
+ key: t,
862
+ onClick: (c) => X(e)
863
+ }, [
864
+ r("div", Fn, [
865
+ ((k = e.find((c) => c.prop === "状态")) == null ? void 0 : k.value) === "未读" ? (u(), S("span", Nn, "[未读]")) : (u(), S("span", Yn, "[已读]")),
866
+ r("div", Gn, re((D = e.find((c) => c.prop === "消息类别")) == null ? void 0 : D.value), 1),
867
+ r("div", xn, re((j = e.find((c) => c.prop === "发送时间")) == null ? void 0 : j.value), 1)
868
+ ]),
869
+ r("div", Vn, re((p = e.find((c) => c.prop === "内容")) == null ? void 0 : p.value), 1)
870
+ ], 8, Kn);
871
+ }), 128)),
872
+ V.value.length === 0 ? (u(), S("div", Ln, "暂无消息")) : H("", !0)
873
+ ])
874
+ ]),
875
+ _: 1
876
+ }),
877
+ l(J, {
878
+ label: "未读消息",
879
+ name: "second"
880
+ }, {
881
+ label: m(() => d[10] || (d[10] = [
882
+ r("div", { class: "message-tab-label" }, [
883
+ r("span", null, "未读消息")
884
+ ], -1)
885
+ ])),
886
+ default: m(() => [
887
+ r("div", Jn, [
888
+ (u(!0), S(Ke, null, Le(o.value, (e, t) => {
889
+ var k, D, j, p;
890
+ return u(), S("div", {
891
+ class: "message-item",
892
+ key: t,
893
+ onClick: (c) => X(e)
894
+ }, [
895
+ r("div", Hn, [
896
+ ((k = e.find((c) => c.prop === "状态")) == null ? void 0 : k.value) === "未读" ? (u(), S("span", On, "[未读]")) : (u(), S("span", qn, "[已读]")),
897
+ r("div", Xn, re((D = e.find((c) => c.prop === "消息类别")) == null ? void 0 : D.value), 1),
898
+ r("div", Zn, re((j = e.find((c) => c.prop === "发送时间")) == null ? void 0 : j.value), 1)
899
+ ]),
900
+ r("div", zn, re((p = e.find((c) => c.prop === "内容")) == null ? void 0 : p.value), 1)
901
+ ], 8, Wn);
902
+ }), 128)),
903
+ o.value.length === 0 ? (u(), S("div", _n, "暂无消息")) : H("", !0)
904
+ ])
905
+ ]),
906
+ _: 1
907
+ })
908
+ ]),
909
+ _: 1
910
+ }, 8, ["modelValue"])
911
+ ]),
912
+ _: 1
913
+ }),
914
+ l(Qt, null, {
915
+ dropTitle: m(() => [
916
+ l(Ht, {
917
+ size: 35,
918
+ disabled: !0,
919
+ userInfo: s(Ae)
920
+ }, null, 8, ["userInfo"])
921
+ ]),
922
+ dropMenu: m(() => {
923
+ var e, t, k, D, j, p;
924
+ return [
925
+ r("div", $n, [
926
+ r("div", eo, [
927
+ l(Ht, {
928
+ size: 35,
929
+ disabled: !0,
930
+ userInfo: s(Ae)
931
+ }, null, 8, ["userInfo"]),
932
+ r("div", to, [
933
+ r("div", null, [
934
+ r("span", null, re(((e = s(Ae)) == null ? void 0 : e.account) || ((t = s(Ae)) == null ? void 0 : t.账号) || "未知"), 1),
935
+ r("span", null, re(((D = (k = s(Ae)) == null ? void 0 : k.layer) == null ? void 0 : D.toUpperCase()) === "SUPERADMIN" ? "超级管理员" : ((j = s(Ae)) == null ? void 0 : j.角色名称) ?? "未知"), 1)
936
+ ]),
937
+ r("div", null, re(((p = s(Ae)) == null ? void 0 : p.工号) || "未知"), 1)
938
+ ])
939
+ ]),
940
+ r("div", ao, [
941
+ r("div", { onClick: st }, [
942
+ l(Qe, {
943
+ name: "personal",
944
+ style: { width: "15px", height: "15px" }
945
+ }),
946
+ d[11] || (d[11] = r("span", null, "个人主页", -1))
947
+ ]),
948
+ r("div", null, [
949
+ l(Qe, {
950
+ name: "message",
951
+ style: { width: "15px", height: "15px" }
952
+ }),
953
+ d[12] || (d[12] = r("span", null, "消息中心", -1))
954
+ ])
955
+ ]),
956
+ r("div", no, [
957
+ r("div", null, [
958
+ l(Qe, {
959
+ name: "exit",
960
+ style: { width: "15px", height: "15px", color: "#eb503d" }
961
+ }),
962
+ l(ct, {
963
+ emptyColor: !0,
964
+ class: "menu-button",
965
+ onClickTrigger: n,
966
+ modelValue: "退出登录",
967
+ buttonType: "",
968
+ style: { color: "#eb503d" }
969
+ })
970
+ ])
971
+ ])
972
+ ])
973
+ ];
974
+ }),
975
+ _: 1
976
+ })
977
+ ])
978
+ ]),
979
+ _: 3
980
+ }),
981
+ l(f, { class: "client-body" }, {
982
+ default: m(() => [
983
+ l(ve, { class: "client-main" }, {
984
+ default: m(() => {
985
+ var e, t, k, D, j, p;
986
+ return [
987
+ Ve((u(), ue(F, {
988
+ class: "client-aside",
989
+ style: Dt({ backgroundImage: h.platform === "client" ? `url(${s(pn)})` : `url(${s(mn)})` }),
990
+ "element-loading-text": "正在加载数据...",
991
+ width: "auto"
992
+ }, {
993
+ default: m(() => [
994
+ l(Ja, { mode: "vertical" })
995
+ ]),
996
+ _: 1
997
+ }, 8, ["style"])), [
998
+ [ye, s(lt)]
999
+ ]),
1000
+ Ve((u(), S("div", {
1001
+ class: "client-main-operate",
1002
+ ref_key: "contentRef",
1003
+ ref: He,
1004
+ "element-loading-text": "正在加载页面数据..."
1005
+ }, [
1006
+ ((t = s(Pe)) == null ? void 0 : t[((e = s(Pe)) == null ? void 0 : e.length) - 1]) === s(_) || (k = s(Pe)) != null && k.includes("updateLoading") || (D = s(Pe)) != null && D.includes("loading") ? (u(), S("div", oo, [
1007
+ l(ct, {
1008
+ class: "calculator-content back-content",
1009
+ onClickTrigger: d[4] || (d[4] = (c) => s(ha)()),
1010
+ modelValue: "返回"
1011
+ })
1012
+ ])) : H("", !0),
1013
+ r("div", lo, [
1014
+ je.value ? (u(), ue(me, { key: 0 })) : H("", !0),
1015
+ je.value ? H("", !0) : (u(!0), S(Ke, { key: 1 }, Le((j = s(Ze)) == null ? void 0 : j.filter((c) => c.comp !== "FormTop"), (c, I) => {
1016
+ var O, w;
1017
+ return u(), S("div", {
1018
+ class: Pt((O = s(Ya)) != null && O.includes(c == null ? void 0 : c.name) ? "item-view-content affix-content" : "item-view-content"),
1019
+ key: I,
1020
+ style: Dt({ display: (c == null ? void 0 : c.isShow) === !1 ? "none" : "flex" })
1021
+ }, [
1022
+ ((w = c == null ? void 0 : c.comp) == null ? void 0 : w.toUpperCase()) !== "TABLE" && c.name ? (u(), S("div", so, [
1023
+ r("div", io, re(c.name), 1)
1024
+ ])) : H("", !0),
1025
+ s(fa) ? (u(), ue(Xt(s(ta)(c.comp)), {
1026
+ compName: c.name,
1027
+ cacheNewData: s(xa),
1028
+ isDevMode: h.showButton,
1029
+ itemData: c == null ? void 0 : c.compData,
1030
+ childItemData: c == null ? void 0 : c.itemChildData,
1031
+ key: s(wa),
1032
+ onChange: s(Lt),
1033
+ index: (c == null ? void 0 : c.id) ?? I,
1034
+ onContentChange: s(Vt),
1035
+ onPageChange: s(va),
1036
+ onRowClick: g,
1037
+ onRouteUrl: Q,
1038
+ parentTableId: c == null ? void 0 : c.tableId,
1039
+ allMapContents: s(Ca),
1040
+ children: c == null ? void 0 : c.children,
1041
+ level: 1,
1042
+ onClickTrigger: s(Ga)
1043
+ }, null, 40, ["compName", "cacheNewData", "isDevMode", "itemData", "childItemData", "onChange", "index", "onContentChange", "onPageChange", "parentTableId", "allMapContents", "children", "onClickTrigger"])) : H("", !0)
1044
+ ], 6);
1045
+ }), 128)),
1046
+ !je.value && !((p = s(Ze)) != null && p.find((c) => c.comp === "methodButton")) ? (u(), S("div", ro, [
1047
+ Ne() ? (u(), ue(ct, {
1048
+ key: 0,
1049
+ class: "calculator-content",
1050
+ onClickTrigger: T,
1051
+ modelValue: "保存"
1052
+ })) : H("", !0)
1053
+ ])) : H("", !0)
1054
+ ])
1055
+ ])), [
1056
+ [ye, s(ft)]
1057
+ ])
1058
+ ];
1059
+ }),
1060
+ _: 1
1061
+ })
1062
+ ]),
1063
+ _: 1
1064
+ }),
1065
+ r("div", null, [
1066
+ l(jt, {
1067
+ visible: $e.value,
1068
+ onBeforeDestroy: W,
1069
+ style: { height: "700px", width: "1000px" }
1070
+ }, {
1071
+ default: m(() => [
1072
+ l(Wa, {
1073
+ ref_key: "threeModelRef",
1074
+ ref: Fe
1075
+ }, null, 512)
1076
+ ]),
1077
+ _: 1
1078
+ }, 8, ["visible"])
1079
+ ])
1080
+ ]),
1081
+ _: 3
1082
+ })), [
1083
+ [vt, s(he) === "view"],
1084
+ [ye, s(It)]
1085
+ ])
1086
+ ], 64);
1087
+ };
1088
+ }
1089
+ }), uo = /* @__PURE__ */ nt(co, [["__scopeId", "data-v-55d9c444"]]), go = { class: "menu-tree" };
1090
+ function po(h, Z, a, U, K, V) {
1091
+ const o = ce("el-tree");
1092
+ return u(), S("div", go, [
1093
+ l(o, {
1094
+ data: h.renderMenuList,
1095
+ props: {
1096
+ children: "children",
1097
+ label: "title"
1098
+ },
1099
+ "node-key": "title",
1100
+ onNodeClick: h.clickMenu
1101
+ }, null, 8, ["data", "onNodeClick"])
1102
+ ]);
1103
+ }
1104
+ const mo = /* @__PURE__ */ nt(Ua, [["render", po], ["__scopeId", "data-v-b1da4dbe"]]), yo = { class: "three-menu" }, Ao = ["onClick"];
1105
+ function ho(h, Z, a, U, K, V) {
1106
+ return u(), S("div", yo, [
1107
+ (u(!0), S(Ke, null, Le(h.renderMenuList, (o) => (u(), S("div", {
1108
+ onClick: (G) => h.clickMenu(o)
1109
+ }, [
1110
+ ut(h.$slots, "menu", { menu: o }, void 0, !0)
1111
+ ], 8, Ao))), 256)),
1112
+ ut(h.$slots, "extraIcon", {}, void 0, !0)
1113
+ ]);
1114
+ }
1115
+ const fo = /* @__PURE__ */ nt(Ta, [["render", ho], ["__scopeId", "data-v-94d06d52"]]), Co = { class: "structure-buttons" }, vo = { class: "structure-paths" }, wo = { class: "client-header-user" }, Bo = { class: "model-select" }, ko = { class: "model-show" }, Io = { class: "model-fill" }, So = ["title", "onClick"], Eo = {
1116
+ class: "top-icon",
1117
+ title: "三维查看"
1118
+ }, bo = { class: "task-drop-menu" }, Qo = {
1119
+ key: 0,
1120
+ class: "task-loading"
1121
+ }, Do = ["title", "onClick"], Ro = { class: "panel-body client-container" }, Mo = {
1122
+ key: 0,
1123
+ class: "menu-empty"
1124
+ }, Uo = {
1125
+ key: 0,
1126
+ class: "main-back-btn"
1127
+ }, To = { class: "main-body" }, Po = {
1128
+ key: 0,
1129
+ class: "item-view-group"
1130
+ }, jo = {
1131
+ class: "group-name-wrap",
1132
+ style: { fontWeight: 600, fontSize: "16px" }
1133
+ }, Ko = {
1134
+ key: 2,
1135
+ class: "item-view-child-content"
1136
+ }, Fo = { class: "menu-panel" }, No = { class: "panel-body client-container" }, Yo = "消息中心/未读消息", Go = "消息中心/已读消息", xo = /* @__PURE__ */ qt({
1137
+ __name: "index",
1138
+ props: {
1139
+ windowConfig: {
1140
+ type: Object,
1141
+ default: () => {
1142
+ }
1143
+ },
1144
+ showButton: {
1145
+ type: Boolean,
1146
+ default: !0
1147
+ },
1148
+ platform: {
1149
+ type: String,
1150
+ default: "browser"
1151
+ }
1152
+ },
1153
+ emits: ["showChild", "buildContent", "setLoginInfo"],
1154
+ setup(h, { emit: Z }) {
1155
+ const a = A(), U = A([]), K = A([]), V = ze(
1156
+ () => U.value.filter((e) => {
1157
+ var t;
1158
+ return ((t = e.find((k) => k.prop === "状态")) == null ? void 0 : t.value) === "未读";
1159
+ }).length
1160
+ );
1161
+ ze(() => V.value > 99 ? "99+" : V.value);
1162
+ const o = ga(De), { originalPath: G } = Ee(o), z = G.value, q = aa(De), { selectTitle: y } = Ee(q), _ = A(!1), N = A(), L = A(null), ne = A(), X = A(!1), se = ka(De), { blobUrls: oe } = Ee(se), Re = A(!1), pt = A(!1), Fe = A(!1), $ = A([]), $e = A(!1), mt = A(null), ke = A(), yt = A(!1), We = A(!1);
1163
+ bt("contentRef", mt);
1164
+ const Bt = $t(), { loginUserInfo: Te } = Ee(Bt), de = Ft(De), { isEdit: pe, routeToChildPath: He } = Ee(de), Oe = Z, et = Nt(De), { asideMenuLoading: ot, importLoading: At, activeAsideMenu: kt, contentLoading: Ae, platName: ht, activeMenuPath: he } = Ee(et), tt = Ha(De), { data: qe } = Ee(tt);
1165
+ Oa();
1166
+ const Me = h, lt = ze(() => kt.value.isRouter), It = () => {
1167
+ sessionStorage.clear(), window.location.reload();
1168
+ }, St = (e) => {
1169
+ if ((e == null ? void 0 : e.type) === "table") {
1170
+ let t = e == null ? void 0 : e.row;
1171
+ const k = e == null ? void 0 : e.rowData;
1172
+ let D = t;
1173
+ if (D) {
1174
+ ne.value = {
1175
+ url: D,
1176
+ row: e == null ? void 0 : e.row
1177
+ };
1178
+ let j = [];
1179
+ typeof D == "string" && (D != null && D.includes(",") ? j = D == null ? void 0 : D.split(",") : j = [D]);
1180
+ const p = j == null ? void 0 : j.every((c) => c.toUpperCase().includes(".URDF"));
1181
+ tt.setData({
1182
+ url: j,
1183
+ row: e == null ? void 0 : e.row,
1184
+ rowData: k,
1185
+ isThreeScene: p
1186
+ });
1187
+ }
1188
+ }
1189
+ }, ft = async () => {
1190
+ let e = {};
1191
+ const t = await _e("弯管仿真加工分析/仿真动画生成", sessionStorage.getItem("systemKey"), ""), k = await _e("弯管仿真加工分析/管件解析", sessionStorage.getItem("systemKey"), "");
1192
+ let D = ["管长", "外径"], j = {};
1193
+ k == null || k.forEach((p) => {
1194
+ var c;
1195
+ (p == null ? void 0 : p.comp) === "Form" && ((c = p == null ? void 0 : p.compData) == null || c.forEach((I) => {
1196
+ var O;
1197
+ (I == null ? void 0 : I.key) === "formContent" && ((O = I == null ? void 0 : I.contents) == null || O.forEach((w) => {
1198
+ D.includes(w == null ? void 0 : w.key) && (j[w.key] = w.value);
1199
+ }));
1200
+ }));
1201
+ }), t == null || t.forEach((p) => {
1202
+ var c, I, O, w, M, ee;
1203
+ if ((p == null ? void 0 : p.comp) === "Table") {
1204
+ let we = [], be = (O = (I = (c = p == null ? void 0 : p.compData) == null ? void 0 : c.find((C) => (C == null ? void 0 : C.key) === "header")) == null ? void 0 : I.contents) == null ? void 0 : O.map((C) => C == null ? void 0 : C.label), Se = (ee = (M = (w = p == null ? void 0 : p.compData) == null ? void 0 : w.find((C) => (C == null ? void 0 : C.key) === "tableContents")) == null ? void 0 : M.contents) == null ? void 0 : ee.map((C) => (C = C == null ? void 0 : C.filter((Be) => !(Be != null && Be.id)), C));
1205
+ Se == null || Se.forEach((C) => {
1206
+ we.push(
1207
+ ea(
1208
+ C,
1209
+ be == null ? void 0 : be.filter((Be) => Be !== "操作")
1210
+ )
1211
+ );
1212
+ }), e[p.name] = we, e[p.name + "Content"] = p;
1213
+ }
1214
+ }), e.extra = j, N.value = e;
1215
+ };
1216
+ Ue(
1217
+ () => he.value,
1218
+ async (e) => {
1219
+ e && (pt.value = !0), e === "弯管仿真加工分析/仿真动画生成" ? Fe.value = !0 : Fe.value = !1, e === "弯管仿真加工分析/程序输出" ? $e.value = !0 : $e.value = !1, wt != null && wt.find((t) => {
1220
+ var k;
1221
+ return (t == null ? void 0 : t.key) === ((k = e == null ? void 0 : e.split("/")) == null ? void 0 : k[(e == null ? void 0 : e.split("/").length) - 1]);
1222
+ }) ? Re.value = !0 : Re.value = !1;
1223
+ },
1224
+ { immediate: !0 }
1225
+ ), Ue(
1226
+ () => [oe == null ? void 0 : oe.value],
1227
+ async () => {
1228
+ var e, t, k, D, j;
1229
+ if (oe != null && oe.value && ((e = oe == null ? void 0 : oe.value) == null ? void 0 : e.length) > 0 && !Re.value && !((t = Ze.value) != null && t.find((p) => (p == null ? void 0 : p.name) === "输入") && ((k = Ze.value) != null && k.find((p) => (p == null ? void 0 : p.name) === "输出")))) {
1230
+ X.value = !0;
1231
+ let p = [];
1232
+ const c = await ((D = dt(oe == null ? void 0 : oe.value)) == null ? void 0 : D.map(async (I) => {
1233
+ var we, be, Se, C, Be, Ye, it, Xe, Mt, Ut;
1234
+ let O, w, M;
1235
+ I != null && I.blob.includes("undefined") ? M = (be = (we = I == null ? void 0 : I.blob) == null ? void 0 : we.split("undefined,")) == null ? void 0 : be[1] : M = I == null ? void 0 : I.blob;
1236
+ let ee = M == null ? void 0 : M.split(",");
1237
+ if ((ee == null ? void 0 : ee.length) > 1) {
1238
+ let le = await (ee == null ? void 0 : ee.map(async (ie) => {
1239
+ var xe, Tt, na, oa, la, sa;
1240
+ O = await at.get(ie, {
1241
+ responseType: "blob",
1242
+ headers: {
1243
+ "Content-Type": "application/json"
1244
+ }
1245
+ });
1246
+ let Ge = [];
1247
+ if (((xe = I == null ? void 0 : I.mtlBlobs) == null ? void 0 : xe.length) > 0) {
1248
+ let ba = await ((Tt = I == null ? void 0 : I.mtlBlobs) == null ? void 0 : Tt.map(async (Qa) => {
1249
+ let ia = await at.get(Qa, {
1250
+ responseType: "blob",
1251
+ headers: {
1252
+ "Content-Type": "application/json"
1253
+ }
1254
+ });
1255
+ return Ge.push(
1256
+ new Blob([ia.data], {
1257
+ type: "application/octet-stream;charset=UTF-8"
1258
+ })
1259
+ ), ia;
1260
+ }));
1261
+ await Promise.all(ba);
1262
+ }
1263
+ return ((oa = ie == null ? void 0 : ie.split(".")) == null ? void 0 : oa[((na = ie == null ? void 0 : ie.split(".")) == null ? void 0 : na.length) - 1]) !== "undefined" && p.push({
1264
+ suffix: "." + ((sa = ie == null ? void 0 : ie.split(".")) == null ? void 0 : sa[((la = ie == null ? void 0 : ie.split(".")) == null ? void 0 : la.length) - 1]),
1265
+ blob: new Blob([O.data], {
1266
+ type: "application/octet-stream;charset=UTF-8"
1267
+ }),
1268
+ mtlBlobs: Ge
1269
+ }), O;
1270
+ }));
1271
+ await Promise.all(le);
1272
+ } else if (!(M != null && M.includes("https://")) && !(M != null && M.includes("http://"))) {
1273
+ O = await Kt({
1274
+ url: M
1275
+ });
1276
+ let le = [];
1277
+ if (((Se = I == null ? void 0 : I.mtlBlobs) == null ? void 0 : Se.length) > 0) {
1278
+ let ie = await ((C = I == null ? void 0 : I.mtlBlobs) == null ? void 0 : C.map(async (Ge) => {
1279
+ let xe = await Kt({
1280
+ url: Ge
1281
+ });
1282
+ return le.push(
1283
+ new Blob([xe.data], {
1284
+ type: "application/octet-stream;charset=UTF-8"
1285
+ })
1286
+ ), xe;
1287
+ }));
1288
+ await Promise.all(ie);
1289
+ }
1290
+ w = {
1291
+ suffix: "." + ((Ye = M == null ? void 0 : M.split(".")) == null ? void 0 : Ye[((Be = M == null ? void 0 : M.split(".")) == null ? void 0 : Be.length) - 1]),
1292
+ blob: new Blob([O.data], {
1293
+ type: "application/octet-stream;charset=UTF-8"
1294
+ }),
1295
+ mtlBlobs: le
1296
+ };
1297
+ } else {
1298
+ O = await at.get(M, {
1299
+ responseType: "blob",
1300
+ headers: {
1301
+ "Content-Type": "application/json"
1302
+ }
1303
+ });
1304
+ let le = [];
1305
+ if (((it = I == null ? void 0 : I.mtlBlobs) == null ? void 0 : it.length) > 0) {
1306
+ let ie = await ((Xe = I == null ? void 0 : I.mtlBlobs) == null ? void 0 : Xe.map(async (Ge) => {
1307
+ let xe = await at.get(Ge, {
1308
+ responseType: "blob",
1309
+ headers: {
1310
+ "Content-Type": "application/json"
1311
+ }
1312
+ });
1313
+ return le.push(
1314
+ new Blob([xe.data], {
1315
+ type: "application/octet-stream;charset=UTF-8"
1316
+ })
1317
+ ), xe;
1318
+ }));
1319
+ await Promise.all(ie);
1320
+ }
1321
+ w = {
1322
+ suffix: I != null && I.suffix ? I == null ? void 0 : I.suffix : "." + ((Ut = M == null ? void 0 : M.split(".")) == null ? void 0 : Ut[((Mt = M == null ? void 0 : M.split(".")) == null ? void 0 : Mt.length) - 1]),
1323
+ blob: new Blob([O.data], {
1324
+ type: "application/octet-stream;charset=UTF-8"
1325
+ }),
1326
+ mtlBlobs: le
1327
+ };
1328
+ }
1329
+ w && p.push(w);
1330
+ }));
1331
+ await Promise.all(c), (p == null ? void 0 : p.length) !== 0 && ((j = L.value) == null || j.loadModelByDefaultPath(p));
1332
+ }
1333
+ },
1334
+ { immediate: !0, deep: !0 }
1335
+ );
1336
+ const Ct = (e) => {
1337
+ We.value = !0, $.value = e == null ? void 0 : e.map((t) => {
1338
+ var k;
1339
+ return t.compData = (k = t.compData) == null ? void 0 : k.map((D) => {
1340
+ var j;
1341
+ return (D == null ? void 0 : D.key) === "formContent" && (D.contents = (j = D.contents) == null ? void 0 : j.map((p) => (p.disabled = !0, p))), D;
1342
+ }), t;
1343
+ });
1344
+ }, Pe = async () => {
1345
+ await Ba();
1346
+ }, fe = A("数据管理"), je = A(!1), n = A({
1347
+ x: 0,
1348
+ y: 0
1349
+ }), g = (e) => {
1350
+ fe.value = e;
1351
+ }, B = (e) => {
1352
+ W(), je.value = e;
1353
+ }, E = () => {
1354
+ B(!(je != null && je.value));
1355
+ }, W = () => {
1356
+ n.value = {
1357
+ x: 0,
1358
+ y: 0
1359
+ };
1360
+ }, Q = ze(() => {
1361
+ const e = `${n.value.x}px`, t = `${n.value.y}px`;
1362
+ return {
1363
+ // width: rightPanelInfo.box.width,
1364
+ // height: rightPanelInfo.box.height,
1365
+ // top: props?.showButton ? rightPanelInfo.position.startTop : '150px',
1366
+ // right: rightPanelInfo.position.startRight,
1367
+ transform: `translate(${e}, ${t})`
1368
+ };
1369
+ }), T = (e) => {
1370
+ Y(e == null ? void 0 : e.title), x(!0);
1371
+ }, R = () => {
1372
+ B(!1);
1373
+ };
1374
+ bt("managementPageVisible", je), bt("setManagementPageTitle", g), bt("setManagementPageVisible", B);
1375
+ let Ce = 0, ge = 0, ae = 0, Ie = 0;
1376
+ function Ne(e) {
1377
+ Ce = e.clientX, ge = e.clientY, ae = n.value.x, Ie = n.value.y, document.addEventListener("mousemove", st), document.addEventListener("mouseup", i);
1378
+ }
1379
+ function st(e) {
1380
+ n.value.x = ae + (e.clientX - Ce), n.value.y = Ie + (e.clientY - ge);
1381
+ }
1382
+ function i() {
1383
+ document.removeEventListener("mousemove", st), document.removeEventListener("mouseup", i);
1384
+ }
1385
+ const d = A(""), Y = (e) => {
1386
+ d.value = e;
1387
+ }, b = A(!1), x = (e) => {
1388
+ b.value = e;
1389
+ }, v = () => {
1390
+ b.value = !b.value;
1391
+ }, P = () => {
1392
+ x(!1);
1393
+ }, f = (e) => {
1394
+ const t = e == null ? void 0 : e.label;
1395
+ g(t), B(!0);
1396
+ }, J = A(!1), te = A([]), F = async () => {
1397
+ J.value = !0;
1398
+ const e = await Ea().finally(() => {
1399
+ J.value = !1;
1400
+ });
1401
+ te.value = e;
1402
+ }, me = async (e) => {
1403
+ e && F();
1404
+ }, ve = async (e) => {
1405
+ const k = [e == null ? void 0 : e.urdfUrl], D = k == null ? void 0 : k.every((j) => j.toUpperCase().includes(".URDF"));
1406
+ tt.setData({
1407
+ url: k,
1408
+ data: e,
1409
+ isThreeScene: D
1410
+ });
1411
+ };
1412
+ Ot(async () => {
1413
+ Oe("setLoginInfo", Te.value);
1414
+ async function e() {
1415
+ var t, k, D, j, p, c, I, O, w, M, ee;
1416
+ try {
1417
+ let we = function(le, ie) {
1418
+ return ie.map((Ge) => le.map((xe, Tt) => ({
1419
+ ...xe,
1420
+ value: Ge[Tt] ?? ""
1421
+ // 每个 header 加入 value
1422
+ })));
1423
+ };
1424
+ const be = sessionStorage.getItem("systemKey"), [Se, C] = await Promise.all([
1425
+ _e(Yo, be, ""),
1426
+ _e(Go, be, "")
1427
+ ]), Be = (D = (k = (t = Se == null ? void 0 : Se[0]) == null ? void 0 : t.compData) == null ? void 0 : k.find((le) => (le == null ? void 0 : le.key) === "tableContents")) == null ? void 0 : D.contents, Ye = (c = (p = (j = C == null ? void 0 : C[0]) == null ? void 0 : j.compData) == null ? void 0 : p.find((le) => (le == null ? void 0 : le.key) === "tableContents")) == null ? void 0 : c.contents, it = (w = (O = (I = C == null ? void 0 : C[0]) == null ? void 0 : I.compData) == null ? void 0 : O.find((le) => (le == null ? void 0 : le.key) === "header")) == null ? void 0 : w.contents;
1428
+ console.log("555readData", it);
1429
+ let Xe = [];
1430
+ Array.isArray(Be) && Array.isArray(Ye) ? Xe = [...Be, ...Ye] : (Xe = [], console.warn("unreadMessagesContents 或 readMessagesContents 不是数组")), U.value = we(it, Xe), console.log("555allReadMessages.value", U.value);
1431
+ const Mt = ((M = Te == null ? void 0 : Te.value) == null ? void 0 : M.account) || ((ee = Te == null ? void 0 : Te.value) == null ? void 0 : ee.收件人) || "未知", Ut = U.value.filter((le) => {
1432
+ var ie;
1433
+ return ((ie = le.find((Ge) => Ge.prop === "收件人")) == null ? void 0 : ie.value) === Mt;
1434
+ });
1435
+ K.value = Ut;
1436
+ } catch (we) {
1437
+ console.error("获取消息数据失败:", we);
1438
+ }
1439
+ }
1440
+ await e(), a.value = "first";
1441
+ }), Da(() => {
1442
+ const e = window.messageIntervalId;
1443
+ e && clearInterval(e);
1444
+ });
1445
+ const ye = () => {
1446
+ var k, D;
1447
+ if (He.value === "" || ((D = he.value) == null ? void 0 : D[((k = he.value) == null ? void 0 : k.length) - 1]) === z) return !1;
1448
+ const e = sessionStorage.getItem("authority"), t = JSON.parse(e || "");
1449
+ if (Array.isArray(t)) {
1450
+ const j = Array.isArray(t) && (t == null ? void 0 : t.filter((c) => c == null ? void 0 : c.includes(He.value))), p = j == null ? void 0 : j.map((c) => {
1451
+ var I;
1452
+ return ((I = c == null ? void 0 : c.split("/")) == null ? void 0 : I.pop()) || "";
1453
+ });
1454
+ return !!(p != null && p.includes("新增") || p != null && p.includes("新建"));
1455
+ } else return typeof t == "string" && (t == null ? void 0 : t.toUpperCase()) === "SUPERADMIN";
1456
+ };
1457
+ return (e, t) => {
1458
+ const k = ce("el-dialog"), D = ce("el-button"), j = ce("el-header"), p = ce("el-container"), c = ce("router-view"), I = ce("el-main"), O = da("loading");
1459
+ return u(), S(Ke, null, [
1460
+ l(jt, {
1461
+ visible: We.value,
1462
+ onBeforeDestroy: t[0] || (t[0] = (w) => We.value = !1),
1463
+ fullScreen: !0
1464
+ }, {
1465
+ default: m(() => [
1466
+ l(Sa, { dialogItem: $.value }, null, 8, ["dialogItem"])
1467
+ ]),
1468
+ _: 1
1469
+ }, 8, ["visible"]),
1470
+ l(k, {
1471
+ "append-to-body": "",
1472
+ modelValue: _.value,
1473
+ "onUpdate:modelValue": t[1] || (t[1] = (w) => _.value = w),
1474
+ style: { height: "700px", width: "1800px" }
1475
+ }, {
1476
+ default: m(() => [
1477
+ l(Wt, {
1478
+ "file-urls": ke.value,
1479
+ isThreeScene: yt.value,
1480
+ onGetAnimationData: ft
1481
+ }, null, 8, ["file-urls", "isThreeScene"])
1482
+ ]),
1483
+ _: 1
1484
+ }, 8, ["modelValue"]),
1485
+ Ve(l(p, { class: "client-container" }, {
1486
+ default: m(() => [
1487
+ l(j, { class: "client-structure-header" }, {
1488
+ default: m(() => [
1489
+ r("div", Co, [
1490
+ l(D, {
1491
+ id: "transparentBgButton",
1492
+ onClick: s(ma)
1493
+ }, {
1494
+ default: m(() => t[5] || (t[5] = [
1495
+ Je(" 返回页面 ")
1496
+ ])),
1497
+ _: 1,
1498
+ __: [5]
1499
+ }, 8, ["onClick"]),
1500
+ l(D, {
1501
+ id: "transparentBgButton",
1502
+ onClick: t[2] || (t[2] = (w) => {
1503
+ var M, ee;
1504
+ return s(Aa)((ee = (M = s(y)) == null ? void 0 : M.map((we) => we.value)) == null ? void 0 : ee.join("/"));
1505
+ })
1506
+ }, {
1507
+ icon: m(() => [
1508
+ l(Qe, { name: "Store" })
1509
+ ]),
1510
+ default: m(() => [
1511
+ t[6] || (t[6] = Je(" 保存页面 "))
1512
+ ]),
1513
+ _: 1,
1514
+ __: [6]
1515
+ })
1516
+ ]),
1517
+ r("div", vo, [
1518
+ l(Ia, {
1519
+ breadArray: s(y),
1520
+ onClick: s(ya)
1521
+ }, null, 8, ["breadArray", "onClick"])
1522
+ ]),
1523
+ r("div", wo, [
1524
+ ut(e.$slots, "default", {}, void 0, !0),
1525
+ l(Ht, {
1526
+ size: 35,
1527
+ disabled: !0,
1528
+ userInfo: s(Te)
1529
+ }, null, 8, ["userInfo"])
1530
+ ])
1531
+ ]),
1532
+ _: 3
1533
+ }),
1534
+ s(pe) === "edit" ? (u(), ue(p, {
1535
+ key: 0,
1536
+ class: "model-operate",
1537
+ style: { "margin-top": "10px", height: "0px" }
1538
+ }, {
1539
+ default: m(() => [
1540
+ r("div", Bo, [
1541
+ l(Zt)
1542
+ ]),
1543
+ r("div", ko, [
1544
+ l(zt)
1545
+ ]),
1546
+ r("div", Io, [
1547
+ l(_t)
1548
+ ])
1549
+ ]),
1550
+ _: 1
1551
+ })) : H("", !0)
1552
+ ]),
1553
+ _: 3
1554
+ }, 512), [
1555
+ [vt, s(pe) === "edit"]
1556
+ ]),
1557
+ Ve((u(), ue(p, {
1558
+ class: "client-container",
1559
+ "element-loading-text": "正在加载页面数据..."
1560
+ }, {
1561
+ default: m(() => [
1562
+ l(Wt, {
1563
+ class: "client-body",
1564
+ "file-urls": s(qe).url,
1565
+ isThreeScene: s(qe).isThreeScene,
1566
+ "three-data": s(qe),
1567
+ onGetAnimationData: ft,
1568
+ windowConfig: h.windowConfig,
1569
+ showButton: Me == null ? void 0 : Me.showButton,
1570
+ platform: Me == null ? void 0 : Me.platform
1571
+ }, {
1572
+ "management-menu": m(() => [
1573
+ l(ua, {
1574
+ name: "子菜单",
1575
+ size: "24",
1576
+ onClick: v,
1577
+ active: b.value,
1578
+ title: "菜单"
1579
+ }, null, 8, ["active"])
1580
+ ]),
1581
+ "top-menu": m(() => [
1582
+ l(fo, null, Ra({
1583
+ menu: m(({ menu: w }) => [
1584
+ r("div", {
1585
+ class: "top-icon",
1586
+ title: w.title,
1587
+ onClick: (M) => T(w)
1588
+ }, [
1589
+ l(Qe, {
1590
+ name: w.icon,
1591
+ class: Pt(["menu-icon", { active: w.title === d.value }])
1592
+ }, null, 8, ["name", "class"])
1593
+ ], 8, So)
1594
+ ]),
1595
+ _: 2
1596
+ }, [
1597
+ h.showButton ? {
1598
+ name: "extraIcon",
1599
+ fn: m(() => [
1600
+ s(pe) === "view" ? (u(), S("div", {
1601
+ key: 0,
1602
+ class: "top-icon",
1603
+ title: "界面修改",
1604
+ onClick: t[3] || (t[3] = //@ts-ignore
1605
+ (...w) => s(Jt) && s(Jt)(...w))
1606
+ }, [
1607
+ l(Qe, {
1608
+ name: "write",
1609
+ class: "menu-icon"
1610
+ })
1611
+ ])) : H("", !0),
1612
+ s(pe) === "view" ? (u(), ue(Qt, {
1613
+ key: 1,
1614
+ class: "three-dropdown-menu",
1615
+ "popper-class": "three-poper",
1616
+ teleported: !1,
1617
+ onVisibleChange: me
1618
+ }, {
1619
+ dropTitle: m(() => [
1620
+ r("div", Eo, [
1621
+ l(Qe, {
1622
+ name: "model",
1623
+ class: "menu-icon"
1624
+ })
1625
+ ])
1626
+ ]),
1627
+ dropMenu: m(() => [
1628
+ r("div", bo, [
1629
+ J.value ? (u(), S("div", Qo, " 加载中 ")) : (u(!0), S(Ke, { key: 1 }, Le(te.value, (w, M) => (u(), S("div", {
1630
+ class: "task-item",
1631
+ key: M,
1632
+ title: w == null ? void 0 : w.name,
1633
+ onClick: (ee) => ve(w)
1634
+ }, re(w == null ? void 0 : w.name), 9, Do))), 128))
1635
+ ])
1636
+ ]),
1637
+ _: 1
1638
+ })) : H("", !0),
1639
+ r("div", {
1640
+ class: "top-icon",
1641
+ title: "登出",
1642
+ onClick: It
1643
+ }, [
1644
+ l(Qe, {
1645
+ name: "退出",
1646
+ size: 24,
1647
+ class: "menu-icon"
1648
+ })
1649
+ ]),
1650
+ s(pe) === "view" ? ut(e.$slots, "default", { key: 2 }, void 0, !0) : H("", !0)
1651
+ ]),
1652
+ key: "0"
1653
+ } : void 0
1654
+ ]), 1024)
1655
+ ]),
1656
+ "management-page": m(() => [
1657
+ l(ua, {
1658
+ name: "yemian",
1659
+ size: "24",
1660
+ onClick: E,
1661
+ active: je.value,
1662
+ title: "数据管理"
1663
+ }, null, 8, ["active"])
1664
+ ]),
1665
+ _: 3
1666
+ }, 8, ["file-urls", "isThreeScene", "three-data", "windowConfig", "showButton", "platform"])
1667
+ ]),
1668
+ _: 3
1669
+ })), [
1670
+ [vt, s(pe) === "view"],
1671
+ [O, s(At)]
1672
+ ]),
1673
+ Ve(r("div", {
1674
+ class: "management-page-panel",
1675
+ style: Dt(Q.value)
1676
+ }, [
1677
+ r("div", {
1678
+ class: "panel-header",
1679
+ onMousedown: Ne
1680
+ }, [
1681
+ r("span", null, re(fe.value), 1),
1682
+ r("span", {
1683
+ class: "close",
1684
+ onClick: R
1685
+ }, " X ")
1686
+ ], 32),
1687
+ r("div", Ro, [
1688
+ s(he) ? H("", !0) : (u(), S("div", Mo, " 请先选择菜单 ")),
1689
+ l(p, { class: "client-body" }, {
1690
+ default: m(() => [
1691
+ l(I, { class: "client-main" }, {
1692
+ default: m(() => {
1693
+ var w, M, ee, we, be, Se;
1694
+ return [
1695
+ Ve((u(), S("div", {
1696
+ class: "client-main-operate",
1697
+ ref_key: "contentRef",
1698
+ ref: mt,
1699
+ "element-loading-text": "正在加载页面数据..."
1700
+ }, [
1701
+ ((M = s(he)) == null ? void 0 : M[((w = s(he)) == null ? void 0 : w.length) - 1]) === s(z) || (ee = s(he)) != null && ee.includes("updateLoading") || (we = s(he)) != null && we.includes("loading") ? (u(), S("div", Uo, [
1702
+ l(ct, {
1703
+ class: "calculator-content back-content",
1704
+ onClickTrigger: t[4] || (t[4] = (C) => s(ha)()),
1705
+ modelValue: "返回"
1706
+ })
1707
+ ])) : H("", !0),
1708
+ r("div", To, [
1709
+ lt.value ? (u(), ue(c, { key: 0 })) : H("", !0),
1710
+ lt.value ? H("", !0) : (u(!0), S(Ke, { key: 1 }, Le((be = s(Ze)) == null ? void 0 : be.filter((C) => C.comp !== "FormTop"), (C, Be) => {
1711
+ var Ye;
1712
+ return u(), S("div", {
1713
+ class: "item-view-content",
1714
+ key: Be,
1715
+ style: Dt({ display: (C == null ? void 0 : C.isShow) === !1 ? "none" : "flex" })
1716
+ }, [
1717
+ ((Ye = C == null ? void 0 : C.comp) == null ? void 0 : Ye.toUpperCase()) !== "TABLE" && C.name ? (u(), S("div", Po, [
1718
+ r("div", jo, re(C.name), 1)
1719
+ ])) : H("", !0),
1720
+ s(fa) ? (u(), ue(Xt(s(ta)(C.comp)), {
1721
+ compName: C.name,
1722
+ itemData: C == null ? void 0 : C.compData,
1723
+ childItemData: C == null ? void 0 : C.itemChildData,
1724
+ key: s(wa),
1725
+ onChange: s(Lt),
1726
+ index: (C == null ? void 0 : C.id) ?? Be,
1727
+ onContentChange: s(Vt),
1728
+ onPageChange: s(va),
1729
+ onRowClick: St,
1730
+ onRouteUrl: Ct,
1731
+ parentTableId: C == null ? void 0 : C.tableId,
1732
+ allMapContents: s(Ca)
1733
+ }, null, 40, ["compName", "itemData", "childItemData", "onChange", "index", "onContentChange", "onPageChange", "parentTableId", "allMapContents"])) : H("", !0)
1734
+ ], 4);
1735
+ }), 128)),
1736
+ !lt.value && !((Se = s(Ze)) != null && Se.find((C) => C.comp === "methodButton")) ? (u(), S("div", Ko, [
1737
+ ye() ? (u(), ue(ct, {
1738
+ key: 0,
1739
+ class: "calculator-content",
1740
+ onClickTrigger: Pe,
1741
+ modelValue: "保存"
1742
+ })) : H("", !0)
1743
+ ])) : H("", !0)
1744
+ ])
1745
+ ])), [
1746
+ [O, s(Ae)]
1747
+ ])
1748
+ ];
1749
+ }),
1750
+ _: 1
1751
+ })
1752
+ ]),
1753
+ _: 1
1754
+ })
1755
+ ])
1756
+ ], 4), [
1757
+ [vt, je.value]
1758
+ ]),
1759
+ Ve(r("div", Fo, [
1760
+ r("div", { class: "panel-header" }, [
1761
+ t[7] || (t[7] = r("span", null, " 菜单树 ", -1)),
1762
+ r("span", {
1763
+ class: "close",
1764
+ onClick: P
1765
+ }, " X ")
1766
+ ]),
1767
+ r("div", No, [
1768
+ l(p, { class: "client-body" }, {
1769
+ default: m(() => [
1770
+ l(mo, { onNodeClick: f })
1771
+ ]),
1772
+ _: 1
1773
+ })
1774
+ ])
1775
+ ], 512), [
1776
+ [vt, b.value]
1777
+ ])
1778
+ ], 64);
1779
+ };
1780
+ }
1781
+ }), Vo = /* @__PURE__ */ nt(xo, [["__scopeId", "data-v-289692d5"]]), Lo = { class: "system-wrap" }, Jo = {
1782
+ __name: "index",
1783
+ props: {
1784
+ windowConfig: {
1785
+ type: Object,
1786
+ default: () => {
1787
+ }
1788
+ },
1789
+ platform: {
1790
+ type: String,
1791
+ default: "browser"
1792
+ },
1793
+ showButton: {
1794
+ type: Boolean,
1795
+ default: !0
1796
+ },
1797
+ content: String,
1798
+ jsonContents: Array,
1799
+ urdfContent: {
1800
+ type: Object,
1801
+ default: () => {
1802
+ }
1803
+ }
1804
+ },
1805
+ emits: ["buildContent", "showChild"],
1806
+ setup(h, { emit: Z }) {
1807
+ const a = Ft(De), U = aa(De), K = Nt();
1808
+ A(!1);
1809
+ const V = A(!0), o = h, G = Z, z = (N) => {
1810
+ G("showChild", N);
1811
+ }, q = ze(() => {
1812
+ switch (o == null ? void 0 : o.platform) {
1813
+ case "browser":
1814
+ return $a;
1815
+ case "client":
1816
+ return _a;
1817
+ case "three":
1818
+ return za;
1819
+ }
1820
+ }), y = (N) => {
1821
+ const L = document.documentElement;
1822
+ N == null || N.forEach((ne) => {
1823
+ L.style.setProperty(ne.name, ne.value);
1824
+ });
1825
+ };
1826
+ Ue(() => o.platform, (N, L) => {
1827
+ N && y(q.value);
1828
+ }, { immediate: !0 });
1829
+ const _ = () => {
1830
+ G("buildContent");
1831
+ };
1832
+ return Ue(
1833
+ () => [o == null ? void 0 : o.content, o == null ? void 0 : o.jsonContents],
1834
+ async () => {
1835
+ var N, L, ne, X;
1836
+ try {
1837
+ if (((N = o == null ? void 0 : o.jsonContents) == null ? void 0 : N.length) > 0) {
1838
+ a.setOriginalData(o == null ? void 0 : o.jsonContents);
1839
+ return;
1840
+ }
1841
+ if (!(o != null && o.content) || ((L = o == null ? void 0 : o.content) == null ? void 0 : L.length) === 0) return;
1842
+ V.value = !0, K.setImportLoading(!0);
1843
+ let se = [], oe = [];
1844
+ U.setSelectTitle([]), U.setSelectIndex(""), U.setSelectMenu(""), (X = (ne = o == null ? void 0 : o.content) == null ? void 0 : ne.filter((Re) => Re !== "")) == null || X.forEach((Re) => {
1845
+ oe.push(Pa(Re));
1846
+ }), se = oe == null ? void 0 : oe[0], await ja(se), await pa(), a.setOriginalData(se);
1847
+ } catch {
1848
+ rt.error("模型内容错误");
1849
+ }
1850
+ K.setImportLoading(!1);
1851
+ },
1852
+ { deep: !0, immediate: !0 }
1853
+ ), (N, L) => (u(), S("div", Lo, [
1854
+ h.platform === "three" ? (u(), ue(Vo, {
1855
+ key: 0,
1856
+ windowConfig: h.windowConfig,
1857
+ showButton: o == null ? void 0 : o.showButton,
1858
+ onBuildContent: _,
1859
+ onShowChild: z,
1860
+ platform: o == null ? void 0 : o.platform
1861
+ }, {
1862
+ default: m(() => [
1863
+ ut(N.$slots, "default", {}, void 0, !0)
1864
+ ]),
1865
+ _: 3
1866
+ }, 8, ["windowConfig", "showButton", "platform"])) : (u(), ue(uo, {
1867
+ key: 1,
1868
+ windowConfig: h.windowConfig,
1869
+ showButton: o == null ? void 0 : o.showButton,
1870
+ onBuildContent: _,
1871
+ onShowChild: z,
1872
+ platform: o == null ? void 0 : o.platform,
1873
+ taskContent: o.urdfContent
1874
+ }, {
1875
+ default: m(() => [
1876
+ ut(N.$slots, "default", {}, void 0, !0)
1877
+ ]),
1878
+ _: 3
1879
+ }, 8, ["windowConfig", "showButton", "platform", "taskContent"]))
1880
+ ]));
1881
+ }
1882
+ }, Wo = /* @__PURE__ */ nt(Jo, [["__scopeId", "data-v-b5c308a8"]]), Ho = { class: "add-model-content" }, Oo = {
1883
+ key: 0,
1884
+ class: "model-operate"
1885
+ }, qo = { class: "model-select" }, Xo = { class: "model-fill" }, Zo = {
1886
+ key: 1,
1887
+ class: "model-view"
1888
+ }, zo = {
1889
+ class: "drop-menu",
1890
+ style: { width: "120px" }
1891
+ }, _o = { class: "select-model-wrapper" }, $o = { class: "create-project" }, el = { class: "create-project-button" }, tl = { class: "enter-project" }, al = {
1892
+ key: 0,
1893
+ class: "enter-project-list"
1894
+ }, nl = ["onClick"], ol = { class: "project-title" }, ll = { class: "project-operate" }, sl = { class: "enter-project-button" }, il = {
1895
+ __name: "index",
1896
+ props: {
1897
+ mode: {
1898
+ type: String,
1899
+ default: "view"
1900
+ },
1901
+ content: {
1902
+ type: String,
1903
+ default: ""
1904
+ },
1905
+ jsonContents: {
1906
+ type: Array,
1907
+ default: () => []
1908
+ },
1909
+ showButton: {
1910
+ type: Boolean,
1911
+ default: !0
1912
+ },
1913
+ pathContent: {
1914
+ type: String,
1915
+ default: ""
1916
+ },
1917
+ pageKey: {
1918
+ type: String,
1919
+ default: ""
1920
+ },
1921
+ oldSystemKey: {
1922
+ type: String,
1923
+ default: ""
1924
+ }
1925
+ },
1926
+ emits: ["change", "contentChange", "buildContent", "openThreeBuild", "threeData"],
1927
+ setup(h, { emit: Z }) {
1928
+ const a = h, U = Z;
1929
+ La();
1930
+ const K = A([]), V = A(0), o = A([]), G = A([]), z = A(0), q = Ft(De), y = Nt(De), { itemData: _, originalData: N } = Ee(q), { activeMenuPath: L, platform: ne } = Ee(y), X = A(null), se = A(0), oe = A([]);
1931
+ A("");
1932
+ const Re = A(0), pt = A([]), Fe = $t(), { loginUserInfo: $, systemKey: $e } = Ee(Fe), mt = () => {
1933
+ U("buildContent");
1934
+ };
1935
+ Ue(
1936
+ () => a == null ? void 0 : a.pageKey,
1937
+ async () => {
1938
+ let n = {};
1939
+ if ((a == null ? void 0 : a.pageKey) !== "") {
1940
+ const g = await _e(a == null ? void 0 : a.pageKey, sessionStorage.getItem("systemKey"), ""), B = await _e("弯管仿真加工分析/管件解析", sessionStorage.getItem("systemKey"), "");
1941
+ let E = ["管长", "外径"], W = {};
1942
+ B == null || B.forEach((R) => {
1943
+ var Ce;
1944
+ (R == null ? void 0 : R.comp) === "Form" && ((Ce = R == null ? void 0 : R.compData) == null || Ce.forEach((ge) => {
1945
+ var ae;
1946
+ (ge == null ? void 0 : ge.key) === "formContent" && ((ae = ge == null ? void 0 : ge.contents) == null || ae.forEach((Ie) => {
1947
+ E.includes(Ie == null ? void 0 : Ie.key) && (W[Ie.key] = Ie.value);
1948
+ }));
1949
+ }));
1950
+ }), g == null || g.forEach((R) => {
1951
+ var Ce, ge, ae, Ie, Ne, st;
1952
+ if ((R == null ? void 0 : R.comp) === "Table") {
1953
+ let i = [], d = (ae = (ge = (Ce = R == null ? void 0 : R.compData) == null ? void 0 : Ce.find((b) => (b == null ? void 0 : b.key) === "header")) == null ? void 0 : ge.contents) == null ? void 0 : ae.map((b) => b == null ? void 0 : b.label), Y = (st = (Ne = (Ie = R == null ? void 0 : R.compData) == null ? void 0 : Ie.find((b) => (b == null ? void 0 : b.key) === "tableContents")) == null ? void 0 : Ne.contents) == null ? void 0 : st.map((b) => (b = b == null ? void 0 : b.filter((x) => !(x != null && x.id)), b));
1954
+ Y == null || Y.forEach((b) => {
1955
+ i.push(ea(b, d == null ? void 0 : d.filter((x) => x !== "操作")));
1956
+ }), n[R.name] = i, n[R.name + "Content"] = R;
1957
+ }
1958
+ }), n.extra = W;
1959
+ const Q = await tn(), T = await an();
1960
+ n.singleRobotData = Q, n.doubleRobotData = T, U("threeData", n);
1961
+ }
1962
+ },
1963
+ { deep: !0, immediate: !0 }
1964
+ );
1965
+ const ke = (n) => {
1966
+ pt.value = n, U("openThreeBuild", n);
1967
+ };
1968
+ Ue(
1969
+ () => a == null ? void 0 : a.pathContent,
1970
+ () => {
1971
+ (a == null ? void 0 : a.pathContent) !== "" && q.setSystemPath(a == null ? void 0 : a.pathContent);
1972
+ },
1973
+ {
1974
+ deep: !0,
1975
+ immediate: !0
1976
+ }
1977
+ );
1978
+ const yt = (n) => {
1979
+ U("contentChange", n);
1980
+ }, We = (n) => {
1981
+ var B;
1982
+ const g = (B = dt(n == null ? void 0 : n.wholeValue)) == null ? void 0 : B.map((E) => {
1983
+ var W;
1984
+ return (E == null ? void 0 : E.comp) === "Form" && (E.compData = (W = E.compData) == null ? void 0 : W.map((Q) => ((Q == null ? void 0 : Q.key) === "formContent" && (Q.contents = Va(Q == null ? void 0 : Q.contents)), Q))), E;
1985
+ });
1986
+ U("change", {
1987
+ originalContents: N.value,
1988
+ currentContents: n == null ? void 0 : n.wholeValue,
1989
+ editContent: n == null ? void 0 : n.editValue,
1990
+ arrayToContents: g
1991
+ });
1992
+ };
1993
+ Ue(
1994
+ () => o.value,
1995
+ () => {
1996
+ Re.value === o.value.length && o.value.length !== 0 && (K.value = o.value);
1997
+ },
1998
+ { deep: !0, immediate: !0 }
1999
+ );
2000
+ const Bt = () => {
2001
+ X.value !== null && X.value.click();
2002
+ }, Te = async (n) => {
2003
+ y.setActiveMenuPath(""), y.setActiveTopMenuPath(""), y.setAsideMenus([]);
2004
+ const g = n.target.files;
2005
+ if (!g) return;
2006
+ new FileReader(), K.value = [], o.value = [], Re.value = g.length;
2007
+ const B = Array.from(g).map(async (E) => await new Promise((W) => {
2008
+ const Q = new FileReader();
2009
+ Q.onload = (T) => {
2010
+ try {
2011
+ o.value.push(T.target.result), se.value++;
2012
+ } catch (R) {
2013
+ console.error("解析失败:", R);
2014
+ return;
2015
+ }
2016
+ }, Q.onerror = () => W(`读取 ${E.name} 失败`), Q.readAsText(E), n.target.value = "", X.value = null, V.value++;
2017
+ }));
2018
+ await Promise.all(B);
2019
+ };
2020
+ Ue(
2021
+ () => [a == null ? void 0 : a.content, a == null ? void 0 : a.jsonContents],
2022
+ async () => {
2023
+ await pa(), K.value = a.content, G.value = a == null ? void 0 : a.jsonContents;
2024
+ },
2025
+ { deep: !0, immediate: !0 }
2026
+ ), Ue(
2027
+ () => se.value,
2028
+ () => {
2029
+ var n;
2030
+ ((n = oe.value) == null ? void 0 : n.length) !== 0 && (q.setOriginalData(oe.value), q.setItemData(oe.value));
2031
+ },
2032
+ { deep: !0, immediate: !0 }
2033
+ ), A(""), A("");
2034
+ const de = A({
2035
+ targetModel: "",
2036
+ modelName: ""
2037
+ }), pe = A([]), He = A(!1), Oe = ze(() => {
2038
+ const n = (pe == null ? void 0 : pe.value) || [];
2039
+ if (!n.length)
2040
+ return !1;
2041
+ const g = n == null ? void 0 : n[0], B = g == null ? void 0 : g.name;
2042
+ return !(n.length === 1 && !B);
2043
+ }), et = () => {
2044
+ He.value = !1;
2045
+ }, ot = async () => {
2046
+ var W, Q, T;
2047
+ const n = (W = $ == null ? void 0 : $.value) == null ? void 0 : W.account, g = (Q = $ == null ? void 0 : $.value) == null ? void 0 : Q.password;
2048
+ if (!n)
2049
+ return;
2050
+ const B = await Et({
2051
+ valueLikes: {
2052
+ "tableData.account": n,
2053
+ "tableData.password": g
2054
+ }
2055
+ });
2056
+ let E = ((T = B == null ? void 0 : B.data) == null ? void 0 : T.result) || [];
2057
+ return E = E == null ? void 0 : E.filter((R) => {
2058
+ var ge, ae;
2059
+ return ((ae = (ge = R == null ? void 0 : R.value) == null ? void 0 : ge.tableData) == null ? void 0 : ae.account) === n;
2060
+ }), E;
2061
+ }, At = async () => {
2062
+ const n = await ot(), g = n == null ? void 0 : n.map((B) => B == null ? void 0 : B.key);
2063
+ pe.value = g;
2064
+ }, kt = () => {
2065
+ if (!de.value.targetModel) {
2066
+ const g = pe.value, B = g == null ? void 0 : g[0], E = B == null ? void 0 : B.systemKey;
2067
+ de.value.targetModel = E;
2068
+ }
2069
+ }, Ae = async () => {
2070
+ var g;
2071
+ (g = $ == null ? void 0 : $.value) != null && g.account && (He.value = !0, await At(), kt());
2072
+ }, ht = (n) => {
2073
+ sessionStorage.setItem("systemKey", n), Fe.setSystemKey(n), en();
2074
+ }, he = async (n) => {
2075
+ var g, B, E, W, Q, T, R, Ce, ge;
2076
+ try {
2077
+ const ae = await Et({
2078
+ key: {
2079
+ systemKey: n,
2080
+ layer: "superAdmin"
2081
+ }
2082
+ });
2083
+ if (((g = ae == null ? void 0 : ae.data) == null ? void 0 : g.code) === 200) {
2084
+ const Ie = (Q = (W = (E = (B = ae == null ? void 0 : ae.data) == null ? void 0 : B.result) == null ? void 0 : E[0]) == null ? void 0 : W.key) == null ? void 0 : Q.systemType;
2085
+ let Ne = "browser";
2086
+ Ie === "制造系统" && (Ne = "client"), Ie === "三维系统" && (Ne = "three"), y.setPlatform(Ne), y.setPlatName(((ge = (Ce = (R = (T = ae == null ? void 0 : ae.data) == null ? void 0 : T.result) == null ? void 0 : R[0]) == null ? void 0 : Ce.key) == null ? void 0 : ge.name) ?? "");
2087
+ }
2088
+ } catch (ae) {
2089
+ return Promise.reject(ae);
2090
+ }
2091
+ }, tt = (n) => {
2092
+ de.value.targetModel = n;
2093
+ }, qe = async () => {
2094
+ var n;
2095
+ if (Oe.value) {
2096
+ if (!((n = de == null ? void 0 : de.value) != null && n.targetModel)) {
2097
+ rt.warning("请先选择模型");
2098
+ return;
2099
+ }
2100
+ et(), ht(de.value.targetModel), he(de.value.targetModel);
2101
+ }
2102
+ }, Me = async () => {
2103
+ var g, B, E;
2104
+ (g = $ == null ? void 0 : $.value) == null || g.account, (B = $ == null ? void 0 : $.value) == null || B.password;
2105
+ const n = await Et({
2106
+ key: {
2107
+ pageKey: "/user"
2108
+ }
2109
+ });
2110
+ return (E = n == null ? void 0 : n.data) == null ? void 0 : E.result;
2111
+ }, lt = async () => {
2112
+ const n = await Me();
2113
+ return n == null ? void 0 : n.reduce((B, E) => {
2114
+ var T;
2115
+ const W = ((T = E == null ? void 0 : E.key) == null ? void 0 : T.systemKey) || -1, Q = Number(W);
2116
+ return Math.max(Q, B);
2117
+ }, 0);
2118
+ }, It = async () => {
2119
+ const n = await St();
2120
+ ht(n), he(n), et();
2121
+ }, St = async () => {
2122
+ var Q, T, R;
2123
+ const n = await lt();
2124
+ if (!n)
2125
+ return;
2126
+ const g = n + 1, B = g.toString(), E = (Q = $ == null ? void 0 : $.value) == null ? void 0 : Q.account, W = (T = $ == null ? void 0 : $.value) == null ? void 0 : T.password;
2127
+ return (R = de == null ? void 0 : de.value) == null || R.modelName, await Ka({
2128
+ key: {
2129
+ pageKey: "/user",
2130
+ systemKey: B,
2131
+ layer: "superAdmin"
2132
+ },
2133
+ value: {
2134
+ tableData: {
2135
+ account: E,
2136
+ password: W
2137
+ }
2138
+ }
2139
+ }), g;
2140
+ }, ft = async (n) => {
2141
+ if (!n)
2142
+ return;
2143
+ const g = (n == null ? void 0 : n.key) || {}, B = {
2144
+ id: n == null ? void 0 : n.id,
2145
+ key: {
2146
+ ...g,
2147
+ name: ""
2148
+ }
2149
+ };
2150
+ await Fa(B);
2151
+ }, Ct = async (n) => {
2152
+ var B;
2153
+ const g = (B = n == null ? void 0 : n.map((E) => E == null ? void 0 : E.id)) == null ? void 0 : B.filter((E) => E);
2154
+ (g == null ? void 0 : g.length) > 0 && await ra({
2155
+ ids: g
2156
+ });
2157
+ }, Pe = async () => {
2158
+ de.value.targetModel = "", await Ae();
2159
+ }, fe = async (n) => {
2160
+ var E, W;
2161
+ y.setImportLoading(!0);
2162
+ const g = await ot().catch((Q) => (y.setImportLoading(!1), rt.error("删除失败"), Promise.reject(Q))), B = g == null ? void 0 : g.find((Q) => {
2163
+ var R;
2164
+ const T = (R = Q == null ? void 0 : Q.key) == null ? void 0 : R.systemKey;
2165
+ return n === T;
2166
+ });
2167
+ if (B && (g == null ? void 0 : g.length) === 1 && await ft(B).catch((Q) => (y.setImportLoading(!1), rt.error("删除失败"), Promise.reject(Q))), B && (g == null ? void 0 : g.length) > 1) {
2168
+ const Q = await Et({
2169
+ key: {
2170
+ systemKey: n
2171
+ }
2172
+ }).catch((T) => (y.setImportLoading(!1), rt.error("删除失败"), Promise.reject(T)));
2173
+ if (((E = Q == null ? void 0 : Q.data) == null ? void 0 : E.code) === 200) {
2174
+ const T = (W = Q == null ? void 0 : Q.data) == null ? void 0 : W.result;
2175
+ await Ct(T).catch((R) => (y.setImportLoading(!1), rt.error("删除失败"), Promise.reject(R)));
2176
+ }
2177
+ }
2178
+ await Pe(), y.setImportLoading(!1), rt.success("删除成功");
2179
+ };
2180
+ Ue(() => $e.value, (n) => {
2181
+ (a == null ? void 0 : a.oldSystemKey) === "" && (de.value.targetModel = n, n || Ae());
2182
+ }, { deep: !0, immediate: !0 });
2183
+ const je = async () => {
2184
+ var g, B, E, W;
2185
+ y.setImportLoading(!0);
2186
+ const n = await Et({
2187
+ key: {
2188
+ systemKey: sessionStorage.getItem("systemKey")
2189
+ }
2190
+ });
2191
+ if (((g = n == null ? void 0 : n.data) == null ? void 0 : g.code) === 200) {
2192
+ let Q = (W = (E = (B = n == null ? void 0 : n.data) == null ? void 0 : B.result) == null ? void 0 : E.map((T) => {
2193
+ var R;
2194
+ if (((R = T == null ? void 0 : T.key) == null ? void 0 : R.layer) !== "superAdmin")
2195
+ return T == null ? void 0 : T.id;
2196
+ })) == null ? void 0 : W.filter((T) => T);
2197
+ (Q == null ? void 0 : Q.length) > 0 && await ra({
2198
+ ids: Q
2199
+ }), y.setRawMenus([]);
2200
+ }
2201
+ y.setImportLoading(!1);
2202
+ };
2203
+ return (n, g) => {
2204
+ const B = ce("svg-icon"), E = ce("el-button");
2205
+ return u(), S("div", Ho, [
2206
+ (a == null ? void 0 : a.mode) === "edit" ? (u(), S("div", Oo, [
2207
+ r("div", qo, [
2208
+ l(Zt)
2209
+ ]),
2210
+ (u(), S("div", {
2211
+ class: "model-show",
2212
+ key: z.value
2213
+ }, [
2214
+ l(zt)
2215
+ ])),
2216
+ r("div", Xo, [
2217
+ l(_t)
2218
+ ])
2219
+ ])) : H("", !0),
2220
+ (a == null ? void 0 : a.mode) === "view" ? (u(), S("div", Zo, [
2221
+ (u(), ue(Wo, {
2222
+ showButton: a == null ? void 0 : a.showButton,
2223
+ platform: s(ne),
2224
+ content: K.value,
2225
+ onChange: We,
2226
+ jsonContents: G.value,
2227
+ onContentChange: yt,
2228
+ onBuildContent: mt,
2229
+ key: z.value,
2230
+ onShowChild: ke,
2231
+ urdfContent: pt.value
2232
+ }, {
2233
+ default: m(() => [
2234
+ l(Qt, null, {
2235
+ dropTitle: m(() => {
2236
+ var W;
2237
+ return [
2238
+ ((W = a == null ? void 0 : a.jsonContents) == null ? void 0 : W.length) === 0 && (a != null && a.showButton) ? (u(), ue(E, {
2239
+ key: 0,
2240
+ class: "system-default-button"
2241
+ }, {
2242
+ icon: m(() => [
2243
+ l(B, { name: "model" })
2244
+ ]),
2245
+ default: m(() => [
2246
+ g[0] || (g[0] = Je(" 模型 "))
2247
+ ]),
2248
+ _: 1,
2249
+ __: [0]
2250
+ })) : H("", !0)
2251
+ ];
2252
+ }),
2253
+ dropMenu: m(() => [
2254
+ r("div", zo, [
2255
+ l(E, {
2256
+ onClick: Bt,
2257
+ style: { width: "100%", margin: "0" }
2258
+ }, {
2259
+ icon: m(() => [
2260
+ l(B, { name: "import" })
2261
+ ]),
2262
+ default: m(() => [
2263
+ (u(), S("input", {
2264
+ type: "file",
2265
+ key: V.value,
2266
+ ref_key: "fileInput",
2267
+ ref: X,
2268
+ accept: ".txt, .inm, .iml, .imd",
2269
+ onChange: Te,
2270
+ style: { display: "none" },
2271
+ multiple: ""
2272
+ }, null, 32)),
2273
+ g[1] || (g[1] = Je(" 导入模型 "))
2274
+ ]),
2275
+ _: 1,
2276
+ __: [1]
2277
+ }),
2278
+ l(E, { style: { width: "100%", margin: "0" } }, {
2279
+ icon: m(() => [
2280
+ l(B, { name: "export" })
2281
+ ]),
2282
+ default: m(() => [
2283
+ g[2] || (g[2] = Je(" 导出模型 "))
2284
+ ]),
2285
+ _: 1,
2286
+ __: [2]
2287
+ }),
2288
+ l(E, {
2289
+ onClick: je,
2290
+ style: { width: "100%", margin: "0" }
2291
+ }, {
2292
+ icon: m(() => [
2293
+ l(B, { name: "clear" })
2294
+ ]),
2295
+ default: m(() => [
2296
+ g[3] || (g[3] = Je(" 清空模型 "))
2297
+ ]),
2298
+ _: 1,
2299
+ __: [3]
2300
+ })
2301
+ ])
2302
+ ]),
2303
+ _: 1
2304
+ })
2305
+ ]),
2306
+ _: 1
2307
+ }, 8, ["showButton", "platform", "content", "jsonContents", "urdfContent"]))
2308
+ ])) : H("", !0),
2309
+ l(jt, {
2310
+ class: "select-model-dialog",
2311
+ visible: He.value && (a == null ? void 0 : a.oldSystemKey) === "",
2312
+ onBeforeDestroy: et,
2313
+ showClose: !1,
2314
+ closeOnClickModal: !1,
2315
+ closeOnPressEscape: !1,
2316
+ modalClass: "select-model-modal",
2317
+ alignCenter: !0,
2318
+ appendToBody: !1
2319
+ }, {
2320
+ default: m(() => {
2321
+ var W, Q;
2322
+ return [
2323
+ r("div", _o, [
2324
+ r("div", $o, [
2325
+ g[4] || (g[4] = r("div", { class: "create-project-title" }, " 新建项目 ", -1)),
2326
+ r("div", el, [
2327
+ l(ct, {
2328
+ emptyColor: !0,
2329
+ onClickTrigger: It,
2330
+ modelValue: "创建项目",
2331
+ buttonType: "primary"
2332
+ })
2333
+ ])
2334
+ ]),
2335
+ r("div", tl, [
2336
+ g[5] || (g[5] = r("div", { class: "enter-project-title" }, "项目列表", -1)),
2337
+ (W = pe.value) != null && W.length ? (u(), S("div", al, [
2338
+ (u(!0), S(Ke, null, Le(pe.value, (T) => {
2339
+ var R;
2340
+ return u(), S("div", {
2341
+ class: Pt(["project-item", {
2342
+ "project-item-active": (T == null ? void 0 : T.systemKey) == de.value.targetModel
2343
+ }]),
2344
+ onClick: (Ce) => tt(T == null ? void 0 : T.systemKey)
2345
+ }, [
2346
+ r("div", ol, re(`${T.name ?? ""}(${T.systemKey})`), 1),
2347
+ r("div", ll, [
2348
+ ((R = pe.value) == null ? void 0 : R.length) > 1 ? (u(), ue(B, {
2349
+ key: 0,
2350
+ class: "project-delete",
2351
+ name: "shanchu1",
2352
+ onClick: (Ce) => fe(T == null ? void 0 : T.systemKey)
2353
+ }, null, 8, ["onClick"])) : H("", !0)
2354
+ ])
2355
+ ], 10, nl);
2356
+ }), 256))
2357
+ ])) : H("", !0),
2358
+ r("div", sl, [
2359
+ l(ct, {
2360
+ class: Pt({ "enter-button-disable": !((Q = pe.value) != null && Q.length) }),
2361
+ emptyColor: !0,
2362
+ onClickTrigger: qe,
2363
+ modelValue: "进入项目",
2364
+ buttonType: "primary"
2365
+ }, null, 8, ["class"])
2366
+ ])
2367
+ ])
2368
+ ])
2369
+ ];
2370
+ }),
2371
+ _: 1
2372
+ }, 8, ["visible"])
2373
+ ]);
2374
+ };
2375
+ }
2376
+ }, Pl = /* @__PURE__ */ nt(il, [["__scopeId", "data-v-bcdf4fb0"]]);
2377
+ export {
2378
+ Pl as default
2379
+ };