@rainbow-robotics/preview-host 1.3.6-dev.8 → 1.3.7

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 (38) hide show
  1. package/dist/assets/{AmrCapabilityControl.DylvnUEO.js → AmrCapabilityControl.BrB4gWci.js} +1 -1
  2. package/dist/assets/RbLocalizationProvider.CMEaJz_8.js +311 -0
  3. package/dist/assets/__federation_expose_App.BtK24QCB.js +1350 -0
  4. package/dist/assets/__federation_fn_import.DdkEuT6t.js +23 -0
  5. package/dist/assets/__federation_shared_@emotion/{styled.CajkAQAy.js → styled.ETfwMsQo.js} +1 -1
  6. package/dist/assets/__federation_shared_@tanstack/{react-query.DZtZx7JL.js → react-query.fVz8BOIk.js} +1 -1
  7. package/dist/assets/{cssMode.Dtrsp9Hl.js → cssMode.EEbNlNtF.js} +1 -1
  8. package/dist/assets/{emotion-styled-base.browser.esm.BLoY4bbE.js → emotion-styled-base.browser.esm.BIcjgOzg.js} +1 -1
  9. package/dist/assets/{freemarker2.CyJpVLMx.js → freemarker2.CnBD5I4p.js} +1 -1
  10. package/dist/assets/{handlebars.CsnXKzpH.js → handlebars.COGiavr-.js} +1 -1
  11. package/dist/assets/{html.Cs-v4IId.js → html.BigkG63T.js} +1 -1
  12. package/dist/assets/{htmlMode.BkLJ-g13.js → htmlMode.BFqQcR9K.js} +1 -1
  13. package/dist/assets/{index.B34TfqNB.js → index.1gxtOcyM.js} +1 -1
  14. package/dist/assets/index.BFyW4OKK.js +1 -0
  15. package/dist/assets/{MapInfo.CrdLZcke.js → index.D7QGPpBS.js} +6 -11
  16. package/dist/assets/{javascript.CnXk03IN.js → javascript.CmJH3eOS.js} +1 -1
  17. package/dist/assets/{jsonMode.DHUETSBC.js → jsonMode.XZLue_kY.js} +1 -1
  18. package/dist/assets/{liquid.ycj1GnlX.js → liquid.kUSJggwm.js} +1 -1
  19. package/dist/assets/{lspLanguageFeatures.qBXuaIUh.js → lspLanguageFeatures.DgJgA_Mi.js} +1 -1
  20. package/dist/assets/{mdx.DQv9SiE_.js → mdx.DuUa6LG4.js} +1 -1
  21. package/dist/assets/{python.CGG4dQnL.js → python.4mFHFFoP.js} +1 -1
  22. package/dist/assets/{razor.BfFBX4H4.js → razor.CVLwv3TS.js} +1 -1
  23. package/dist/assets/remoteEntry.js +1 -1
  24. package/dist/assets/{tsMode.BRgsBy91.js → tsMode.CXJykgGy.js} +1 -1
  25. package/dist/assets/{typescript.BTl_2OW3.js → typescript.DgyEkW4L.js} +1 -1
  26. package/dist/assets/useFileDownload.BFL8lywd.js +4753 -0
  27. package/dist/assets/{xml.CCn6EavV.js → xml.BEm17y6w.js} +1 -1
  28. package/dist/assets/{yaml.D2ikp_I-.js → yaml.CEKLGBGL.js} +1 -1
  29. package/dist/imgs/nexus/forms/gripper/gripper_23.png +0 -0
  30. package/dist/index.html +7 -8
  31. package/dist/plugin-shared/plugin-ui_react.js +1 -1
  32. package/package.json +1 -1
  33. package/dist/assets/RbLocalizationProvider.929YVAAi.js +0 -301
  34. package/dist/assets/__federation_expose_App.MoFBQejr.js +0 -1288
  35. package/dist/assets/__federation_fn_import.ByOnqCI5.js +0 -24
  36. package/dist/assets/index.BHxdk7pU.js +0 -1
  37. package/dist/assets/index.BkLy899B.js +0 -1
  38. package/dist/assets/useJsonFileDownload.DzAbJDyG.js +0 -4773
@@ -1 +1 @@
1
- import{importShared as f}from"./__federation_fn_import.ByOnqCI5.js";import{cw as g,I as s,j as t,X as v,V as p,c as b,c1 as c,bI as E,aX as O,b0 as F,W as B,bt as P,bF as _,_ as T,fE as w,gA as R}from"./RbLocalizationProvider.929YVAAi.js";import{b as I}from"./index.BkLy899B.js";const{useQuery:L}=await f("@tanstack/react-query"),M={skipErrorToast:!0},C=[{key:"dock",endpoint:"/{robot_model}/capability/dock",labelKey:"move.amr.rightPanel.capability.dock"},{key:"io",endpoint:"/{robot_model}/capability/Io",labelKey:"move.amr.rightPanel.capability.io"},{key:"camera",endpoint:"/{robot_model}/capability/camera",labelKey:"move.amr.rightPanel.capability.camera"},{key:"lidar2d",endpoint:"/{robot_model}/capability/lidar2d",labelKey:"move.amr.rightPanel.capability.lidar2d"},{key:"lidar3d",endpoint:"/{robot_model}/capability/lidar3d",labelKey:"move.amr.rightPanel.capability.lidar3d"},{key:"imu",endpoint:"/{robot_model}/capability/imu",labelKey:"move.amr.rightPanel.capability.imu"},{key:"safetyBumper",endpoint:"/{robot_model}/capability/safetyBumper",labelKey:"move.amr.rightPanel.capability.safetyBumper"},{key:"safetyInterlock",endpoint:"/{robot_model}/capability/safetyInterlock",labelKey:"move.amr.rightPanel.capability.safetyInterlock"},{key:"safetyObstacle",endpoint:"/{robot_model}/capability/safetyObstacle",labelKey:"move.amr.rightPanel.capability.safetyObstacle"},{key:"safetyOperationStop",endpoint:"/{robot_model}/capability/safetyOperationStop",labelKey:"move.amr.rightPanel.capability.safetyOperationStop"},{key:"safetySpeedControl",endpoint:"/{robot_model}/capability/safetySpeedControl",labelKey:"move.amr.rightPanel.capability.safetySpeedControl"},{key:"tabos",endpoint:"/{robot_model}/capability/tabos",labelKey:"move.amr.rightPanel.capability.tabos"}],K=e=>typeof e=="object"&&e!==null&&"enabled"in e&&e.enabled===!1,q=e=>{if(e instanceof Error)return e.message;if(typeof e=="object"&&e!==null&&"message"in e){const a=e.message;if(typeof a=="string")return a}},U=async({robot_model:e})=>{const a=await Promise.allSettled(C.map(l=>{const r=l.endpoint.replace("{robot_model}",e);return I.get(r,M)}));return C.map((l,r)=>{const n=a[r];return n.status==="fulfilled"?{...l,supported:!K(n.value),data:n.value}:{...l,supported:!1,data:null,errorMessage:q(n.reason)}})},$=({robot_model:e,enabled:a=!0})=>L({queryKey:["amrCapabilities",e],queryFn:()=>U({robot_model:e}),enabled:!!e&&a,staleTime:5*1e3,gcTime:60*1e3}),{useMutation:V}=await f("@tanstack/react-query"),j=()=>V({mutationFn:({robot_model:e,target:a,frequency:l})=>I.post(`/${e}/control/streamFrequency`,{target:a,frequency:Math.min(10,Math.max(0,l))})}),{useState:k}=await f("react"),G=4294967295,x=e=>{if(!(e==null||e===G))return`${e} ms`},Y={0:"NONE",1:"CHARGING",2:"COMPLETE",3:"FAIL",4:"CANCEL"},z={0:"DEFAULT",1:"TABOS"},H={0:"CABLE",1:"CONTACT",2:"INDUCTIVE"},X={0:"RPLIDAR",1:"SICK",2:"LAKI",3:"LIVOX",4:"HOKUYO"},Q={0:"ORBBEC"},i=({label:e,children:a})=>s(p,{className:"items-center justify-between gap-3",children:[t("span",{className:"typo-compact-xs-normal text-fg-subtle shrink-0",children:e}),t("span",{className:b("typo-compact-xs-normal text-right",a!=null?"text-fg-default":"text-fg-subtler"),children:a??"—"})]}),W={default:"gray",success:"green",warning:"orange",danger:"red"},y=({label:e,variant:a="default"})=>t(T,{type:"soft",color:W[a],children:e}),h=({label:e,value:a})=>t(i,{label:e,children:t(y,{label:a?"ON":"OFF",variant:a?"success":"default"})}),u=({label:e,bits:a})=>s(c,{className:"gap-1",children:[t("span",{className:"typo-compact-xs-normal text-fg-subtle",children:e}),a?.length?t(p,{className:"gap-1",children:a.map((l,r)=>t("div",{className:b("size-4 rounded-sm border text-center leading-4",l?"border-fg-success bg-fill-success-subtlest":"border-border-subtler bg-fill-disabled"),children:t("span",{className:b("typo-compact-2xs-normal",l?"text-fg-success":"text-fg-subtler"),children:r})},r))}):t("span",{className:"typo-compact-xs-normal text-fg-subtler",children:"—"})]}),N=({label:e,connection:a,rows:l,children:r})=>{const{t:n}=g();return s(c,{className:"bg-fill-disabled gap-1.5 rounded-md p-2.5",children:[s(p,{className:"items-center justify-between gap-3",children:[t("span",{className:"typo-compact-xs-semibold text-fg-default min-w-0 break-words",children:e}),t("span",{className:b("typo-compact-2xs-medium shrink-0",a?"text-fg-success":"text-fg-subtler"),children:n(a?"settings.amr.frs.status.connected":"settings.amr.frs.status.disconnected")})]}),l.map(({key:o,value:d})=>t(i,{label:o,children:d},o)),r]})},J=({label:e,value:a})=>t(T,{type:"soft",color:a?"green":"gray",children:s(p,{className:"items-center gap-1",children:[a?t(w,{className:"size-3"}):t(R,{className:"size-3"}),t("span",{children:e}),t("span",{className:"font-semibold",children:a?"On":"Off"})]})}),D=({flags:e})=>t(p,{className:"flex-wrap gap-1.5",children:e.map(({label:a,value:l})=>t(J,{label:a,value:l},a))}),Z=({streams:e})=>e.length?s(c,{className:"border-subtle mt-0.5 gap-1 border-t pt-1.5",children:[t("span",{className:"typo-compact-xs-normal text-fg-subtle",children:"Streams"}),t(p,{className:"flex-wrap gap-1",children:e.map(a=>s(p,{className:"border-subtle bg-alt-1 items-center gap-1 rounded px-1.5 py-1",children:[t("span",{className:"typo-compact-2xs-semibold text-fg-default",children:a.quality}),s("span",{className:"typo-compact-2xs-normal text-fg-subtle",children:[a.width,"x",a.height]}),s("span",{className:"typo-compact-2xs-normal text-fg-subtler",children:[a.fps,"fps"]})]},`${a.camId}-${a.quality}`))})]}):null,ee=({data:e})=>{const a=Y[e.chargeState??-1]??String(e.chargeState),l=e.chargeState===1?"success":e.chargeState===3?"danger":e.chargeState===4?"warning":"default";return s(c,{className:"gap-2",children:[s(c,{className:"bg-fill-disabled gap-2 rounded-md p-2.5",children:[t(h,{label:"Dock State",value:e.dockState}),t(i,{label:"Charge State",children:t(y,{label:a,variant:l})}),s(i,{label:"Battery",children:[e.batteryPercent?.toFixed(1)," %"]}),s(i,{label:"Charge Current",children:[e.chargeCurrent?.toFixed(2)," A"]}),s(i,{label:"Contact Voltage",children:[e.contactVoltage?.toFixed(2)," V"]}),t(i,{label:"Battery Type",children:t(y,{label:z[e.batteryType??0]??"—"})})]}),s(p,{className:"items-center gap-1.5 px-0.5",children:[t("span",{className:"typo-compact-xs-normal text-fg-subtle shrink-0",children:"Charge Type"}),e.chargeType?.length?t(p,{className:"flex-wrap gap-1.5",children:e.chargeType.map(r=>t(y,{label:H[r]??String(r),variant:"default"},r))}):t("span",{className:"typo-compact-xs-normal text-fg-subtler",children:"—"})]})]})},ae=({data:e})=>s(c,{className:"gap-3 p-0.5",children:[t(u,{label:"MCU0 DIO",bits:e.mcu0Dio}),t(u,{label:"MCU1 DIO",bits:e.mcu1Dio}),t(u,{label:"MCU0 DIN",bits:e.mcu0Din}),t(u,{label:"MCU1 DIN",bits:e.mcu1Din})]}),te=({data:e})=>s(c,{className:"gap-2",children:[t(D,{flags:[{label:"Obstacle",value:e.enabledObs},{label:"Depth",value:e.enabledDepth},{label:"Filter",value:e.enabledFilter}]}),e.info?.length?e.info.map((a,l)=>{const r=typeof a.type=="number"?Q[a.type]??String(a.type):a.type??"—",n=a.camId??a.index??l,o=e.rtspInfo?.filter(d=>d.camId===n)??[];return t(N,{label:`Camera ${n}${a.serial?` · ${a.serial}`:""}`,connection:a.connection,rows:[{key:"Type",value:r},{key:"TF",value:a.tf?.length?a.tf.map(d=>d.toFixed(2)).join(", "):void 0},{key:"Data Age",value:x(a.dataAgeMs)}],children:t(Z,{streams:o})},l)}):t("span",{className:"typo-compact-xs-normal text-fg-subtler px-0.5",children:"—"})]}),A=({data:e,is3d:a=!1})=>s(c,{className:"gap-2",children:[t(D,{flags:[{label:"Obstacle",value:e.enabledObs}]}),e.info?.length?e.info.map((l,r)=>t(N,{label:`Lidar ${l.index??r}${l.serial?` · ${l.serial}`:""}`,connection:l.connection,rows:[{key:"Type",value:X[l.type]??String(l.type??"—")},...a?[]:[{key:"IP",value:l.ip}],{key:"Safety",value:l.safety!==void 0?l.safety?"Safety":"Normal":void 0},{key:"TF",value:l.tf?.length?l.tf.map(n=>n.toFixed(2)).join(", "):void 0},{key:"Data Age",value:x(l.dataAgeMs)}]},r)):t("span",{className:"typo-compact-xs-normal text-fg-subtler px-0.5",children:"—"})]}),le=({data:e})=>t(c,{className:"gap-2",children:e.info?.length?e.info.map((a,l)=>t(N,{label:`IMU ${a.index??l}${a.serial?` · ${a.serial}`:""}`,connection:a.connection,rows:[{key:"Type",value:a.type===1?"IMU":"DEFAULT"},{key:"Data Age",value:x(a.dataAgeMs)}]},l)):t("span",{className:"typo-compact-xs-normal text-fg-subtler px-0.5",children:"—"})}),se=({data:e})=>{const a=[{label:"Bumper State",value:e.bumperState},{label:"Interlock State",value:e.interlockState},{label:"Obstacle Detect",value:e.obsDetect},{label:"Operation Stop",value:e.operationStopState},{label:"Speed Control",value:e.speedControlState}].filter(l=>l.value!==void 0);return s(c,{className:"bg-fill-disabled gap-2 rounded-md p-2.5",children:[t(h,{label:"Enabled",value:e.enabled}),a.map(l=>t(h,{label:l.label,value:l.value},l.label))]})},re=({data:e})=>s(c,{className:"bg-fill-disabled gap-2 rounded-md p-2.5",children:[s(i,{label:"Voltage",children:[e.tabosVoltage?.toFixed(2)," V"]}),s(i,{label:"Current",children:[e.tabosCurrent?.toFixed(2)," A"]}),s(i,{label:"SOC",children:[e.tabosSoc?.toFixed(1)," %"]}),s(i,{label:"SOH",children:[e.tabosSoh?.toFixed(1)," %"]}),s(i,{label:"Temp",children:[e.tabosTemp?.toFixed(1)," °C"]})]}),ne=({capKey:e,data:a})=>{switch(e){case"dock":return t(ee,{data:a});case"io":return t(ae,{data:a});case"camera":return t(te,{data:a});case"lidar2d":return t(A,{data:a});case"lidar3d":return t(A,{data:a,is3d:!0});case"imu":return t(le,{data:a});case"tabos":return t(re,{data:a});default:return t(se,{data:a})}},ce=[{label:"LiDAR 2D",value:"lidar2d"},{label:"LiDAR 3D",value:"lidar3d"},{label:"OBS Map",value:"obsMap"}],oe=({robotModel:e})=>{const[a,l]=k("lidar2d"),[r,n]=k("1"),{mutate:o,isPending:d}=j();return s(c,{className:"gap-2 pb-1",children:[s(p,{className:"items-center justify-between gap-2",children:[t("span",{className:"typo-compact-xs-normal text-fg-subtle",children:"Target"}),t(F,{size:"2xs",variant:"brand",disabled:d,onClick:()=>{const m=Math.min(10,Math.max(0,Number(r)));o({robot_model:e,target:a,frequency:m})},children:"Set"})]}),t(P,{size:"sm",value:a,handleChange:m=>l(m),children:ce.map(({label:m,value:S})=>t(B,{value:S,children:m},S))}),t(p,{className:"items-center gap-2",children:t(_,{className:"flex-1",size:"sm",value:r,step:1,digit:0,fixedDigit:0,min:"0",max:"10",handleChange:m=>n(m)})})]})},ie=({item:e})=>{const{t:a}=g();return e.supported?e.data?t("div",{className:"pb-1",children:t(ne,{capKey:e.key,data:e.data})}):null:t("p",{className:"typo-compact-xs-normal text-fg-disabled px-1 py-2",children:a("move.amr.rightPanel.capability.status.notSupported")})},pe=()=>{const{t:e}=g();return t(O,{className:"flex-1 [&_[data-slot='empty-view-section']]:h-full",type:"icon",icon:t(E,{size:20}),message:e("move.amr.rightPanel.capability.status.loading")})},ye=({className:e,robotModel:a})=>{const{t:l}=g(),{data:r,isLoading:n}=$({robot_model:a});return s(c,{className:b("AmrCapabilityControl h-full min-h-0",e),children:[n&&t(pe,{}),(r??[]).map(o=>t("div",{className:"border-subtler border-b px-1 py-1",children:t(v,{disabled:!o.supported,title:t(p,{className:"w-full items-center justify-between gap-2",children:t("span",{className:b("typo-compact-sm2-semibold min-w-0 truncate",o.supported?"text-fg-default":"text-fg-disabled"),children:l(o.labelKey)})}),children:t(ie,{item:o})})},o.key)),t("div",{className:"border-subtler border-b px-1 py-1",children:t(v,{title:t("span",{className:"typo-compact-sm2-semibold text-fg-default",children:l("move.amr.rightPanel.capability.streamFrequency")}),children:t(oe,{robotModel:a})})})]})};export{ye as default};
1
+ import{importShared as f}from"./__federation_fn_import.DdkEuT6t.js";import{cx as g,H as s,j as t,X as v,U as p,x as b,c1 as c,bI as O,aW as E,a$ as F,V as B,bs as P,bF as _,_ as T,fM as w,gH as R}from"./RbLocalizationProvider.CMEaJz_8.js";import{b as D}from"./index.BFyW4OKK.js";const{useQuery:M}=await f("@tanstack/react-query"),L={skipErrorToast:!0},C=[{key:"dock",endpoint:"/{robot_model}/capability/dock",labelKey:"move.amr.rightPanel.capability.dock"},{key:"io",endpoint:"/{robot_model}/capability/Io",labelKey:"move.amr.rightPanel.capability.io"},{key:"camera",endpoint:"/{robot_model}/capability/camera",labelKey:"move.amr.rightPanel.capability.camera"},{key:"lidar2d",endpoint:"/{robot_model}/capability/lidar2d",labelKey:"move.amr.rightPanel.capability.lidar2d"},{key:"lidar3d",endpoint:"/{robot_model}/capability/lidar3d",labelKey:"move.amr.rightPanel.capability.lidar3d"},{key:"imu",endpoint:"/{robot_model}/capability/imu",labelKey:"move.amr.rightPanel.capability.imu"},{key:"safetyBumper",endpoint:"/{robot_model}/capability/safetyBumper",labelKey:"move.amr.rightPanel.capability.safetyBumper"},{key:"safetyInterlock",endpoint:"/{robot_model}/capability/safetyInterlock",labelKey:"move.amr.rightPanel.capability.safetyInterlock"},{key:"safetyObstacle",endpoint:"/{robot_model}/capability/safetyObstacle",labelKey:"move.amr.rightPanel.capability.safetyObstacle"},{key:"safetyOperationStop",endpoint:"/{robot_model}/capability/safetyOperationStop",labelKey:"move.amr.rightPanel.capability.safetyOperationStop"},{key:"safetySpeedControl",endpoint:"/{robot_model}/capability/safetySpeedControl",labelKey:"move.amr.rightPanel.capability.safetySpeedControl"},{key:"tabos",endpoint:"/{robot_model}/capability/tabos",labelKey:"move.amr.rightPanel.capability.tabos"}],K=e=>typeof e=="object"&&e!==null&&"enabled"in e&&e.enabled===!1,q=e=>{if(e instanceof Error)return e.message;if(typeof e=="object"&&e!==null&&"message"in e){const a=e.message;if(typeof a=="string")return a}},U=async({robot_model:e})=>{const a=await Promise.allSettled(C.map(l=>{const r=l.endpoint.replace("{robot_model}",e);return D.get(r,L)}));return C.map((l,r)=>{const n=a[r];return n.status==="fulfilled"?{...l,supported:!K(n.value),data:n.value}:{...l,supported:!1,data:null,errorMessage:q(n.reason)}})},$=({robot_model:e,enabled:a=!0})=>M({queryKey:["amrCapabilities",e],queryFn:()=>U({robot_model:e}),enabled:!!e&&a,staleTime:5*1e3,gcTime:60*1e3}),{useMutation:V}=await f("@tanstack/react-query"),j=()=>V({mutationFn:({robot_model:e,target:a,frequency:l})=>D.post(`/${e}/control/streamFrequency`,{target:a,frequency:Math.min(10,Math.max(0,l))})}),{useState:k}=await f("react"),G=4294967295,x=e=>{if(!(e==null||e===G))return`${e} ms`},Y={0:"NONE",1:"CHARGING",2:"COMPLETE",3:"FAIL",4:"CANCEL"},z={0:"DEFAULT",1:"TABOS"},H={0:"CABLE",1:"CONTACT",2:"INDUCTIVE"},Q={0:"RPLIDAR",1:"SICK",2:"LAKI",3:"LIVOX",4:"HOKUYO"},X={0:"ORBBEC"},i=({label:e,children:a})=>s(p,{className:"items-center justify-between gap-3",children:[t("span",{className:"typo-compact-xs-normal text-fg-subtle shrink-0",children:e}),t("span",{className:b("typo-compact-xs-normal text-right",a!=null?"text-fg-default":"text-fg-subtler"),children:a??"—"})]}),W={default:"gray",success:"green",warning:"orange",danger:"red"},y=({label:e,variant:a="default"})=>t(T,{type:"soft",color:W[a],children:e}),h=({label:e,value:a})=>t(i,{label:e,children:t(y,{label:a?"ON":"OFF",variant:a?"success":"default"})}),u=({label:e,bits:a})=>s(c,{className:"gap-1",children:[t("span",{className:"typo-compact-xs-normal text-fg-subtle",children:e}),a?.length?t(p,{className:"gap-1",children:a.map((l,r)=>t("div",{className:b("size-4 rounded-sm border text-center leading-4",l?"border-fg-success bg-fill-success-subtlest":"border-border-subtler bg-fill-disabled"),children:t("span",{className:b("typo-compact-2xs-normal",l?"text-fg-success":"text-fg-subtler"),children:r})},r))}):t("span",{className:"typo-compact-xs-normal text-fg-subtler",children:"—"})]}),N=({label:e,connection:a,rows:l,children:r})=>{const{t:n}=g();return s(c,{className:"bg-fill-disabled gap-1.5 rounded-md p-2.5",children:[s(p,{className:"items-center justify-between gap-3",children:[t("span",{className:"typo-compact-xs-semibold text-fg-default min-w-0 break-words",children:e}),t("span",{className:b("typo-compact-2xs-medium shrink-0",a?"text-fg-success":"text-fg-subtler"),children:n(a?"settings.amr.frs.status.connected":"settings.amr.frs.status.disconnected")})]}),l.map(({key:o,value:d})=>t(i,{label:o,children:d},o)),r]})},J=({label:e,value:a})=>t(T,{type:"soft",color:a?"green":"gray",children:s(p,{className:"items-center gap-1",children:[a?t(w,{className:"size-3"}):t(R,{className:"size-3"}),t("span",{children:e}),t("span",{className:"font-semibold",children:a?"On":"Off"})]})}),I=({flags:e})=>t(p,{className:"flex-wrap gap-1.5",children:e.map(({label:a,value:l})=>t(J,{label:a,value:l},a))}),Z=({streams:e})=>e.length?s(c,{className:"border-subtle mt-0.5 gap-1 border-t pt-1.5",children:[t("span",{className:"typo-compact-xs-normal text-fg-subtle",children:"Streams"}),t(p,{className:"flex-wrap gap-1",children:e.map(a=>s(p,{className:"border-subtle bg-alt-1 items-center gap-1 rounded px-1.5 py-1",children:[t("span",{className:"typo-compact-2xs-semibold text-fg-default",children:a.quality}),s("span",{className:"typo-compact-2xs-normal text-fg-subtle",children:[a.width,"x",a.height]}),s("span",{className:"typo-compact-2xs-normal text-fg-subtler",children:[a.fps,"fps"]})]},`${a.camId}-${a.quality}`))})]}):null,ee=({data:e})=>{const a=Y[e.chargeState??-1]??String(e.chargeState),l=e.chargeState===1?"success":e.chargeState===3?"danger":e.chargeState===4?"warning":"default";return s(c,{className:"gap-2",children:[s(c,{className:"bg-fill-disabled gap-2 rounded-md p-2.5",children:[t(h,{label:"Dock State",value:e.dockState}),t(i,{label:"Charge State",children:t(y,{label:a,variant:l})}),s(i,{label:"Battery",children:[e.batteryPercent?.toFixed(1)," %"]}),s(i,{label:"Charge Current",children:[e.chargeCurrent?.toFixed(2)," A"]}),s(i,{label:"Contact Voltage",children:[e.contactVoltage?.toFixed(2)," V"]}),t(i,{label:"Battery Type",children:t(y,{label:z[e.batteryType??0]??"—"})})]}),s(p,{className:"items-center gap-1.5 px-0.5",children:[t("span",{className:"typo-compact-xs-normal text-fg-subtle shrink-0",children:"Charge Type"}),e.chargeType?.length?t(p,{className:"flex-wrap gap-1.5",children:e.chargeType.map(r=>t(y,{label:H[r]??String(r),variant:"default"},r))}):t("span",{className:"typo-compact-xs-normal text-fg-subtler",children:"—"})]})]})},ae=({data:e})=>s(c,{className:"gap-3 p-0.5",children:[t(u,{label:"MCU0 DIO",bits:e.mcu0Dio}),t(u,{label:"MCU1 DIO",bits:e.mcu1Dio}),t(u,{label:"MCU0 DIN",bits:e.mcu0Din}),t(u,{label:"MCU1 DIN",bits:e.mcu1Din})]}),te=({data:e})=>s(c,{className:"gap-2",children:[t(I,{flags:[{label:"Obstacle",value:e.enabledObs},{label:"Depth",value:e.enabledDepth},{label:"Filter",value:e.enabledFilter}]}),e.info?.length?e.info.map((a,l)=>{const r=typeof a.type=="number"?X[a.type]??String(a.type):a.type??"—",n=a.camId??a.index??l,o=e.rtspInfo?.filter(d=>d.camId===n)??[];return t(N,{label:`Camera ${n}${a.serial?` · ${a.serial}`:""}`,connection:a.connection,rows:[{key:"Type",value:r},{key:"TF",value:a.tf?.length?a.tf.map(d=>d.toFixed(2)).join(", "):void 0},{key:"Data Age",value:x(a.dataAgeMs)}],children:t(Z,{streams:o})},l)}):t("span",{className:"typo-compact-xs-normal text-fg-subtler px-0.5",children:"—"})]}),A=({data:e,is3d:a=!1})=>s(c,{className:"gap-2",children:[t(I,{flags:[{label:"Obstacle",value:e.enabledObs}]}),e.info?.length?e.info.map((l,r)=>t(N,{label:`Lidar ${l.index??r}${l.serial?` · ${l.serial}`:""}`,connection:l.connection,rows:[{key:"Type",value:Q[l.type]??String(l.type??"—")},...a?[]:[{key:"IP",value:l.ip}],{key:"Safety",value:l.safety!==void 0?l.safety?"Safety":"Normal":void 0},{key:"TF",value:l.tf?.length?l.tf.map(n=>n.toFixed(2)).join(", "):void 0},{key:"Data Age",value:x(l.dataAgeMs)}]},r)):t("span",{className:"typo-compact-xs-normal text-fg-subtler px-0.5",children:"—"})]}),le=({data:e})=>t(c,{className:"gap-2",children:e.info?.length?e.info.map((a,l)=>t(N,{label:`IMU ${a.index??l}${a.serial?` · ${a.serial}`:""}`,connection:a.connection,rows:[{key:"Type",value:a.type===1?"IMU":"DEFAULT"},{key:"Data Age",value:x(a.dataAgeMs)}]},l)):t("span",{className:"typo-compact-xs-normal text-fg-subtler px-0.5",children:"—"})}),se=({data:e})=>{const a=[{label:"Bumper State",value:e.bumperState},{label:"Interlock State",value:e.interlockState},{label:"Obstacle Detect",value:e.obsDetect},{label:"Operation Stop",value:e.operationStopState},{label:"Speed Control",value:e.speedControlState}].filter(l=>l.value!==void 0);return s(c,{className:"bg-fill-disabled gap-2 rounded-md p-2.5",children:[t(h,{label:"Enabled",value:e.enabled}),a.map(l=>t(h,{label:l.label,value:l.value},l.label))]})},re=({data:e})=>s(c,{className:"bg-fill-disabled gap-2 rounded-md p-2.5",children:[s(i,{label:"Voltage",children:[e.tabosVoltage?.toFixed(2)," V"]}),s(i,{label:"Current",children:[e.tabosCurrent?.toFixed(2)," A"]}),s(i,{label:"SOC",children:[e.tabosSoc?.toFixed(1)," %"]}),s(i,{label:"SOH",children:[e.tabosSoh?.toFixed(1)," %"]}),s(i,{label:"Temp",children:[e.tabosTemp?.toFixed(1)," °C"]})]}),ne=({capKey:e,data:a})=>{switch(e){case"dock":return t(ee,{data:a});case"io":return t(ae,{data:a});case"camera":return t(te,{data:a});case"lidar2d":return t(A,{data:a});case"lidar3d":return t(A,{data:a,is3d:!0});case"imu":return t(le,{data:a});case"tabos":return t(re,{data:a});default:return t(se,{data:a})}},ce=[{label:"LiDAR 2D",value:"lidar2d"},{label:"LiDAR 3D",value:"lidar3d"},{label:"OBS Map",value:"obsMap"}],oe=({robotModel:e})=>{const[a,l]=k("lidar2d"),[r,n]=k("1"),{mutate:o,isPending:d}=j();return s(c,{className:"gap-2 pb-1",children:[s(p,{className:"items-center justify-between gap-2",children:[t("span",{className:"typo-compact-xs-normal text-fg-subtle",children:"Target"}),t(F,{size:"2xs",variant:"brand",disabled:d,onClick:()=>{const m=Math.min(10,Math.max(0,Number(r)));o({robot_model:e,target:a,frequency:m})},children:"Set"})]}),t(P,{size:"sm",value:a,handleChange:m=>l(m),children:ce.map(({label:m,value:S})=>t(B,{value:S,children:m},S))}),t(p,{className:"items-center gap-2",children:t(_,{className:"flex-1",size:"sm",value:r,step:1,digit:0,fixedDigit:0,min:"0",max:"10",handleChange:m=>n(m)})})]})},ie=({item:e})=>{const{t:a}=g();return e.supported?e.data?t("div",{className:"pb-1",children:t(ne,{capKey:e.key,data:e.data})}):null:t("p",{className:"typo-compact-xs-normal text-fg-disabled px-1 py-2",children:a("move.amr.rightPanel.capability.status.notSupported")})},pe=()=>{const{t:e}=g();return t(E,{className:"flex-1 [&_[data-slot='empty-view-section']]:h-full",type:"icon",icon:t(O,{size:20}),message:e("move.amr.rightPanel.capability.status.loading")})},ye=({className:e,robotModel:a})=>{const{t:l}=g(),{data:r,isLoading:n}=$({robot_model:a});return s(c,{className:b("AmrCapabilityControl h-full min-h-0",e),children:[n&&t(pe,{}),(r??[]).map(o=>t("div",{className:"border-subtler border-b px-1 py-1",children:t(v,{disabled:!o.supported,title:t(p,{className:"w-full items-center justify-between gap-2",children:t("span",{className:b("typo-compact-sm2-semibold min-w-0 truncate",o.supported?"text-fg-default":"text-fg-disabled"),children:l(o.labelKey)})}),children:t(ie,{item:o})})},o.key)),t("div",{className:"border-subtler border-b px-1 py-1",children:t(v,{title:t("span",{className:"typo-compact-sm2-semibold text-fg-default",children:l("move.amr.rightPanel.capability.streamFrequency")}),children:t(oe,{robotModel:a})})})]})};export{ye as default};