@camstack/addon-admin-ui 1.2.488 → 1.2.489

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 (87) hide show
  1. package/dist/assets/{AddonAssetIcon-D0sLOBuE.js → AddonAssetIcon-C0cWByHj.js} +1 -1
  2. package/dist/assets/Addons-DtmmHLxt.js +5 -0
  3. package/dist/assets/{AdminPage-Bm98o4hS.js → AdminPage-D6Yva5zf.js} +1 -1
  4. package/dist/assets/{AdminSectionedPage-DJf3yj1e.js → AdminSectionedPage-ytDsnoAA.js} +1 -1
  5. package/dist/assets/AiProfiles-Dr62eghf.js +3 -0
  6. package/dist/assets/BrokerEditorDialog-CTEagRft.js +1 -0
  7. package/dist/assets/{Build-eOPgiJkS.js → Build-B8CmNZth.js} +4 -4
  8. package/dist/assets/{Calendars-B6wuMidY.js → Calendars-BzsJnrEA.js} +1 -1
  9. package/dist/assets/Cluster-C2D1ovUW.js +1 -0
  10. package/dist/assets/{CompositionBlockEditor-DJDcpaAM.js → CompositionBlockEditor-CYmfatQE.js} +1 -1
  11. package/dist/assets/{CompositionEditorPage-2D6sSx-T.js → CompositionEditorPage-B5Cgu9cj.js} +1 -1
  12. package/dist/assets/Data-ChStbBhF.js +2 -0
  13. package/dist/assets/{DeviceDetail-CjwCeby2.js → DeviceDetail-B4rdvagQ.js} +2 -2
  14. package/dist/assets/{DeviceDoActionFields-BIglpx6B.js → DeviceDoActionFields-GHZBRE4Q.js} +1 -1
  15. package/dist/assets/{Devices-B_qA6OPU.js → Devices-Bzyikktm.js} +1 -1
  16. package/dist/assets/{EmbedPlayerPage-D4WZcOrL.js → EmbedPlayerPage-ClpQaFoO.js} +1 -1
  17. package/dist/assets/{HelperWizard-DpSct7dY.js → HelperWizard-C9VjtAAi.js} +2 -2
  18. package/dist/assets/History-C6N6VRgs.js +1 -0
  19. package/dist/assets/{Identity-CpsGUQUL.js → Identity-CvFSqL46.js} +1 -1
  20. package/dist/assets/IntegrationDetail-AVnEA7GO.js +1 -0
  21. package/dist/assets/IntegrationHub-BqWPAkYu.js +1 -0
  22. package/dist/assets/Integrations-BYiw8_da.js +1 -0
  23. package/dist/assets/Integrations-CBEyPYvE.js +1 -0
  24. package/dist/assets/{Library-B5hJS9Eu.js → Library-BcuUHsq3.js} +1 -1
  25. package/dist/assets/Locations-BrPK_nfE.js +3 -0
  26. package/dist/assets/{Logs-BMGBLu9D.js → Logs-D_Jnlf_J.js} +1 -1
  27. package/dist/assets/MyAccess-DjL1Z681.js +2 -0
  28. package/dist/assets/Network-DjKf4STc.js +1 -0
  29. package/dist/assets/{NodeAddonsSettingsPanel-SKEgEbfP.js → NodeAddonsSettingsPanel-ivvFi7qU.js} +1 -1
  30. package/dist/assets/{Notifications-DLBWNg7M.js → Notifications-Ck0_YzEY.js} +1 -1
  31. package/dist/assets/{Pipeline-ByR1YehD.js → Pipeline-4J5lhNWd.js} +1 -1
  32. package/dist/assets/Recordings-Ce8DTG1O.js +1 -0
  33. package/dist/assets/{ScanNetworkModal-DzV87kuW.js → ScanNetworkModal-81xkyJSk.js} +1 -1
  34. package/dist/assets/SessionsList-Dgrg9zT1.js +2 -0
  35. package/dist/assets/{Showroom-Bl7Xw5HQ.js → Showroom-CkHdCDH1.js} +1 -1
  36. package/dist/assets/{System-BwIT8r3c.js → System-HvIXTTB1.js} +1 -1
  37. package/dist/assets/{Terminal-DHnbg7SD.js → Terminal-CwE2WbSi.js} +5 -5
  38. package/dist/assets/{Viewer-ClMEneNi.js → Viewer-B6suHwLq.js} +1 -1
  39. package/dist/assets/{_virtual_mf-localSharedImportMap___mfe_internal__admin_ui_host-CcFWmBqL.js → _virtual_mf-localSharedImportMap___mfe_internal__admin_ui_host-BkS64PhS.js} +1 -1
  40. package/dist/assets/{addon-icons-context-CrIg7jRp.js → addon-icons-context-BY_MClqz.js} +1 -1
  41. package/dist/assets/{assignment-candidates-C23w5MN2.js → assignment-candidates-CCD35Rpj.js} +1 -1
  42. package/dist/assets/{authed-media-DaZ7aBed.js → authed-media-Dow1_6zk.js} +1 -1
  43. package/dist/assets/{board-model-GgYmAssp.js → board-model-CGmvb_0S.js} +1 -1
  44. package/dist/assets/{device-integration-icon-CL_G93QX.js → device-integration-icon-Dg_7SOuH.js} +1 -1
  45. package/dist/assets/device-picker-model-CdWcoivb.js +1 -0
  46. package/dist/assets/{format-B7ptHU_u.js → format-CvRuKl82.js} +1 -1
  47. package/dist/assets/{hostInit-r7ojSb2_.js → hostInit-C4zImIaq.js} +1 -1
  48. package/dist/assets/i18n-Dgilx0WT.js +1 -0
  49. package/dist/assets/{index-CizVDZHi.js → index-4kmzPYxW.js} +3 -3
  50. package/dist/assets/index-DTd1apaT.css +2 -0
  51. package/dist/assets/{linked-devices-model-B5DZflLR.js → linked-devices-model-DBaDc0Fe.js} +1 -1
  52. package/dist/assets/{location-owned-usage-DRF9VnKV.js → location-owned-usage-D20qY7jM.js} +1 -1
  53. package/dist/assets/{mf-entry-bootstrap-0-96140f20.js → mf-entry-bootstrap-0-3901d897.js} +2 -2
  54. package/dist/assets/mount-CdWcoivb.js +1 -0
  55. package/dist/assets/remoteEntry-BNS8ga8f.js +1 -0
  56. package/dist/assets/{src-DVuhwnP3.js → src-DzfpPZrG.js} +9 -9
  57. package/dist/assets/step-inspector-model-HSCaPOVt.js +1 -0
  58. package/dist/assets/{use-scenes-feed-QajBxHOY.js → use-scenes-feed-BUQTm5ig.js} +1 -1
  59. package/dist/assets/{use-stationary-objects-AMw862tO.js → use-stationary-objects-B4f1cFoy.js} +1 -1
  60. package/dist/assets/useEventInvalidation-CdWcoivb.js +1 -0
  61. package/dist/assets/{useNodeUrlSelection-B-2x_sVg.js → useNodeUrlSelection-BKSL_pMO.js} +1 -1
  62. package/dist/assets/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__admin_ui_host__remoteEntry-_hash_-Dpshj8Bv.js → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__admin_ui_host__remoteEntry-_hash_-CF1E4s_B.js} +2 -2
  63. package/dist/index.html +7 -7
  64. package/dist/server/addon.js +1 -1
  65. package/package.json +1 -1
  66. package/dist/assets/Addons-CZCQrk7s.js +0 -5
  67. package/dist/assets/AiProfiles-evs8uf02.js +0 -3
  68. package/dist/assets/BrokerEditorDialog-B4IYR2V5.js +0 -1
  69. package/dist/assets/Cluster-BInnf_-U.js +0 -1
  70. package/dist/assets/Data-DqaIHJmW.js +0 -2
  71. package/dist/assets/History-Ce6Ogsq9.js +0 -1
  72. package/dist/assets/IntegrationDetail-CBkpemj6.js +0 -1
  73. package/dist/assets/IntegrationHub-HoJLco7C.js +0 -1
  74. package/dist/assets/Integrations-DCVw5Nwp.js +0 -1
  75. package/dist/assets/Integrations-Q-XZjb4J.js +0 -1
  76. package/dist/assets/Locations-C4_IvvDp.js +0 -3
  77. package/dist/assets/MyAccess-Cj2tBcDx.js +0 -2
  78. package/dist/assets/Network-C2KtyX-M.js +0 -1
  79. package/dist/assets/Recordings-DGVoXt04.js +0 -1
  80. package/dist/assets/SessionsList-Cq-5x1H5.js +0 -2
  81. package/dist/assets/device-picker-model-Di8k2vXt.js +0 -1
  82. package/dist/assets/i18n-CbVhWDGQ.js +0 -1
  83. package/dist/assets/index-D4id__eL.css +0 -2
  84. package/dist/assets/mount-Di8k2vXt.js +0 -1
  85. package/dist/assets/remoteEntry-CIvYUfKV.js +0 -1
  86. package/dist/assets/step-inspector-model-CtgWliQT.js +0 -1
  87. package/dist/assets/useEventInvalidation-Di8k2vXt.js +0 -1
@@ -1 +1 @@
1
- import{C as e,K as t,S as n,a as r,et as i}from"./_virtual_mf___mfe_internal__admin_ui_host__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-CEyXHAdg.js";import{ot as a}from"./player-overlays-nQJCQERn.js";import{an as o,cn as s,dn as c,fn as l,ln as u,on as d,sn as f,un as p}from"./client-CdHPjeIs.js";import{R as m}from"./src-DVuhwnP3.js";import{t as h}from"./i18n-CbVhWDGQ.js";import{t as g}from"./useTranslation-BJr-n0es.js";import"./index-CizVDZHi.js";i();var _=6e4;function v(e){let t=a();return r({queryKey:[`device-do-action`,`bound-caps`,e],enabled:e>0,staleTime:_,queryFn:async()=>{let n=await t.trpcClient.deviceManager.getBindings.query({deviceId:e});return[...new Set(n.entries.map(e=>e.capName))].sort((e,t)=>e.localeCompare(t))}})}function y(e){let t=a(),n=[...new Set(e.filter(e=>e>0))].sort((e,t)=>e-t);return r({queryKey:[`device-do-action`,`bound-caps-batch`,n],enabled:n.length>0,staleTime:_,queryFn:async()=>{let e=await t.trpcClient.deviceManager.getBindingsBatch.query({deviceIds:n}),r=new Map;for(let t of e)r.set(t.deviceId,[...new Set(t.entries.map(e=>e.capName))].sort((e,t)=>e.localeCompare(t)));return r}})}var b=`mt-1 w-full rounded border border-border bg-background px-2 py-1 text-xs`,x=`block text-[11px] font-medium text-foreground`,S=`deviceId`;function C(e,t){return t.length===0?0:t.length===1?t[0]:t.find(t=>!e.includes(t))??t[t.length-1]}function w(e,t,n){if(t.length===0)return[];if(t.length===1)return t;let r=t.find(t=>!e.includes(t));if(r===void 0)return t;let i=n(r);if(i===void 0)return[r];let a=e[0]??t.find(e=>e!==r);if(a===void 0)return[r];let o=n(a);return o===void 0||!l(o,i)?[r]:t.filter(e=>{let t=n(e);return t!==void 0&&l(o,t)})}function T(e){return e.length===0?0:e.length===1?e[0]:[...e]}function E(e){return typeof e==`number`?e>0?[e]:[]:Array.isArray(e)?e.filter(e=>e>0):[]}function D(e,t){return{deviceId:e,cap:t.cap,method:t.method,...t.args===void 0?{}:{args:{...t.args}}}}function O(e,t){return h.t(`deviceDoAction.customLabel`,{name:`${e}.${t}`})}function k({value:r,onChange:i,devices:a,listState:h,fleet:_,allowTriggerDevice:k=!1,allowMultiSameFamily:A=!1,testId:j=`device-do-action`}){let{t:M}=g(),N=typeof r.deviceId!=`number`&&!Array.isArray(r.deviceId),P=E(r.deviceId),F=t(()=>a.filter(e=>p(String(e.type??``))),[a]),I=t(()=>{let e=new Map;for(let t of F)t.type!==void 0&&t.type!==null&&e.set(t.id,String(t.type));return e},[F]),L=t(()=>{if(!A||P.length===0)return F;let e=I.get(P[0]);return e===void 0?F:F.filter(t=>{if(P.includes(t.id))return!0;let n=t.type!==void 0&&t.type!==null?String(t.type):void 0;return n!==void 0&&l(e,n)})},[A,P,F,I]),R=v(!A&&P.length===1?P[0]:0),z=y(A?P:[]),B=t(()=>N?s():P.length===0?[]:A?z.isLoading&&z.data===void 0?[]:f(P.map(e=>({boundCaps:z.data?.get(e),deviceType:I.get(e)}))):R.data===void 0&&R.isLoading?[]:d({boundCaps:R.data,deviceType:I.get(P[0])}),[N,P,A,z.data,z.isLoading,R.data,R.isLoading,I]),V=u(r.cap,r.method,r.args),H=c(r.cap,r.method,r.args),U=r.cap!==``&&r.method!==``&&H===null&&(N||P.length>0),W=A?z.isLoading:R.isLoading,G=A?z.isError:R.isError,K=e=>{if(e.startsWith(`custom:`))return;let t=o.find(t=>t.id===e);t!==void 0&&i(D(N?r.deviceId:P.length>0?T(P):F[0]?.id??0,t))};return e(`div`,{className:`flex min-w-0 flex-1 flex-col gap-2`,"data-testid":j,children:[k&&e(`div`,{className:`w-full max-w-xs`,children:[n(`label`,{className:x,children:M(`deviceDoAction.deviceDoActionFields.target`,`Target`)}),e(`select`,{className:b,"data-testid":`${j}-target`,value:N?`trigger`:`device`,onChange:e=>{if(e.target.value===`trigger`){i({deviceId:{$var:S},cap:``,method:``});return}i({deviceId:F[0]?.id??0,cap:``,method:``})},children:[n(`option`,{value:`device`,children:M(`deviceDoAction.deviceDoActionFields.specificDevice`,`Specific device`)}),n(`option`,{value:`trigger`,children:M(`deviceDoAction.deviceDoActionFields.theDeviceThatTriggeredThis`,`The device that triggered this run`)})]})]}),!N&&e(`div`,{"data-testid":`${j}-device`,children:[n(`label`,{className:x,children:M(`deviceDoAction.deviceLabel`,{count:A?2:1})}),n(m,{devices:L,listState:h,..._===void 0?{}:{fleet:_},value:[...P],onChange:e=>{i({deviceId:T(A?w(P,e,e=>I.get(e)):(()=>{let t=C(P,e);return t>0?[t]:[]})()),cap:``,method:``})},emptyLabel:A?`No devices selected`:`No device selected`,noun:`device`,testId:`${j}-device-picker`}),A&&P.length>1&&n(`p`,{className:`mt-1 text-[11px] text-foreground-subtle`,children:M(`deviceDoAction.deviceDoActionFields.sameFamilyOnlyTheAction`,`Same family only — the action runs on each selected device.`)})]}),e(`div`,{className:`w-full max-w-sm`,children:[n(`label`,{className:x,children:M(`deviceDoAction.deviceDoActionFields.action`,`Action`)}),e(`select`,{className:b,"data-testid":`${j}-action`,value:V===`custom:${r.cap}.${r.method}`?V:H?.id??``,disabled:!N&&(P.length===0||W),onChange:e=>K(e.target.value),children:[n(`option`,{value:``,children:!N&&P.length===0?M(`deviceDoAction.deviceDoActionFields.pickADeviceFirst`,`Pick a device first`):W?M(`deviceDoAction.deviceDoActionFields.loadingActions`,`Loading actions…`):B.length===0?M(`deviceDoAction.deviceDoActionFields.noActionsForThisDevice`,`No actions for this device`):M(`deviceDoAction.deviceDoActionFields.selectAnAction`,`Select an action…`)}),U&&n(`option`,{value:V,children:O(r.cap,r.method)}),B.map(e=>n(`option`,{value:e.id,children:e.label},e.id))]}),G&&n(`p`,{className:`mt-1 text-[11px] text-warning`,children:M(`deviceDoAction.deviceDoActionFields.couldNotReadThisDevice`,`Could not read this device’s capabilities.`)})]}),H?.openArgs!==void 0&&H.openArgs.length>0&&n(`div`,{className:`flex flex-col gap-2`,children:H.openArgs.map(t=>{let a=r.args?.[t.key],o=typeof a==`string`||typeof a==`number`?String(a):``;return e(`div`,{className:`w-full max-w-sm`,children:[n(`label`,{className:x,htmlFor:`${j}-${t.key}`,children:t.label}),n(`input`,{id:`${j}-${t.key}`,className:b,"data-testid":`${j}-${t.key}`,type:t.kind===`number`?`number`:`text`,value:o,onChange:e=>{let n=e.target.value,a=r.args===void 0?{}:{...r.args};if(n===``)delete a[t.key];else if(t.kind===`number`){let e=Number(n);Number.isNaN(e)?delete a[t.key]:a[t.key]=e}else a[t.key]=n;i(Object.keys(a).length>0?{...r,args:a}:{deviceId:r.deviceId,cap:r.cap,method:r.method})}})]},t.key)})})]})}export{k as t};
1
+ import{C as e,K as t,S as n,a as r,et as i}from"./_virtual_mf___mfe_internal__admin_ui_host__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-CEyXHAdg.js";import{ot as a}from"./player-overlays-nQJCQERn.js";import{an as o,cn as s,dn as c,fn as l,ln as u,on as d,sn as f,un as p}from"./client-CdHPjeIs.js";import{R as m}from"./src-DzfpPZrG.js";import{t as h}from"./i18n-Dgilx0WT.js";import{t as g}from"./useTranslation-BJr-n0es.js";import"./index-4kmzPYxW.js";i();var _=6e4;function v(e){let t=a();return r({queryKey:[`device-do-action`,`bound-caps`,e],enabled:e>0,staleTime:_,queryFn:async()=>{let n=await t.trpcClient.deviceManager.getBindings.query({deviceId:e});return[...new Set(n.entries.map(e=>e.capName))].sort((e,t)=>e.localeCompare(t))}})}function y(e){let t=a(),n=[...new Set(e.filter(e=>e>0))].sort((e,t)=>e-t);return r({queryKey:[`device-do-action`,`bound-caps-batch`,n],enabled:n.length>0,staleTime:_,queryFn:async()=>{let e=await t.trpcClient.deviceManager.getBindingsBatch.query({deviceIds:n}),r=new Map;for(let t of e)r.set(t.deviceId,[...new Set(t.entries.map(e=>e.capName))].sort((e,t)=>e.localeCompare(t)));return r}})}var b=`mt-1 w-full rounded border border-border bg-background px-2 py-1 text-xs`,x=`block text-[11px] font-medium text-foreground`,S=`deviceId`;function C(e,t){return t.length===0?0:t.length===1?t[0]:t.find(t=>!e.includes(t))??t[t.length-1]}function w(e,t,n){if(t.length===0)return[];if(t.length===1)return t;let r=t.find(t=>!e.includes(t));if(r===void 0)return t;let i=n(r);if(i===void 0)return[r];let a=e[0]??t.find(e=>e!==r);if(a===void 0)return[r];let o=n(a);return o===void 0||!l(o,i)?[r]:t.filter(e=>{let t=n(e);return t!==void 0&&l(o,t)})}function T(e){return e.length===0?0:e.length===1?e[0]:[...e]}function E(e){return typeof e==`number`?e>0?[e]:[]:Array.isArray(e)?e.filter(e=>e>0):[]}function D(e,t){return{deviceId:e,cap:t.cap,method:t.method,...t.args===void 0?{}:{args:{...t.args}}}}function O(e,t){return h.t(`deviceDoAction.customLabel`,{name:`${e}.${t}`})}function k({value:r,onChange:i,devices:a,listState:h,fleet:_,allowTriggerDevice:k=!1,allowMultiSameFamily:A=!1,testId:j=`device-do-action`}){let{t:M}=g(),N=typeof r.deviceId!=`number`&&!Array.isArray(r.deviceId),P=E(r.deviceId),F=t(()=>a.filter(e=>p(String(e.type??``))),[a]),I=t(()=>{let e=new Map;for(let t of F)t.type!==void 0&&t.type!==null&&e.set(t.id,String(t.type));return e},[F]),L=t(()=>{if(!A||P.length===0)return F;let e=I.get(P[0]);return e===void 0?F:F.filter(t=>{if(P.includes(t.id))return!0;let n=t.type!==void 0&&t.type!==null?String(t.type):void 0;return n!==void 0&&l(e,n)})},[A,P,F,I]),R=v(!A&&P.length===1?P[0]:0),z=y(A?P:[]),B=t(()=>N?s():P.length===0?[]:A?z.isLoading&&z.data===void 0?[]:f(P.map(e=>({boundCaps:z.data?.get(e),deviceType:I.get(e)}))):R.data===void 0&&R.isLoading?[]:d({boundCaps:R.data,deviceType:I.get(P[0])}),[N,P,A,z.data,z.isLoading,R.data,R.isLoading,I]),V=u(r.cap,r.method,r.args),H=c(r.cap,r.method,r.args),U=r.cap!==``&&r.method!==``&&H===null&&(N||P.length>0),W=A?z.isLoading:R.isLoading,G=A?z.isError:R.isError,K=e=>{if(e.startsWith(`custom:`))return;let t=o.find(t=>t.id===e);t!==void 0&&i(D(N?r.deviceId:P.length>0?T(P):F[0]?.id??0,t))};return e(`div`,{className:`flex min-w-0 flex-1 flex-col gap-2`,"data-testid":j,children:[k&&e(`div`,{className:`w-full max-w-xs`,children:[n(`label`,{className:x,children:M(`deviceDoAction.deviceDoActionFields.target`,`Target`)}),e(`select`,{className:b,"data-testid":`${j}-target`,value:N?`trigger`:`device`,onChange:e=>{if(e.target.value===`trigger`){i({deviceId:{$var:S},cap:``,method:``});return}i({deviceId:F[0]?.id??0,cap:``,method:``})},children:[n(`option`,{value:`device`,children:M(`deviceDoAction.deviceDoActionFields.specificDevice`,`Specific device`)}),n(`option`,{value:`trigger`,children:M(`deviceDoAction.deviceDoActionFields.theDeviceThatTriggeredThis`,`The device that triggered this run`)})]})]}),!N&&e(`div`,{"data-testid":`${j}-device`,children:[n(`label`,{className:x,children:M(`deviceDoAction.deviceLabel`,{count:A?2:1})}),n(m,{devices:L,listState:h,..._===void 0?{}:{fleet:_},value:[...P],onChange:e=>{i({deviceId:T(A?w(P,e,e=>I.get(e)):(()=>{let t=C(P,e);return t>0?[t]:[]})()),cap:``,method:``})},emptyLabel:A?`No devices selected`:`No device selected`,noun:`device`,testId:`${j}-device-picker`}),A&&P.length>1&&n(`p`,{className:`mt-1 text-[11px] text-foreground-subtle`,children:M(`deviceDoAction.deviceDoActionFields.sameFamilyOnlyTheAction`,`Same family only — the action runs on each selected device.`)})]}),e(`div`,{className:`w-full max-w-sm`,children:[n(`label`,{className:x,children:M(`deviceDoAction.deviceDoActionFields.action`,`Action`)}),e(`select`,{className:b,"data-testid":`${j}-action`,value:V===`custom:${r.cap}.${r.method}`?V:H?.id??``,disabled:!N&&(P.length===0||W),onChange:e=>K(e.target.value),children:[n(`option`,{value:``,children:!N&&P.length===0?M(`deviceDoAction.deviceDoActionFields.pickADeviceFirst`,`Pick a device first`):W?M(`deviceDoAction.deviceDoActionFields.loadingActions`,`Loading actions…`):B.length===0?M(`deviceDoAction.deviceDoActionFields.noActionsForThisDevice`,`No actions for this device`):M(`deviceDoAction.deviceDoActionFields.selectAnAction`,`Select an action…`)}),U&&n(`option`,{value:V,children:O(r.cap,r.method)}),B.map(e=>n(`option`,{value:e.id,children:e.label},e.id))]}),G&&n(`p`,{className:`mt-1 text-[11px] text-warning`,children:M(`deviceDoAction.deviceDoActionFields.couldNotReadThisDevice`,`Could not read this device’s capabilities.`)})]}),H?.openArgs!==void 0&&H.openArgs.length>0&&n(`div`,{className:`flex flex-col gap-2`,children:H.openArgs.map(t=>{let a=r.args?.[t.key],o=typeof a==`string`||typeof a==`number`?String(a):``;return e(`div`,{className:`w-full max-w-sm`,children:[n(`label`,{className:x,htmlFor:`${j}-${t.key}`,children:t.label}),n(`input`,{id:`${j}-${t.key}`,className:b,"data-testid":`${j}-${t.key}`,type:t.kind===`number`?`number`:`text`,value:o,onChange:e=>{let n=e.target.value,a=r.args===void 0?{}:{...r.args};if(n===``)delete a[t.key];else if(t.kind===`number`){let e=Number(n);Number.isNaN(e)?delete a[t.key]:a[t.key]=e}else a[t.key]=n;i(Object.keys(a).length>0?{...r,args:a}:{deviceId:r.deviceId,cap:r.cap,method:r.method})}})]},t.key)})})]})}export{k as t};
@@ -1 +1 @@
1
- import{C as e,K as t,R as n,S as r,et as i,o as a}from"./_virtual_mf___mfe_internal__admin_ui_host__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-CEyXHAdg.js";import{Oi as o,Pt as s,ot as c}from"./player-overlays-nQJCQERn.js";import{At as l,Mo as u,So as d,bs as f,jt as p,lo as m,mo as h,r as g}from"./src-DVuhwnP3.js";import{t as _}from"./useTranslation-BJr-n0es.js";import{cr as v,mr as y}from"./index-CizVDZHi.js";import{t as b}from"./AdminPage-Bm98o4hS.js";import"./useEventInvalidation-Di8k2vXt.js";import{t as x}from"./device-integration-icon-CL_G93QX.js";i();var S=32;function C(e,t){let n=e=>t(e).kind===`orphan`,r=new Set;for(let t of e)n(t)&&r.add(t.id);let i=new Map;for(let t of e)i.set(t.id,t);let a=(e,t=0)=>{if(t>S)return!1;if(r.has(e.id))return!0;if(e.parentDeviceId==null)return!1;let n=i.get(e.parentDeviceId);return n?a(n,t+1):!1},o=[],s=[];for(let t of e)a(t)?s.push(t):o.push(t);return{activeDevices:o,orphanDevices:s}}function w(){let{t:i}=_(),S=y(),w=c(),T=a();g([`deviceManager`],[`device.registered`,`device.unregistered`,`device.online`,`device.offline`,`device.disabled`,`device.enabled`]),g([`integrations`],[`integration.enabled`,`integration.disabled`,`integration.deleted`,`provider.started`,`provider.stopped`,`addon.installed`,`addon.uninstalled`,`addon.started`,`addon.stopped`]);let{data:E}=d({projection:`slim`}),{data:D}=f(void 0),O=u({onSuccess:()=>{T.invalidateQueries({queryKey:[[`deviceManager`]]})}}),k=m({onSuccess:()=>{T.invalidateQueries({queryKey:[[`deviceManager`]]})}}),A=h({onSuccess:()=>{T.invalidateQueries({queryKey:[[`deviceManager`]]})}}),j=t(()=>E??[],[E]),M=t(()=>p(D),[D]),{activeDevices:N,orphanDevices:P}=t(()=>C(j,M),[j,M]),F=t(()=>{let e=new Map;for(let t of j)e.set(t.id,{id:t.id,name:t.name??t.stableId??`#${String(t.id)}`});return e},[j]),I=n(e=>F.get(e)??null,[F]),L=t(()=>(D??[]).map(e=>({id:e.id,name:e.name??e.addonId,icon:r(v,{type:e.addonId,size:`sm`})})),[D]),R=n(e=>S(`/devices/${String(e)}`),[S]);return e(b,{icon:o,title:i(`nav.devices`,`Devices`),children:[r(l,{context:`devices`,devices:N,trpc:w.trpcClient,filters:{integrations:L},integrationOf:M,resolveIntegrationIcon:x,resolveParent:I,onNavigate:R,batchActions:{remove:O.mutate,disable:k.mutate,enable:A.mutate}}),P.length>0&&e(`div`,{className:`mt-6 space-y-2`,children:[e(`div`,{className:`flex items-baseline gap-2`,children:[r(s,{className:`h-3.5 w-3.5 text-warning shrink-0`}),r(`h2`,{className:`text-sm font-semibold text-foreground`,children:i(`devices.orphanDevices`,`Orphan devices`)}),r(`span`,{className:`text-[10px] text-foreground-subtle`,children:i(`common.deviceOrphans`,{count:P.length})})]}),e(`div`,{className:`rounded-lg border border-warning/30 bg-warning/5 p-2`,children:[r(`p`,{className:`text-[11px] text-foreground-subtle px-2 pb-2`,children:i(`devices.theseDevicesReferenceAnIntegration`,"These devices reference an integration that is no longer registered (their `integrationId`, or — for older devices without one — their `addonId`). Delete them, or re-install the missing integration to bring them back online. The provider badge beside each row is the addon that serves it.")}),r(l,{context:`devices`,devices:P,trpc:w.trpcClient,integrationOf:M,urlScope:`nested`,lsKey:`devices:orphan`,resolveIntegrationIcon:x,resolveParent:I,onNavigate:R})]})]})]})}export{w as DevicesPage};
1
+ import{C as e,K as t,R as n,S as r,et as i,o as a}from"./_virtual_mf___mfe_internal__admin_ui_host__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-CEyXHAdg.js";import{Oi as o,Pt as s,ot as c}from"./player-overlays-nQJCQERn.js";import{At as l,co as u,jo as d,kt as f,po as p,r as m,xo as h,ys as g}from"./src-DzfpPZrG.js";import{t as _}from"./useTranslation-BJr-n0es.js";import{cr as v,mr as y}from"./index-4kmzPYxW.js";import{t as b}from"./AdminPage-D6Yva5zf.js";import"./useEventInvalidation-CdWcoivb.js";import{t as x}from"./device-integration-icon-Dg_7SOuH.js";i();var S=32;function C(e,t){let n=e=>t(e).kind===`orphan`,r=new Set;for(let t of e)n(t)&&r.add(t.id);let i=new Map;for(let t of e)i.set(t.id,t);let a=(e,t=0)=>{if(t>S)return!1;if(r.has(e.id))return!0;if(e.parentDeviceId==null)return!1;let n=i.get(e.parentDeviceId);return n?a(n,t+1):!1},o=[],s=[];for(let t of e)a(t)?s.push(t):o.push(t);return{activeDevices:o,orphanDevices:s}}function w(){let{t:i}=_(),S=y(),w=c(),T=a();m([`deviceManager`],[`device.registered`,`device.unregistered`,`device.online`,`device.offline`,`device.disabled`,`device.enabled`]),m([`integrations`],[`integration.enabled`,`integration.disabled`,`integration.deleted`,`provider.started`,`provider.stopped`,`addon.installed`,`addon.uninstalled`,`addon.started`,`addon.stopped`]);let{data:E}=h({projection:`slim`}),{data:D}=g(void 0),O=d({onSuccess:()=>{T.invalidateQueries({queryKey:[[`deviceManager`]]})}}),k=u({onSuccess:()=>{T.invalidateQueries({queryKey:[[`deviceManager`]]})}}),A=p({onSuccess:()=>{T.invalidateQueries({queryKey:[[`deviceManager`]]})}}),j=t(()=>E??[],[E]),M=t(()=>l(D),[D]),{activeDevices:N,orphanDevices:P}=t(()=>C(j,M),[j,M]),F=t(()=>{let e=new Map;for(let t of j)e.set(t.id,{id:t.id,name:t.name??t.stableId??`#${String(t.id)}`});return e},[j]),I=n(e=>F.get(e)??null,[F]),L=t(()=>(D??[]).map(e=>({id:e.id,name:e.name??e.addonId,icon:r(v,{type:e.addonId,size:`sm`})})),[D]),R=n(e=>S(`/devices/${String(e)}`),[S]);return e(b,{icon:o,title:i(`nav.devices`,`Devices`),children:[r(f,{context:`devices`,devices:N,trpc:w.trpcClient,filters:{integrations:L},integrationOf:M,resolveIntegrationIcon:x,resolveParent:I,onNavigate:R,batchActions:{remove:O.mutate,disable:k.mutate,enable:A.mutate}}),P.length>0&&e(`div`,{className:`mt-6 space-y-2`,children:[e(`div`,{className:`flex items-baseline gap-2`,children:[r(s,{className:`h-3.5 w-3.5 text-warning shrink-0`}),r(`h2`,{className:`text-sm font-semibold text-foreground`,children:i(`devices.orphanDevices`,`Orphan devices`)}),r(`span`,{className:`text-[10px] text-foreground-subtle`,children:i(`common.deviceOrphans`,{count:P.length})})]}),e(`div`,{className:`rounded-lg border border-warning/30 bg-warning/5 p-2`,children:[r(`p`,{className:`text-[11px] text-foreground-subtle px-2 pb-2`,children:i(`devices.theseDevicesReferenceAnIntegration`,"These devices reference an integration that is no longer registered (their `integrationId`, or — for older devices without one — their `addonId`). Delete them, or re-install the missing integration to bring them back online. The provider badge beside each row is the addon that serves it.")}),r(f,{context:`devices`,devices:P,trpc:w.trpcClient,integrationOf:M,urlScope:`nested`,lsKey:`devices:orphan`,resolveIntegrationIcon:x,resolveParent:I,onNavigate:R})]})]})]})}export{w as DevicesPage};
@@ -1 +1 @@
1
- import{C as e,K as t,S as n,V as r,Y as i,d as a,et as o,u as s}from"./_virtual_mf___mfe_internal__admin_ui_host__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-CEyXHAdg.js";import{it as c}from"./player-overlays-nQJCQERn.js";import{Aa as l}from"./client-CdHPjeIs.js";import{D as u,M as d,O as f,P as p,T as m,y as h}from"./__vite-browser-external-BlMfPwfH.js";import{Md as g,Tn as _,rn as v,sn as y,yn as b}from"./src-DVuhwnP3.js";import{t as x}from"./useTranslation-BJr-n0es.js";o();var S=p([f({kind:m(`adaptive`)}),f({kind:m(`profile`),profile:l})]),C=f({serverUrl:d().min(1),token:d().min(1),deviceId:u().int().nonnegative(),target:S,muted:h()});function w(e,t){let n=t===void 0?{type:`state`,state:e}:{type:`state`,state:e,message:t};window.ReactNativeWebView?.postMessage(JSON.stringify(n))}function T(e){switch(e){case`playing`:return`playing`;case`error`:return`error`;case`connecting`:case`disconnected`:case`idle`:return`connecting`}}function E(e){return e.kind===`adaptive`?{kind:`adaptive`}:{kind:`profile`,profile:e.profile}}function D(e){return e.kind===`adaptive`?`embed:adaptive`:`embed:profile:${e.profile}`}function O(){let e=window.__CAMSTACK_EMBED__;if(e==null)return{ok:!1,error:`window.__CAMSTACK_EMBED__ is not set`};let t=C.safeParse(e);return t.success?{ok:!0,config:t.data}:{ok:!1,error:t.error.issues.map(e=>`${e.path.join(`.`)||`(root)`}: ${e.message}`).join(`; `)}}function k({message:t}){let{t:n}=x();return r(()=>{w(`error`,t)},[t]),e(`div`,{style:{position:`fixed`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,background:`#000`,color:`#f87171`,fontFamily:`system-ui, sans-serif`,fontSize:13,padding:16,textAlign:`center`},children:[n(`embedPlayerPage.embedConfigError`,`Embed config error:`),` `,t]})}function A({system:e,deviceId:a,initialTarget:o,initialMuted:s}){let[c,l]=i(o),[u,d]=i(s),{handleOffer:f,getIceServers:p,addIceCandidate:m,getIceCandidates:h,closeSession:g,getSessionState:v,getSessionDebug:y,applyDownlinkProbe:x}=b(e.trpcClient,a),C=t(()=>E(c),[c]),O=t(()=>(e,t)=>f(C,e,t),[f,C]),k=t(()=>(e,t,n)=>f(n,t,e),[f]);r(()=>(window.__camstackEmbed={setMuted:e=>d(e),setTarget:e=>{let t=S.safeParse(e);t.success&&l(t.data)}},()=>{window.__camstackEmbed&&delete window.__camstackEmbed}),[]);let A=D(c);return n(`div`,{style:{position:`fixed`,inset:0,width:`100vw`,height:`100vh`,background:`#000`},children:n(_,{serverUrl:e.serverUrl,streamKey:A,autoPlay:!0,muted:u,showControls:!1,className:`w-full h-full`,getSessionDebug:y,applyDownlinkProbe:x,handleOffer:O,reoffer:k,getSessionState:v,getIceServers:p,addIceCandidate:m,getIceCandidates:h,closeSession:g,onStateChange:e=>w(T(e)),onError:e=>w(`error`,e)},A)})}function j(){let{t:e}=x(),i=t(()=>O(),[]),o=t(()=>{if(!i.ok)return null;let e=y({serverUrl:i.config.serverUrl,token:i.config.token}),t=new a({defaultOptions:{queries:{retry:!1,refetchOnWindowFocus:!1}}});return v(t),{system:e,queryClient:t}},[i]);return r(()=>{if(o)return()=>{o.system.close()}},[o]),i.ok?o?n(c,{system:o.system,children:n(s,{client:o.queryClient,children:n(g.Provider,{client:o.system.trpcClient,queryClient:o.queryClient,children:n(A,{system:o.system,deviceId:i.config.deviceId,initialTarget:i.config.target,initialMuted:i.config.muted})})})}):n(k,{message:e(`embedPlayerPage.failedToInitialiseTheEmbed`,`Failed to initialise the embed player`)}):n(k,{message:i.error})}export{j as EmbedPlayerPage};
1
+ import{C as e,K as t,S as n,V as r,Y as i,d as a,et as o,u as s}from"./_virtual_mf___mfe_internal__admin_ui_host__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-CEyXHAdg.js";import{it as c}from"./player-overlays-nQJCQERn.js";import{Aa as l}from"./client-CdHPjeIs.js";import{D as u,M as d,O as f,P as p,T as m,y as h}from"./__vite-browser-external-BlMfPwfH.js";import{Ad as g,nn as _,on as v,vn as y,wn as b}from"./src-DzfpPZrG.js";import{t as x}from"./useTranslation-BJr-n0es.js";o();var S=p([f({kind:m(`adaptive`)}),f({kind:m(`profile`),profile:l})]),C=f({serverUrl:d().min(1),token:d().min(1),deviceId:u().int().nonnegative(),target:S,muted:h()});function w(e,t){let n=t===void 0?{type:`state`,state:e}:{type:`state`,state:e,message:t};window.ReactNativeWebView?.postMessage(JSON.stringify(n))}function T(e){switch(e){case`playing`:return`playing`;case`error`:return`error`;case`connecting`:case`disconnected`:case`idle`:return`connecting`}}function E(e){return e.kind===`adaptive`?{kind:`adaptive`}:{kind:`profile`,profile:e.profile}}function D(e){return e.kind===`adaptive`?`embed:adaptive`:`embed:profile:${e.profile}`}function O(){let e=window.__CAMSTACK_EMBED__;if(e==null)return{ok:!1,error:`window.__CAMSTACK_EMBED__ is not set`};let t=C.safeParse(e);return t.success?{ok:!0,config:t.data}:{ok:!1,error:t.error.issues.map(e=>`${e.path.join(`.`)||`(root)`}: ${e.message}`).join(`; `)}}function k({message:t}){let{t:n}=x();return r(()=>{w(`error`,t)},[t]),e(`div`,{style:{position:`fixed`,inset:0,display:`flex`,alignItems:`center`,justifyContent:`center`,background:`#000`,color:`#f87171`,fontFamily:`system-ui, sans-serif`,fontSize:13,padding:16,textAlign:`center`},children:[n(`embedPlayerPage.embedConfigError`,`Embed config error:`),` `,t]})}function A({system:e,deviceId:a,initialTarget:o,initialMuted:s}){let[c,l]=i(o),[u,d]=i(s),{handleOffer:f,getIceServers:p,addIceCandidate:m,getIceCandidates:h,closeSession:g,getSessionState:_,getSessionDebug:v,applyDownlinkProbe:x}=y(e.trpcClient,a),C=t(()=>E(c),[c]),O=t(()=>(e,t)=>f(C,e,t),[f,C]),k=t(()=>(e,t,n)=>f(n,t,e),[f]);r(()=>(window.__camstackEmbed={setMuted:e=>d(e),setTarget:e=>{let t=S.safeParse(e);t.success&&l(t.data)}},()=>{window.__camstackEmbed&&delete window.__camstackEmbed}),[]);let A=D(c);return n(`div`,{style:{position:`fixed`,inset:0,width:`100vw`,height:`100vh`,background:`#000`},children:n(b,{serverUrl:e.serverUrl,streamKey:A,autoPlay:!0,muted:u,showControls:!1,className:`w-full h-full`,getSessionDebug:v,applyDownlinkProbe:x,handleOffer:O,reoffer:k,getSessionState:_,getIceServers:p,addIceCandidate:m,getIceCandidates:h,closeSession:g,onStateChange:e=>w(T(e)),onError:e=>w(`error`,e)},A)})}function j(){let{t:e}=x(),i=t(()=>O(),[]),o=t(()=>{if(!i.ok)return null;let e=v({serverUrl:i.config.serverUrl,token:i.config.token}),t=new a({defaultOptions:{queries:{retry:!1,refetchOnWindowFocus:!1}}});return _(t),{system:e,queryClient:t}},[i]);return r(()=>{if(o)return()=>{o.system.close()}},[o]),i.ok?o?n(c,{system:o.system,children:n(s,{client:o.queryClient,children:n(g.Provider,{client:o.system.trpcClient,queryClient:o.queryClient,children:n(A,{system:o.system,deviceId:i.config.deviceId,initialTarget:i.config.target,initialMuted:i.config.muted})})})}):n(k,{message:e(`embedPlayerPage.failedToInitialiseTheEmbed`,`Failed to initialise the embed player`)}):n(k,{message:i.error})}export{j as EmbedPlayerPage};