From c900f40bb8e0afd4f01a43cda64e778f13957c4f Mon Sep 17 00:00:00 2001 From: sige Date: Tue, 11 Jun 2024 14:44:13 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=B4=E6=97=B6=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- src/main/java/com/iflytop/uf/UfActuatorCmdExecutor.java | 3 +++ src/main/java/com/iflytop/uf/actuator/UfActMiniServo.java | 12 ++++++++++++ .../java/com/iflytop/uf/actuator/UfActStepperMotor.java | 14 ++++++++++++++ .../com/iflytop/uf/connection/UfZcancmderWebsocket.java | 5 ++++- src/main/resources/static/uf/index.html | 2 +- src/main/resources/static/uf/js/app.201353f0.js | 2 ++ src/main/resources/static/uf/js/app.201353f0.js.map | 1 + src/main/resources/static/uf/js/app.842430c2.js | 2 -- src/main/resources/static/uf/js/app.842430c2.js.map | 1 - 10 files changed, 38 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/iflytop/uf/actuator/UfActMiniServo.java create mode 100644 src/main/resources/static/uf/js/app.201353f0.js create mode 100644 src/main/resources/static/uf/js/app.201353f0.js.map delete mode 100644 src/main/resources/static/uf/js/app.842430c2.js delete mode 100644 src/main/resources/static/uf/js/app.842430c2.js.map diff --git a/pom.xml b/pom.xml index 0beeec7..4d65ffe 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ com.iflytop uf - 0.0.30 + 0.0.35 uf uf diff --git a/src/main/java/com/iflytop/uf/UfActuatorCmdExecutor.java b/src/main/java/com/iflytop/uf/UfActuatorCmdExecutor.java index 1032757..268f090 100644 --- a/src/main/java/com/iflytop/uf/UfActuatorCmdExecutor.java +++ b/src/main/java/com/iflytop/uf/UfActuatorCmdExecutor.java @@ -113,9 +113,12 @@ public class UfActuatorCmdExecutor { if ( null == command ) { throw new RuntimeException("无效的命令KEY :" + cmdKey); } + + command.parameters = command.fixedParameters; if ( null != cmdParams ) { command.parameters = cmdParams; } + return execute(command); } diff --git a/src/main/java/com/iflytop/uf/actuator/UfActMiniServo.java b/src/main/java/com/iflytop/uf/actuator/UfActMiniServo.java new file mode 100644 index 0000000..b9beb2e --- /dev/null +++ b/src/main/java/com/iflytop/uf/actuator/UfActMiniServo.java @@ -0,0 +1,12 @@ +package com.iflytop.uf.actuator; +import com.iflytop.uf.UfActuatorBase; +import com.iflytop.uf.UfActuatorCommand; +import com.iflytop.uf.UfActuatorHandler; +import com.iflytop.uf.model.UfMdbActuatorCmd; +@UfActuatorHandler(name = "mini-servo-motor") +public class UfActMiniServo extends UfActuatorBase { + @UfActuatorCommand(name = "mini_servo_move_to") + public String enable(UfMdbActuatorCmd cmd) { + return this.executeAndWaitForFinish(cmd); + } +} diff --git a/src/main/java/com/iflytop/uf/actuator/UfActStepperMotor.java b/src/main/java/com/iflytop/uf/actuator/UfActStepperMotor.java index dd9d91c..19c2301 100644 --- a/src/main/java/com/iflytop/uf/actuator/UfActStepperMotor.java +++ b/src/main/java/com/iflytop/uf/actuator/UfActStepperMotor.java @@ -3,21 +3,35 @@ import com.iflytop.uf.*; import com.iflytop.uf.model.UfMdbActuatorCmd; @UfActuatorHandler(name = "stepper-motor") public class UfActStepperMotor extends UfActuatorBase { + @UfActuatorCommand(name="step_motor_easy_move_to") + public String stepMotorEasyMoveTo(UfMdbActuatorCmd cmd) { + return this.executeAndWaitForFinish(cmd); + } + + @UfActuatorCommand(name="step_motor_easy_move_to_zero") + public String stepMotorEasyMoveToZero(UfMdbActuatorCmd cmd) { + return this.executeAndWaitForFinish(cmd); + } + + @Deprecated @UfActuatorCommand(name = "motor_easy_move_to_zero") public String easyMoveToZero(UfMdbActuatorCmd cmd) { return this.executeAndWaitForFinish(cmd); } + @Deprecated @UfActuatorCommand(name = "motor_easy_move_to") public String easyMoveTo(UfMdbActuatorCmd cmd) { return this.executeAndWaitForFinish(cmd); } + @Deprecated @UfActuatorCommand(name = "motor_easy_move_by") public String easyMoveBy(UfMdbActuatorCmd cmd) { return this.executeAndWaitForFinish(cmd); } + @Deprecated @UfActuatorCommand(name = "motor_easy_move_to_io") public String easyMoveToIo(UfMdbActuatorCmd cmd) { return this.executeAndWaitForFinish(cmd); diff --git a/src/main/java/com/iflytop/uf/connection/UfZcancmderWebsocket.java b/src/main/java/com/iflytop/uf/connection/UfZcancmderWebsocket.java index 34dc3e0..a0f3582 100644 --- a/src/main/java/com/iflytop/uf/connection/UfZcancmderWebsocket.java +++ b/src/main/java/com/iflytop/uf/connection/UfZcancmderWebsocket.java @@ -165,7 +165,10 @@ public class UfZcancmderWebsocket extends UfConnectionBase { String cmd = this.buildCommand(actuatorCmd); UfMdbActuator actuator = UfMdbActuator.findOne(UfMdbActuator.class, actuatorCmd.actuatorId); - this.log("%s.%s(%s) => %s", actuator.name, actuatorCmd.cmdKey, actuatorCmd.parameters, cmd); + var logIgnoreList = List.of("module_get_status"); + if ( !logIgnoreList.contains(actuatorCmd.cmdKey) ) { + this.log("%s.%s(%s) => %s", actuator.name, actuatorCmd.cmdKey, actuatorCmd.parameters, cmd); + } this.reconnectIfClosed(); diff --git a/src/main/resources/static/uf/index.html b/src/main/resources/static/uf/index.html index a3106db..87e6e2c 100644 --- a/src/main/resources/static/uf/index.html +++ b/src/main/resources/static/uf/index.html @@ -1 +1 @@ -web
\ No newline at end of file +web
\ No newline at end of file diff --git a/src/main/resources/static/uf/js/app.201353f0.js b/src/main/resources/static/uf/js/app.201353f0.js new file mode 100644 index 0000000..8f9b9ac --- /dev/null +++ b/src/main/resources/static/uf/js/app.201353f0.js @@ -0,0 +1,2 @@ +(()=>{"use strict";var e={7481:(e,l,a)=>{var t=a(5130),n=a(3367),u=a(1387),o=a(6653),i=a(7900),c=a(6768);const s={__name:"App",setup(e){function l(){document.title="UF-Man"}return(0,c.sV)(l),(e,l)=>{const a=(0,c.g2)("router-view");return(0,c.uX)(),(0,c.Wv)(a)}}},d=s,r=d;a(4529);var v=a(144),m=(a(4979),a(1678),a(4232)),p=a(1114),k=a(8355),f=a(9804);class b{static getClient(){return null===b.client&&(b.client=new b),b.client}constructor(){}async call(e,l={},a=null){let t={},n=`http://${window.location.hostname}/api`;const u=await k.A.post(`${n}/${e}`,l,{headers:t});if(!u.data.success){if(null!==a)return f.A.error({title:"系统错误",content:u.data.message});throw new Error(u.data.message)}return null!==a&&a(u.data.data),u.data.data}async snippetExecute(e,l){return this.call("snippet/execute-by-key",{key:e,params:l})}}(0,p.A)(b,"client",null);const y={class:"h-full bg-gray-500 p-1 flex flex-col"},g={class:"h-0 grow"},C=["onClick"],F={class:"text-gray-400"},h={class:"mt-1"},_={__name:"ModuleManagement",emits:["active"],setup(e,{emit:l}){const a=l,n=(0,v.KR)(!1),u=(0,v.KR)(null),o=(0,v.KR)([]),i=(0,v.KR)(null);function s(){d()}async function d(){let e=b.getClient();o.value=[],o.value=await e.call("module/list")}function r(){n.value=!0,u.value={key:"",name:""}}async function p(){let e=b.getClient();await e.call("module/save",u.value),n.value=!1,u.value=null,d()}async function k(e){let l=b.getClient();await l.call("module/delete",{id:e.id}),d(),e.id===i.value&&(i.value=null,a("active",null))}function f(e){n.value=!0,u.value=structuredClone(e)}function _(e){i.value=e.id,a("active",e)}return(0,c.sV)(s),(e,l)=>{const a=(0,c.g2)("a-button"),s=(0,c.g2)("a-popconfirm"),d=(0,c.g2)("a-input"),v=(0,c.g2)("a-form-item"),b=(0,c.g2)("a-form"),w=(0,c.g2)("a-modal");return(0,c.uX)(),(0,c.CE)(c.FK,null,[(0,c.Lk)("div",y,[(0,c.Lk)("div",g,[((0,c.uX)(!0),(0,c.CE)(c.FK,null,(0,c.pI)(o.value,(e=>((0,c.uX)(),(0,c.CE)("div",{key:e.id,class:(0,m.C4)(["border bg-white p-2 mb-1 hover:bg-gray-200",{"border-blue-500":e.id===i.value}]),onClick:l=>_(e)},[(0,c.Lk)("div",null,[(0,c.eW)((0,m.v_)(e.name)+" ",1),(0,c.Lk)("small",F,"["+(0,m.v_)(e.key)+"]",1)]),(0,c.Lk)("div",h,[(0,c.bF)(s,{title:"是否删除该模组?",placement:"bottom",onConfirm:l=>k(e)},{default:(0,c.k6)((()=>[(0,c.bF)(a,{size:"small",onClick:l[0]||(l[0]=(0,t.D$)((()=>{}),["stop","prevent"]))},{default:(0,c.k6)((()=>[(0,c.eW)("删除")])),_:1})])),_:2},1032,["onConfirm"]),(0,c.bF)(a,{size:"small",class:"ml-1",onClick:(0,t.D$)((l=>f(e)),["stop","prevent"])},{default:(0,c.k6)((()=>[(0,c.eW)("编辑")])),_:2},1032,["onClick"])])],10,C)))),128)),(0,c.bF)(a,{class:"mt-3",type:"primary",block:"",onClick:r},{default:(0,c.k6)((()=>[(0,c.eW)("添加模组")])),_:1})])]),null!==u.value?((0,c.uX)(),(0,c.Wv)(w,{key:0,open:n.value,"onUpdate:open":l[3]||(l[3]=e=>n.value=e),title:"模组编辑",onOk:p},{default:(0,c.k6)((()=>[(0,c.bF)(b,{"label-align":"left","label-col":{span:4},"wrapper-col":{span:20}},{default:(0,c.k6)((()=>[(0,c.bF)(v,{label:"模组键名"},{default:(0,c.k6)((()=>[(0,c.bF)(d,{value:u.value.key,"onUpdate:value":l[1]||(l[1]=e=>u.value.key=e)},null,8,["value"])])),_:1}),(0,c.bF)(v,{label:"模组名称"},{default:(0,c.k6)((()=>[(0,c.bF)(d,{value:u.value.name,"onUpdate:value":l[2]||(l[2]=e=>u.value.name=e)},null,8,["value"])])),_:1})])),_:1})])),_:1},8,["open"])):(0,c.Q3)("",!0)],64)}}},w=_,x=w,W={class:"h-full bg-gray-100 flex flex-col"},K={class:"p-1 border-b"},I={class:"p-1 h-0 grow overflow-y-auto"},X=["onClick"],O={class:"text-gray-400"},U={class:"mt-1"},L={class:"p-1"},E={__name:"ActuatorManagement",props:["module"],emits:["active"],setup(e,{emit:l}){const a=l,n=e,u=(0,v.KR)(!1),o=(0,v.KR)(null),i=(0,v.KR)([]),s=(0,v.KR)(null);function d(){r()}async function r(){if(i.value=[],null===n.module)return;let e=b.getClient(),l=await e.call("actuator/list",{moduleId:n.module.id});l.sort(((e,l)=>e.name.localeCompare(l.name)));for(let a of l)a.properties=JSON.parse(a.properties);i.value=l}function p(){u.value=!0,o.value={key:"",name:"",aid:"",type:"other",moduleId:n.module.id,properties:{}}}async function k(){o.value.id;let e=b.getClient(),l=structuredClone(o.value);l.properties=JSON.stringify(l.properties);let a=await e.call("actuator/save",l);l.id=a.id,l.properties=JSON.parse(l.properties),u.value=!1,o.value=null,l.type,r()}async function f(e){let l=b.getClient();await l.call("actuator/delete",{id:e.id}),r()}function y(e){u.value=!0,o.value=structuredClone(e)}function g(e){s.value=e.id,a("active",e)}return(0,c.sV)(d),(0,c.wB)((()=>n.module),r),(e,l)=>{const a=(0,c.g2)("a-button"),d=(0,c.g2)("a-popconfirm"),r=(0,c.g2)("a-empty"),v=(0,c.g2)("a-input"),b=(0,c.g2)("a-form-item"),C=(0,c.g2)("a-select-option"),F=(0,c.g2)("a-select"),h=(0,c.g2)("a-switch"),_=(0,c.g2)("a-input-number"),w=(0,c.g2)("a-form"),x=(0,c.g2)("a-modal");return(0,c.uX)(),(0,c.CE)(c.FK,null,[(0,c.Lk)("div",W,[(0,c.Lk)("div",K,(0,m.v_)(n.module?.name),1),(0,c.Lk)("div",I,[((0,c.uX)(!0),(0,c.CE)(c.FK,null,(0,c.pI)(i.value,(e=>((0,c.uX)(),(0,c.CE)("div",{key:e.id,class:(0,m.C4)(["border bg-white p-2 mb-1 hover:bg-gray-200",{"border-blue-500":e.id===s.value}]),onClick:l=>g(e)},[(0,c.Lk)("div",null,[(0,c.Lk)("div",null,(0,m.v_)(e.name),1),(0,c.Lk)("div",null,[(0,c.Lk)("small",O,"["+(0,m.v_)(e.key)+"]",1)])]),(0,c.Lk)("div",U,[(0,c.bF)(d,{title:"是否删除该设备?",placement:"bottom",onConfirm:l=>f(e)},{default:(0,c.k6)((()=>[(0,c.bF)(a,{size:"small",onClick:l[0]||(l[0]=(0,t.D$)((()=>{}),["stop","prevent"]))},{default:(0,c.k6)((()=>[(0,c.eW)("删除")])),_:1})])),_:2},1032,["onConfirm"]),(0,c.bF)(a,{size:"small",class:"ml-1",onClick:(0,t.D$)((l=>y(e)),["stop","prevent"])},{default:(0,c.k6)((()=>[(0,c.eW)("编辑")])),_:2},1032,["onClick"])])],10,X)))),128)),0===i.value.length?((0,c.uX)(),(0,c.Wv)(r,{key:0,class:"py-5",description:!1})):(0,c.Q3)("",!0)]),(0,c.Lk)("div",L,[null!==n.module?((0,c.uX)(),(0,c.Wv)(a,{key:0,class:"mt-3",type:"primary",block:"",onClick:p},{default:(0,c.k6)((()=>[(0,c.eW)("添加执行设备")])),_:1})):(0,c.Q3)("",!0)])]),null!==o.value?((0,c.uX)(),(0,c.Wv)(x,{key:0,open:u.value,"onUpdate:open":l[7]||(l[7]=e=>u.value=e),title:"执行设备编辑",onOk:k},{default:(0,c.k6)((()=>[(0,c.bF)(w,{"label-align":"left","label-col":{span:4},"wrapper-col":{span:20}},{default:(0,c.k6)((()=>[(0,c.bF)(b,{label:"名称"},{default:(0,c.k6)((()=>[(0,c.bF)(v,{value:o.value.name,"onUpdate:value":l[1]||(l[1]=e=>o.value.name=e)},null,8,["value"])])),_:1}),(0,c.bF)(b,{label:"键名"},{default:(0,c.k6)((()=>[(0,c.bF)(v,{value:o.value.key,"onUpdate:value":l[2]||(l[2]=e=>o.value.key=e)},null,8,["value"])])),_:1}),(0,c.bF)(b,{label:"类型"},{default:(0,c.k6)((()=>[(0,c.bF)(F,{value:o.value.type,"onUpdate:value":l[3]||(l[3]=e=>o.value.type=e)},{default:(0,c.k6)((()=>[(0,c.bF)(C,{value:"stepper-motor"},{default:(0,c.k6)((()=>[(0,c.eW)("步进电机")])),_:1}),(0,c.bF)(C,{value:"mini-servo-motor"},{default:(0,c.k6)((()=>[(0,c.eW)("舵机")])),_:1}),(0,c.bF)(C,{value:"arm-hbot"},{default:(0,c.k6)((()=>[(0,c.eW)("Hbot机械臂")])),_:1}),(0,c.bF)(C,{value:"pipette"},{default:(0,c.k6)((()=>[(0,c.eW)("移液枪")])),_:1}),(0,c.bF)(C,{value:"other"},{default:(0,c.k6)((()=>[(0,c.eW)("其他")])),_:1})])),_:1},8,["value"])])),_:1}),"stepper-motor"===o.value.type?((0,c.uX)(),(0,c.CE)(c.FK,{key:0},[(0,c.bF)(b,{label:"模块ID"},{default:(0,c.k6)((()=>[(0,c.bF)(v,{value:o.value.properties.mid,"onUpdate:value":l[4]||(l[4]=e=>o.value.properties.mid=e)},null,8,["value"])])),_:1}),(0,c.bF)(b,{label:"编码器有效"},{default:(0,c.k6)((()=>[(0,c.bF)(h,{checked:o.value.properties.encoderAvailable,"onUpdate:checked":l[5]||(l[5]=e=>o.value.properties.encoderAvailable=e),checkedValue:1,unCheckedValue:0},null,8,["checked"])])),_:1}),(0,c.bF)(b,{label:"偏移量"},{default:(0,c.k6)((()=>[(0,c.bF)(_,{class:"!w-full",value:o.value.properties.offset,"onUpdate:value":l[6]||(l[6]=e=>o.value.properties.offset=e)},null,8,["value"])])),_:1})],64)):(0,c.Q3)("",!0)])),_:1})])),_:1},8,["open"])):(0,c.Q3)("",!0)],64)}}},S=E,A=S;var R=a(7694);const Q={__name:"ActuatorCommandManagement",props:["actuator"],setup(e){const l=e,a=[{key:"name",title:"名称",dataIndex:"name"},{key:"cmdKey",title:"指令",dataIndex:"cmdKey"},{key:"cmdId",title:"指令编码",dataIndex:"cmdId"},{key:"cmdFlags",title:"修饰参数",dataIndex:"cmdFlags"},{key:"fixedParameters",title:"固定参数",dataIndex:"fixedParameters"},{key:"parameters",title:"临时参数",dataIndex:"parameters"},{key:"result",title:"执行结果",dataIndex:"result"},{key:"action",title:"操作",align:"right",width:250}],t=(0,v.KR)([]),n=(0,v.KR)(null),u=(0,v.KR)(!1),o=(0,v.KR)([]);async function i(){let e=b.getClient();o.value=await e.call("actuator-cmd/connection-list"),console.log(o.value),await k()}function s(){u.value=!0,n.value={cmdId:"",cmdKey:"",name:"",parameters:"",fixedParameters:"",actuatorId:l.actuator.id,waitForFinish:0}}async function d(){let e=await navigator.clipboard.readText(),a=null;try{a=JSON.parse(e)}catch(t){return void R.Ay.error("无法解析指令")}delete a.id,a.actuatorId=l.actuator.id,u.value=!0,n.value=a}function r(e){u.value=!0,n.value=structuredClone(e)}async function p(){let e=b.getClient();await e.call("actuator-cmd/save",n.value),u.value=!1,n.value=null,await k()}async function k(){if(t.value=[],null===l.actuator)return;let e=b.getClient(),a=await e.call("actuator-cmd/list",{actuatorId:l.actuator.id});for(let l of a)l.result="";a.sort(((e,l)=>e.name.localeCompare(l.name))),t.value=a}async function f(e){let l=b.getClient();await l.call("actuator-cmd/delete",{id:e.id}),await k()}async function y(e){let l=b.getClient(),a=await l.call("actuator-cmd/execute",e);e.result=a.result}async function g(e){let l=JSON.stringify(e);await navigator.clipboard.writeText(l),R.Ay.success("指令已复制到剪贴板")}return(0,c.sV)(i),(0,c.wB)((()=>l.actuator),k),(e,i)=>{const v=(0,c.g2)("a-button"),k=(0,c.g2)("CopyOutlined"),b=(0,c.g2)("a-popconfirm"),C=(0,c.g2)("a-table"),F=(0,c.g2)("a-select-option"),h=(0,c.g2)("a-select"),_=(0,c.g2)("a-form-item"),w=(0,c.g2)("a-input"),x=(0,c.g2)("a-form"),W=(0,c.g2)("a-modal");return(0,c.uX)(),(0,c.CE)(c.FK,null,[(0,c.Lk)("div",null,[(0,c.bF)(C,{dataSource:t.value,columns:a,pagination:!1},{headerCell:(0,c.k6)((({column:e})=>["action"===e.key?((0,c.uX)(),(0,c.CE)(c.FK,{key:0},[null!==l.actuator?((0,c.uX)(),(0,c.Wv)(v,{key:0,class:"mr-1",size:"small",onClick:d},{default:(0,c.k6)((()=>[(0,c.eW)("粘贴")])),_:1})):(0,c.Q3)("",!0),null!==l.actuator?((0,c.uX)(),(0,c.Wv)(v,{key:1,size:"small",onClick:s},{default:(0,c.k6)((()=>[(0,c.eW)("新建")])),_:1})):(0,c.Q3)("",!0)],64)):(0,c.Q3)("",!0)])),bodyCell:(0,c.k6)((({column:e,record:l})=>["action"===e.key?((0,c.uX)(),(0,c.CE)(c.FK,{key:0},[(0,c.bF)(v,{size:"small",class:"mr-1",onClick:e=>g(l)},{default:(0,c.k6)((()=>[(0,c.bF)(k)])),_:2},1032,["onClick"]),(0,c.bF)(v,{size:"small",class:"mr-1",onClick:e=>r(l)},{default:(0,c.k6)((()=>[(0,c.eW)("编辑")])),_:2},1032,["onClick"]),(0,c.bF)(v,{size:"small",class:"mr-1",onClick:e=>y(l)},{default:(0,c.k6)((()=>[(0,c.eW)("执行")])),_:2},1032,["onClick"]),(0,c.bF)(b,{title:"是否删除该指令?",placement:"bottom",onConfirm:e=>f(l)},{default:(0,c.k6)((()=>[(0,c.bF)(v,{size:"small"},{default:(0,c.k6)((()=>[(0,c.eW)("删除")])),_:1})])),_:2},1032,["onConfirm"])],64)):(0,c.Q3)("",!0)])),_:1},8,["dataSource"])]),null!==n.value?((0,c.uX)(),(0,c.Wv)(W,{key:0,open:u.value,"onUpdate:open":i[7]||(i[7]=e=>u.value=e),title:"编辑指令",onOk:p},{default:(0,c.k6)((()=>[(0,c.bF)(x,{"label-align":"left","label-col":{span:4},"wrapper-col":{span:20}},{default:(0,c.k6)((()=>[(0,c.bF)(_,{label:"通信连接"},{default:(0,c.k6)((()=>[(0,c.bF)(h,{value:n.value.connectionKey,"onUpdate:value":i[0]||(i[0]=e=>n.value.connectionKey=e)},{default:(0,c.k6)((()=>[((0,c.uX)(!0),(0,c.CE)(c.FK,null,(0,c.pI)(o.value,(e=>((0,c.uX)(),(0,c.Wv)(F,{key:e.key,value:e.key},{default:(0,c.k6)((()=>[(0,c.eW)((0,m.v_)(e.name),1)])),_:2},1032,["value"])))),128))])),_:1},8,["value"])])),_:1}),(0,c.bF)(_,{label:"名称"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.name,"onUpdate:value":i[1]||(i[1]=e=>n.value.name=e)},null,8,["value"])])),_:1}),(0,c.bF)(_,{label:"指令"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.cmdKey,"onUpdate:value":i[2]||(i[2]=e=>n.value.cmdKey=e)},null,8,["value"])])),_:1}),(0,c.bF)(_,{label:"指令编码"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.cmdId,"onUpdate:value":i[3]||(i[3]=e=>n.value.cmdId=e)},null,8,["value"])])),_:1}),(0,c.bF)(_,{label:"修饰参数"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.cmdFlags,"onUpdate:value":i[4]||(i[4]=e=>n.value.cmdFlags=e)},null,8,["value"])])),_:1}),(0,c.bF)(_,{label:"固定参数"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.fixedParameters,"onUpdate:value":i[5]||(i[5]=e=>n.value.fixedParameters=e)},null,8,["value"])])),_:1}),(0,c.bF)(_,{label:"临时参数"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.parameters,"onUpdate:value":i[6]||(i[6]=e=>n.value.parameters=e)},null,8,["value"])])),_:1})])),_:1})])),_:1},8,["open"])):(0,c.Q3)("",!0)],64)}}},z=Q,P=z,$=(0,c.Lk)("div",{class:"!inline-block !text-white !text-2xl"},"UF-MAN",-1),D={class:"!inline-block !text-white !text-xl ml-12",style:{"line-height":"4rem !important"}},M=(0,c.Lk)("span",null,"指令管理",-1),N=(0,c.Lk)("span",{class:"ml-5 !text-gray-600"},"片段管理",-1),T={__name:"Page",setup(e){const l=(0,v.KR)(null),a=(0,v.KR)(null);function t(e){l.value=e}function n(e){a.value=e}return(e,u)=>{const o=(0,c.g2)("router-link"),i=(0,c.g2)("a-layout-header"),s=(0,c.g2)("a-layout-sider"),d=(0,c.g2)("a-layout-content"),r=(0,c.g2)("a-layout");return(0,c.uX)(),(0,c.Wv)(r,{class:"h-full"},{default:(0,c.k6)((()=>[(0,c.bF)(i,null,{default:(0,c.k6)((()=>[$,(0,c.Lk)("div",D,[M,(0,c.bF)(o,{to:"/snippet"},{default:(0,c.k6)((()=>[N])),_:1})])])),_:1}),(0,c.bF)(r,null,{default:(0,c.k6)((()=>[(0,c.bF)(s,null,{default:(0,c.k6)((()=>[(0,c.bF)(x,{onActive:t})])),_:1}),(0,c.bF)(s,null,{default:(0,c.k6)((()=>[(0,c.bF)(A,{module:l.value,onActive:n},null,8,["module"])])),_:1}),(0,c.bF)(d,{class:"bg-white"},{default:(0,c.k6)((()=>[(0,c.bF)(P,{actuator:a.value},null,8,["actuator"])])),_:1})])),_:1})])),_:1})}}},j=T,V=j;a(4114);const B={key:0,class:"p-5"},J={key:1,class:"h-full p-1 flex flex-col"},H={__name:"Snippet",props:["snippet"],emits:["save","delete","copy"],setup(e,{emit:l}){const a=l,t=e,n=(0,v.KR)(null),u=[{key:"index",title:"序号",width:50,align:"center"},{key:"cmdId",title:"指令",dataIndex:"cmdId"},{key:"params",title:"参数",dataIndex:"params"},{key:"desc",title:"描述"},{key:"action",align:"right",width:230}],o=(0,v.KR)([]);async function i(){await s()}async function s(){o.value=[];let e=b.getClient(),l=await e.call("module/list");for(let t of l){let l={};l.label=t.name,l.value=`module-${t.id}`,l.selectable=!1,l.children=[],o.value.push(l);let a=await e.call("actuator/list",{moduleId:t.id});for(let n of a){let a={};a.label=n.name,a.value=`actuator-${n.id}`,a.selectable=!1,a.children=[],l.children.push(a);let u=await e.call("actuator-cmd/list",{actuatorId:n.id});for(let e of u){let l={};l.label=`${t.name}/${n.name}/${e.name}`,l.value=e.id,l.command=e,a.children.push(l)}a.children.sort(((e,l)=>e.label.localeCompare(l.label)))}l.children.sort(((e,l)=>e.label.localeCompare(l.label)))}o.value.sort(((e,l)=>e.label.localeCompare(l.label)));let a={label:"内置指令",value:"build-in",selectable:!1,children:[]};a.children.push({label:"延时",value:"Delay"}),o.value.push(a)}function d(e,l){""===e.params&&void 0!==l.triggerNode.props.command&&(e.params=l.triggerNode.props.command.parameters)}function r(){let e={};e.key=Date.now(),e.cmdId="",e.params="",e.desc="",n.value.commands.push(e)}function p(e){let l=n.value.commands.indexOf(e);n.value.commands.splice(l,1)}async function k(){let e={};e.id=n.value.id||null,e.name=n.value.name,e.key=n.value.key,e.cmds=JSON.stringify(n.value.commands);let l=b.getClient();await l.call("snippet/save",e),a("save"),R.Ay.success("保存成功")}async function f(){let e=b.getClient();await e.call("snippet/delete",{id:n.value.id}),a("delete"),R.Ay.success("删除成功"),n.value=null}async function y(){let e=b.getClient();await e.call("snippet/execute",{id:n.value.id}),R.Ay.success("执行结束")}async function g(e){let l=b.getClient();await l.call("snippet/execute-step",{cmdId:`${e.cmdId}`,cmdParams:e.params}),R.Ay.success("执行结束")}function C(e,l){let a=n.value.commands.indexOf(e),t=a+l;if(t<0||t>=n.value.commands.length)return;let u=n.value.commands[a];n.value.commands[a]=n.value.commands[t],n.value.commands[t]=u}function F(){n.value.id=null,n.value.name=`${n.value.name} - 复制`,a("copy",n.value)}function h(e){let l=n.value.commands.indexOf(e),a={};a.key=Date.now(),a.cmdId="",a.params="",a.desc="",n.value.commands.splice(l,0,a)}function _(e){let l=n.value.commands.indexOf(e),a={};a.key=Date.now(),a.cmdId="",a.params="",a.desc="",n.value.commands.splice(l+1,0,a)}return(0,c.sV)(i),(0,c.wB)((()=>t.snippet),(e=>{n.value=structuredClone(e)}),{immediate:!0}),(e,l)=>{const a=(0,c.g2)("a-empty"),t=(0,c.g2)("a-input"),i=(0,c.g2)("a-col"),s=(0,c.g2)("a-button"),v=(0,c.g2)("a-popconfirm"),b=(0,c.g2)("a-row"),w=(0,c.g2)("a-tree-select"),x=(0,c.g2)("BorderTopOutlined"),W=(0,c.g2)("BorderBottomOutlined"),K=(0,c.g2)("CaretDownOutlined"),I=(0,c.g2)("CaretUpOutlined"),X=(0,c.g2)("DeleteOutlined"),O=(0,c.g2)("PlayCircleOutlined"),U=(0,c.g2)("a-table");return null===n.value?((0,c.uX)(),(0,c.CE)("div",B,[(0,c.bF)(a)])):((0,c.uX)(),(0,c.CE)("div",J,[(0,c.bF)(b,null,{default:(0,c.k6)((()=>[(0,c.bF)(i,{span:18,class:"flex flex-row"},{default:(0,c.k6)((()=>[(0,c.bF)(t,{placeholder:"名称",value:n.value.name,"onUpdate:value":l[0]||(l[0]=e=>n.value.name=e)},null,8,["value"]),(0,c.bF)(t,{class:"ml-1",placeholder:"键名",value:n.value.key,"onUpdate:value":l[1]||(l[1]=e=>n.value.key=e)},null,8,["value"])])),_:1}),(0,c.bF)(i,{span:6,class:"text-right"},{default:(0,c.k6)((()=>[(0,c.bF)(s,{class:"mr-1",onClick:F},{default:(0,c.k6)((()=>[(0,c.eW)("复制")])),_:1}),(0,c.bF)(v,{title:"是否删除该片段?",placement:"bottom",onConfirm:f},{default:(0,c.k6)((()=>[(0,c.bF)(s,{class:"mr-1"},{default:(0,c.k6)((()=>[(0,c.eW)("删除")])),_:1})])),_:1}),(0,c.bF)(s,{class:"mr-1",type:"primary",onClick:k},{default:(0,c.k6)((()=>[(0,c.eW)("保存")])),_:1}),(0,c.bF)(s,{onClick:y},{default:(0,c.k6)((()=>[(0,c.eW)("运行")])),_:1})])),_:1})])),_:1}),(0,c.bF)(U,{class:"h-0 grow snippet-command-list-table mt-3",size:"small",bordered:"",dataSource:n.value.commands,columns:u,pagination:!1,scroll:{y:"auto"}},{headerCell:(0,c.k6)((({column:e})=>["action"===e.key?((0,c.uX)(),(0,c.Wv)(s,{key:0,size:"small",onClick:r},{default:(0,c.k6)((()=>[(0,c.eW)("添加")])),_:1})):(0,c.Q3)("",!0)])),bodyCell:(0,c.k6)((({column:e,record:l,index:a})=>["index"===e.key?((0,c.uX)(),(0,c.CE)(c.FK,{key:0},[(0,c.eW)((0,m.v_)(a+1),1)],64)):(0,c.Q3)("",!0),"cmdId"===e.key?((0,c.uX)(),(0,c.Wv)(w,{key:1,class:"w-full",value:l.cmdId,"onUpdate:value":e=>l.cmdId=e,"tree-data":o.value,dropdownMatchSelectWidth:!1,onChange:(e,a,t)=>d(l,t)},{title:(0,c.k6)((e=>[(0,c.eW)((0,m.v_)(void 0===e.isLeaf?e.label:e.label.split("/").pop()),1)])),_:2},1032,["value","onUpdate:value","tree-data","onChange"])):(0,c.Q3)("",!0),"params"===e.key?((0,c.uX)(),(0,c.Wv)(t,{key:2,value:l.params,"onUpdate:value":e=>l.params=e,placeholder:"参数"},null,8,["value","onUpdate:value"])):(0,c.Q3)("",!0),"desc"===e.key?((0,c.uX)(),(0,c.Wv)(t,{key:3,value:l.desc,"onUpdate:value":e=>l.desc=e,placeholder:"描述"},null,8,["value","onUpdate:value"])):(0,c.Q3)("",!0),"action"===e.key?((0,c.uX)(),(0,c.CE)(c.FK,{key:4},[(0,c.bF)(s,{size:"small",class:"mr-1",onClick:e=>h(l)},{default:(0,c.k6)((()=>[(0,c.bF)(x)])),_:2},1032,["onClick"]),(0,c.bF)(s,{size:"small",class:"mr-1",onClick:e=>_(l)},{default:(0,c.k6)((()=>[(0,c.bF)(W)])),_:2},1032,["onClick"]),(0,c.bF)(s,{size:"small",class:"mr-1",onClick:e=>C(l,1)},{default:(0,c.k6)((()=>[(0,c.bF)(K)])),_:2},1032,["onClick"]),(0,c.bF)(s,{size:"small",class:"mr-1",onClick:e=>C(l,-1)},{default:(0,c.k6)((()=>[(0,c.bF)(I)])),_:2},1032,["onClick"]),(0,c.bF)(v,{title:"是否删除该步骤?",placement:"bottom",onConfirm:e=>p(l)},{default:(0,c.k6)((()=>[(0,c.bF)(s,{size:"small",class:"ml-1"},{default:(0,c.k6)((()=>[(0,c.bF)(X)])),_:1})])),_:2},1032,["onConfirm"]),(0,c.bF)(s,{size:"small",class:"ml-1",onClick:e=>g(l)},{default:(0,c.k6)((()=>[(0,c.bF)(O)])),_:2},1032,["onClick"])],64)):(0,c.Q3)("",!0)])),_:1},8,["dataSource"])]))}}},q=H,G=q,Y=(0,c.Lk)("div",{class:"!inline-block !text-white !text-2xl"},"UF-MAN",-1),Z={class:"!inline-block !text-white !text-xl ml-12",style:{"line-height":"4rem !important"}},ee=(0,c.Lk)("span",{class:"!text-gray-600"},"指令管理",-1),le=(0,c.Lk)("span",{class:"ml-5"},"片段管理",-1),ae={class:"h-full bg-gray-100 p-1 flex flex-col"},te={class:"h-0 grow overflow-y-auto"},ne={class:"mb-1"},ue={__name:"Page",setup(e){const l=(0,v.KR)(null),a=(0,v.KR)([]),t=(0,v.KR)([]);async function n(){s()}function u(e,t){if(!t.node.isLeaf)return;let n=a.value.find((e=>e.id===t.node.key)),u=structuredClone(n);u.commands=JSON.parse(u.cmds),l.value=u}function o(){l.value={name:"",cmds:"[]",commands:[],key:""}}function i(e){l.value=e}async function s(){let e=b.getClient(),l=await e.call("snippet/list");l.sort(((e,l)=>e.name.localeCompare(l.name))),a.value=l;let n=[];for(let a of l){let e=a.name.split("/"),l=e.pop(),t=n;for(let a=0;ae.title===l));n||(n={title:l,key:e.slice(0,a+1).join("/")},t.push(n)),t=n.children=n.children||[]}t.push({title:l,key:a.id,isLeaf:!0}),t.sort(((e,l)=>e.isLeaf&&!l.isLeaf?1:!e.isLeaf&&l.isLeaf?-1:e.title.localeCompare(l.title)))}t.value=n}return(0,c.sV)(n),(e,a)=>{const n=(0,c.g2)("router-link"),d=(0,c.g2)("a-layout-header"),r=(0,c.g2)("a-directory-tree"),v=(0,c.g2)("a-button"),m=(0,c.g2)("a-layout-sider"),p=(0,c.g2)("a-layout-content"),k=(0,c.g2)("a-layout");return(0,c.uX)(),(0,c.Wv)(k,{class:"h-full"},{default:(0,c.k6)((()=>[(0,c.bF)(d,null,{default:(0,c.k6)((()=>[Y,(0,c.Lk)("div",Z,[(0,c.bF)(n,{to:"/device"},{default:(0,c.k6)((()=>[ee])),_:1}),le])])),_:1}),(0,c.bF)(k,null,{default:(0,c.k6)((()=>[(0,c.bF)(m,{width:300},{default:(0,c.k6)((()=>[(0,c.Lk)("div",ae,[(0,c.Lk)("div",te,[(0,c.bF)(r,{"tree-data":t.value,onSelect:u},null,8,["tree-data"])]),(0,c.Lk)("div",ne,[(0,c.bF)(v,{class:"mt-3",type:"primary",block:"",onClick:o},{default:(0,c.k6)((()=>[(0,c.eW)("添加")])),_:1})])])])),_:1}),(0,c.bF)(p,{class:"bg-white"},{default:(0,c.k6)((()=>[(0,c.bF)(G,{snippet:l.value,onSave:s,onDelete:s,onCopy:i},null,8,["snippet"])])),_:1})])),_:1})])),_:1})}}},oe=ue,ie=oe,ce={__name:"Page",setup(e){const l=[{title:"项目",dataIndex:"comment",key:"comment"},{title:"值",dataIndex:"value",key:"value"},{title:"操作",key:"action",align:"right"}],a=(0,v.KR)([]);async function t(){let e=b.getClient(),l=await e.call("option/list");a.value=l}async function n(){a.value=[];let e=b.getClient(),l=await e.call("option/list");a.value=l,R.Ay.success("刷新成功")}async function u(e){let l=b.getClient();await l.call("option/update",e),R.Ay.success("更新成功")}return(0,c.sV)(t),(e,t)=>{const o=(0,c.g2)("a-button"),i=(0,c.g2)("a-switch"),s=(0,c.g2)("a-input"),d=(0,c.g2)("a-table");return(0,c.uX)(),(0,c.CE)("div",null,[(0,c.bF)(d,{dataSource:a.value,columns:l,pagination:!1},{headerCell:(0,c.k6)((({column:e})=>["action"==e.key?((0,c.uX)(),(0,c.Wv)(o,{key:0,onClick:n},{default:(0,c.k6)((()=>[(0,c.eW)("刷新")])),_:1})):(0,c.Q3)("",!0)])),bodyCell:(0,c.k6)((({column:e,record:l})=>["value"===e.key?((0,c.uX)(),(0,c.CE)(c.FK,{key:0},["boolean"===l.dataType?((0,c.uX)(),(0,c.Wv)(i,{key:0,checked:l.value,"onUpdate:checked":e=>l.value=e,"checked-value":"1","unChecked-value":"0"},null,8,["checked","onUpdate:checked"])):((0,c.uX)(),(0,c.Wv)(s,{key:1,value:l.value,"onUpdate:value":e=>l.value=e,suffix:l.unit},null,8,["value","onUpdate:value","suffix"]))],64)):(0,c.Q3)("",!0),"action"===e.key?((0,c.uX)(),(0,c.Wv)(o,{key:1,onClick:e=>u(l)},{default:(0,c.k6)((()=>[(0,c.eW)("更新")])),_:2},1032,["onClick"])):(0,c.Q3)("",!0)])),_:1},8,["dataSource"])])}}},se=ce,de=se,re=(0,t.Ef)(r);re.use((0,n.Ey)()),re.use((0,u.aE)({routes:[{name:"home",path:"/",component:V},{name:"device",path:"/device",component:V},{name:"snippet",path:"/snippet",component:ie},{name:"setting",path:"/setting",component:de}],history:(0,u.Bt)()})),re.use(o.Ay);for(let ve in i)re.component(ve,i[ve]);re.mount("#app")}},l={};function a(t){var n=l[t];if(void 0!==n)return n.exports;var u=l[t]={exports:{}};return e[t].call(u.exports,u,u.exports,a),u.exports}a.m=e,(()=>{var e=[];a.O=(l,t,n,u)=>{if(!t){var o=1/0;for(d=0;d=u)&&Object.keys(a.O).every((e=>a.O[e](t[c])))?t.splice(c--,1):(i=!1,u0&&e[d-1][2]>u;d--)e[d]=e[d-1];e[d]=[t,n,u]}})(),(()=>{a.n=e=>{var l=e&&e.__esModule?()=>e["default"]:()=>e;return a.d(l,{a:l}),l}})(),(()=>{a.d=(e,l)=>{for(var t in l)a.o(l,t)&&!a.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:l[t]})}})(),(()=>{a.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()})(),(()=>{a.o=(e,l)=>Object.prototype.hasOwnProperty.call(e,l)})(),(()=>{a.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})(),(()=>{var e={524:0};a.O.j=l=>0===e[l];var l=(l,t)=>{var n,u,[o,i,c]=t,s=0;if(o.some((l=>0!==e[l]))){for(n in i)a.o(i,n)&&(a.m[n]=i[n]);if(c)var d=c(a)}for(l&&l(t);sa(7481)));t=a.O(t)})(); +//# sourceMappingURL=app.201353f0.js.map \ No newline at end of file diff --git a/src/main/resources/static/uf/js/app.201353f0.js.map b/src/main/resources/static/uf/js/app.201353f0.js.map new file mode 100644 index 0000000..f093625 --- /dev/null +++ b/src/main/resources/static/uf/js/app.201353f0.js.map @@ -0,0 +1 @@ +{"version":3,"file":"js/app.201353f0.js","mappings":"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","sources":["webpack://web/./src/App.vue","webpack://web/./src/App.vue?7ccd","webpack://web/./src/utils/ApiClient.js","webpack://web/./src/pages/device/ModuleManagement.vue","webpack://web/./src/pages/device/ModuleManagement.vue?e049","webpack://web/./src/pages/device/ActuatorManagement.vue","webpack://web/./src/pages/device/ActuatorManagement.vue?c721","webpack://web/./src/pages/device/ActuatorCommandManagement.vue","webpack://web/./src/pages/device/ActuatorCommandManagement.vue?2bc5","webpack://web/./src/pages/device/Page.vue","webpack://web/./src/pages/device/Page.vue?c6e1","webpack://web/./src/pages/snippet/Snippet.vue","webpack://web/./src/pages/snippet/Snippet.vue?abc1","webpack://web/./src/pages/snippet/Page.vue","webpack://web/./src/pages/snippet/Page.vue?2868","webpack://web/./src/pages/setting/Page.vue","webpack://web/./src/pages/setting/Page.vue?7204","webpack://web/./src/main.js","webpack://web/webpack/bootstrap","webpack://web/webpack/runtime/chunk loaded","webpack://web/webpack/runtime/compat get default export","webpack://web/webpack/runtime/define property getters","webpack://web/webpack/runtime/global","webpack://web/webpack/runtime/hasOwnProperty shorthand","webpack://web/webpack/runtime/make namespace object","webpack://web/webpack/runtime/jsonp chunk loading","webpack://web/webpack/startup"],"sourcesContent":["\n","import script from \"./App.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./App.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","import axios from 'axios';\r\nimport { Modal } from 'ant-design-vue';\r\nexport default class ApiClient {\r\n // client instance\r\n static client = null;\r\n\r\n /**\r\n * get client instance\r\n * @returns {ApiClient}\r\n */\r\n static getClient() {\r\n if (ApiClient.client === null) {\r\n ApiClient.client = new ApiClient();\r\n }\r\n return ApiClient.client;\r\n }\r\n\r\n // constructor\r\n constructor() {\r\n \r\n }\r\n\r\n // call api\r\n async call( name, params={}, callback=null ) {\r\n let headers = {};\r\n let baseURL = `http://${window.location.hostname}/api`;\r\n const response = await axios.post(`${baseURL}/${name}`, params, {\r\n headers : headers,\r\n });\r\n\r\n if ( !response.data.success ) {\r\n if ( null !== callback ) {\r\n return Modal.error({title:'系统错误', content: response.data.message});\r\n } else {\r\n throw new Error(response.data.message);\r\n }\r\n }\r\n\r\n if ( null !== callback ) {\r\n callback(response.data.data);\r\n }\r\n return response.data.data;\r\n }\r\n\r\n async snippetExecute( key, params ) {\r\n return this.call('snippet/execute-by-key', {key:key, params:params});\r\n }\r\n}","\r\n","import script from \"./ModuleManagement.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ModuleManagement.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./ActuatorManagement.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ActuatorManagement.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./ActuatorCommandManagement.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ActuatorCommandManagement.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./Page.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./Page.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n\r\n","import script from \"./Snippet.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./Snippet.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./Snippet.vue?vue&type=style&index=0&id=30324df0&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./Page.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./Page.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./Page.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./Page.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { createApp } from 'vue'\nimport { createPinia } from 'pinia'\nimport { createRouter, createWebHashHistory } from 'vue-router'\nimport Antd from 'ant-design-vue';\nimport * as AntdIcons from '@ant-design/icons-vue'\nimport App from './App.vue'\nimport './styles/tailwindcss.css';\nimport 'ant-design-vue/dist/reset.css';\nimport './styles/app.css';\n\nimport PageDevice from './pages/device/Page.vue';\nimport PageSnippet from './pages/snippet/Page.vue';\nimport PageSetting from './pages/setting/Page.vue';\nconst app = createApp(App);\napp.use(createPinia());\napp.use(createRouter({\n routes : [\n { name:'home', path:'/', component:PageDevice },\n { name:'device', path:'/device', component:PageDevice},\n { name:'snippet', path:'/snippet', component:PageSnippet},\n { name:'setting', path:'/setting', component:PageSetting}\n ],\n history : createWebHashHistory()\n}));\napp.use(Antd);\nfor ( let icon in AntdIcons ) {\n app.component(icon, AntdIcons[icon]);\n}\napp.mount('#app');\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t524: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunkweb\"] = globalThis[\"webpackChunkweb\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504], () => (__webpack_require__(7481)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["mounted","document","title","onMounted","__exports__","ApiClient","getClient","client","constructor","call","name","params","callback","headers","baseURL","window","location","hostname","response","axios","post","data","success","Modal","error","content","message","Error","snippetExecute","key","this","_defineProperty","emits","__emit","open","ref","edit","list","activeItemId","actionRefresh","async","value","actionCreate","actionEditOk","actionDelete","item","id","actionEdit","structuredClone","actionActive","props","__props","module","items","moduleId","sort","a","b","localeCompare","properties","JSON","parse","aid","type","stringify","watch","columns","dataIndex","align","width","dataSource","editOpen","connections","console","log","cmdId","cmdKey","parameters","fixedParameters","actuatorId","actuator","waitForFinish","actionPaste","command","navigator","clipboard","readText","e","result","actionExec","record","actionCopy","writeText","activeModule","activeActuator","actionModuleActive","actionActuatorActive","snippet","commandColumns","commandOptions","refreshCommandOptionData","modules","moduleItem","label","selectable","children","push","actuators","actuatorItem","commands","option","buildInCmds","actionSnippetCommandChange","extra","undefined","triggerNode","actionSnippetCommandAdd","Date","now","desc","actionSnippetCommandDelete","index","indexOf","splice","actionSnippetSave","cmds","actionSnippetDelete","actionSnippetExecute","actionSnippetCommandExecute","cmdParams","actionSnippetCommandMove","offset","targetIndex","length","tmp","actionSnippetCopy","actionSnippetCommandInsertBefore","actionSnippetCommandInsertAfter","immediate","activeSnippet","snippets","snippetTreeData","actionActiveSnippet","keys","event","node","isLeaf","find","tree","path","split","pop","parent","i","pname","child","slice","join","options","actionUpdate","app","createApp","App","use","createPinia","createRouter","routes","component","PageDevice","PageSnippet","PageSetting","history","createWebHashHistory","Antd","icon","AntdIcons","mount","__webpack_module_cache__","__webpack_require__","cachedModule","exports","__webpack_modules__","m","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","Object","every","r","n","getter","__esModule","d","definition","o","defineProperty","enumerable","get","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/src/main/resources/static/uf/js/app.842430c2.js b/src/main/resources/static/uf/js/app.842430c2.js deleted file mode 100644 index 5585665..0000000 --- a/src/main/resources/static/uf/js/app.842430c2.js +++ /dev/null @@ -1,2 +0,0 @@ -(()=>{"use strict";var e={7481:(e,l,a)=>{var t=a(5130),n=a(3367),u=a(1387),o=a(6653),i=a(7900),c=a(6768);const s={__name:"App",setup(e){function l(){document.title="UF-Man"}return(0,c.sV)(l),(e,l)=>{const a=(0,c.g2)("router-view");return(0,c.uX)(),(0,c.Wv)(a)}}},d=s,r=d;a(4529);var m=a(144),v=(a(4979),a(1678),a(4232)),p=a(1114),k=a(8355),f=a(9804);class b{static getClient(){return null===b.client&&(b.client=new b),b.client}constructor(){}async call(e,l={},a=null){let t={},n=`http://${window.location.hostname}/api`;const u=await k.A.post(`${n}/${e}`,l,{headers:t});if(!u.data.success){if(null!==a)return f.A.error({title:"系统错误",content:u.data.message});throw new Error(u.data.message)}return null!==a&&a(u.data.data),u.data.data}async snippetExecute(e,l){return this.call("snippet/execute-by-key",{key:e,params:l})}}(0,p.A)(b,"client",null);const y={class:"h-full bg-gray-500 p-1 flex flex-col"},g={class:"h-0 grow"},_=["onClick"],C={class:"text-gray-400"},F={class:"mt-1"},h={__name:"ModuleManagement",emits:["active"],setup(e,{emit:l}){const a=l,n=(0,m.KR)(!1),u=(0,m.KR)(null),o=(0,m.KR)([]),i=(0,m.KR)(null);function s(){d()}async function d(){let e=b.getClient();o.value=[],o.value=await e.call("module/list")}function r(){n.value=!0,u.value={key:"",name:""}}async function p(){let e=b.getClient();await e.call("module/save",u.value),n.value=!1,u.value=null,d()}async function k(e){let l=b.getClient();await l.call("module/delete",{id:e.id}),d(),e.id===i.value&&(i.value=null,a("active",null))}function f(e){n.value=!0,u.value=structuredClone(e)}function h(e){i.value=e.id,a("active",e)}return(0,c.sV)(s),(e,l)=>{const a=(0,c.g2)("a-button"),s=(0,c.g2)("a-popconfirm"),d=(0,c.g2)("a-input"),m=(0,c.g2)("a-form-item"),b=(0,c.g2)("a-form"),w=(0,c.g2)("a-modal");return(0,c.uX)(),(0,c.CE)(c.FK,null,[(0,c.Lk)("div",y,[(0,c.Lk)("div",g,[((0,c.uX)(!0),(0,c.CE)(c.FK,null,(0,c.pI)(o.value,(e=>((0,c.uX)(),(0,c.CE)("div",{key:e.id,class:(0,v.C4)(["border bg-white p-2 mb-1 hover:bg-gray-200",{"border-blue-500":e.id===i.value}]),onClick:l=>h(e)},[(0,c.Lk)("div",null,[(0,c.eW)((0,v.v_)(e.name)+" ",1),(0,c.Lk)("small",C,"["+(0,v.v_)(e.key)+"]",1)]),(0,c.Lk)("div",F,[(0,c.bF)(s,{title:"是否删除该模组?",placement:"bottom",onConfirm:l=>k(e)},{default:(0,c.k6)((()=>[(0,c.bF)(a,{size:"small",onClick:l[0]||(l[0]=(0,t.D$)((()=>{}),["stop","prevent"]))},{default:(0,c.k6)((()=>[(0,c.eW)("删除")])),_:1})])),_:2},1032,["onConfirm"]),(0,c.bF)(a,{size:"small",class:"ml-1",onClick:(0,t.D$)((l=>f(e)),["stop","prevent"])},{default:(0,c.k6)((()=>[(0,c.eW)("编辑")])),_:2},1032,["onClick"])])],10,_)))),128)),(0,c.bF)(a,{class:"mt-3",type:"primary",block:"",onClick:r},{default:(0,c.k6)((()=>[(0,c.eW)("添加模组")])),_:1})])]),null!==u.value?((0,c.uX)(),(0,c.Wv)(w,{key:0,open:n.value,"onUpdate:open":l[3]||(l[3]=e=>n.value=e),title:"模组编辑",onOk:p},{default:(0,c.k6)((()=>[(0,c.bF)(b,{"label-align":"left","label-col":{span:4},"wrapper-col":{span:20}},{default:(0,c.k6)((()=>[(0,c.bF)(m,{label:"模组键名"},{default:(0,c.k6)((()=>[(0,c.bF)(d,{value:u.value.key,"onUpdate:value":l[1]||(l[1]=e=>u.value.key=e)},null,8,["value"])])),_:1}),(0,c.bF)(m,{label:"模组名称"},{default:(0,c.k6)((()=>[(0,c.bF)(d,{value:u.value.name,"onUpdate:value":l[2]||(l[2]=e=>u.value.name=e)},null,8,["value"])])),_:1})])),_:1})])),_:1},8,["open"])):(0,c.Q3)("",!0)],64)}}},w=h,x=w,K={class:"h-full bg-gray-100 flex flex-col"},I={class:"p-1 border-b"},W={class:"p-1 h-0 grow overflow-y-auto"},X=["onClick"],O={class:"text-gray-400"},U={class:"mt-1"},L={class:"p-1"},E={__name:"ActuatorManagement",props:["module"],emits:["active"],setup(e,{emit:l}){const a=l,n=e,u=(0,m.KR)(!1),o=(0,m.KR)(null),i=(0,m.KR)([]),s=(0,m.KR)(null);function d(){r()}async function r(){if(i.value=[],null===n.module)return;let e=b.getClient(),l=await e.call("actuator/list",{moduleId:n.module.id});l.sort(((e,l)=>e.name.localeCompare(l.name)));for(let a of l)a.properties=JSON.parse(a.properties);i.value=l}function p(){u.value=!0,o.value={key:"",name:"",aid:"",type:"other",moduleId:n.module.id,properties:{}}}async function k(){let e=!o.value.id,l=b.getClient(),a=structuredClone(o.value);a.properties=JSON.stringify(a.properties);let t=await l.call("actuator/save",a);a.id=t.id,a.properties=JSON.parse(a.properties),u.value=!1,o.value=null,"stepper-motor"===a.type&&e&&await f(a),r()}async function f(e){let l=b.getClient(),a=[{name:"模块停止",cmdKey:"module_stop",cmdId:"0101",parameters:""},{name:"模块使能",cmdKey:"module_enable",cmdId:"0114",parameters:"1"},{name:"模块更新寄存器",cmdKey:"module_set_reg",cmdId:"0105",parameters:"1051,0"},{name:"模块配置激活",cmdKey:"module_active_cfg",cmdId:"0110",parameters:""},{name:"电机相对移动",cmdKey:"motor_easy_move_by",cmdId:"0212",parameters:"100"},{name:"电机移动到指定位置",cmdKey:"motor_easy_move_to",cmdId:"0213",parameters:"100"},{name:"电机移动至零点",cmdKey:"motor_easy_move_to_zero",cmdId:"0214",parameters:"-1"},{name:"电机读取编码器数值",cmdKey:"motor_read_enc_val",cmdId:"0219",parameters:""},{name:"电机旋转",cmdKey:"motor_easy_rotate",cmdId:"0211",parameters:"1"}];for(let t of a)t.actuatorId=e.id,t.connectionKey="zcancmder",t.cmdFlags=e.properties.mid,t.fixedParameters=t.parameters,t.waitForFinish=0,await l.call("actuator-cmd/save",t)}async function y(e){let l=b.getClient();await l.call("actuator/delete",{id:e.id}),r()}function g(e){u.value=!0,o.value=structuredClone(e)}function _(e){s.value=e.id,a("active",e)}return(0,c.sV)(d),(0,c.wB)((()=>n.module),r),(e,l)=>{const a=(0,c.g2)("a-button"),d=(0,c.g2)("a-popconfirm"),r=(0,c.g2)("a-empty"),m=(0,c.g2)("a-input"),f=(0,c.g2)("a-form-item"),b=(0,c.g2)("a-select-option"),C=(0,c.g2)("a-select"),F=(0,c.g2)("a-switch"),h=(0,c.g2)("a-input-number"),w=(0,c.g2)("a-form"),x=(0,c.g2)("a-modal");return(0,c.uX)(),(0,c.CE)(c.FK,null,[(0,c.Lk)("div",K,[(0,c.Lk)("div",I,(0,v.v_)(n.module?.name),1),(0,c.Lk)("div",W,[((0,c.uX)(!0),(0,c.CE)(c.FK,null,(0,c.pI)(i.value,(e=>((0,c.uX)(),(0,c.CE)("div",{key:e.id,class:(0,v.C4)(["border bg-white p-2 mb-1 hover:bg-gray-200",{"border-blue-500":e.id===s.value}]),onClick:l=>_(e)},[(0,c.Lk)("div",null,[(0,c.Lk)("div",null,(0,v.v_)(e.name),1),(0,c.Lk)("div",null,[(0,c.Lk)("small",O,"["+(0,v.v_)(e.key)+"]",1)])]),(0,c.Lk)("div",U,[(0,c.bF)(d,{title:"是否删除该设备?",placement:"bottom",onConfirm:l=>y(e)},{default:(0,c.k6)((()=>[(0,c.bF)(a,{size:"small",onClick:l[0]||(l[0]=(0,t.D$)((()=>{}),["stop","prevent"]))},{default:(0,c.k6)((()=>[(0,c.eW)("删除")])),_:1})])),_:2},1032,["onConfirm"]),(0,c.bF)(a,{size:"small",class:"ml-1",onClick:(0,t.D$)((l=>g(e)),["stop","prevent"])},{default:(0,c.k6)((()=>[(0,c.eW)("编辑")])),_:2},1032,["onClick"])])],10,X)))),128)),0===i.value.length?((0,c.uX)(),(0,c.Wv)(r,{key:0,class:"py-5",description:!1})):(0,c.Q3)("",!0)]),(0,c.Lk)("div",L,[null!==n.module?((0,c.uX)(),(0,c.Wv)(a,{key:0,class:"mt-3",type:"primary",block:"",onClick:p},{default:(0,c.k6)((()=>[(0,c.eW)("添加执行设备")])),_:1})):(0,c.Q3)("",!0)])]),null!==o.value?((0,c.uX)(),(0,c.Wv)(x,{key:0,open:u.value,"onUpdate:open":l[7]||(l[7]=e=>u.value=e),title:"执行设备编辑",onOk:k},{default:(0,c.k6)((()=>[(0,c.bF)(w,{"label-align":"left","label-col":{span:4},"wrapper-col":{span:20}},{default:(0,c.k6)((()=>[(0,c.bF)(f,{label:"名称"},{default:(0,c.k6)((()=>[(0,c.bF)(m,{value:o.value.name,"onUpdate:value":l[1]||(l[1]=e=>o.value.name=e)},null,8,["value"])])),_:1}),(0,c.bF)(f,{label:"键名"},{default:(0,c.k6)((()=>[(0,c.bF)(m,{value:o.value.key,"onUpdate:value":l[2]||(l[2]=e=>o.value.key=e)},null,8,["value"])])),_:1}),(0,c.bF)(f,{label:"类型"},{default:(0,c.k6)((()=>[(0,c.bF)(C,{value:o.value.type,"onUpdate:value":l[3]||(l[3]=e=>o.value.type=e)},{default:(0,c.k6)((()=>[(0,c.bF)(b,{value:"stepper-motor"},{default:(0,c.k6)((()=>[(0,c.eW)("步进电机")])),_:1}),(0,c.bF)(b,{value:"arm-hbot"},{default:(0,c.k6)((()=>[(0,c.eW)("Hbot机械臂")])),_:1}),(0,c.bF)(b,{value:"pipette"},{default:(0,c.k6)((()=>[(0,c.eW)("移液枪")])),_:1}),(0,c.bF)(b,{value:"other"},{default:(0,c.k6)((()=>[(0,c.eW)("其他")])),_:1})])),_:1},8,["value"])])),_:1}),"stepper-motor"===o.value.type?((0,c.uX)(),(0,c.CE)(c.FK,{key:0},[(0,c.bF)(f,{label:"模块ID"},{default:(0,c.k6)((()=>[(0,c.bF)(m,{value:o.value.properties.mid,"onUpdate:value":l[4]||(l[4]=e=>o.value.properties.mid=e)},null,8,["value"])])),_:1}),(0,c.bF)(f,{label:"编码器有效"},{default:(0,c.k6)((()=>[(0,c.bF)(F,{checked:o.value.properties.encoderAvailable,"onUpdate:checked":l[5]||(l[5]=e=>o.value.properties.encoderAvailable=e),checkedValue:1,unCheckedValue:0},null,8,["checked"])])),_:1}),(0,c.bF)(f,{label:"偏移量"},{default:(0,c.k6)((()=>[(0,c.bF)(h,{class:"!w-full",value:o.value.properties.offset,"onUpdate:value":l[6]||(l[6]=e=>o.value.properties.offset=e)},null,8,["value"])])),_:1})],64)):(0,c.Q3)("",!0)])),_:1})])),_:1},8,["open"])):(0,c.Q3)("",!0)],64)}}},S=E,A=S;var z=a(7694);const R={__name:"ActuatorCommandManagement",props:["actuator"],setup(e){const l=e,a=[{key:"name",title:"名称",dataIndex:"name"},{key:"cmdKey",title:"指令",dataIndex:"cmdKey"},{key:"cmdId",title:"指令编码",dataIndex:"cmdId"},{key:"cmdFlags",title:"修饰参数",dataIndex:"cmdFlags"},{key:"fixedParameters",title:"固定参数",dataIndex:"fixedParameters"},{key:"parameters",title:"临时参数",dataIndex:"parameters"},{key:"result",title:"执行结果",dataIndex:"result"},{key:"action",title:"操作",align:"right",width:250}],t=(0,m.KR)([]),n=(0,m.KR)(null),u=(0,m.KR)(!1),o=(0,m.KR)([]);async function i(){let e=b.getClient();o.value=await e.call("actuator-cmd/connection-list"),console.log(o.value),await k()}function s(){u.value=!0,n.value={cmdId:"",cmdKey:"",name:"",parameters:"",fixedParameters:"",actuatorId:l.actuator.id,waitForFinish:0}}async function d(){let e=await navigator.clipboard.readText(),a=null;try{a=JSON.parse(e)}catch(t){return void z.Ay.error("无法解析指令")}delete a.id,a.actuatorId=l.actuator.id,u.value=!0,n.value=a}function r(e){u.value=!0,n.value=structuredClone(e)}async function p(){let e=b.getClient();await e.call("actuator-cmd/save",n.value),u.value=!1,n.value=null,await k()}async function k(){if(t.value=[],null===l.actuator)return;let e=b.getClient(),a=await e.call("actuator-cmd/list",{actuatorId:l.actuator.id});for(let l of a)l.result="";a.sort(((e,l)=>e.name.localeCompare(l.name))),t.value=a}async function f(e){let l=b.getClient();await l.call("actuator-cmd/delete",{id:e.id}),await k()}async function y(e){let l=b.getClient(),a=await l.call("actuator-cmd/execute",e);e.result=a.result}async function g(e){let l=JSON.stringify(e);await navigator.clipboard.writeText(l),z.Ay.success("指令已复制到剪贴板")}return(0,c.sV)(i),(0,c.wB)((()=>l.actuator),k),(e,i)=>{const m=(0,c.g2)("a-button"),k=(0,c.g2)("CopyOutlined"),b=(0,c.g2)("a-popconfirm"),_=(0,c.g2)("a-table"),C=(0,c.g2)("a-select-option"),F=(0,c.g2)("a-select"),h=(0,c.g2)("a-form-item"),w=(0,c.g2)("a-input"),x=(0,c.g2)("a-form"),K=(0,c.g2)("a-modal");return(0,c.uX)(),(0,c.CE)(c.FK,null,[(0,c.Lk)("div",null,[(0,c.bF)(_,{dataSource:t.value,columns:a,pagination:!1},{headerCell:(0,c.k6)((({column:e})=>["action"===e.key?((0,c.uX)(),(0,c.CE)(c.FK,{key:0},[null!==l.actuator?((0,c.uX)(),(0,c.Wv)(m,{key:0,class:"mr-1",size:"small",onClick:d},{default:(0,c.k6)((()=>[(0,c.eW)("粘贴")])),_:1})):(0,c.Q3)("",!0),null!==l.actuator?((0,c.uX)(),(0,c.Wv)(m,{key:1,size:"small",onClick:s},{default:(0,c.k6)((()=>[(0,c.eW)("新建")])),_:1})):(0,c.Q3)("",!0)],64)):(0,c.Q3)("",!0)])),bodyCell:(0,c.k6)((({column:e,record:l})=>["action"===e.key?((0,c.uX)(),(0,c.CE)(c.FK,{key:0},[(0,c.bF)(m,{size:"small",class:"mr-1",onClick:e=>g(l)},{default:(0,c.k6)((()=>[(0,c.bF)(k)])),_:2},1032,["onClick"]),(0,c.bF)(m,{size:"small",class:"mr-1",onClick:e=>r(l)},{default:(0,c.k6)((()=>[(0,c.eW)("编辑")])),_:2},1032,["onClick"]),(0,c.bF)(m,{size:"small",class:"mr-1",onClick:e=>y(l)},{default:(0,c.k6)((()=>[(0,c.eW)("执行")])),_:2},1032,["onClick"]),(0,c.bF)(b,{title:"是否删除该指令?",placement:"bottom",onConfirm:e=>f(l)},{default:(0,c.k6)((()=>[(0,c.bF)(m,{size:"small"},{default:(0,c.k6)((()=>[(0,c.eW)("删除")])),_:1})])),_:2},1032,["onConfirm"])],64)):(0,c.Q3)("",!0)])),_:1},8,["dataSource"])]),null!==n.value?((0,c.uX)(),(0,c.Wv)(K,{key:0,open:u.value,"onUpdate:open":i[7]||(i[7]=e=>u.value=e),title:"编辑指令",onOk:p},{default:(0,c.k6)((()=>[(0,c.bF)(x,{"label-align":"left","label-col":{span:4},"wrapper-col":{span:20}},{default:(0,c.k6)((()=>[(0,c.bF)(h,{label:"通信连接"},{default:(0,c.k6)((()=>[(0,c.bF)(F,{value:n.value.connectionKey,"onUpdate:value":i[0]||(i[0]=e=>n.value.connectionKey=e)},{default:(0,c.k6)((()=>[((0,c.uX)(!0),(0,c.CE)(c.FK,null,(0,c.pI)(o.value,(e=>((0,c.uX)(),(0,c.Wv)(C,{key:e.key,value:e.key},{default:(0,c.k6)((()=>[(0,c.eW)((0,v.v_)(e.name),1)])),_:2},1032,["value"])))),128))])),_:1},8,["value"])])),_:1}),(0,c.bF)(h,{label:"名称"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.name,"onUpdate:value":i[1]||(i[1]=e=>n.value.name=e)},null,8,["value"])])),_:1}),(0,c.bF)(h,{label:"指令"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.cmdKey,"onUpdate:value":i[2]||(i[2]=e=>n.value.cmdKey=e)},null,8,["value"])])),_:1}),(0,c.bF)(h,{label:"指令编码"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.cmdId,"onUpdate:value":i[3]||(i[3]=e=>n.value.cmdId=e)},null,8,["value"])])),_:1}),(0,c.bF)(h,{label:"修饰参数"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.cmdFlags,"onUpdate:value":i[4]||(i[4]=e=>n.value.cmdFlags=e)},null,8,["value"])])),_:1}),(0,c.bF)(h,{label:"固定参数"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.fixedParameters,"onUpdate:value":i[5]||(i[5]=e=>n.value.fixedParameters=e)},null,8,["value"])])),_:1}),(0,c.bF)(h,{label:"临时参数"},{default:(0,c.k6)((()=>[(0,c.bF)(w,{value:n.value.parameters,"onUpdate:value":i[6]||(i[6]=e=>n.value.parameters=e)},null,8,["value"])])),_:1})])),_:1})])),_:1},8,["open"])):(0,c.Q3)("",!0)],64)}}},Q=R,P=Q,$=(0,c.Lk)("div",{class:"!inline-block !text-white !text-2xl"},"UF-MAN",-1),D={class:"!inline-block !text-white !text-xl ml-12",style:{"line-height":"4rem !important"}},M=(0,c.Lk)("span",null,"指令管理",-1),N=(0,c.Lk)("span",{class:"ml-5 !text-gray-600"},"片段管理",-1),T={__name:"Page",setup(e){const l=(0,m.KR)(null),a=(0,m.KR)(null);function t(e){l.value=e}function n(e){a.value=e}return(e,u)=>{const o=(0,c.g2)("router-link"),i=(0,c.g2)("a-layout-header"),s=(0,c.g2)("a-layout-sider"),d=(0,c.g2)("a-layout-content"),r=(0,c.g2)("a-layout");return(0,c.uX)(),(0,c.Wv)(r,{class:"h-full"},{default:(0,c.k6)((()=>[(0,c.bF)(i,null,{default:(0,c.k6)((()=>[$,(0,c.Lk)("div",D,[M,(0,c.bF)(o,{to:"/snippet"},{default:(0,c.k6)((()=>[N])),_:1})])])),_:1}),(0,c.bF)(r,null,{default:(0,c.k6)((()=>[(0,c.bF)(s,null,{default:(0,c.k6)((()=>[(0,c.bF)(x,{onActive:t})])),_:1}),(0,c.bF)(s,null,{default:(0,c.k6)((()=>[(0,c.bF)(A,{module:l.value,onActive:n},null,8,["module"])])),_:1}),(0,c.bF)(d,{class:"bg-white"},{default:(0,c.k6)((()=>[(0,c.bF)(P,{actuator:a.value},null,8,["actuator"])])),_:1})])),_:1})])),_:1})}}},j=T,V=j;a(4114);const B={key:0,class:"p-5"},J={key:1,class:"h-full p-1 flex flex-col"},H={__name:"Snippet",props:["snippet"],emits:["save","delete","copy"],setup(e,{emit:l}){const a=l,t=e,n=(0,m.KR)(null),u=[{key:"index",title:"序号",width:50,align:"center"},{key:"cmdId",title:"指令",dataIndex:"cmdId"},{key:"params",title:"参数",dataIndex:"params"},{key:"desc",title:"描述"},{key:"action",align:"right",width:230}],o=(0,m.KR)([]);async function i(){await s()}async function s(){o.value=[];let e=b.getClient(),l=await e.call("module/list");for(let t of l){let l={};l.label=t.name,l.value=`module-${t.id}`,l.selectable=!1,l.children=[],o.value.push(l);let a=await e.call("actuator/list",{moduleId:t.id});for(let n of a){let a={};a.label=n.name,a.value=`actuator-${n.id}`,a.selectable=!1,a.children=[],l.children.push(a);let u=await e.call("actuator-cmd/list",{actuatorId:n.id});for(let e of u){let l={};l.label=`${t.name}/${n.name}/${e.name}`,l.value=e.id,l.command=e,a.children.push(l)}a.children.sort(((e,l)=>e.label.localeCompare(l.label)))}l.children.sort(((e,l)=>e.label.localeCompare(l.label)))}o.value.sort(((e,l)=>e.label.localeCompare(l.label)));let a={label:"内置指令",value:"build-in",selectable:!1,children:[]};a.children.push({label:"延时",value:"Delay"}),o.value.push(a)}function d(e,l){""===e.params&&void 0!==l.triggerNode.props.command&&(e.params=l.triggerNode.props.command.parameters)}function r(){let e={};e.key=Date.now(),e.cmdId="",e.params="",e.desc="",n.value.commands.push(e)}function p(e){let l=n.value.commands.indexOf(e);n.value.commands.splice(l,1)}async function k(){let e={};e.id=n.value.id||null,e.name=n.value.name,e.key=n.value.key,e.cmds=JSON.stringify(n.value.commands);let l=b.getClient();await l.call("snippet/save",e),a("save"),z.Ay.success("保存成功")}async function f(){let e=b.getClient();await e.call("snippet/delete",{id:n.value.id}),a("delete"),z.Ay.success("删除成功"),n.value=null}async function y(){let e=b.getClient();await e.call("snippet/execute",{id:n.value.id}),z.Ay.success("执行结束")}async function g(e){let l=b.getClient();await l.call("snippet/execute-step",{cmdId:`${e.cmdId}`,cmdParams:e.params}),z.Ay.success("执行结束")}function _(e,l){let a=n.value.commands.indexOf(e),t=a+l;if(t<0||t>=n.value.commands.length)return;let u=n.value.commands[a];n.value.commands[a]=n.value.commands[t],n.value.commands[t]=u}function C(){n.value.id=null,n.value.name=`${n.value.name} - 复制`,a("copy",n.value)}function F(e){let l=n.value.commands.indexOf(e),a={};a.key=Date.now(),a.cmdId="",a.params="",a.desc="",n.value.commands.splice(l,0,a)}function h(e){let l=n.value.commands.indexOf(e),a={};a.key=Date.now(),a.cmdId="",a.params="",a.desc="",n.value.commands.splice(l+1,0,a)}return(0,c.sV)(i),(0,c.wB)((()=>t.snippet),(e=>{n.value=structuredClone(e)}),{immediate:!0}),(e,l)=>{const a=(0,c.g2)("a-empty"),t=(0,c.g2)("a-input"),i=(0,c.g2)("a-col"),s=(0,c.g2)("a-button"),m=(0,c.g2)("a-popconfirm"),b=(0,c.g2)("a-row"),w=(0,c.g2)("a-tree-select"),x=(0,c.g2)("BorderTopOutlined"),K=(0,c.g2)("BorderBottomOutlined"),I=(0,c.g2)("CaretDownOutlined"),W=(0,c.g2)("CaretUpOutlined"),X=(0,c.g2)("DeleteOutlined"),O=(0,c.g2)("PlayCircleOutlined"),U=(0,c.g2)("a-table");return null===n.value?((0,c.uX)(),(0,c.CE)("div",B,[(0,c.bF)(a)])):((0,c.uX)(),(0,c.CE)("div",J,[(0,c.bF)(b,null,{default:(0,c.k6)((()=>[(0,c.bF)(i,{span:18,class:"flex flex-row"},{default:(0,c.k6)((()=>[(0,c.bF)(t,{placeholder:"名称",value:n.value.name,"onUpdate:value":l[0]||(l[0]=e=>n.value.name=e)},null,8,["value"]),(0,c.bF)(t,{class:"ml-1",placeholder:"键名",value:n.value.key,"onUpdate:value":l[1]||(l[1]=e=>n.value.key=e)},null,8,["value"])])),_:1}),(0,c.bF)(i,{span:6,class:"text-right"},{default:(0,c.k6)((()=>[(0,c.bF)(s,{class:"mr-1",onClick:C},{default:(0,c.k6)((()=>[(0,c.eW)("复制")])),_:1}),(0,c.bF)(m,{title:"是否删除该片段?",placement:"bottom",onConfirm:f},{default:(0,c.k6)((()=>[(0,c.bF)(s,{class:"mr-1"},{default:(0,c.k6)((()=>[(0,c.eW)("删除")])),_:1})])),_:1}),(0,c.bF)(s,{class:"mr-1",type:"primary",onClick:k},{default:(0,c.k6)((()=>[(0,c.eW)("保存")])),_:1}),(0,c.bF)(s,{onClick:y},{default:(0,c.k6)((()=>[(0,c.eW)("运行")])),_:1})])),_:1})])),_:1}),(0,c.bF)(U,{class:"h-0 grow snippet-command-list-table mt-3",size:"small",bordered:"",dataSource:n.value.commands,columns:u,pagination:!1,scroll:{y:"auto"}},{headerCell:(0,c.k6)((({column:e})=>["action"===e.key?((0,c.uX)(),(0,c.Wv)(s,{key:0,size:"small",onClick:r},{default:(0,c.k6)((()=>[(0,c.eW)("添加")])),_:1})):(0,c.Q3)("",!0)])),bodyCell:(0,c.k6)((({column:e,record:l,index:a})=>["index"===e.key?((0,c.uX)(),(0,c.CE)(c.FK,{key:0},[(0,c.eW)((0,v.v_)(a+1),1)],64)):(0,c.Q3)("",!0),"cmdId"===e.key?((0,c.uX)(),(0,c.Wv)(w,{key:1,class:"w-full",value:l.cmdId,"onUpdate:value":e=>l.cmdId=e,"tree-data":o.value,dropdownMatchSelectWidth:!1,onChange:(e,a,t)=>d(l,t)},{title:(0,c.k6)((e=>[(0,c.eW)((0,v.v_)(void 0===e.isLeaf?e.label:e.label.split("/").pop()),1)])),_:2},1032,["value","onUpdate:value","tree-data","onChange"])):(0,c.Q3)("",!0),"params"===e.key?((0,c.uX)(),(0,c.Wv)(t,{key:2,value:l.params,"onUpdate:value":e=>l.params=e,placeholder:"参数"},null,8,["value","onUpdate:value"])):(0,c.Q3)("",!0),"desc"===e.key?((0,c.uX)(),(0,c.Wv)(t,{key:3,value:l.desc,"onUpdate:value":e=>l.desc=e,placeholder:"描述"},null,8,["value","onUpdate:value"])):(0,c.Q3)("",!0),"action"===e.key?((0,c.uX)(),(0,c.CE)(c.FK,{key:4},[(0,c.bF)(s,{size:"small",class:"mr-1",onClick:e=>F(l)},{default:(0,c.k6)((()=>[(0,c.bF)(x)])),_:2},1032,["onClick"]),(0,c.bF)(s,{size:"small",class:"mr-1",onClick:e=>h(l)},{default:(0,c.k6)((()=>[(0,c.bF)(K)])),_:2},1032,["onClick"]),(0,c.bF)(s,{size:"small",class:"mr-1",onClick:e=>_(l,1)},{default:(0,c.k6)((()=>[(0,c.bF)(I)])),_:2},1032,["onClick"]),(0,c.bF)(s,{size:"small",class:"mr-1",onClick:e=>_(l,-1)},{default:(0,c.k6)((()=>[(0,c.bF)(W)])),_:2},1032,["onClick"]),(0,c.bF)(m,{title:"是否删除该步骤?",placement:"bottom",onConfirm:e=>p(l)},{default:(0,c.k6)((()=>[(0,c.bF)(s,{size:"small",class:"ml-1"},{default:(0,c.k6)((()=>[(0,c.bF)(X)])),_:1})])),_:2},1032,["onConfirm"]),(0,c.bF)(s,{size:"small",class:"ml-1",onClick:e=>g(l)},{default:(0,c.k6)((()=>[(0,c.bF)(O)])),_:2},1032,["onClick"])],64)):(0,c.Q3)("",!0)])),_:1},8,["dataSource"])]))}}},q=H,G=q,Y=(0,c.Lk)("div",{class:"!inline-block !text-white !text-2xl"},"UF-MAN",-1),Z={class:"!inline-block !text-white !text-xl ml-12",style:{"line-height":"4rem !important"}},ee=(0,c.Lk)("span",{class:"!text-gray-600"},"指令管理",-1),le=(0,c.Lk)("span",{class:"ml-5"},"片段管理",-1),ae={class:"h-full bg-gray-100 p-1 flex flex-col"},te={class:"h-0 grow overflow-y-auto"},ne={class:"mb-1"},ue={__name:"Page",setup(e){const l=(0,m.KR)(null),a=(0,m.KR)([]),t=(0,m.KR)([]);async function n(){s()}function u(e,t){if(!t.node.isLeaf)return;let n=a.value.find((e=>e.id===t.node.key)),u=structuredClone(n);u.commands=JSON.parse(u.cmds),l.value=u}function o(){l.value={name:"",cmds:"[]",commands:[],key:""}}function i(e){l.value=e}async function s(){let e=b.getClient(),l=await e.call("snippet/list");l.sort(((e,l)=>e.name.localeCompare(l.name))),a.value=l;let n=[];for(let a of l){let e=a.name.split("/"),l=e.pop(),t=n;for(let a=0;ae.title===l));n||(n={title:l,key:e.slice(0,a+1).join("/")},t.push(n)),t=n.children=n.children||[]}t.push({title:l,key:a.id,isLeaf:!0}),t.sort(((e,l)=>e.isLeaf&&!l.isLeaf?1:!e.isLeaf&&l.isLeaf?-1:e.title.localeCompare(l.title)))}t.value=n}return(0,c.sV)(n),(e,a)=>{const n=(0,c.g2)("router-link"),d=(0,c.g2)("a-layout-header"),r=(0,c.g2)("a-directory-tree"),m=(0,c.g2)("a-button"),v=(0,c.g2)("a-layout-sider"),p=(0,c.g2)("a-layout-content"),k=(0,c.g2)("a-layout");return(0,c.uX)(),(0,c.Wv)(k,{class:"h-full"},{default:(0,c.k6)((()=>[(0,c.bF)(d,null,{default:(0,c.k6)((()=>[Y,(0,c.Lk)("div",Z,[(0,c.bF)(n,{to:"/device"},{default:(0,c.k6)((()=>[ee])),_:1}),le])])),_:1}),(0,c.bF)(k,null,{default:(0,c.k6)((()=>[(0,c.bF)(v,{width:300},{default:(0,c.k6)((()=>[(0,c.Lk)("div",ae,[(0,c.Lk)("div",te,[(0,c.bF)(r,{"tree-data":t.value,onSelect:u},null,8,["tree-data"])]),(0,c.Lk)("div",ne,[(0,c.bF)(m,{class:"mt-3",type:"primary",block:"",onClick:o},{default:(0,c.k6)((()=>[(0,c.eW)("添加")])),_:1})])])])),_:1}),(0,c.bF)(p,{class:"bg-white"},{default:(0,c.k6)((()=>[(0,c.bF)(G,{snippet:l.value,onSave:s,onDelete:s,onCopy:i},null,8,["snippet"])])),_:1})])),_:1})])),_:1})}}},oe=ue,ie=oe,ce={__name:"Page",setup(e){const l=[{title:"项目",dataIndex:"comment",key:"comment"},{title:"值",dataIndex:"value",key:"value"},{title:"操作",key:"action",align:"right"}],a=(0,m.KR)([]);async function t(){let e=b.getClient(),l=await e.call("option/list");a.value=l}async function n(){a.value=[];let e=b.getClient(),l=await e.call("option/list");a.value=l,z.Ay.success("刷新成功")}async function u(e){let l=b.getClient();await l.call("option/update",e),z.Ay.success("更新成功")}return(0,c.sV)(t),(e,t)=>{const o=(0,c.g2)("a-button"),i=(0,c.g2)("a-switch"),s=(0,c.g2)("a-input"),d=(0,c.g2)("a-table");return(0,c.uX)(),(0,c.CE)("div",null,[(0,c.bF)(d,{dataSource:a.value,columns:l,pagination:!1},{headerCell:(0,c.k6)((({column:e})=>["action"==e.key?((0,c.uX)(),(0,c.Wv)(o,{key:0,onClick:n},{default:(0,c.k6)((()=>[(0,c.eW)("刷新")])),_:1})):(0,c.Q3)("",!0)])),bodyCell:(0,c.k6)((({column:e,record:l})=>["value"===e.key?((0,c.uX)(),(0,c.CE)(c.FK,{key:0},["boolean"===l.dataType?((0,c.uX)(),(0,c.Wv)(i,{key:0,checked:l.value,"onUpdate:checked":e=>l.value=e,"checked-value":"1","unChecked-value":"0"},null,8,["checked","onUpdate:checked"])):((0,c.uX)(),(0,c.Wv)(s,{key:1,value:l.value,"onUpdate:value":e=>l.value=e,suffix:l.unit},null,8,["value","onUpdate:value","suffix"]))],64)):(0,c.Q3)("",!0),"action"===e.key?((0,c.uX)(),(0,c.Wv)(o,{key:1,onClick:e=>u(l)},{default:(0,c.k6)((()=>[(0,c.eW)("更新")])),_:2},1032,["onClick"])):(0,c.Q3)("",!0)])),_:1},8,["dataSource"])])}}},se=ce,de=se,re=(0,t.Ef)(r);re.use((0,n.Ey)()),re.use((0,u.aE)({routes:[{name:"home",path:"/",component:V},{name:"device",path:"/device",component:V},{name:"snippet",path:"/snippet",component:ie},{name:"setting",path:"/setting",component:de}],history:(0,u.Bt)()})),re.use(o.Ay);for(let me in i)re.component(me,i[me]);re.mount("#app")}},l={};function a(t){var n=l[t];if(void 0!==n)return n.exports;var u=l[t]={exports:{}};return e[t].call(u.exports,u,u.exports,a),u.exports}a.m=e,(()=>{var e=[];a.O=(l,t,n,u)=>{if(!t){var o=1/0;for(d=0;d=u)&&Object.keys(a.O).every((e=>a.O[e](t[c])))?t.splice(c--,1):(i=!1,u0&&e[d-1][2]>u;d--)e[d]=e[d-1];e[d]=[t,n,u]}})(),(()=>{a.n=e=>{var l=e&&e.__esModule?()=>e["default"]:()=>e;return a.d(l,{a:l}),l}})(),(()=>{a.d=(e,l)=>{for(var t in l)a.o(l,t)&&!a.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:l[t]})}})(),(()=>{a.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()})(),(()=>{a.o=(e,l)=>Object.prototype.hasOwnProperty.call(e,l)})(),(()=>{a.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})(),(()=>{var e={524:0};a.O.j=l=>0===e[l];var l=(l,t)=>{var n,u,[o,i,c]=t,s=0;if(o.some((l=>0!==e[l]))){for(n in i)a.o(i,n)&&(a.m[n]=i[n]);if(c)var d=c(a)}for(l&&l(t);sa(7481)));t=a.O(t)})(); -//# sourceMappingURL=app.842430c2.js.map \ No newline at end of file diff --git a/src/main/resources/static/uf/js/app.842430c2.js.map b/src/main/resources/static/uf/js/app.842430c2.js.map deleted file mode 100644 index 3e205e2..0000000 --- a/src/main/resources/static/uf/js/app.842430c2.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"js/app.842430c2.js","mappings":"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","sources":["webpack://web/./src/App.vue","webpack://web/./src/App.vue?7ccd","webpack://web/./src/utils/ApiClient.js","webpack://web/./src/pages/device/ModuleManagement.vue","webpack://web/./src/pages/device/ModuleManagement.vue?e049","webpack://web/./src/pages/device/ActuatorManagement.vue","webpack://web/./src/pages/device/ActuatorManagement.vue?c721","webpack://web/./src/pages/device/ActuatorCommandManagement.vue","webpack://web/./src/pages/device/ActuatorCommandManagement.vue?2bc5","webpack://web/./src/pages/device/Page.vue","webpack://web/./src/pages/device/Page.vue?c6e1","webpack://web/./src/pages/snippet/Snippet.vue","webpack://web/./src/pages/snippet/Snippet.vue?abc1","webpack://web/./src/pages/snippet/Page.vue","webpack://web/./src/pages/snippet/Page.vue?2868","webpack://web/./src/pages/setting/Page.vue","webpack://web/./src/pages/setting/Page.vue?7204","webpack://web/./src/main.js","webpack://web/webpack/bootstrap","webpack://web/webpack/runtime/chunk loaded","webpack://web/webpack/runtime/compat get default export","webpack://web/webpack/runtime/define property getters","webpack://web/webpack/runtime/global","webpack://web/webpack/runtime/hasOwnProperty shorthand","webpack://web/webpack/runtime/make namespace object","webpack://web/webpack/runtime/jsonp chunk loading","webpack://web/webpack/startup"],"sourcesContent":["\n","import script from \"./App.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./App.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","import axios from 'axios';\r\nimport { Modal } from 'ant-design-vue';\r\nexport default class ApiClient {\r\n // client instance\r\n static client = null;\r\n\r\n /**\r\n * get client instance\r\n * @returns {ApiClient}\r\n */\r\n static getClient() {\r\n if (ApiClient.client === null) {\r\n ApiClient.client = new ApiClient();\r\n }\r\n return ApiClient.client;\r\n }\r\n\r\n // constructor\r\n constructor() {\r\n \r\n }\r\n\r\n // call api\r\n async call( name, params={}, callback=null ) {\r\n let headers = {};\r\n let baseURL = `http://${window.location.hostname}/api`;\r\n const response = await axios.post(`${baseURL}/${name}`, params, {\r\n headers : headers,\r\n });\r\n\r\n if ( !response.data.success ) {\r\n if ( null !== callback ) {\r\n return Modal.error({title:'系统错误', content: response.data.message});\r\n } else {\r\n throw new Error(response.data.message);\r\n }\r\n }\r\n\r\n if ( null !== callback ) {\r\n callback(response.data.data);\r\n }\r\n return response.data.data;\r\n }\r\n\r\n async snippetExecute( key, params ) {\r\n return this.call('snippet/execute-by-key', {key:key, params:params});\r\n }\r\n}","\r\n","import script from \"./ModuleManagement.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ModuleManagement.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./ActuatorManagement.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ActuatorManagement.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./ActuatorCommandManagement.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ActuatorCommandManagement.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./Page.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./Page.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n\r\n","import script from \"./Snippet.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./Snippet.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./Snippet.vue?vue&type=style&index=0&id=30324df0&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./Page.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./Page.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","\r\n","import script from \"./Page.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./Page.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","import { createApp } from 'vue'\nimport { createPinia } from 'pinia'\nimport { createRouter, createWebHashHistory } from 'vue-router'\nimport Antd from 'ant-design-vue';\nimport * as AntdIcons from '@ant-design/icons-vue'\nimport App from './App.vue'\nimport './styles/tailwindcss.css';\nimport 'ant-design-vue/dist/reset.css';\nimport './styles/app.css';\n\nimport PageDevice from './pages/device/Page.vue';\nimport PageSnippet from './pages/snippet/Page.vue';\nimport PageSetting from './pages/setting/Page.vue';\nconst app = createApp(App);\napp.use(createPinia());\napp.use(createRouter({\n routes : [\n { name:'home', path:'/', component:PageDevice },\n { name:'device', path:'/device', component:PageDevice},\n { name:'snippet', path:'/snippet', component:PageSnippet},\n { name:'setting', path:'/setting', component:PageSetting}\n ],\n history : createWebHashHistory()\n}));\napp.use(Antd);\nfor ( let icon in AntdIcons ) {\n app.component(icon, AntdIcons[icon]);\n}\napp.mount('#app');\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t524: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunkweb\"] = globalThis[\"webpackChunkweb\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504], () => (__webpack_require__(7481)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["mounted","document","title","onMounted","__exports__","ApiClient","getClient","client","constructor","call","name","params","callback","headers","baseURL","window","location","hostname","response","axios","post","data","success","Modal","error","content","message","Error","snippetExecute","key","this","_defineProperty","emits","__emit","open","ref","edit","list","activeItemId","actionRefresh","async","value","actionCreate","actionEditOk","actionDelete","item","id","actionEdit","structuredClone","actionActive","props","__props","module","items","moduleId","sort","a","b","localeCompare","properties","JSON","parse","aid","type","isNew","stringify","setupStepperMotor","actuator","cmds","cmdKey","cmdId","parameters","cmd","actuatorId","connectionKey","cmdFlags","mid","fixedParameters","waitForFinish","watch","columns","dataIndex","align","width","dataSource","editOpen","connections","console","log","actionPaste","command","navigator","clipboard","readText","e","result","actionExec","record","actionCopy","writeText","activeModule","activeActuator","actionModuleActive","actionActuatorActive","snippet","commandColumns","commandOptions","refreshCommandOptionData","modules","moduleItem","label","selectable","children","push","actuators","actuatorItem","commands","option","buildInCmds","actionSnippetCommandChange","extra","undefined","triggerNode","actionSnippetCommandAdd","Date","now","desc","actionSnippetCommandDelete","index","indexOf","splice","actionSnippetSave","actionSnippetDelete","actionSnippetExecute","actionSnippetCommandExecute","cmdParams","actionSnippetCommandMove","offset","targetIndex","length","tmp","actionSnippetCopy","actionSnippetCommandInsertBefore","actionSnippetCommandInsertAfter","immediate","activeSnippet","snippets","snippetTreeData","actionActiveSnippet","keys","event","node","isLeaf","find","tree","path","split","pop","parent","i","pname","child","slice","join","options","actionUpdate","app","createApp","App","use","createPinia","createRouter","routes","component","PageDevice","PageSnippet","PageSetting","history","createWebHashHistory","Antd","icon","AntdIcons","mount","__webpack_module_cache__","__webpack_require__","cachedModule","exports","__webpack_modules__","m","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","Object","every","r","n","getter","__esModule","d","definition","o","defineProperty","enumerable","get","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","forEach","bind","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file