ss-component-new 1.2.331 → 1.2.333

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 (123) hide show
  1. package/dist/{MTLLoader-wwr1B193.cjs → MTLLoader-C9zwOo5R.cjs} +1 -1
  2. package/dist/{MTLLoader-Cp2efv7h.js → MTLLoader-DEhuJ8cA.js} +1 -1
  3. package/dist/{OrbitControls-Dk0u7TVO.cjs → OrbitControls-CrWBKSTk.cjs} +1 -1
  4. package/dist/{OrbitControls-RSLz2S0b.js → OrbitControls-hKxTuAne.js} +1 -1
  5. package/dist/{URDFLoader-CkO4RJLO.cjs → URDFLoader-BHqq00po.cjs} +1 -1
  6. package/dist/{URDFLoader-BpUMfsF6.js → URDFLoader-BU46gp7K.js} +2 -2
  7. package/dist/{animationData-C7ciTI7m.js → animationData-BbL90xGU.js} +2 -2
  8. package/dist/{animationData-BoxVqycf.cjs → animationData-BpQQZnbj.cjs} +1 -1
  9. package/dist/array-CbS69fPx.cjs +1 -0
  10. package/dist/{array-CVIR-i--.js → array-g-BzIhKE.js} +12 -12
  11. package/dist/{iconfont-C2QDZzSl.js → iconfont-gpkjnIRx.js} +2 -2
  12. package/dist/{iconfont-TZ8GIkZM.cjs → iconfont-m2r8ESph.cjs} +1 -1
  13. package/dist/{index-Bp1PEp0W.js → index-1ax1erqY.js} +5 -5
  14. package/dist/{index-DfZf-0j4.js → index-4cqyGWUU.js} +2 -2
  15. package/dist/{index-BFxYIpIU.js → index-95RC0SB0.js} +8 -9
  16. package/dist/{index-Bog5kQji.js → index-B0lFT37d.js} +1 -1
  17. package/dist/{index-081NeEuV.cjs → index-B4XQbv4q.cjs} +1 -1
  18. package/dist/index-BDGC3yIw.cjs +42 -0
  19. package/dist/index-BGP7aEbi.cjs +1 -0
  20. package/dist/{index-CiO2uT4E.cjs → index-BHaaYQfC.cjs} +12 -12
  21. package/dist/{index-CkO99t26.cjs → index-BQTrub6X.cjs} +1 -1
  22. package/dist/{index-BGmdJ8Zg.js → index-BS0-LNeC.js} +7 -7
  23. package/dist/{index-Bos1deWK.cjs → index-BV6P_J2D.cjs} +1 -1
  24. package/dist/{index-DPeOjfU1.cjs → index-BWIBX9Sl.cjs} +1 -1
  25. package/dist/index-BfeqiijR.cjs +1 -0
  26. package/dist/{index-CzKMGoa-.js → index-Bh66WJwb.js} +15 -15
  27. package/dist/{index-DRvE5S23.js → index-BqjG1Y2Y.js} +16 -17
  28. package/dist/{index-BWBPdata.cjs → index-C6K5EORF.cjs} +1 -1
  29. package/dist/index-C9a63MeW.cjs +13 -0
  30. package/dist/index-CEhfRVcG.cjs +1 -0
  31. package/dist/index-CErvylUA.cjs +1 -0
  32. package/dist/{index-DkIWU9Bu.js → index-CGefc7Ak.js} +769 -766
  33. package/dist/{index-uN57qZre.cjs → index-CHxsrbXy.cjs} +1 -1
  34. package/dist/{index-B2GT4T1e.cjs → index-CIybeMPI.cjs} +1 -1
  35. package/dist/index-CKgsrRZt.js +10442 -0
  36. package/dist/{index-i5Ue_JoA.cjs → index-CKwnphQR.cjs} +1 -1
  37. package/dist/{index-C2_KHquo.js → index-CM-E1W8F.js} +7 -7
  38. package/dist/{index-DEF6SrBV.js → index-CUNUX64A.js} +4 -4
  39. package/dist/{index-BGB8AN7S.js → index-CXx07mqc.js} +38 -38
  40. package/dist/{index-X2bwtZbV.js → index-CbJ39TR9.js} +14 -14
  41. package/dist/index-Cbp2cz1D.cjs +1 -0
  42. package/dist/index-CdqgG6z_.cjs +1 -0
  43. package/dist/{index-B_SWTmBD.cjs → index-Cexe1_nR.cjs} +1 -1
  44. package/dist/{index-DdBe7pKL.cjs → index-Cgt2DO86.cjs} +1 -1
  45. package/dist/{index-DHf9fOS7.js → index-Ch1TDVys.js} +18 -18
  46. package/dist/{index-DkEJVaAX.js → index-ChKY9Q_c.js} +8 -8
  47. package/dist/index-Cp8dl8Y4.cjs +1 -0
  48. package/dist/{index-CkUnZ2se.cjs → index-CzrqxMQq.cjs} +1 -1
  49. package/dist/{index-DSt_Eqwk.js → index-D-v_mH2L.js} +326 -326
  50. package/dist/{index-D3oj5RSK.js → index-D7Ejivyg.js} +12 -12
  51. package/dist/{index-DU4iimmS.cjs → index-D7p_01Bm.cjs} +1 -1
  52. package/dist/{index-u30t7l7e.js → index-DAw-JFPy.js} +4 -4
  53. package/dist/{index-DVf8au0C.cjs → index-DJMikZ6m.cjs} +1 -1
  54. package/dist/{index-Dw0CPCgX.js → index-DJv0U7ep.js} +8 -8
  55. package/dist/index-DL-scY6_.js +8211 -0
  56. package/dist/index-DRjfXii0.cjs +1 -0
  57. package/dist/{index-Z8iuWbfd.js → index-DhBrMxH5.js} +2 -2
  58. package/dist/index-DjOAHJHD.cjs +11 -0
  59. package/dist/{index-CY36YclZ.js → index-DkGjjjvX.js} +51 -51
  60. package/dist/{index-TdIk51gx.js → index-Du5EVvZy.js} +1 -1
  61. package/dist/{index-BqAHAwh3.js → index-FTgRHaEc.js} +2 -2
  62. package/dist/{index-CF2oTbnv.js → index-HoGtZJB5.js} +2 -2
  63. package/dist/{index-CRhbl-Xs.cjs → index-L3o91yA1.cjs} +1 -1
  64. package/dist/{index-H-RrS-FV.js → index-N7UyY0Cn.js} +8 -9
  65. package/dist/{index-BAnu2IcW.js → index-OmrdMljT.js} +36 -37
  66. package/dist/{index-DKKKZSMe.cjs → index-V1en5J1m.cjs} +1 -1
  67. package/dist/index-cGDJIpua.cjs +11 -0
  68. package/dist/{index-CDseWBxW.js → index-ihdYLrfi.js} +13 -13
  69. package/dist/{index-Bg3lrziJ.js → index-mhd92owW.js} +1 -1
  70. package/dist/index-xkAnmSfa.cjs +1 -0
  71. package/dist/{index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BDXu7acs.cjs → index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BYcd0jgi.cjs} +147 -147
  72. package/dist/{index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BXs-wWd7.js → index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-CUjt37hI.js} +14 -14
  73. package/dist/index.vue_vue_type_style_index_1_lang-D3aPbrch.cjs +3 -0
  74. package/dist/{index.vue_vue_type_style_index_1_lang-BzNe13gn.js → index.vue_vue_type_style_index_1_lang-D4T1pSpg.js} +8 -8
  75. package/dist/{isString-DDsphIfV.cjs → isString-BM0aTbV9.cjs} +1 -1
  76. package/dist/{isString-D0BsYbM3.js → isString-DkWdJm3P.js} +1 -1
  77. package/dist/main-BAe55yT4.cjs +11 -0
  78. package/dist/{main-BEgGvauC.js → main-DLYiVNbO.js} +9 -10
  79. package/dist/{menuIndex-BLcswWB-.js → menuIndex-4B2w4mPA.js} +1 -1
  80. package/dist/{menuIndex-bwSbtzjl.cjs → menuIndex-CJYZx11j.cjs} +1 -1
  81. package/dist/ss-component.cjs +1 -1
  82. package/dist/ss-component.css +1 -1
  83. package/dist/ss-component.js +11 -11
  84. package/dist/ss-component2.cjs +1 -1
  85. package/dist/ss-component2.js +12 -12
  86. package/dist/{threeModel-CsoaXy4U.cjs → threeModel-5zOGJMgA.cjs} +1 -1
  87. package/dist/{threeModel-o-U3qE_Y.js → threeModel-CGM-saVm.js} +6 -6
  88. package/dist/{threePreview-B9pRhKDM.js → threePreview-BRK8_lKV.js} +7 -6
  89. package/dist/threePreview-BkKC0IgX.cjs +1 -0
  90. package/dist/{threeSceneView-DRPX8OYV.js → threeSceneView-5V5smS73.js} +53 -53
  91. package/dist/{threeSceneView-DN8Xyzfv.cjs → threeSceneView-BCQKeoTk.cjs} +1 -1
  92. package/dist/{threeSceneViewForCPMPIP-BCTxqfOq.cjs → threeSceneViewForCPMPIP-DVqwxUS8.cjs} +1 -1
  93. package/dist/{threeSceneViewForCPMPIP-B_SeEcU9.js → threeSceneViewForCPMPIP-DqG9ZYEL.js} +15 -15
  94. package/dist/threeTrackPathView-BrBEbTGo.cjs +1 -0
  95. package/dist/{threeTrackPathView-C-bjSsJM.js → threeTrackPathView-CBKRfkly.js} +8 -7
  96. package/dist/{threeViewerHost-irhPdb16.js → threeViewerHost-CTAXJC99.js} +10 -11
  97. package/dist/threeViewerHost-QHAFlASe.cjs +1 -0
  98. package/dist/{urdfTree-5g-HLyvW.js → urdfTree-DAM1Wv4K.js} +1 -1
  99. package/dist/{urdfTree-S5yUGyZL.cjs → urdfTree-DNQtn8Y5.cjs} +1 -1
  100. package/dist/{workpieceTreePanel-BaLWAZDy.js → workpieceTreePanel-B8WM9_Wb.js} +4 -4
  101. package/dist/{workpieceTreePanel-hlLH8y_h.cjs → workpieceTreePanel-DKMsi2D-.cjs} +1 -1
  102. package/package.json +1 -1
  103. package/dist/array-Bi-wunyk.cjs +0 -1
  104. package/dist/index-BEqVDCR5.cjs +0 -1
  105. package/dist/index-BVMFNtUY.cjs +0 -11
  106. package/dist/index-BV_kcZph.js +0 -12765
  107. package/dist/index-Bc85VROV.cjs +0 -32
  108. package/dist/index-BhpB-M-v.cjs +0 -13
  109. package/dist/index-BxQs7JCB.cjs +0 -1
  110. package/dist/index-CQ5cuVUq.cjs +0 -1
  111. package/dist/index-CjrO5PEa.cjs +0 -1
  112. package/dist/index-CoaLtkUJ.cjs +0 -1
  113. package/dist/index-Df5Gg8qa.cjs +0 -1
  114. package/dist/index-DmDnw4T-.cjs +0 -1
  115. package/dist/index-UbLqf_y6.cjs +0 -1
  116. package/dist/index-cx0rUqLg.js +0 -5929
  117. package/dist/index-k04UdLA7.cjs +0 -1
  118. package/dist/index-pSTYzLRc.cjs +0 -21
  119. package/dist/index.vue_vue_type_style_index_1_lang-OiQttjIF.cjs +0 -3
  120. package/dist/main-BDV5VAB6.cjs +0 -11
  121. package/dist/threePreview-CGRM7OHr.cjs +0 -1
  122. package/dist/threeTrackPathView-Dkc-x5Po.cjs +0 -1
  123. package/dist/threeViewerHost-e0FA2tJj.cjs +0 -1
@@ -1 +1 @@
1
- "use strict";const n=require("vue"),k=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BDXu7acs.cjs"),x=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),J=(o,a)=>{if(!a)return null;const i=o.joints[a];return i||null},V=(o,a)=>{if(!a)return null;const i=J(o,a);if(!i)return null;let u=null;return i.traverse(c=>{c instanceof k.Mesh&&!u&&(u=c)}),u},F=(o,a)=>{if(!a)return null;const i=o.links[a];return i||null},L=(o,a)=>{if(!a)return null;const i=F(o,a);if(!i)return null;let u=null;return i.traverse(c=>{c instanceof k.Mesh&&!u&&(u=c)}),u},E=o=>{const a=o.joints;return Object.values(a)},M=o=>E(o).filter(u=>u.jointType!=="fixed"),N=o=>{const a=o.links;return Object.keys(a)},w={class:"panel-content"},B={key:0,class:"joints-list"},b={class:"joint-info-row"},I={class:"joint-left"},S={class:"joint-name"},C={class:"joint-range"},D={class:"joint-type"},P={key:0,class:"joint-control-row"},T={class:"slider-container"},U=["min","max","value","onInput"],A={class:"value-display"},R={class:"joint-value"},q={class:"unit"},O={key:1,class:"empty-state"},K=n.defineComponent({__name:"urdfJointPanel",props:{model:{}},setup(o,{expose:a}){const i=o,u=n.ref([]),c=n.ref(null),f=(r,e=!1)=>r==="revolute"?e?Math.PI:-Math.PI:r==="prismatic"?e?1:-1:0,h=r=>{if(!r||!r.joints)return console.warn("URDF模型无效或不包含关节信息"),[];const e=[];return E(r).forEach(l=>{var d,p;if(l.jointType==="fixed")return;let t={lower:((d=l.limit)==null?void 0:d.lower)??f(l.jointType,!1),upper:((p=l.limit)==null?void 0:p.upper)??f(l.jointType,!0)};l.jointType==="continuous"&&(t={lower:-10*Math.PI,upper:10*Math.PI}),e.push({name:l.name,type:l.jointType||"unknown",limit:t,currentValue:l.angle||0,urdfJoint:l})}),e},m=(r,e)=>{var d;const s=u.value.find(p=>p.name===r);if(!s)return;const l=parseFloat(e),t=Math.max(s.limit.lower,Math.min(s.limit.upper,l));s.currentValue=t,(d=i.model)!=null&&d.setJointValue?i.model.setJointValue(r,t):s.urdfJoint.setJointValue(t)},_=()=>{u.value.forEach(r=>{(r.type==="revolute"||r.type==="continuous"||r.type==="prismatic")&&m(r.name,0)})},g=()=>{i.model&&u.value.forEach(r=>{r.urdfJoint.angle!==void 0&&r.currentValue!==r.urdfJoint.angle&&(r.currentValue=r.urdfJoint.angle)})},v=()=>{const r=()=>{g(),c.value=requestAnimationFrame(r)};r()},y=()=>{c.value&&(cancelAnimationFrame(c.value),c.value=null)};return n.watch(()=>i.model,r=>{r?u.value=h(r):u.value=[]},{immediate:!0}),n.onMounted(()=>{v()}),n.onUnmounted(()=>{y()}),a({resetAllJoints:_}),(r,e)=>(n.openBlock(),n.createElementBlock("div",w,[u.value.length>0?(n.openBlock(),n.createElementBlock("div",B,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(u.value,s=>(n.openBlock(),n.createElementBlock("div",{key:s.name,class:"joint-item"},[n.createElementVNode("div",b,[n.createElementVNode("div",I,[n.createElementVNode("span",S,n.toDisplayString(s.name),1),n.createElementVNode("span",C," ["+n.toDisplayString(s.limit.lower.toFixed(2))+", "+n.toDisplayString(s.limit.upper.toFixed(2))+"] ",1)]),n.createElementVNode("span",D,n.toDisplayString(s.type),1)]),s.type==="revolute"||s.type==="prismatic"||s.type==="continuous"?(n.openBlock(),n.createElementBlock("div",P,[n.createElementVNode("div",T,[n.createElementVNode("input",{type:"range",min:s.limit.lower,max:s.limit.upper,step:"0.001",value:s.currentValue,onInput:l=>m(s.name,l.target.value),class:"joint-slider"},null,40,U)]),n.createElementVNode("div",A,[n.createElementVNode("span",R,n.toDisplayString(s.currentValue?Number(s.currentValue).toFixed(3):"0.000"),1),n.createElementVNode("span",q,n.toDisplayString(s.type==="prismatic"?"m":"rad"),1)])])):n.createCommentVNode("",!0)]))),128))])):(n.openBlock(),n.createElementBlock("div",O,e[0]||(e[0]=[n.createElementVNode("p",null,"未检测到可控制的关节",-1)])))]))}}),$=x._export_sfc(K,[["__scopeId","data-v-750b831d"]]),H={class:"panel-content"},z="id",G={__name:"urdfTree",props:{model:Object,maxExpandCount:{type:Number,default:10},expandStrategy:{type:String,default:"breadth",validator:o=>["breadth","firstLevel"].includes(o)}},emits:["nodeClick"],setup(o,{emit:a}){const i=o,u=a,c=n.ref([]),f={children:"children",label:"label"},h=e=>{u("nodeClick",e)},m=(e,s=0)=>{const l=[];return Array.isArray(e)&&(e==null?void 0:e.length)>0&&e.forEach(t=>{if(!(t!=null&&t.isMesh)&&((t==null?void 0:t.type)==="URDFJoint"||(t==null?void 0:t.type)==="URDFLink")){const d={name:t==null?void 0:t.name,label:t==null?void 0:t.name,show:!0,level:s+1,isPenultimate:!1,type:t==null?void 0:t.type,id:t==null?void 0:t.id,limit:(t==null?void 0:t.limit)??"",children:m(t==null?void 0:t.children,s+1),path:t==null?void 0:t.name};l.push(d)}}),l},_=e=>e?[{name:e==null?void 0:e.name,label:e==null?void 0:e.name,show:!0,level:1,isPenultimate:!1,type:e==null?void 0:e.type,id:e==null?void 0:e.id,limit:(e==null?void 0:e.limit)??"",children:m(e==null?void 0:e.children,1)||[],path:e==null?void 0:e.name}]:[],g=(e,s)=>{const l=[],t=[...e];for(;t.length>0&&l.length<s;){const d=t.shift();d.children&&d.children.length>0&&(l.push(d.id),t.push(...d.children))}return l},v=(e,s)=>{const l=[];return e.forEach(t=>{if(t.children&&t.children.length>0){l.push(t.id);const d=t.children.filter(p=>p.children&&p.children.length>0).slice(0,s).map(p=>p.id);l.push(...d)}}),l.slice(0,s+1)},y=n.computed(()=>!c.value||c.value.length===0?[]:i.expandStrategy==="firstLevel"?v(c.value,i.maxExpandCount):g(c.value,i.maxExpandCount)),r=n.computed(()=>[{name:"场景",label:"场景",show:!0,level:1,isPenultimate:!1,type:"场景",id:"场景",children:i!=null&&i.model?_(i.model):[],path:"场景"}]);return n.watch(r,e=>{c.value=JSON.parse(JSON.stringify(e))},{immediate:!0}),(e,s)=>{const l=n.resolveComponent("el-tree");return n.openBlock(),n.createElementBlock("div",H,[n.createVNode(l,{data:c.value,props:f,"default-expanded-keys":y.value,"node-key":z,onNodeClick:h},null,8,["data","default-expanded-keys"])])}}},Q=x._export_sfc(G,[["__scopeId","data-v-cfde50c3"]]);exports.JointPanel=$;exports.UrdfTree=Q;exports.getAllLinkName=N;exports.getMeshFromJoint=V;exports.getMeshFromLink=L;exports.getNonFixedJoints=M;exports.getTargetJoint=J;
1
+ "use strict";const n=require("vue"),k=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BYcd0jgi.cjs"),x=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),J=(o,a)=>{if(!a)return null;const i=o.joints[a];return i||null},V=(o,a)=>{if(!a)return null;const i=J(o,a);if(!i)return null;let u=null;return i.traverse(c=>{c instanceof k.Mesh&&!u&&(u=c)}),u},F=(o,a)=>{if(!a)return null;const i=o.links[a];return i||null},L=(o,a)=>{if(!a)return null;const i=F(o,a);if(!i)return null;let u=null;return i.traverse(c=>{c instanceof k.Mesh&&!u&&(u=c)}),u},E=o=>{const a=o.joints;return Object.values(a)},M=o=>E(o).filter(u=>u.jointType!=="fixed"),N=o=>{const a=o.links;return Object.keys(a)},w={class:"panel-content"},B={key:0,class:"joints-list"},b={class:"joint-info-row"},I={class:"joint-left"},S={class:"joint-name"},C={class:"joint-range"},D={class:"joint-type"},P={key:0,class:"joint-control-row"},T={class:"slider-container"},U=["min","max","value","onInput"],A={class:"value-display"},R={class:"joint-value"},q={class:"unit"},O={key:1,class:"empty-state"},K=n.defineComponent({__name:"urdfJointPanel",props:{model:{}},setup(o,{expose:a}){const i=o,u=n.ref([]),c=n.ref(null),f=(r,e=!1)=>r==="revolute"?e?Math.PI:-Math.PI:r==="prismatic"?e?1:-1:0,h=r=>{if(!r||!r.joints)return console.warn("URDF模型无效或不包含关节信息"),[];const e=[];return E(r).forEach(l=>{var d,p;if(l.jointType==="fixed")return;let t={lower:((d=l.limit)==null?void 0:d.lower)??f(l.jointType,!1),upper:((p=l.limit)==null?void 0:p.upper)??f(l.jointType,!0)};l.jointType==="continuous"&&(t={lower:-10*Math.PI,upper:10*Math.PI}),e.push({name:l.name,type:l.jointType||"unknown",limit:t,currentValue:l.angle||0,urdfJoint:l})}),e},m=(r,e)=>{var d;const s=u.value.find(p=>p.name===r);if(!s)return;const l=parseFloat(e),t=Math.max(s.limit.lower,Math.min(s.limit.upper,l));s.currentValue=t,(d=i.model)!=null&&d.setJointValue?i.model.setJointValue(r,t):s.urdfJoint.setJointValue(t)},_=()=>{u.value.forEach(r=>{(r.type==="revolute"||r.type==="continuous"||r.type==="prismatic")&&m(r.name,0)})},g=()=>{i.model&&u.value.forEach(r=>{r.urdfJoint.angle!==void 0&&r.currentValue!==r.urdfJoint.angle&&(r.currentValue=r.urdfJoint.angle)})},v=()=>{const r=()=>{g(),c.value=requestAnimationFrame(r)};r()},y=()=>{c.value&&(cancelAnimationFrame(c.value),c.value=null)};return n.watch(()=>i.model,r=>{r?u.value=h(r):u.value=[]},{immediate:!0}),n.onMounted(()=>{v()}),n.onUnmounted(()=>{y()}),a({resetAllJoints:_}),(r,e)=>(n.openBlock(),n.createElementBlock("div",w,[u.value.length>0?(n.openBlock(),n.createElementBlock("div",B,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(u.value,s=>(n.openBlock(),n.createElementBlock("div",{key:s.name,class:"joint-item"},[n.createElementVNode("div",b,[n.createElementVNode("div",I,[n.createElementVNode("span",S,n.toDisplayString(s.name),1),n.createElementVNode("span",C," ["+n.toDisplayString(s.limit.lower.toFixed(2))+", "+n.toDisplayString(s.limit.upper.toFixed(2))+"] ",1)]),n.createElementVNode("span",D,n.toDisplayString(s.type),1)]),s.type==="revolute"||s.type==="prismatic"||s.type==="continuous"?(n.openBlock(),n.createElementBlock("div",P,[n.createElementVNode("div",T,[n.createElementVNode("input",{type:"range",min:s.limit.lower,max:s.limit.upper,step:"0.001",value:s.currentValue,onInput:l=>m(s.name,l.target.value),class:"joint-slider"},null,40,U)]),n.createElementVNode("div",A,[n.createElementVNode("span",R,n.toDisplayString(s.currentValue?Number(s.currentValue).toFixed(3):"0.000"),1),n.createElementVNode("span",q,n.toDisplayString(s.type==="prismatic"?"m":"rad"),1)])])):n.createCommentVNode("",!0)]))),128))])):(n.openBlock(),n.createElementBlock("div",O,e[0]||(e[0]=[n.createElementVNode("p",null,"未检测到可控制的关节",-1)])))]))}}),$=x._export_sfc(K,[["__scopeId","data-v-750b831d"]]),H={class:"panel-content"},z="id",G={__name:"urdfTree",props:{model:Object,maxExpandCount:{type:Number,default:10},expandStrategy:{type:String,default:"breadth",validator:o=>["breadth","firstLevel"].includes(o)}},emits:["nodeClick"],setup(o,{emit:a}){const i=o,u=a,c=n.ref([]),f={children:"children",label:"label"},h=e=>{u("nodeClick",e)},m=(e,s=0)=>{const l=[];return Array.isArray(e)&&(e==null?void 0:e.length)>0&&e.forEach(t=>{if(!(t!=null&&t.isMesh)&&((t==null?void 0:t.type)==="URDFJoint"||(t==null?void 0:t.type)==="URDFLink")){const d={name:t==null?void 0:t.name,label:t==null?void 0:t.name,show:!0,level:s+1,isPenultimate:!1,type:t==null?void 0:t.type,id:t==null?void 0:t.id,limit:(t==null?void 0:t.limit)??"",children:m(t==null?void 0:t.children,s+1),path:t==null?void 0:t.name};l.push(d)}}),l},_=e=>e?[{name:e==null?void 0:e.name,label:e==null?void 0:e.name,show:!0,level:1,isPenultimate:!1,type:e==null?void 0:e.type,id:e==null?void 0:e.id,limit:(e==null?void 0:e.limit)??"",children:m(e==null?void 0:e.children,1)||[],path:e==null?void 0:e.name}]:[],g=(e,s)=>{const l=[],t=[...e];for(;t.length>0&&l.length<s;){const d=t.shift();d.children&&d.children.length>0&&(l.push(d.id),t.push(...d.children))}return l},v=(e,s)=>{const l=[];return e.forEach(t=>{if(t.children&&t.children.length>0){l.push(t.id);const d=t.children.filter(p=>p.children&&p.children.length>0).slice(0,s).map(p=>p.id);l.push(...d)}}),l.slice(0,s+1)},y=n.computed(()=>!c.value||c.value.length===0?[]:i.expandStrategy==="firstLevel"?v(c.value,i.maxExpandCount):g(c.value,i.maxExpandCount)),r=n.computed(()=>[{name:"场景",label:"场景",show:!0,level:1,isPenultimate:!1,type:"场景",id:"场景",children:i!=null&&i.model?_(i.model):[],path:"场景"}]);return n.watch(r,e=>{c.value=JSON.parse(JSON.stringify(e))},{immediate:!0}),(e,s)=>{const l=n.resolveComponent("el-tree");return n.openBlock(),n.createElementBlock("div",H,[n.createVNode(l,{data:c.value,props:f,"default-expanded-keys":y.value,"node-key":z,onNodeClick:h},null,8,["data","default-expanded-keys"])])}}},Q=x._export_sfc(G,[["__scopeId","data-v-cfde50c3"]]);exports.JointPanel=$;exports.UrdfTree=Q;exports.getAllLinkName=N;exports.getMeshFromJoint=V;exports.getMeshFromLink=L;exports.getNonFixedJoints=M;exports.getTargetJoint=J;
@@ -1,11 +1,11 @@
1
1
  var ce = Object.defineProperty;
2
2
  var de = (b, l, t) => l in b ? ce(b, l, { enumerable: !0, configurable: !0, writable: !0, value: t }) : b[l] = t;
3
3
  var J = (b, l, t) => de(b, typeof l != "symbol" ? l + "" : l, t);
4
- import { U as me } from "./URDFLoader-BpUMfsF6.js";
5
- import { S as ve, M as pe, O as fe } from "./MTLLoader-Cp2efv7h.js";
6
- import { bF as be, bG as re, ay as O, a2 as we, Z as he, bH as E, K as _e, bI as ge, b0 as ye, V as je } from "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BXs-wWd7.js";
4
+ import { U as me } from "./URDFLoader-BU46gp7K.js";
5
+ import { S as ve, M as pe, O as fe } from "./MTLLoader-DEhuJ8cA.js";
6
+ import { bF as be, bG as re, ay as O, a2 as we, Z as he, bH as E, K as _e, bI as ge, b0 as ye, V as je } from "./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-CUjt37hI.js";
7
7
  import { ref as T, defineComponent as Le, computed as F, watch as ue, resolveComponent as x, createElementBlock as k, openBlock as V, createVNode as U, createElementVNode as c, withCtx as M, createTextVNode as D, toDisplayString as C } from "vue";
8
- import { c as Re, e as Ue, g as $e } from "./iconfont-C2QDZzSl.js";
8
+ import { c as Re, e as Ue, g as $e } from "./iconfont-gpkjnIRx.js";
9
9
  import { _ as Ce } from "./_plugin-vue_export-helper-CHgC5LLL.js";
10
10
  const Se = "http://222.92.178.198:60000/chfs/shared/Insofrobot/urdf";
11
11
  function Fe(b) {
@@ -1 +1 @@
1
- "use strict";var ee=Object.defineProperty;var te=(b,i,o)=>i in b?ee(b,i,{enumerable:!0,configurable:!0,writable:!0,value:o}):b[i]=o;var C=(b,i,o)=>te(b,typeof i!="symbol"?i+"":i,o);const oe=require("./URDFLoader-CkO4RJLO.cjs"),S=require("./MTLLoader-wwr1B193.cjs"),N=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BDXu7acs.cjs"),e=require("vue"),D=require("./iconfont-TZ8GIkZM.cjs"),se=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),le="http://222.92.178.198:60000/chfs/shared/Insofrobot/urdf";function re(b){const{mtlUrl:i,manager:o,resourcePath:l,onLoad:m,onProgress:r,onError:_}=b,p=new S.MTLLoader(o);return l&&p.setResourcePath(l),p.load(i,m,r,_),p}function ie(b){const{objUrl:i,manager:o,materials:l,onLoad:m,onProgress:r,onError:_}=b,p=new S.OBJLoader(o);return l&&p.setMaterials(l),p.load(i,m,r,_),p}function ne(b){const{manager:i,baseFolderUrl:o,onFileProgress:l}=b,m=new oe.URDFLoader(i);return m.packages=r=>`${o.endsWith("/")?o:o+"/"}${r}/`,m.loadMeshCb=(r,_,p)=>{const g=(()=>{const h=r.split("?")[0].split("#")[0],c=h.lastIndexOf(".");return c>=0?h.slice(c+1).toLowerCase():void 0})();switch(g){case"obj":{const h=(()=>{try{return new URL(".",r).toString()}catch{const a=r.lastIndexOf("/");return a>=0?r.slice(0,a+1):r}})(),c=(()=>{var d;return(((d=r.split("/").pop())==null?void 0:d.split("?")[0].split("#")[0])??"").replace(/\.[^/.?#]+$/,"")})(),f=`${h}${c}.mtl`,V=a=>{ie({objUrl:r,manager:_,materials:a,onLoad:d=>p(d),onProgress:d=>l==null?void 0:l(r,d==null?void 0:d.loaded,d==null?void 0:d.total),onError:d=>{console.error(`[URDF 资源加载失败,已跳过] 无法加载 OBJ 模型: ${r}`,d),p(new N.Group)}})};re({mtlUrl:f,manager:_,resourcePath:h,onLoad:a=>{try{a.preload()}catch{}V(a)},onProgress:a=>l==null?void 0:l(f,a==null?void 0:a.loaded,a==null?void 0:a.total),onError:a=>{console.warn(`[URDF 资源警告] 未找到或加载材质失败: ${f}。将尝试无材质加载。`),V(void 0)}});break}case"stl":{new S.STLLoader(_).load(r,c=>{const f=new N.MeshPhongMaterial({color:12303291,shininess:30}),V=new N.Mesh(c,f);V.castShadow=!0,V.receiveShadow=!0,p(V)},c=>l==null?void 0:l(r,c==null?void 0:c.loaded,c==null?void 0:c.total),c=>{console.error(`[URDF 资源加载失败,已跳过] 无法加载 STL 模型: ${r}`,c),p(new N.Group)});break}default:console.error(`[URDF 资源加载失败,已跳过] 不支持的网格格式: .${g} (路径: ${r})`),p(new N.Group)}},m}function ae(b,i,o,l){return{loadSceneFromFile:r=>new Promise((_,p)=>{o.value=!0,l.value="正在初始化 URDF 加载器...";let g=0,h=0,c=null;const f=new N.LoadingManager;f.onStart=(a,d,E)=>{g=E||0,h=d||0,l.value=g>0?`开始下载资源: 0 / ${g}`:"开始下载资源...",o.value=!0},f.onProgress=(a,d,E)=>{h=d,g=E;const R=`正在加载 ${d} / ${E} 个文件: ${N.getFilenameFromUrl(a)}`;l.value=R,d===E&&(l.value="资源加载完成,正在处理模型...",setTimeout(()=>{if(c){c.updateMatrixWorld(!0);const v=new N.Box3().setFromObject(c);v.isEmpty()&&console.warn("模型加载完成,但所有可视化网格均加载失败,模型将不可见。"),c.userData.boundingBox=v,c.traverse(u=>{u.isMesh&&(u.castShadow=!0,u.receiveShadow=!0)}),_(c)}else p(new Error("URDF 文件本身加载失败。"));l.value="模型加载完成",setTimeout(()=>{l.value==="模型加载完成"&&(o.value=!1,l.value="")},500)},100))},f.onError=a=>{console.warn(`LoadingManager 报告一个资源加载失败: ${a}。加载流程将继续。`)};const V=(a,d,E)=>{const R=N.getFilenameFromUrl(a);let v;E&&E>0?v=`${R}(${N.formatBytes(d)} / ${N.formatBytes(E)})`:d&&d>0?v=`${R}(已下载 ${N.formatBytes(d)})`:v=`${R}`,l.value=`正在下载第 ${h+1} / ${g} 个文件: ${v}`};try{const a=URL.createObjectURL(r);ne({manager:f,baseFolderUrl:le,onFileProgress:V}).load(a,E=>{c=E},void 0,E=>{console.error(`加载 URDF 文件 (${r.name}) 时发生致命错误:`,E),l.value="URDF 文件解析失败",o.value=!1,p(new Error(`加载 URDF 文件失败: ${r.name}`))})}catch(a){console.error("初始化 URDF 加载时发生致命错误:",a),l.value="模型加载失败",o.value=!1,p(a)}})}}function ce(b,i,o,l=["URDFVisual"]){let m=null;const r=e.ref(null),_=new N.Raycaster,p=new N.Vector2,g=new Map;function h(){o.value.forEach(v=>{v.traverse(u=>{l!=null&&l.includes(u.type)&&g.set(u.id,{obj:u,axis:u.axis||new N.Vector3(1,0,0),limits:u.limits})})})}function c(v){r.value&&r.value.obj.traverse(u=>{var t;u.material&&((t=u.material.emissive)==null||t.set(0))}),r.value=v,v.obj.traverse(u=>{var t;u.material&&((t=u.material.emissive)==null||t.set(65280))})}function f(v){const u=b.value.getBoundingClientRect();p.x=(v.clientX-u.left)/u.width*2-1,p.y=-((v.clientY-u.top)/u.height)*2+1,_.setFromCamera(p,m);const t=_.intersectObjects(o.value,!0);if(t.length===0)return;let s=t[0].object,w=null;for(;s;){if(g.has(s.id)){w=g.get(s.id);break}s=s.parent}w&&c(w)}function V(){b.value&&b.value.removeEventListener("click",f,!1)}function a(){const{scene:v,camera:u}=i();m=u,h(),b.value&&b.value.addEventListener("click",f,!1)}function d(v){r.value&&(r.value.obj.visible=v)}function E(v){var s;const{axis:u,value:t}=v;D.updateObjectPosition((s=r.value)==null?void 0:s.obj,u,t)}function R(v){var s;const{axis:u,value:t}=v;D.updateObjectRotation((s=r.value)==null?void 0:s.obj,u,t)}return{initRaycaster:a,dispose:V,selectedObject3D:r,setSelectedObjVisible:d,updatePosition:E,updateRotation:R}}class de{constructor(i){C(this,"robot");C(this,"movableJoints");this.robot=i,this.movableJoints=this.getMovableJoints()}getMovableJoints(){return Object.values(this.robot.joints).filter(i=>i.jointType!=="fixed")}getMovableJointNames(){return this.movableJoints.map(i=>i.name)}setJointAngle(i,o){const l=this.robot.joints[i];if(!l||l.jointType==="fixed")return console.warn(`关节 ${i} 不存在或不可动`),!1;if(l.limit){const m=Math.max(l.limit.lower,Math.min(l.limit.upper,o));m!==o&&console.warn(`关节 ${i} 角度被限制在 [${l.limit.lower}, ${l.limit.upper}]`),l.setJointValue(m)}else l.setJointValue(o);return!0}setJointAngles(i){Object.entries(i).forEach(([o,l])=>{typeof l=="number"&&!isNaN(l)&&this.setJointAngle(o,l)})}getCurrentJointStates(){const i={};return this.movableJoints.forEach(o=>{i[o.name]=o.angle||0}),i}resetToZero(){this.movableJoints.forEach(i=>{i.setJointValue(0)})}getJointLimits(i){const o=this.robot.joints[i];return!o||!o.limit?null:{lower:o.limit.lower,upper:o.limit.upper}}async animateToState(i,o=1e3,l){const m=this.getCurrentJointStates(),r=Date.now();return new Promise(_=>{const p=()=>{const g=Date.now()-r,h=Math.min(g/o,1),c=this.easeInOutCubic(h),f={};Object.keys(i).forEach(V=>{const a=m[V]||0,d=i[V];f[V]=a+(d-a)*c}),this.setJointAngles(f),l&&l(h),h<1?requestAnimationFrame(p):_()};p()})}easeInOutCubic(i){return i<.5?4*i*i*i:1-Math.pow(-2*i+2,3)/2}async playSequence(i,o=1e3,l){for(let m=0;m<i.length;m++)await this.animateToState(i[m],o,r=>{l&&l(m,r)})}}const ue={class:"panel-content"},me={class:"obj"},pe={key:0,class:"obj-base"},ve=["title"],fe=["title"],be={key:1},we={class:"obj-position"},_e={class:"coord-item"},he={class:"coord-item"},Ve={class:"coord-item"},Ee={class:"obj-rotation"},ge={class:"coord-item"},ye={class:"coord-item"},Ne={class:"coord-item"},Le={class:"world"},Re={class:"coord-line"},je={class:"coord-text"},Ce={class:"world-position-item"},De={class:"world-position-item"},Se={class:"world-position-item"},Ue={class:"coord-line"},Fe={class:"coord-text"},$e={class:"world-rotation-item"},Me={class:"world-rotation-item"},xe={class:"world-rotation-item"},Je=e.defineComponent({__name:"workpieceTreePanel",props:{model:{},maxExpandCount:{default:10},expandStrategy:{default:"breadth"}},emits:["nodeClick","visibleChange","updatePosition","updateRotation"],setup(b,{emit:i}){const o=b,l=i,m=e.ref([]),r=e.ref({}),_=(t,s=0)=>{const w=[];return Array.isArray(t)&&(t==null?void 0:t.length)>0&&t.forEach(n=>{if(!(n!=null&&n.isMesh)){const y={name:n==null?void 0:n.name,label:(n==null?void 0:n.name)||(n==null?void 0:n.type),show:!0,level:s+1,isPenultimate:!1,type:n==null?void 0:n.type,id:n==null?void 0:n.id,limit:(n==null?void 0:n.limit)??"",children:_(n==null?void 0:n.children,s+1),path:n==null?void 0:n.name};w.push(y)}}),w},p=t=>t?[{name:t==null?void 0:t.name,label:(t==null?void 0:t.name)||(t==null?void 0:t.type),show:!0,level:1,isPenultimate:!1,type:t==null?void 0:t.type,id:t==null?void 0:t.id,limit:(t==null?void 0:t.limit)??"",children:_(t==null?void 0:t.children,1),path:t==null?void 0:t.name}]:[],g=(t,s)=>{const w=[],n=[...t];for(;n.length>0&&w.length<s;){const y=n.shift();y.children&&y.children.length>0&&(w.push(y.id),n.push(...y.children))}return w},h=(t,s)=>{const w=[];return t.forEach(n=>{if(n.children&&n.children.length>0){w.push(n.id);const y=n.children.filter(j=>j.children&&j.children.length>0).slice(0,s).map(j=>j.id);w.push(...y)}}),w.slice(0,s+1)};e.computed(()=>!m.value||m.value.length===0?[]:o.expandStrategy==="firstLevel"?h(m.value,o.maxExpandCount):g(m.value,o.maxExpandCount));const c=t=>t?parseFloat(t.toFixed(3)):0,f=t=>t?parseFloat(t.toFixed(1)):0,V=(t,s)=>{l("updatePosition",{obj:o.model,axis:s,value:(t==null?void 0:t.toString())||"0"})},a=(t,s)=>{l("updateRotation",{obj:o.model,axis:s,value:(t==null?void 0:t.toString())||"0"})},d=t=>{l("visibleChange",t)},E=e.computed(()=>o!=null&&o.model?p(o.model):[]),R=e.computed(()=>{var t,s;return((t=o==null?void 0:o.model)==null?void 0:t.name)||((s=o==null?void 0:o.model)==null?void 0:s.type)}),v=e.computed(()=>{var t;return(t=o==null?void 0:o.model)==null?void 0:t.type}),u=e.computed(()=>{var t;return(t=o==null?void 0:o.model)==null?void 0:t.visible});return e.watch(()=>o.model,()=>{o.model&&(r.value=D.getObject3DData(o.model))},{deep:!0,immediate:!0}),e.watch(E,t=>{m.value=JSON.parse(JSON.stringify(t))},{immediate:!0}),(t,s)=>{var j,U,F,$,M,x,J,O,k,T,P,z,B,A,q,I,W,G,X,Y,Z,K,H,Q;const w=e.resolveComponent("el-divider"),n=e.resolveComponent("el-switch"),y=e.resolveComponent("el-input-number");return e.openBlock(),e.createElementBlock("div",ue,[e.createVNode(w,null,{default:e.withCtx(()=>s[6]||(s[6]=[e.createTextVNode("对象")])),_:1,__:[6]}),e.createElementVNode("div",me,[o.model?(e.openBlock(),e.createElementBlock("div",pe,[e.createElementVNode("div",{class:"obj-name",title:R.value},e.toDisplayString(R.value),9,ve),e.createElementVNode("div",{class:"obj-type",title:v.value},"["+e.toDisplayString(v.value)+"]",9,fe)])):(e.openBlock(),e.createElementBlock("div",be,"空")),e.createVNode(n,{"model-value":u.value,onChange:d},null,8,["model-value"])]),e.createVNode(w,null,{default:e.withCtx(()=>s[7]||(s[7]=[e.createTextVNode("相对位置")])),_:1,__:[7]}),e.createElementVNode("div",we,[e.createElementVNode("div",_e,[s[8]||(s[8]=e.createElementVNode("span",{class:"axis-label"},"X",-1)),e.createVNode(y,{"model-value":c((U=(j=r.value)==null?void 0:j.position)==null?void 0:U.x),onChange:s[0]||(s[0]=L=>V(L,"x")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",he,[s[9]||(s[9]=e.createElementVNode("span",{class:"axis-label"},"Y",-1)),e.createVNode(y,{"model-value":c(($=(F=r.value)==null?void 0:F.position)==null?void 0:$.y),onChange:s[1]||(s[1]=L=>V(L,"y")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",Ve,[s[10]||(s[10]=e.createElementVNode("span",{class:"axis-label"},"Z",-1)),e.createVNode(y,{"model-value":c((x=(M=r.value)==null?void 0:M.position)==null?void 0:x.z),onChange:s[2]||(s[2]=L=>V(L,"z")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])])]),e.createVNode(w,null,{default:e.withCtx(()=>s[11]||(s[11]=[e.createTextVNode("相对旋转")])),_:1,__:[11]}),e.createElementVNode("div",Ee,[e.createElementVNode("div",ge,[s[12]||(s[12]=e.createElementVNode("span",{class:"axis-label"},"X°",-1)),e.createVNode(y,{"model-value":f((O=(J=r.value)==null?void 0:J.rotation)==null?void 0:O.x),onChange:s[3]||(s[3]=L=>a(L,"x")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",ye,[s[13]||(s[13]=e.createElementVNode("span",{class:"axis-label"},"Y°",-1)),e.createVNode(y,{"model-value":f((T=(k=r.value)==null?void 0:k.rotation)==null?void 0:T.y),onChange:s[4]||(s[4]=L=>a(L,"y")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",Ne,[s[14]||(s[14]=e.createElementVNode("span",{class:"axis-label"},"Z°",-1)),e.createVNode(y,{"model-value":f((z=(P=r.value)==null?void 0:P.rotation)==null?void 0:z.z),onChange:s[5]||(s[5]=L=>a(L,"z")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])])]),e.createVNode(w,null,{default:e.withCtx(()=>s[15]||(s[15]=[e.createTextVNode("世界信息")])),_:1,__:[15]}),e.createElementVNode("div",Le,[e.createElementVNode("div",Re,[s[16]||(s[16]=e.createElementVNode("span",{class:"coord-label"},"世界位置:",-1)),e.createElementVNode("span",je,[e.createElementVNode("div",Ce,e.toDisplayString(c((A=(B=r.value)==null?void 0:B.worldPosition)==null?void 0:A.x))+", ",1),e.createElementVNode("div",De,e.toDisplayString(c((I=(q=r.value)==null?void 0:q.worldPosition)==null?void 0:I.y))+", ",1),e.createElementVNode("div",Se,e.toDisplayString(c((G=(W=r.value)==null?void 0:W.worldPosition)==null?void 0:G.z)),1)])]),e.createElementVNode("div",Ue,[s[17]||(s[17]=e.createElementVNode("span",{class:"coord-label"},"世界旋转:",-1)),e.createElementVNode("span",Fe,[e.createElementVNode("div",$e,e.toDisplayString(f((Y=(X=r.value)==null?void 0:X.worldRotation)==null?void 0:Y.x))+"°, ",1),e.createElementVNode("div",Me,e.toDisplayString(f((K=(Z=r.value)==null?void 0:Z.worldRotation)==null?void 0:K.y))+"°, ",1),e.createElementVNode("div",xe,e.toDisplayString(f((Q=(H=r.value)==null?void 0:H.worldRotation)==null?void 0:Q.z))+"° ",1)])])])])}}}),Oe=se._export_sfc(Je,[["__scopeId","data-v-00d48931"]]);exports.URDFRobotController=de;exports.WorkpieceTreePanel=Oe;exports.useRaycaster=ce;exports.useUrdfLoader=ae;
1
+ "use strict";var ee=Object.defineProperty;var te=(b,i,o)=>i in b?ee(b,i,{enumerable:!0,configurable:!0,writable:!0,value:o}):b[i]=o;var C=(b,i,o)=>te(b,typeof i!="symbol"?i+"":i,o);const oe=require("./URDFLoader-BHqq00po.cjs"),S=require("./MTLLoader-C9zwOo5R.cjs"),N=require("./index.vue_vue_type_style_index_0_scoped_0f027c8c_lang-BYcd0jgi.cjs"),e=require("vue"),D=require("./iconfont-m2r8ESph.cjs"),se=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),le="http://222.92.178.198:60000/chfs/shared/Insofrobot/urdf";function re(b){const{mtlUrl:i,manager:o,resourcePath:l,onLoad:m,onProgress:r,onError:_}=b,p=new S.MTLLoader(o);return l&&p.setResourcePath(l),p.load(i,m,r,_),p}function ie(b){const{objUrl:i,manager:o,materials:l,onLoad:m,onProgress:r,onError:_}=b,p=new S.OBJLoader(o);return l&&p.setMaterials(l),p.load(i,m,r,_),p}function ne(b){const{manager:i,baseFolderUrl:o,onFileProgress:l}=b,m=new oe.URDFLoader(i);return m.packages=r=>`${o.endsWith("/")?o:o+"/"}${r}/`,m.loadMeshCb=(r,_,p)=>{const g=(()=>{const h=r.split("?")[0].split("#")[0],c=h.lastIndexOf(".");return c>=0?h.slice(c+1).toLowerCase():void 0})();switch(g){case"obj":{const h=(()=>{try{return new URL(".",r).toString()}catch{const a=r.lastIndexOf("/");return a>=0?r.slice(0,a+1):r}})(),c=(()=>{var d;return(((d=r.split("/").pop())==null?void 0:d.split("?")[0].split("#")[0])??"").replace(/\.[^/.?#]+$/,"")})(),f=`${h}${c}.mtl`,V=a=>{ie({objUrl:r,manager:_,materials:a,onLoad:d=>p(d),onProgress:d=>l==null?void 0:l(r,d==null?void 0:d.loaded,d==null?void 0:d.total),onError:d=>{console.error(`[URDF 资源加载失败,已跳过] 无法加载 OBJ 模型: ${r}`,d),p(new N.Group)}})};re({mtlUrl:f,manager:_,resourcePath:h,onLoad:a=>{try{a.preload()}catch{}V(a)},onProgress:a=>l==null?void 0:l(f,a==null?void 0:a.loaded,a==null?void 0:a.total),onError:a=>{console.warn(`[URDF 资源警告] 未找到或加载材质失败: ${f}。将尝试无材质加载。`),V(void 0)}});break}case"stl":{new S.STLLoader(_).load(r,c=>{const f=new N.MeshPhongMaterial({color:12303291,shininess:30}),V=new N.Mesh(c,f);V.castShadow=!0,V.receiveShadow=!0,p(V)},c=>l==null?void 0:l(r,c==null?void 0:c.loaded,c==null?void 0:c.total),c=>{console.error(`[URDF 资源加载失败,已跳过] 无法加载 STL 模型: ${r}`,c),p(new N.Group)});break}default:console.error(`[URDF 资源加载失败,已跳过] 不支持的网格格式: .${g} (路径: ${r})`),p(new N.Group)}},m}function ae(b,i,o,l){return{loadSceneFromFile:r=>new Promise((_,p)=>{o.value=!0,l.value="正在初始化 URDF 加载器...";let g=0,h=0,c=null;const f=new N.LoadingManager;f.onStart=(a,d,E)=>{g=E||0,h=d||0,l.value=g>0?`开始下载资源: 0 / ${g}`:"开始下载资源...",o.value=!0},f.onProgress=(a,d,E)=>{h=d,g=E;const R=`正在加载 ${d} / ${E} 个文件: ${N.getFilenameFromUrl(a)}`;l.value=R,d===E&&(l.value="资源加载完成,正在处理模型...",setTimeout(()=>{if(c){c.updateMatrixWorld(!0);const v=new N.Box3().setFromObject(c);v.isEmpty()&&console.warn("模型加载完成,但所有可视化网格均加载失败,模型将不可见。"),c.userData.boundingBox=v,c.traverse(u=>{u.isMesh&&(u.castShadow=!0,u.receiveShadow=!0)}),_(c)}else p(new Error("URDF 文件本身加载失败。"));l.value="模型加载完成",setTimeout(()=>{l.value==="模型加载完成"&&(o.value=!1,l.value="")},500)},100))},f.onError=a=>{console.warn(`LoadingManager 报告一个资源加载失败: ${a}。加载流程将继续。`)};const V=(a,d,E)=>{const R=N.getFilenameFromUrl(a);let v;E&&E>0?v=`${R}(${N.formatBytes(d)} / ${N.formatBytes(E)})`:d&&d>0?v=`${R}(已下载 ${N.formatBytes(d)})`:v=`${R}`,l.value=`正在下载第 ${h+1} / ${g} 个文件: ${v}`};try{const a=URL.createObjectURL(r);ne({manager:f,baseFolderUrl:le,onFileProgress:V}).load(a,E=>{c=E},void 0,E=>{console.error(`加载 URDF 文件 (${r.name}) 时发生致命错误:`,E),l.value="URDF 文件解析失败",o.value=!1,p(new Error(`加载 URDF 文件失败: ${r.name}`))})}catch(a){console.error("初始化 URDF 加载时发生致命错误:",a),l.value="模型加载失败",o.value=!1,p(a)}})}}function ce(b,i,o,l=["URDFVisual"]){let m=null;const r=e.ref(null),_=new N.Raycaster,p=new N.Vector2,g=new Map;function h(){o.value.forEach(v=>{v.traverse(u=>{l!=null&&l.includes(u.type)&&g.set(u.id,{obj:u,axis:u.axis||new N.Vector3(1,0,0),limits:u.limits})})})}function c(v){r.value&&r.value.obj.traverse(u=>{var t;u.material&&((t=u.material.emissive)==null||t.set(0))}),r.value=v,v.obj.traverse(u=>{var t;u.material&&((t=u.material.emissive)==null||t.set(65280))})}function f(v){const u=b.value.getBoundingClientRect();p.x=(v.clientX-u.left)/u.width*2-1,p.y=-((v.clientY-u.top)/u.height)*2+1,_.setFromCamera(p,m);const t=_.intersectObjects(o.value,!0);if(t.length===0)return;let s=t[0].object,w=null;for(;s;){if(g.has(s.id)){w=g.get(s.id);break}s=s.parent}w&&c(w)}function V(){b.value&&b.value.removeEventListener("click",f,!1)}function a(){const{scene:v,camera:u}=i();m=u,h(),b.value&&b.value.addEventListener("click",f,!1)}function d(v){r.value&&(r.value.obj.visible=v)}function E(v){var s;const{axis:u,value:t}=v;D.updateObjectPosition((s=r.value)==null?void 0:s.obj,u,t)}function R(v){var s;const{axis:u,value:t}=v;D.updateObjectRotation((s=r.value)==null?void 0:s.obj,u,t)}return{initRaycaster:a,dispose:V,selectedObject3D:r,setSelectedObjVisible:d,updatePosition:E,updateRotation:R}}class de{constructor(i){C(this,"robot");C(this,"movableJoints");this.robot=i,this.movableJoints=this.getMovableJoints()}getMovableJoints(){return Object.values(this.robot.joints).filter(i=>i.jointType!=="fixed")}getMovableJointNames(){return this.movableJoints.map(i=>i.name)}setJointAngle(i,o){const l=this.robot.joints[i];if(!l||l.jointType==="fixed")return console.warn(`关节 ${i} 不存在或不可动`),!1;if(l.limit){const m=Math.max(l.limit.lower,Math.min(l.limit.upper,o));m!==o&&console.warn(`关节 ${i} 角度被限制在 [${l.limit.lower}, ${l.limit.upper}]`),l.setJointValue(m)}else l.setJointValue(o);return!0}setJointAngles(i){Object.entries(i).forEach(([o,l])=>{typeof l=="number"&&!isNaN(l)&&this.setJointAngle(o,l)})}getCurrentJointStates(){const i={};return this.movableJoints.forEach(o=>{i[o.name]=o.angle||0}),i}resetToZero(){this.movableJoints.forEach(i=>{i.setJointValue(0)})}getJointLimits(i){const o=this.robot.joints[i];return!o||!o.limit?null:{lower:o.limit.lower,upper:o.limit.upper}}async animateToState(i,o=1e3,l){const m=this.getCurrentJointStates(),r=Date.now();return new Promise(_=>{const p=()=>{const g=Date.now()-r,h=Math.min(g/o,1),c=this.easeInOutCubic(h),f={};Object.keys(i).forEach(V=>{const a=m[V]||0,d=i[V];f[V]=a+(d-a)*c}),this.setJointAngles(f),l&&l(h),h<1?requestAnimationFrame(p):_()};p()})}easeInOutCubic(i){return i<.5?4*i*i*i:1-Math.pow(-2*i+2,3)/2}async playSequence(i,o=1e3,l){for(let m=0;m<i.length;m++)await this.animateToState(i[m],o,r=>{l&&l(m,r)})}}const ue={class:"panel-content"},me={class:"obj"},pe={key:0,class:"obj-base"},ve=["title"],fe=["title"],be={key:1},we={class:"obj-position"},_e={class:"coord-item"},he={class:"coord-item"},Ve={class:"coord-item"},Ee={class:"obj-rotation"},ge={class:"coord-item"},ye={class:"coord-item"},Ne={class:"coord-item"},Le={class:"world"},Re={class:"coord-line"},je={class:"coord-text"},Ce={class:"world-position-item"},De={class:"world-position-item"},Se={class:"world-position-item"},Ue={class:"coord-line"},Fe={class:"coord-text"},$e={class:"world-rotation-item"},Me={class:"world-rotation-item"},xe={class:"world-rotation-item"},Je=e.defineComponent({__name:"workpieceTreePanel",props:{model:{},maxExpandCount:{default:10},expandStrategy:{default:"breadth"}},emits:["nodeClick","visibleChange","updatePosition","updateRotation"],setup(b,{emit:i}){const o=b,l=i,m=e.ref([]),r=e.ref({}),_=(t,s=0)=>{const w=[];return Array.isArray(t)&&(t==null?void 0:t.length)>0&&t.forEach(n=>{if(!(n!=null&&n.isMesh)){const y={name:n==null?void 0:n.name,label:(n==null?void 0:n.name)||(n==null?void 0:n.type),show:!0,level:s+1,isPenultimate:!1,type:n==null?void 0:n.type,id:n==null?void 0:n.id,limit:(n==null?void 0:n.limit)??"",children:_(n==null?void 0:n.children,s+1),path:n==null?void 0:n.name};w.push(y)}}),w},p=t=>t?[{name:t==null?void 0:t.name,label:(t==null?void 0:t.name)||(t==null?void 0:t.type),show:!0,level:1,isPenultimate:!1,type:t==null?void 0:t.type,id:t==null?void 0:t.id,limit:(t==null?void 0:t.limit)??"",children:_(t==null?void 0:t.children,1),path:t==null?void 0:t.name}]:[],g=(t,s)=>{const w=[],n=[...t];for(;n.length>0&&w.length<s;){const y=n.shift();y.children&&y.children.length>0&&(w.push(y.id),n.push(...y.children))}return w},h=(t,s)=>{const w=[];return t.forEach(n=>{if(n.children&&n.children.length>0){w.push(n.id);const y=n.children.filter(j=>j.children&&j.children.length>0).slice(0,s).map(j=>j.id);w.push(...y)}}),w.slice(0,s+1)};e.computed(()=>!m.value||m.value.length===0?[]:o.expandStrategy==="firstLevel"?h(m.value,o.maxExpandCount):g(m.value,o.maxExpandCount));const c=t=>t?parseFloat(t.toFixed(3)):0,f=t=>t?parseFloat(t.toFixed(1)):0,V=(t,s)=>{l("updatePosition",{obj:o.model,axis:s,value:(t==null?void 0:t.toString())||"0"})},a=(t,s)=>{l("updateRotation",{obj:o.model,axis:s,value:(t==null?void 0:t.toString())||"0"})},d=t=>{l("visibleChange",t)},E=e.computed(()=>o!=null&&o.model?p(o.model):[]),R=e.computed(()=>{var t,s;return((t=o==null?void 0:o.model)==null?void 0:t.name)||((s=o==null?void 0:o.model)==null?void 0:s.type)}),v=e.computed(()=>{var t;return(t=o==null?void 0:o.model)==null?void 0:t.type}),u=e.computed(()=>{var t;return(t=o==null?void 0:o.model)==null?void 0:t.visible});return e.watch(()=>o.model,()=>{o.model&&(r.value=D.getObject3DData(o.model))},{deep:!0,immediate:!0}),e.watch(E,t=>{m.value=JSON.parse(JSON.stringify(t))},{immediate:!0}),(t,s)=>{var j,U,F,$,M,x,J,O,k,T,P,z,B,A,q,I,W,G,X,Y,Z,K,H,Q;const w=e.resolveComponent("el-divider"),n=e.resolveComponent("el-switch"),y=e.resolveComponent("el-input-number");return e.openBlock(),e.createElementBlock("div",ue,[e.createVNode(w,null,{default:e.withCtx(()=>s[6]||(s[6]=[e.createTextVNode("对象")])),_:1,__:[6]}),e.createElementVNode("div",me,[o.model?(e.openBlock(),e.createElementBlock("div",pe,[e.createElementVNode("div",{class:"obj-name",title:R.value},e.toDisplayString(R.value),9,ve),e.createElementVNode("div",{class:"obj-type",title:v.value},"["+e.toDisplayString(v.value)+"]",9,fe)])):(e.openBlock(),e.createElementBlock("div",be,"空")),e.createVNode(n,{"model-value":u.value,onChange:d},null,8,["model-value"])]),e.createVNode(w,null,{default:e.withCtx(()=>s[7]||(s[7]=[e.createTextVNode("相对位置")])),_:1,__:[7]}),e.createElementVNode("div",we,[e.createElementVNode("div",_e,[s[8]||(s[8]=e.createElementVNode("span",{class:"axis-label"},"X",-1)),e.createVNode(y,{"model-value":c((U=(j=r.value)==null?void 0:j.position)==null?void 0:U.x),onChange:s[0]||(s[0]=L=>V(L,"x")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",he,[s[9]||(s[9]=e.createElementVNode("span",{class:"axis-label"},"Y",-1)),e.createVNode(y,{"model-value":c(($=(F=r.value)==null?void 0:F.position)==null?void 0:$.y),onChange:s[1]||(s[1]=L=>V(L,"y")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",Ve,[s[10]||(s[10]=e.createElementVNode("span",{class:"axis-label"},"Z",-1)),e.createVNode(y,{"model-value":c((x=(M=r.value)==null?void 0:M.position)==null?void 0:x.z),onChange:s[2]||(s[2]=L=>V(L,"z")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])])]),e.createVNode(w,null,{default:e.withCtx(()=>s[11]||(s[11]=[e.createTextVNode("相对旋转")])),_:1,__:[11]}),e.createElementVNode("div",Ee,[e.createElementVNode("div",ge,[s[12]||(s[12]=e.createElementVNode("span",{class:"axis-label"},"X°",-1)),e.createVNode(y,{"model-value":f((O=(J=r.value)==null?void 0:J.rotation)==null?void 0:O.x),onChange:s[3]||(s[3]=L=>a(L,"x")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",ye,[s[13]||(s[13]=e.createElementVNode("span",{class:"axis-label"},"Y°",-1)),e.createVNode(y,{"model-value":f((T=(k=r.value)==null?void 0:k.rotation)==null?void 0:T.y),onChange:s[4]||(s[4]=L=>a(L,"y")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])]),e.createElementVNode("div",Ne,[s[14]||(s[14]=e.createElementVNode("span",{class:"axis-label"},"Z°",-1)),e.createVNode(y,{"model-value":f((z=(P=r.value)==null?void 0:P.rotation)==null?void 0:z.z),onChange:s[5]||(s[5]=L=>a(L,"z")),size:"small",class:"coord-input-compact",precision:3,step:.1,controls:!0,"controls-position":"right"},null,8,["model-value"])])]),e.createVNode(w,null,{default:e.withCtx(()=>s[15]||(s[15]=[e.createTextVNode("世界信息")])),_:1,__:[15]}),e.createElementVNode("div",Le,[e.createElementVNode("div",Re,[s[16]||(s[16]=e.createElementVNode("span",{class:"coord-label"},"世界位置:",-1)),e.createElementVNode("span",je,[e.createElementVNode("div",Ce,e.toDisplayString(c((A=(B=r.value)==null?void 0:B.worldPosition)==null?void 0:A.x))+", ",1),e.createElementVNode("div",De,e.toDisplayString(c((I=(q=r.value)==null?void 0:q.worldPosition)==null?void 0:I.y))+", ",1),e.createElementVNode("div",Se,e.toDisplayString(c((G=(W=r.value)==null?void 0:W.worldPosition)==null?void 0:G.z)),1)])]),e.createElementVNode("div",Ue,[s[17]||(s[17]=e.createElementVNode("span",{class:"coord-label"},"世界旋转:",-1)),e.createElementVNode("span",Fe,[e.createElementVNode("div",$e,e.toDisplayString(f((Y=(X=r.value)==null?void 0:X.worldRotation)==null?void 0:Y.x))+"°, ",1),e.createElementVNode("div",Me,e.toDisplayString(f((K=(Z=r.value)==null?void 0:Z.worldRotation)==null?void 0:K.y))+"°, ",1),e.createElementVNode("div",xe,e.toDisplayString(f((Q=(H=r.value)==null?void 0:H.worldRotation)==null?void 0:Q.z))+"° ",1)])])])])}}}),Oe=se._export_sfc(Je,[["__scopeId","data-v-00d48931"]]);exports.URDFRobotController=de;exports.WorkpieceTreePanel=Oe;exports.useRaycaster=ce;exports.useUrdfLoader=ae;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ss-component-new",
3
3
  "private": false,
4
- "version": "1.2.331",
4
+ "version": "1.2.333",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist",
@@ -1 +0,0 @@
1
- "use strict";const e=require("vue"),j=require("./index-BVMFNtUY.cjs"),A=require("./index-pSTYzLRc.cjs"),D=require("./index-Bc85VROV.cjs"),ne=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),Re=require("./index-BVaHwt5f.cjs"),Ve=require("./index-CiO2uT4E.cjs"),Le=require("./index-DU4iimmS.cjs"),Me={class:"type-select"},$e={class:"group-label"},Fe={class:"group-items"},He=["onDragstart"],Oe={__name:"index",props:{compContainerRef:Object},emits:[""],setup(l,{emit:n}){const d=D.useModelComp(A.pinia),{itemData:r,activeItemIndex:k}=A.storeToRefs(d),c=n,w=e.ref(null),f=e.computed(()=>{var W,O,$;const I={label:"布局",items:["TABS","LAYOUT"]},E={label:"常用",items:["FORM","TABLE"]},S={label:"高级",items:["STEP","TIMELINE","CHART","SIGNATURE","AVATAR","FOLD"]},_=(W=j.slotContent.value)==null?void 0:W.filter(R=>{var i,o;return(o=I==null?void 0:I.items)==null?void 0:o.includes((i=R==null?void 0:R.type)==null?void 0:i.toUpperCase())}),P=(O=j.slotContent.value)==null?void 0:O.filter(R=>{var i,o;return(o=E==null?void 0:E.items)==null?void 0:o.includes((i=R==null?void 0:R.type)==null?void 0:i.toUpperCase())}),N=($=j.slotContent.value)==null?void 0:$.filter(R=>{var i,o;return(o=S==null?void 0:S.items)==null?void 0:o.includes((i=R==null?void 0:R.type)==null?void 0:i.toUpperCase())});return[{...I,items:_},{...E,items:P},{...S,items:N}]}),V=(I,E)=>{try{I.dataTransfer.clearData();const S={...E,timestamp:Date.now()};I.dataTransfer.setData("application/json",JSON.stringify(S)),I.dataTransfer.effectAllowed="copyMove",I.target.classList.add("dragging"),c("handleDragStart",E)}catch(S){console.error("Drag start error:",S)}};return(I,E)=>{const S=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("div",Me,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,_=>(e.openBlock(),e.createElementBlock("div",{class:"group-item",key:_==null?void 0:_.label},[e.createElementVNode("div",$e,e.toDisplayString(_==null?void 0:_.label),1),e.createElementVNode("div",Fe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_==null?void 0:_.items,(P,N)=>(e.openBlock(),e.createElementBlock("div",{class:"type-list",title:"鼠标拖动",ref_for:!0,ref_key:"dragItem",ref:w,key:N,draggable:!0,onDragstart:W=>V(W,P)},[e.createVNode(S,{name:P.icon,style:{width:"15px",height:"15px"}},null,8,["name"]),e.createElementVNode("div",null,e.toDisplayString(P.name),1)],40,He))),128))])]))),128))])}}},Ae=ne._export_sfc(Oe,[["__scopeId","data-v-951fb5b4"]]),ae=D.useModelComp(A.pinia),{pageMapState:Ue}=A.storeToRefs(ae),qe=D.useMenuState(),{activeMenuPath:ee}=A.storeToRefs(qe),z=e.ref([]),Y=e.ref([]),ze=e.computed(()=>[{label:"任务配置",name:"任务配置",component:{comp:"Table",name:"任务配置",isShow:!0,compData:[{key:"header",contents:[{prop:"任务名称",align:"center",isRun:!1,label:"任务名称",isRoute:!1,isTableColHidden:!1,isFormColHidden:!1},{prop:"任务关键词",align:"center",isRun:!1,label:"任务关键词",isRoute:!1,isTableColHidden:!1,isFormColHidden:!1},{prop:"执行任务",align:"center",isRun:!1,label:"执行任务",isRoute:!1,isTableColHidden:!1,isFormColHidden:!1},{prop:"执行交互",align:"center",isRun:!1,label:"执行交互",isRoute:!1,isTableColHidden:!1,isFormColHidden:!1},{prop:"任务状态",align:"center",isRun:!1,label:"任务状态",isRoute:!1,isTableColHidden:!1,isFormColHidden:!1},{prop:"创建时间",align:"center",isRun:!1,label:"创建时间",isRoute:!1,isTableColHidden:!1,isFormColHidden:!1},{label:"操作"}]},{key:"rowButton",contents:[{label:"访问"},{label:"删除"}]},{key:"extraButton",contents:[{label:"创建"},{label:"批量删除"}]},{key:"tableFilter",contents:[]},{key:"tableContents",contents:z.value}]}},{label:"任务关联",name:"任务关联",component:{comp:"Table",name:"任务关联",isShow:!0,compData:[{key:"header",contents:[{prop:"关联名称",align:"center",isRun:!1,label:"关联名称",isRoute:!1,isTableColHidden:!1,isFormColHidden:!1},{prop:"关联形式",align:"center",isRun:!1,label:"关联形式",isRoute:!1,isTableColHidden:!1,isFormColHidden:!1},{prop:"关联任务集合",align:"center",isRun:!1,label:"关联任务集合",isRoute:!1,isTableColHidden:!0,isFormColHidden:!1},{prop:"关联状态",align:"center",isRun:!1,label:"关联状态",isRoute:!1,isTableColHidden:!1,isFormColHidden:!1},{label:"操作"}]},{key:"rowButton",contents:[{label:"访问"},{label:"删除"}]},{key:"extraButton",contents:[{label:"创建"},{label:"批量删除"}]},{key:"tableFilter",contents:[]},{key:"tableContents",contents:Y.value}]}}]),M=e.ref([]),Ne=e.computed(()=>{var l;return(l=M.value)==null?void 0:l.map((n,d)=>({value:n==null?void 0:n.id,label:n==null?void 0:n.name}))}),le=e.ref("data"),J=e.ref("任务配置"),Z=e.ref({}),G=e.ref(null),U=e.reactive({width:"30%",title:"任务配置",type:"创建",show:!1}),Ge=()=>{U.show=!1},Ke=(l,n)=>{var r,k,c,w,f,V,I,E,S;if(Z.value=D.cloneDeep(n),l==="删除")return J.value==="任务配置"?z.value=(r=z.value)==null?void 0:r.filter(_=>(_==null?void 0:_.id)!==(n==null?void 0:n.id)):J.value==="任务关联"&&(Y.value=(k=Y.value)==null?void 0:k.filter(_=>(_==null?void 0:_.id)!==(n==null?void 0:n.id))),ae.setItemExtendData({任务配置:{pageKey:ee.value,compId:(c=G.value)==null?void 0:c.id,results:z.value},任务关联:{pageKey:ee.value,compId:(w=G.value)==null?void 0:w.id,results:Y.value}});const d=n?(f=Object.keys(n))==null?void 0:f[1]:"";J.value==="任务配置"?U.title=`当前配置:${(V=G.value)==null?void 0:V.name}>任务配置>【${(n==null?void 0:n[d])||l}】`:J.value==="任务关联"&&(U.title=`当前配置:${(I=G.value)==null?void 0:I.name}>任务关联>【${(n==null?void 0:n[d])||l}】`),U.type=typeof((E=Z.value)==null?void 0:E.id)=="string"||!((S=Z.value)!=null&&S.id)?"创建":"编辑",U.show=l==="创建"||l==="访问"},je=l=>{var n;typeof l=="number"&&(G.value=(n=M.value)==null?void 0:n[l],Je()),le.value="data"},Pe=l=>{},We=l=>{var n,d;switch(J.value){case"任务配置":U.type==="创建"?z.value.push(l==null?void 0:l.data):z.value=(n=z.value)==null?void 0:n.map(r=>{var k;return(r==null?void 0:r.id)===((k=l==null?void 0:l.data)==null?void 0:k.id)?{...r,...l==null?void 0:l.data}:r});break;case"任务关联":U.type==="创建"?Y.value.push(l==null?void 0:l.data):Y.value=(d=Y.value)==null?void 0:d.map(r=>{var k;return(r==null?void 0:r.id)===((k=l==null?void 0:l.data)==null?void 0:k.id)?{...r,...l==null?void 0:l.data}:r});break}console.log("handleTableData:",z.value,l,U.type),ae.setItemExtendData({任务配置:{pageKey:ee.value,compId:l==null?void 0:l.compId,results:z.value},任务关联:{pageKey:ee.value,compId:l==null?void 0:l.compId,results:Y.value}}),U.show=!1},Ye=l=>{var n,d;if((l==null?void 0:l.buttonName)==="取消")U.show=!1;else if((l==null?void 0:l.buttonName)==="保存"){const r={compId:(n=G.value)==null?void 0:n.id,data:{...l==null?void 0:l.content,id:(d=Z.value)==null?void 0:d.id}};We(r)}},Te=(l,n)=>{var c,w;const{target:d,styleConfigs:r}=l;if(!r)return;const k=r==null?void 0:r.reduce((f,V)=>(f[V.prop]=V.value,f),{});n?M.value=(w=M.value)==null?void 0:w.map(f=>(f==null?void 0:f.id)===(n==null?void 0:n.id)?{...f,...k}:f):M.value=(c=M.value)==null?void 0:c.map(f=>({...f,...k})),ae.setItemData(M.value)},Ee=l=>{},Se=(l,n)=>{var d;return(d=l==null?void 0:l.filter(r=>{var k,c,w,f,V;return((c=(k=r==null?void 0:r.key)==null?void 0:k.relatedInfo)==null?void 0:c.target)===n&&((f=(w=r==null?void 0:r.key)==null?void 0:w.relatedInfo)==null?void 0:f.compId)===((V=G.value)==null?void 0:V.id)}))==null?void 0:d.map(r=>{var k;return{...(k=r==null?void 0:r.value)==null?void 0:k.tableData,id:r==null?void 0:r.id}})},Je=()=>{var n,d;const l=(d=(n=Ue.value)==null?void 0:n[ee.value])==null?void 0:d.filter(r=>{var k;return((k=r==null?void 0:r.key)==null?void 0:k.type)==="extend"});(l==null?void 0:l.length)!==0&&(z.value=Se(l,"任务配置"),Y.value=Se(l,"任务关联"))},Xe={class:"fill-content"},Qe={class:"overall-config-wrapper"},Ze={class:"operate-content"},et=["onClick"],tt={class:"collapse-title-item",title:"编辑"},lt={key:1},at=["onClick"],ot={class:"icon-content"},nt={key:0,class:"edit-content"},st=["onClick"],rt={title:"设置"},ct=["onClick"],ut={class:"parent-main"},it={style:{display:"flex","justify-content":"space-between"}},dt={title:"样式"},pt={title:"交互"},vt={title:"扩展"},ft={style:{width:"100%","max-height":"500px",overflow:"auto"}},ht={__name:"index",setup(l){const n=D.useModelComp(A.pinia),{itemData:d,originalData:r}=A.storeToRefs(n),k=D.useMenuState(),{activeMenuPath:c}=A.storeToRefs(k);e.ref([]);const w=e.ref([]),f=e.ref([]),V=e.ref([]),I=e.computed(()=>{var i,o,m,v;return((i=M.value)==null?void 0:i.length)>0&&(o=M.value)!=null&&o.every(h=>{var L,F;return(h==null?void 0:h.comp)===((F=(L=M.value)==null?void 0:L[0])==null?void 0:F.comp)})?(v=(m=M.value)==null?void 0:m[0])==null?void 0:v.comp:null}),E=i=>{var m;let o=(m=D.cloneDeep(f.value))==null?void 0:m.map((v,h)=>(i===h&&(v.content=!0),v));f.value=o},S=i=>{var m;let o=(m=D.cloneDeep(f.value))==null?void 0:m.map((v,h)=>(i===h&&(v.content=!1),v));f.value=o,M.value=D.cloneDeep(d.value)},_=(i,o)=>{var L;let m=(L=D.cloneDeep(f.value))==null?void 0:L.map((F,u)=>(i===u&&(F.content=!1),F));f.value=m;const v=D.cloneDeep(d.value),h=v==null?void 0:v.filter((F,u)=>(u===i&&(F.name=o),F));n.setOriginalData(h),n.setItemData(h)},P=i=>{const o=D.cloneDeep(d.value),m=o==null?void 0:o.map((v,h)=>((v==null?void 0:v.name)===(i==null?void 0:i.name)?v.isShow=!(i!=null&&i.isShow):v.isShow=v.isShow,v));d.value=m};e.watch(()=>d.value,()=>{var i,o,m,v;!d.value||((i=d.value)==null?void 0:i.length)===0?M.value=[]:M.value=(o=d.value)==null?void 0:o.filter(h=>(h==null?void 0:h.comp)!=="methodButton"),w.value=M.value,f.value=(m=D.cloneDeep(w.value))==null?void 0:m.map((h,L)=>({id:L,content:!1})),V.value=(v=D.cloneDeep(w.value))==null?void 0:v.map((h,L)=>({id:L,isShow:h==null?void 0:h.isShow}))},{deep:!0,immediate:!0});const N=i=>j.getComponent(i),W=(i,o,m,v)=>{var L,F;if(!i)return;let h=D.cloneDeep(d.value);h=(L=h==null?void 0:h.map((u,y)=>{if(v&&y===m){const{compData:p,itemChildData:q}=i;return u.compData=p,u.itemChildData=q,u}return y===m&&(u.compData=i),u}))==null?void 0:L.filter(u=>(u==null?void 0:u.comp)!=="methodButton"),f.value=(F=D.cloneDeep(h))==null?void 0:F.map((u,y)=>({id:y,content:!1})),n.setOriginalData(h),n.setItemData(h)},O=e.ref(null),$=(i,o)=>{if(!o){n.setActiveItemIndex(i);return}n.setActiveItemIndex(-1)},R=i=>{D.ElMessageBox.confirm("是否确认要删除","",{confirmButtonText:"确认",cancelButtonText:"取消",type:"warning"}).then(()=>{const o=D.cloneDeep(d.value),m=o==null?void 0:o.filter((v,h)=>h!==i);n.setOriginalData(m),n.setItemData(m),n.setActiveItemIndex(-1),A.ElMessage({type:"success",message:"删除成功"})}).catch(()=>{})};return(i,o)=>{var F;const m=e.resolveComponent("svg-icon"),v=e.resolveComponent("el-tab-pane"),h=e.resolveComponent("el-card"),L=e.resolveComponent("el-tabs");return e.openBlock(),e.createElementBlock("div",Xe,[o[10]||(o[10]=e.createElementVNode("div",{class:"fill-operate"},"操作栏",-1)),e.createElementVNode("div",Qe,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(N(I.value+"style")),{target:"overall",optionItems:e.unref(Ne),compType:I.value,comp:(F=e.unref(M))==null?void 0:F[0],onChange:e.unref(Te)},null,40,["optionItems","compType","comp","onChange"]))]),e.createElementVNode("div",Ze,[e.createVNode(Re.default,{class:"collapse-content",collapseContents:e.unref(M),accordion:!0,onChange:e.unref(je),ref_key:"ssCollapseRef",ref:O},{title:e.withCtx(({item:u,index:y,isActive:p})=>{var q,T,H,a,s,g,b,C,K,X;return[e.createElementVNode("div",{class:"collapse-title-content",onClick:x=>$(y,p)},[e.createElementVNode("div",tt,[(T=(q=f.value)==null?void 0:q.find(x=>x.id===y))!=null&&T.content?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:"collapse-title",style:e.normalizeStyle({marginRight:u.name&&u.name!==""?"8px":"0px"})},e.toDisplayString(u.name),5)),(a=(H=f.value)==null?void 0:H.find(x=>x.id===y))!=null&&a.content?(e.openBlock(),e.createElementBlock("div",lt,[e.createVNode(Ve._sfc_main$2,{modelValue:u.name,"onUpdate:modelValue":x=>u.name=x,onClick:o[0]||(o[0]=e.withModifiers(()=>{},["stop"]))},null,8,["modelValue","onUpdate:modelValue"])])):e.createCommentVNode("",!0),(g=(s=f.value)==null?void 0:s.find(x=>x.id===y))!=null&&g.content?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:2,onClick:e.withModifiers(x=>E(y),["stop"]),class:"icon-content"},[e.createVNode(m,{name:"Edit",style:{width:"13px",height:"13px"}})],8,at))]),e.createElementVNode("div",ot,[(C=(b=f.value)==null?void 0:b.find(x=>x.id===y))!=null&&C.content?(e.openBlock(),e.createElementBlock("div",nt,[e.createVNode(m,{name:"Cancel",style:{width:"16px",height:"16px"},class:"icon-content",onClick:e.withModifiers(x=>S(y),["stop"])},null,8,["onClick"]),e.createVNode(m,{name:"Save",onClick:e.withModifiers(x=>_(y,u.name),["stop"]),style:{width:"16px",height:"16px",fill:"var(--ssComponent-primary-color)"},class:"icon-content"},null,8,["onClick"])])):e.createCommentVNode("",!0),(X=(K=f.value)==null?void 0:K.find(x=>x.id===y))!=null&&X.content?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:1,onClick:e.withModifiers(x=>R(y),["stop"]),class:"icon-content"},[e.createVNode(m,{name:"Delete",style:{width:"16px",height:"16px"}})],8,st))])],8,et)]}),content:e.withCtx(({item:u,index:y})=>[e.createVNode(L,{modelValue:e.unref(le),"onUpdate:modelValue":o[2]||(o[2]=p=>e.isRef(le)?le.value=p:null),class:"config-tabs",onTabClick:$},{default:e.withCtx(()=>[e.createVNode(v,{label:"设置",name:"data"},{label:e.withCtx(()=>[e.createElementVNode("span",rt,[e.createVNode(m,{name:"LowCodeSetting",style:{width:"15px",height:"15px","margin-right":"5px"}}),o[3]||(o[3]=e.createTextVNode("设置"))])]),default:e.withCtx(()=>{var p,q;return[e.createElementVNode("div",{class:"comp-child",onClick:T=>$(y)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(N(u.comp+"Operate")),{itemContents:u==null?void 0:u.compData,originalItemContents:(q=(p=w.value)==null?void 0:p.find((T,H)=>H===y))==null?void 0:q.compData,itemChildData:u==null?void 0:u.itemChildData,onChange:(T,H)=>W(T,u,y,H)},null,40,["itemContents","originalItemContents","itemChildData","onChange"]))],8,ct),e.createElementVNode("div",ut,[o[5]||(o[5]=e.createElementVNode("div",{class:"operate-title"},[e.createElementVNode("div",null,e.toDisplayString("显隐控制"))],-1)),e.createElementVNode("div",it,[o[4]||(o[4]=e.createElementVNode("div",{class:"operate-center-content"},e.toDisplayString("是否显示"),-1)),e.createVNode(Ve._sfc_main$1,{value:V.value.find(T=>T.id===y).isShow,"onUpdate:value":T=>V.value.find(H=>H.id===y).isShow=T,onClick:T=>P(u)},null,8,["value","onUpdate:value","onClick"])])])]}),_:2},1024),e.createVNode(v,{label:"样式",name:"style"},{label:e.withCtx(()=>[e.createElementVNode("span",dt,[e.createVNode(m,{name:"LowCodeStyle",style:{width:"15px",height:"15px","margin-right":"5px"}}),o[6]||(o[6]=e.createTextVNode("样式"))])]),default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(N((u==null?void 0:u.comp)+"style")),{target:"alone",compType:u==null?void 0:u.comp,comp:u,optionItems:e.unref(Ne),onChange:p=>e.unref(Te)(p,u)},null,40,["compType","comp","optionItems","onChange"]))]),_:2},1024),e.createVNode(v,{label:"交互",name:"event"},{label:e.withCtx(()=>[e.createElementVNode("span",pt,[e.createVNode(m,{name:"LowCodeEvent",style:{width:"15px",height:"15px","margin-right":"5px"}}),o[7]||(o[7]=e.createTextVNode("交互"))])]),default:e.withCtx(()=>[o[8]||(o[8]=e.createTextVNode(" 交互 "))]),_:1,__:[8]}),e.createVNode(v,{label:"扩展",name:"extend"},{label:e.withCtx(()=>[e.createElementVNode("span",vt,[e.createVNode(m,{name:"LowCodeExtend",style:{width:"15px",height:"15px","margin-right":"5px"}}),o[9]||(o[9]=e.createTextVNode("扩展"))])]),default:e.withCtx(()=>[e.createVNode(L,{"tab-position":"left",modelValue:e.unref(J),"onUpdate:modelValue":o[1]||(o[1]=p=>e.isRef(J)?J.value=p:null),class:"extend-tabs",onTabChange:e.unref(Pe)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(ze),(p,q)=>(e.openBlock(),e.createBlock(v,{key:p==null?void 0:p.name,label:p==null?void 0:p.label,name:p==null?void 0:p.name},{default:e.withCtx(()=>[e.createVNode(h,null,{default:e.withCtx(()=>{var T,H,a;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(N((T=p==null?void 0:p.component)==null?void 0:T.comp)),{compItem:p==null?void 0:p.component,itemData:(H=p==null?void 0:p.component)==null?void 0:H.compData,childItemData:(a=p==null?void 0:p.component)==null?void 0:a.itemChildData,key:q,level:1,onChange:e.unref(Ee),onOnButtonClick:e.unref(Ke)},null,40,["compItem","itemData","childItemData","onChange","onOnButtonClick"]))]}),_:2},1024)]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue","onTabChange"])]),_:1})]),_:2},1032,["modelValue"])]),_:1},8,["collapseContents","onChange"])]),e.createVNode(Le.ssDialog,{class:"task-dialog-wrapper",visible:e.unref(U).show,title:e.unref(U).title,dialogWidth:e.unref(U).width,onBeforeDestroy:e.unref(Ge)},{default:e.withCtx(()=>{var u,y;return[e.createElementVNode("div",ft,[e.unref(G)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(N(((u=e.unref(G))==null?void 0:u.comp)+"extend")),{key:0,target:"alone",comp:e.unref(G),extendItem:e.unref(Z),compType:(y=e.unref(G))==null?void 0:y.comp,activeTabName:e.unref(J),relatedData:e.unref(z),onChange:e.unref(Ee),onOnButtonClick:e.unref(Ye)},null,40,["comp","extendItem","compType","activeTabName","relatedData","onChange","onOnButtonClick"])):e.createCommentVNode("",!0)])]}),_:1},8,["visible","title","dialogWidth","onBeforeDestroy"])])}}},mt=ne._export_sfc(ht,[["__scopeId","data-v-0ecba574"]]),gt={style:{display:"flex"}},Ct={style:{display:"flex"}},kt={key:2},yt={key:4,style:{"margin-top":"30px"}},_t={__name:"index",setup(l){const n=D.useModelComp(A.pinia),{itemData:d,activeItemIndex:r,pageMapState:k}=A.storeToRefs(n),c=e.ref([]),w=e.ref(0),f=e.ref(""),V=D.useMenuState(A.pinia),{activeMenuPath:I}=A.storeToRefs(V),E=e.ref(null),S=e.ref(null),_=e.ref(24),P=e.ref(2),N=e.ref([]),W=e.ref([]),O=e.computed(()=>{var a,s,g;return{default:!i.value&&!R.value&&$.value==="vertical"&&((a=c.value)==null?void 0:a.length)>0,grid:i.value&&!R.value&&$.value==="vertical",tab:$.value==="horizontal"&&((s=c.value)==null?void 0:s.length)>0,step:R.value&&$.value==="vertical"&&((g=c.value)==null?void 0:g.length)>0}}),$=e.computed(()=>{var a,s,g,b;return((a=c.value)==null?void 0:a.length)>0&&((s=c.value)!=null&&s.every(C=>C==null?void 0:C.layout))?(b=(g=c.value)==null?void 0:g[0])==null?void 0:b.layout:"vertical"}),R=e.computed(()=>{var a,s;return(s=(a=c.value)==null?void 0:a[0])==null?void 0:s.isStepLayout}),i=e.computed(()=>{var a,s;return(s=(a=c.value)==null?void 0:a[0])==null?void 0:s.isGridLayout}),o=e.ref(null),m=e.computed(()=>{var a,s,g;return((a=c.value)==null?void 0:a.length)>0&&$.value==="horizontal"?(g=(s=c.value)==null?void 0:s[0])==null?void 0:g.name:""}),v=(a,s)=>{w.value=s,o.value=a},h=a=>{var C;if(!a)return;let s=null;const g=D.cloneDeep(c.value);if(r.value>=0&&(s=g==null?void 0:g[r.value]),s&&s.comp==="Layout"){const{compData:K=[]}=s;((C=K==null?void 0:K.find(x=>{const{key:te}=x;return te==="children"}))==null?void 0:C.contents).push({comp:a.comp,name:a.name,compData:[]}),n.setItemData(g);return}const b=D.cloneDeep(c.value);b.push({comp:a.comp,name:a.name,compData:[]}),n.setItemData(b),T(b)},L=a=>{a.preventDefault(),a.dataTransfer.dropEffect="copy"},F=async a=>{try{const s=a.dataTransfer.getData("application/json");if(!s)return;const g=JSON.parse(s),b=await u(a),C=y(g,b);await e.nextTick(),p(C),h(JSON.parse(s||"")),console.log("drop"),q()}catch(s){console.error("Drop error:",s),q()}},u=async a=>E.value?new Promise(s=>{requestAnimationFrame(()=>{const g=E.value.getBoundingClientRect(),b=a.clientX-g.left,C=a.clientY,K=Math.floor(b/(g.width/_.value)),X=Math.floor(C/(g.width/_.value));s({x:Math.max(0,K),y:Math.max(0,X),w:_.value,h:P.value})})}):{x:0,y:0},y=(a,s)=>{var b,C;const g=`item_${Date.now()}_${(C=(b=Math.random())==null?void 0:b.toString(36))==null?void 0:C.substring(2,9)}`;return{i:g,id:g,x:s.x,y:s.y,w:s.w,h:s.h,component:a,minW:2,minH:2}},p=a=>{T([...N.value,a],!0)},q=()=>{document.querySelectorAll(".dragging").forEach(a=>{a.classList.remove("dragging")})},T=(a,s)=>{N.value=s?a:j.generateLayouts(a),n.setItemGridData({pageKey:I.value,results:N.value}),V.setContentLoading(!1)};e.watch(()=>O.value.step,a=>{var s;a&&v((s=c.value)==null?void 0:s[0],1)},{immediate:!0}),e.watch(()=>O.value.grid,a=>{var s,g;!a&&((s=N.value)==null?void 0:s.length)>0&&n.setItemGridData({pageKey:I.value,results:(g=N.value)==null?void 0:g.map(b=>b==null?void 0:b.id),isDelete:!0})},{immediate:!0}),e.watch(()=>d.value,a=>{var s,g,b;V.setContentLoading(!0),c.value=!a||(a==null?void 0:a.length)===0?[]:(s=D.cloneDeep(a))==null?void 0:s.filter(C=>!(C!=null&&C.affix)||(C==null?void 0:C.affix)==="default"),W.value=!a||(a==null?void 0:a.length)===0?[]:(g=D.cloneDeep(a))==null?void 0:g.filter(C=>(C==null?void 0:C.affix)&&(C==null?void 0:C.affix)!=="default"),(b=O.value)!=null&&b.grid&&T(c.value)},{deep:!0,immediate:!0});const H=a=>j.getComponent(a);return(a,s)=>{var X,x,te,se,re,ce,ue,ie,de,pe,ve,fe;const g=e.resolveComponent("el-tab-pane"),b=e.resolveComponent("el-tabs"),C=e.resolveComponent("el-step"),K=e.resolveComponent("el-steps");return e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:E,class:"low-code-wrapper",onDragover:L,onDrop:F},[(X=O.value)!=null&&X.default?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(c.value,(t,B)=>(e.openBlock(),e.createElementBlock("div",{class:"item-content",key:B},[e.createElementVNode("div",gt,e.toDisplayString(t.name),1),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(H(t.comp)),{itemData:t==null?void 0:t.compData,childItemData:t==null?void 0:t.itemChildData,key:B,config:{showIndex:t==null?void 0:t.showIndex,allowMove:t==null?void 0:t.allowMove,viewport:t==null?void 0:t.viewport},pageLayout:$.value,parentTableId:t==null?void 0:t.tableId,children:t==null?void 0:t.children,level:1},null,8,["itemData","childItemData","config","pageLayout","parentTableId","children"]))]))),128)):e.createCommentVNode("",!0),(x=O.value)!=null&&x.grid?(e.openBlock(),e.createBlock(e.unref(j.De),{key:1,ref_key:"gridLayoutRef",ref:S,layout:N.value,"onUpdate:layout":s[0]||(s[0]=t=>N.value=t),"prevent-collision":!1,"is-draggable":!0,"is-resizable":!0,responsive:!1,"col-num":24,margin:[8,16]},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,(t,B)=>{var oe,he;return e.openBlock(),e.createBlock(e.unref(j.st),{key:t.i,x:t.x,y:t.y,"min-h":t.minH,"max-h":t.maxH,"min-w":t.minW,w:t.w,h:e.unref(j.verifyButton)((oe=c.value[B])==null?void 0:oe.comp)?0:t.h,i:t.i,class:e.normalizeClass(e.unref(j.verifyButton)((he=c.value[B])==null?void 0:he.comp)?"grid-method-button":"")},{default:e.withCtx(()=>{var me,ge,Ce,ke,ye,_e,be,De,we,xe,Be,Ie;return[e.createElementVNode("div",{class:e.normalizeClass((ge=W.value)!=null&&ge.includes((me=t==null?void 0:t.component)==null?void 0:me.id)?"comp-wrapper affix-content":"comp-wrapper")},[e.createElementVNode("div",Ct,e.toDisplayString((Ce=c.value[B])==null?void 0:Ce.name),1),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(H((ke=c.value[B])==null?void 0:ke.comp)),{pageLayout:$.value,itemData:(ye=c.value[B])==null?void 0:ye.compData,childItemData:(_e=c.value[B])==null?void 0:_e.itemChildData,index:((be=c.value[B])==null?void 0:be.id)??B,parentTableId:(De=c.value[B])==null?void 0:De.tableId,children:(we=c.value[B])==null?void 0:we.children,level:1,config:{showIndex:(xe=c.value[B])==null?void 0:xe.showIndex,allowMove:(Be=c.value[B])==null?void 0:Be.allowMove,viewport:(Ie=c.value[B])==null?void 0:Ie.viewport}},null,8,["pageLayout","itemData","childItemData","index","parentTableId","children","config"]))],2)]}),_:2},1032,["x","y","min-h","max-h","min-w","w","h","i","class"])}),128))]),_:1},8,["layout"])):e.createCommentVNode("",!0),(te=O.value)!=null&&te.tab?(e.openBlock(),e.createElementBlock("div",kt,[e.createVNode(b,{modelValue:m.value,"onUpdate:modelValue":s[1]||(s[1]=t=>m.value=t),type:"card",class:"display-tabs"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(t,B)=>(e.openBlock(),e.createBlock(g,{key:t.i,label:t==null?void 0:t.name,name:t==null?void 0:t.name},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(H(t==null?void 0:t.comp)),{pageLayout:$.value,itemData:t==null?void 0:t.compData,childItemData:t==null?void 0:t.itemChildData,key:B,config:{showIndex:t==null?void 0:t.showIndex,allowMove:t==null?void 0:t.allowMove,viewport:t==null?void 0:t.viewport}},null,8,["pageLayout","itemData","childItemData","config"]))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0),(se=O.value)!=null&&se.step?(e.openBlock(),e.createBlock(K,{key:3,direction:"horizontal",active:w.value,"align-center":!0,class:"display-steps"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(t,B)=>(e.openBlock(),e.createBlock(C,{key:B,class:"step-item",status:f.value,onClick:oe=>v(t,B+1)},{title:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t==null?void 0:t.name),1)]),_:2},1032,["status","onClick"]))),128))]),_:1},8,["active"])):e.createCommentVNode("",!0),(re=O.value)!=null&&re.step?(e.openBlock(),e.createElementBlock("div",yt,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(H((ce=o.value)==null?void 0:ce.comp)),{pageLayout:$.value,itemData:(ue=o.value)==null?void 0:ue.compData,childItemData:(ie=o.value)==null?void 0:ie.itemChildData,key:(de=o.value)==null?void 0:de.id,config:{showIndex:(pe=o.value)==null?void 0:pe.showIndex,allowMove:(ve=o.value)==null?void 0:ve.allowMove,viewport:(fe=o.value)==null?void 0:fe.viewport}},null,8,["pageLayout","itemData","childItemData","config"]))])):e.createCommentVNode("",!0)],544)}}},bt=ne._export_sfc(_t,[["__scopeId","data-v-fda67a9b"]]),Q=e.ref(0),Dt=l=>l.reduce((d,r)=>{var c,w;const k=Object.values(d);return(((c=Object.keys(d))==null?void 0:c.length)===0||k[k.length-1].length>=(r==null?void 0:r.width))&&(d[Q.value]=[],Q.value++),d[Q.value-1].push(r),((w=Object.keys(d))==null?void 0:w.length)===(r==null?void 0:r.width)&&(d[Q.value]=[],Q.value++),d},{});exports.arrayToNumberArray=Dt;exports.modelFill=mt;exports.modelSelect=Ae;exports.modelShow=bt;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),S=require("./index-Bc85VROV.cjs"),l=require("./index-pSTYzLRc.cjs"),I=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),B=n.defineComponent({__name:"index",props:{windowConfig:{type:Object,default:()=>{}},systemInfo:{type:Object,default:()=>{}},systemKey:{type:String,default:""},pathContent:{type:String,default:""},mode:{type:String,default:"view"},content:{type:String,default:""},jsonContents:{type:Array,default:()=>[]},showButton:{type:Boolean,default:!1},nodeDev:{type:String,default:""},pageKey:{type:String,default:""}},emits:["buildContent","openThreeBuild","threeData","setLoginInfo"],setup(o,{emit:f}){const d=S.useLoginState(l.pinia),{loginUserInfo:m}=l.storeToRefs(d),e=o,s=f,y=n.computed(()=>{var t,i;return(e==null?void 0:e.showButton)||((i=(t=m.value)==null?void 0:t.layer)==null?void 0:i.toUpperCase())==="SUPERADMIN"});n.watch(()=>e==null?void 0:e.systemKey,t=>{d.setSystemKey(t),t!==""&&sessionStorage.setItem("systemKey",t)},{immediate:!0}),n.watch(()=>e==null?void 0:e.systemInfo,t=>{d.setSystemInfo(t)},{immediate:!0});const r=()=>{s("buildContent")},w=()=>{s("setLoginInfo")},g=t=>{s("openThreeBuild",t)},h=t=>{s("threeData",t)},a=()=>{var c;const t=e!=null&&e.windowConfig?(c=e==null?void 0:e.windowConfig)==null?void 0:c.width:window.innerWidth,i=1920,u=16,C=t/i,v=u*C;document.documentElement.style.fontSize=`${v}px`};return n.onMounted(()=>{a(),window.addEventListener("resize",a)}),n.onUnmounted(()=>{window.removeEventListener("resize",a)}),(t,i)=>{const u=n.resolveComponent("router-view");return n.openBlock(),n.createElementBlock("div",null,[n.createVNode(u,{mode:e==null?void 0:e.mode,content:e==null?void 0:e.content,jsonContents:e==null?void 0:e.jsonContents,pathContent:e==null?void 0:e.pathContent,showButton:y.value,nodeDev:e==null?void 0:e.nodeDev,windowConfig:o.windowConfig,systemInfo:o.systemInfo,"old-systemKey":o.systemKey,onBuildContent:r,onOpenThreeBuild:g,pageKey:o.pageKey,onThreeData:h,onSetLoginInfo:w},null,8,["mode","content","jsonContents","pathContent","showButton","nodeDev","windowConfig","systemInfo","old-systemKey","pageKey"])])}}}),D=I._export_sfc(B,[["__scopeId","data-v-c30cedf1"]]);exports.default=D;