diff --git a/ipk-source/sdxpinn-quecmanager-beta/CONTROL/control b/ipk-source/sdxpinn-quecmanager-beta/CONTROL/control index 7a85b03..6cf6eda 100755 --- a/ipk-source/sdxpinn-quecmanager-beta/CONTROL/control +++ b/ipk-source/sdxpinn-quecmanager-beta/CONTROL/control @@ -1,5 +1,5 @@ Package: sdxpinn-quecmanager-beta -Version: 2.3.1 +Version: 2.3.2 Architecture: aarch64_cortex-a53 Maintainer: Russel Yasol dr-dolomite@github.com Cameron Thompson iamromulan@github.com Christopher Landwehr clndwhr@github.com Source: github.com/iamromulan diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/404.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/404.html index a707ac2..cb1ffe5 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/404.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/404.html @@ -1 +1 @@ -404: This page could not be found.QuecManager

404

This page could not be found.

    \ No newline at end of file +404: This page could not be found.QuecManager

    404

    This page could not be found.

      \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/404/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/404/index.html index a707ac2..cb1ffe5 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/404/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/404/index.html @@ -1 +1 @@ -404: This page could not be found.QuecManager

      404

      This page could not be found.

        \ No newline at end of file +404: This page could not be found.QuecManager

        404

        This page could not be found.

          \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/2266-b5acaea1bac39ea4.js b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/2266-c3fabb1ea5003f9e.js similarity index 61% rename from ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/2266-b5acaea1bac39ea4.js rename to ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/2266-c3fabb1ea5003f9e.js index 9fd1776..b6a1e93 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/2266-b5acaea1bac39ea4.js +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/2266-c3fabb1ea5003f9e.js @@ -1 +1 @@ -"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2266],{25621:(e,t,s)=>{s.r(t),s.d(t,{default:()=>y});var a=s(20475),l=s(20107),r=s(72167),i=s(35601),o=s(42541),c=s(76554),n=s(64219),d=s(49153),u=s(77257),h=s(45934),m=s(29475),p=s(39997);let v=(0,p.A)("LockOpen",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 9.9-1",key:"1mm8w8"}]]);var g=s(52161),w=s(97801),x=s(32857),N=s(49573),C=s(38545),f=s(98969);let j=(0,p.A)("Clock1",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 14.5 8",key:"12zbmj"}]]),b=(0,p.A)("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]),A=e=>{let{loading:t,scheduleData:s,onStartTimeChange:i,onEndTimeChange:c,onSchedulingToggle:u}=e,[h,p]=(0,l.useState)({text:"Disabled",color:"text-red-600",icon:C.A}),v=()=>{if(!s.enabled){p({text:"Disabled",color:"text-red-600",icon:C.A});return}let e=new Date,t=60*e.getHours()+e.getMinutes(),[a,l]=s.startTime.split(":").map(Number),[r,i]=s.endTime.split(":").map(Number),o=60*a+l,c=60*r+i;o<=c?t>=o&&t<=c?p({text:"Active",color:"text-green-600",icon:f.A}):p({text:"Inactive",color:"text-yellow-500",icon:j}):t>=o||t<=c?p({text:"Active",color:"text-green-600",icon:f.A}):p({text:"Inactive",color:"text-yellow-500",icon:j})},g=()=>{s.active?p({text:"Active",color:"text-green-600",icon:f.A}):s.enabled&&!s.active?p({text:"Inactive",color:"text-yellow-500",icon:j}):p({text:"Disabled",color:"text-red-600",icon:C.A})};(0,l.useEffect)(()=>{g();let e=setInterval(v,6e4);return()=>{clearInterval(e)}},[s]);let w=h.icon;return(0,a.jsxs)(r.Zp,{children:[(0,a.jsxs)(r.aR,{children:[(0,a.jsxs)(r.ZB,{className:"flex items-center justify-between",children:[(0,a.jsx)("div",{children:(0,a.jsx)("span",{children:"Cell Locking Scheduler"})}),(0,a.jsxs)("div",{className:"flex items-center",children:[(0,a.jsx)(w,{className:"h-4 w-4 mr-1 ".concat(h.color)}),(0,a.jsx)("div",{className:"text-sm text-gray-500",children:h.text})]})]}),(0,a.jsx)(r.BT,{children:"Schedule the device to lock to specific cells at certain times."})]}),(0,a.jsxs)(r.Wu,{children:[s.enabled&&(0,a.jsxs)(N.Fc,{className:"mb-6",children:[(0,a.jsx)(m.A,{className:"h-4 w-4",color:"orange"}),(0,a.jsx)(N.XL,{children:"Scheduled Cell Locking Active"}),(0,a.jsx)(N.TN,{children:"Cell locking is currently being managed by the scheduler. Manual changes to cell locks may be overridden during scheduled hours."})]}),(0,a.jsxs)("div",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-4",children:[(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"start-time",children:"Start Time"}),(0,a.jsx)(n.p,{type:"time",id:"start-time",value:s.startTime,onChange:e=>i(e.target.value),disabled:t||s.enabled,placeholder:"START TIME"})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"end-time",children:"End Time"}),(0,a.jsx)(n.p,{type:"time",id:"end-time",value:s.endTime,onChange:e=>c(e.target.value),disabled:t||s.enabled,placeholder:"END TIME"})]}),(0,a.jsx)("div",{className:"lg:col-span-2 col-span-1",children:(0,a.jsx)("p",{className:"text-sm text-gray-500",children:"Make sure to properly set the timezone using Luci for this to properly work. The scheduler will lock the device to the selected cells during the specified time range. The scheduler will not lock the device if the time range is not valid (e.g. start time is after end time)."})})]})]}),(0,a.jsx)(r.wL,{className:"border-t py-4",children:(0,a.jsxs)(o.$,{onClick:()=>u(!s.enabled),disabled:t||!s.locked&&!s.enabled,children:[(0,a.jsx)(b,{className:"h-4 w-4"}),s.enabled?"Disable Scheduler":"Enable Scheduler"]})})]})};var R=s(88926);let y=()=>{let{toast:e}=(0,x.dj)(),[t,s]=(0,l.useState)(!1),[p,N]=(0,l.useState)(!1),[C,f]=(0,l.useState)(!1),[j,b]=(0,l.useState)(!1),[y,E]=(0,l.useState)({enabled:!1,startTime:"",endTime:"",active:!1,status:"",message:"",locked:!1}),[k,T]=(0,l.useState)({EARFCN1:"",PCI1:"",EARFCN2:"",PCI2:"",EARFCN3:"",PCI3:""}),[F,P]=(0,l.useState)({NRARFCN:"",NRPCI:"",SCS:"",NRBAND:""}),S=e=>{let t=e.match(/\+QNWLOCK:\s*(.+?)\n/);return t?t[1].replace(/"/g,"").split(",").map(e=>e.trim()):null},I=async()=>{try{s(!0);let e=await fetch("/cgi-bin/quecmanager/at_cmd/fetch_data.sh?set=8"),t=await e.json();if(!e.ok)throw Error("Failed to fetch current status");console.log("Current cell locking status:",t);let a=S(t[2].response);console.log("Persist status:",a),a&&a.length>=2&&(f("1"===a[1]),b("1"===a[2]));let l=S(t[0].response);if(console.log("Current LTE lock status:",l),l){let e={EARFCN1:l[2],PCI1:l[3],EARFCN2:l[4],PCI2:l[5],EARFCN3:l[6],PCI3:l[7]};T(e),console.log("New LTE state:",e),parseInt(l[1])>0&&N(!0)}let r=S(t[1].response);if(console.log("Current NR5G lock status:",r),r&&r.length>=5){let e={NRPCI:r[1],NRARFCN:r[2],SCS:r[3],NRBAND:r[4]};P(e),console.log("New NR5G state:",e),parseInt(r[1])>0&&N(!0)}}catch(t){console.error("Error fetching current status:",t),e({title:"Error",description:"Failed to fetch current cell locking status",variant:"destructive"})}finally{s(!1)}},L=async t=>{try{let a;if(s(!0),t&&(!y.startTime||!y.endTime))throw Error("Please set both start and end times");let l=t?{enabled:!0,startTime:y.startTime,endTime:y.endTime}:{enabled:!1},r=await fetch("/cgi-bin/quecmanager/cell-locking/handle_scheduled_locking.sh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l)}),i=await r.text();if(!r.ok)throw Error("Server responded with status: ".concat(r.status));try{a=JSON.parse(i)}catch(e){throw Error("Failed to parse response: ".concat(i))}if("success"===a.status)E(e=>({...e,enabled:t})),e({title:"Success",description:t?"Cell locking schedule enabled":"Cell locking schedule disabled"});else throw Error(a.message||"Failed to update scheduling")}catch(e){}finally{s(!1),await I()}},_=async()=>{try{var t,a,l,r;s(!0);let i=[];if(k.EARFCN1&&k.PCI1&&i.push([k.EARFCN1,k.PCI1]),k.EARFCN2&&k.PCI2&&i.push([k.EARFCN2,k.PCI2]),k.EARFCN3&&k.PCI3&&i.push([k.EARFCN3,k.PCI3]),0===i.length)throw Error("Please fill at least one EARFCN and PCI pair");let o='AT+QNWLOCK="common/4g",'.concat(i.length);i.forEach(e=>{let[t,s]=e;o+=",".concat(t,",").concat(s)});let c=await (0,R.a)(o,!0);if((null===(t=c.response)||void 0===t?void 0:t.status)!=="success")throw Error((null===(l=c.response)||void 0===l?void 0:l.raw_output)||"Failed to lock LTE cells");await new Promise(e=>setTimeout(e,1e3));let n=await (0,R.a)('AT+QNWLOCK="save_ctrl",1,0',!0);if((null===(a=n.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(r=n.response)||void 0===r?void 0:r.raw_output)||"Failed to save LTE lock configuration");await I(),e({title:"Success",description:"LTE cells locked successfully with ".concat(i.length," pair").concat(i.length>1?"s":"")})}catch(t){s(!1),e({title:"Error",description:t instanceof Error?t.message:"Failed to lock LTE cells",variant:"destructive"})}},G=async()=>{try{var t,a,l,r;if(s(!0),!F.NRPCI||!F.NRARFCN||!F.SCS||!F.NRBAND)throw Error("Please fill all NR5G fields");let i='AT+QNWLOCK="common/5g",'.concat(F.NRPCI,",").concat(F.NRARFCN,",").concat(F.SCS,",").concat(F.NRBAND),o=await (0,R.a)(i,!0);if((null===(t=o.response)||void 0===t?void 0:t.status)!=="success")throw Error((null===(l=o.response)||void 0===l?void 0:l.raw_output)||"Failed to lock NR5G cell");await new Promise(e=>setTimeout(e,1e3));let c=await (0,R.a)('AT+QNWLOCK="save_ctrl",0,1',!0);if((null===(a=c.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(r=c.response)||void 0===r?void 0:r.raw_output)||"Failed to save NR5G lock configuration");await I(),e({title:"Success",description:"NR5G cell locked successfully"})}catch(t){s(!1),e({title:"Error",description:t instanceof Error?t.message:"Failed to lock NR5G cell",variant:"destructive"})}},D=async()=>{try{var t,a,l,r,i,o,c,n;s(!0);let d=await (0,R.a)('AT+QNWLOCK="common/4g",0',!0);if((null===(t=d.response)||void 0===t?void 0:t.status)!=="success")throw Error((null===(i=d.response)||void 0===i?void 0:i.raw_output)||"Failed to reset LTE lock");await new Promise(e=>setTimeout(e,1e3));let u=await (0,R.a)('AT+QNWLOCK="save_ctrl",0,0',!0);if((null===(a=u.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(o=u.response)||void 0===o?void 0:o.raw_output)||"Failed to save LTE reset configuration");let h=await (0,R.a)("AT+COPS=2",!0);if((null===(l=h.response)||void 0===l?void 0:l.status)!=="success")throw Error((null===(c=h.response)||void 0===c?void 0:c.raw_output)||"Failed to disconnect from network");await new Promise(e=>setTimeout(e,2e3));let m=await (0,R.a)("AT+COPS=0",!0);if((null===(r=m.response)||void 0===r?void 0:r.status)!=="success")throw Error((null===(n=m.response)||void 0===n?void 0:n.raw_output)||"Failed to reconnect to network");await I(),e({title:"Success",description:"LTE cell locking reset to default"})}catch(t){s(!1),e({title:"Error",description:"Failed to reset LTE cell locking",variant:"destructive"})}},O=async()=>{try{var t,a,l,r,i,o,c,n;s(!0);let d=await (0,R.a)('AT+QNWLOCK="common/5g",0',!0);if((null===(t=d.response)||void 0===t?void 0:t.status)!=="success")throw Error((null===(i=d.response)||void 0===i?void 0:i.raw_output)||"Failed to reset NR5G lock");let u=await (0,R.a)('AT+QNWLOCK="save_ctrl",0,0',!0);if((null===(a=u.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(o=u.response)||void 0===o?void 0:o.raw_output)||"Failed to save NR5G reset configuration");let h=await (0,R.a)("AT+COPS=2",!0);if((null===(l=h.response)||void 0===l?void 0:l.status)!=="success")throw Error((null===(c=h.response)||void 0===c?void 0:c.raw_output)||"Failed to disconnect from network");await new Promise(e=>setTimeout(e,2e3));let m=await (0,R.a)("AT+COPS=0",!0);if((null===(r=m.response)||void 0===r?void 0:r.status)!=="success")throw Error((null===(n=m.response)||void 0===n?void 0:n.raw_output)||"Failed to reconnect to network");await I(),e({title:"Success",description:"NR5G cell locking reset to default"})}catch(t){s(!1),e({title:"Error",description:"Failed to reset NR5G cell locking",variant:"destructive"})}},z=async t=>{try{var a,l;s(!0);let r=await (0,R.a)('AT+QNWLOCK="save_ctrl",'.concat(t?"1":"0",",").concat(j?"1":"0"),!0);if((null===(a=r.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(l=r.response)||void 0===l?void 0:l.raw_output)||"Failed to update LTE persist setting");await I(),e({title:"Success",description:"LTE persist on boot ".concat(t?"enabled":"disabled")}),await new Promise(e=>setTimeout(e,2e3)),window.location.reload()}catch(t){e({title:"Error",description:"Failed to update LTE persist setting",variant:"destructive"})}finally{s(!1)}},B=async t=>{try{var a,l;s(!0);let r=await (0,R.a)('AT+QNWLOCK="save_ctrl",'.concat(C?"1":"0",",").concat(t?"1":"0"),!0);if((null===(a=r.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(l=r.response)||void 0===l?void 0:l.raw_output)||"Failed to update NR5G persist setting");await I(),e({title:"Success",description:"NR5G persist on boot ".concat(t?"enabled":"disabled")}),await new Promise(e=>setTimeout(e,2e3)),window.location.reload()}catch(t){e({title:"Error",description:"Failed to update NR5G persist setting",variant:"destructive"})}finally{s(!1)}};return(0,l.useEffect)(()=>{(async()=>{let e=await fetch("/cgi-bin/quecmanager/cell-locking/get_cell_lock.sh"),t=await e.json();E({enabled:t.enabled,startTime:t.start_time||"",endTime:t.end_time||"",active:t.active,status:t.status,message:t.message,locked:t.locked}),N(t.locked),f("1"===t.ltePersist),b("1"===t.nr5gPersist),await I()})()},[]),(0,l.useEffect)(()=>{E(e=>({...e,locked:p}))},[p]),(0,a.jsxs)("div",{className:"grid gap-6",children:[(0,a.jsxs)(r.Zp,{children:[(0,a.jsxs)(r.aR,{children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)(r.ZB,{children:"4G LTE Cellular Locking"}),(0,a.jsx)(h.E,{children:p?(0,a.jsxs)("p",{className:"flex items-center gap-x-1",children:[(0,a.jsx)(m.A,{className:"h-3 w-3"}),"Locked"]}):(0,a.jsxs)("p",{className:"flex items-center gap-x-1",children:[(0,a.jsx)(v,{className:"h-3 w-3"}),"Unlocked"]})})]}),(0,a.jsx)(r.BT,{children:"Lock the device to specific LTE Physical Cell IDs."})]}),(0,a.jsx)(r.Wu,{children:(0,a.jsxs)("form",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-6",children:[(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"EARFCN1",children:"EARFCN 1"}),(0,a.jsx)(n.p,{type:"text",id:"EARFCN1",placeholder:"EARFCN 1",value:k.EARFCN1,onChange:e=>T(t=>({...t,EARFCN1:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"PCI1",children:"PCI 1"}),(0,a.jsx)(n.p,{type:"text",id:"PCI1",placeholder:"PCI 1",value:k.PCI1,onChange:e=>T(t=>({...t,PCI1:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsx)(c.Separator,{className:"my-1 col-span-2 w-full"}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"EARFCN2",children:"EARFCN 2"}),(0,a.jsx)(n.p,{type:"text",id:"EARFCN2",placeholder:"EARFCN 2",value:k.EARFCN2,onChange:e=>T(t=>({...t,EARFCN2:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"PCI2",children:"PCI 2"}),(0,a.jsx)(n.p,{type:"text",id:"PCI2",placeholder:"PCI 2",value:k.PCI2,onChange:e=>T(t=>({...t,PCI2:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsx)(c.Separator,{className:"my-1 col-span-2 w-full"}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"EARFCN3",children:"EARFCN 3"}),(0,a.jsx)(n.p,{type:"text",id:"EARFCN3",placeholder:"EARFCN 3",value:k.EARFCN3,onChange:e=>T(t=>({...t,EARFCN3:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"PCI3",children:"PCI 3"}),(0,a.jsx)(n.p,{type:"text",id:"PCI3",placeholder:"PCI 3",value:k.PCI3,onChange:e=>T(t=>({...t,PCI3:e.target.value})),disabled:t||y.enabled&&p})]})]})}),(0,a.jsxs)(r.wL,{className:"border-t py-4 grid grid-flow-row md:grid-cols-3 grid-cols-1 gap-4",children:[(0,a.jsxs)(o.$,{onClick:_,disabled:t||y.enabled,children:[(0,a.jsx)(m.A,{className:"h-4 w-4"}),"Lock LTE Cells"]}),(0,a.jsxs)(u.l,{pressed:C,onPressedChange:z,disabled:t||y.enabled,children:[(0,a.jsx)(g.A,{className:"h-4 w-4 mr-2"}),"Persist on Reboot"]}),(0,a.jsxs)(o.$,{variant:"secondary",onClick:D,disabled:t||y.enabled,children:[(0,a.jsx)(w.A,{className:"h-4 w-4"}),"Reset to Default"]})]})]}),(0,a.jsxs)(r.Zp,{children:[(0,a.jsxs)(r.aR,{children:[(0,a.jsx)(r.ZB,{children:"NR5G-SA Cellular Locking"}),(0,a.jsx)(r.BT,{children:"Lock the device to a specific NR5G-SA Physical Cell ID."})]}),(0,a.jsx)(r.Wu,{children:(0,a.jsxs)("form",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-6",children:[(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"NR-ARFCN",children:"NR ARFCN"}),(0,a.jsx)(n.p,{type:"text",id:"NR-ARFCN",placeholder:"NR ARFCN",value:F.NRARFCN,onChange:e=>P(t=>({...t,NRARFCN:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"NR-PCI",children:"NR PCI"}),(0,a.jsx)(n.p,{type:"text",id:"NR-PCI",placeholder:"NR PCI",value:F.NRPCI,onChange:e=>P(t=>({...t,NRPCI:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsx)(c.Separator,{className:"my-0.5 col-span-2 w-full"}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"SCS",children:"SCS"}),(0,a.jsxs)(i.l6,{value:F.SCS,onValueChange:e=>P(t=>({...t,SCS:e})),disabled:t||y.enabled&&p,children:[(0,a.jsx)(i.bq,{id:"SCS",children:(0,a.jsx)(i.yv,{placeholder:"SCS"})}),(0,a.jsx)(i.gC,{children:(0,a.jsxs)(i.s3,{children:[(0,a.jsx)(i.TR,{children:"SCS"}),(0,a.jsx)(i.eb,{value:"15",children:"15 kHz"}),(0,a.jsx)(i.eb,{value:"30",children:"30 kHz"}),(0,a.jsx)(i.eb,{value:"60",children:"60 kHz"}),(0,a.jsx)(i.eb,{value:"120",children:"120 kHz"}),(0,a.jsx)(i.eb,{value:"240",children:"240 kHz"})]})})]})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"NRBAND",children:"NR Band"}),(0,a.jsx)(n.p,{type:"text",id:"NRBAND",placeholder:"NR BAND",value:F.NRBAND,onChange:e=>P(t=>({...t,NRBAND:e.target.value})),disabled:t||y.enabled&&p})]})]})}),(0,a.jsxs)(r.wL,{className:"border-t py-4 grid grid-flow-row md:grid-cols-3 grid-cols-1 gap-4",children:[(0,a.jsxs)(o.$,{onClick:G,disabled:t||y.enabled,children:[(0,a.jsx)(m.A,{className:"h-4 w-4"}),"Lock NR5G-SA Cell"]}),(0,a.jsxs)(u.l,{pressed:j,onPressedChange:B,disabled:t||y.enabled,children:[(0,a.jsx)(g.A,{className:"h-4 w-4 mr-2"}),"Persist on Reboot"]}),(0,a.jsxs)(o.$,{variant:"secondary",onClick:O,disabled:t||y.enabled,children:[(0,a.jsx)(w.A,{className:"h-4 w-4"}),"Reset to Default"]})]})]}),(0,a.jsx)(A,{loading:t,scheduleData:y,onStartTimeChange:e=>{E(t=>({...t,startTime:e}))},onEndTimeChange:e=>{E(t=>({...t,endTime:e}))},onSchedulingToggle:L})]})}},77257:(e,t,s)=>{s.d(t,{l:()=>n,v:()=>c});var a=s(20475),l=s(20107),r=s(85692),i=s(29395),o=s(22250);let c=(0,i.F)("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent shadow-sm hover:bg-accent hover:text-accent-foreground"},size:{default:"h-9 px-2 min-w-9",sm:"h-8 px-1.5 min-w-8",lg:"h-10 px-2.5 min-w-10"}},defaultVariants:{variant:"default",size:"default"}}),n=l.forwardRef((e,t)=>{let{className:s,variant:l,size:i,...n}=e;return(0,a.jsx)(r.b,{ref:t,className:(0,o.cn)(c({variant:l,size:i,className:s})),...n})});n.displayName=r.b.displayName},38545:(e,t,s)=>{s.d(t,{A:()=>a});let a=(0,s(39997).A)("CircleX",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]])},29475:(e,t,s)=>{s.d(t,{A:()=>a});let a=(0,s(39997).A)("Lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]])},88926:(e,t,s)=>{s.d(t,{a:()=>a});let a=async function(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:30;try{var a;let l=e.trim().toUpperCase().startsWith("AT")?e.trim():"AT".concat(e.trim()),r=encodeURIComponent(l),i="/cgi-bin/quecmanager/at_cmd/at_queue_client.sh?command=".concat(r);t&&(i+="&wait=1&timeout=".concat(s));let o=await fetch(i,{method:"GET",headers:{Accept:"application/json",Authorization:"".concat(localStorage.getItem("authToken"))},signal:AbortSignal.timeout(1e3*s+5e3)});if(!o.ok)throw Error("AT command failed with status: ".concat(o.status));let c=await o.json();if(c.error)throw Error("AT queue error: ".concat(c.error));if(t&&(null===(a=c.response)||void 0===a?void 0:a.status)==="timeout")throw Error("AT command timed out after ".concat(s," seconds"));return c}catch(e){throw console.error("AT Command error:",e),e}}},88853:(e,t,s)=>{s.d(t,{b:()=>n});var a=s(20107),l=s(34544),r=s(20475),i="horizontal",o=["horizontal","vertical"],c=a.forwardRef((e,t)=>{let{decorative:s,orientation:a=i,...c}=e,n=o.includes(a)?a:i;return(0,r.jsx)(l.sG.div,{"data-orientation":n,...s?{role:"none"}:{"aria-orientation":"vertical"===n?n:void 0,role:"separator"},...c,ref:t})});c.displayName="Separator";var n=c},85692:(e,t,s)=>{s.d(t,{b:()=>n});var a=s(20107),l=s(94521),r=s(13061),i=s(34544),o=s(20475),c=a.forwardRef((e,t)=>{let{pressed:s,defaultPressed:a=!1,onPressedChange:c,...n}=e,[d=!1,u]=(0,r.i)({prop:s,onChange:c,defaultProp:a});return(0,o.jsx)(i.sG.button,{type:"button","aria-pressed":d,"data-state":d?"on":"off","data-disabled":e.disabled?"":void 0,...n,ref:t,onClick:(0,l.m)(e.onClick,()=>{e.disabled||u(!d)})})});c.displayName="Toggle";var n=c}}]); \ No newline at end of file +"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2266],{25621:(e,t,s)=>{s.r(t),s.d(t,{default:()=>y});var a=s(20475),l=s(20107),r=s(72167),i=s(35601),o=s(42541),c=s(76554),n=s(64219),d=s(49153),u=s(77257),h=s(45934),m=s(29475),p=s(39997);let g=(0,p.A)("LockOpen",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 9.9-1",key:"1mm8w8"}]]);var v=s(52161),w=s(97801),x=s(32857),N=s(49573),C=s(38545),f=s(98969);let j=(0,p.A)("Clock1",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 14.5 8",key:"12zbmj"}]]),b=(0,p.A)("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]),A=e=>{let{loading:t,scheduleData:s,onStartTimeChange:i,onEndTimeChange:c,onSchedulingToggle:u}=e,[h,p]=(0,l.useState)({text:"Disabled",color:"text-red-600",icon:C.A}),g=()=>{if(!s.enabled){p({text:"Disabled",color:"text-red-600",icon:C.A});return}let e=new Date,t=60*e.getHours()+e.getMinutes(),[a,l]=s.startTime.split(":").map(Number),[r,i]=s.endTime.split(":").map(Number),o=60*a+l,c=60*r+i;o<=c?t>=o&&t<=c?p({text:"Active",color:"text-green-600",icon:f.A}):p({text:"Inactive",color:"text-yellow-500",icon:j}):t>=o||t<=c?p({text:"Active",color:"text-green-600",icon:f.A}):p({text:"Inactive",color:"text-yellow-500",icon:j})},v=()=>{s.active?p({text:"Active",color:"text-green-600",icon:f.A}):s.enabled&&!s.active?p({text:"Inactive",color:"text-yellow-500",icon:j}):p({text:"Disabled",color:"text-red-600",icon:C.A})};(0,l.useEffect)(()=>{v();let e=setInterval(g,6e4);return()=>{clearInterval(e)}},[s]);let w=h.icon;return(0,a.jsxs)(r.Zp,{children:[(0,a.jsxs)(r.aR,{children:[(0,a.jsxs)(r.ZB,{className:"flex items-center justify-between",children:[(0,a.jsx)("div",{children:(0,a.jsx)("span",{children:"Cell Locking Scheduler"})}),(0,a.jsxs)("div",{className:"flex items-center",children:[(0,a.jsx)(w,{className:"h-4 w-4 mr-1 ".concat(h.color)}),(0,a.jsx)("div",{className:"text-sm text-gray-500",children:h.text})]})]}),(0,a.jsx)(r.BT,{children:"Schedule the device to lock to specific cells at certain times."})]}),(0,a.jsxs)(r.Wu,{children:[s.enabled&&(0,a.jsxs)(N.Fc,{className:"mb-6",children:[(0,a.jsx)(m.A,{className:"h-4 w-4",color:"orange"}),(0,a.jsx)(N.XL,{children:"Scheduled Cell Locking Active"}),(0,a.jsx)(N.TN,{children:"Cell locking is currently being managed by the scheduler. Manual changes to cell locks may be overridden during scheduled hours."})]}),(0,a.jsxs)("div",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-4",children:[(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"start-time",children:"Start Time"}),(0,a.jsx)(n.p,{type:"time",id:"start-time",value:s.startTime,onChange:e=>i(e.target.value),disabled:t||s.enabled,placeholder:"START TIME"})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"end-time",children:"End Time"}),(0,a.jsx)(n.p,{type:"time",id:"end-time",value:s.endTime,onChange:e=>c(e.target.value),disabled:t||s.enabled,placeholder:"END TIME"})]}),(0,a.jsx)("div",{className:"lg:col-span-2 col-span-1",children:(0,a.jsx)("p",{className:"text-sm text-gray-500",children:"Make sure to properly set the timezone using Luci for this to properly work. The scheduler will lock the device to the selected cells during the specified time range. The scheduler will not lock the device if the time range is not valid (e.g. start time is after end time)."})})]})]}),(0,a.jsx)(r.wL,{className:"border-t py-4",children:(0,a.jsxs)(o.$,{onClick:()=>u(!s.enabled),disabled:t||!s.locked&&!s.enabled,children:[(0,a.jsx)(b,{className:"h-4 w-4"}),s.enabled?"Disable Scheduler":"Enable Scheduler"]})})]})};var R=s(88926);let y=()=>{let{toast:e}=(0,x.dj)(),[t,s]=(0,l.useState)(!1),[p,N]=(0,l.useState)(!1),[C,f]=(0,l.useState)(!1),[j,b]=(0,l.useState)(!1),[y,E]=(0,l.useState)({enabled:!1,startTime:"",endTime:"",active:!1,status:"",message:"",locked:!1}),[k,T]=(0,l.useState)({EARFCN1:"",PCI1:"",EARFCN2:"",PCI2:"",EARFCN3:"",PCI3:""}),[F,P]=(0,l.useState)({NRARFCN:"",NRPCI:"",SCS:"",NRBAND:""}),S=e=>{let t=e.match(/\+QNWLOCK:\s*(.+?)\n/);return t?t[1].replace(/"/g,"").split(",").map(e=>e.trim()):null},I=async()=>{try{s(!0);let e=await fetch("/cgi-bin/quecmanager/at_cmd/fetch_data.sh?set=8"),t=await e.json();if(!e.ok)throw Error("Failed to fetch current status");console.log("Current cell locking status:",t);let a=S(t[2].response);console.log("Persist status:",a),a&&a.length>=2&&(f("1"===a[1]),b("1"===a[2]));let l=S(t[0].response);if(console.log("Current LTE lock status:",l),l){let e={EARFCN1:l[2],PCI1:l[3],EARFCN2:l[4],PCI2:l[5],EARFCN3:l[6],PCI3:l[7]};T(e),console.log("New LTE state:",e),parseInt(l[1])>0&&N(!0)}let r=S(t[1].response);if(console.log("Current NR5G lock status:",r),r&&r.length>=5){let e={NRPCI:r[1],NRARFCN:r[2],SCS:r[3],NRBAND:r[4]};P(e),console.log("New NR5G state:",e),parseInt(r[1])>0&&N(!0)}}catch(t){console.error("Error fetching current status:",t),e({title:"Error",description:"Failed to fetch current cell locking status",variant:"destructive"})}finally{s(!1)}},L=async t=>{try{let a;if(s(!0),t&&(!y.startTime||!y.endTime))throw Error("Please set both start and end times");let l=t?{enabled:!0,startTime:y.startTime,endTime:y.endTime}:{enabled:!1},r=await fetch("/cgi-bin/quecmanager/cell-locking/handle_scheduled_locking.sh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l)}),i=await r.text();if(!r.ok)throw Error("Server responded with status: ".concat(r.status));try{a=JSON.parse(i)}catch(e){throw Error("Failed to parse response: ".concat(i))}if("success"===a.status)E(e=>({...e,enabled:t})),e({title:"Success",description:t?"Cell locking schedule enabled":"Cell locking schedule disabled"});else throw Error(a.message||"Failed to update scheduling")}catch(e){}finally{s(!1),await I()}},_=async()=>{try{var t,a,l,r;s(!0);let i=[];if(k.EARFCN1&&k.PCI1&&i.push([k.EARFCN1,k.PCI1]),k.EARFCN2&&k.PCI2&&i.push([k.EARFCN2,k.PCI2]),k.EARFCN3&&k.PCI3&&i.push([k.EARFCN3,k.PCI3]),0===i.length)throw Error("Please fill at least one EARFCN and PCI pair");let o='AT+QNWLOCK="common/4g",'.concat(i.length);i.forEach(e=>{let[t,s]=e;o+=",".concat(t,",").concat(s)});let c=await (0,R.a)(o,!0);if((null===(t=c.response)||void 0===t?void 0:t.status)!=="success")throw Error((null===(l=c.response)||void 0===l?void 0:l.raw_output)||"Failed to lock LTE cells");await new Promise(e=>setTimeout(e,1e3));let n=await (0,R.a)('AT+QNWLOCK="save_ctrl",1,0',!0);if((null===(a=n.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(r=n.response)||void 0===r?void 0:r.raw_output)||"Failed to save LTE lock configuration");await I(),e({title:"Success",description:"LTE cells locked successfully with ".concat(i.length," pair").concat(i.length>1?"s":"")})}catch(t){s(!1),e({title:"Error",description:t instanceof Error?t.message:"Failed to lock LTE cells",variant:"destructive"})}},G=async()=>{try{var t,a,l,r;if(s(!0),!F.NRPCI||!F.NRARFCN||!F.SCS||!F.NRBAND)throw Error("Please fill all NR5G fields");let i='AT+QNWLOCK="common/5g",'.concat(F.NRPCI,",").concat(F.NRARFCN,",").concat(F.SCS,",").concat(F.NRBAND),o=await (0,R.a)(i,!0);if((null===(t=o.response)||void 0===t?void 0:t.status)!=="success")throw Error((null===(l=o.response)||void 0===l?void 0:l.raw_output)||"Failed to lock NR5G cell");await new Promise(e=>setTimeout(e,1e3));let c=await (0,R.a)('AT+QNWLOCK="save_ctrl",0,1',!0);if((null===(a=c.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(r=c.response)||void 0===r?void 0:r.raw_output)||"Failed to save NR5G lock configuration");await I(),e({title:"Success",description:"NR5G cell locked successfully"})}catch(t){s(!1),e({title:"Error",description:t instanceof Error?t.message:"Failed to lock NR5G cell",variant:"destructive"})}},D=async()=>{try{var t,a,l,r,i,o,c,n;s(!0);let d=await (0,R.a)('AT+QNWLOCK="common/4g",0',!0);if((null===(t=d.response)||void 0===t?void 0:t.status)!=="success")throw Error((null===(i=d.response)||void 0===i?void 0:i.raw_output)||"Failed to reset LTE lock");await new Promise(e=>setTimeout(e,1e3));let u=await (0,R.a)('AT+QNWLOCK="save_ctrl",0,0',!0);if((null===(a=u.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(o=u.response)||void 0===o?void 0:o.raw_output)||"Failed to save LTE reset configuration");let h=await (0,R.a)("AT+COPS=2",!0);if((null===(l=h.response)||void 0===l?void 0:l.status)!=="success")throw Error((null===(c=h.response)||void 0===c?void 0:c.raw_output)||"Failed to disconnect from network");await new Promise(e=>setTimeout(e,2e3));let m=await (0,R.a)("AT+COPS=0",!0);if((null===(r=m.response)||void 0===r?void 0:r.status)!=="success")throw Error((null===(n=m.response)||void 0===n?void 0:n.raw_output)||"Failed to reconnect to network");await I(),e({title:"Success",description:"LTE cell locking reset to default"})}catch(t){s(!1),e({title:"Error",description:"Failed to reset LTE cell locking",variant:"destructive"})}},O=async()=>{try{var t,a,l,r,i,o,c,n;s(!0);let d=await (0,R.a)('AT+QNWLOCK="common/5g",0',!0);if((null===(t=d.response)||void 0===t?void 0:t.status)!=="success")throw Error((null===(i=d.response)||void 0===i?void 0:i.raw_output)||"Failed to reset NR5G lock");let u=await (0,R.a)('AT+QNWLOCK="save_ctrl",0,0',!0);if((null===(a=u.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(o=u.response)||void 0===o?void 0:o.raw_output)||"Failed to save NR5G reset configuration");let h=await (0,R.a)("AT+COPS=2",!0);if((null===(l=h.response)||void 0===l?void 0:l.status)!=="success")throw Error((null===(c=h.response)||void 0===c?void 0:c.raw_output)||"Failed to disconnect from network");await new Promise(e=>setTimeout(e,2e3));let m=await (0,R.a)("AT+COPS=0",!0);if((null===(r=m.response)||void 0===r?void 0:r.status)!=="success")throw Error((null===(n=m.response)||void 0===n?void 0:n.raw_output)||"Failed to reconnect to network");await I(),e({title:"Success",description:"NR5G cell locking reset to default"})}catch(t){s(!1),e({title:"Error",description:"Failed to reset NR5G cell locking",variant:"destructive"})}},z=async t=>{try{var a,l;s(!0);let r=await (0,R.a)('AT+QNWLOCK="save_ctrl",'.concat(t?"1":"0",",").concat(j?"1":"0"),!0);if((null===(a=r.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(l=r.response)||void 0===l?void 0:l.raw_output)||"Failed to update LTE persist setting");await I(),e({title:"Success",description:"LTE persist on boot ".concat(t?"enabled":"disabled")}),await new Promise(e=>setTimeout(e,2e3)),window.location.reload()}catch(t){e({title:"Error",description:"Failed to update LTE persist setting",variant:"destructive"})}finally{s(!1)}},B=async t=>{try{var a,l;s(!0);let r=await (0,R.a)('AT+QNWLOCK="save_ctrl",'.concat(C?"1":"0",",").concat(t?"1":"0"),!0);if((null===(a=r.response)||void 0===a?void 0:a.status)!=="success")throw Error((null===(l=r.response)||void 0===l?void 0:l.raw_output)||"Failed to update NR5G persist setting");await I(),e({title:"Success",description:"NR5G persist on boot ".concat(t?"enabled":"disabled")}),await new Promise(e=>setTimeout(e,2e3)),window.location.reload()}catch(t){e({title:"Error",description:"Failed to update NR5G persist setting",variant:"destructive"})}finally{s(!1)}};return(0,l.useEffect)(()=>{(async()=>{let e=await fetch("/cgi-bin/quecmanager/cell-locking/get_cell_lock.sh"),t=await e.json();E({enabled:t.enabled,startTime:t.start_time||"",endTime:t.end_time||"",active:t.active,status:t.status,message:t.message,locked:t.locked}),N(t.locked),f("1"===t.ltePersist),b("1"===t.nr5gPersist),await I()})()},[]),(0,l.useEffect)(()=>{E(e=>({...e,locked:p}))},[p]),(0,a.jsxs)("div",{className:"grid gap-6",children:[(0,a.jsxs)(r.Zp,{children:[(0,a.jsxs)(r.aR,{children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)(r.ZB,{children:"4G LTE Cellular Locking"}),(0,a.jsx)(h.E,{children:p?(0,a.jsxs)("p",{className:"flex items-center gap-x-1",children:[(0,a.jsx)(m.A,{className:"h-3 w-3"}),"Locked"]}):(0,a.jsxs)("p",{className:"flex items-center gap-x-1",children:[(0,a.jsx)(g,{className:"h-3 w-3"}),"Unlocked"]})})]}),(0,a.jsx)(r.BT,{children:"Lock the device to specific LTE Physical Cell IDs."})]}),(0,a.jsx)(r.Wu,{children:(0,a.jsxs)("form",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-6",children:[(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"EARFCN1",children:"EARFCN 1"}),(0,a.jsx)(n.p,{type:"text",id:"EARFCN1",placeholder:"EARFCN 1",value:k.EARFCN1,onChange:e=>T(t=>({...t,EARFCN1:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"PCI1",children:"PCI 1"}),(0,a.jsx)(n.p,{type:"text",id:"PCI1",placeholder:"PCI 1",value:k.PCI1,onChange:e=>T(t=>({...t,PCI1:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsx)(c.Separator,{className:"my-1 lg:col-span-2 col-span-1 w-full"}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"EARFCN2",children:"EARFCN 2"}),(0,a.jsx)(n.p,{type:"text",id:"EARFCN2",placeholder:"EARFCN 2",value:k.EARFCN2,onChange:e=>T(t=>({...t,EARFCN2:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"PCI2",children:"PCI 2"}),(0,a.jsx)(n.p,{type:"text",id:"PCI2",placeholder:"PCI 2",value:k.PCI2,onChange:e=>T(t=>({...t,PCI2:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsx)(c.Separator,{className:"my-1 lg:col-span-2 col-span-1 w-full"}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"EARFCN3",children:"EARFCN 3"}),(0,a.jsx)(n.p,{type:"text",id:"EARFCN3",placeholder:"EARFCN 3",value:k.EARFCN3,onChange:e=>T(t=>({...t,EARFCN3:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"PCI3",children:"PCI 3"}),(0,a.jsx)(n.p,{type:"text",id:"PCI3",placeholder:"PCI 3",value:k.PCI3,onChange:e=>T(t=>({...t,PCI3:e.target.value})),disabled:t||y.enabled&&p})]})]})}),(0,a.jsxs)(r.wL,{className:"border-t py-4 grid grid-flow-row md:grid-cols-3 grid-cols-1 gap-4",children:[(0,a.jsxs)(o.$,{onClick:_,disabled:t||y.enabled,children:[(0,a.jsx)(m.A,{className:"h-4 w-4"}),"Lock LTE Cells"]}),(0,a.jsxs)(u.l,{pressed:C,onPressedChange:z,disabled:t||y.enabled,children:[(0,a.jsx)(v.A,{className:"h-4 w-4 mr-2"}),"Persist on Reboot"]}),(0,a.jsxs)(o.$,{variant:"secondary",onClick:D,disabled:t||y.enabled,children:[(0,a.jsx)(w.A,{className:"h-4 w-4"}),"Reset to Default"]})]})]}),(0,a.jsxs)(r.Zp,{children:[(0,a.jsxs)(r.aR,{children:[(0,a.jsx)(r.ZB,{children:"NR5G-SA Cellular Locking"}),(0,a.jsx)(r.BT,{children:"Lock the device to a specific NR5G-SA Physical Cell ID."})]}),(0,a.jsx)(r.Wu,{children:(0,a.jsxs)("form",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-6",children:[(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"NR-ARFCN",children:"NR ARFCN"}),(0,a.jsx)(n.p,{type:"text",id:"NR-ARFCN",placeholder:"NR ARFCN",value:F.NRARFCN,onChange:e=>P(t=>({...t,NRARFCN:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"NR-PCI",children:"NR PCI"}),(0,a.jsx)(n.p,{type:"text",id:"NR-PCI",placeholder:"NR PCI",value:F.NRPCI,onChange:e=>P(t=>({...t,NRPCI:e.target.value})),disabled:t||y.enabled&&p})]}),(0,a.jsx)(c.Separator,{className:"my-0.5 lg:col-span-2 col-span-1 w-full"}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"SCS",children:"SCS"}),(0,a.jsxs)(i.l6,{value:F.SCS,onValueChange:e=>P(t=>({...t,SCS:e})),disabled:t||y.enabled&&p,children:[(0,a.jsx)(i.bq,{id:"SCS",children:(0,a.jsx)(i.yv,{placeholder:"SCS"})}),(0,a.jsx)(i.gC,{children:(0,a.jsxs)(i.s3,{children:[(0,a.jsx)(i.TR,{children:"SCS"}),(0,a.jsx)(i.eb,{value:"15",children:"15 kHz"}),(0,a.jsx)(i.eb,{value:"30",children:"30 kHz"}),(0,a.jsx)(i.eb,{value:"60",children:"60 kHz"}),(0,a.jsx)(i.eb,{value:"120",children:"120 kHz"}),(0,a.jsx)(i.eb,{value:"240",children:"240 kHz"})]})})]})]}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"NRBAND",children:"NR Band"}),(0,a.jsx)(n.p,{type:"text",id:"NRBAND",placeholder:"NR BAND",value:F.NRBAND,onChange:e=>P(t=>({...t,NRBAND:e.target.value})),disabled:t||y.enabled&&p})]})]})}),(0,a.jsxs)(r.wL,{className:"border-t py-4 grid grid-flow-row md:grid-cols-3 grid-cols-1 gap-4",children:[(0,a.jsxs)(o.$,{onClick:G,disabled:t||y.enabled,children:[(0,a.jsx)(m.A,{className:"h-4 w-4"}),"Lock NR5G-SA Cell"]}),(0,a.jsxs)(u.l,{pressed:j,onPressedChange:B,disabled:t||y.enabled,children:[(0,a.jsx)(v.A,{className:"h-4 w-4 mr-2"}),"Persist on Reboot"]}),(0,a.jsxs)(o.$,{variant:"secondary",onClick:O,disabled:t||y.enabled,children:[(0,a.jsx)(w.A,{className:"h-4 w-4"}),"Reset to Default"]})]})]}),(0,a.jsx)(A,{loading:t,scheduleData:y,onStartTimeChange:e=>{E(t=>({...t,startTime:e}))},onEndTimeChange:e=>{E(t=>({...t,endTime:e}))},onSchedulingToggle:L})]})}},77257:(e,t,s)=>{s.d(t,{l:()=>n,v:()=>c});var a=s(20475),l=s(20107),r=s(85692),i=s(29395),o=s(22250);let c=(0,i.F)("inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-transparent",outline:"border border-input bg-transparent shadow-sm hover:bg-accent hover:text-accent-foreground"},size:{default:"h-9 px-2 min-w-9",sm:"h-8 px-1.5 min-w-8",lg:"h-10 px-2.5 min-w-10"}},defaultVariants:{variant:"default",size:"default"}}),n=l.forwardRef((e,t)=>{let{className:s,variant:l,size:i,...n}=e;return(0,a.jsx)(r.b,{ref:t,className:(0,o.cn)(c({variant:l,size:i,className:s})),...n})});n.displayName=r.b.displayName},38545:(e,t,s)=>{s.d(t,{A:()=>a});let a=(0,s(39997).A)("CircleX",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]])},29475:(e,t,s)=>{s.d(t,{A:()=>a});let a=(0,s(39997).A)("Lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]])},88926:(e,t,s)=>{s.d(t,{a:()=>a});let a=async function(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:30;try{var a;let l=e.trim().toUpperCase().startsWith("AT")?e.trim():"AT".concat(e.trim()),r=encodeURIComponent(l),i="/cgi-bin/quecmanager/at_cmd/at_queue_client.sh?command=".concat(r);t&&(i+="&wait=1&timeout=".concat(s));let o=await fetch(i,{method:"GET",headers:{Accept:"application/json",Authorization:"".concat(localStorage.getItem("authToken"))},signal:AbortSignal.timeout(1e3*s+5e3)});if(!o.ok)throw Error("AT command failed with status: ".concat(o.status));let c=await o.json();if(c.error)throw Error("AT queue error: ".concat(c.error));if(t&&(null===(a=c.response)||void 0===a?void 0:a.status)==="timeout")throw Error("AT command timed out after ".concat(s," seconds"));return c}catch(e){throw console.error("AT Command error:",e),e}}},88853:(e,t,s)=>{s.d(t,{b:()=>n});var a=s(20107),l=s(34544),r=s(20475),i="horizontal",o=["horizontal","vertical"],c=a.forwardRef((e,t)=>{let{decorative:s,orientation:a=i,...c}=e,n=o.includes(a)?a:i;return(0,r.jsx)(l.sG.div,{"data-orientation":n,...s?{role:"none"}:{"aria-orientation":"vertical"===n?n:void 0,role:"separator"},...c,ref:t})});c.displayName="Separator";var n=c},85692:(e,t,s)=>{s.d(t,{b:()=>n});var a=s(20107),l=s(94521),r=s(13061),i=s(34544),o=s(20475),c=a.forwardRef((e,t)=>{let{pressed:s,defaultPressed:a=!1,onPressedChange:c,...n}=e,[d=!1,u]=(0,r.i)({prop:s,onChange:c,defaultProp:a});return(0,o.jsx)(i.sG.button,{type:"button","aria-pressed":d,"data-state":d?"on":"off","data-disabled":e.disabled?"":void 0,...n,ref:t,onClick:(0,l.m)(e.onClick,()=>{e.disabled||u(!d)})})});c.displayName="Toggle";var n=c}}]); \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/cell-settings/basic-settings/page-0265c47fc97c235c.js b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/cell-settings/basic-settings/page-7d5223318529fc2a.js similarity index 50% rename from ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/cell-settings/basic-settings/page-0265c47fc97c235c.js rename to ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/cell-settings/basic-settings/page-7d5223318529fc2a.js index 9a95eb5..6f63e8f 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/cell-settings/basic-settings/page-0265c47fc97c235c.js +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/cell-settings/basic-settings/page-7d5223318529fc2a.js @@ -1 +1 @@ -(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2545],{33945:(e,t,r)=>{Promise.resolve().then(r.bind(r,15469))},15469:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>T});var s=r(20475),l=r(20107),a=r(72167),n=r(35601),i=r(85014),o=r(42541),d=r(64219),c=r(49153),u=r(36760),p=r(32857),f=r(49573),m=r(29475);let h=()=>{let[e,t]=(0,l.useState)(null),[r,s]=(0,l.useState)(!0),a=(0,l.useCallback)(async()=>{try{var e,r;s(!0),t(null);let l=await fetch("/cgi-bin/quecmanager/at_cmd/fetch_data.sh?set=2"),a=await l.json(),n={APNProfiles:v(a[0].response,a[8].response,a[1].response),apnPDPType:x(a[0].response),preferredNetworkType:g(a[2].response),nr5gMode:N(a[3].response),simSlot:P(a[4].response),cfunState:a[5].response.match(/\d+/)[0].trim(),autoSelState:a[6].response.match(/\d+/)[0].trim(),mbnProfilesList:a[7].response.split("\n").filter(e=>e.includes('+QMBNCFG: "List"')).map(e=>{let t=e.match(/\+QMBNCFG: "List",\d+,\d+,\d+,"([^"]+)"/);return t?t[1]:null}).filter(Boolean),selectedMbnProfile:a[7].response.split("\n").filter(e=>e.includes('QMBNCFG: "List"')).findIndex(e=>1==e.split(",")[3]).toString(),dataProfileIndex:(()=>{try{var e;if(!(null===(e=a[8])||void 0===e?void 0:e.response))return"-";let t=a[8].response.split("\n").filter(e=>e.includes('+QMAP: "WWAN"'));if(!t.length)return"-";let r=t[0].match(/\+QMAP: "WWAN",\d+,(\d+),/);return r?r[1]:"-"}catch(e){return console.error("Error extracting data profile index:",e),"-"}})(),lteAMBR:y(null===(e=a[9])||void 0===e?void 0:e.response),nr5gAMBR:b(null===(r=a[10])||void 0===r?void 0:r.response)};t(n)}catch(e){console.error("Error fetching cell settings data:",e)}s(!1)},[]);return(0,l.useEffect)(()=>{a()},[a]),{data:e,isLoading:r,fetchCellSettingsData:a}},x=e=>{var t;let r=null===(t=e.split("\n").find(e=>e.includes("+CGDCONT: 1")))||void 0===t?void 0:t.split(",")[1].replace(/"/g,"");return void 0===r||""===r?"Error fetching PDP Type":r},g=e=>{var t;let r=null===(t=e.split("\n").find(e=>e.includes('+QNWPREFCFG: "mode_pref"')))||void 0===t?void 0:t.split(",")[1].replace(/"/g,"");return void 0===r||""===r?"Error fetching network type":r},N=e=>{var t;let r=null===(t=e.split("\n").find(e=>e.includes('+QNWPREFCFG: "nr5g_disable_mode"')))||void 0===t?void 0:t.split(",")[1].replace(/"/g,"");return void 0===r||""===r?"Error fetching NR5G mode":r},P=e=>{var t;let r=null===(t=e.split("\n").find(e=>e.includes("+QUIMSLOT:")))||void 0===t?void 0:t.split(":")[1].trim();return void 0===r||""===r?"Error fetching SIM slot":r},v=(e,t,r)=>{try{var s;let l=t.split("\n").filter(e=>e.includes('+QMAP: "WWAN"')),a=null===(s=l[0])||void 0===s?void 0:s.match(/\+QMAP: "WWAN",\d+,(\d+),/),n=a?a[1]:null,i=e.split("\n").filter(e=>e.includes("+CGDCONT:")).map(e=>{let t=e.split(",");if(t.length<3)return null;let s=t[0].replace("+CGDCONT:","").trim(),l=t[1].replace(/"/g,""),a=t[2].replace(/"/g,""),i=s===n;if(i&&(!a||""===a)){let e=r.split("\n").find(e=>{let t=e.match(/\+CGCONTRDP: (\d+),/);return t&&t[1]===s});if(e){let t=e.split(",");t.length>=3&&(a=t[2].replace(/"/g,""))}}return{cid:s,pdpType:l,apn:a,isActive:i}}).filter(e=>null!==e);return i.sort((e,t)=>e.isActive?-1:t.isActive?1:parseInt(e.cid)-parseInt(t.cid)),i.map(e=>e.apn)}catch(e){return console.error("Error processing APN profiles:",e),["Error fetching APN profiles"]}},y=e=>{try{if(!e||!e.includes('+QNWCFG: "lte_ambr"'))return[];let t=e.split("\n").filter(e=>e.includes('+QNWCFG: "lte_ambr"'));if(!t.length)return[];let r=[];return t.forEach(e=>{let t=e.match(/\+QNWCFG: "lte_ambr","([^"]+)",(\d+),(\d+)/);if(t&&t.length>=4){let e=t[1],s=t[2],l=t[3];r.push(e),r.push(s),r.push(l)}}),r}catch(e){return console.error("Error processing LTE AMBR values:",e),[]}},b=e=>{try{if(!e||!e.includes('+QNWCFG: "nr5g_ambr"'))return[];let t=e.split("\n").filter(e=>e.includes('+QNWCFG: "nr5g_ambr"'));if(!t.length)return[];let r=[];return t.forEach(e=>{let t=e.match(/\+QNWCFG: "nr5g_ambr","([^"]+)",(\d+),(\d+)/);if(t&&t.length>=4){let e=t[1],s=t[2],l=t[3];r.push(e),r.push(s),r.push(l)}}),r}catch(e){return console.error("Error processing NR5G AMBR values:",e),[]}};var j=r(88926),w=r(76554);let A=e=>{let t=parseInt(e);return isNaN(t)?"Unknown":t>=1e6?"".concat((t/1e6).toFixed(2)," Gbps"):t>=1e3?"".concat(Math.round(t/1e3)," Mbps"):"".concat(t," Kbps")},S=e=>{let{lteAMBR:t,nr5gAMBR:r}=e,l=[];for(let e=0;e0&&(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-bold mb-2",children:"LTE AMBR"}),(0,s.jsx)("div",{className:"flex flex-col gap-2",children:l.map((e,t)=>(0,s.jsxs)("div",{className:"flex items-center justify-between border-b pb-2",children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:e.apn}),(0,s.jsxs)("span",{className:"text-sm text-gray-500 font-semibold",children:[e.download," DL / ",e.upload," UL"]})]},"lte-".concat(t)))})]}),n.length>0&&(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-bold mb-2",children:"NR5G AMBR"}),(0,s.jsx)("div",{className:"flex flex-col gap-2",children:n.map((e,t)=>(0,s.jsxs)("div",{className:"flex items-center justify-between border-b pb-2",children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:e.apn}),(0,s.jsxs)("span",{className:"text-sm text-gray-500 font-semibold",children:[e.download," DL / ",e.upload," UL"]})]},"nr5g-".concat(t)))})]}),0===l.length&&0===n.length&&(0,s.jsx)("div",{className:"text-center text-gray-500 py-4",children:"No AMBR information available"})]})}),(0,s.jsx)(a.wL,{children:(0,s.jsx)(a.BT,{children:"AMBR (Aggregate Maximum Bit Rate) is a network-enforced limit that caps the total bandwidth for non-priority data traffic (e.g., internet browsing) on LTE/5G connections. While devices can request specific AMBR values, operators may ignore these and enforce their own speed limits based on subscription plans, network policies, or congestion conditions."})})]})},T=()=>{var e;let{toast:t}=(0,p.dj)(),{data:r,isLoading:x,fetchCellSettingsData:g}=h(),[N,P]=(0,l.useState)(!1),[v,y]=(0,l.useState)(!1),[b,A]=(0,l.useState)(null),[T,M]=(0,l.useState)(null),[R,C]=(0,l.useState)({currentAPN:!1,apnPDPType:!1,preferredNetworkType:!1,nr5gMode:!1}),[E,I]=(0,l.useState)({currentAPN:"",apnPDPType:"",preferredNetworkType:"",nr5gMode:"",simSlot:"",cfunState:"",autoSelState:"",selectedMbnProfile:"0",mbnProfilesList:[],apnProfiles:[],selectedAPNProfileIndex:0,dataProfileIndex:"1",lteAMBR:[],nr5gAMBR:[]});(0,l.useEffect)(()=>{r&&!v&&(I({currentAPN:Array.isArray(r.APNProfiles)&&r.APNProfiles.length>0?r.APNProfiles[0]:"",apnPDPType:String(r.apnPDPType||""),preferredNetworkType:String(r.preferredNetworkType||""),nr5gMode:String(r.nr5gMode||""),simSlot:String(r.simSlot||""),cfunState:String(r.cfunState||""),autoSelState:String(r.autoSelState||""),selectedMbnProfile:r.selectedMbnProfile||"0",mbnProfilesList:r.mbnProfilesList||[],apnProfiles:Array.isArray(r.APNProfiles)?r.APNProfiles:[],selectedAPNProfileIndex:0,dataProfileIndex:r.dataProfileIndex||"1",lteAMBR:r.lteAMBR||[],nr5gAMBR:r.nr5gAMBR||[]}),y(!0))},[r,v]),(0,l.useEffect)(()=>{(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/profiles/check_status.sh");if(!e.ok)throw Error("Failed to fetch profile status: ".concat(e.statusText));let t=await e.json();if(M(t),"success"===t.status&&t.profile&&"unknown"!==t.profile&&"none"!==t.profile){let e=await fetch("/cgi-bin/quecmanager/profiles/list_profiles.sh");if(e.ok){let r=await e.json();if("success"===r.status&&Array.isArray(r.profiles)){let e=r.profiles.find(e=>e.name===t.profile);if(e){A(e);let t={currentAPN:!!e.apn,apnPDPType:!!e.pdp_type,preferredNetworkType:!!e.network_type,nr5gMode:!!(e.sa_nr5g_bands||e.nsa_nr5g_bands)};C(t)}}}}else A(null),C({currentAPN:!1,apnPDPType:!1,preferredNetworkType:!1,nr5gMode:!1})}catch(e){console.error("Error fetching profile data:",e)}})()},[]),(0,l.useEffect)(()=>{r||y(!1)},[r]);let k=async e=>{let r=[];if((e.currentAPN||e.apnPDPType)&&!R.currentAPN&&!R.apnPDPType){let t=e.apnPDPType||E.apnPDPType,s=e.currentAPN||E.currentAPN,l=parseInt(E.dataProfileIndex,10);console.log("Setting APN on profile ".concat(l,' to "').concat(s,'" with type "').concat(t,'"')),r.push("AT+CGDCONT=".concat(l,',"').concat(t,'","').concat(s,'"'))}if(void 0!==e.selectedAPNProfileIndex&&e.selectedAPNProfileIndex!==E.selectedAPNProfileIndex&&E.apnProfiles.length>e.selectedAPNProfileIndex&&!R.currentAPN){let t=E.apnPDPType,s=E.apnProfiles[e.selectedAPNProfileIndex],l=parseInt(E.dataProfileIndex,10);r.push("AT+CGDCONT=".concat(l,',"').concat(t,'","').concat(s,'"'))}if(e.preferredNetworkType&&!R.preferredNetworkType){let t='+QNWPREFCFG="mode_pref",'.concat(e.preferredNetworkType);r.push(0===r.length?"AT".concat(t):t)}if(e.nr5gMode&&!R.nr5gMode){let t='+QNWPREFCFG="nr5g_disable_mode",'.concat(e.nr5gMode);r.push(0===r.length?"AT".concat(t):t)}if(e.simSlot){let t="+QUIMSLOT=".concat(e.simSlot);r.push(0===r.length?"AT".concat(t):t)}if(e.cfunState){let t="+CFUN=".concat(e.cfunState);r.push(0===r.length?"AT".concat(t):t)}if(e.autoSelState){let t='+QMBNCFG="AutoSel",'.concat(e.autoSelState);r.push(0===r.length?"AT".concat(t):t)}if(e.selectedMbnProfile&&("0"===e.autoSelState||"0"===E.autoSelState)){var s;let l=parseInt(e.selectedMbnProfile),a=null===(s=E.mbnProfilesList)||void 0===s?void 0:s[l];if(a){let e='+QMBNCFG="deactivate";+QMBNCFG="select","'.concat(a,'"');r.push(0===r.length?"AT".concat(e):e),t({title:"MBN Profile Changed",description:"A full device reboot is required for this change to take effect.",duration:5e3})}}return r.join(";")},D=(e,t)=>{"string"!=typeof e||R[e]||I(r=>({...r,[e]:t}))},_=async e=>{try{var t,r,s;console.log("Executing AT command:",e);let l=await (0,j.a)(e);if("error"===l.status)throw Error(l.status||"Command execution failed");if((null===(t=l.response)||void 0===t?void 0:t.status)==="error"||(null===(r=l.response)||void 0===r?void 0:r.status)==="timeout")throw Error(l.response.raw_output||"Command execution ".concat(l.response.status));return(null===(s=l.response)||void 0===s?void 0:s.status)==="success"}catch(e){throw console.error("AT command execution error:",e),e}},B=async e=>{e.preventDefault(),P(!0);try{let e={};if(Object.keys(E).forEach(t=>{if(!R[t]&&"mbnProfilesList"!==t&&"apnProfiles"!==t){if("selectedAPNProfileIndex"===t&&0!==E.selectedAPNProfileIndex){e.selectedAPNProfileIndex=E.selectedAPNProfileIndex;return}if("selectedMbnProfile"===t&&E.selectedMbnProfile!==(null==r?void 0:r.selectedMbnProfile)&&"0"===E.autoSelState){e.selectedMbnProfile=E.selectedMbnProfile;return}if("string"==typeof E[t]){let s=E[t];if("currentAPN"===t&&(null==r?void 0:r.APNProfiles)){let t=Array.isArray(r.APNProfiles)&&r.APNProfiles.length>0?r.APNProfiles[0]:"";s!==t&&(e.currentAPN=s)}else{let l=null==r?void 0:r[t];s!==l&&(e[t]=s)}}}}),0===Object.keys(e).length){t({title:"No changes detected",description:"Try changing some settings before saving"}),P(!1);return}console.log("Detected changes:",e);let s=await k(e);s&&(await _(s),(e.currentAPN||e.apnPDPType)&&(await new Promise(e=>setTimeout(e,1e3)),await _("AT+COPS=2"),await new Promise(e=>setTimeout(e,1e3)),await _("AT+COPS=0"))),await new Promise(e=>setTimeout(e,4e3)),await g(),y(!1),t({title:"Settings saved!",description:"The settings have been saved successfully",duration:3e3})}catch(e){console.error("Error saving settings:",e),t({variant:"destructive",title:"Failed to save settings!",description:e instanceof Error?e.message:"An error occurred while saving the settings"})}finally{P(!1)}};return(0,s.jsxs)("div",{className:"grid grid-cols-1 grid-flow-row gap-8",children:[(0,s.jsx)(a.Zp,{children:(0,s.jsxs)("form",{onSubmit:B,children:[(0,s.jsxs)(a.aR,{children:[(0,s.jsx)(a.ZB,{children:"Network Settings"}),(0,s.jsx)(a.BT,{children:"Change the network settings of the device."})]}),(0,s.jsxs)(a.Wu,{children:[b&&Object.values(R).some(e=>e)&&(0,s.jsxs)(f.Fc,{className:"mb-6",children:[(0,s.jsx)(m.A,{className:"h-4 w-4",color:"orange"}),(0,s.jsx)(f.XL,{children:"Profile Controlled Settings"}),(0,s.jsxs)(f.TN,{children:['Some settings are currently being managed by profile "',b.name,'".']})]}),(0,s.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 grid-flow-row gap-6",children:[(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsxs)(c.J,{htmlFor:"APN",children:["Current APN",R.currentAPN&&(0,s.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:"(Profile Controlled)"})]}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsx)(d.p,{type:"text",id:"APN",placeholder:"Current APN",value:R.currentAPN&&b?b.apn:E.currentAPN,onChange:e=>D("currentAPN",e.target.value),disabled:R.currentAPN||x,className:R.currentAPN?"bg-muted cursor-not-allowed":""})]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsxs)(c.J,{htmlFor:"APNProfile",children:["APN Profiles",R.currentAPN&&(0,s.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:"(Profile Controlled)"})]}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{disabled:R.currentAPN||x||E.apnProfiles.length<=1,value:String(E.selectedAPNProfileIndex),onValueChange:e=>{let t=parseInt(e,10);t>=0&&t({...e,selectedAPNProfileIndex:t,currentAPN:e.apnProfiles[t]||""}))},children:[(0,s.jsx)(n.bq,{className:R.currentAPN||E.apnProfiles.length<=1?"bg-muted cursor-not-allowed":"",children:(0,s.jsx)(n.yv,{placeholder:"Select APN Profile"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"Available APNs"}),E.apnProfiles.map((e,t)=>(0,s.jsxs)(n.eb,{value:String(t),children:[e||"(blank APN)",0===t&&" (Active)"]},"apn-".concat(t)))]})})]})]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsxs)(c.J,{htmlFor:"APN",children:["APN PDP Type",R.apnPDPType&&(0,s.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:"(Profile Controlled)"})]}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:R.apnPDPType&&b?b.pdp_type:E.apnPDPType,onValueChange:e=>D("apnPDPType",e),disabled:R.apnPDPType||x,children:[(0,s.jsx)(n.bq,{className:R.apnPDPType?"bg-muted cursor-not-allowed":"",children:(0,s.jsx)(n.yv,{children:(R.apnPDPType&&b?b.pdp_type:E.apnPDPType)?(e=>({IP:"IPv4 Only",IPV6:"IPv6 Only",IPV4V6:"IPv4 and IPv6",P2P:"P2P Protocol"})[e]||e)(R.apnPDPType&&b?b.pdp_type:E.apnPDPType):"Select PDP Type"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"PDP Type"}),(0,s.jsx)(n.eb,{value:"IP",children:"IPv4 Only"}),(0,s.jsx)(n.eb,{value:"IPV6",children:"IPv6 Only"}),(0,s.jsx)(n.eb,{value:"IPV4V6",children:"IPv4 and IPv6"}),(0,s.jsx)(n.eb,{value:"P2P",children:"P2P Protocol"})]})})]},"pdp-type-".concat(R.apnPDPType&&b?b.pdp_type:E.apnPDPType))]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsx)(c.J,{htmlFor:"MBNAutoSel",children:"MBN Profile Auto Selection"}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:E.autoSelState,onValueChange:e=>D("autoSelState",e),disabled:x,children:[(0,s.jsx)(n.bq,{children:(0,s.jsx)(n.yv,{children:E.autoSelState?(e=>({0:"Disabled",1:"Enabled"})[e]||e)(E.autoSelState):"Select Auto Selection State"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"Auto Selection State"}),(0,s.jsx)(n.eb,{value:"1",children:"Enabled"}),(0,s.jsx)(n.eb,{value:"0",children:"Disabled"})]})})]},"auto-sel-".concat(E.autoSelState))]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsx)(c.J,{htmlFor:"MBNProfile",children:"MBN Profile Selection"}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsx)(i.TooltipProvider,{children:(0,s.jsxs)(i.m_,{children:[(0,s.jsx)(i.k$,{children:(0,s.jsxs)(n.l6,{value:E.selectedMbnProfile||"0",onValueChange:e=>D("selectedMbnProfile",e),disabled:x||"1"===E.autoSelState,children:[(0,s.jsx)(n.bq,{className:"1"===E.autoSelState?"bg-muted cursor-not-allowed":"",children:(0,s.jsx)(n.yv,{placeholder:"Select MBN Profile"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"Available MBN Profiles"}),null===(e=E.mbnProfilesList)||void 0===e?void 0:e.map((e,t)=>(0,s.jsx)(n.eb,{value:String(t),children:e},"profile-".concat(t)))]})})]})}),(0,s.jsx)(i.ZI,{children:(0,s.jsx)("p",{children:"1"===E.autoSelState&&"Disable Auto Selection to manually select a profile"})})]})})]}),(0,s.jsx)(w.Separator,{className:"col-span-2 my-2"}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsxs)(c.J,{children:["Preferred Network Type",R.preferredNetworkType&&(0,s.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:"(Profile Controlled)"})]}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:R.preferredNetworkType&&b?b.network_type:E.preferredNetworkType,onValueChange:e=>D("preferredNetworkType",e),disabled:R.preferredNetworkType||x,children:[(0,s.jsx)(n.bq,{className:R.preferredNetworkType?"bg-muted cursor-not-allowed":"",children:(0,s.jsx)(n.yv,{children:(R.preferredNetworkType&&b?b.network_type:E.preferredNetworkType)?(e=>({AUTO:"Automatic",LTE:"LTE Only","LTE:NR5G":"NR5G-NSA",NR5G:"NR5G-SA"})[e]||e)(R.preferredNetworkType&&b?b.network_type:E.preferredNetworkType):"Select Network Type"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"Preferred Network Type"}),(0,s.jsx)(n.eb,{value:"AUTO",children:"Automatic"}),(0,s.jsx)(n.eb,{value:"LTE",children:"LTE Only"}),(0,s.jsx)(n.eb,{value:"LTE:NR5G",children:"NR5G-NSA"}),(0,s.jsx)(n.eb,{value:"NR5G",children:"NR5G-SA"})]})})]},"network-type-".concat(R.preferredNetworkType&&b?b.network_type:E.preferredNetworkType))]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsxs)(c.J,{children:["NR5G Mode Control",R.nr5gMode&&(0,s.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:"(Profile Controlled)"})]}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:E.nr5gMode,onValueChange:e=>D("nr5gMode",e),disabled:R.nr5gMode||x,children:[(0,s.jsx)(n.bq,{className:R.nr5gMode?"bg-muted cursor-not-allowed":"",children:(0,s.jsx)(n.yv,{children:E.nr5gMode?(e=>({0:"NR5G-SA and NSA Enabled",1:"NR5G-NSA Only",2:"NR5G-SA Only"})[e]||e)(E.nr5gMode):"Select NR5G Mode"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"NR5G Mode"}),(0,s.jsx)(n.eb,{value:"0",children:"NR5G-SA and NSA Enabled"}),(0,s.jsx)(n.eb,{value:"1",children:"NR5G-NSA Only"}),(0,s.jsx)(n.eb,{value:"2",children:"NR5G-SA Only"})]})})]},"nr5g-mode-".concat(E.nr5gMode))]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsx)(c.J,{children:"U-SIM Slot Configuration"}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:E.simSlot,onValueChange:e=>D("simSlot",e),children:[(0,s.jsx)(n.bq,{children:(0,s.jsx)(n.yv,{children:E.simSlot?"U-SIM Slot ".concat(E.simSlot):"Select U-SIM Slot"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"U-SIM Slot"}),(0,s.jsx)(n.eb,{value:"1",children:"U-SIM Slot 1"}),(0,s.jsx)(n.eb,{value:"2",children:"U-SIM Slot 2"})]})})]},"sim-slot-".concat(E.simSlot))]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsx)(c.J,{children:"Cellular Functionality"}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:E.cfunState,onValueChange:e=>D("cfunState",e),children:[(0,s.jsx)(n.bq,{children:(0,s.jsx)(n.yv,{children:E.cfunState?(e=>({0:"Minimum Functionality",1:"Full Functionality",4:"Disabled RX/TX"})[e]||e)(E.cfunState):"Select CFUN State"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"U-SIM Slot"}),(0,s.jsx)(n.eb,{value:"0",children:"Minimum Functionality"}),(0,s.jsx)(n.eb,{value:"1",children:"Full Functionality"}),(0,s.jsx)(n.eb,{value:"4",children:"Disabled RX/TX"})]})})]},"sim-slot-".concat(E.cfunState))]})]})]}),(0,s.jsx)(a.wL,{className:"grid border-t py-4",children:(0,s.jsx)(o.$,{type:"submit",disabled:N,children:N?"Saving...":"Save"})})]})}),(0,s.jsx)(S,{lteAMBR:E.lteAMBR,nr5gAMBR:E.nr5gAMBR})]})}},49573:(e,t,r)=>{"use strict";r.d(t,{Fc:()=>o,TN:()=>c,XL:()=>d});var s=r(20475),l=r(20107),a=r(29395),n=r(22250);let i=(0,a.F)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),o=l.forwardRef((e,t)=>{let{className:r,variant:l,...a}=e;return(0,s.jsx)("div",{ref:t,role:"alert",className:(0,n.cn)(i({variant:l}),r),...a})});o.displayName="Alert";let d=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("h5",{ref:t,className:(0,n.cn)("mb-1 font-medium leading-none tracking-tight",r),...l})});d.displayName="AlertTitle";let c=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("div",{ref:t,className:(0,n.cn)("text-sm [&_p]:leading-relaxed",r),...l})});c.displayName="AlertDescription"},42541:(e,t,r)=>{"use strict";r.d(t,{$:()=>d,r:()=>o});var s=r(20475),l=r(20107),a=r(61837),n=r(29395),i=r(22250);let o=(0,n.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),d=l.forwardRef((e,t)=>{let{className:r,variant:l,size:n,asChild:d=!1,...c}=e,u=d?a.DX:"button";return(0,s.jsx)(u,{className:(0,i.cn)(o({variant:l,size:n,className:r})),ref:t,...c})});d.displayName="Button"},72167:(e,t,r)=>{"use strict";r.d(t,{BT:()=>d,Wu:()=>c,ZB:()=>o,Zp:()=>n,aR:()=>i,wL:()=>u});var s=r(20475),l=r(20107),a=r(22250);let n=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("div",{ref:t,className:(0,a.cn)("rounded-xl border bg-card text-card-foreground shadow",r),...l})});n.displayName="Card";let i=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("div",{ref:t,className:(0,a.cn)("flex flex-col space-y-1.5 p-6",r),...l})});i.displayName="CardHeader";let o=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("h3",{ref:t,className:(0,a.cn)("font-semibold leading-none tracking-tight",r),...l})});o.displayName="CardTitle";let d=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("p",{ref:t,className:(0,a.cn)("text-sm text-muted-foreground",r),...l})});d.displayName="CardDescription";let c=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("div",{ref:t,className:(0,a.cn)("p-6 pt-0",r),...l})});c.displayName="CardContent";let u=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("div",{ref:t,className:(0,a.cn)("flex items-center p-6 pt-0",r),...l})});u.displayName="CardFooter"},64219:(e,t,r)=>{"use strict";r.d(t,{p:()=>n});var s=r(20475),l=r(20107),a=r(22250);let n=l.forwardRef((e,t)=>{let{className:r,type:l,...n}=e;return(0,s.jsx)("input",{type:l,className:(0,a.cn)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",r),ref:t,...n})});n.displayName="Input"},49153:(e,t,r)=>{"use strict";r.d(t,{J:()=>d});var s=r(20475),l=r(20107),a=r(21840),n=r(29395),i=r(22250);let o=(0,n.F)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),d=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)(a.b,{ref:t,className:(0,i.cn)(o(),r),...l})});d.displayName=a.b.displayName},35601:(e,t,r)=>{"use strict";r.d(t,{TR:()=>h,bq:()=>u,eb:()=>x,gC:()=>m,l6:()=>o,s3:()=>d,yv:()=>c});var s=r(20475),l=r(20107),a=r(7197),n=r(95257),i=r(22250);let o=n.bL,d=n.YJ,c=n.WT,u=l.forwardRef((e,t)=>{let{className:r,children:l,...o}=e;return(0,s.jsxs)(n.l9,{ref:t,className:(0,i.cn)("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",r),...o,children:[l,(0,s.jsx)(n.In,{asChild:!0,children:(0,s.jsx)(a.TBE,{className:"h-4 w-4 opacity-50"})})]})});u.displayName=n.l9.displayName;let p=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)(n.PP,{ref:t,className:(0,i.cn)("flex cursor-default items-center justify-center py-1",r),...l,children:(0,s.jsx)(a.Mtm,{})})});p.displayName=n.PP.displayName;let f=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)(n.wn,{ref:t,className:(0,i.cn)("flex cursor-default items-center justify-center py-1",r),...l,children:(0,s.jsx)(a.D3D,{})})});f.displayName=n.wn.displayName;let m=l.forwardRef((e,t)=>{let{className:r,children:l,position:a="popper",...o}=e;return(0,s.jsx)(n.ZL,{children:(0,s.jsxs)(n.UC,{ref:t,className:(0,i.cn)("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===a&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",r),position:a,...o,children:[(0,s.jsx)(p,{}),(0,s.jsx)(n.LM,{className:(0,i.cn)("p-1","popper"===a&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:l}),(0,s.jsx)(f,{})]})})});m.displayName=n.UC.displayName;let h=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)(n.JU,{ref:t,className:(0,i.cn)("px-2 py-1.5 text-sm font-semibold",r),...l})});h.displayName=n.JU.displayName;let x=l.forwardRef((e,t)=>{let{className:r,children:l,...o}=e;return(0,s.jsxs)(n.q7,{ref:t,className:(0,i.cn)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",r),...o,children:[(0,s.jsx)("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,s.jsx)(n.VF,{children:(0,s.jsx)(a.Srz,{className:"h-4 w-4"})})}),(0,s.jsx)(n.p4,{children:l})]})});x.displayName=n.q7.displayName,l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)(n.wv,{ref:t,className:(0,i.cn)("-mx-1 my-1 h-px bg-muted",r),...l})}).displayName=n.wv.displayName},76554:(e,t,r)=>{"use strict";r.d(t,{Separator:()=>i});var s=r(20475),l=r(20107),a=r(88853),n=r(22250);let i=l.forwardRef((e,t)=>{let{className:r,orientation:l="horizontal",decorative:i=!0,...o}=e;return(0,s.jsx)(a.b,{ref:t,decorative:i,orientation:l,className:(0,n.cn)("shrink-0 bg-border","horizontal"===l?"h-[1px] w-full":"h-full w-[1px]",r),...o})});i.displayName=a.b.displayName},36760:(e,t,r)=>{"use strict";r.d(t,{E:()=>a});var s=r(20475),l=r(22250);function a(e){let{className:t,...r}=e;return(0,s.jsx)("div",{className:(0,l.cn)("animate-pulse rounded-md bg-primary/10",t),...r})}},85014:(e,t,r)=>{"use strict";r.d(t,{TooltipProvider:()=>i,ZI:()=>c,k$:()=>d,m_:()=>o});var s=r(20475),l=r(20107),a=r(43048),n=r(22250);let i=a.Kq,o=a.bL,d=a.l9,c=l.forwardRef((e,t)=>{let{className:r,sideOffset:l=4,...i}=e;return(0,s.jsx)(a.UC,{ref:t,sideOffset:l,className:(0,n.cn)("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r),...i})});c.displayName=a.UC.displayName},32857:(e,t,r)=>{"use strict";r.d(t,{dj:()=>p,oR:()=>u});var s=r(20107);let l=0,a=new Map,n=e=>{if(a.has(e))return;let t=setTimeout(()=>{a.delete(e),c({type:"REMOVE_TOAST",toastId:e})},1e6);a.set(e,t)},i=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:r}=t;return r?n(r):e.toasts.forEach(e=>{n(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===r||void 0===r?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},o=[],d={toasts:[]};function c(e){d=i(d,e),o.forEach(e=>{e(d)})}function u(e){let{...t}=e,r=(l=(l+1)%Number.MAX_SAFE_INTEGER).toString(),s=()=>c({type:"DISMISS_TOAST",toastId:r});return c({type:"ADD_TOAST",toast:{...t,id:r,open:!0,onOpenChange:e=>{e||s()}}}),{id:r,dismiss:s,update:e=>c({type:"UPDATE_TOAST",toast:{...e,id:r}})}}function p(){let[e,t]=s.useState(d);return s.useEffect(()=>(o.push(t),()=>{let e=o.indexOf(t);e>-1&&o.splice(e,1)}),[e]),{...e,toast:u,dismiss:e=>c({type:"DISMISS_TOAST",toastId:e})}}},22250:(e,t,r)=>{"use strict";r.d(t,{cn:()=>a});var s=r(64901),l=r(868);function a(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("Lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]])},88926:(e,t,r)=>{"use strict";r.d(t,{a:()=>s});let s=async function(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:30;try{var s;let l=e.trim().toUpperCase().startsWith("AT")?e.trim():"AT".concat(e.trim()),a=encodeURIComponent(l),n="/cgi-bin/quecmanager/at_cmd/at_queue_client.sh?command=".concat(a);t&&(n+="&wait=1&timeout=".concat(r));let i=await fetch(n,{method:"GET",headers:{Accept:"application/json",Authorization:"".concat(localStorage.getItem("authToken"))},signal:AbortSignal.timeout(1e3*r+5e3)});if(!i.ok)throw Error("AT command failed with status: ".concat(i.status));let o=await i.json();if(o.error)throw Error("AT queue error: ".concat(o.error));if(t&&(null===(s=o.response)||void 0===s?void 0:s.status)==="timeout")throw Error("AT command timed out after ".concat(r," seconds"));return o}catch(e){throw console.error("AT Command error:",e),e}}},88853:(e,t,r)=>{"use strict";r.d(t,{b:()=>d});var s=r(20107),l=r(34544),a=r(20475),n="horizontal",i=["horizontal","vertical"],o=s.forwardRef((e,t)=>{let{decorative:r,orientation:s=n,...o}=e,d=i.includes(s)?s:n;return(0,a.jsx)(l.sG.div,{"data-orientation":d,...r?{role:"none"}:{"aria-orientation":"vertical"===d?d:void 0,role:"separator"},...o,ref:t})});o.displayName="Separator";var d=o}},e=>{var t=t=>e(e.s=t);e.O(0,[9980,7780,8885,3746,9464,3494,3048,191,6035,7358],()=>t(33945)),_N_E=e.O()}]); \ No newline at end of file +(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2545],{33945:(e,t,r)=>{Promise.resolve().then(r.bind(r,15469))},15469:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>T});var s=r(20475),l=r(20107),a=r(72167),n=r(35601),i=r(85014),o=r(42541),d=r(64219),c=r(49153),u=r(36760),p=r(32857),f=r(49573),m=r(29475);let h=()=>{let[e,t]=(0,l.useState)(null),[r,s]=(0,l.useState)(!0),a=(0,l.useCallback)(async()=>{try{var e,r;s(!0),t(null);let l=await fetch("/cgi-bin/quecmanager/at_cmd/fetch_data.sh?set=2"),a=await l.json(),n={APNProfiles:v(a[0].response,a[8].response,a[1].response),apnPDPType:x(a[0].response),preferredNetworkType:g(a[2].response),nr5gMode:N(a[3].response),simSlot:P(a[4].response),cfunState:a[5].response.match(/\d+/)[0].trim(),autoSelState:a[6].response.match(/\d+/)[0].trim(),mbnProfilesList:a[7].response.split("\n").filter(e=>e.includes('+QMBNCFG: "List"')).map(e=>{let t=e.match(/\+QMBNCFG: "List",\d+,\d+,\d+,"([^"]+)"/);return t?t[1]:null}).filter(Boolean),selectedMbnProfile:a[7].response.split("\n").filter(e=>e.includes('QMBNCFG: "List"')).findIndex(e=>1==e.split(",")[3]).toString(),dataProfileIndex:(()=>{try{var e;if(!(null===(e=a[8])||void 0===e?void 0:e.response))return"-";let t=a[8].response.split("\n").filter(e=>e.includes('+QMAP: "WWAN"'));if(!t.length)return"-";let r=t[0].match(/\+QMAP: "WWAN",\d+,(\d+),/);return r?r[1]:"-"}catch(e){return console.error("Error extracting data profile index:",e),"-"}})(),lteAMBR:y(null===(e=a[9])||void 0===e?void 0:e.response),nr5gAMBR:b(null===(r=a[10])||void 0===r?void 0:r.response)};t(n)}catch(e){console.error("Error fetching cell settings data:",e)}s(!1)},[]);return(0,l.useEffect)(()=>{a()},[a]),{data:e,isLoading:r,fetchCellSettingsData:a}},x=e=>{var t;let r=null===(t=e.split("\n").find(e=>e.includes("+CGDCONT: 1")))||void 0===t?void 0:t.split(",")[1].replace(/"/g,"");return void 0===r||""===r?"Error fetching PDP Type":r},g=e=>{var t;let r=null===(t=e.split("\n").find(e=>e.includes('+QNWPREFCFG: "mode_pref"')))||void 0===t?void 0:t.split(",")[1].replace(/"/g,"");return void 0===r||""===r?"Error fetching network type":r},N=e=>{var t;let r=null===(t=e.split("\n").find(e=>e.includes('+QNWPREFCFG: "nr5g_disable_mode"')))||void 0===t?void 0:t.split(",")[1].replace(/"/g,"");return void 0===r||""===r?"Error fetching NR5G mode":r},P=e=>{var t;let r=null===(t=e.split("\n").find(e=>e.includes("+QUIMSLOT:")))||void 0===t?void 0:t.split(":")[1].trim();return void 0===r||""===r?"Error fetching SIM slot":r},v=(e,t,r)=>{try{var s;let l=t.split("\n").filter(e=>e.includes('+QMAP: "WWAN"')),a=null===(s=l[0])||void 0===s?void 0:s.match(/\+QMAP: "WWAN",\d+,(\d+),/),n=a?a[1]:null,i=e.split("\n").filter(e=>e.includes("+CGDCONT:")).map(e=>{let t=e.split(",");if(t.length<3)return null;let s=t[0].replace("+CGDCONT:","").trim(),l=t[1].replace(/"/g,""),a=t[2].replace(/"/g,""),i=s===n;if(i&&(!a||""===a)){let e=r.split("\n").find(e=>{let t=e.match(/\+CGCONTRDP: (\d+),/);return t&&t[1]===s});if(e){let t=e.split(",");t.length>=3&&(a=t[2].replace(/"/g,""))}}return{cid:s,pdpType:l,apn:a,isActive:i}}).filter(e=>null!==e);return i.sort((e,t)=>e.isActive?-1:t.isActive?1:parseInt(e.cid)-parseInt(t.cid)),i.map(e=>e.apn)}catch(e){return console.error("Error processing APN profiles:",e),["Error fetching APN profiles"]}},y=e=>{try{if(!e||!e.includes('+QNWCFG: "lte_ambr"'))return[];let t=e.split("\n").filter(e=>e.includes('+QNWCFG: "lte_ambr"'));if(!t.length)return[];let r=[];return t.forEach(e=>{let t=e.match(/\+QNWCFG: "lte_ambr","([^"]+)",(\d+),(\d+)/);if(t&&t.length>=4){let e=t[1],s=t[2],l=t[3];r.push(e),r.push(s),r.push(l)}}),r}catch(e){return console.error("Error processing LTE AMBR values:",e),[]}},b=e=>{try{if(!e||!e.includes('+QNWCFG: "nr5g_ambr"'))return[];let t=e.split("\n").filter(e=>e.includes('+QNWCFG: "nr5g_ambr"'));if(!t.length)return[];let r=[];return t.forEach(e=>{let t=e.match(/\+QNWCFG: "nr5g_ambr","([^"]+)",(\d+),(\d+)/);if(t&&t.length>=4){let e=t[1],s=t[2],l=t[3];r.push(e),r.push(s),r.push(l)}}),r}catch(e){return console.error("Error processing NR5G AMBR values:",e),[]}};var j=r(88926),w=r(76554);let A=e=>{let t=parseInt(e);return isNaN(t)?"Unknown":t>=1e6?"".concat((t/1e6).toFixed(2)," Gbps"):t>=1e3?"".concat(Math.round(t/1e3)," Mbps"):"".concat(t," Kbps")},S=e=>{let{lteAMBR:t,nr5gAMBR:r}=e,l=[];for(let e=0;e0&&(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-bold mb-2",children:"LTE AMBR"}),(0,s.jsx)("div",{className:"flex flex-col gap-2",children:l.map((e,t)=>(0,s.jsxs)("div",{className:"flex items-center justify-between border-b pb-2",children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:e.apn}),(0,s.jsxs)("span",{className:"text-sm text-gray-500 font-semibold",children:[e.download," DL / ",e.upload," UL"]})]},"lte-".concat(t)))})]}),n.length>0&&(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-sm font-bold mb-2",children:"NR5G AMBR"}),(0,s.jsx)("div",{className:"flex flex-col gap-2",children:n.map((e,t)=>(0,s.jsxs)("div",{className:"flex items-center justify-between border-b pb-2",children:[(0,s.jsx)("span",{className:"text-sm font-medium",children:e.apn}),(0,s.jsxs)("span",{className:"text-sm text-gray-500 font-semibold",children:[e.download," DL / ",e.upload," UL"]})]},"nr5g-".concat(t)))})]}),0===l.length&&0===n.length&&(0,s.jsx)("div",{className:"text-center text-gray-500 py-4",children:"No AMBR information available"})]})}),(0,s.jsx)(a.wL,{children:(0,s.jsx)(a.BT,{children:"AMBR (Aggregate Maximum Bit Rate) is a network-enforced limit that caps the total bandwidth for non-priority data traffic (e.g., internet browsing) on LTE/5G connections. While devices can request specific AMBR values, operators may ignore these and enforce their own speed limits based on subscription plans, network policies, or congestion conditions."})})]})},T=()=>{var e;let{toast:t}=(0,p.dj)(),{data:r,isLoading:x,fetchCellSettingsData:g}=h(),[N,P]=(0,l.useState)(!1),[v,y]=(0,l.useState)(!1),[b,A]=(0,l.useState)(null),[T,M]=(0,l.useState)(null),[R,C]=(0,l.useState)({currentAPN:!1,apnPDPType:!1,preferredNetworkType:!1,nr5gMode:!1}),[E,I]=(0,l.useState)({currentAPN:"",apnPDPType:"",preferredNetworkType:"",nr5gMode:"",simSlot:"",cfunState:"",autoSelState:"",selectedMbnProfile:"0",mbnProfilesList:[],apnProfiles:[],selectedAPNProfileIndex:0,dataProfileIndex:"1",lteAMBR:[],nr5gAMBR:[]});(0,l.useEffect)(()=>{r&&!v&&(I({currentAPN:Array.isArray(r.APNProfiles)&&r.APNProfiles.length>0?r.APNProfiles[0]:"",apnPDPType:String(r.apnPDPType||""),preferredNetworkType:String(r.preferredNetworkType||""),nr5gMode:String(r.nr5gMode||""),simSlot:String(r.simSlot||""),cfunState:String(r.cfunState||""),autoSelState:String(r.autoSelState||""),selectedMbnProfile:r.selectedMbnProfile||"0",mbnProfilesList:r.mbnProfilesList||[],apnProfiles:Array.isArray(r.APNProfiles)?r.APNProfiles:[],selectedAPNProfileIndex:0,dataProfileIndex:r.dataProfileIndex||"1",lteAMBR:r.lteAMBR||[],nr5gAMBR:r.nr5gAMBR||[]}),y(!0))},[r,v]),(0,l.useEffect)(()=>{(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/profiles/check_status.sh");if(!e.ok)throw Error("Failed to fetch profile status: ".concat(e.statusText));let t=await e.json();if(M(t),"success"===t.status&&t.profile&&"unknown"!==t.profile&&"none"!==t.profile){let e=await fetch("/cgi-bin/quecmanager/profiles/list_profiles.sh");if(e.ok){let r=await e.json();if("success"===r.status&&Array.isArray(r.profiles)){let e=r.profiles.find(e=>e.name===t.profile);if(e){A(e);let t={currentAPN:!!e.apn,apnPDPType:!!e.pdp_type,preferredNetworkType:!!e.network_type,nr5gMode:!!(e.sa_nr5g_bands||e.nsa_nr5g_bands)};C(t)}}}}else A(null),C({currentAPN:!1,apnPDPType:!1,preferredNetworkType:!1,nr5gMode:!1})}catch(e){console.error("Error fetching profile data:",e)}})()},[]),(0,l.useEffect)(()=>{r||y(!1)},[r]);let k=async e=>{let r=[];if((e.currentAPN||e.apnPDPType)&&!R.currentAPN&&!R.apnPDPType){let t=e.apnPDPType||E.apnPDPType,s=e.currentAPN||E.currentAPN,l=parseInt(E.dataProfileIndex,10);console.log("Setting APN on profile ".concat(l,' to "').concat(s,'" with type "').concat(t,'"')),r.push("AT+CGDCONT=".concat(l,',"').concat(t,'","').concat(s,'"'))}if(void 0!==e.selectedAPNProfileIndex&&e.selectedAPNProfileIndex!==E.selectedAPNProfileIndex&&E.apnProfiles.length>e.selectedAPNProfileIndex&&!R.currentAPN){let t=E.apnPDPType,s=E.apnProfiles[e.selectedAPNProfileIndex],l=parseInt(E.dataProfileIndex,10);r.push("AT+CGDCONT=".concat(l,',"').concat(t,'","').concat(s,'"'))}if(e.preferredNetworkType&&!R.preferredNetworkType){let t='+QNWPREFCFG="mode_pref",'.concat(e.preferredNetworkType);r.push(0===r.length?"AT".concat(t):t)}if(e.nr5gMode&&!R.nr5gMode){let t='+QNWPREFCFG="nr5g_disable_mode",'.concat(e.nr5gMode);r.push(0===r.length?"AT".concat(t):t)}if(e.simSlot){let t="+QUIMSLOT=".concat(e.simSlot);r.push(0===r.length?"AT".concat(t):t)}if(e.cfunState){let t="+CFUN=".concat(e.cfunState);r.push(0===r.length?"AT".concat(t):t)}if(e.autoSelState){let t='+QMBNCFG="AutoSel",'.concat(e.autoSelState);r.push(0===r.length?"AT".concat(t):t)}if(e.selectedMbnProfile&&("0"===e.autoSelState||"0"===E.autoSelState)){var s;let l=parseInt(e.selectedMbnProfile),a=null===(s=E.mbnProfilesList)||void 0===s?void 0:s[l];if(a){let e='+QMBNCFG="deactivate";+QMBNCFG="select","'.concat(a,'"');r.push(0===r.length?"AT".concat(e):e),t({title:"MBN Profile Changed",description:"A full device reboot is required for this change to take effect.",duration:5e3})}}return r.join(";")},D=(e,t)=>{"string"!=typeof e||R[e]||I(r=>({...r,[e]:t}))},_=async e=>{try{var t,r,s;console.log("Executing AT command:",e);let l=await (0,j.a)(e);if("error"===l.status)throw Error(l.status||"Command execution failed");if((null===(t=l.response)||void 0===t?void 0:t.status)==="error"||(null===(r=l.response)||void 0===r?void 0:r.status)==="timeout")throw Error(l.response.raw_output||"Command execution ".concat(l.response.status));return(null===(s=l.response)||void 0===s?void 0:s.status)==="success"}catch(e){throw console.error("AT command execution error:",e),e}},B=async e=>{e.preventDefault(),P(!0);try{let e={};if(Object.keys(E).forEach(t=>{if(!R[t]&&"mbnProfilesList"!==t&&"apnProfiles"!==t){if("selectedAPNProfileIndex"===t&&0!==E.selectedAPNProfileIndex){e.selectedAPNProfileIndex=E.selectedAPNProfileIndex;return}if("selectedMbnProfile"===t&&E.selectedMbnProfile!==(null==r?void 0:r.selectedMbnProfile)&&"0"===E.autoSelState){e.selectedMbnProfile=E.selectedMbnProfile;return}if("string"==typeof E[t]){let s=E[t];if("currentAPN"===t&&(null==r?void 0:r.APNProfiles)){let t=Array.isArray(r.APNProfiles)&&r.APNProfiles.length>0?r.APNProfiles[0]:"";s!==t&&(e.currentAPN=s)}else{let l=null==r?void 0:r[t];s!==l&&(e[t]=s)}}}}),0===Object.keys(e).length){t({title:"No changes detected",description:"Try changing some settings before saving"}),P(!1);return}console.log("Detected changes:",e);let s=await k(e);s&&(await _(s),(e.currentAPN||e.apnPDPType)&&(await new Promise(e=>setTimeout(e,1e3)),await _("AT+COPS=2"),await new Promise(e=>setTimeout(e,1e3)),await _("AT+COPS=0"))),await new Promise(e=>setTimeout(e,4e3)),await g(),y(!1),t({title:"Settings saved!",description:"The settings have been saved successfully",duration:3e3})}catch(e){console.error("Error saving settings:",e),t({variant:"destructive",title:"Failed to save settings!",description:e instanceof Error?e.message:"An error occurred while saving the settings"})}finally{P(!1)}};return(0,s.jsxs)("div",{className:"grid grid-cols-1 grid-flow-row gap-8",children:[(0,s.jsx)(a.Zp,{children:(0,s.jsxs)("form",{onSubmit:B,children:[(0,s.jsxs)(a.aR,{children:[(0,s.jsx)(a.ZB,{children:"Network Settings"}),(0,s.jsx)(a.BT,{children:"Change the network settings of the device."})]}),(0,s.jsxs)(a.Wu,{children:[b&&Object.values(R).some(e=>e)&&(0,s.jsxs)(f.Fc,{className:"mb-6",children:[(0,s.jsx)(m.A,{className:"h-4 w-4",color:"orange"}),(0,s.jsx)(f.XL,{children:"Profile Controlled Settings"}),(0,s.jsxs)(f.TN,{children:['Some settings are currently being managed by profile "',b.name,'".']})]}),(0,s.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 grid-flow-row gap-6",children:[(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsxs)(c.J,{htmlFor:"APN",children:["Current APN",R.currentAPN&&(0,s.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:"(Profile Controlled)"})]}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsx)(d.p,{type:"text",id:"APN",placeholder:"Current APN",value:R.currentAPN&&b?b.apn:E.currentAPN,onChange:e=>D("currentAPN",e.target.value),disabled:R.currentAPN||x,className:R.currentAPN?"bg-muted cursor-not-allowed":""})]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsxs)(c.J,{htmlFor:"APNProfile",children:["APN Profiles",R.currentAPN&&(0,s.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:"(Profile Controlled)"})]}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{disabled:R.currentAPN||x||E.apnProfiles.length<=1,value:String(E.selectedAPNProfileIndex),onValueChange:e=>{let t=parseInt(e,10);t>=0&&t({...e,selectedAPNProfileIndex:t,currentAPN:e.apnProfiles[t]||""}))},children:[(0,s.jsx)(n.bq,{className:R.currentAPN||E.apnProfiles.length<=1?"bg-muted cursor-not-allowed":"",children:(0,s.jsx)(n.yv,{placeholder:"Select APN Profile"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"Available APNs"}),E.apnProfiles.map((e,t)=>(0,s.jsxs)(n.eb,{value:String(t),children:[e||"(blank APN)",0===t&&" (Active)"]},"apn-".concat(t)))]})})]})]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsxs)(c.J,{htmlFor:"APN",children:["APN PDP Type",R.apnPDPType&&(0,s.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:"(Profile Controlled)"})]}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:R.apnPDPType&&b?b.pdp_type:E.apnPDPType,onValueChange:e=>D("apnPDPType",e),disabled:R.apnPDPType||x,children:[(0,s.jsx)(n.bq,{className:R.apnPDPType?"bg-muted cursor-not-allowed":"",children:(0,s.jsx)(n.yv,{children:(R.apnPDPType&&b?b.pdp_type:E.apnPDPType)?(e=>({IP:"IPv4 Only",IPV6:"IPv6 Only",IPV4V6:"IPv4 and IPv6",P2P:"P2P Protocol"})[e]||e)(R.apnPDPType&&b?b.pdp_type:E.apnPDPType):"Select PDP Type"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"PDP Type"}),(0,s.jsx)(n.eb,{value:"IP",children:"IPv4 Only"}),(0,s.jsx)(n.eb,{value:"IPV6",children:"IPv6 Only"}),(0,s.jsx)(n.eb,{value:"IPV4V6",children:"IPv4 and IPv6"}),(0,s.jsx)(n.eb,{value:"P2P",children:"P2P Protocol"})]})})]},"pdp-type-".concat(R.apnPDPType&&b?b.pdp_type:E.apnPDPType))]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsx)(c.J,{htmlFor:"MBNAutoSel",children:"MBN Profile Auto Selection"}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:E.autoSelState,onValueChange:e=>D("autoSelState",e),disabled:x,children:[(0,s.jsx)(n.bq,{children:(0,s.jsx)(n.yv,{children:E.autoSelState?(e=>({0:"Disabled",1:"Enabled"})[e]||e)(E.autoSelState):"Select Auto Selection State"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"Auto Selection State"}),(0,s.jsx)(n.eb,{value:"1",children:"Enabled"}),(0,s.jsx)(n.eb,{value:"0",children:"Disabled"})]})})]},"auto-sel-".concat(E.autoSelState))]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsx)(c.J,{htmlFor:"MBNProfile",children:"MBN Profile Selection"}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsx)(i.TooltipProvider,{children:(0,s.jsxs)(i.m_,{children:[(0,s.jsx)(i.k$,{asChild:!0,children:(0,s.jsx)("div",{className:"w-full",children:(0,s.jsxs)(n.l6,{value:E.selectedMbnProfile||"0",onValueChange:e=>D("selectedMbnProfile",e),disabled:x||"1"===E.autoSelState,children:[(0,s.jsx)(n.bq,{className:"1"===E.autoSelState?"bg-muted cursor-not-allowed":"",children:(0,s.jsx)(n.yv,{placeholder:"Select MBN Profile"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"Available MBN Profiles"}),null===(e=E.mbnProfilesList)||void 0===e?void 0:e.map((e,t)=>(0,s.jsx)(n.eb,{value:String(t),children:e},"profile-".concat(t)))]})})]})})}),(0,s.jsx)(i.ZI,{children:(0,s.jsx)("p",{children:"1"===E.autoSelState&&"Disable Auto Selection to manually select a profile"})})]})})]}),(0,s.jsx)(w.Separator,{className:"lg:col-span-2 col-span-1 my-2"}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsxs)(c.J,{children:["Preferred Network Type",R.preferredNetworkType&&(0,s.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:"(Profile Controlled)"})]}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:R.preferredNetworkType&&b?b.network_type:E.preferredNetworkType,onValueChange:e=>D("preferredNetworkType",e),disabled:R.preferredNetworkType||x,children:[(0,s.jsx)(n.bq,{className:R.preferredNetworkType?"bg-muted cursor-not-allowed":"",children:(0,s.jsx)(n.yv,{children:(R.preferredNetworkType&&b?b.network_type:E.preferredNetworkType)?(e=>({AUTO:"Automatic",LTE:"LTE Only","LTE:NR5G":"NR5G-NSA",NR5G:"NR5G-SA"})[e]||e)(R.preferredNetworkType&&b?b.network_type:E.preferredNetworkType):"Select Network Type"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"Preferred Network Type"}),(0,s.jsx)(n.eb,{value:"AUTO",children:"Automatic"}),(0,s.jsx)(n.eb,{value:"LTE",children:"LTE Only"}),(0,s.jsx)(n.eb,{value:"LTE:NR5G",children:"NR5G-NSA"}),(0,s.jsx)(n.eb,{value:"NR5G",children:"NR5G-SA"})]})})]},"network-type-".concat(R.preferredNetworkType&&b?b.network_type:E.preferredNetworkType))]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsxs)(c.J,{children:["NR5G Mode Control",R.nr5gMode&&(0,s.jsx)("span",{className:"ml-2 text-xs text-muted-foreground",children:"(Profile Controlled)"})]}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:E.nr5gMode,onValueChange:e=>D("nr5gMode",e),disabled:R.nr5gMode||x,children:[(0,s.jsx)(n.bq,{className:R.nr5gMode?"bg-muted cursor-not-allowed":"",children:(0,s.jsx)(n.yv,{children:E.nr5gMode?(e=>({0:"NR5G-SA and NSA Enabled",1:"NR5G-NSA Only",2:"NR5G-SA Only"})[e]||e)(E.nr5gMode):"Select NR5G Mode"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"NR5G Mode"}),(0,s.jsx)(n.eb,{value:"0",children:"NR5G-SA and NSA Enabled"}),(0,s.jsx)(n.eb,{value:"1",children:"NR5G-NSA Only"}),(0,s.jsx)(n.eb,{value:"2",children:"NR5G-SA Only"})]})})]},"nr5g-mode-".concat(E.nr5gMode))]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsx)(c.J,{children:"U-SIM Slot Configuration"}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:E.simSlot,onValueChange:e=>D("simSlot",e),children:[(0,s.jsx)(n.bq,{children:(0,s.jsx)(n.yv,{children:E.simSlot?"U-SIM Slot ".concat(E.simSlot):"Select U-SIM Slot"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"U-SIM Slot"}),(0,s.jsx)(n.eb,{value:"1",children:"U-SIM Slot 1"}),(0,s.jsx)(n.eb,{value:"2",children:"U-SIM Slot 2"})]})})]},"sim-slot-".concat(E.simSlot))]}),(0,s.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,s.jsx)(c.J,{children:"Cellular Functionality"}),x?(0,s.jsx)(u.E,{className:"h-8"}):(0,s.jsxs)(n.l6,{value:E.cfunState,onValueChange:e=>D("cfunState",e),children:[(0,s.jsx)(n.bq,{children:(0,s.jsx)(n.yv,{children:E.cfunState?(e=>({0:"Minimum Functionality",1:"Full Functionality",4:"Disabled RX/TX"})[e]||e)(E.cfunState):"Select CFUN State"})}),(0,s.jsx)(n.gC,{children:(0,s.jsxs)(n.s3,{children:[(0,s.jsx)(n.TR,{children:"U-SIM Slot"}),(0,s.jsx)(n.eb,{value:"0",children:"Minimum Functionality"}),(0,s.jsx)(n.eb,{value:"1",children:"Full Functionality"}),(0,s.jsx)(n.eb,{value:"4",children:"Disabled RX/TX"})]})})]},"sim-slot-".concat(E.cfunState))]})]})]}),(0,s.jsx)(a.wL,{className:"grid border-t py-4",children:(0,s.jsx)(o.$,{type:"submit",disabled:N,children:N?"Saving...":"Save"})})]})}),(0,s.jsx)(S,{lteAMBR:E.lteAMBR,nr5gAMBR:E.nr5gAMBR})]})}},49573:(e,t,r)=>{"use strict";r.d(t,{Fc:()=>o,TN:()=>c,XL:()=>d});var s=r(20475),l=r(20107),a=r(29395),n=r(22250);let i=(0,a.F)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),o=l.forwardRef((e,t)=>{let{className:r,variant:l,...a}=e;return(0,s.jsx)("div",{ref:t,role:"alert",className:(0,n.cn)(i({variant:l}),r),...a})});o.displayName="Alert";let d=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("h5",{ref:t,className:(0,n.cn)("mb-1 font-medium leading-none tracking-tight",r),...l})});d.displayName="AlertTitle";let c=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("div",{ref:t,className:(0,n.cn)("text-sm [&_p]:leading-relaxed",r),...l})});c.displayName="AlertDescription"},42541:(e,t,r)=>{"use strict";r.d(t,{$:()=>d,r:()=>o});var s=r(20475),l=r(20107),a=r(61837),n=r(29395),i=r(22250);let o=(0,n.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),d=l.forwardRef((e,t)=>{let{className:r,variant:l,size:n,asChild:d=!1,...c}=e,u=d?a.DX:"button";return(0,s.jsx)(u,{className:(0,i.cn)(o({variant:l,size:n,className:r})),ref:t,...c})});d.displayName="Button"},72167:(e,t,r)=>{"use strict";r.d(t,{BT:()=>d,Wu:()=>c,ZB:()=>o,Zp:()=>n,aR:()=>i,wL:()=>u});var s=r(20475),l=r(20107),a=r(22250);let n=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("div",{ref:t,className:(0,a.cn)("rounded-xl border bg-card text-card-foreground shadow",r),...l})});n.displayName="Card";let i=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("div",{ref:t,className:(0,a.cn)("flex flex-col space-y-1.5 p-6",r),...l})});i.displayName="CardHeader";let o=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("h3",{ref:t,className:(0,a.cn)("font-semibold leading-none tracking-tight",r),...l})});o.displayName="CardTitle";let d=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("p",{ref:t,className:(0,a.cn)("text-sm text-muted-foreground",r),...l})});d.displayName="CardDescription";let c=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("div",{ref:t,className:(0,a.cn)("p-6 pt-0",r),...l})});c.displayName="CardContent";let u=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)("div",{ref:t,className:(0,a.cn)("flex items-center p-6 pt-0",r),...l})});u.displayName="CardFooter"},64219:(e,t,r)=>{"use strict";r.d(t,{p:()=>n});var s=r(20475),l=r(20107),a=r(22250);let n=l.forwardRef((e,t)=>{let{className:r,type:l,...n}=e;return(0,s.jsx)("input",{type:l,className:(0,a.cn)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",r),ref:t,...n})});n.displayName="Input"},49153:(e,t,r)=>{"use strict";r.d(t,{J:()=>d});var s=r(20475),l=r(20107),a=r(21840),n=r(29395),i=r(22250);let o=(0,n.F)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),d=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)(a.b,{ref:t,className:(0,i.cn)(o(),r),...l})});d.displayName=a.b.displayName},35601:(e,t,r)=>{"use strict";r.d(t,{TR:()=>h,bq:()=>u,eb:()=>x,gC:()=>m,l6:()=>o,s3:()=>d,yv:()=>c});var s=r(20475),l=r(20107),a=r(7197),n=r(95257),i=r(22250);let o=n.bL,d=n.YJ,c=n.WT,u=l.forwardRef((e,t)=>{let{className:r,children:l,...o}=e;return(0,s.jsxs)(n.l9,{ref:t,className:(0,i.cn)("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",r),...o,children:[l,(0,s.jsx)(n.In,{asChild:!0,children:(0,s.jsx)(a.TBE,{className:"h-4 w-4 opacity-50"})})]})});u.displayName=n.l9.displayName;let p=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)(n.PP,{ref:t,className:(0,i.cn)("flex cursor-default items-center justify-center py-1",r),...l,children:(0,s.jsx)(a.Mtm,{})})});p.displayName=n.PP.displayName;let f=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)(n.wn,{ref:t,className:(0,i.cn)("flex cursor-default items-center justify-center py-1",r),...l,children:(0,s.jsx)(a.D3D,{})})});f.displayName=n.wn.displayName;let m=l.forwardRef((e,t)=>{let{className:r,children:l,position:a="popper",...o}=e;return(0,s.jsx)(n.ZL,{children:(0,s.jsxs)(n.UC,{ref:t,className:(0,i.cn)("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===a&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",r),position:a,...o,children:[(0,s.jsx)(p,{}),(0,s.jsx)(n.LM,{className:(0,i.cn)("p-1","popper"===a&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:l}),(0,s.jsx)(f,{})]})})});m.displayName=n.UC.displayName;let h=l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)(n.JU,{ref:t,className:(0,i.cn)("px-2 py-1.5 text-sm font-semibold",r),...l})});h.displayName=n.JU.displayName;let x=l.forwardRef((e,t)=>{let{className:r,children:l,...o}=e;return(0,s.jsxs)(n.q7,{ref:t,className:(0,i.cn)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",r),...o,children:[(0,s.jsx)("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,s.jsx)(n.VF,{children:(0,s.jsx)(a.Srz,{className:"h-4 w-4"})})}),(0,s.jsx)(n.p4,{children:l})]})});x.displayName=n.q7.displayName,l.forwardRef((e,t)=>{let{className:r,...l}=e;return(0,s.jsx)(n.wv,{ref:t,className:(0,i.cn)("-mx-1 my-1 h-px bg-muted",r),...l})}).displayName=n.wv.displayName},76554:(e,t,r)=>{"use strict";r.d(t,{Separator:()=>i});var s=r(20475),l=r(20107),a=r(88853),n=r(22250);let i=l.forwardRef((e,t)=>{let{className:r,orientation:l="horizontal",decorative:i=!0,...o}=e;return(0,s.jsx)(a.b,{ref:t,decorative:i,orientation:l,className:(0,n.cn)("shrink-0 bg-border","horizontal"===l?"h-[1px] w-full":"h-full w-[1px]",r),...o})});i.displayName=a.b.displayName},36760:(e,t,r)=>{"use strict";r.d(t,{E:()=>a});var s=r(20475),l=r(22250);function a(e){let{className:t,...r}=e;return(0,s.jsx)("div",{className:(0,l.cn)("animate-pulse rounded-md bg-primary/10",t),...r})}},85014:(e,t,r)=>{"use strict";r.d(t,{TooltipProvider:()=>i,ZI:()=>c,k$:()=>d,m_:()=>o});var s=r(20475),l=r(20107),a=r(43048),n=r(22250);let i=a.Kq,o=a.bL,d=a.l9,c=l.forwardRef((e,t)=>{let{className:r,sideOffset:l=4,...i}=e;return(0,s.jsx)(a.UC,{ref:t,sideOffset:l,className:(0,n.cn)("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r),...i})});c.displayName=a.UC.displayName},32857:(e,t,r)=>{"use strict";r.d(t,{dj:()=>p,oR:()=>u});var s=r(20107);let l=0,a=new Map,n=e=>{if(a.has(e))return;let t=setTimeout(()=>{a.delete(e),c({type:"REMOVE_TOAST",toastId:e})},1e6);a.set(e,t)},i=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:r}=t;return r?n(r):e.toasts.forEach(e=>{n(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===r||void 0===r?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},o=[],d={toasts:[]};function c(e){d=i(d,e),o.forEach(e=>{e(d)})}function u(e){let{...t}=e,r=(l=(l+1)%Number.MAX_SAFE_INTEGER).toString(),s=()=>c({type:"DISMISS_TOAST",toastId:r});return c({type:"ADD_TOAST",toast:{...t,id:r,open:!0,onOpenChange:e=>{e||s()}}}),{id:r,dismiss:s,update:e=>c({type:"UPDATE_TOAST",toast:{...e,id:r}})}}function p(){let[e,t]=s.useState(d);return s.useEffect(()=>(o.push(t),()=>{let e=o.indexOf(t);e>-1&&o.splice(e,1)}),[e]),{...e,toast:u,dismiss:e=>c({type:"DISMISS_TOAST",toastId:e})}}},22250:(e,t,r)=>{"use strict";r.d(t,{cn:()=>a});var s=r(64901),l=r(868);function a(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("Lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]])},88926:(e,t,r)=>{"use strict";r.d(t,{a:()=>s});let s=async function(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:30;try{var s;let l=e.trim().toUpperCase().startsWith("AT")?e.trim():"AT".concat(e.trim()),a=encodeURIComponent(l),n="/cgi-bin/quecmanager/at_cmd/at_queue_client.sh?command=".concat(a);t&&(n+="&wait=1&timeout=".concat(r));let i=await fetch(n,{method:"GET",headers:{Accept:"application/json",Authorization:"".concat(localStorage.getItem("authToken"))},signal:AbortSignal.timeout(1e3*r+5e3)});if(!i.ok)throw Error("AT command failed with status: ".concat(i.status));let o=await i.json();if(o.error)throw Error("AT queue error: ".concat(o.error));if(t&&(null===(s=o.response)||void 0===s?void 0:s.status)==="timeout")throw Error("AT command timed out after ".concat(r," seconds"));return o}catch(e){throw console.error("AT Command error:",e),e}}},88853:(e,t,r)=>{"use strict";r.d(t,{b:()=>d});var s=r(20107),l=r(34544),a=r(20475),n="horizontal",i=["horizontal","vertical"],o=s.forwardRef((e,t)=>{let{decorative:r,orientation:s=n,...o}=e,d=i.includes(s)?s:n;return(0,a.jsx)(l.sG.div,{"data-orientation":d,...r?{role:"none"}:{"aria-orientation":"vertical"===d?d:void 0,role:"separator"},...o,ref:t})});o.displayName="Separator";var d=o}},e=>{var t=t=>e(e.s=t);e.O(0,[9980,7780,8885,3746,9464,3494,3048,191,6035,7358],()=>t(33945)),_N_E=e.O()}]); \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/experimental/logs/page-aafc009d49918935.js b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/experimental/logs/page-aafc009d49918935.js deleted file mode 100644 index 9cea996..0000000 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/experimental/logs/page-aafc009d49918935.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6738],{72770:(e,t,r)=>{Promise.resolve().then(r.bind(r,89163))},89163:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>b});var s=r(20475),a=r(20107),n=r(72167),l=r(45934),i=r(42541),d=r(35601),c=r(64219),o=r(49153),u=r(36824),m=r(38545),f=r(17799),h=r(13624),x=r(39997);let p=(0,x.A)("CircleCheckBig",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);var g=r(27720),v=r(91994);let y=(0,x.A)("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);var j=r(49573);let b=()=>{let[e,t]=(0,a.useState)([]),[r,x]=(0,a.useState)(""),[b,N]=(0,a.useState)([]),[w,R]=(0,a.useState)(""),[C,k]=(0,a.useState)("all"),[A,S]=(0,a.useState)(""),[E,L]=(0,a.useState)("100"),[O,M]=(0,a.useState)([]),[T,F]=(0,a.useState)(0),[U,I]=(0,a.useState)(!1),[D,_]=(0,a.useState)(""),[q,P]=(0,a.useState)(new Date),z=(0,a.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/experimental/logs/fetch_logs.sh"),s=await e.json();s.categories&&(t(s.categories),s.categories.length>0&&!r&&x(s.categories[0]))}catch(e){_("Failed to fetch log categories"),console.error("Error fetching categories:",e)}},[r]),B=(0,a.useCallback)(async e=>{if(e)try{let t=await fetch("/cgi-bin/quecmanager/experimental/logs/fetch_logs.sh?category=".concat(encodeURIComponent(e))),r=await t.json();r.scripts&&(N(r.scripts),R(""))}catch(e){_("Failed to fetch scripts for category"),console.error("Error fetching scripts:",e)}},[]),V=(0,a.useCallback)(async()=>{if(r&&w){I(!0),_("");try{let e=new URLSearchParams({category:r,script:w,lines:E});C&&"all"!==C&&e.append("level",C);let t=await fetch("/cgi-bin/quecmanager/experimental/logs/fetch_logs.sh?".concat(e)),s=await t.json();if(s.entries){let e=s.entries;A&&(e=e.filter(e=>e.message.toLowerCase().includes(A.toLowerCase())||e.script.toLowerCase().includes(A.toLowerCase()))),M(e),F(s.total||0),P(new Date)}else s.error&&_(s.error)}catch(e){_("Failed to fetch logs"),console.error("Error fetching logs:",e)}finally{I(!1)}}},[r,w,C,A,E]),[W,J]=(0,a.useState)(!1),[Z,$]=(0,a.useState)(5e3);(0,a.useEffect)(()=>{let e;return W&&r&&w&&(e=setInterval(V,Z)),()=>{e&&clearInterval(e)}},[W,Z,V,r,w]),(0,a.useEffect)(()=>{z()},[z]),(0,a.useEffect)(()=>{r&&B(r)},[r,B]),(0,a.useEffect)(()=>{r&&w&&V()},[r,w,V]);let G=e=>{switch(e.toUpperCase()){case"ERROR":return{variant:"destructive",className:"bg-red-500 hover:bg-red-600 text-white border-red-500"};case"WARN":return{variant:"secondary",className:"bg-orange-500 hover:bg-orange-600 text-white border-orange-500"};case"INFO":return{variant:"default",className:"bg-blue-500 hover:bg-blue-600 text-white border-blue-500"};case"DEBUG":return{variant:"outline",className:"bg-green-500 hover:bg-green-600 text-white border-green-500"};default:return{variant:"default",className:"bg-gray-500 hover:bg-gray-600 text-white border-gray-500"}}},H=e=>{switch(e.toUpperCase()){case"ERROR":return(0,s.jsx)(m.A,{className:"h-4 w-4"});case"WARN":return(0,s.jsx)(f.A,{className:"h-4 w-4"});case"INFO":default:return(0,s.jsx)(h.A,{className:"h-4 w-4"});case"DEBUG":return(0,s.jsx)(p,{className:"h-4 w-4"})}};return(0,s.jsxs)("div",{className:"space-y-6",children:[(0,s.jsxs)(n.Zp,{children:[(0,s.jsxs)(n.aR,{children:[(0,s.jsx)(n.ZB,{children:"System Logs"}),(0,s.jsx)(n.BT,{children:"View and analyze centralized logs from QuecManager services"})]}),(0,s.jsxs)(n.Wu,{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"category",children:"Category"}),(0,s.jsxs)(d.l6,{value:r,onValueChange:x,children:[(0,s.jsx)(d.bq,{id:"category",children:(0,s.jsx)(d.yv,{placeholder:"Select category..."})}),(0,s.jsx)(d.gC,{children:e.map(e=>(0,s.jsx)(d.eb,{value:e,children:e},e))})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"script",children:"Script"}),(0,s.jsxs)(d.l6,{value:w,onValueChange:R,disabled:!r,children:[(0,s.jsx)(d.bq,{id:"script",children:(0,s.jsx)(d.yv,{placeholder:"Select script..."})}),(0,s.jsx)(d.gC,{children:b.map(e=>(0,s.jsx)(d.eb,{value:e,children:e},e))})]})]})]}),(0,s.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"level",children:"Log Level"}),(0,s.jsxs)(d.l6,{value:C,onValueChange:k,children:[(0,s.jsx)(d.bq,{id:"level",children:(0,s.jsx)(d.yv,{placeholder:"All levels..."})}),(0,s.jsxs)(d.gC,{children:[(0,s.jsx)(d.eb,{value:"all",children:"All levels"}),(0,s.jsx)(d.eb,{value:"ERROR",children:"Error"}),(0,s.jsx)(d.eb,{value:"WARN",children:"Warning"}),(0,s.jsx)(d.eb,{value:"INFO",children:"Info"}),(0,s.jsx)(d.eb,{value:"DEBUG",children:"Debug"})]})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"lines",children:"Max Lines"}),(0,s.jsxs)(d.l6,{value:E,onValueChange:L,children:[(0,s.jsx)(d.bq,{id:"lines",children:(0,s.jsx)(d.yv,{})}),(0,s.jsxs)(d.gC,{children:[(0,s.jsx)(d.eb,{value:"50",children:"50 lines"}),(0,s.jsx)(d.eb,{value:"100",children:"100 lines"}),(0,s.jsx)(d.eb,{value:"200",children:"200 lines"}),(0,s.jsx)(d.eb,{value:"500",children:"500 lines"})]})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"search",children:"Search"}),(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)(g.A,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-muted-foreground"}),(0,s.jsx)(c.p,{id:"search",placeholder:"Search messages...",value:A,onChange:e=>S(e.target.value),className:"pl-10"})]})]})]}),(0,s.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-4",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsxs)(i.$,{onClick:V,disabled:U||!w,children:[(0,s.jsx)(v.A,{className:"h-4 w-4 ".concat(U?"animate-spin":"")}),"Refresh"]}),(0,s.jsxs)(i.$,{onClick:()=>{let e=new Blob([O.map(e=>"[".concat(e.timestamp,"] [").concat(e.level,"] [").concat(e.script,"] [PID:").concat(e.pid,"] ").concat(e.message)).join("\n")],{type:"text/plain"}),t=URL.createObjectURL(e),s=document.createElement("a");s.href=t,s.download="".concat(w,"_").concat(r,"_logs_").concat(new Date().toISOString().split("T")[0],".txt"),document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL(t)},variant:"outline",disabled:0===O.length,children:[(0,s.jsx)(y,{className:"h-4 w-4"}),"Export"]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,s.jsx)("span",{children:"Auto-refresh:"}),(0,s.jsx)(i.$,{variant:W?"default":"outline",size:"sm",onClick:()=>J(!W),children:W?"On":"Off"}),W&&(0,s.jsxs)(d.l6,{value:Z.toString(),onValueChange:e=>$(parseInt(e)),children:[(0,s.jsx)(d.bq,{className:"w-20",children:(0,s.jsx)(d.yv,{})}),(0,s.jsxs)(d.gC,{children:[(0,s.jsx)(d.eb,{value:"5000",children:"5s"}),(0,s.jsx)(d.eb,{value:"10000",children:"10s"}),(0,s.jsx)(d.eb,{value:"30000",children:"30s"}),(0,s.jsx)(d.eb,{value:"60000",children:"1m"})]})]})]})]})]})]}),D&&(0,s.jsxs)(j.Fc,{variant:"destructive",children:[(0,s.jsx)(f.A,{className:"h-4 w-4"}),(0,s.jsx)(j.TN,{children:D})]}),(0,s.jsxs)(n.Zp,{children:[(0,s.jsx)(n.aR,{children:(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)(n.ZB,{children:"Log Entries"}),(0,s.jsx)(n.BT,{children:w?(0,s.jsxs)(s.Fragment,{children:["Showing ",O.length," of ",T," entries from"," ",w,A&&' (filtered by "'.concat(A,'")')]}):"Select a category and script to view logs"})]}),q&&(0,s.jsxs)("div",{className:"text-sm text-muted-foreground",children:["Last updated: ",q.toLocaleTimeString()]})]})}),(0,s.jsx)(n.Wu,{children:w?(0,s.jsx)(u.F,{className:"h-[600px] w-full rounded-md border p-4",children:U?(0,s.jsxs)("div",{className:"flex items-center justify-center h-32",children:[(0,s.jsx)(v.A,{className:"h-6 w-6 animate-spin mr-2"}),"Loading logs..."]}):O.length>0?(0,s.jsx)("div",{className:"space-y-2",children:O.map((e,t)=>(0,s.jsxs)("div",{className:"flex items-start gap-3 p-3 rounded-lg bg-muted/30 hover:bg-muted/50 transition-colors font-mono text-sm",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 min-w-0 flex-shrink-0",children:[H(e.level),(0,s.jsx)(l.E,{...G(e.level),className:"text-xs ".concat(G(e.level).className),children:e.level})]}),(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground mb-1",children:[(0,s.jsx)("span",{children:e.timestamp}),(0,s.jsx)("span",{children:"•"}),(0,s.jsx)("span",{children:e.script}),(0,s.jsx)("span",{children:"•"}),(0,s.jsxs)("span",{children:["PID:",e.pid]})]}),(0,s.jsx)("div",{className:"break-words",children:e.message})]})]},t))}):(0,s.jsx)("div",{className:"flex items-center justify-center h-32 text-muted-foreground",children:"No log entries found"})}):(0,s.jsx)("div",{className:"flex items-center justify-center h-32 text-muted-foreground",children:"Select a category and script to view logs"})})]})]})}},49573:(e,t,r)=>{"use strict";r.d(t,{Fc:()=>d,TN:()=>o,XL:()=>c});var s=r(20475),a=r(20107),n=r(29395),l=r(22250);let i=(0,n.F)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),d=a.forwardRef((e,t)=>{let{className:r,variant:a,...n}=e;return(0,s.jsx)("div",{ref:t,role:"alert",className:(0,l.cn)(i({variant:a}),r),...n})});d.displayName="Alert";let c=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("h5",{ref:t,className:(0,l.cn)("mb-1 font-medium leading-none tracking-tight",r),...a})});c.displayName="AlertTitle";let o=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("div",{ref:t,className:(0,l.cn)("text-sm [&_p]:leading-relaxed",r),...a})});o.displayName="AlertDescription"},45934:(e,t,r)=>{"use strict";r.d(t,{E:()=>i});var s=r(20475);r(20107);var a=r(29395),n=r(22250);let l=(0,a.F)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function i(e){let{className:t,variant:r,...a}=e;return(0,s.jsx)("div",{className:(0,n.cn)(l({variant:r}),t),...a})}},42541:(e,t,r)=>{"use strict";r.d(t,{$:()=>c,r:()=>d});var s=r(20475),a=r(20107),n=r(61837),l=r(29395),i=r(22250);let d=(0,l.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),c=a.forwardRef((e,t)=>{let{className:r,variant:a,size:l,asChild:c=!1,...o}=e,u=c?n.DX:"button";return(0,s.jsx)(u,{className:(0,i.cn)(d({variant:a,size:l,className:r})),ref:t,...o})});c.displayName="Button"},72167:(e,t,r)=>{"use strict";r.d(t,{BT:()=>c,Wu:()=>o,ZB:()=>d,Zp:()=>l,aR:()=>i,wL:()=>u});var s=r(20475),a=r(20107),n=r(22250);let l=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("div",{ref:t,className:(0,n.cn)("rounded-xl border bg-card text-card-foreground shadow",r),...a})});l.displayName="Card";let i=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("div",{ref:t,className:(0,n.cn)("flex flex-col space-y-1.5 p-6",r),...a})});i.displayName="CardHeader";let d=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("h3",{ref:t,className:(0,n.cn)("font-semibold leading-none tracking-tight",r),...a})});d.displayName="CardTitle";let c=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("p",{ref:t,className:(0,n.cn)("text-sm text-muted-foreground",r),...a})});c.displayName="CardDescription";let o=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("div",{ref:t,className:(0,n.cn)("p-6 pt-0",r),...a})});o.displayName="CardContent";let u=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("div",{ref:t,className:(0,n.cn)("flex items-center p-6 pt-0",r),...a})});u.displayName="CardFooter"},64219:(e,t,r)=>{"use strict";r.d(t,{p:()=>l});var s=r(20475),a=r(20107),n=r(22250);let l=a.forwardRef((e,t)=>{let{className:r,type:a,...l}=e;return(0,s.jsx)("input",{type:a,className:(0,n.cn)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",r),ref:t,...l})});l.displayName="Input"},49153:(e,t,r)=>{"use strict";r.d(t,{J:()=>c});var s=r(20475),a=r(20107),n=r(21840),l=r(29395),i=r(22250);let d=(0,l.F)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),c=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)(n.b,{ref:t,className:(0,i.cn)(d(),r),...a})});c.displayName=n.b.displayName},36824:(e,t,r)=>{"use strict";r.d(t,{$:()=>d,F:()=>i});var s=r(20475),a=r(20107),n=r(89679),l=r(22250);let i=a.forwardRef((e,t)=>{let{className:r,children:a,...i}=e;return(0,s.jsxs)(n.bL,{ref:t,className:(0,l.cn)("relative overflow-hidden",r),...i,children:[(0,s.jsx)(n.LM,{className:"h-full w-full rounded-[inherit]",children:a}),(0,s.jsx)(d,{}),(0,s.jsx)(n.OK,{})]})});i.displayName=n.bL.displayName;let d=a.forwardRef((e,t)=>{let{className:r,orientation:a="vertical",...i}=e;return(0,s.jsx)(n.VM,{ref:t,orientation:a,className:(0,l.cn)("flex touch-none select-none transition-colors","vertical"===a&&"h-full w-2.5 border-l border-l-transparent p-[1px]","horizontal"===a&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",r),...i,children:(0,s.jsx)(n.lr,{className:"relative flex-1 rounded-full bg-border"})})});d.displayName=n.VM.displayName},35601:(e,t,r)=>{"use strict";r.d(t,{TR:()=>x,bq:()=>u,eb:()=>p,gC:()=>h,l6:()=>d,s3:()=>c,yv:()=>o});var s=r(20475),a=r(20107),n=r(7197),l=r(95257),i=r(22250);let d=l.bL,c=l.YJ,o=l.WT,u=a.forwardRef((e,t)=>{let{className:r,children:a,...d}=e;return(0,s.jsxs)(l.l9,{ref:t,className:(0,i.cn)("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",r),...d,children:[a,(0,s.jsx)(l.In,{asChild:!0,children:(0,s.jsx)(n.TBE,{className:"h-4 w-4 opacity-50"})})]})});u.displayName=l.l9.displayName;let m=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)(l.PP,{ref:t,className:(0,i.cn)("flex cursor-default items-center justify-center py-1",r),...a,children:(0,s.jsx)(n.Mtm,{})})});m.displayName=l.PP.displayName;let f=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)(l.wn,{ref:t,className:(0,i.cn)("flex cursor-default items-center justify-center py-1",r),...a,children:(0,s.jsx)(n.D3D,{})})});f.displayName=l.wn.displayName;let h=a.forwardRef((e,t)=>{let{className:r,children:a,position:n="popper",...d}=e;return(0,s.jsx)(l.ZL,{children:(0,s.jsxs)(l.UC,{ref:t,className:(0,i.cn)("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===n&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",r),position:n,...d,children:[(0,s.jsx)(m,{}),(0,s.jsx)(l.LM,{className:(0,i.cn)("p-1","popper"===n&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:a}),(0,s.jsx)(f,{})]})})});h.displayName=l.UC.displayName;let x=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)(l.JU,{ref:t,className:(0,i.cn)("px-2 py-1.5 text-sm font-semibold",r),...a})});x.displayName=l.JU.displayName;let p=a.forwardRef((e,t)=>{let{className:r,children:a,...d}=e;return(0,s.jsxs)(l.q7,{ref:t,className:(0,i.cn)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",r),...d,children:[(0,s.jsx)("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,s.jsx)(l.VF,{children:(0,s.jsx)(n.Srz,{className:"h-4 w-4"})})}),(0,s.jsx)(l.p4,{children:a})]})});p.displayName=l.q7.displayName,a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)(l.wv,{ref:t,className:(0,i.cn)("-mx-1 my-1 h-px bg-muted",r),...a})}).displayName=l.wv.displayName},22250:(e,t,r)=>{"use strict";r.d(t,{cn:()=>n});var s=r(64901),a=r(868);function n(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("CircleAlert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]])},38545:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("CircleX",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]])},13624:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("Info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]])},91994:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},27720:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]])},54245:(e,t,r)=>{"use strict";r.d(t,{C:()=>l});var s=r(20107),a=r(64236),n=r(54122),l=e=>{let{present:t,children:r}=e,l=function(e){var t,r;let[a,l]=s.useState(),d=s.useRef({}),c=s.useRef(e),o=s.useRef("none"),[u,m]=(t=e?"mounted":"unmounted",r={mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}},s.useReducer((e,t)=>{let s=r[e][t];return null!=s?s:e},t));return s.useEffect(()=>{let e=i(d.current);o.current="mounted"===u?e:"none"},[u]),(0,n.N)(()=>{let t=d.current,r=c.current;if(r!==e){let s=o.current,a=i(t);e?m("MOUNT"):"none"===a||(null==t?void 0:t.display)==="none"?m("UNMOUNT"):r&&s!==a?m("ANIMATION_OUT"):m("UNMOUNT"),c.current=e}},[e,m]),(0,n.N)(()=>{if(a){var e;let t;let r=null!==(e=a.ownerDocument.defaultView)&&void 0!==e?e:window,s=e=>{let s=i(d.current).includes(e.animationName);if(e.target===a&&s&&(m("ANIMATION_END"),!c.current)){let e=a.style.animationFillMode;a.style.animationFillMode="forwards",t=r.setTimeout(()=>{"forwards"===a.style.animationFillMode&&(a.style.animationFillMode=e)})}},n=e=>{e.target===a&&(o.current=i(d.current))};return a.addEventListener("animationstart",n),a.addEventListener("animationcancel",s),a.addEventListener("animationend",s),()=>{r.clearTimeout(t),a.removeEventListener("animationstart",n),a.removeEventListener("animationcancel",s),a.removeEventListener("animationend",s)}}m("ANIMATION_END")},[a,m]),{isPresent:["mounted","unmountSuspended"].includes(u),ref:s.useCallback(e=>{e&&(d.current=getComputedStyle(e)),l(e)},[])}}(t),d="function"==typeof r?r({present:l.isPresent}):s.Children.only(r),c=(0,a.s)(l.ref,function(e){var t,r;let s=null===(t=Object.getOwnPropertyDescriptor(e.props,"ref"))||void 0===t?void 0:t.get,a=s&&"isReactWarning"in s&&s.isReactWarning;return a?e.ref:(a=(s=null===(r=Object.getOwnPropertyDescriptor(e,"ref"))||void 0===r?void 0:r.get)&&"isReactWarning"in s&&s.isReactWarning)?e.props.ref:e.props.ref||e.ref}(d));return"function"==typeof r||l.isPresent?s.cloneElement(d,{ref:c}):null};function i(e){return(null==e?void 0:e.animationName)||"none"}l.displayName="Presence"}},e=>{var t=t=>e(e.s=t);e.O(0,[9980,7780,8885,3746,9464,3494,9679,191,6035,7358],()=>t(72770)),_N_E=e.O()}]); \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/experimental/logs/page-c8c025937cf32a28.js b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/experimental/logs/page-c8c025937cf32a28.js new file mode 100644 index 0000000..8525dc6 --- /dev/null +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/experimental/logs/page-c8c025937cf32a28.js @@ -0,0 +1 @@ +(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6738],{72770:(e,t,r)=>{Promise.resolve().then(r.bind(r,89163))},89163:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>b});var s=r(20475),a=r(20107),n=r(72167),l=r(45934),i=r(42541),d=r(35601),c=r(64219),o=r(49153),u=r(36824),m=r(38545),f=r(17799),h=r(13624),x=r(39997);let p=(0,x.A)("CircleCheckBig",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);var g=r(27720),v=r(91994);let y=(0,x.A)("Download",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);var j=r(49573);let b=()=>{let[e,t]=(0,a.useState)([]),[r,x]=(0,a.useState)(""),[b,N]=(0,a.useState)([]),[w,R]=(0,a.useState)(""),[C,k]=(0,a.useState)("all"),[A,S]=(0,a.useState)(""),[L,O]=(0,a.useState)("100"),[E,M]=(0,a.useState)("newest-first"),[F,T]=(0,a.useState)([]),[U,I]=(0,a.useState)(0),[D,_]=(0,a.useState)(!1),[q,P]=(0,a.useState)(""),[z,V]=(0,a.useState)(new Date),B=(0,a.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/experimental/logs/fetch_logs.sh"),s=await e.json();s.categories&&(t(s.categories),s.categories.length>0&&!r&&x(s.categories[0]))}catch(e){P("Failed to fetch log categories"),console.error("Error fetching categories:",e)}},[r]),W=(0,a.useCallback)(async e=>{if(e)try{let t=await fetch("/cgi-bin/quecmanager/experimental/logs/fetch_logs.sh?category=".concat(encodeURIComponent(e))),r=await t.json();r.scripts&&(N(r.scripts),R(""))}catch(e){P("Failed to fetch scripts for category"),console.error("Error fetching scripts:",e)}},[]),J=(0,a.useCallback)(async()=>{if(r&&w){_(!0),P("");try{let e=new URLSearchParams({category:r,script:w,lines:L});C&&"all"!==C&&e.append("level",C);let t=await fetch("/cgi-bin/quecmanager/experimental/logs/fetch_logs.sh?".concat(e)),s=await t.json();if(s.entries){let e=s.entries;A&&(e=e.filter(e=>e.message.toLowerCase().includes(A.toLowerCase())||e.script.toLowerCase().includes(A.toLowerCase()))),"newest-first"===E&&(e=e.reverse()),T(e),I(s.total||0),V(new Date)}else s.error&&P(s.error)}catch(e){P("Failed to fetch logs"),console.error("Error fetching logs:",e)}finally{_(!1)}}},[r,w,C,A,L,E]),[Z,$]=(0,a.useState)(!1),[G,H]=(0,a.useState)(5e3);(0,a.useEffect)(()=>{let e;return Z&&r&&w&&(e=setInterval(J,G)),()=>{e&&clearInterval(e)}},[Z,G,J,r,w]),(0,a.useEffect)(()=>{B()},[B]),(0,a.useEffect)(()=>{r&&W(r)},[r,W]),(0,a.useEffect)(()=>{r&&w&&J()},[r,w,J]);let X=e=>{switch(e.toUpperCase()){case"ERROR":return{variant:"destructive",className:"bg-red-500 hover:bg-red-600 text-white border-red-500"};case"WARN":return{variant:"secondary",className:"bg-orange-500 hover:bg-orange-600 text-white border-orange-500"};case"INFO":return{variant:"default",className:"bg-blue-500 hover:bg-blue-600 text-white border-blue-500"};case"DEBUG":return{variant:"outline",className:"bg-green-500 hover:bg-green-600 text-white border-green-500"};default:return{variant:"default",className:"bg-gray-500 hover:bg-gray-600 text-white border-gray-500"}}},Q=e=>{switch(e.toUpperCase()){case"ERROR":return(0,s.jsx)(m.A,{className:"h-4 w-4"});case"WARN":return(0,s.jsx)(f.A,{className:"h-4 w-4"});case"INFO":default:return(0,s.jsx)(h.A,{className:"h-4 w-4"});case"DEBUG":return(0,s.jsx)(p,{className:"h-4 w-4"})}};return(0,s.jsxs)("div",{className:"space-y-6",children:[(0,s.jsxs)(n.Zp,{children:[(0,s.jsxs)(n.aR,{children:[(0,s.jsx)(n.ZB,{children:"System Logs"}),(0,s.jsx)(n.BT,{children:"View and analyze centralized logs from QuecManager services"})]}),(0,s.jsxs)(n.Wu,{className:"space-y-4",children:[(0,s.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"category",children:"Category"}),(0,s.jsxs)(d.l6,{value:r,onValueChange:x,children:[(0,s.jsx)(d.bq,{id:"category",children:(0,s.jsx)(d.yv,{placeholder:"Select category..."})}),(0,s.jsx)(d.gC,{children:e.map(e=>(0,s.jsx)(d.eb,{value:e,children:e},e))})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"script",children:"Script"}),(0,s.jsxs)(d.l6,{value:w,onValueChange:R,disabled:!r,children:[(0,s.jsx)(d.bq,{id:"script",children:(0,s.jsx)(d.yv,{placeholder:"Select script..."})}),(0,s.jsx)(d.gC,{children:b.map(e=>(0,s.jsx)(d.eb,{value:e,children:e},e))})]})]})]}),(0,s.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"level",children:"Log Level"}),(0,s.jsxs)(d.l6,{value:C,onValueChange:k,children:[(0,s.jsx)(d.bq,{id:"level",children:(0,s.jsx)(d.yv,{placeholder:"All levels..."})}),(0,s.jsxs)(d.gC,{children:[(0,s.jsx)(d.eb,{value:"all",children:"All levels"}),(0,s.jsx)(d.eb,{value:"ERROR",children:"Error"}),(0,s.jsx)(d.eb,{value:"WARN",children:"Warning"}),(0,s.jsx)(d.eb,{value:"INFO",children:"Info"}),(0,s.jsx)(d.eb,{value:"DEBUG",children:"Debug"})]})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"lines",children:"Max Lines"}),(0,s.jsxs)(d.l6,{value:L,onValueChange:O,children:[(0,s.jsx)(d.bq,{id:"lines",children:(0,s.jsx)(d.yv,{})}),(0,s.jsxs)(d.gC,{children:[(0,s.jsx)(d.eb,{value:"50",children:"50 lines"}),(0,s.jsx)(d.eb,{value:"100",children:"100 lines"}),(0,s.jsx)(d.eb,{value:"200",children:"200 lines"}),(0,s.jsx)(d.eb,{value:"500",children:"500 lines"})]})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"sortOrder",children:"Sort Order"}),(0,s.jsxs)(d.l6,{value:E,onValueChange:M,children:[(0,s.jsx)(d.bq,{id:"sortOrder",children:(0,s.jsx)(d.yv,{})}),(0,s.jsxs)(d.gC,{children:[(0,s.jsx)(d.eb,{value:"newest-first",children:"Newest First"}),(0,s.jsx)(d.eb,{value:"oldest-first",children:"Oldest First"})]})]})]}),(0,s.jsxs)("div",{className:"space-y-2",children:[(0,s.jsx)(o.J,{htmlFor:"search",children:"Search"}),(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)(g.A,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 h-4 w-4 text-muted-foreground"}),(0,s.jsx)(c.p,{id:"search",placeholder:"Search messages...",value:A,onChange:e=>S(e.target.value),className:"pl-10"})]})]})]}),(0,s.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-4",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsxs)(i.$,{onClick:J,disabled:D||!w,children:[(0,s.jsx)(v.A,{className:"h-4 w-4 ".concat(D?"animate-spin":"")}),"Refresh"]}),(0,s.jsxs)(i.$,{onClick:()=>{let e=new Blob([F.map(e=>"[".concat(e.timestamp,"] [").concat(e.level,"] [").concat(e.script,"] [PID:").concat(e.pid,"] ").concat(e.message)).join("\n")],{type:"text/plain"}),t=URL.createObjectURL(e),s=document.createElement("a");s.href=t,s.download="".concat(w,"_").concat(r,"_logs_").concat(new Date().toISOString().split("T")[0],".txt"),document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL(t)},variant:"outline",disabled:0===F.length,children:[(0,s.jsx)(y,{className:"h-4 w-4"}),"Export"]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[(0,s.jsx)("span",{children:"Auto-refresh:"}),(0,s.jsx)(i.$,{variant:Z?"default":"outline",size:"sm",onClick:()=>$(!Z),children:Z?"On":"Off"}),Z&&(0,s.jsxs)(d.l6,{value:G.toString(),onValueChange:e=>H(parseInt(e)),children:[(0,s.jsx)(d.bq,{className:"w-20",children:(0,s.jsx)(d.yv,{})}),(0,s.jsxs)(d.gC,{children:[(0,s.jsx)(d.eb,{value:"5000",children:"5s"}),(0,s.jsx)(d.eb,{value:"10000",children:"10s"}),(0,s.jsx)(d.eb,{value:"30000",children:"30s"}),(0,s.jsx)(d.eb,{value:"60000",children:"1m"})]})]})]})]})]})]}),q&&(0,s.jsxs)(j.Fc,{variant:"destructive",children:[(0,s.jsx)(f.A,{className:"h-4 w-4"}),(0,s.jsx)(j.TN,{children:q})]}),(0,s.jsxs)(n.Zp,{children:[(0,s.jsxs)(n.aR,{children:[(0,s.jsx)(n.ZB,{children:"Log Entries"}),(0,s.jsx)(n.BT,{children:w?(0,s.jsxs)(s.Fragment,{children:["Showing ",F.length," of ",U," entries from"," ",w," (","newest-first"===E?"newest first":"oldest first",")",A&&' (filtered by "'.concat(A,'")')]}):"Select a category and script to view logs"})]}),(0,s.jsx)(n.Wu,{children:w?(0,s.jsx)(u.F,{className:"h-[600px] w-full rounded-md border p-4",children:D?(0,s.jsxs)("div",{className:"flex items-center justify-center h-32",children:[(0,s.jsx)(v.A,{className:"h-6 w-6 animate-spin mr-2"}),"Loading logs..."]}):F.length>0?(0,s.jsx)("div",{className:"space-y-2",children:F.map((e,t)=>(0,s.jsxs)("div",{className:"flex items-start gap-3 p-3 rounded-lg bg-muted/30 hover:bg-muted/50 transition-colors font-mono text-sm",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 min-w-0 flex-shrink-0",children:[Q(e.level),(0,s.jsx)(l.E,{...X(e.level),className:"text-xs ".concat(X(e.level).className),children:e.level})]}),(0,s.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2 text-xs text-muted-foreground mb-1",children:[(0,s.jsx)("span",{children:e.timestamp}),(0,s.jsx)("span",{children:"•"}),(0,s.jsx)("span",{children:e.script}),(0,s.jsx)("span",{children:"•"}),(0,s.jsxs)("span",{children:["PID:",e.pid]})]}),(0,s.jsx)("div",{className:"break-words",children:e.message})]})]},t))}):(0,s.jsx)("div",{className:"flex items-center justify-center h-32 text-muted-foreground",children:"No log entries found"})}):(0,s.jsx)("div",{className:"flex items-center justify-center h-32 text-muted-foreground",children:"Select a category and script to view logs"})}),(0,s.jsx)(n.wL,{children:z&&(0,s.jsxs)("div",{className:"text-sm text-muted-foreground",children:["Last updated: ",z.toLocaleTimeString()]})})]})]})}},49573:(e,t,r)=>{"use strict";r.d(t,{Fc:()=>d,TN:()=>o,XL:()=>c});var s=r(20475),a=r(20107),n=r(29395),l=r(22250);let i=(0,n.F)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),d=a.forwardRef((e,t)=>{let{className:r,variant:a,...n}=e;return(0,s.jsx)("div",{ref:t,role:"alert",className:(0,l.cn)(i({variant:a}),r),...n})});d.displayName="Alert";let c=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("h5",{ref:t,className:(0,l.cn)("mb-1 font-medium leading-none tracking-tight",r),...a})});c.displayName="AlertTitle";let o=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("div",{ref:t,className:(0,l.cn)("text-sm [&_p]:leading-relaxed",r),...a})});o.displayName="AlertDescription"},45934:(e,t,r)=>{"use strict";r.d(t,{E:()=>i});var s=r(20475);r(20107);var a=r(29395),n=r(22250);let l=(0,a.F)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function i(e){let{className:t,variant:r,...a}=e;return(0,s.jsx)("div",{className:(0,n.cn)(l({variant:r}),t),...a})}},42541:(e,t,r)=>{"use strict";r.d(t,{$:()=>c,r:()=>d});var s=r(20475),a=r(20107),n=r(61837),l=r(29395),i=r(22250);let d=(0,l.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),c=a.forwardRef((e,t)=>{let{className:r,variant:a,size:l,asChild:c=!1,...o}=e,u=c?n.DX:"button";return(0,s.jsx)(u,{className:(0,i.cn)(d({variant:a,size:l,className:r})),ref:t,...o})});c.displayName="Button"},72167:(e,t,r)=>{"use strict";r.d(t,{BT:()=>c,Wu:()=>o,ZB:()=>d,Zp:()=>l,aR:()=>i,wL:()=>u});var s=r(20475),a=r(20107),n=r(22250);let l=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("div",{ref:t,className:(0,n.cn)("rounded-xl border bg-card text-card-foreground shadow",r),...a})});l.displayName="Card";let i=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("div",{ref:t,className:(0,n.cn)("flex flex-col space-y-1.5 p-6",r),...a})});i.displayName="CardHeader";let d=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("h3",{ref:t,className:(0,n.cn)("font-semibold leading-none tracking-tight",r),...a})});d.displayName="CardTitle";let c=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("p",{ref:t,className:(0,n.cn)("text-sm text-muted-foreground",r),...a})});c.displayName="CardDescription";let o=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("div",{ref:t,className:(0,n.cn)("p-6 pt-0",r),...a})});o.displayName="CardContent";let u=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)("div",{ref:t,className:(0,n.cn)("flex items-center p-6 pt-0",r),...a})});u.displayName="CardFooter"},64219:(e,t,r)=>{"use strict";r.d(t,{p:()=>l});var s=r(20475),a=r(20107),n=r(22250);let l=a.forwardRef((e,t)=>{let{className:r,type:a,...l}=e;return(0,s.jsx)("input",{type:a,className:(0,n.cn)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",r),ref:t,...l})});l.displayName="Input"},49153:(e,t,r)=>{"use strict";r.d(t,{J:()=>c});var s=r(20475),a=r(20107),n=r(21840),l=r(29395),i=r(22250);let d=(0,l.F)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),c=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)(n.b,{ref:t,className:(0,i.cn)(d(),r),...a})});c.displayName=n.b.displayName},36824:(e,t,r)=>{"use strict";r.d(t,{$:()=>d,F:()=>i});var s=r(20475),a=r(20107),n=r(89679),l=r(22250);let i=a.forwardRef((e,t)=>{let{className:r,children:a,...i}=e;return(0,s.jsxs)(n.bL,{ref:t,className:(0,l.cn)("relative overflow-hidden",r),...i,children:[(0,s.jsx)(n.LM,{className:"h-full w-full rounded-[inherit]",children:a}),(0,s.jsx)(d,{}),(0,s.jsx)(n.OK,{})]})});i.displayName=n.bL.displayName;let d=a.forwardRef((e,t)=>{let{className:r,orientation:a="vertical",...i}=e;return(0,s.jsx)(n.VM,{ref:t,orientation:a,className:(0,l.cn)("flex touch-none select-none transition-colors","vertical"===a&&"h-full w-2.5 border-l border-l-transparent p-[1px]","horizontal"===a&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",r),...i,children:(0,s.jsx)(n.lr,{className:"relative flex-1 rounded-full bg-border"})})});d.displayName=n.VM.displayName},35601:(e,t,r)=>{"use strict";r.d(t,{TR:()=>x,bq:()=>u,eb:()=>p,gC:()=>h,l6:()=>d,s3:()=>c,yv:()=>o});var s=r(20475),a=r(20107),n=r(7197),l=r(95257),i=r(22250);let d=l.bL,c=l.YJ,o=l.WT,u=a.forwardRef((e,t)=>{let{className:r,children:a,...d}=e;return(0,s.jsxs)(l.l9,{ref:t,className:(0,i.cn)("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",r),...d,children:[a,(0,s.jsx)(l.In,{asChild:!0,children:(0,s.jsx)(n.TBE,{className:"h-4 w-4 opacity-50"})})]})});u.displayName=l.l9.displayName;let m=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)(l.PP,{ref:t,className:(0,i.cn)("flex cursor-default items-center justify-center py-1",r),...a,children:(0,s.jsx)(n.Mtm,{})})});m.displayName=l.PP.displayName;let f=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)(l.wn,{ref:t,className:(0,i.cn)("flex cursor-default items-center justify-center py-1",r),...a,children:(0,s.jsx)(n.D3D,{})})});f.displayName=l.wn.displayName;let h=a.forwardRef((e,t)=>{let{className:r,children:a,position:n="popper",...d}=e;return(0,s.jsx)(l.ZL,{children:(0,s.jsxs)(l.UC,{ref:t,className:(0,i.cn)("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===n&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",r),position:n,...d,children:[(0,s.jsx)(m,{}),(0,s.jsx)(l.LM,{className:(0,i.cn)("p-1","popper"===n&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:a}),(0,s.jsx)(f,{})]})})});h.displayName=l.UC.displayName;let x=a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)(l.JU,{ref:t,className:(0,i.cn)("px-2 py-1.5 text-sm font-semibold",r),...a})});x.displayName=l.JU.displayName;let p=a.forwardRef((e,t)=>{let{className:r,children:a,...d}=e;return(0,s.jsxs)(l.q7,{ref:t,className:(0,i.cn)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",r),...d,children:[(0,s.jsx)("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,s.jsx)(l.VF,{children:(0,s.jsx)(n.Srz,{className:"h-4 w-4"})})}),(0,s.jsx)(l.p4,{children:a})]})});p.displayName=l.q7.displayName,a.forwardRef((e,t)=>{let{className:r,...a}=e;return(0,s.jsx)(l.wv,{ref:t,className:(0,i.cn)("-mx-1 my-1 h-px bg-muted",r),...a})}).displayName=l.wv.displayName},22250:(e,t,r)=>{"use strict";r.d(t,{cn:()=>n});var s=r(64901),a=r(868);function n(){for(var e=arguments.length,t=Array(e),r=0;r{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("CircleAlert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]])},38545:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("CircleX",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]])},13624:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("Info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]])},91994:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]])},27720:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});let s=(0,r(39997).A)("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]])},54245:(e,t,r)=>{"use strict";r.d(t,{C:()=>l});var s=r(20107),a=r(64236),n=r(54122),l=e=>{let{present:t,children:r}=e,l=function(e){var t,r;let[a,l]=s.useState(),d=s.useRef({}),c=s.useRef(e),o=s.useRef("none"),[u,m]=(t=e?"mounted":"unmounted",r={mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}},s.useReducer((e,t)=>{let s=r[e][t];return null!=s?s:e},t));return s.useEffect(()=>{let e=i(d.current);o.current="mounted"===u?e:"none"},[u]),(0,n.N)(()=>{let t=d.current,r=c.current;if(r!==e){let s=o.current,a=i(t);e?m("MOUNT"):"none"===a||(null==t?void 0:t.display)==="none"?m("UNMOUNT"):r&&s!==a?m("ANIMATION_OUT"):m("UNMOUNT"),c.current=e}},[e,m]),(0,n.N)(()=>{if(a){var e;let t;let r=null!==(e=a.ownerDocument.defaultView)&&void 0!==e?e:window,s=e=>{let s=i(d.current).includes(e.animationName);if(e.target===a&&s&&(m("ANIMATION_END"),!c.current)){let e=a.style.animationFillMode;a.style.animationFillMode="forwards",t=r.setTimeout(()=>{"forwards"===a.style.animationFillMode&&(a.style.animationFillMode=e)})}},n=e=>{e.target===a&&(o.current=i(d.current))};return a.addEventListener("animationstart",n),a.addEventListener("animationcancel",s),a.addEventListener("animationend",s),()=>{r.clearTimeout(t),a.removeEventListener("animationstart",n),a.removeEventListener("animationcancel",s),a.removeEventListener("animationend",s)}}m("ANIMATION_END")},[a,m]),{isPresent:["mounted","unmountSuspended"].includes(u),ref:s.useCallback(e=>{e&&(d.current=getComputedStyle(e)),l(e)},[])}}(t),d="function"==typeof r?r({present:l.isPresent}):s.Children.only(r),c=(0,a.s)(l.ref,function(e){var t,r;let s=null===(t=Object.getOwnPropertyDescriptor(e.props,"ref"))||void 0===t?void 0:t.get,a=s&&"isReactWarning"in s&&s.isReactWarning;return a?e.ref:(a=(s=null===(r=Object.getOwnPropertyDescriptor(e,"ref"))||void 0===r?void 0:r.get)&&"isReactWarning"in s&&s.isReactWarning)?e.props.ref:e.props.ref||e.ref}(d));return"function"==typeof r||l.isPresent?s.cloneElement(d,{ref:c}):null};function i(e){return(null==e?void 0:e.animationName)||"none"}l.displayName="Presence"}},e=>{var t=t=>e(e.s=t);e.O(0,[9980,7780,8885,3746,9464,3494,9679,191,6035,7358],()=>t(72770)),_N_E=e.O()}]); \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/home/page-2bcf38b61b3bf607.js b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/home/page-2bcf38b61b3bf607.js new file mode 100644 index 0000000..06d3d9b --- /dev/null +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/home/page-2bcf38b61b3bf607.js @@ -0,0 +1 @@ +(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6665],{98722:(e,s,t)=>{Promise.resolve().then(t.bind(t,42988))},42988:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>e$});var l=t(20475),r=t(20107),n=t(32857),a=t(72167),i=t(36760),o=t(45934);let d=e=>{let{data:s,isLoading:t,hideSensitiveData:r}=e;return(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{children:[(0,l.jsx)(a.ZB,{children:"Sim Card"}),(0,l.jsx)(a.BT,{children:"Sim card information"})]}),(0,l.jsxs)(a.Wu,{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Sim Card Slot in Use"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[50px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.slot})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Sim Card State"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat((null==s?void 0:s.simCard.state)==="Inserted"?"bg-emerald-500 hover:bg-emerald-800":"bg-rose-500 hover:bg-rose-800"),children:null==s?void 0:s.simCard.state})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Provider"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.provider})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Phone Number"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[140px]"}):r?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.phoneNumber})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"IMSI"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[140px]"}):r?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.imsi})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"ICCID"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[140px]"}):r?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.iccid})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"IMEI"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[140px]"}):r?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.imei})]})]})]})},c={6:"1.4 MHz",15:"3 MHz",25:"5 MHz",50:"10 MHz",75:"15 MHz",100:"20 MHz"},m={0:"5 MHz",1:"10 MHz",2:"15 MHz",3:"20 MHz",4:"25 MHz",5:"30 MHz",6:"40 MHz",7:"50 MHz",8:"60 MHz",9:"70 MHz",10:"80 MHz",11:"90 MHz",12:"100 MHz",13:"200 MHz",14:"400 MHz",15:"35 MHz",16:"45 MHz"},u={2:"UTRAN",4:"HSDPA",5:"HSUPA",6:"HSDPA & HSUPA",7:"E-UTRAN",10:"E-UTRAN - 5GCN",11:"NR - 5GCN",12:"NG-RAN",13:"E-UTRAN-NR Dual"},x=e=>u[e]||"Unknown",h=e=>{let{data:s,isLoading:t,dataConnectionState:r,connectionStateLoading:n}=e;return(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{children:[(0,l.jsx)(a.ZB,{children:"Connection"}),(0,l.jsx)(a.BT,{children:"Connection information"})]}),(0,l.jsxs)(a.Wu,{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"APN"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("div",{className:"font-bold",children:null==s?void 0:s.connection.apn})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Operator State"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat((null==s?void 0:s.connection.operatorState)==="Unknown"||(null==s?void 0:s.connection.operatorState)==="Denied"||(null==s?void 0:s.connection.operatorState)==="Not Registered"?"bg-rose-500 hover:bg-rose-800":"bg-emerald-500 hover:bg-emerald-800"),children:null==s?void 0:s.connection.operatorState})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Functionality State"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat((null==s?void 0:s.connection.functionalityState)==="Enabled"?"bg-emerald-500 hover:bg-emerald-800":"bg-rose-500 hover:bg-rose-800"),children:null==s?void 0:s.connection.functionalityState})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Data Connection State"}),n?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat("Connected"===r?"bg-emerald-500 hover:bg-emerald-800":"bg-rose-500 hover:bg-rose-800"),children:r})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Network Type"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("div",{className:"font-bold",children:null==s?void 0:s.connection.networkType})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Modem Temperature"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("div",{className:"font-bold",children:null==s?void 0:s.connection.modemTemperature})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Access Technology"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("div",{className:"font-bold",children:(null==s?void 0:s.connection.accessTechnology)?x(s.connection.accessTechnology):"Unknown"})]})]})]})},p=e=>{let{data:s,isLoading:t,bytesSent:r,bytesReceived:n}=e;return(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{children:[(0,l.jsx)(a.ZB,{children:"Data Transmission"}),(0,l.jsx)(a.BT,{children:"Data transmission information"})]}),(0,l.jsxs)(a.Wu,{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Carrier Aggregation"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat((null==s?void 0:s.dataTransmission.carrierAggregation)==="Multi"?"bg-emerald-500 hover:bg-emerald-800":"bg-rose-500 hover:bg-rose-800"),children:null==s?void 0:s.dataTransmission.carrierAggregation})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Bandwidth"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.dataTransmission.bandwidth})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Connected Bands"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.dataTransmission.connectedBands})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Signal Strength"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat((null==s?void 0:s.dataTransmission.signalStrength)&&parseInt(null==s?void 0:s.dataTransmission.signalStrength)>80?"bg-emerald-500 hover:bg-emerald-800":(null==s?void 0:s.dataTransmission.signalStrength)&&parseInt(null==s?void 0:s.dataTransmission.signalStrength)>40?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800"),children:null==s?void 0:s.dataTransmission.signalStrength})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"MIMO Layers"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.dataTransmission.mimoLayers})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Bytes Sent"}),(0,l.jsx)("p",{className:"font-bold",children:r})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Bytes Received"}),(0,l.jsx)("p",{className:"font-bold",children:n})]})]})]})};var g=t(85014);let f=e=>{let{data:s,isLoading:t}=e;return(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{children:[(0,l.jsx)(a.ZB,{children:"Cellular Information"}),(0,l.jsx)(a.BT,{children:"Cellular network information"})]}),(0,l.jsxs)(a.Wu,{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Cell ID"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.cellId})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{children:"TAC"}),(0,l.jsx)(g.ZI,{children:(0,l.jsx)("div",{className:"grid grid-cols-1 gap-1",children:(0,l.jsx)("span",{className:"font-medium",children:"Region / Tracking Area Code"})})})]})}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.trackingAreaCode})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Physical Cell IDs"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.physicalCellId})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"E/ARFCN"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.earfcn})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Mobile Country Code"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.mcc})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Mobile Network Code"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.mnc})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Antenna Signal Quality"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[80px]"}):(0,l.jsx)(o.E,{className:"\n font-bold ".concat((null==s?void 0:s.cellularInfo.signalQuality)&&parseInt(null==s?void 0:s.cellularInfo.signalQuality)>80?"bg-emerald-500 hover:bg-emerald-800":(null==s?void 0:s.cellularInfo.signalQuality)&&parseInt(null==s?void 0:s.cellularInfo.signalQuality)>40?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800"),children:null==s?void 0:s.cellularInfo.signalQuality})]})]})]})};var v=t(1307),j=t(53134),N=t(94005),w=t(4538),b=t(41797),y=t(79492);let S={signal:{label:"LTE/5G Signal Metrics"},rsrp:{label:"RSRP",color:"hsl(var(--chart-1))"},rsrq:{label:"RSRQ",color:"hsl(var(--chart-2))"},sinr:{label:"SINR",color:"hsl(var(--chart-3))"}},A=e=>{let s=e.split("\n").filter(e=>e.trim()),t=[];s.forEach(e=>{let s=e.match(/-?\d+/g);s&&t.push(...s.map(Number))});let l=t.filter(e=>-140!==e&&-32768!==e);return 0===l.length?0:Math.round(l.reduce((e,s)=>e+s,0)/l.length)},C=()=>{let[e,s]=(0,r.useState)(()=>{let e=new Date;return Array.from({length:5},(s,t)=>({time:new Date(e.getTime()-(4-t)*3e3).toISOString(),rsrp:0,rsrq:0,sinr:0}))}),[t,n]=(0,r.useState)("rsrp"),[o,d]=(0,r.useState)(!0),[c,m]=(0,r.useState)(null),u=(0,r.useCallback)(async()=>{try{let e;let t=await fetch("/cgi-bin/quecmanager/home/fetch_signal_metrics.sh");if(!t.ok)throw Error("Failed to fetch signal metrics");try{e=await t.json()}catch(e){throw console.error("Error parsing JSON:",e),Error("Failed to parse signal metrics data")}let l=Math.min(e.rsrp.length,e.rsrq.length,e.sinr.length);if(0===l)throw Error("No signal metrics data available");let r=Array.from({length:l},(s,t)=>({time:e.rsrp[t].datetime,rsrp:A(e.rsrp[t].output),rsrq:A(e.rsrq[t].output),sinr:A(e.sinr[t].output)}));s(r),m(null)}catch(t){console.error("Error fetching metrics:",t),m(t instanceof Error?t.message:"An unknown error occurred");let e=new Date().toISOString();s(s=>{let t=[...s];return t.length>=20&&t.shift(),t.push({time:e,rsrp:0,rsrq:0,sinr:0}),t})}finally{d(!1)}},[]);(0,r.useEffect)(()=>{u();let e=setInterval(u,15e3);return()=>clearInterval(e)},[u]);let x=e.length>0?e[e.length-1]:{rsrp:0,rsrq:0,sinr:0};return c?(0,l.jsx)(a.Zp,{children:(0,l.jsxs)(a.aR,{children:[(0,l.jsx)(a.ZB,{children:"Error Loading Signal Metrics"}),(0,l.jsx)(a.BT,{children:c})]})}):(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{className:"flex flex-col items-stretch space-y-0 border-b p-0 sm:flex-row",children:[(0,l.jsxs)("div",{className:"flex flex-1 flex-col justify-center gap-1 px-6 py-5 sm:py-6",children:[(0,l.jsx)(a.ZB,{children:"Antenna Port Signal Metrics"}),(0,l.jsx)(a.BT,{children:"Per-port signal values averaged across all active ports"})]}),(0,l.jsx)("div",{className:"flex",children:["rsrp","rsrq","sinr"].map(e=>(0,l.jsxs)("button",{"data-active":t===e,className:"flex flex-1 flex-col justify-center gap-1 border-t px-6 py-4 text-left even:border-l data-[active=true]:bg-muted/50 sm:border-l sm:border-t-0 sm:px-8 sm:py-6",onClick:()=>n(e),children:[(0,l.jsx)("span",{className:"text-xs text-muted-foreground",children:S[e].label}),o?(0,l.jsx)(i.E,{className:"lg:h-10 h-6 w-full"}):(0,l.jsx)("span",{className:"text-base font-bold leading-none sm:text-3xl",children:x[e].toFixed(0)})]},e))})]}),(0,l.jsx)(a.Wu,{className:"px-2 sm:p-6",children:(0,l.jsx)(v.at,{config:S,className:"aspect-auto h-[250px] w-full",children:(0,l.jsxs)(j.Q,{accessibilityLayer:!0,data:e,margin:{left:12,right:12},children:[(0,l.jsxs)("defs",{children:[(0,l.jsxs)("linearGradient",{id:"fillRsrp",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,l.jsx)("stop",{offset:"5%",stopColor:"var(--color-rsrp)",stopOpacity:.8}),(0,l.jsx)("stop",{offset:"95%",stopColor:"var(--color-rsrp)",stopOpacity:.1})]}),(0,l.jsxs)("linearGradient",{id:"fillRsrq",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,l.jsx)("stop",{offset:"5%",stopColor:"var(--color-rsrq)",stopOpacity:.8}),(0,l.jsx)("stop",{offset:"95%",stopColor:"var(--color-rsrq)",stopOpacity:.1})]}),(0,l.jsxs)("linearGradient",{id:"fillSinr",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,l.jsx)("stop",{offset:"5%",stopColor:"var(--color-sinr)",stopOpacity:.8}),(0,l.jsx)("stop",{offset:"95%",stopColor:"var(--color-sinr)",stopOpacity:.1})]})]}),(0,l.jsx)(N.d,{vertical:!1}),(0,l.jsx)(w.W,{dataKey:"time",tickLine:!1,axisLine:!1,tickMargin:8,minTickGap:32,tickFormatter:e=>new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!0})}),(0,l.jsx)(b.h,{hide:!0,domain:(e=>{switch(e){case"rsrp":return[-140,-60];case"rsrq":return[-20,0];case"sinr":return[-10,30];default:return[0,"auto"]}})(t)}),(0,l.jsx)(v.II,{content:(0,l.jsx)(v.Nt,{className:"w-[200px]",nameKey:"metric",labelFormatter:e=>new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!0})})}),(0,l.jsx)(y.G,{dataKey:t,type:"monotone",stroke:"var(--color-".concat(t,")"),fill:"url(#fill".concat(t.charAt(0).toUpperCase()+t.slice(1),")"),strokeWidth:2,activeDot:{r:4},baseValue:(e=>{switch(e){case"rsrp":return -140;case"rsrq":return -20;case"sinr":return -10;default:return 0}})(t)})]})})}),(0,l.jsxs)(a.wL,{className:"flex-col items-start gap-2 text-sm",children:[(0,l.jsx)("div",{className:"flex gap-2 font-medium leading-none",children:"Displays aggregated signal metrics across all active antenna ports."}),(0,l.jsx)("div",{className:"leading-none text-muted-foreground italic",children:"Higher values indicate better signal quality."})]})]})};var I=t(92867),k=t(32810);let E=e=>"".concat(Math.round(e/1048576)," MB"),T=()=>{let[e,s]=(0,r.useState)(()=>{let e=localStorage.getItem("memoryData");return e?JSON.parse(e):{total:0,used:0,available:0}}),[t,n]=(0,r.useState)({enabled:!0,interval:2,running:!1}),[o,d]=(0,r.useState)(()=>{let e=localStorage.getItem("memoryData");if(!e)return!0;try{let s=JSON.parse(e);return!s||0===s.total}catch(e){return!0}}),[c,m]=(0,r.useState)(()=>{let e=localStorage.getItem("memoryData");if(!e)return!1;try{let s=JSON.parse(e);return s&&s.total>0}catch(e){return!1}}),u=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/memory/fetch_memory.sh",{method:"GET",cache:"no-store",headers:{"Content-Type":"application/json"}});if(!e.ok)return!1;let t=await e.json();if("success"===t.status&&t.data)return s(t.data),m(!0),localStorage.setItem("memoryData",JSON.stringify(t.data)),!0;return!1}catch(e){return console.error("Failed to fetch memory data:",e),!1}},[]),x=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/memory/memory_service.sh",{method:"GET",cache:"no-store",headers:{"Content-Type":"application/json"}});if(!e.ok)return null;let s=await e.json();if("success"===s.status&&s.data)return n(s.data),s.data;return null}catch(e){return console.error("Failed to fetch memory config:",e),null}},[]);return(0,r.useEffect)(()=>{let e=null;return(async()=>{let s=await x(),t=localStorage.getItem("memoryData");if(t&&JSON.parse(t).total>0||d(!0),null==s?void 0:s.enabled){await u();let t=Math.max(1e3*(s.interval||2),1e3);console.log("Starting memory polling with ".concat(t,"ms interval (").concat(s.interval,"s from config)")),e=setInterval(u,t)}d(!1)})(),()=>{e&&clearInterval(e)}},[x,u]),(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{className:"flex flex-row items-center justify-between",children:[(0,l.jsx)(a.ZB,{children:"Memory"}),t.enabled&&t.running?(0,l.jsx)(I.A,{className:"h-4 w-4 text-green-500"}):(0,l.jsx)(k.A,{className:"h-4 w-4 text-red-500"})]}),(0,l.jsx)(a.Wu,{children:o?(0,l.jsx)(i.E,{className:"h-[120px] w-full"}):t.enabled?c?(0,l.jsxs)("div",{className:"grid lg:grid-cols-3 grid-cols-2 grid-flow-row gap-4 col-span-3",children:[(0,l.jsxs)("div",{className:"grid gap-1",children:[(0,l.jsx)("span",{className:"text-sm text-muted-foreground",children:"Total"}),(0,l.jsx)("span",{className:"text-base font-bold",children:E(e.total)})]}),(0,l.jsxs)("div",{className:"grid gap-1",children:[(0,l.jsx)("span",{className:"text-sm text-muted-foreground",children:"Used"}),(0,l.jsx)("span",{className:"text-base font-bold",children:E(e.used)})]}),(0,l.jsxs)("div",{className:"grid gap-1",children:[(0,l.jsx)("span",{className:"text-sm text-muted-foreground",children:"Available"}),(0,l.jsx)("span",{className:"text-base font-bold",children:E(e.available)})]})]}):(0,l.jsx)("div",{className:"h-[120px] flex items-center justify-center",children:(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:"Starting memory monitoring..."})}):(0,l.jsxs)("div",{className:"h-[60px] flex flex-col items-center justify-center",children:[(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:"Memory monitoring is disabled."}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Enable it in Settings → Personalization"})]})})]})},R={ms:{label:"ms",color:"hsl(var(--chart-4))"}},P=()=>new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"}),M=()=>{let[e,s]=(0,r.useState)(()=>{let e=localStorage.getItem("pingData");return e?JSON.parse(e):[]}),[t,n]=(0,r.useState)(()=>{let e=localStorage.getItem("pingData");if(e){let s=JSON.parse(e);return s.length>0?s[s.length-1].ms:null}return null}),[d,c]=(0,r.useState)({enabled:!0,interval:5,host:"8.8.8.8",running:!1}),[m,u]=(0,r.useState)(()=>{let e=localStorage.getItem("pingData");if(!e)return!0;try{let s=JSON.parse(e);return!s||0===s.length}catch(e){return!0}}),[x,h]=(0,r.useState)(()=>{let e=localStorage.getItem("pingData");if(!e)return!1;try{let s=JSON.parse(e);return s&&s.length>0}catch(e){return!1}}),p=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/ping/fetch_ping.sh",{method:"GET",cache:"no-store",headers:{"Content-Type":"application/json"}});if(!e.ok)return!1;let t=await e.json();if("success"===t.status&&t.data){let e=t.data;if("number"==typeof e.latency){n(e.latency);let t={time:P(),ms:e.latency,index:0};s(e=>{let s;return s=e.length<5?[...e,t].map((e,s)=>({...e,index:s+1})):[...e.slice(1),t].map((e,s)=>({...e,index:s+1})),localStorage.setItem("pingData",JSON.stringify(s)),s}),h(!0)}return!0}return!1}catch(e){return console.error("Failed to fetch ping data:",e),!1}},[]),g=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/ping/ping_service.sh",{method:"GET",cache:"no-store",headers:{"Content-Type":"application/json"}});if(!e.ok)return null;let s=await e.json();if("success"===s.status&&s.data)return c(s.data),s.data;return null}catch(e){return console.error("Failed to fetch ping config:",e),null}},[]);return(0,r.useEffect)(()=>{let e=null;return(async()=>{let s=await g(),t=localStorage.getItem("pingData");if(t&&JSON.parse(t).length>0||u(!0),null==s?void 0:s.enabled){await p();let t=Math.max(1e3*(s.interval||5),1e3);console.log("Starting ping polling with ".concat(t,"ms interval (").concat(s.interval,"s from config)")),e=setInterval(p,t)}u(!1)})(),()=>{e&&clearInterval(e)}},[g,p]),(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{className:"flex flex-row items-center justify-between space-y-0 pb-2",children:[(0,l.jsx)(a.ZB,{children:"Ping Latency"}),d.enabled?null!==t?(0,l.jsxs)(o.E,{className:"text-normal font-bold",children:[t," ms"]}):null:(0,l.jsx)(k.A,{className:"h-4 w-4 text-red-500"})]}),(0,l.jsx)(a.Wu,{children:m?(0,l.jsx)(i.E,{className:"h-[200px] w-full"}):d.enabled?x?(0,l.jsx)(v.at,{config:R,children:(0,l.jsxs)(j.Q,{accessibilityLayer:!0,data:e,margin:{top:5,right:10,left:0,bottom:5},children:[(0,l.jsx)("defs",{children:(0,l.jsxs)("linearGradient",{id:"fillPing",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,l.jsx)("stop",{offset:"5%",stopColor:"var(--color-ms)",stopOpacity:.8}),(0,l.jsx)("stop",{offset:"95%",stopColor:"var(--color-ms)",stopOpacity:.1})]})}),(0,l.jsx)(N.d,{vertical:!1,stroke:"var(--border)",strokeOpacity:.2}),(0,l.jsx)(w.W,{dataKey:"index",tickLine:!1,axisLine:!1,tickMargin:5,tick:{fontSize:9},ticks:[1,2,3,4,5]}),(0,l.jsx)(b.h,{hide:!1,domain:(()=>{if(0===e.length)return[0,100];let s=e.map(e=>e.ms);return[Math.max(0,Math.min(...s)-5),Math.max(...s)+5]})(),tickLine:!1,axisLine:!1,width:20,tick:{fontSize:10},tickFormatter:e=>"".concat(e)}),(0,l.jsx)(v.II,{cursor:!1,content:(0,l.jsx)(v.Nt,{labelFormatter:(s,t)=>{let l=e.find(e=>e.index===s);return l?"".concat(l.time):s},formatter:(e,s)=>["".concat(e," ms"),"Latency"]})}),(0,l.jsx)(y.G,{dataKey:"ms",type:"monotone",stroke:"var(--color-ms)",strokeWidth:2,fill:"url(#fillPing)",activeDot:{r:4,strokeWidth:0},isAnimationActive:!0,animationDuration:1200,animationEasing:"ease-in-out"})]})}):(0,l.jsx)("div",{className:"h-[200px] flex items-center justify-center",children:(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:"Starting ping monitoring..."})}):(0,l.jsxs)("div",{className:"h-[200px] flex flex-col items-center justify-center",children:[(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:"Ping monitoring is disabled."}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Enable it in Settings → Personalization"})]})})]})};var D=t(42541),z=t(93557),U=t(97801),L=t(51589),G=t(54385),B=t(14389),F=t(98969),_=t(17799),O=t(92776),q=t.n(O),Z=t(7197),H=t(74043),Q=t(22250);let W=r.createContext(null);function $(){let e=r.useContext(W);if(!e)throw Error("useCarousel must be used within a ");return e}let J=r.forwardRef((e,s)=>{let{orientation:t="horizontal",opts:n,setApi:a,plugins:i,className:o,children:d,...c}=e,[m,u]=(0,H.A)({...n,axis:"horizontal"===t?"x":"y"},i),[x,h]=r.useState(!1),[p,g]=r.useState(!1),f=r.useCallback(e=>{e&&(h(e.canScrollPrev()),g(e.canScrollNext()))},[]),v=r.useCallback(()=>{null==u||u.scrollPrev()},[u]),j=r.useCallback(()=>{null==u||u.scrollNext()},[u]),N=r.useCallback(e=>{"ArrowLeft"===e.key?(e.preventDefault(),v()):"ArrowRight"===e.key&&(e.preventDefault(),j())},[v,j]);return r.useEffect(()=>{u&&a&&a(u)},[u,a]),r.useEffect(()=>{if(u)return f(u),u.on("reInit",f),u.on("select",f),()=>{null==u||u.off("select",f)}},[u,f]),(0,l.jsx)(W.Provider,{value:{carouselRef:m,api:u,opts:n,orientation:t||((null==n?void 0:n.axis)==="y"?"vertical":"horizontal"),scrollPrev:v,scrollNext:j,canScrollPrev:x,canScrollNext:p},children:(0,l.jsx)("div",{ref:s,onKeyDownCapture:N,className:(0,Q.cn)("relative",o),role:"region","aria-roledescription":"carousel",...c,children:d})})});J.displayName="Carousel";let K=r.forwardRef((e,s)=>{let{className:t,...r}=e,{carouselRef:n,orientation:a}=$();return(0,l.jsx)("div",{ref:n,className:"overflow-hidden",children:(0,l.jsx)("div",{ref:s,className:(0,Q.cn)("flex","horizontal"===a?"-ml-4":"-mt-4 flex-col",t),...r})})});K.displayName="CarouselContent";let V=r.forwardRef((e,s)=>{let{className:t,...r}=e,{orientation:n}=$();return(0,l.jsx)("div",{ref:s,role:"group","aria-roledescription":"slide",className:(0,Q.cn)("min-w-0 shrink-0 grow-0 basis-full","horizontal"===n?"pl-4":"pt-4",t),...r})});V.displayName="CarouselItem",r.forwardRef((e,s)=>{let{className:t,variant:r="outline",size:n="icon",...a}=e,{orientation:i,scrollPrev:o,canScrollPrev:d}=$();return(0,l.jsxs)(D.$,{ref:s,variant:r,size:n,className:(0,Q.cn)("absolute h-8 w-8 rounded-full","horizontal"===i?"-left-12 top-1/2 -translate-y-1/2":"-top-12 left-1/2 -translate-x-1/2 rotate-90",t),disabled:!d,onClick:o,...a,children:[(0,l.jsx)(Z.A60,{className:"h-4 w-4"}),(0,l.jsx)("span",{className:"sr-only",children:"Previous slide"})]})}).displayName="CarouselPrevious",r.forwardRef((e,s)=>{let{className:t,variant:r="outline",size:n="icon",...a}=e,{orientation:i,scrollNext:o,canScrollNext:d}=$();return(0,l.jsxs)(D.$,{ref:s,variant:r,size:n,className:(0,Q.cn)("absolute h-8 w-8 rounded-full","horizontal"===i?"-right-12 top-1/2 -translate-y-1/2":"-bottom-12 left-1/2 -translate-x-1/2 rotate-90",t),disabled:!d,onClick:o,...a,children:[(0,l.jsx)(Z.flY,{className:"h-4 w-4"}),(0,l.jsx)("span",{className:"sr-only",children:"Next slide"})]})}).displayName="CarouselNext";let Y=e=>{let{id:s,bandNumber:t,earfcn:r,bandwidth:n,pci:i,rsrp:d,rsrq:c,sinr:m}=e;return(0,l.jsx)(a.Zp,{className:"p-8",children:(0,l.jsxs)("div",{className:"flex flex-row items-center gap-6 justify-between",children:[(0,l.jsxs)("div",{className:"grid gap-2 w-[180px]",children:[(0,l.jsx)("h2",{className:"text-md font-bold",children:"Band"}),(0,l.jsxs)("div",{className:"flex flex-row items-center gap-2",children:[t.replace("LTE BAND ","B").replace("NR5G BAND ","N"),t.includes("NR5G")&&(0,l.jsx)(o.E,{className:"text-xs bg-blue-600 hover:bg-blue-800",children:"NR 5G"})]})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:"E/ARFCN"}),(0,l.jsx)("p",{children:r})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:"Bandwidth"}),(0,l.jsx)("p",{children:n})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:"Physical Cell ID"}),(0,l.jsx)("p",{children:i})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:"RSRP"}),(0,l.jsxs)(o.E,{className:parseInt(d)>=-80?"bg-emerald-500 hover:bg-emerald-800":parseInt(d)>=-100?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[d," dBm"]})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:"RSRQ"}),(0,l.jsxs)(o.E,{className:10>=parseInt(c)?"bg-emerald-500 hover:bg-emerald-800":20>=parseInt(c)?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[c," dB"]})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:t.includes("NR5G")?"NR-SNR":"SINR"}),(0,l.jsxs)(o.E,{className:parseInt(m)>=(t.includes("NR5G")?20:14)?"bg-emerald-500 hover:bg-emerald-800":parseInt(m)>=-2?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[m," dB"]})]})]})})},X=e=>{let{bands:s,isLoading:t}=e;return t?(0,l.jsxs)("div",{className:"flex items-center justify-center",children:[(0,l.jsx)("div",{className:"hidden lg:block w-full",children:(0,l.jsxs)(a.Zp,{className:"p-6 grid gap-4",children:[s&&s.map(e=>(0,l.jsx)(Y,{...e},e.id)),(0,l.jsx)(a.wL,{className:"w-full p-6 flex items-center justify-center",children:(0,l.jsx)(a.BT,{className:"text-md",children:"Currently bands connected."})})]})}),(0,l.jsx)(J,{className:"lg:hidden w-full max-w-xs",children:(0,l.jsx)(K,{children:(0,l.jsx)(V,{children:(0,l.jsx)("div",{className:"p-1",children:(0,l.jsx)(a.Zp,{children:(0,l.jsxs)(a.Wu,{className:"aspect-square p-4 gap-4 flex flex-col items-center justify-center flex-grow",children:[(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"Band"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-16 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"E/ARFCN"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-16 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"Bandwidth"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-16 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"PCI"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-16 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"RSRP"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-32 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"RSRQ"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-32 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"SINR"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-32 h-4"})})]})]})})})})})})]}):(0,l.jsxs)("div",{className:"flex items-center justify-center",children:[(0,l.jsx)("div",{className:"hidden lg:block w-full",children:(0,l.jsx)(a.Zp,{className:"p-6 grid gap-4",children:s&&s.map(e=>(0,l.jsx)(Y,{...e},e.id))})}),(0,l.jsx)(J,{className:"lg:hidden w-full max-w-xs",children:(0,l.jsx)(K,{children:null==s?void 0:s.map(e=>(0,l.jsx)(V,{className:"md:basis-1/2 lg:basis-1/3",children:(0,l.jsx)("div",{className:"p-1",children:(0,l.jsx)(a.Zp,{children:(0,l.jsxs)(a.Wu,{className:"aspect-square p-4 gap-4 flex flex-col items-center justify-center flex-grow",children:[(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"Band"}),(0,l.jsx)("p",{children:e.bandNumber})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"E/ARFCN"}),(0,l.jsx)("p",{children:e.earfcn})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"Bandwidth"}),(0,l.jsx)("p",{children:e.bandwidth})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"PCI"}),(0,l.jsx)("p",{children:e.pci})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"RSRP"}),(0,l.jsxs)(o.E,{className:parseInt(e.rsrp)>=-80?"bg-emerald-500 hover:bg-emerald-800":parseInt(e.rsrp)>=-100?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[e.rsrp," dBm"]})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"RSRQ"}),(0,l.jsxs)(o.E,{className:10>=parseInt(e.rsrq)?"bg-emerald-500 hover:bg-emerald-800":20>=parseInt(e.rsrq)?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[e.rsrq," dB"]})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"SINR"}),(0,l.jsxs)(o.E,{className:parseInt(e.sinr)>=20?"bg-emerald-500 hover:bg-emerald-800":parseInt(e.sinr)>=-2?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[e.sinr," dB"]})]})]})})})},e.id))})})]})},ee=function(e,s,t,l){let r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"Unknown",n=arguments.length>5&&void 0!==arguments[5]?arguments[5]:":",a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:",";try{var i,o,d;return(null===(d=e.split("\n")[s])||void 0===d?void 0:null===(o=d.split(n)[t])||void 0===o?void 0:null===(i=o.split(a)[l])||void 0===i?void 0:i.replace(/"/g,"").trim())||r}catch(e){return r}},es=function(e,s){var t,l;let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"-",n=ee((null===(l=e[15])||void 0===l?void 0:null===(t=l.response)||void 0===t?void 0:t.split("\n").find(e=>e.includes('QMAP: "WWAN"')&&e.includes('"'.concat(s,'"'))))||"",0,1,4,r," ",","),a="IPV6"==s?n.replace(/::/g,":"):n;return["0.0.0.0","::","::0","::0:0:0:0:0:0:0:0","0:0:0:0:0:0:0:0"].includes(a)?r:a},et=function(e,s,t,l,r){let n=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"-";try{var a,i,o;if(!(null===(a=e[t])||void 0===a?void 0:a.response)||!(null===(i=e[r])||void 0===i?void 0:i.response))return n;let d=e[t].response.split("\n").filter(e=>e.includes('+QMAP: "WWAN"')),c=null===(o=d[0])||void 0===o?void 0:o.match(/\+QMAP: "WWAN",\d+,(\d+),/),m=c?c[1]:null;if(!m)return n;let u=e[r].response.split("\n").filter(e=>e.includes("+CGCONTRDP:")).find(e=>{let s=e.match(/\+CGCONTRDP: (\d+),/);return s&&s[1]===m});if(!u)return n;let x=u.split(",");if(x.length<=l[s])return n;return x[l[s]].replace(/"/g,"").trim()||n}catch(e){return console.error("Error parsing DNS address:",e),n}},el=e=>{try{let s=e.match(/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/),t=e.split(".").length>4;return s?e:t?eN(e):e.replace(/:{3,}/g,"::")}catch(s){return console.error("Error formatting DNS address:",s),e}},er=e=>ee(e,1,1,3),en=(e,s)=>({1:"Registered",2:"Searching",3:"Denied",4:"Unknown",5:"Roaming"})[Number(ee(e,1,1,1))||Number(ee(s,1,1,1))]||"Not Registered",ea=e=>{let s=e.match(/"LTE BAND \d+"|"NR5G BAND \d+"/g)||[],t=null==s?void 0:s.some(e=>e.includes("LTE")),l=null==s?void 0:s.some(e=>e.includes("NR5G"));return t&&l?"NR5G-NSA":t?"LTE":l?"NR5G-SA":"No Signal"},ei=e=>{let s=["cpuss-0","cpuss-1","cpuss-2","cpuss-3"].map(s=>{var t;let l=e.split("\n").find(e=>e.includes(s));return parseInt(null==l?void 0:null===(t=l.split(":")[1])||void 0===t?void 0:t.split(",")[1].replace(/"/g,"").trim())}),t=s.reduce((e,s)=>e+s,0)/s.length;return"".concat(Math.round(t),"\xb0C")},eo=e=>{let s=[-140,-37625,-32768],t=e=>{var t;return(null==e?void 0:null===(t=e.split(":")[1])||void 0===t?void 0:t.split(",").slice(0,4).map(e=>parseInt(e.trim())).filter(e=>!s.includes(e)))||[]},l=t(e.split("\n").find(e=>e.includes("LTE"))),r=t(e.split("\n").find(e=>e.includes("NR5G"))),n=e=>Math.max(0,Math.min(100,(e.reduce((e,s)=>e+s,0)/e.length+125)/50*100)),a=l.length?n(l):null,i=r.length?n(r):null;return null!==a&&null!==i?"".concat(Math.round((a+i)/2),"%"):null!==a?"".concat(Math.round(a),"%"):null!==i?"".concat(Math.round(i),"%"):"Unknown%"},ed=function(e,s,t,l){let r=arguments.length>4&&void 0!==arguments[4]&&arguments[4],n=t[s],a=l[s];return void 0===n||void 0===a||r?void 0!==n&&void 0!==a&&r?ee(e,n,1,a).toUpperCase():"Unknown":parseInt(ee(e,n,1,a),16).toString().toUpperCase()},ec=(e,s,t)=>{let l=t[s];return ee(e,"NR5G-NSA"===s?2:1,1,l)},em=e=>{let s=[-140,-32768,-37625],t=e=>ee(e||"",0,1,1,"Unknown",":"," ").split(",").slice(0,4).map(e=>parseInt(e.trim())).filter(e=>!s.includes(e))||[],l=e=>e.length?Math.max(0,Math.min(100,(e.reduce((e,s)=>e+s,0)/e.length- -10)/40*100)):0,r=e.split("\n"),n=l(t(r.find(e=>e.includes("LTE")))),a=l(t(r.find(e=>e.includes("NR5G"))));return n&&a?"".concat(Math.round((n+a)/2),"%"):n?"".concat(Math.round(n),"%"):a?"".concat(Math.round(a),"%"):"Unknown%"},eu=e=>{let s=e=>e.map(e=>ee(e,0,1,3,"Unknown",":",",")),t=[...s(e.split("+QCAINFO").filter(e=>e.includes("LTE BAND"))),...s(e.split("+QCAINFO").filter(e=>e.includes("NR5G BAND")))];return t.length?t:["Unknown"]},ex=e=>{let s=s=>e.split("+QCAINFO").filter(e=>e.includes(s)).map(e=>{var s,t;return(null===(t=e.split(":")[1])||void 0===t?void 0:null===(s=t.split(",")[1])||void 0===s?void 0:s.trim())||"Unknown"}),t=s("LTE BAND"),l=s("NR5G BAND");return[...t,...l].length?[...t,...l]:["Unknown"]},eh=e=>{let s=(s,t)=>e.split("+QCAINFO").filter(e=>e.includes(s)).map(e=>{var s;return t[null===(s=e.split(":")[1])||void 0===s?void 0:s.split(",")[2]]||"Unknown"}),t=s("LTE BAND",c),l=s("NR5G BAND",m);return[...t,...l].length?[...t,...l]:["Unknown"]},ep=(e,s)=>{let t=e=>{var s;return e&&(null===(s=e[8===e.length?4:5])||void 0===s?void 0:s.trim())||"Unknown"},l=e=>e.map(e=>{var s;return t(null===(s=e.split(":")[1])||void 0===s?void 0:s.split(","))}),r=e.split("+QCAINFO");return[l(r.filter(e=>e.includes("PCC")))[0],...l(r.filter(e=>e.includes("SCC")))].filter(e=>"Unknown"!==e)},eg=e=>{let s=e=>{var s;return e&&(null===(s=e[(()=>{switch(e.length){case 8:return 5;case 12:return 9;default:return 6}})()])||void 0===s?void 0:s.trim())||"Unknown"},t=e=>e.map(e=>{var t;return s(null===(t=e.split(":")[1])||void 0===t?void 0:t.split(","))}),l=e.split("+QCAINFO");return[t(l.filter(e=>e.includes("PCC")))[0],...t(l.filter(e=>e.includes("SCC")))].filter(e=>"Unknown"!==e)},ef=e=>{let s=e=>{var s;return e&&(null===(s=e[(()=>{switch(e.length){case 8:return 6;case 12:return 10;default:return 7}})()])||void 0===s?void 0:s.trim())||"Unknown"},t=e=>e.map(e=>{var t;return s(null===(t=e.split(":")[1])||void 0===t?void 0:t.split(","))}),l=e.split("+QCAINFO");return[t(l.filter(e=>e.includes("PCC")))[0],...t(l.filter(e=>e.includes("SCC")))].filter(e=>"Unknown"!==e)},ev=(e,s)=>{let t=e=>{var s;return e&&(null===(s=e[(()=>{switch(e.length){case 9:return 8;case 8:return 7;case 12:return 11;default:return 9}})()])||void 0===s?void 0:s.trim())||"Unknown"},l=e=>e.map(e=>{var s;let l=t(null===(s=e.split(":")[1])||void 0===s?void 0:s.split(","));if("-32768"===l)return"-";let r=parseInt(l)>=4e3?"4000":-3e3>parseInt(l)?"-":l;return isNaN(parseInt(r))||e.includes("LTE")?r||"Unknown":Math.round(parseInt(r)/100).toString()}),r=e.split("+QCAINFO");return[l(r.filter(e=>e.includes("PCC")))[0],...l(r.filter(e=>e.includes("SCC")))].filter(e=>"Unknown"!==e)},ej=e=>{let s=[-32768,-140],t=e=>ee(e||"",0,1,1,"-32768",":"," ").split(",").slice(0,4).map(e=>parseInt(e.trim())).filter(e=>!s.includes(e))||[],l=t(e.split("\n").find(e=>e.includes("LTE"))).length,r=t(e.split("\n").find(e=>e.includes("NR5G"))).length;return l&&r?"LTE ".concat(l," / NR ").concat(r):l?" LTE ".concat(l):r?"NR ".concat(r):"Unknown"},eN=e=>{try{let s=e.split(".");if(s.length<8)return e;let t=s.map(e=>{let s=parseInt(e,10);return isNaN(s)?"00":s.toString(16).padStart(2,"0")}),l=[];for(let e=0;ee.replace(/^0+/,"")||"0"),n=[],a=[];for(let e=0;e0&&(a.length>n.length&&(n=[...a]),a=[]);if(a.length>n.length&&(n=[...a]),n.length>=2){let e=[];for(let s=0;s{let[e,s]=(0,r.useState)(null),[t,l]=(0,r.useState)(!0),[n,a]=(0,r.useState)(null),[i,o]=(0,r.useState)(0),[d,c]=(0,r.useState)(!0),m=(0,r.useCallback)(async()=>{try{c(!0);let e=await fetch("/cgi-bin/quecmanager/home/fetch_public_ip.sh"),t="Can't fetch public IP";if(e.ok){let s=await e.json();t=s.error?"No Internet":s.public_ip||"-"}s(e=>e?{...e,networkAddressing:{...e.networkAddressing,publicIPv4:t}}:null)}catch(e){console.error("Error fetching public IP:",e),s(e=>e?{...e,networkAddressing:{...e.networkAddressing,publicIPv4:"Can't fetch public IP"}}:null)}finally{c(!1)}},[]),u=(0,r.useCallback)(async e=>{console.error("Error fetching home data:",e),i<2?(console.log("Attempting automatic recovery (attempt ".concat(i+1,"/2)...")),o(e=>e+1),await new Promise(e=>setTimeout(e,2e3)),x()):(console.error("Max retry attempts reached. Please refresh manually."),a(e),s({simCard:{slot:"Unknown",state:"Unknown",provider:"Unknown",phoneNumber:"Unknown",imsi:"-",iccid:"-",imei:"-"},connection:{apn:"No APN",operatorState:"Unknown",functionalityState:"Disabled",networkType:"No Signal",modemTemperature:"Unknown",accessTechnology:"-"},dataTransmission:{carrierAggregation:"Inactive",connectedBands:"-",signalStrength:"-%",mimoLayers:"-",bandwidth:"Unknown"},cellularInfo:{cellId:"-",trackingAreaCode:"-",cellIdRaw:"-",trackingAreaCodeRaw:"-",physicalCellId:"-",earfcn:"-",mcc:"-",mnc:"-",signalQuality:"-%"},currentBands:{id:[1],bandNumber:["-"],earfcn:["-"],bandwidth:["-"],pci:["-"],rsrp:["-"],rsrq:["-"],sinr:["-"]},networkAddressing:{publicIPv4:"Not available",cellularIPv4:"Not available",cellularIPv6:"Not available",carrierPrimaryDNS:"Not available",carrierSecondaryDNS:"Not available",rawCarrierPrimaryDNS:"Not available",rawCarrierSecondaryDNS:"Not available"},timeAdvance:{lteTimeAdvance:"-",nrTimeAdvance:"-"}}))},[i]),x=(0,r.useCallback)(async()=>{try{var e,t,r,n,i,d,c,x,h,p,g,f,v,j,N,w,b,y,S,A,C,I,k,E,T,R;let l=await fetch("/cgi-bin/quecmanager/at_cmd/fetch_data.sh?set=1");if(!l.ok)throw Error("API returned status ".concat(l.status));let u=await l.json();u.some(e=>e.response.toLowerCase().includes("failed"))&&(console.error("SMS tool failure detected in modem response. Attempting service restart via reset-at-bridge.sh."),await fetch("/cgi-bin/quecmanager/reset-at-bridge.sh"));let P={simCard:{slot:ee(u[0].response,1,1,0),state:u[6].response.includes("READY")?"Inserted":u[6].response.includes("PIN")?"Waiting for PIN":u[6].response.includes("PUK")?"Waiting for Password":u[6].response.toLowerCase().includes("failed")?"SMS-Tool Failed Token":"Unknown",provider:ee(u[2].response,1,1,2),phoneNumber:ee(u[1].response,1,1,1),imsi:ee(u[3].response,1,0,0),iccid:ee(u[4].response,1,1,1,"Unknown",":"," "),imei:ee(u[5].response,1,0,0)},connection:{apn:ee(null===(e=u[7])||void 0===e?void 0:e.response,1,1,2,ee(null===(t=u[12])||void 0===t?void 0:t.response,1,1,2)),operatorState:en(null===(r=u[8])||void 0===r?void 0:r.response,null===(n=u[16])||void 0===n?void 0:n.response)||"Unknown",functionalityState:"1"===ee(null===(i=u[9])||void 0===i?void 0:i.response,1,1,0)?"Enabled":"Disabled",networkType:ea(u[13].response)||"No Signal",modemTemperature:ei(u[11].response)||"Unknown",accessTechnology:er(u[2].response)||"Unknown"},dataTransmission:{carrierAggregation:(null===(d=u[13].response.match(/"LTE BAND \d+"|"NR5G BAND \d+"/g))||void 0===d?void 0:d.length)>1?"Multi":"Inactive",bandwidth:eh(u[13].response).join(", ")||"Unknown",connectedBands:eu(u[13].response).join(", ").replaceAll("LTE BAND ","B").replaceAll("NR5G BAND ","N")||"Unknown",signalStrength:eo(u[14].response)||"Unknown",mimoLayers:ej(u[14].response)||"Unknown"},cellularInfo:{cellId:ed(null===(c=u[10])||void 0===c?void 0:c.response,ea(null===(x=u[13])||void 0===x?void 0:x.response),{"NR5G-SA":1,"NR5G-NSA":2,LTE:1},{"NR5G-SA":6,"NR5G-NSA":4,LTE:6},!1),trackingAreaCode:ed(null===(h=u[10])||void 0===h?void 0:h.response,ea(null===(p=u[13])||void 0===p?void 0:p.response),{"NR5G-SA":1,"NR5G-NSA":2,LTE:1},{"NR5G-SA":8,"NR5G-NSA":10,LTE:12},!1),cellIdRaw:ed(null===(g=u[10])||void 0===g?void 0:g.response,ea(null===(f=u[13])||void 0===f?void 0:f.response),{"NR5G-SA":1,"NR5G-NSA":2,LTE:1},{"NR5G-SA":6,"NR5G-NSA":4,LTE:6},!0),trackingAreaCodeRaw:ed(null===(v=u[10])||void 0===v?void 0:v.response,ea(null===(j=u[13])||void 0===j?void 0:j.response),{"NR5G-SA":1,"NR5G-NSA":2,LTE:1},{"NR5G-SA":8,"NR5G-NSA":10,LTE:12},!0),physicalCellId:ep(u[13].response,ea(u[13].response)).join(", ")||"Unknown",earfcn:ex(u[13].response).join(", "),mcc:ec(null===(N=u[10])||void 0===N?void 0:N.response,ea(null===(w=u[13])||void 0===w?void 0:w.response),{"NR5G-NSA":2,LTE:4,"NR5G-SA":4}),mnc:ec(null===(b=u[10])||void 0===b?void 0:b.response,ea(null===(y=u[13])||void 0===y?void 0:y.response),{"NR5G-NSA":3,LTE:5,"NR5G-SA":5}),signalQuality:em(u[19].response)||"Unknown"},currentBands:{id:Array.from({length:null!==(R=null===(S=eu(u[13].response))||void 0===S?void 0:S.length)&&void 0!==R?R:0},(e,s)=>s+1)||[1],bandNumber:eu(u[13].response)||["Unknown"],earfcn:ex(u[13].response),bandwidth:eh(u[13].response)||["Unknown"],pci:ep(u[13].response,ea(u[13].response))||["Unknown"],rsrp:eg(u[13].response),rsrq:ef(u[13].response)||["Unknown"],sinr:ev(u[13].response,ea(u[13].response))||["Unknown"]},networkAddressing:{publicIPv4:"Loading...",cellularIPv4:es(u,"IPV4"),cellularIPv6:es(u,"IPV6"),carrierPrimaryDNS:el(et(u,ea(null===(A=u[13])||void 0===A?void 0:A.response),15,{"NR5G-SA":5,"NR5G-NSA":6,LTE:6},20)),carrierSecondaryDNS:el(et(u,ea(null===(C=u[13])||void 0===C?void 0:C.response),15,{"NR5G-SA":6,"NR5G-NSA":7,LTE:7},20)),rawCarrierPrimaryDNS:et(u,ea(null===(I=u[13])||void 0===I?void 0:I.response),15,{"NR5G-SA":5,"NR5G-NSA":6,LTE:6},20),rawCarrierSecondaryDNS:et(u,ea(null===(k=u[13])||void 0===k?void 0:k.response),15,{"NR5G-SA":6,"NR5G-NSA":7,LTE:7},20)},timeAdvance:{lteTimeAdvance:ee(null===(E=u[21])||void 0===E?void 0:E.response,1,1,2),nrTimeAdvance:ee(null===(T=u[22])||void 0===T?void 0:T.response,1,1,2)}};s(P),o(0),a(null),m()}catch(e){console.error("Error fetching home data:",e),u(e instanceof Error?e:Error(String(e)))}finally{l(!1)}},[u,m]);return(0,r.useEffect)(()=>{let e,s,t=!0;return(async()=>{if(t)try{await x()}finally{t&&l(!1)}})(),e=setInterval(()=>{x()},15e3),s=setInterval(()=>{m()},3e4),()=>{t=!1,clearInterval(e),clearInterval(s)}},[x,m]),{data:e,isLoading:t,error:n,refresh:(0,r.useCallback)(async()=>{l(!0),await x(),l(!1)},[x]),isPublicIPLoading:d}},eb=()=>{let[e,s]=(0,r.useState)("Unknown"),[t,l]=(0,r.useState)(!0),n=(0,r.useCallback)(async()=>{try{l(!0);let e=await fetch("/cgi-bin/quecmanager/home/check_net.sh"),t=await e.json();s("ACTIVE"===t.connection?"Connected":"Disconnected"),l(!1)}catch(e){console.error("Error fetching data connection state:",e),s("Unknown"),l(!1)}},[]);return(0,r.useEffect)(()=>{n();let e=setInterval(n,3e4);return()=>clearInterval(e)},[n]),{dataConnectionState:e,refresh:(0,r.useCallback)(()=>{n()},[n]),isStateLoading:t}},ey=e=>{if(0===e)return"0 Bytes";let s=Math.floor(Math.log(e)/Math.log(1024));return parseFloat((e/Math.pow(1024,s)).toFixed(2))+" "+["Bytes","KB","MB","GB","TB"][s]},eS=()=>{let[e,s]=(0,r.useState)("0 Bytes"),[t,l]=(0,r.useState)("0 Bytes"),[n,a]=(0,r.useState)(""),i=e=>{var t,r;let n=Array.isArray(e)?e[e.length-1]:e;if(!n)return;a(n.datetime);let i=n.output.replace(/\r\\n/g,"\n").trim().split("\n").filter(e=>e.trim()),o=null===(t=i.find(e=>e.includes("+QGDCNT:")))||void 0===t?void 0:t.trim(),d=null===(r=i.find(e=>e.includes("+QGDNRCNT:")))||void 0===r?void 0:r.trim();if(!o||!d){console.error("Missing required data in response");return}let[c,m]=o.replace("+QGDCNT:","").split(",").map(e=>parseInt(e.trim())),[u,x]=d.replace("+QGDNRCNT:","").split(",").map(e=>parseInt(e.trim()));s(ey((m||0)+(u||0))),l(ey((c||0)+(x||0)))},o=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/fetch_data_usage.sh"),s=await e.json();i(s)}catch(e){console.error("Error fetching traffic stats:",e)}},[]);return(0,r.useEffect)(()=>{o();let e=setInterval(o,12e3);return()=>clearInterval(e)},[o]),{bytesSent:e,bytesReceived:t,lastUpdateTime:n,refresh:(0,r.useCallback)(()=>{o()},[o])}};var eA=t(23484);let eC=()=>{let[e,s]=(0,r.useState)(!1),[t,l]=(0,r.useState)(null),n=(e,s)=>{var t,l,r,n;let a=null===(l=e.split("\n")[1])||void 0===l?void 0:null===(t=l.split(":")[1])||void 0===t?void 0:t.split(",")[1].trim(),i=null===(n=s.split("\n")[1])||void 0===n?void 0:null===(r=n.split(":")[1])||void 0===r?void 0:r.split(",")[1].trim();return"1"===a||"1"===i?"Registered":"Not Registered"},a=(e,s)=>{var t,l,r,n;return(null===(l=e.split("\n")[1])||void 0===l?void 0:null===(t=l.split(":")[1])||void 0===t?void 0:t.split(",")[2].replace(/"/g,"").trim())===(null===(n=s.split("\n")[1])||void 0===n?void 0:null===(r=n.split(":")[1])||void 0===r?void 0:r.split(",")[2].replace(/"/g,"").trim())?"Enabled":"Disabled"},i=e=>{var s,t,l,r;let n=null===(t=e.split("\n")[1])||void 0===t?void 0:null===(s=t.split(":")[1])||void 0===s?void 0:s.split(",")[1].trim(),a=null===(r=e.split("\n")[2])||void 0===r?void 0:null===(l=r.split(":")[1])||void 0===l?void 0:l.split(",")[1].trim();return n&&"1"===n||a&&"1"===a?"Connected":"Disconnected"},o=e=>{try{var s,t,l,r;let n=e.trim().split("\n").map(e=>e.trim()),a=n.find(e=>e.includes("+QRSRP:")&&e.includes("LTE")),i=n.find(e=>e.includes("+QRSRP:")&&e.includes("NR5G")),o=[];a&&(o=null==a?void 0:null===(t=a.split(":")[1])||void 0===t?void 0:null===(s=t.split(","))||void 0===s?void 0:s.slice(0,4).map(e=>e.trim()).filter(e=>!isNaN(parseInt(e))).map(e=>parseInt(e)));let d=[];if(i&&(d=null==i?void 0:null===(r=i.split(":")[1])||void 0===r?void 0:null===(l=r.split(","))||void 0===l?void 0:l.slice(0,4).map(e=>e.trim()).filter(e=>!isNaN(parseInt(e))).map(e=>parseInt(e))),o=o.filter(e=>-32768!==e),d=d.filter(e=>-32768!==e),o=o.filter(e=>-140!==e),d=d.filter(e=>-140!==e),o.length>0){let e=o.reduce((e,s)=>e+s,0)/o.length;if(d.length>0){let s=d.reduce((e,s)=>e+s,0)/d.length;return(e+s)/2<-100?"Poor":"Good"}return e<-100?"Poor":"Good"}if(d.length>0)return d.reduce((e,s)=>e+s,0)/d.length<-100?"Poor":"Good";return"N/A"}catch(e){return console.error("Error processing cell signal:",e),"N/A"}},d=e=>{let s=e.split("\n").filter(e=>e.startsWith("+QTEMP:")).map(e=>parseInt(e.split(":")[1].split(",")[1].replace(/"/g,"").trim())).filter(e=>e>=0&&e<99);return s.reduce((e,s)=>e+s,0)/s.length<50?"Normal":"High"},c=e=>{var s,t,l,r,n,a;let i=null===(t=e.split("\n")[1])||void 0===t?void 0:null===(s=t.split(":")[1])||void 0===s?void 0:s.split(",")[1].trim(),o=null===(r=e.split("\n")[2])||void 0===r?void 0:null===(l=r.split(":")[1])||void 0===l?void 0:l.split(",")[1].trim(),d=null===(a=e.split("\n")[3])||void 0===a?void 0:null===(n=a.split(":")[1])||void 0===n?void 0:n.split(",")[1].trim(),c=["0"!==i?"EMM: ".concat(i):null,"0"!==o?"ESM: ".concat(o):null,"0"!==d?"NRMM: ".concat(d):null].filter(Boolean);return c.length>0?c.join(", "):"None"},m=e=>{var s,t,l,r,n,a;let i=null===(t=e.split("\n")[1])||void 0===t?void 0:null===(s=t.split(":")[1])||void 0===s?void 0:s.split(",")[1].trim(),o=null===(r=e.split("\n")[2])||void 0===r?void 0:null===(l=r.split(":")[1])||void 0===l?void 0:l.split(",")[1].trim(),d=null===(a=e.split("\n")[3])||void 0===a?void 0:null===(n=a.split(":")[1])||void 0===n?void 0:n.split(",")[1].trim(),c={};return i&&"0"!==i&&(c.emm={code:i,description:eA.ZK[i]||"Unknown EMM cause"}),o&&"0"!==o&&(c.esm={code:o,description:eA.jq[o]||"Unknown ESM cause"}),d&&"0"!==d&&(c.nrmm={code:d,description:eA.QI[d]||"Unknown NRMM cause"}),Object.keys(c).length>0?c:null};return{isRunningDiagnostics:e,runDiagnosticsData:t,startDiagnostics:async()=>{s(!0),new Date().toISOString();try{let e=await fetch("/cgi-bin/quecmanager/at_cmd/fetch_data.sh?set=6"),s=await e.json(),t={netRegistration:n(s[0].response,s[1].response),simState:s[2].response.split("\n")[1].split(":")[1].trim(),manualAPN:a(s[3].response,s[4].response),wanIP:i(s[5].response),cellSignal:o(s[6].response),modemTemp:d(s[7].response),netReject:c(s[8].response),rejectCauses:m(s[8].response)};return l(t),t}catch(e){throw console.error("Error running diagnostics:",e),e}finally{s(!1)}}}};var eI=t(80159),ek=t(12607),eE=t(10964),eT=t(89463),eR=t(90304),eP=t(622),eM=t(8782),eD=t(20633),ez=t(99312),eU=t(7778),eL=t(25262),eG=t(91994),eB=t(71834);let eF=e=>{if(null==e)return"N/A";let s=["B","KB","MB","GB"],t=e,l=0;for(;t>=1024&&l{if(null==e)return"N/A";let s=["bps","Kbps","Mbps","Gbps"],t=8*e,l=0;for(;t>=1e3&&l{var e,s,t,i;let{toast:d}=(0,n.dj)(),[c,m]=(0,r.useState)(null),[u,x]=(0,r.useState)(null),[h,p]=(0,r.useState)(null),[g,f]=(0,r.useState)(!1),[v,j]=(0,r.useState)(!1),[N,w]=(0,r.useState)(!1),[b,y]=(0,r.useState)(0),[S,A]=(0,r.useState)(!1),[C,I]=(0,r.useState)(!1),k=(0,r.useRef)(null),E=(0,r.useRef)(null),T=(0,r.useRef)(!1),R=(0,r.useCallback)(()=>{m(null),x(null),p(null),f(!1),j(!1),w(!1),y(0),E.current=null,T.current=!1,k.current&&(clearInterval(k.current),k.current=null)},[]);(0,r.useEffect)(()=>{let e=sessionStorage.getItem("speedtestData");if(e&&m(JSON.parse(e)),g&&!v){A(!0);let e=setTimeout(()=>{A(!1)},1e4);return()=>clearTimeout(e)}},[g,v]),(0,r.useEffect)(()=>()=>{k.current&&clearInterval(k.current)},[]);let P=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/speedtest/speedtest_status.sh");if(!e.ok)throw Error("Failed to fetch status: ".concat(e.status));let s=await e.json();if("not_running"===s.status){v&&(p("Test ended unexpectedly"),j(!1)),k.current&&(clearInterval(k.current),k.current=null);return}if(s.type)try{switch(s.type){case"ping":x("ping"),s.ping&&"number"==typeof s.ping.progress&&y(s.ping.progress);break;case"download":case"upload":"ping"!==u&&x(s.type);break;case"result":if(s.download&&s.upload&&s.ping){E.current=s,m(s),T.current=!0,f(!0),j(!1),sessionStorage.setItem("speedtestData",JSON.stringify(s)),k.current&&(clearInterval(k.current),k.current=null);return}console.warn("Incomplete result data received:",s)}}catch(e){console.error("Error processing speedtest data:",e)}if(T.current){k.current&&(clearInterval(k.current),k.current=null);return}(s.type&&(s.download||s.upload||s.ping)||s.isp)&&(E.current=s,m(s))}catch(e){console.error("Error polling speedtest status:",e),v&&(p("Failed to get speedtest status"),j(!1),k.current&&(clearInterval(k.current),k.current=null))}},[u,v]),M=(0,r.useCallback)(async()=>{if(!S)try{if(R(),w(!0),j(!0),I(!0),!(await fetch("/cgi-bin/quecmanager/home/speedtest/start_speedtest.sh",{method:"GET"})).ok)throw Error("Failed to start speedtest");k.current=setInterval(P,300),w(!1)}catch(e){console.error("Speedtest start error:",e),p(e instanceof Error?"Failed to start speedtest: ".concat(e.message):"Failed to start speedtest"),w(!1),j(!1)}},[S,R,P]);return(0,l.jsxs)(a.Zp,{children:[(0,l.jsx)(a.aR,{children:(0,l.jsx)(a.ZB,{children:"Network Speedtest"})}),(0,l.jsxs)(a.Wu,{className:"flex flex-col gap-6 p-4 items-center justify-center",children:[(0,l.jsxs)(z.lG,{open:C,onOpenChange:I,children:[(0,l.jsx)(z.zM,{asChild:!0,children:(0,l.jsxs)("div",{className:"relative flex flex-col items-center justify-center",children:[(0,l.jsx)(eB.A,{color:"#5420ab",size:192,className:"-top-8 -left-8 absolute",style:{zIndex:1}}),(0,l.jsx)(B.A,{className:"size-32 z-10 text-primary cursor-pointer hover:text-primary/80 transition-colors duration-300",onClick:e=>{S||(e.preventDefault(),M())}})]})}),(0,l.jsxs)(z.Cf,{className:"sm:max-w-[800px] max-w-sm mx-auto",children:[(0,l.jsx)(z.c7,{children:(0,l.jsxs)(z.L3,{className:"flex items-center",children:[(0,l.jsx)(eE.A,{className:"mr-2"})," Network Speedtest",g&&!v&&(0,l.jsx)(o.E,{variant:"outline",className:"ml-2 hidden md:block",children:"Complete"}),v&&(0,l.jsx)(o.E,{variant:"outline",className:"ml-2 bg-primary/10",children:"Running..."})]})}),(0,l.jsx)("div",{className:"lg:max-w-full mx-auto min-w-sm py-6",children:(()=>{var e,s,t,r,n,i,o,d,m,x,p,f,j,w,y,S,A,C,I,k,E,T,P,D,z,U,L,G,B,F,_,O,q,Z,H,Q,W,$,J,K,V,Y,X,ee,es,et,el,er,en;let ea=g||c&&c.download&&c.upload&&c.ping&&!v;return ea?c&&c.download&&c.upload&&c.ping?(0,l.jsxs)("div",{className:"grid gap-4 w-full min-w-sm",children:[(0,l.jsxs)(a.Zp,{children:[(0,l.jsx)(a.aR,{children:(0,l.jsxs)(a.ZB,{className:"flex items-center",children:[(0,l.jsx)(eE.A,{className:"mr-4 text-violet-600"})," Speedtest Result"]})}),(0,l.jsx)(a.Wu,{className:"lg:py-12 py-6 min-w-sm w-full",children:(0,l.jsxs)("div",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-4 lg:gap-y-0 gap-y-8 gap-x-8",children:[(0,l.jsxs)("div",{className:"grid gap-1 place-items-center",children:[(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(eT.A,{className:"text-green-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"font-semibold",children:"Download"})]}),(0,l.jsx)("h1",{className:"text-[3rem] font-semibold text-center antialiased leading-tight",children:e_(null===(e=c.download)||void 0===e?void 0:e.bandwidth)}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eR.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Latency"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(E=null===(r=c.download)||void 0===r?void 0:null===(t=r.latency)||void 0===t?void 0:null===(s=t.iqm)||void 0===s?void 0:s.toFixed(2))&&void 0!==E?E:"N/A"," ","ms"]})]})]}),(0,l.jsxs)("div",{className:"grid gap-1.5 place-items-center",children:[(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(eP.A,{className:"text-violet-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"font-semibold",children:"Upload"})]}),(0,l.jsx)("h1",{className:"text-[3rem] font-semibold text-center antialiased leading-tight",children:e_(null===(n=c.upload)||void 0===n?void 0:n.bandwidth)}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eR.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Latency"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(T=null===(d=c.upload)||void 0===d?void 0:null===(o=d.latency)||void 0===o?void 0:null===(i=o.iqm)||void 0===i?void 0:i.toFixed(2))&&void 0!==T?T:"N/A"," ","ms"]})]})]})]})}),(0,l.jsxs)(a.wL,{className:"flex items-center justify-between mx-auto",children:[(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eM.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Ping"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(P=null===(x=c.ping)||void 0===x?void 0:null===(m=x.latency)||void 0===m?void 0:m.toFixed(2))&&void 0!==P?P:"N/A"," ms"]})]}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eD.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Jitter"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(D=null===(f=c.ping)||void 0===f?void 0:null===(p=f.jitter)||void 0===p?void 0:p.toFixed(2))&&void 0!==D?D:"N/A"," ms"]})]})]})]}),(null===(j=c.result)||void 0===j?void 0:j.url)&&(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2 mt-4 md:hidden",children:[(0,l.jsx)(ez.A,{className:"text-blue-600 size-4"}),(0,l.jsx)("a",{href:c.result.url,target:"_blank",rel:"noopener noreferrer",className:"font-medium text-blue-600 hover:underline",children:"View Full Result Online"})]}),(0,l.jsxs)(a.Zp,{className:"hidden md:block",children:[(0,l.jsx)(a.aR,{children:(0,l.jsxs)(a.ZB,{className:"flex items-center",children:[(0,l.jsx)(eU.A,{className:"mr-4 text-blue-600"})," Connection & Server Details"]})}),(0,l.jsx)(a.Wu,{children:(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"ISP:"}),(0,l.jsx)("p",{children:c.isp||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Internal IP:"}),(0,l.jsx)("p",{children:(null===(w=c.interface)||void 0===w?void 0:w.internalIp)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"External IP:"}),(0,l.jsx)("p",{children:(null===(y=c.interface)||void 0===y?void 0:y.externalIp)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Server Name:"}),(0,l.jsx)("p",{children:(null===(S=c.server)||void 0===S?void 0:S.name)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Location:"}),(0,l.jsx)("p",{children:(null===(A=c.server)||void 0===A?void 0:A.location)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Country:"}),(0,l.jsx)("p",{children:(null===(C=c.server)||void 0===C?void 0:C.country)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Server IP:"}),(0,l.jsx)("p",{children:(null===(I=c.server)||void 0===I?void 0:I.host)||"N/A"})]}),(null===(k=c.result)||void 0===k?void 0:k.url)&&(0,l.jsxs)("div",{className:"flex items-center gap-x-2 mt-4",children:[(0,l.jsx)(ez.A,{className:"text-blue-600 size-4"}),(0,l.jsx)("a",{href:c.result.url,target:"_blank",rel:"noopener noreferrer",className:"font-medium text-blue-600 hover:underline",children:"View Full Result Online"})]})]})})]})]}):(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,l.jsx)(ek.A,{className:"text-amber-500 lg:size-16 size-8"}),(0,l.jsx)("h3",{className:"text-xl font-semibold",children:"Incomplete Test Results"}),(0,l.jsxs)("p",{className:"text-sm text-gray-500 text-center",children:["The test didn't complete properly. Some data may be missing.",(0,l.jsx)("span",{className:"underline cursor-pointer ml-2 block",onClick:()=>{R(),M()},children:"Run the test again"})]})]}):h?(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,l.jsx)(ek.A,{className:"text-rose-600 lg:size-48 size-16 animate-pulse"}),(0,l.jsx)("h3",{className:"text-xl font-semibold",children:"Network Speedtest Failed"}),(0,l.jsxs)("p",{className:"text-sm text-gray-500",children:["Something went wrong while running the speedtest.",(0,l.jsx)("span",{className:"underline cursor-pointer ml-2",onClick:()=>{R(),M()},children:"Please try again."})]})]}):N||v&&!c?(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,l.jsx)(eL.A,{className:"text-primary lg:size-48 size-16 animate-pulse"}),(0,l.jsx)("h3",{className:"md:text-xl text-lg font-semibold",children:"Initiating Network Speedtest"}),(0,l.jsx)("p",{className:"text-sm text-gray-500 text-center",children:"Locating and establishing a connection to a server. Please wait..."})]}):"ping"===u?(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-6 transition-all duration-500 ease-in-out",children:[(0,l.jsxs)("div",{className:"relative",children:[(0,l.jsx)(eM.A,{className:"text-blue-500 size-16 animate-pulse drop-shadow-sm"}),(0,l.jsx)("div",{className:"absolute -inset-2 bg-blue-500/10 rounded-full animate-ping"})]}),(0,l.jsxs)("div",{className:"text-center space-y-2",children:[(0,l.jsx)("h3",{className:"text-xl font-semibold text-blue-600 transition-colors duration-300",children:"Testing Ping Latency"}),(0,l.jsx)("p",{className:"text-sm text-gray-500",children:"Measuring network responsiveness..."})]}),(0,l.jsxs)("div",{className:"w-full max-w-md space-y-2",children:[(0,l.jsx)("div",{className:"w-full bg-gray-200 rounded-full h-3 overflow-hidden",children:(0,l.jsx)("div",{className:"bg-gradient-to-r from-blue-400 to-blue-600 h-3 rounded-full transition-all duration-300 ease-out",style:{width:"".concat(100*(b||0),"%")}})}),(0,l.jsx)("div",{className:"text-center",children:(0,l.jsxs)("span",{className:"text-sm text-gray-600",children:[Math.round(100*(b||0)),"% complete"]})})]}),(null==c?void 0:c.ping)&&(0,l.jsxs)("div",{className:"text-center space-y-2 animate-in fade-in duration-500",children:[(0,l.jsxs)("div",{className:"text-3xl font-bold text-blue-600 tabular-nums transition-all duration-200",children:[c.ping.latency.toFixed(1)," ms"]}),c.ping.jitter&&(0,l.jsxs)("div",{className:"text-sm text-gray-500",children:["Jitter: ",c.ping.jitter.toFixed(1)," ms"]})]}),(0,l.jsx)("div",{className:"text-center opacity-60 transition-opacity duration-500",children:(0,l.jsxs)("div",{className:"flex items-center justify-center space-x-2 text-gray-400",children:[(0,l.jsx)(eT.A,{className:"size-4"}),(0,l.jsx)("span",{className:"text-xs",children:"Download test coming next..."})]})})]}):"download"===u?(0,l.jsxs)("div",{className:"space-y-6 transition-all duration-500 ease-in-out",children:[(null==c?void 0:c.ping)&&(0,l.jsx)("div",{className:"bg-blue-50 rounded-lg p-3 transition-all duration-500",children:(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(eM.A,{className:"text-blue-500 size-4"}),(0,l.jsx)("span",{className:"text-sm font-medium text-blue-700",children:"Ping Complete"})]}),(0,l.jsxs)("div",{className:"text-sm font-bold text-blue-600 tabular-nums",children:[c.ping.latency.toFixed(1)," ms"]})]})}),(0,l.jsxs)("div",{className:"text-center space-y-4",children:[(0,l.jsxs)("div",{className:"relative flex items-center justify-center",children:[(0,l.jsx)(eT.A,{className:"text-green-500 size-16 animate-pulse drop-shadow-sm"}),(0,l.jsx)("div",{className:"absolute size-24 bg-green-500/10 rounded-full animate-ping -top-4 "})]}),(0,l.jsx)("div",{className:"space-y-2",children:(0,l.jsx)("h3",{className:"text-xl font-semibold text-green-600 transition-colors duration-300",children:"Testing Download Speed"})}),(0,l.jsxs)("div",{className:"space-y-2",children:[(0,l.jsx)("div",{className:"text-4xl lg:text-5xl font-bold text-green-600 tabular-nums transition-all duration-200 tracking-tight",children:(null==c?void 0:null===(z=c.download)||void 0===z?void 0:z.bandwidth)?e_(c.download.bandwidth):"0 Mbps"}),(null==c?void 0:c.download)&&(0,l.jsxs)("div",{className:"space-y-1 text-sm text-gray-500",children:[(0,l.jsxs)("div",{className:"tabular-nums",children:[eF(c.download.bytes)," transferred"]}),c.download.elapsed&&(0,l.jsxs)("div",{className:"tabular-nums",children:[(c.download.elapsed/1e3).toFixed(1),"s elapsed"]})]})]}),(0,l.jsx)("div",{className:"text-center opacity-60 transition-opacity duration-500",children:(0,l.jsxs)("div",{className:"flex items-center justify-center space-x-2 text-gray-400",children:[(0,l.jsx)(eP.A,{className:"size-4"}),(0,l.jsx)("span",{className:"text-xs",children:"Upload test coming next..."})]})})]})]}):"upload"===u?(0,l.jsx)("div",{className:"space-y-6 transition-all duration-500 ease-in-out",children:(0,l.jsxs)("div",{className:"text-center space-y-4",children:[(0,l.jsxs)("div",{className:"relative flex items-center justify-center",children:[(0,l.jsx)(eP.A,{className:"text-violet-500 size-16 animate-pulse drop-shadow-sm"}),(0,l.jsx)("div",{className:"absolute size-24 bg-violet-500/10 rounded-full animate-ping -top-4 "})]}),(0,l.jsxs)("div",{className:"space-y-2",children:[(0,l.jsx)("h3",{className:"text-xl font-semibold text-violet-600 transition-colors duration-300",children:"Testing Upload Speed"}),(0,l.jsx)("p",{className:"text-sm text-gray-500",children:"Uploading test data..."})]}),(0,l.jsxs)("div",{className:"space-y-2",children:[(0,l.jsx)("div",{className:"text-4xl lg:text-5xl font-bold text-violet-600 tabular-nums transition-all duration-200 tracking-tight",children:(null==c?void 0:null===(U=c.upload)||void 0===U?void 0:U.bandwidth)?e_(c.upload.bandwidth):"0 Mbps"}),(null==c?void 0:c.upload)&&(0,l.jsxs)("div",{className:"space-y-1 text-sm text-gray-500",children:[(0,l.jsxs)("div",{className:"tabular-nums",children:[eF(c.upload.bytes)," transferred"]}),c.upload.elapsed&&(0,l.jsxs)("div",{className:"tabular-nums",children:[(c.upload.elapsed/1e3).toFixed(1),"s elapsed"]})]})]})]})}):ea?c&&c.download&&c.upload&&c.ping?(0,l.jsxs)("div",{className:"grid gap-4 w-full min-w-sm",children:[(0,l.jsxs)(a.Zp,{children:[(0,l.jsx)(a.aR,{children:(0,l.jsxs)(a.ZB,{className:"flex items-center",children:[(0,l.jsx)(eE.A,{className:"mr-4 text-violet-600"})," Speedtest Result"]})}),(0,l.jsx)(a.Wu,{className:"lg:py-12 py-6 min-w-sm w-full",children:(0,l.jsxs)("div",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-4 lg:gap-y-0 gap-y-8 gap-x-8",children:[(0,l.jsxs)("div",{className:"grid gap-1 place-items-center",children:[(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(eT.A,{className:"text-green-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"font-semibold",children:"Download"})]}),(0,l.jsx)("h1",{className:"text-[3rem] font-semibold text-center antialiased leading-tight",children:e_(null===(L=c.download)||void 0===L?void 0:L.bandwidth)}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eR.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Latency"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(et=null===(F=c.download)||void 0===F?void 0:null===(B=F.latency)||void 0===B?void 0:null===(G=B.iqm)||void 0===G?void 0:G.toFixed(2))&&void 0!==et?et:"N/A"," ","ms"]})]})]}),(0,l.jsxs)("div",{className:"grid gap-1.5 place-items-center",children:[(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(eP.A,{className:"text-violet-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"font-semibold",children:"Upload"})]}),(0,l.jsx)("h1",{className:"text-[3rem] font-semibold text-center antialiased leading-tight",children:e_(null===(_=c.upload)||void 0===_?void 0:_.bandwidth)}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eR.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Latency"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(el=null===(Z=c.upload)||void 0===Z?void 0:null===(q=Z.latency)||void 0===q?void 0:null===(O=q.iqm)||void 0===O?void 0:O.toFixed(2))&&void 0!==el?el:"N/A"," ","ms"]})]})]})]})}),(0,l.jsxs)(a.wL,{className:"flex items-center justify-between mx-auto",children:[(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eM.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Ping"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(er=null===(Q=c.ping)||void 0===Q?void 0:null===(H=Q.latency)||void 0===H?void 0:H.toFixed(2))&&void 0!==er?er:"N/A"," ms"]})]}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eD.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Jitter"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(en=null===($=c.ping)||void 0===$?void 0:null===(W=$.jitter)||void 0===W?void 0:W.toFixed(2))&&void 0!==en?en:"N/A"," ms"]})]})]})]}),(0,l.jsxs)(a.Zp,{children:[(0,l.jsx)(a.aR,{children:(0,l.jsxs)(a.ZB,{className:"flex items-center",children:[(0,l.jsx)(eU.A,{className:"mr-4 text-blue-600"})," Connection & Server Details"]})}),(0,l.jsx)(a.Wu,{children:(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"ISP:"}),(0,l.jsx)("p",{children:c.isp||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Internal IP:"}),(0,l.jsx)("p",{children:(null===(J=c.interface)||void 0===J?void 0:J.internalIp)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"External IP:"}),(0,l.jsx)("p",{children:(null===(K=c.interface)||void 0===K?void 0:K.externalIp)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Server Name:"}),(0,l.jsx)("p",{children:(null===(V=c.server)||void 0===V?void 0:V.name)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Location:"}),(0,l.jsx)("p",{children:(null===(Y=c.server)||void 0===Y?void 0:Y.location)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Country:"}),(0,l.jsx)("p",{children:(null===(X=c.server)||void 0===X?void 0:X.country)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Server IP:"}),(0,l.jsx)("p",{children:(null===(ee=c.server)||void 0===ee?void 0:ee.host)||"N/A"})]}),(null===(es=c.result)||void 0===es?void 0:es.url)&&(0,l.jsxs)("div",{className:"flex items-center gap-x-2 mt-4",children:[(0,l.jsx)(ez.A,{className:"text-blue-600 size-4"}),(0,l.jsx)("a",{href:c.result.url,target:"_blank",rel:"noopener noreferrer",className:"font-medium text-blue-600 hover:underline",children:"View Full Result Online"})]})]})})]})]}):(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,l.jsx)(ek.A,{className:"text-amber-500 lg:size-16 size-8"}),(0,l.jsx)("h3",{className:"text-xl font-semibold",children:"Incomplete Test Results"}),(0,l.jsxs)("p",{className:"text-sm text-gray-500 text-center",children:["The test didn't complete properly. Some data may be missing.",(0,l.jsx)("span",{className:"underline cursor-pointer ml-2 block",onClick:()=>{R(),M()},children:"Run the test again"})]})]}):(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,l.jsx)(eG.A,{className:"text-primary size-8 animate-spin"}),(0,l.jsx)("p",{className:"text-sm text-gray-500",children:"Please wait while the test is running..."})]})})()}),(0,l.jsx)(z.Es,{className:"flex justify-between gap-4",children:g?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{children:(0,l.jsxs)(D.$,{onClick:()=>{S?d({title:"Please wait",description:"Cooldown period active"}):(R(),M())},variant:"outline",disabled:S,children:[(0,l.jsx)(eG.A,{className:"h-4 w-4"}),"Run Again"]})}),(0,l.jsx)(D.$,{onClick:()=>I(!1),children:"Close"})]}):(0,l.jsx)(l.Fragment,{children:v?(0,l.jsx)(D.$,{onClick:()=>{R(),I(!1)},variant:"destructive",children:"Cancel Test"}):(0,l.jsx)(D.$,{onClick:()=>I(!1),children:"Close"})})})]})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)(a.BT,{className:"relative flex flex-col items-center justify-center",children:S?"Please wait 10 seconds before starting another test.":v?"Test in progress...":"Run a speed test to check your internet connection."}),c?(0,l.jsx)("div",{className:"mt-4",children:(0,l.jsx)("div",{className:"relative flex flex-col items-center justify-center",children:(0,l.jsxs)("div",{className:"grid grid-cols-3 grid-flow-row",children:[(0,l.jsxs)("div",{className:"flex items-center mx-2",children:[(0,l.jsx)(eT.A,{className:"text-green-500 size-4 mr-1"}),(null==c?void 0:c.download)?"".concat(e_(null==c?void 0:null===(e=c.download)||void 0===e?void 0:e.bandwidth)):"N/A"]}),(0,l.jsxs)("div",{className:"flex items-center mx-2",children:[(0,l.jsx)(eP.A,{className:"text-violet-500 size-4 mr-1"}),(null==c?void 0:c.upload)?"".concat(e_(null==c?void 0:null===(s=c.upload)||void 0===s?void 0:s.bandwidth)):"N/A"]}),(0,l.jsxs)("div",{className:"flex items-center mx-2",children:[(0,l.jsx)(eM.A,{className:"text-gray-600 size-4 mr-1"}),(null==c?void 0:c.ping)?"".concat(null==c?void 0:null===(i=c.ping)||void 0===i?void 0:null===(t=i.latency)||void 0===t?void 0:t.toFixed(2)," ms"):"N/A"]})]})})}):v?(0,l.jsx)("p",{className:"text-sm text-gray-500 text-center",children:'"Test in progress..."'}):(0,l.jsx)("p",{className:"text-sm text-gray-500 text-center",children:'"Previous data not available."'})]})]})]})};var eq=t(88926);let eZ=e=>{let{data:s,isLoading:t,isPublicIPLoading:r=!1,hideSensitiveData:n}=e;return(0,l.jsx)(a.Zp,{className:"md:py-6 md:px-6 py-6 px-4 ",children:(0,l.jsxs)("div",{className:"grid lg:grid-cols-5 grid-cols-1 grid-flow-row gap-4",children:[(0,l.jsxs)("div",{className:"grid place-items-center gap-1.5",children:[(0,l.jsx)("h2",{className:"font-semibold",children:"Public IPv4 Address"}),t||r?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):n?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{children:null==s?void 0:s.networkAddressing.publicIPv4})]}),(0,l.jsxs)("div",{className:"grid place-items-center gap-1.5",children:[(0,l.jsx)("h2",{className:"font-semibold",children:"Cellular IPv4 Address"}),(0,l.jsx)("div",{className:"flex items-center gap-x-2",children:t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):n?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{children:null==s?void 0:s.networkAddressing.cellularIPv4})})]}),(0,l.jsxs)("div",{className:"grid place-items-center gap-1.5",children:[(0,l.jsx)("h2",{className:"font-semibold",children:"Cellular IPv6 Address"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):n?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{children:null==s?void 0:s.networkAddressing.cellularIPv6})]}),(0,l.jsxs)("div",{className:"grid place-items-center gap-1.5",children:[(0,l.jsx)("h2",{className:"font-semibold",children:"Carrier Primary DNS"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{children:null==s?void 0:s.networkAddressing.carrierPrimaryDNS}),(0,l.jsx)(g.ZI,{children:(0,l.jsx)("p",{children:null==s?void 0:s.networkAddressing.rawCarrierPrimaryDNS})})]})})]}),(0,l.jsxs)("div",{className:"grid place-items-center gap-1.5",children:[(0,l.jsx)("h2",{className:"font-semibold",children:"Carrier Secondary DNS"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{children:null==s?void 0:s.networkAddressing.carrierSecondaryDNS}),(0,l.jsx)(g.ZI,{children:(0,l.jsx)("p",{children:null==s?void 0:s.networkAddressing.rawCarrierSecondaryDNS})})]})})]})]})})};var eH=t(99015),eQ=t(13624);let eW=e=>{let{lteTimeAdvance:s="0",nrTimeAdvance:t="0",isLoading:n=!1,networkType:o="Unknown"}=e,[d,c]=(0,r.useState)("km"),[m,u]=(0,r.useState)(!0);(0,r.useEffect)(()=>{(async()=>{try{u(!0);let e=await fetch("/cgi-bin/quecmanager/settings/measurement_units.sh"),s=await e.json();"success"===s.status&&s.data&&c(s.data.unit)}catch(e){console.error("Error fetching measurement unit:",e),c("km")}finally{u(!1)}})()},[]);let x=s&&"Unknown"!==s&&"-"!==s&&parseInt(s,10)||0,h=t&&"Unknown"!==t&&"-"!==t&&parseInt(t,10)||0,p=x>0?(e=>((e<0||e>1282)&&(console.warn("Invalid LTE TA value: ".concat(e,", using 0 instead")),e=0),1/3072e4*(16*e)*3e8/2/1e3))(x):0,f=h>0?(e=>(e<0&&(console.warn("Invalid negative NTA value: ".concat(e,", using 0 instead")),e=0),3e8*e*(1/196608e4)/2/1e3))(h):0,v=e=>.621371*e,j=e=>{if(0===e)return"-";if("mi"===d){let s=v(e);if(s<1){let e=5280*s;return"".concat(e.toFixed(0)," ft")}return"".concat(s.toFixed(2)," mi")}return e<1?"".concat((1e3*e).toFixed(0)," m"):"".concat(e.toFixed(2)," km")};return(0,l.jsxs)(a.Zp,{className:"overflow-hidden",children:[(0,l.jsx)(a.aR,{children:(0,l.jsx)(a.ZB,{children:"Distance to Cell Tower"})}),(0,l.jsx)(a.Wu,{children:n||m?(0,l.jsxs)("div",{className:"space-y-3",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(eH.A,{className:"h-4 w-4 mr-1.5"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:"LTE"})]}),(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(i.E,{className:"h-4 w-16 mr-2"}),(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{asChild:!0,children:(0,l.jsx)(eQ.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,l.jsx)(g.ZI,{children:(0,l.jsx)(i.E,{className:"h-4 w-16 mr-2"})})]})})]})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(eH.A,{className:"h-4 w-4 mr-1.5"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:"NR5G"})]}),(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(i.E,{className:"h-4 w-16 mr-2"}),(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{asChild:!0,children:(0,l.jsx)(eQ.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,l.jsx)(g.ZI,{children:(0,l.jsx)(i.E,{className:"h-4 w-16 mr-2"})})]})})]})]})]}):(0,l.jsxs)("div",{className:"space-y-3",children:[x>0&&(0,l.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(eH.A,{className:"h-4 w-4 mr-1.5"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:"LTE"})]}),(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("p",{className:"mr-2",children:j(p)}),(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{asChild:!0,children:(0,l.jsx)(eQ.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,l.jsx)(g.ZI,{children:(0,l.jsxs)("p",{className:"max-w-xs text-xs mr-2",children:["LTE TA ",x]})})]})})]})]}),h>0&&(0,l.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(eH.A,{className:"h-4 w-4 mr-1.5"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:"NR5G"})]}),(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("p",{className:"mr-2",children:j(f)}),(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{asChild:!0,children:(0,l.jsx)(eQ.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,l.jsx)(g.ZI,{children:(0,l.jsxs)("p",{className:"max-w-xs text-xs mr-2",children:["NTA ",h]})})]})})]})]}),!x&&!h&&(0,l.jsx)("div",{className:"h-16 flex items-center justify-center",children:(0,l.jsx)("p",{className:"text-muted-foreground text-sm",children:"No timing advance data available"})})]})})]})},e$=()=>{var e,s,t;let{toast:a}=(0,n.dj)(),[i,o]=(0,r.useState)(!1),[c,m]=(0,r.useState)(!1),{data:u,isLoading:x,refresh:g,isPublicIPLoading:v}=ew(),{dataConnectionState:j,isStateLoading:N,refresh:w}=eb(),{isRunningDiagnostics:b,runDiagnosticsData:y,startDiagnostics:S}=eC(),{bytesSent:A,bytesReceived:I,refresh:k}=eS(),E=async()=>{try{var e,s;let t=await (0,eq.a)("AT+QUIMSLOT?"),l=null===(e=t.response)||void 0===e?void 0:e.raw_output.split("\n")[1].split(":")[1].trim(),r=await (0,eq.a)("1"===l?"AT+QUIMSLOT=2":"AT+QUIMSLOT=1");if("error"===r.status||(null===(s=r.response)||void 0===s?void 0:s.status)==="error")throw Error("Failed to change SIM slot");a({title:"SIM Slot Changed",description:"The SIM slot has been changed successfully"}),setTimeout(async()=>{await (0,eq.a)("AT+COPS=2"),setTimeout(async()=>{let e=await (0,eq.a)("AT+COPS=0");if("error"===e.status)throw Error("Failed to reconnect to the network");a({title:"Network Reconnected",description:"The device has been reconnected to the network"})},2e3)},3e3),setTimeout(R,3e3)}catch(e){console.error("Error changing SIM slot:",e),a({variant:"destructive",title:"SIM Slot Change Failed",description:e instanceof Error?e.message:"Failed to change the SIM slot"})}},R=(0,r.useCallback)(async()=>{try{await Promise.all([g(),w(),k()])}catch(e){console.error("Error refreshing data:",e),a({variant:"destructive",title:"Refresh Failed",description:"Failed to refresh the data"})}},[g,w,k]),[P,O]=(0,r.useState)([]),Z=async()=>{try{await S()}catch(e){a({variant:"destructive",title:"Diagnostics Failed",description:"Failed to run diagnostics"})}};return(0,r.useEffect)(()=>{if(u&&u.currentBands){var e;let s=null===(e=u.currentBands.id)||void 0===e?void 0:e.map((e,s)=>{var t,l,r,n,a,i,o;return{id:e,bandNumber:(null===(t=u.currentBands.bandNumber)||void 0===t?void 0:t[s])||"N/A",earfcn:(null===(l=u.currentBands.earfcn)||void 0===l?void 0:l[s])||"N/A",bandwidth:(null===(r=u.currentBands.bandwidth)||void 0===r?void 0:r[s])||"N/A",pci:(null===(n=u.currentBands.pci)||void 0===n?void 0:n[s])||"N/A",rsrp:(null===(a=u.currentBands.rsrp)||void 0===a?void 0:a[s])||"N/A",rsrq:(null===(i=u.currentBands.rsrq)||void 0===i?void 0:i[s])||"N/A",sinr:(null===(o=u.currentBands.sinr)||void 0===o?void 0:o[s])||"N/A"}});s&&O(s)}},[u]),(0,r.useEffect)(()=>{var e,s;(null==u?void 0:null===(s=u.simCard)||void 0===s?void 0:null===(e=s.state)||void 0===e?void 0:e.toLowerCase().includes("failed"))&&a({title:"SMS_Tool failed to acquire token",description:"The system will attempt to recover automatically. If this issue persists, please logout and log back in or restart the device.",variant:"destructive"}),x||(null==u?void 0:u.simCard.state)!=="Not Inserted"||o(!0)},[u,x]),(0,l.jsxs)("div",{className:"grid xl:gap-y-10 gap-y-8 gap-4",children:[(0,l.jsxs)("div",{className:"grid gap-4",children:[(0,l.jsxs)("div",{className:"flex flex-row justify-between items-center",children:[(0,l.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,l.jsx)("h1",{className:"xl:text-3xl text-base font-bold",children:"Connection Summary"}),(0,l.jsx)(D.$,{variant:"ghost",size:"icon",className:"text-sm",onClick:R,children:(0,l.jsx)(U.A,{className:"xl:size-6 size-5 text-blue-500",strokeWidth:3})})]}),(0,l.jsxs)("div",{className:"flex flex-row items-center gap-x-2",children:[(0,l.jsxs)(D.$,{onClick:()=>m(e=>!e),children:[c?(0,l.jsx)(L.A,{className:"xl:size-6 size-5"}):(0,l.jsx)(G.A,{className:"xl:size-6 size-5"}),(0,l.jsxs)("span",{className:"hidden md:block",children:[c?"Show":"Hide"," Sensitive Data"]})]}),(null==u?void 0:u.simCard.state)==="Not Inserted"&&(0,l.jsxs)(z.lG,{open:i,onOpenChange:o,children:[(0,l.jsx)(z.zM,{asChild:!0,children:(0,l.jsxs)(D.$,{variant:"destructive",children:[(0,l.jsx)(eI.fU4,{className:"xl:size-6 size-5"}),(0,l.jsx)("span",{className:"hidden md:block",children:"No SIM"})]})}),(0,l.jsxs)(z.Cf,{className:"max-w-xs md:max-w-lg",children:[(0,l.jsx)(z.c7,{children:(0,l.jsx)(z.L3,{children:"No SIM Detected"})}),(0,l.jsxs)("div",{className:"grid gap-4 py-4",children:[(0,l.jsx)("div",{className:"flex items-center justify-center",children:(0,l.jsx)(eI.fU4,{className:"xl:size-14 md:size-12 size-6 text-red-500"})}),(0,l.jsx)("p",{className:"text-center",children:"There is no SIM card detected in the device. Please insert a SIM card or change the SIM card slot to use the device."})]}),(0,l.jsxs)("div",{className:"flex justify-end mt-4",children:[(0,l.jsx)(D.$,{onClick:E,className:"mr-2",children:"Change SIM Slot"}),(0,l.jsx)(z.HM,{asChild:!0,children:(0,l.jsx)(D.$,{variant:"secondary",onClick:()=>o(!1),children:"Close"})})]})]})]}),(0,l.jsxs)(z.lG,{children:[(0,l.jsx)(z.zM,{asChild:!0,children:(0,l.jsxs)(D.$,{onClick:Z,children:[(0,l.jsx)(B.A,{className:"xl:size-6 size-5"}),(0,l.jsx)("span",{className:"hidden md:block",children:"Run Diagnostics"})]})}),!b&&(0,l.jsxs)(z.Cf,{className:"max-w-xs md:max-w-lg",children:[(0,l.jsx)(z.c7,{children:(0,l.jsx)(z.L3,{children:"Diagnostics Result"})}),(0,l.jsx)(z.rr,{children:"This is the result of the diagnostic test ran on your device."}),(0,l.jsxs)("div",{className:"grid gap-4 py-4",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"Network Registration "}),(null==y?void 0:y.netRegistration)==="Registered"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"U-SIM State"}),(null==y?void 0:y.simState)==="READY"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"Manual APN"}),(null==y?void 0:y.manualAPN)==="Enabled"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"WAN IP"}),(null==y?void 0:y.wanIP)==="Connected"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"Cellular Signal"}),(null==y?void 0:y.cellSignal)==="Good"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"Modem Temperature"}),(null==y?void 0:y.modemTemp)==="Normal"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between mt-6",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"Network Reject Causes"}),(0,l.jsx)("div",{className:"flex flex-col items-end space-y-1",children:(null==y?void 0:y.rejectCauses)?(0,l.jsxs)(l.Fragment,{children:[y.rejectCauses.emm&&(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(_.A,{className:"text-red-500 w-4 h-4"}),(0,l.jsxs)("span",{className:"text-sm",children:["EMM (",y.rejectCauses.emm.code,"):"," ",y.rejectCauses.emm.description]})]}),y.rejectCauses.esm&&(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(_.A,{className:"text-red-500 w-4 h-4"}),(0,l.jsxs)("span",{className:"text-sm",children:["ESM (",y.rejectCauses.esm.code,"):"," ",y.rejectCauses.esm.description]})]}),y.rejectCauses.nrmm&&(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(_.A,{className:"text-red-500 w-4 h-4"}),(0,l.jsxs)("span",{className:"text-sm",children:["NRMM (",y.rejectCauses.nrmm.code,"):"," ",y.rejectCauses.nrmm.description]})]})]}):(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(F.A,{className:"text-green-500"}),(0,l.jsx)("span",{children:"None"})]})})]})]})]}),b&&(0,l.jsxs)(z.Cf,{className:"max-w-xs md:max-w-lg",children:[(0,l.jsx)(z.c7,{children:(0,l.jsx)(z.L3,{children:"Running Diagnostics"})}),(0,l.jsx)("div",{className:"flex items-center justify-center my-4",children:(0,l.jsx)(q(),{color:"#6D28D9"})}),(0,l.jsx)(z.rr,{className:"text-center",children:"Please wait while we run diagnostics on your device."})]})]})]})]}),(0,l.jsxs)("div",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-4",children:[(0,l.jsx)("div",{children:(0,l.jsx)(C,{})}),(0,l.jsxs)("div",{className:"grid gap-2 lg:grid-cols-2 grid-cols-1 grid-flow-row",children:[(0,l.jsx)(eW,{lteTimeAdvance:null==u?void 0:null===(e=u.timeAdvance)||void 0===e?void 0:e.lteTimeAdvance,nrTimeAdvance:null==u?void 0:null===(s=u.timeAdvance)||void 0===s?void 0:s.nrTimeAdvance,isLoading:x,networkType:null==u?void 0:null===(t=u.connection)||void 0===t?void 0:t.networkType}),(0,l.jsx)(T,{}),(0,l.jsx)(eO,{}),(0,l.jsx)(M,{})]})]}),(0,l.jsxs)("div",{className:"grid 2xl:grid-cols-4 lg:grid-cols-2 grid-cols-1 gap-4",children:[(0,l.jsx)(d,{data:u,isLoading:x,hideSensitiveData:c}),(0,l.jsx)(h,{data:u,isLoading:x,dataConnectionState:j,connectionStateLoading:N}),(0,l.jsx)(p,{data:u,isLoading:x,bytesSent:A,bytesReceived:I}),(0,l.jsx)(f,{data:u,isLoading:x})]})]}),(0,l.jsxs)("div",{className:"grid gap-4 w-full",children:[(0,l.jsx)("h1",{className:"xl:text-3xl text-base font-bold",children:"Active Addresses"}),(0,l.jsx)("div",{children:(0,l.jsx)(eZ,{data:u,isLoading:x,isPublicIPLoading:v,hideSensitiveData:c})})]}),(0,l.jsxs)("div",{className:"grid gap-4 w-full",children:[(0,l.jsx)("h1",{className:"xl:text-3xl text-base font-bold",children:"Current Active Bands"}),(0,l.jsx)("div",{children:(0,l.jsx)(X,{bands:P,isLoading:x})})]})]})}},45934:(e,s,t)=>{"use strict";t.d(s,{E:()=>i});var l=t(20475);t(20107);var r=t(29395),n=t(22250);let a=(0,r.F)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function i(e){let{className:s,variant:t,...r}=e;return(0,l.jsx)("div",{className:(0,n.cn)(a({variant:t}),s),...r})}},42541:(e,s,t)=>{"use strict";t.d(s,{$:()=>d,r:()=>o});var l=t(20475),r=t(20107),n=t(61837),a=t(29395),i=t(22250);let o=(0,a.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),d=r.forwardRef((e,s)=>{let{className:t,variant:r,size:a,asChild:d=!1,...c}=e,m=d?n.DX:"button";return(0,l.jsx)(m,{className:(0,i.cn)(o({variant:r,size:a,className:t})),ref:s,...c})});d.displayName="Button"},72167:(e,s,t)=>{"use strict";t.d(s,{BT:()=>d,Wu:()=>c,ZB:()=>o,Zp:()=>a,aR:()=>i,wL:()=>m});var l=t(20475),r=t(20107),n=t(22250);let a=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("div",{ref:s,className:(0,n.cn)("rounded-xl border bg-card text-card-foreground shadow",t),...r})});a.displayName="Card";let i=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("div",{ref:s,className:(0,n.cn)("flex flex-col space-y-1.5 p-6",t),...r})});i.displayName="CardHeader";let o=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("h3",{ref:s,className:(0,n.cn)("font-semibold leading-none tracking-tight",t),...r})});o.displayName="CardTitle";let d=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("p",{ref:s,className:(0,n.cn)("text-sm text-muted-foreground",t),...r})});d.displayName="CardDescription";let c=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("div",{ref:s,className:(0,n.cn)("p-6 pt-0",t),...r})});c.displayName="CardContent";let m=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("div",{ref:s,className:(0,n.cn)("flex items-center p-6 pt-0",t),...r})});m.displayName="CardFooter"},1307:(e,s,t)=>{"use strict";t.d(s,{II:()=>h,Nt:()=>p,at:()=>u});var l=t(20475),r=t(20107),n=t(81155),a=t(58601),i=t(58736),o=t(22250);let d={light:"",dark:".dark"},c=r.createContext(null);function m(){let e=r.useContext(c);if(!e)throw Error("useChart must be used within a ");return e}let u=r.forwardRef((e,s)=>{let{id:t,className:a,children:i,config:d,...m}=e,u=r.useId(),h="chart-".concat(t||u.replace(/:/g,""));return(0,l.jsx)(c.Provider,{value:{config:d},children:(0,l.jsxs)("div",{"data-chart":h,ref:s,className:(0,o.cn)("flex aspect-video justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-none [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-sector]:outline-none [&_.recharts-surface]:outline-none",a),...m,children:[(0,l.jsx)(x,{id:h,config:d}),(0,l.jsx)(n.u,{children:i})]})})});u.displayName="Chart";let x=e=>{let{id:s,config:t}=e,r=Object.entries(t).filter(e=>{let[s,t]=e;return t.theme||t.color});return r.length?(0,l.jsx)("style",{dangerouslySetInnerHTML:{__html:Object.entries(d).map(e=>{let[t,l]=e;return"\n".concat(l," [data-chart=").concat(s,"] {\n").concat(r.map(e=>{var s;let[l,r]=e,n=(null===(s=r.theme)||void 0===s?void 0:s[t])||r.color;return n?" --color-".concat(l,": ").concat(n,";"):null}).join("\n"),"\n}\n")}).join("\n")}}):null},h=a.m,p=r.forwardRef((e,s)=>{let{active:t,payload:n,className:a,indicator:i="dot",hideLabel:d=!1,hideIndicator:c=!1,label:u,labelFormatter:x,labelClassName:h,formatter:p,color:f,nameKey:v,labelKey:j}=e,{config:N}=m(),w=r.useMemo(()=>{var e;if(d||!(null==n?void 0:n.length))return null;let[s]=n,t="".concat(j||s.dataKey||s.name||"value"),r=g(N,s,t),a=j||"string"!=typeof u?null==r?void 0:r.label:(null===(e=N[u])||void 0===e?void 0:e.label)||u;return x?(0,l.jsx)("div",{className:(0,o.cn)("font-medium",h),children:x(a,n)}):a?(0,l.jsx)("div",{className:(0,o.cn)("font-medium",h),children:a}):null},[u,x,n,d,h,N,j]);if(!t||!(null==n?void 0:n.length))return null;let b=1===n.length&&"dot"!==i;return(0,l.jsxs)("div",{ref:s,className:(0,o.cn)("grid min-w-[8rem] items-start gap-1.5 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl",a),children:[b?null:w,(0,l.jsx)("div",{className:"grid gap-1.5",children:n.map((e,s)=>{let t="".concat(v||e.name||e.dataKey||"value"),r=g(N,e,t),n=f||e.payload.fill||e.color;return(0,l.jsx)("div",{className:(0,o.cn)("flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground","dot"===i&&"items-center"),children:p&&(null==e?void 0:e.value)!==void 0&&e.name?p(e.value,e.name,e,s,e.payload):(0,l.jsxs)(l.Fragment,{children:[(null==r?void 0:r.icon)?(0,l.jsx)(r.icon,{}):!c&&(0,l.jsx)("div",{className:(0,o.cn)("shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]",{"h-2.5 w-2.5":"dot"===i,"w-1":"line"===i,"w-0 border-[1.5px] border-dashed bg-transparent":"dashed"===i,"my-0.5":b&&"dashed"===i}),style:{"--color-bg":n,"--color-border":n}}),(0,l.jsxs)("div",{className:(0,o.cn)("flex flex-1 justify-between leading-none",b?"items-end":"items-center"),children:[(0,l.jsxs)("div",{className:"grid gap-1.5",children:[b?w:null,(0,l.jsx)("span",{className:"text-muted-foreground",children:(null==r?void 0:r.label)||e.name})]}),e.value&&(0,l.jsx)("span",{className:"font-mono font-medium tabular-nums text-foreground",children:e.value.toLocaleString()})]})]})},e.dataKey)})})]})});function g(e,s,t){if("object"!=typeof s||null===s)return;let l="payload"in s&&"object"==typeof s.payload&&null!==s.payload?s.payload:void 0,r=t;return t in s&&"string"==typeof s[t]?r=s[t]:l&&t in l&&"string"==typeof l[t]&&(r=l[t]),r in e?e[r]:e[t]}p.displayName="ChartTooltip",i.s,r.forwardRef((e,s)=>{let{className:t,hideIcon:r=!1,payload:n,verticalAlign:a="bottom",nameKey:i}=e,{config:d}=m();return(null==n?void 0:n.length)?(0,l.jsx)("div",{ref:s,className:(0,o.cn)("flex items-center justify-center gap-4","top"===a?"pb-3":"pt-3",t),children:n.map(e=>{let s="".concat(i||e.dataKey||"value"),t=g(d,e,s);return(0,l.jsxs)("div",{className:(0,o.cn)("flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground"),children:[(null==t?void 0:t.icon)&&!r?(0,l.jsx)(t.icon,{}):(0,l.jsx)("div",{className:"h-2 w-2 shrink-0 rounded-[2px]",style:{backgroundColor:e.color}}),null==t?void 0:t.label]},e.value)})}):null}).displayName="ChartLegend"},93557:(e,s,t)=>{"use strict";t.d(s,{Cf:()=>x,Es:()=>p,HM:()=>m,L3:()=>g,c7:()=>h,lG:()=>o,rr:()=>f,zM:()=>d});var l=t(20475),r=t(20107),n=t(60241),a=t(7197),i=t(22250);let o=n.bL,d=n.l9,c=n.ZL,m=n.bm,u=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)(n.hJ,{ref:s,className:(0,i.cn)("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...r})});u.displayName=n.hJ.displayName;let x=r.forwardRef((e,s)=>{let{className:t,children:r,...o}=e;return(0,l.jsxs)(c,{children:[(0,l.jsx)(u,{}),(0,l.jsxs)(n.UC,{ref:s,className:(0,i.cn)("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",t),...o,children:[r,(0,l.jsxs)(n.bm,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[(0,l.jsx)(a.MKb,{className:"h-4 w-4"}),(0,l.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})});x.displayName=n.UC.displayName;let h=e=>{let{className:s,...t}=e;return(0,l.jsx)("div",{className:(0,i.cn)("flex flex-col space-y-1.5 text-center sm:text-left",s),...t})};h.displayName="DialogHeader";let p=e=>{let{className:s,...t}=e;return(0,l.jsx)("div",{className:(0,i.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",s),...t})};p.displayName="DialogFooter";let g=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)(n.hE,{ref:s,className:(0,i.cn)("text-lg font-semibold leading-none tracking-tight",t),...r})});g.displayName=n.hE.displayName;let f=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)(n.VY,{ref:s,className:(0,i.cn)("text-sm text-muted-foreground",t),...r})});f.displayName=n.VY.displayName},36760:(e,s,t)=>{"use strict";t.d(s,{E:()=>n});var l=t(20475),r=t(22250);function n(e){let{className:s,...t}=e;return(0,l.jsx)("div",{className:(0,r.cn)("animate-pulse rounded-md bg-primary/10",s),...t})}},85014:(e,s,t)=>{"use strict";t.d(s,{TooltipProvider:()=>i,ZI:()=>c,k$:()=>d,m_:()=>o});var l=t(20475),r=t(20107),n=t(43048),a=t(22250);let i=n.Kq,o=n.bL,d=n.l9,c=r.forwardRef((e,s)=>{let{className:t,sideOffset:r=4,...i}=e;return(0,l.jsx)(n.UC,{ref:s,sideOffset:r,className:(0,a.cn)("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...i})});c.displayName=n.UC.displayName},32857:(e,s,t)=>{"use strict";t.d(s,{dj:()=>u,oR:()=>m});var l=t(20107);let r=0,n=new Map,a=e=>{if(n.has(e))return;let s=setTimeout(()=>{n.delete(e),c({type:"REMOVE_TOAST",toastId:e})},1e6);n.set(e,s)},i=(e,s)=>{switch(s.type){case"ADD_TOAST":return{...e,toasts:[s.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===s.toast.id?{...e,...s.toast}:e)};case"DISMISS_TOAST":{let{toastId:t}=s;return t?a(t):e.toasts.forEach(e=>{a(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===t||void 0===t?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===s.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==s.toastId)}}},o=[],d={toasts:[]};function c(e){d=i(d,e),o.forEach(e=>{e(d)})}function m(e){let{...s}=e,t=(r=(r+1)%Number.MAX_SAFE_INTEGER).toString(),l=()=>c({type:"DISMISS_TOAST",toastId:t});return c({type:"ADD_TOAST",toast:{...s,id:t,open:!0,onOpenChange:e=>{e||l()}}}),{id:t,dismiss:l,update:e=>c({type:"UPDATE_TOAST",toast:{...e,id:t}})}}function u(){let[e,s]=l.useState(d);return l.useEffect(()=>(o.push(s),()=>{let e=o.indexOf(s);e>-1&&o.splice(e,1)}),[e]),{...e,toast:m,dismiss:e=>c({type:"DISMISS_TOAST",toastId:e})}}},22250:(e,s,t)=>{"use strict";t.d(s,{cn:()=>n});var l=t(64901),r=t(868);function n(){for(var e=arguments.length,s=Array(e),t=0;t{"use strict";t.d(s,{QI:()=>a,U_:()=>l,ZK:()=>r,jq:()=>n});let l={6:"1.4 MHz",15:"3 MHz",25:"5 MHz",50:"10 MHz",75:"15 MHz",100:"20 MHz","-":"-"},r={0:"No cause",2:"IMSI unknown in HSS",3:"Illegal UE",5:"IMEI not accepted",6:"Illegal ME",7:"EPS services not allowed",8:"EPS services and non-EPS services not allowed",9:"UE identity cannot be derived by the network",10:"Implicitly detached",11:"PLMN not allowed",12:"Tracking Area not allowed",13:"Roaming not allowed in this tracking area",14:"EPS services not allowed in this PLMN",15:"No Suitable Cells in tracking area",16:"MSC temporarily not reachable",17:"Network failure",18:"CS domain not available",19:"ESM failure",20:"MAC failure",21:"Synch failure",22:"Congestion",23:"UE security capabilities mismatch",24:"Security mode rejected, unspecified",25:"Not authorized for this CSG",26:"Non-EPS authentication unacceptable",31:"Redirection to 5GCN required",35:"Requested service option not authorized in this PLMN",39:"CS service temporarily not available",40:"No EPS bearer context activated",42:"Severe network failure",95:"Semantically incorrect message",96:"Invalid mandatory information",97:"Message type non-existent or not implemented",98:"Message type not compatible with the protocol state",99:"Information element non-existent or not implemented",100:"Conditional IE error",101:"Message not compatible with the protocol state",111:"Protocol error, unspecified"},n={0:"No cause",8:"Operator Determined Barring",26:"Insufficient resources",27:"Missing or unknown APN",28:"Unknown PDN type",29:"User authentication failed",30:"Request rejected by Serving GW or PDN GW",31:"Request rejected, unspecified",32:"Service option not supported",33:"Requested service option not subscribed",34:"Service option temporarily out of order",35:"PTI already in use",36:"Regular deactivation",37:"EPS QoS not accepted",38:"Network failure",39:"Reactivation requested",41:"Semantic error in the TFT operation",42:"Syntactical error in the TFT operation",43:"Invalid EPS bearer identity",44:"Semantic errors in packet filter(s)",45:"Syntactical errors in packet filter(s)",46:"Unused (see NOTE 2)",47:"PTI mismatch",49:"Last PDN disconnection not allowed",50:"PDN type IPv4 only allowed",51:"PDN type IPv6 only allowed",52:"Single address bearers only allowed",53:"ESM information not received",54:"PDN connection does not exist",55:"Multiple PDN connections for a given APN not allowed",56:"Collision with network initiated request",57:"PDN type IPv4v6 only allowed",58:"PDN type non IP only allowed",59:"Unsupported QCI value",60:"Bearer handling not supported",61:"PDN type Ethernet only allowed",65:"Maximum number of EPS bearers reached",66:"Requested APN not supported in current RAT and PLMN combination",81:"Invalid PTI value",95:"Semantically incorrect message",96:"Invalid mandatory information",97:"Message type non-existent or not implemented",98:"Message type not compatible with the protocol state",99:"Information element non-existent or not implemented",100:"Conditional IE error",101:"Message not compatible with the protocol state",111:"Protocol error, unspecified",112:"APN restriction value incompatible with active EPS bearer context",113:"Multiple accesses to a PDN connection not allowed"},a={0:"No cause",3:"Illegal UE",5:"PEI not accepted",6:"Illegal ME",7:"5GS services not allowed",9:"UE identity cannot be derived by the network",10:"Implicitly de-registered",11:"PLMN not allowed",12:"Tracking area not allowed",13:"Roaming not allowed in this tracking area",15:"No suitable cells in tracking area",20:"MAC failure",21:"Synch failure",22:"Congestion",23:"UE security capabilities mismatch",24:"Security mode rejected, unspecified",26:"Non-5G authentication unacceptable",27:"N1 mode not allowed",28:"Restricted service area",31:"Redirection to EPC required",43:"LADN not available",62:"No network slices available",65:"Maximum number of PDU sessions reached",67:"Insufficient resources for specific slice and DNN",69:"Insufficient resources for specific slice",71:"ngKSI already in use",72:"Non-3GPP access to 5GCN not allowed",73:"Serving network not authorized",74:"Temporarily not authorized for this SNPN",75:"Permanently not authorized for this SNPN",76:"Not authorized for this CAG or authorized for CAG cells only",77:"Wireline access area not allowed",78:"PLMN not allowed to operate at the present UE location",79:"UAS services not allowed",90:"Payload was not forwarded",91:"DNN not supported or not subscribed in the slice",92:"Insufficient user-plane resources for the PDU session",95:"Semantically incorrect message",96:"Invalid mandatory information",97:"Message type non-existent or not implemented",98:"Message type not compatible with the protocol state",99:"Information element non-existent or not implemented",100:"Conditional IE error",101:"Message not compatible with the protocol state",111:"Protocol error, unspecified"}},88926:(e,s,t)=>{"use strict";t.d(s,{a:()=>l});let l=async function(e){let s=!(arguments.length>1)||void 0===arguments[1]||arguments[1],t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:30;try{var l;let r=e.trim().toUpperCase().startsWith("AT")?e.trim():"AT".concat(e.trim()),n=encodeURIComponent(r),a="/cgi-bin/quecmanager/at_cmd/at_queue_client.sh?command=".concat(n);s&&(a+="&wait=1&timeout=".concat(t));let i=await fetch(a,{method:"GET",headers:{Accept:"application/json",Authorization:"".concat(localStorage.getItem("authToken"))},signal:AbortSignal.timeout(1e3*t+5e3)});if(!i.ok)throw Error("AT command failed with status: ".concat(i.status));let o=await i.json();if(o.error)throw Error("AT queue error: ".concat(o.error));if(s&&(null===(l=o.response)||void 0===l?void 0:l.status)==="timeout")throw Error("AT command timed out after ".concat(t," seconds"));return o}catch(e){throw console.error("AT Command error:",e),e}}}},e=>{var s=s=>e(e.s=s);e.O(0,[9980,9649,7780,8885,3746,9464,3048,1074,3095,1178,191,6035,7358],()=>s(98722)),_N_E=e.O()}]); \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/home/page-cdad6102877a38b8.js b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/home/page-cdad6102877a38b8.js deleted file mode 100644 index 4586acb..0000000 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/home/page-cdad6102877a38b8.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6665],{98722:(e,s,t)=>{Promise.resolve().then(t.bind(t,42988))},42988:(e,s,t)=>{"use strict";t.r(s),t.d(s,{default:()=>e$});var l=t(20475),r=t(20107),n=t(32857),a=t(72167),i=t(36760),o=t(45934);let d=e=>{let{data:s,isLoading:t,hideSensitiveData:r}=e;return(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{children:[(0,l.jsx)(a.ZB,{children:"Sim Card"}),(0,l.jsx)(a.BT,{children:"Sim card information"})]}),(0,l.jsxs)(a.Wu,{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Sim Card Slot in Use"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[50px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.slot})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Sim Card State"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat((null==s?void 0:s.simCard.state)==="Inserted"?"bg-emerald-500 hover:bg-emerald-800":"bg-rose-500 hover:bg-rose-800"),children:null==s?void 0:s.simCard.state})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Provider"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.provider})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Phone Number"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[140px]"}):r?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.phoneNumber})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"IMSI"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[140px]"}):r?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.imsi})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"ICCID"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[140px]"}):r?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.iccid})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"IMEI"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[140px]"}):r?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.simCard.imei})]})]})]})},c={6:"1.4 MHz",15:"3 MHz",25:"5 MHz",50:"10 MHz",75:"15 MHz",100:"20 MHz"},m={0:"5 MHz",1:"10 MHz",2:"15 MHz",3:"20 MHz",4:"25 MHz",5:"30 MHz",6:"40 MHz",7:"50 MHz",8:"60 MHz",9:"70 MHz",10:"80 MHz",11:"90 MHz",12:"100 MHz",13:"200 MHz",14:"400 MHz",15:"35 MHz",16:"45 MHz"},u={2:"UTRAN",4:"HSDPA",5:"HSUPA",6:"HSDPA & HSUPA",7:"E-UTRAN",10:"E-UTRAN - 5GCN",11:"NR - 5GCN",12:"NG-RAN",13:"E-UTRAN-NR Dual"},x=e=>u[e]||"Unknown",h=e=>{let{data:s,isLoading:t,dataConnectionState:r,connectionStateLoading:n}=e;return(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{children:[(0,l.jsx)(a.ZB,{children:"Connection"}),(0,l.jsx)(a.BT,{children:"Connection information"})]}),(0,l.jsxs)(a.Wu,{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"APN"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("div",{className:"font-bold",children:null==s?void 0:s.connection.apn})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Operator State"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat((null==s?void 0:s.connection.operatorState)==="Unknown"||(null==s?void 0:s.connection.operatorState)==="Denied"||(null==s?void 0:s.connection.operatorState)==="Not Registered"?"bg-rose-500 hover:bg-rose-800":"bg-emerald-500 hover:bg-emerald-800"),children:null==s?void 0:s.connection.operatorState})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Functionality State"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat((null==s?void 0:s.connection.functionalityState)==="Enabled"?"bg-emerald-500 hover:bg-emerald-800":"bg-rose-500 hover:bg-rose-800"),children:null==s?void 0:s.connection.functionalityState})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Data Connection State"}),n?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat("Connected"===r?"bg-emerald-500 hover:bg-emerald-800":"bg-rose-500 hover:bg-rose-800"),children:r})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Network Type"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("div",{className:"font-bold",children:null==s?void 0:s.connection.networkType})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Modem Temperature"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("div",{className:"font-bold",children:null==s?void 0:s.connection.modemTemperature})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("div",{children:"Access Technology"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("div",{className:"font-bold",children:(null==s?void 0:s.connection.accessTechnology)?x(s.connection.accessTechnology):"Unknown"})]})]})]})},p=e=>{let{data:s,isLoading:t,bytesSent:r,bytesReceived:n}=e;return(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{children:[(0,l.jsx)(a.ZB,{children:"Data Transmission"}),(0,l.jsx)(a.BT,{children:"Data transmission information"})]}),(0,l.jsxs)(a.Wu,{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Carrier Aggregation"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat((null==s?void 0:s.dataTransmission.carrierAggregation)==="Multi"?"bg-emerald-500 hover:bg-emerald-800":"bg-rose-500 hover:bg-rose-800"),children:null==s?void 0:s.dataTransmission.carrierAggregation})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Bandwidth"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.dataTransmission.bandwidth})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Connected Bands"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.dataTransmission.connectedBands})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Signal Strength"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[100px]"}):(0,l.jsx)(o.E,{className:"font-bold ".concat((null==s?void 0:s.dataTransmission.signalStrength)&&parseInt(null==s?void 0:s.dataTransmission.signalStrength)>80?"bg-emerald-500 hover:bg-emerald-800":(null==s?void 0:s.dataTransmission.signalStrength)&&parseInt(null==s?void 0:s.dataTransmission.signalStrength)>40?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800"),children:null==s?void 0:s.dataTransmission.signalStrength})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"MIMO Layers"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.dataTransmission.mimoLayers})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Bytes Sent"}),(0,l.jsx)("p",{className:"font-bold",children:r})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Bytes Received"}),(0,l.jsx)("p",{className:"font-bold",children:n})]})]})]})};var g=t(85014);let f=e=>{let{data:s,isLoading:t}=e;return(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{children:[(0,l.jsx)(a.ZB,{children:"Cellular Information"}),(0,l.jsx)(a.BT,{children:"Cellular network information"})]}),(0,l.jsxs)(a.Wu,{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Cell ID"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.cellId})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{children:"TAC"}),(0,l.jsx)(g.ZI,{children:(0,l.jsx)("div",{className:"grid grid-cols-1 gap-1",children:(0,l.jsx)("span",{className:"font-medium",children:"Region / Tracking Area Code"})})})]})}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.trackingAreaCode})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Physical Cell IDs"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.physicalCellId})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"E/ARFCN"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.earfcn})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Mobile Country Code"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.mcc})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Mobile Network Code"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[80px]"}):(0,l.jsx)("p",{className:"font-bold",children:null==s?void 0:s.cellularInfo.mnc})]}),(0,l.jsxs)("div",{className:"flex flex-row justify-between text-md",children:[(0,l.jsx)("p",{children:"Antenna Signal Quality"}),t?(0,l.jsx)(i.E,{className:"h-6 w-[80px]"}):(0,l.jsx)(o.E,{className:"\n font-bold ".concat((null==s?void 0:s.cellularInfo.signalQuality)&&parseInt(null==s?void 0:s.cellularInfo.signalQuality)>80?"bg-emerald-500 hover:bg-emerald-800":(null==s?void 0:s.cellularInfo.signalQuality)&&parseInt(null==s?void 0:s.cellularInfo.signalQuality)>40?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800"),children:null==s?void 0:s.cellularInfo.signalQuality})]})]})]})};var v=t(1307),j=t(53134),N=t(94005),w=t(4538),b=t(41797),y=t(79492);let S={signal:{label:"LTE/5G Signal Metrics"},rsrp:{label:"RSRP",color:"hsl(var(--chart-1))"},rsrq:{label:"RSRQ",color:"hsl(var(--chart-2))"},sinr:{label:"SINR",color:"hsl(var(--chart-3))"}},A=e=>{let s=e.split("\n").filter(e=>e.trim()),t=[];s.forEach(e=>{let s=e.match(/-?\d+/g);s&&t.push(...s.map(Number))});let l=t.filter(e=>-140!==e&&-32768!==e);return 0===l.length?0:Math.round(l.reduce((e,s)=>e+s,0)/l.length)},C=()=>{let[e,s]=(0,r.useState)(()=>{let e=new Date;return Array.from({length:5},(s,t)=>({time:new Date(e.getTime()-(4-t)*3e3).toISOString(),rsrp:0,rsrq:0,sinr:0}))}),[t,n]=(0,r.useState)("rsrp"),[o,d]=(0,r.useState)(!0),[c,m]=(0,r.useState)(null),u=(0,r.useCallback)(async()=>{try{let e;let t=await fetch("/cgi-bin/quecmanager/home/fetch_signal_metrics.sh");if(!t.ok)throw Error("Failed to fetch signal metrics");try{e=await t.json()}catch(e){throw console.error("Error parsing JSON:",e),Error("Failed to parse signal metrics data")}let l=Math.min(e.rsrp.length,e.rsrq.length,e.sinr.length);if(0===l)throw Error("No signal metrics data available");let r=Array.from({length:l},(s,t)=>({time:e.rsrp[t].datetime,rsrp:A(e.rsrp[t].output),rsrq:A(e.rsrq[t].output),sinr:A(e.sinr[t].output)}));s(r),m(null)}catch(t){console.error("Error fetching metrics:",t),m(t instanceof Error?t.message:"An unknown error occurred");let e=new Date().toISOString();s(s=>{let t=[...s];return t.length>=20&&t.shift(),t.push({time:e,rsrp:0,rsrq:0,sinr:0}),t})}finally{d(!1)}},[]);(0,r.useEffect)(()=>{u();let e=setInterval(u,15e3);return()=>clearInterval(e)},[u]);let x=e.length>0?e[e.length-1]:{rsrp:0,rsrq:0,sinr:0};return c?(0,l.jsx)(a.Zp,{children:(0,l.jsxs)(a.aR,{children:[(0,l.jsx)(a.ZB,{children:"Error Loading Signal Metrics"}),(0,l.jsx)(a.BT,{children:c})]})}):(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{className:"flex flex-col items-stretch space-y-0 border-b p-0 sm:flex-row",children:[(0,l.jsxs)("div",{className:"flex flex-1 flex-col justify-center gap-1 px-6 py-5 sm:py-6",children:[(0,l.jsx)(a.ZB,{children:"Antenna Port Signal Metrics"}),(0,l.jsx)(a.BT,{children:"Per-port signal values averaged across all active ports"})]}),(0,l.jsx)("div",{className:"flex",children:["rsrp","rsrq","sinr"].map(e=>(0,l.jsxs)("button",{"data-active":t===e,className:"flex flex-1 flex-col justify-center gap-1 border-t px-6 py-4 text-left even:border-l data-[active=true]:bg-muted/50 sm:border-l sm:border-t-0 sm:px-8 sm:py-6",onClick:()=>n(e),children:[(0,l.jsx)("span",{className:"text-xs text-muted-foreground",children:S[e].label}),o?(0,l.jsx)(i.E,{className:"lg:h-10 h-6 w-full"}):(0,l.jsx)("span",{className:"text-base font-bold leading-none sm:text-3xl",children:x[e].toFixed(0)})]},e))})]}),(0,l.jsx)(a.Wu,{className:"px-2 sm:p-6",children:(0,l.jsx)(v.at,{config:S,className:"aspect-auto h-[250px] w-full",children:(0,l.jsxs)(j.Q,{accessibilityLayer:!0,data:e,margin:{left:12,right:12},children:[(0,l.jsxs)("defs",{children:[(0,l.jsxs)("linearGradient",{id:"fillRsrp",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,l.jsx)("stop",{offset:"5%",stopColor:"var(--color-rsrp)",stopOpacity:.8}),(0,l.jsx)("stop",{offset:"95%",stopColor:"var(--color-rsrp)",stopOpacity:.1})]}),(0,l.jsxs)("linearGradient",{id:"fillRsrq",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,l.jsx)("stop",{offset:"5%",stopColor:"var(--color-rsrq)",stopOpacity:.8}),(0,l.jsx)("stop",{offset:"95%",stopColor:"var(--color-rsrq)",stopOpacity:.1})]}),(0,l.jsxs)("linearGradient",{id:"fillSinr",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,l.jsx)("stop",{offset:"5%",stopColor:"var(--color-sinr)",stopOpacity:.8}),(0,l.jsx)("stop",{offset:"95%",stopColor:"var(--color-sinr)",stopOpacity:.1})]})]}),(0,l.jsx)(N.d,{vertical:!1}),(0,l.jsx)(w.W,{dataKey:"time",tickLine:!1,axisLine:!1,tickMargin:8,minTickGap:32,tickFormatter:e=>new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!0})}),(0,l.jsx)(b.h,{hide:!0,domain:(e=>{switch(e){case"rsrp":return[-140,-60];case"rsrq":return[-20,0];case"sinr":return[-10,30];default:return[0,"auto"]}})(t)}),(0,l.jsx)(v.II,{content:(0,l.jsx)(v.Nt,{className:"w-[200px]",nameKey:"metric",labelFormatter:e=>new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!0})})}),(0,l.jsx)(y.G,{dataKey:t,type:"monotone",stroke:"var(--color-".concat(t,")"),fill:"url(#fill".concat(t.charAt(0).toUpperCase()+t.slice(1),")"),strokeWidth:2,activeDot:{r:4},baseValue:(e=>{switch(e){case"rsrp":return -140;case"rsrq":return -20;case"sinr":return -10;default:return 0}})(t)})]})})}),(0,l.jsxs)(a.wL,{className:"flex-col items-start gap-2 text-sm",children:[(0,l.jsx)("div",{className:"flex gap-2 font-medium leading-none",children:"Displays aggregated signal metrics across all active antenna ports."}),(0,l.jsx)("div",{className:"leading-none text-muted-foreground italic",children:"Higher values indicate better signal quality."})]})]})};var I=t(92867),k=t(32810);let E=e=>"".concat(Math.round(e/1048576)," MB"),T=()=>{let[e,s]=(0,r.useState)({total:0,used:0,available:0}),[t,n]=(0,r.useState)({enabled:!1,interval:2,running:!1}),[o,d]=(0,r.useState)(!0),[c,m]=(0,r.useState)(!1),u=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/memory/fetch_memory.sh",{method:"GET",cache:"no-store",headers:{"Content-Type":"application/json"}});if(!e.ok)return!1;let t=await e.json();if("success"===t.status&&t.data)return s(t.data),m(!0),!0;return!1}catch(e){return console.error("Failed to fetch memory data:",e),!1}},[]),x=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/memory/memory_service.sh",{method:"GET",cache:"no-store",headers:{"Content-Type":"application/json"}});if(!e.ok)return null;let s=await e.json();if("success"===s.status&&s.data)return n(s.data),s.data;return null}catch(e){return console.error("Failed to fetch memory config:",e),null}},[]);return(0,r.useEffect)(()=>{let e=null;return(async()=>{d(!0);let s=await x();(null==s?void 0:s.enabled)&&(await u(),e=setInterval(u,Math.max(1e3*(s.interval||2),1e3))),d(!1)})(),()=>{e&&clearInterval(e)}},[]),(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{className:"flex flex-row items-center justify-between",children:[(0,l.jsx)(a.ZB,{children:"Memory"}),t.enabled&&t.running?(0,l.jsx)(I.A,{className:"h-4 w-4 text-green-500"}):(0,l.jsx)(k.A,{className:"h-4 w-4 text-red-500"})]}),(0,l.jsx)(a.Wu,{children:o||!c?(0,l.jsxs)("div",{className:"grid lg:grid-cols-3 grid-cols-2 grid-flow-row gap-4 col-span-3",children:[(0,l.jsxs)("div",{className:"grid gap-1",children:[(0,l.jsx)("span",{className:"text-sm text-muted-foreground",children:"Total"}),(0,l.jsx)(i.E,{className:"h-5 w-24"})]}),(0,l.jsxs)("div",{className:"grid gap-1",children:[(0,l.jsx)("span",{className:"text-sm text-muted-foreground",children:"Used"}),(0,l.jsx)(i.E,{className:"h-5 w-24"})]}),(0,l.jsxs)("div",{className:"grid gap-1",children:[(0,l.jsx)("span",{className:"text-sm text-muted-foreground",children:"Available"}),(0,l.jsx)(i.E,{className:"h-5 w-24"})]})]}):t.enabled?(0,l.jsxs)("div",{className:"grid lg:grid-cols-3 grid-cols-2 grid-flow-row gap-4 col-span-3",children:[(0,l.jsxs)("div",{className:"grid gap-1",children:[(0,l.jsx)("span",{className:"text-sm text-muted-foreground",children:"Total"}),(0,l.jsx)("span",{className:"text-base font-bold",children:E(e.total)})]}),(0,l.jsxs)("div",{className:"grid gap-1",children:[(0,l.jsx)("span",{className:"text-sm text-muted-foreground",children:"Used"}),(0,l.jsx)("span",{className:"text-base font-bold",children:E(e.used)})]}),(0,l.jsxs)("div",{className:"grid gap-1",children:[(0,l.jsx)("span",{className:"text-sm text-muted-foreground",children:"Available"}),(0,l.jsx)("span",{className:"text-base font-bold",children:E(e.available)})]})]}):(0,l.jsxs)("div",{className:"text-center py-4",children:[(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:"Memory monitoring is disabled."}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Enable it in Settings → Personalization"})]})})]})},R={ms:{label:"ms",color:"hsl(var(--chart-4))"}},P=()=>new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",second:"2-digit"}),M=()=>{let[e,s]=(0,r.useState)(()=>{let e=localStorage.getItem("pingData");return e?JSON.parse(e):[]}),[t,n]=(0,r.useState)(()=>{let e=localStorage.getItem("pingData");if(e){let s=JSON.parse(e);return s.length>0?s[s.length-1].ms:null}return null}),[d,c]=(0,r.useState)({enabled:!0,interval:5,host:"8.8.8.8",running:!1}),[m,u]=(0,r.useState)(()=>{let e=localStorage.getItem("pingData");return!e||0===JSON.parse(e).length}),[x,h]=(0,r.useState)(()=>{let e=localStorage.getItem("pingData");return!!e&&JSON.parse(e).length>0}),p=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/ping/fetch_ping.sh",{method:"GET",cache:"no-store",headers:{"Content-Type":"application/json"}});if(!e.ok)return!1;let t=await e.json();if("success"===t.status&&t.data){let e=t.data;if("number"==typeof e.latency){n(e.latency);let t={time:P(),ms:e.latency,index:0};s(e=>{let s;return s=e.length<5?[...e,t].map((e,s)=>({...e,index:s+1})):[...e.slice(1),t].map((e,s)=>({...e,index:s+1})),localStorage.setItem("pingData",JSON.stringify(s)),s}),h(!0)}return!0}return!1}catch(e){return console.error("Failed to fetch ping data:",e),!1}},[]),g=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/ping/ping_service.sh",{method:"GET",cache:"no-store",headers:{"Content-Type":"application/json"}});if(!e.ok)return null;let s=await e.json();if("success"===s.status&&s.data)return c(s.data),s.data;return null}catch(e){return console.error("Failed to fetch ping config:",e),null}},[]);return(0,r.useEffect)(()=>{let e=null;return(async()=>{u(!0);let s=await g();if(null==s?void 0:s.enabled){await p();let t=Math.max(1e3*(s.interval||5),1e3);console.log("Starting ping polling with ".concat(t,"ms interval (").concat(s.interval,"s from config)")),e=setInterval(p,t)}u(!1)})(),()=>{e&&clearInterval(e)}},[g,p]),(0,l.jsxs)(a.Zp,{children:[(0,l.jsxs)(a.aR,{className:"flex flex-row items-center justify-between space-y-0 pb-2",children:[(0,l.jsx)(a.ZB,{children:"Ping Latency"}),d.enabled?null!==t?(0,l.jsxs)(o.E,{className:"text-normal font-bold",children:[t," ms"]}):null:(0,l.jsx)(o.E,{variant:"secondary",className:"text-normal font-bold",children:"Ping Disabled"})]}),(0,l.jsx)(a.Wu,{children:m?(0,l.jsx)(i.E,{className:"h-[200px] w-full"}):d.enabled?x?(0,l.jsx)(v.at,{config:R,children:(0,l.jsxs)(j.Q,{accessibilityLayer:!0,data:e,margin:{top:5,right:10,left:0,bottom:5},children:[(0,l.jsx)("defs",{children:(0,l.jsxs)("linearGradient",{id:"fillPing",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,l.jsx)("stop",{offset:"5%",stopColor:"var(--color-ms)",stopOpacity:.8}),(0,l.jsx)("stop",{offset:"95%",stopColor:"var(--color-ms)",stopOpacity:.1})]})}),(0,l.jsx)(N.d,{vertical:!1,stroke:"var(--border)",strokeOpacity:.2}),(0,l.jsx)(w.W,{dataKey:"index",tickLine:!1,axisLine:!1,tickMargin:5,tick:{fontSize:9},ticks:[1,2,3,4,5]}),(0,l.jsx)(b.h,{hide:!1,domain:(()=>{if(0===e.length)return[0,100];let s=e.map(e=>e.ms);return[Math.max(0,Math.min(...s)-5),Math.max(...s)+5]})(),tickLine:!1,axisLine:!1,width:20,tick:{fontSize:10},tickFormatter:e=>"".concat(e)}),(0,l.jsx)(v.II,{cursor:!1,content:(0,l.jsx)(v.Nt,{labelFormatter:(s,t)=>{let l=e.find(e=>e.index===s);return l?"".concat(l.time):s},formatter:(e,s)=>["".concat(e," ms"),"Latency"]})}),(0,l.jsx)(y.G,{dataKey:"ms",type:"monotone",stroke:"var(--color-ms)",strokeWidth:2,fill:"url(#fillPing)",activeDot:{r:4,strokeWidth:0},isAnimationActive:!0,animationDuration:1200,animationEasing:"ease-in-out"})]})}):(0,l.jsx)("div",{className:"text-center py-4",children:(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:"Starting ping monitoring..."})}):(0,l.jsxs)("div",{className:"text-center py-4",children:[(0,l.jsx)("p",{className:"text-sm text-muted-foreground",children:"Ping monitoring is disabled."}),(0,l.jsx)("p",{className:"text-xs text-muted-foreground mt-1",children:"Enable it in Settings → Personalization"})]})})]})};var z=t(42541),D=t(93557),U=t(97801),L=t(51589),G=t(54385),B=t(14389),F=t(98969),_=t(17799),O=t(92776),q=t.n(O),Z=t(7197),H=t(74043),Q=t(22250);let W=r.createContext(null);function $(){let e=r.useContext(W);if(!e)throw Error("useCarousel must be used within a ");return e}let K=r.forwardRef((e,s)=>{let{orientation:t="horizontal",opts:n,setApi:a,plugins:i,className:o,children:d,...c}=e,[m,u]=(0,H.A)({...n,axis:"horizontal"===t?"x":"y"},i),[x,h]=r.useState(!1),[p,g]=r.useState(!1),f=r.useCallback(e=>{e&&(h(e.canScrollPrev()),g(e.canScrollNext()))},[]),v=r.useCallback(()=>{null==u||u.scrollPrev()},[u]),j=r.useCallback(()=>{null==u||u.scrollNext()},[u]),N=r.useCallback(e=>{"ArrowLeft"===e.key?(e.preventDefault(),v()):"ArrowRight"===e.key&&(e.preventDefault(),j())},[v,j]);return r.useEffect(()=>{u&&a&&a(u)},[u,a]),r.useEffect(()=>{if(u)return f(u),u.on("reInit",f),u.on("select",f),()=>{null==u||u.off("select",f)}},[u,f]),(0,l.jsx)(W.Provider,{value:{carouselRef:m,api:u,opts:n,orientation:t||((null==n?void 0:n.axis)==="y"?"vertical":"horizontal"),scrollPrev:v,scrollNext:j,canScrollPrev:x,canScrollNext:p},children:(0,l.jsx)("div",{ref:s,onKeyDownCapture:N,className:(0,Q.cn)("relative",o),role:"region","aria-roledescription":"carousel",...c,children:d})})});K.displayName="Carousel";let V=r.forwardRef((e,s)=>{let{className:t,...r}=e,{carouselRef:n,orientation:a}=$();return(0,l.jsx)("div",{ref:n,className:"overflow-hidden",children:(0,l.jsx)("div",{ref:s,className:(0,Q.cn)("flex","horizontal"===a?"-ml-4":"-mt-4 flex-col",t),...r})})});V.displayName="CarouselContent";let J=r.forwardRef((e,s)=>{let{className:t,...r}=e,{orientation:n}=$();return(0,l.jsx)("div",{ref:s,role:"group","aria-roledescription":"slide",className:(0,Q.cn)("min-w-0 shrink-0 grow-0 basis-full","horizontal"===n?"pl-4":"pt-4",t),...r})});J.displayName="CarouselItem",r.forwardRef((e,s)=>{let{className:t,variant:r="outline",size:n="icon",...a}=e,{orientation:i,scrollPrev:o,canScrollPrev:d}=$();return(0,l.jsxs)(z.$,{ref:s,variant:r,size:n,className:(0,Q.cn)("absolute h-8 w-8 rounded-full","horizontal"===i?"-left-12 top-1/2 -translate-y-1/2":"-top-12 left-1/2 -translate-x-1/2 rotate-90",t),disabled:!d,onClick:o,...a,children:[(0,l.jsx)(Z.A60,{className:"h-4 w-4"}),(0,l.jsx)("span",{className:"sr-only",children:"Previous slide"})]})}).displayName="CarouselPrevious",r.forwardRef((e,s)=>{let{className:t,variant:r="outline",size:n="icon",...a}=e,{orientation:i,scrollNext:o,canScrollNext:d}=$();return(0,l.jsxs)(z.$,{ref:s,variant:r,size:n,className:(0,Q.cn)("absolute h-8 w-8 rounded-full","horizontal"===i?"-right-12 top-1/2 -translate-y-1/2":"-bottom-12 left-1/2 -translate-x-1/2 rotate-90",t),disabled:!d,onClick:o,...a,children:[(0,l.jsx)(Z.flY,{className:"h-4 w-4"}),(0,l.jsx)("span",{className:"sr-only",children:"Next slide"})]})}).displayName="CarouselNext";let Y=e=>{let{id:s,bandNumber:t,earfcn:r,bandwidth:n,pci:i,rsrp:d,rsrq:c,sinr:m}=e;return(0,l.jsx)(a.Zp,{className:"p-8",children:(0,l.jsxs)("div",{className:"flex flex-row items-center gap-6 justify-between",children:[(0,l.jsxs)("div",{className:"grid gap-2 w-[180px]",children:[(0,l.jsx)("h2",{className:"text-md font-bold",children:"Band"}),(0,l.jsxs)("div",{className:"flex flex-row items-center gap-2",children:[t.replace("LTE BAND ","B").replace("NR5G BAND ","N"),t.includes("NR5G")&&(0,l.jsx)(o.E,{className:"text-xs bg-blue-600 hover:bg-blue-800",children:"NR 5G"})]})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:"E/ARFCN"}),(0,l.jsx)("p",{children:r})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:"Bandwidth"}),(0,l.jsx)("p",{children:n})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:"Physical Cell ID"}),(0,l.jsx)("p",{children:i})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:"RSRP"}),(0,l.jsxs)(o.E,{className:parseInt(d)>=-80?"bg-emerald-500 hover:bg-emerald-800":parseInt(d)>=-100?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[d," dBm"]})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:"RSRQ"}),(0,l.jsxs)(o.E,{className:10>=parseInt(c)?"bg-emerald-500 hover:bg-emerald-800":20>=parseInt(c)?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[c," dB"]})]}),(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsx)("p",{className:"text-sm font-bold",children:t.includes("NR5G")?"NR-SNR":"SINR"}),(0,l.jsxs)(o.E,{className:parseInt(m)>=(t.includes("NR5G")?20:14)?"bg-emerald-500 hover:bg-emerald-800":parseInt(m)>=-2?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[m," dB"]})]})]})})},X=e=>{let{bands:s,isLoading:t}=e;return t?(0,l.jsxs)("div",{className:"flex items-center justify-center",children:[(0,l.jsx)("div",{className:"hidden lg:block w-full",children:(0,l.jsxs)(a.Zp,{className:"p-6 grid gap-4",children:[s&&s.map(e=>(0,l.jsx)(Y,{...e},e.id)),(0,l.jsx)(a.wL,{className:"w-full p-6 flex items-center justify-center",children:(0,l.jsx)(a.BT,{className:"text-md",children:"Currently bands connected."})})]})}),(0,l.jsx)(K,{className:"lg:hidden w-full max-w-xs",children:(0,l.jsx)(V,{children:(0,l.jsx)(J,{children:(0,l.jsx)("div",{className:"p-1",children:(0,l.jsx)(a.Zp,{children:(0,l.jsxs)(a.Wu,{className:"aspect-square p-4 gap-4 flex flex-col items-center justify-center flex-grow",children:[(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"Band"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-16 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"E/ARFCN"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-16 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"Bandwidth"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-16 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"PCI"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-16 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"RSRP"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-32 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"RSRQ"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-32 h-4"})})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"SINR"}),(0,l.jsx)("div",{children:(0,l.jsx)(i.E,{className:"w-32 h-4"})})]})]})})})})})})]}):(0,l.jsxs)("div",{className:"flex items-center justify-center",children:[(0,l.jsx)("div",{className:"hidden lg:block w-full",children:(0,l.jsx)(a.Zp,{className:"p-6 grid gap-4",children:s&&s.map(e=>(0,l.jsx)(Y,{...e},e.id))})}),(0,l.jsx)(K,{className:"lg:hidden w-full max-w-xs",children:(0,l.jsx)(V,{children:null==s?void 0:s.map(e=>(0,l.jsx)(J,{className:"md:basis-1/2 lg:basis-1/3",children:(0,l.jsx)("div",{className:"p-1",children:(0,l.jsx)(a.Zp,{children:(0,l.jsxs)(a.Wu,{className:"aspect-square p-4 gap-4 flex flex-col items-center justify-center flex-grow",children:[(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"Band"}),(0,l.jsx)("p",{children:e.bandNumber})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"E/ARFCN"}),(0,l.jsx)("p",{children:e.earfcn})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"Bandwidth"}),(0,l.jsx)("p",{children:e.bandwidth})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"PCI"}),(0,l.jsx)("p",{children:e.pci})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"RSRP"}),(0,l.jsxs)(o.E,{className:parseInt(e.rsrp)>=-80?"bg-emerald-500 hover:bg-emerald-800":parseInt(e.rsrp)>=-100?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[e.rsrp," dBm"]})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"RSRQ"}),(0,l.jsxs)(o.E,{className:10>=parseInt(e.rsrq)?"bg-emerald-500 hover:bg-emerald-800":20>=parseInt(e.rsrq)?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[e.rsrq," dB"]})]}),(0,l.jsxs)("div",{className:"flex justify-between w-full",children:[(0,l.jsx)("p",{children:"SINR"}),(0,l.jsxs)(o.E,{className:parseInt(e.sinr)>=20?"bg-emerald-500 hover:bg-emerald-800":parseInt(e.sinr)>=-2?"bg-orange-500 hover:bg-orange-800":"bg-rose-500 hover:bg-rose-800",children:[e.sinr," dB"]})]})]})})})},e.id))})})]})},ee=function(e,s,t,l){let r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"Unknown",n=arguments.length>5&&void 0!==arguments[5]?arguments[5]:":",a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:",";try{var i,o,d;return(null===(d=e.split("\n")[s])||void 0===d?void 0:null===(o=d.split(n)[t])||void 0===o?void 0:null===(i=o.split(a)[l])||void 0===i?void 0:i.replace(/"/g,"").trim())||r}catch(e){return r}},es=function(e,s){var t,l;let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"-",n=ee((null===(l=e[15])||void 0===l?void 0:null===(t=l.response)||void 0===t?void 0:t.split("\n").find(e=>e.includes('QMAP: "WWAN"')&&e.includes('"'.concat(s,'"'))))||"",0,1,4,r," ",","),a="IPV6"==s?n.replace(/::/g,":"):n;return["0.0.0.0","::","::0","::0:0:0:0:0:0:0:0","0:0:0:0:0:0:0:0"].includes(a)?r:a},et=function(e,s,t,l,r){let n=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"-";try{var a,i,o;if(!(null===(a=e[t])||void 0===a?void 0:a.response)||!(null===(i=e[r])||void 0===i?void 0:i.response))return n;let d=e[t].response.split("\n").filter(e=>e.includes('+QMAP: "WWAN"')),c=null===(o=d[0])||void 0===o?void 0:o.match(/\+QMAP: "WWAN",\d+,(\d+),/),m=c?c[1]:null;if(!m)return n;let u=e[r].response.split("\n").filter(e=>e.includes("+CGCONTRDP:")).find(e=>{let s=e.match(/\+CGCONTRDP: (\d+),/);return s&&s[1]===m});if(!u)return n;let x=u.split(",");if(x.length<=l[s])return n;return x[l[s]].replace(/"/g,"").trim()||n}catch(e){return console.error("Error parsing DNS address:",e),n}},el=e=>{try{let s=e.match(/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/),t=e.split(".").length>4;return s?e:t?eN(e):e.replace(/:{3,}/g,"::")}catch(s){return console.error("Error formatting DNS address:",s),e}},er=e=>ee(e,1,1,3),en=(e,s)=>({1:"Registered",2:"Searching",3:"Denied",4:"Unknown",5:"Roaming"})[Number(ee(e,1,1,1))||Number(ee(s,1,1,1))]||"Not Registered",ea=e=>{let s=e.match(/"LTE BAND \d+"|"NR5G BAND \d+"/g)||[],t=null==s?void 0:s.some(e=>e.includes("LTE")),l=null==s?void 0:s.some(e=>e.includes("NR5G"));return t&&l?"NR5G-NSA":t?"LTE":l?"NR5G-SA":"No Signal"},ei=e=>{let s=["cpuss-0","cpuss-1","cpuss-2","cpuss-3"].map(s=>{var t;let l=e.split("\n").find(e=>e.includes(s));return parseInt(null==l?void 0:null===(t=l.split(":")[1])||void 0===t?void 0:t.split(",")[1].replace(/"/g,"").trim())}),t=s.reduce((e,s)=>e+s,0)/s.length;return"".concat(Math.round(t),"\xb0C")},eo=e=>{let s=[-140,-37625,-32768],t=e=>{var t;return(null==e?void 0:null===(t=e.split(":")[1])||void 0===t?void 0:t.split(",").slice(0,4).map(e=>parseInt(e.trim())).filter(e=>!s.includes(e)))||[]},l=t(e.split("\n").find(e=>e.includes("LTE"))),r=t(e.split("\n").find(e=>e.includes("NR5G"))),n=e=>Math.max(0,Math.min(100,(e.reduce((e,s)=>e+s,0)/e.length+125)/50*100)),a=l.length?n(l):null,i=r.length?n(r):null;return null!==a&&null!==i?"".concat(Math.round((a+i)/2),"%"):null!==a?"".concat(Math.round(a),"%"):null!==i?"".concat(Math.round(i),"%"):"Unknown%"},ed=function(e,s,t,l){let r=arguments.length>4&&void 0!==arguments[4]&&arguments[4],n=t[s],a=l[s];return void 0===n||void 0===a||r?void 0!==n&&void 0!==a&&r?ee(e,n,1,a).toUpperCase():"Unknown":parseInt(ee(e,n,1,a),16).toString().toUpperCase()},ec=(e,s,t)=>{let l=t[s];return ee(e,"NR5G-NSA"===s?2:1,1,l)},em=e=>{let s=[-140,-32768,-37625],t=e=>ee(e||"",0,1,1,"Unknown",":"," ").split(",").slice(0,4).map(e=>parseInt(e.trim())).filter(e=>!s.includes(e))||[],l=e=>e.length?Math.max(0,Math.min(100,(e.reduce((e,s)=>e+s,0)/e.length- -10)/40*100)):0,r=e.split("\n"),n=l(t(r.find(e=>e.includes("LTE")))),a=l(t(r.find(e=>e.includes("NR5G"))));return n&&a?"".concat(Math.round((n+a)/2),"%"):n?"".concat(Math.round(n),"%"):a?"".concat(Math.round(a),"%"):"Unknown%"},eu=e=>{let s=e=>e.map(e=>ee(e,0,1,3,"Unknown",":",",")),t=[...s(e.split("+QCAINFO").filter(e=>e.includes("LTE BAND"))),...s(e.split("+QCAINFO").filter(e=>e.includes("NR5G BAND")))];return t.length?t:["Unknown"]},ex=e=>{let s=s=>e.split("+QCAINFO").filter(e=>e.includes(s)).map(e=>{var s,t;return(null===(t=e.split(":")[1])||void 0===t?void 0:null===(s=t.split(",")[1])||void 0===s?void 0:s.trim())||"Unknown"}),t=s("LTE BAND"),l=s("NR5G BAND");return[...t,...l].length?[...t,...l]:["Unknown"]},eh=e=>{let s=(s,t)=>e.split("+QCAINFO").filter(e=>e.includes(s)).map(e=>{var s;return t[null===(s=e.split(":")[1])||void 0===s?void 0:s.split(",")[2]]||"Unknown"}),t=s("LTE BAND",c),l=s("NR5G BAND",m);return[...t,...l].length?[...t,...l]:["Unknown"]},ep=(e,s)=>{let t=e=>{var s;return e&&(null===(s=e[8===e.length?4:5])||void 0===s?void 0:s.trim())||"Unknown"},l=e=>e.map(e=>{var s;return t(null===(s=e.split(":")[1])||void 0===s?void 0:s.split(","))}),r=e.split("+QCAINFO");return[l(r.filter(e=>e.includes("PCC")))[0],...l(r.filter(e=>e.includes("SCC")))].filter(e=>"Unknown"!==e)},eg=e=>{let s=e=>{var s;return e&&(null===(s=e[(()=>{switch(e.length){case 8:return 5;case 12:return 9;default:return 6}})()])||void 0===s?void 0:s.trim())||"Unknown"},t=e=>e.map(e=>{var t;return s(null===(t=e.split(":")[1])||void 0===t?void 0:t.split(","))}),l=e.split("+QCAINFO");return[t(l.filter(e=>e.includes("PCC")))[0],...t(l.filter(e=>e.includes("SCC")))].filter(e=>"Unknown"!==e)},ef=e=>{let s=e=>{var s;return e&&(null===(s=e[(()=>{switch(e.length){case 8:return 6;case 12:return 10;default:return 7}})()])||void 0===s?void 0:s.trim())||"Unknown"},t=e=>e.map(e=>{var t;return s(null===(t=e.split(":")[1])||void 0===t?void 0:t.split(","))}),l=e.split("+QCAINFO");return[t(l.filter(e=>e.includes("PCC")))[0],...t(l.filter(e=>e.includes("SCC")))].filter(e=>"Unknown"!==e)},ev=(e,s)=>{let t=e=>{var s;return e&&(null===(s=e[(()=>{switch(e.length){case 9:return 8;case 8:return 7;case 12:return 11;default:return 9}})()])||void 0===s?void 0:s.trim())||"Unknown"},l=e=>e.map(e=>{var s;let l=t(null===(s=e.split(":")[1])||void 0===s?void 0:s.split(","));if("-32768"===l)return"-";let r=parseInt(l)>=4e3?"4000":-3e3>parseInt(l)?"-":l;return isNaN(parseInt(r))||e.includes("LTE")?r||"Unknown":Math.round(parseInt(r)/100).toString()}),r=e.split("+QCAINFO");return[l(r.filter(e=>e.includes("PCC")))[0],...l(r.filter(e=>e.includes("SCC")))].filter(e=>"Unknown"!==e)},ej=e=>{let s=[-32768,-140],t=e=>ee(e||"",0,1,1,"-32768",":"," ").split(",").slice(0,4).map(e=>parseInt(e.trim())).filter(e=>!s.includes(e))||[],l=t(e.split("\n").find(e=>e.includes("LTE"))).length,r=t(e.split("\n").find(e=>e.includes("NR5G"))).length;return l&&r?"LTE ".concat(l," / NR ").concat(r):l?" LTE ".concat(l):r?"NR ".concat(r):"Unknown"},eN=e=>{try{let s=e.split(".");if(s.length<8)return e;let t=s.map(e=>{let s=parseInt(e,10);return isNaN(s)?"00":s.toString(16).padStart(2,"0")}),l=[];for(let e=0;ee.replace(/^0+/,"")||"0"),n=[],a=[];for(let e=0;e0&&(a.length>n.length&&(n=[...a]),a=[]);if(a.length>n.length&&(n=[...a]),n.length>=2){let e=[];for(let s=0;s{let[e,s]=(0,r.useState)(null),[t,l]=(0,r.useState)(!0),[n,a]=(0,r.useState)(null),[i,o]=(0,r.useState)(0),[d,c]=(0,r.useState)(!0),m=(0,r.useCallback)(async()=>{try{c(!0);let e=await fetch("/cgi-bin/quecmanager/home/fetch_public_ip.sh"),t="Can't fetch public IP";if(e.ok){let s=await e.json();t=s.error?"No Internet":s.public_ip||"-"}s(e=>e?{...e,networkAddressing:{...e.networkAddressing,publicIPv4:t}}:null)}catch(e){console.error("Error fetching public IP:",e),s(e=>e?{...e,networkAddressing:{...e.networkAddressing,publicIPv4:"Can't fetch public IP"}}:null)}finally{c(!1)}},[]),u=(0,r.useCallback)(async e=>{console.error("Error fetching home data:",e),i<2?(console.log("Attempting automatic recovery (attempt ".concat(i+1,"/2)...")),o(e=>e+1),await new Promise(e=>setTimeout(e,2e3)),x()):(console.error("Max retry attempts reached. Please refresh manually."),a(e),s({simCard:{slot:"Unknown",state:"Unknown",provider:"Unknown",phoneNumber:"Unknown",imsi:"-",iccid:"-",imei:"-"},connection:{apn:"No APN",operatorState:"Unknown",functionalityState:"Disabled",networkType:"No Signal",modemTemperature:"Unknown",accessTechnology:"-"},dataTransmission:{carrierAggregation:"Inactive",connectedBands:"-",signalStrength:"-%",mimoLayers:"-",bandwidth:"Unknown"},cellularInfo:{cellId:"-",trackingAreaCode:"-",cellIdRaw:"-",trackingAreaCodeRaw:"-",physicalCellId:"-",earfcn:"-",mcc:"-",mnc:"-",signalQuality:"-%"},currentBands:{id:[1],bandNumber:["-"],earfcn:["-"],bandwidth:["-"],pci:["-"],rsrp:["-"],rsrq:["-"],sinr:["-"]},networkAddressing:{publicIPv4:"Not available",cellularIPv4:"Not available",cellularIPv6:"Not available",carrierPrimaryDNS:"Not available",carrierSecondaryDNS:"Not available",rawCarrierPrimaryDNS:"Not available",rawCarrierSecondaryDNS:"Not available"},timeAdvance:{lteTimeAdvance:"-",nrTimeAdvance:"-"}}))},[i]),x=(0,r.useCallback)(async()=>{try{var e,t,r,n,i,d,c,x,h,p,g,f,v,j,N,w,b,y,S,A,C,I,k,E,T,R;let l=await fetch("/cgi-bin/quecmanager/at_cmd/fetch_data.sh?set=1");if(!l.ok)throw Error("API returned status ".concat(l.status));let u=await l.json();u.some(e=>e.response.toLowerCase().includes("failed"))&&(console.error("SMS tool failure detected in modem response. Attempting service restart via reset-at-bridge.sh."),await fetch("/cgi-bin/quecmanager/reset-at-bridge.sh"));let P={simCard:{slot:ee(u[0].response,1,1,0),state:u[6].response.includes("READY")?"Inserted":u[6].response.includes("PIN")?"Waiting for PIN":u[6].response.includes("PUK")?"Waiting for Password":u[6].response.toLowerCase().includes("failed")?"SMS-Tool Failed Token":"Unknown",provider:ee(u[2].response,1,1,2),phoneNumber:ee(u[1].response,1,1,1),imsi:ee(u[3].response,1,0,0),iccid:ee(u[4].response,1,1,1,"Unknown",":"," "),imei:ee(u[5].response,1,0,0)},connection:{apn:ee(null===(e=u[7])||void 0===e?void 0:e.response,1,1,2,ee(null===(t=u[12])||void 0===t?void 0:t.response,1,1,2)),operatorState:en(null===(r=u[8])||void 0===r?void 0:r.response,null===(n=u[16])||void 0===n?void 0:n.response)||"Unknown",functionalityState:"1"===ee(null===(i=u[9])||void 0===i?void 0:i.response,1,1,0)?"Enabled":"Disabled",networkType:ea(u[13].response)||"No Signal",modemTemperature:ei(u[11].response)||"Unknown",accessTechnology:er(u[2].response)||"Unknown"},dataTransmission:{carrierAggregation:(null===(d=u[13].response.match(/"LTE BAND \d+"|"NR5G BAND \d+"/g))||void 0===d?void 0:d.length)>1?"Multi":"Inactive",bandwidth:eh(u[13].response).join(", ")||"Unknown",connectedBands:eu(u[13].response).join(", ").replaceAll("LTE BAND ","B").replaceAll("NR5G BAND ","N")||"Unknown",signalStrength:eo(u[14].response)||"Unknown",mimoLayers:ej(u[14].response)||"Unknown"},cellularInfo:{cellId:ed(null===(c=u[10])||void 0===c?void 0:c.response,ea(null===(x=u[13])||void 0===x?void 0:x.response),{"NR5G-SA":1,"NR5G-NSA":2,LTE:1},{"NR5G-SA":6,"NR5G-NSA":4,LTE:6},!1),trackingAreaCode:ed(null===(h=u[10])||void 0===h?void 0:h.response,ea(null===(p=u[13])||void 0===p?void 0:p.response),{"NR5G-SA":1,"NR5G-NSA":2,LTE:1},{"NR5G-SA":8,"NR5G-NSA":10,LTE:12},!1),cellIdRaw:ed(null===(g=u[10])||void 0===g?void 0:g.response,ea(null===(f=u[13])||void 0===f?void 0:f.response),{"NR5G-SA":1,"NR5G-NSA":2,LTE:1},{"NR5G-SA":6,"NR5G-NSA":4,LTE:6},!0),trackingAreaCodeRaw:ed(null===(v=u[10])||void 0===v?void 0:v.response,ea(null===(j=u[13])||void 0===j?void 0:j.response),{"NR5G-SA":1,"NR5G-NSA":2,LTE:1},{"NR5G-SA":8,"NR5G-NSA":10,LTE:12},!0),physicalCellId:ep(u[13].response,ea(u[13].response)).join(", ")||"Unknown",earfcn:ex(u[13].response).join(", "),mcc:ec(null===(N=u[10])||void 0===N?void 0:N.response,ea(null===(w=u[13])||void 0===w?void 0:w.response),{"NR5G-NSA":2,LTE:4,"NR5G-SA":4}),mnc:ec(null===(b=u[10])||void 0===b?void 0:b.response,ea(null===(y=u[13])||void 0===y?void 0:y.response),{"NR5G-NSA":3,LTE:5,"NR5G-SA":5}),signalQuality:em(u[19].response)||"Unknown"},currentBands:{id:Array.from({length:null!==(R=null===(S=eu(u[13].response))||void 0===S?void 0:S.length)&&void 0!==R?R:0},(e,s)=>s+1)||[1],bandNumber:eu(u[13].response)||["Unknown"],earfcn:ex(u[13].response),bandwidth:eh(u[13].response)||["Unknown"],pci:ep(u[13].response,ea(u[13].response))||["Unknown"],rsrp:eg(u[13].response),rsrq:ef(u[13].response)||["Unknown"],sinr:ev(u[13].response,ea(u[13].response))||["Unknown"]},networkAddressing:{publicIPv4:"Loading...",cellularIPv4:es(u,"IPV4"),cellularIPv6:es(u,"IPV6"),carrierPrimaryDNS:el(et(u,ea(null===(A=u[13])||void 0===A?void 0:A.response),15,{"NR5G-SA":5,"NR5G-NSA":6,LTE:6},20)),carrierSecondaryDNS:el(et(u,ea(null===(C=u[13])||void 0===C?void 0:C.response),15,{"NR5G-SA":6,"NR5G-NSA":7,LTE:7},20)),rawCarrierPrimaryDNS:et(u,ea(null===(I=u[13])||void 0===I?void 0:I.response),15,{"NR5G-SA":5,"NR5G-NSA":6,LTE:6},20),rawCarrierSecondaryDNS:et(u,ea(null===(k=u[13])||void 0===k?void 0:k.response),15,{"NR5G-SA":6,"NR5G-NSA":7,LTE:7},20)},timeAdvance:{lteTimeAdvance:ee(null===(E=u[21])||void 0===E?void 0:E.response,1,1,2),nrTimeAdvance:ee(null===(T=u[22])||void 0===T?void 0:T.response,1,1,2)}};s(P),o(0),a(null),m()}catch(e){console.error("Error fetching home data:",e),u(e instanceof Error?e:Error(String(e)))}finally{l(!1)}},[u,m]);return(0,r.useEffect)(()=>{let e,s,t=!0;return(async()=>{if(t)try{await x()}finally{t&&l(!1)}})(),e=setInterval(()=>{x()},15e3),s=setInterval(()=>{m()},3e4),()=>{t=!1,clearInterval(e),clearInterval(s)}},[x,m]),{data:e,isLoading:t,error:n,refresh:(0,r.useCallback)(async()=>{l(!0),await x(),l(!1)},[x]),isPublicIPLoading:d}},eb=()=>{let[e,s]=(0,r.useState)("Unknown"),[t,l]=(0,r.useState)(!0),n=(0,r.useCallback)(async()=>{try{l(!0);let e=await fetch("/cgi-bin/quecmanager/home/check_net.sh"),t=await e.json();s("ACTIVE"===t.connection?"Connected":"Disconnected"),l(!1)}catch(e){console.error("Error fetching data connection state:",e),s("Unknown"),l(!1)}},[]);return(0,r.useEffect)(()=>{n();let e=setInterval(n,3e4);return()=>clearInterval(e)},[n]),{dataConnectionState:e,refresh:(0,r.useCallback)(()=>{n()},[n]),isStateLoading:t}},ey=e=>{if(0===e)return"0 Bytes";let s=Math.floor(Math.log(e)/Math.log(1024));return parseFloat((e/Math.pow(1024,s)).toFixed(2))+" "+["Bytes","KB","MB","GB","TB"][s]},eS=()=>{let[e,s]=(0,r.useState)("0 Bytes"),[t,l]=(0,r.useState)("0 Bytes"),[n,a]=(0,r.useState)(""),i=e=>{var t,r;let n=Array.isArray(e)?e[e.length-1]:e;if(!n)return;a(n.datetime);let i=n.output.replace(/\r\\n/g,"\n").trim().split("\n").filter(e=>e.trim()),o=null===(t=i.find(e=>e.includes("+QGDCNT:")))||void 0===t?void 0:t.trim(),d=null===(r=i.find(e=>e.includes("+QGDNRCNT:")))||void 0===r?void 0:r.trim();if(!o||!d){console.error("Missing required data in response");return}let[c,m]=o.replace("+QGDCNT:","").split(",").map(e=>parseInt(e.trim())),[u,x]=d.replace("+QGDNRCNT:","").split(",").map(e=>parseInt(e.trim()));s(ey((m||0)+(u||0))),l(ey((c||0)+(x||0)))},o=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/fetch_data_usage.sh"),s=await e.json();i(s)}catch(e){console.error("Error fetching traffic stats:",e)}},[]);return(0,r.useEffect)(()=>{o();let e=setInterval(o,12e3);return()=>clearInterval(e)},[o]),{bytesSent:e,bytesReceived:t,lastUpdateTime:n,refresh:(0,r.useCallback)(()=>{o()},[o])}};var eA=t(23484);let eC=()=>{let[e,s]=(0,r.useState)(!1),[t,l]=(0,r.useState)(null),n=(e,s)=>{var t,l,r,n;let a=null===(l=e.split("\n")[1])||void 0===l?void 0:null===(t=l.split(":")[1])||void 0===t?void 0:t.split(",")[1].trim(),i=null===(n=s.split("\n")[1])||void 0===n?void 0:null===(r=n.split(":")[1])||void 0===r?void 0:r.split(",")[1].trim();return"1"===a||"1"===i?"Registered":"Not Registered"},a=(e,s)=>{var t,l,r,n;return(null===(l=e.split("\n")[1])||void 0===l?void 0:null===(t=l.split(":")[1])||void 0===t?void 0:t.split(",")[2].replace(/"/g,"").trim())===(null===(n=s.split("\n")[1])||void 0===n?void 0:null===(r=n.split(":")[1])||void 0===r?void 0:r.split(",")[2].replace(/"/g,"").trim())?"Enabled":"Disabled"},i=e=>{var s,t,l,r;let n=null===(t=e.split("\n")[1])||void 0===t?void 0:null===(s=t.split(":")[1])||void 0===s?void 0:s.split(",")[1].trim(),a=null===(r=e.split("\n")[2])||void 0===r?void 0:null===(l=r.split(":")[1])||void 0===l?void 0:l.split(",")[1].trim();return n&&"1"===n||a&&"1"===a?"Connected":"Disconnected"},o=e=>{try{var s,t,l,r;let n=e.trim().split("\n").map(e=>e.trim()),a=n.find(e=>e.includes("+QRSRP:")&&e.includes("LTE")),i=n.find(e=>e.includes("+QRSRP:")&&e.includes("NR5G")),o=[];a&&(o=null==a?void 0:null===(t=a.split(":")[1])||void 0===t?void 0:null===(s=t.split(","))||void 0===s?void 0:s.slice(0,4).map(e=>e.trim()).filter(e=>!isNaN(parseInt(e))).map(e=>parseInt(e)));let d=[];if(i&&(d=null==i?void 0:null===(r=i.split(":")[1])||void 0===r?void 0:null===(l=r.split(","))||void 0===l?void 0:l.slice(0,4).map(e=>e.trim()).filter(e=>!isNaN(parseInt(e))).map(e=>parseInt(e))),o=o.filter(e=>-32768!==e),d=d.filter(e=>-32768!==e),o=o.filter(e=>-140!==e),d=d.filter(e=>-140!==e),o.length>0){let e=o.reduce((e,s)=>e+s,0)/o.length;if(d.length>0){let s=d.reduce((e,s)=>e+s,0)/d.length;return(e+s)/2<-100?"Poor":"Good"}return e<-100?"Poor":"Good"}if(d.length>0)return d.reduce((e,s)=>e+s,0)/d.length<-100?"Poor":"Good";return"N/A"}catch(e){return console.error("Error processing cell signal:",e),"N/A"}},d=e=>{let s=e.split("\n").filter(e=>e.startsWith("+QTEMP:")).map(e=>parseInt(e.split(":")[1].split(",")[1].replace(/"/g,"").trim())).filter(e=>e>=0&&e<99);return s.reduce((e,s)=>e+s,0)/s.length<50?"Normal":"High"},c=e=>{var s,t,l,r,n,a;let i=null===(t=e.split("\n")[1])||void 0===t?void 0:null===(s=t.split(":")[1])||void 0===s?void 0:s.split(",")[1].trim(),o=null===(r=e.split("\n")[2])||void 0===r?void 0:null===(l=r.split(":")[1])||void 0===l?void 0:l.split(",")[1].trim(),d=null===(a=e.split("\n")[3])||void 0===a?void 0:null===(n=a.split(":")[1])||void 0===n?void 0:n.split(",")[1].trim(),c=["0"!==i?"EMM: ".concat(i):null,"0"!==o?"ESM: ".concat(o):null,"0"!==d?"NRMM: ".concat(d):null].filter(Boolean);return c.length>0?c.join(", "):"None"},m=e=>{var s,t,l,r,n,a;let i=null===(t=e.split("\n")[1])||void 0===t?void 0:null===(s=t.split(":")[1])||void 0===s?void 0:s.split(",")[1].trim(),o=null===(r=e.split("\n")[2])||void 0===r?void 0:null===(l=r.split(":")[1])||void 0===l?void 0:l.split(",")[1].trim(),d=null===(a=e.split("\n")[3])||void 0===a?void 0:null===(n=a.split(":")[1])||void 0===n?void 0:n.split(",")[1].trim(),c={};return i&&"0"!==i&&(c.emm={code:i,description:eA.ZK[i]||"Unknown EMM cause"}),o&&"0"!==o&&(c.esm={code:o,description:eA.jq[o]||"Unknown ESM cause"}),d&&"0"!==d&&(c.nrmm={code:d,description:eA.QI[d]||"Unknown NRMM cause"}),Object.keys(c).length>0?c:null};return{isRunningDiagnostics:e,runDiagnosticsData:t,startDiagnostics:async()=>{s(!0),new Date().toISOString();try{let e=await fetch("/cgi-bin/quecmanager/at_cmd/fetch_data.sh?set=6"),s=await e.json(),t={netRegistration:n(s[0].response,s[1].response),simState:s[2].response.split("\n")[1].split(":")[1].trim(),manualAPN:a(s[3].response,s[4].response),wanIP:i(s[5].response),cellSignal:o(s[6].response),modemTemp:d(s[7].response),netReject:c(s[8].response),rejectCauses:m(s[8].response)};return l(t),t}catch(e){throw console.error("Error running diagnostics:",e),e}finally{s(!1)}}}};var eI=t(80159),ek=t(12607),eE=t(10964),eT=t(89463),eR=t(90304),eP=t(622),eM=t(8782),ez=t(20633),eD=t(99312),eU=t(7778),eL=t(25262),eG=t(91994),eB=t(71834);let eF=e=>{if(null==e)return"N/A";let s=["B","KB","MB","GB"],t=e,l=0;for(;t>=1024&&l{if(null==e)return"N/A";let s=["bps","Kbps","Mbps","Gbps"],t=8*e,l=0;for(;t>=1e3&&l{var e,s,t,i;let{toast:d}=(0,n.dj)(),[c,m]=(0,r.useState)(null),[u,x]=(0,r.useState)(null),[h,p]=(0,r.useState)(null),[g,f]=(0,r.useState)(!1),[v,j]=(0,r.useState)(!1),[N,w]=(0,r.useState)(!1),[b,y]=(0,r.useState)(0),[S,A]=(0,r.useState)(!1),[C,I]=(0,r.useState)(!1),k=(0,r.useRef)(null),E=(0,r.useRef)(null),T=(0,r.useRef)(!1),R=(0,r.useCallback)(()=>{m(null),x(null),p(null),f(!1),j(!1),w(!1),y(0),E.current=null,T.current=!1,k.current&&(clearInterval(k.current),k.current=null)},[]);(0,r.useEffect)(()=>{let e=sessionStorage.getItem("speedtestData");if(e&&m(JSON.parse(e)),g&&!v){A(!0);let e=setTimeout(()=>{A(!1)},1e4);return()=>clearTimeout(e)}},[g,v]),(0,r.useEffect)(()=>()=>{k.current&&clearInterval(k.current)},[]);let P=(0,r.useCallback)(async()=>{try{let e=await fetch("/cgi-bin/quecmanager/home/speedtest/speedtest_status.sh");if(!e.ok)throw Error("Failed to fetch status: ".concat(e.status));let s=await e.json();if("not_running"===s.status){v&&(p("Test ended unexpectedly"),j(!1)),k.current&&(clearInterval(k.current),k.current=null);return}if(s.type)try{switch(s.type){case"ping":x("ping"),s.ping&&"number"==typeof s.ping.progress&&y(s.ping.progress);break;case"download":case"upload":"ping"!==u&&x(s.type);break;case"result":if(s.download&&s.upload&&s.ping){E.current=s,m(s),T.current=!0,f(!0),j(!1),sessionStorage.setItem("speedtestData",JSON.stringify(s)),k.current&&(clearInterval(k.current),k.current=null);return}console.warn("Incomplete result data received:",s)}}catch(e){console.error("Error processing speedtest data:",e)}if(T.current){k.current&&(clearInterval(k.current),k.current=null);return}(s.type&&(s.download||s.upload||s.ping)||s.isp)&&(E.current=s,m(s))}catch(e){console.error("Error polling speedtest status:",e),v&&(p("Failed to get speedtest status"),j(!1),k.current&&(clearInterval(k.current),k.current=null))}},[u,v]),M=(0,r.useCallback)(async()=>{if(!S)try{if(R(),w(!0),j(!0),I(!0),!(await fetch("/cgi-bin/quecmanager/home/speedtest/start_speedtest.sh",{method:"GET"})).ok)throw Error("Failed to start speedtest");k.current=setInterval(P,300),w(!1)}catch(e){console.error("Speedtest start error:",e),p(e instanceof Error?"Failed to start speedtest: ".concat(e.message):"Failed to start speedtest"),w(!1),j(!1)}},[S,R,P]);return(0,l.jsxs)(a.Zp,{children:[(0,l.jsx)(a.aR,{children:(0,l.jsx)(a.ZB,{children:"Network Speedtest"})}),(0,l.jsxs)(a.Wu,{className:"flex flex-col gap-6 p-4 items-center justify-center",children:[(0,l.jsxs)(D.lG,{open:C,onOpenChange:I,children:[(0,l.jsx)(D.zM,{asChild:!0,children:(0,l.jsxs)("div",{className:"relative flex flex-col items-center justify-center",children:[(0,l.jsx)(eB.A,{color:"#5420ab",size:192,className:"-top-8 -left-8 absolute",style:{zIndex:1}}),(0,l.jsx)(B.A,{className:"size-32 z-10 text-primary cursor-pointer hover:text-primary/80 transition-colors duration-300",onClick:e=>{S||(e.preventDefault(),M())}})]})}),(0,l.jsxs)(D.Cf,{className:"sm:max-w-[800px] max-w-sm mx-auto",children:[(0,l.jsx)(D.c7,{children:(0,l.jsxs)(D.L3,{className:"flex items-center",children:[(0,l.jsx)(eE.A,{className:"mr-2"})," Network Speedtest",g&&!v&&(0,l.jsx)(o.E,{variant:"outline",className:"ml-2 hidden md:block",children:"Complete"}),v&&(0,l.jsx)(o.E,{variant:"outline",className:"ml-2 bg-primary/10",children:"Running..."})]})}),(0,l.jsx)("div",{className:"lg:max-w-full mx-auto min-w-sm py-6",children:(()=>{var e,s,t,r,n,i,o,d,m,x,p,f,j,w,y,S,A,C,I,k,E,T,P,z,D,U,L,G,B,F,_,O,q,Z,H,Q,W,$,K,V,J,Y,X,ee,es,et,el,er,en;let ea=g||c&&c.download&&c.upload&&c.ping&&!v;return ea?c&&c.download&&c.upload&&c.ping?(0,l.jsxs)("div",{className:"grid gap-4 w-full min-w-sm",children:[(0,l.jsxs)(a.Zp,{children:[(0,l.jsx)(a.aR,{children:(0,l.jsxs)(a.ZB,{className:"flex items-center",children:[(0,l.jsx)(eE.A,{className:"mr-4 text-violet-600"})," Speedtest Result"]})}),(0,l.jsx)(a.Wu,{className:"lg:py-12 py-6 min-w-sm w-full",children:(0,l.jsxs)("div",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-4 lg:gap-y-0 gap-y-8 gap-x-8",children:[(0,l.jsxs)("div",{className:"grid gap-1 place-items-center",children:[(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(eT.A,{className:"text-green-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"font-semibold",children:"Download"})]}),(0,l.jsx)("h1",{className:"text-[3rem] font-semibold text-center antialiased leading-tight",children:e_(null===(e=c.download)||void 0===e?void 0:e.bandwidth)}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eR.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Latency"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(E=null===(r=c.download)||void 0===r?void 0:null===(t=r.latency)||void 0===t?void 0:null===(s=t.iqm)||void 0===s?void 0:s.toFixed(2))&&void 0!==E?E:"N/A"," ","ms"]})]})]}),(0,l.jsxs)("div",{className:"grid gap-1.5 place-items-center",children:[(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(eP.A,{className:"text-violet-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"font-semibold",children:"Upload"})]}),(0,l.jsx)("h1",{className:"text-[3rem] font-semibold text-center antialiased leading-tight",children:e_(null===(n=c.upload)||void 0===n?void 0:n.bandwidth)}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eR.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Latency"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(T=null===(d=c.upload)||void 0===d?void 0:null===(o=d.latency)||void 0===o?void 0:null===(i=o.iqm)||void 0===i?void 0:i.toFixed(2))&&void 0!==T?T:"N/A"," ","ms"]})]})]})]})}),(0,l.jsxs)(a.wL,{className:"flex items-center justify-between mx-auto",children:[(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eM.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Ping"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(P=null===(x=c.ping)||void 0===x?void 0:null===(m=x.latency)||void 0===m?void 0:m.toFixed(2))&&void 0!==P?P:"N/A"," ms"]})]}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(ez.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Jitter"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(z=null===(f=c.ping)||void 0===f?void 0:null===(p=f.jitter)||void 0===p?void 0:p.toFixed(2))&&void 0!==z?z:"N/A"," ms"]})]})]})]}),(null===(j=c.result)||void 0===j?void 0:j.url)&&(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2 mt-4 md:hidden",children:[(0,l.jsx)(eD.A,{className:"text-blue-600 size-4"}),(0,l.jsx)("a",{href:c.result.url,target:"_blank",rel:"noopener noreferrer",className:"font-medium text-blue-600 hover:underline",children:"View Full Result Online"})]}),(0,l.jsxs)(a.Zp,{className:"hidden md:block",children:[(0,l.jsx)(a.aR,{children:(0,l.jsxs)(a.ZB,{className:"flex items-center",children:[(0,l.jsx)(eU.A,{className:"mr-4 text-blue-600"})," Connection & Server Details"]})}),(0,l.jsx)(a.Wu,{children:(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"ISP:"}),(0,l.jsx)("p",{children:c.isp||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Internal IP:"}),(0,l.jsx)("p",{children:(null===(w=c.interface)||void 0===w?void 0:w.internalIp)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"External IP:"}),(0,l.jsx)("p",{children:(null===(y=c.interface)||void 0===y?void 0:y.externalIp)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Server Name:"}),(0,l.jsx)("p",{children:(null===(S=c.server)||void 0===S?void 0:S.name)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Location:"}),(0,l.jsx)("p",{children:(null===(A=c.server)||void 0===A?void 0:A.location)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Country:"}),(0,l.jsx)("p",{children:(null===(C=c.server)||void 0===C?void 0:C.country)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Server IP:"}),(0,l.jsx)("p",{children:(null===(I=c.server)||void 0===I?void 0:I.host)||"N/A"})]}),(null===(k=c.result)||void 0===k?void 0:k.url)&&(0,l.jsxs)("div",{className:"flex items-center gap-x-2 mt-4",children:[(0,l.jsx)(eD.A,{className:"text-blue-600 size-4"}),(0,l.jsx)("a",{href:c.result.url,target:"_blank",rel:"noopener noreferrer",className:"font-medium text-blue-600 hover:underline",children:"View Full Result Online"})]})]})})]})]}):(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,l.jsx)(ek.A,{className:"text-amber-500 lg:size-16 size-8"}),(0,l.jsx)("h3",{className:"text-xl font-semibold",children:"Incomplete Test Results"}),(0,l.jsxs)("p",{className:"text-sm text-gray-500 text-center",children:["The test didn't complete properly. Some data may be missing.",(0,l.jsx)("span",{className:"underline cursor-pointer ml-2 block",onClick:()=>{R(),M()},children:"Run the test again"})]})]}):h?(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,l.jsx)(ek.A,{className:"text-rose-600 lg:size-48 size-16 animate-pulse"}),(0,l.jsx)("h3",{className:"text-xl font-semibold",children:"Network Speedtest Failed"}),(0,l.jsxs)("p",{className:"text-sm text-gray-500",children:["Something went wrong while running the speedtest.",(0,l.jsx)("span",{className:"underline cursor-pointer ml-2",onClick:()=>{R(),M()},children:"Please try again."})]})]}):N||v&&!c?(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,l.jsx)(eL.A,{className:"text-primary lg:size-48 size-16 animate-pulse"}),(0,l.jsx)("h3",{className:"md:text-xl text-lg font-semibold",children:"Initiating Network Speedtest"}),(0,l.jsx)("p",{className:"text-sm text-gray-500 text-center",children:"Locating and establishing a connection to a server. Please wait..."})]}):"ping"===u?(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-6 transition-all duration-500 ease-in-out",children:[(0,l.jsxs)("div",{className:"relative",children:[(0,l.jsx)(eM.A,{className:"text-blue-500 size-16 animate-pulse drop-shadow-sm"}),(0,l.jsx)("div",{className:"absolute -inset-2 bg-blue-500/10 rounded-full animate-ping"})]}),(0,l.jsxs)("div",{className:"text-center space-y-2",children:[(0,l.jsx)("h3",{className:"text-xl font-semibold text-blue-600 transition-colors duration-300",children:"Testing Ping Latency"}),(0,l.jsx)("p",{className:"text-sm text-gray-500",children:"Measuring network responsiveness..."})]}),(0,l.jsxs)("div",{className:"w-full max-w-md space-y-2",children:[(0,l.jsx)("div",{className:"w-full bg-gray-200 rounded-full h-3 overflow-hidden",children:(0,l.jsx)("div",{className:"bg-gradient-to-r from-blue-400 to-blue-600 h-3 rounded-full transition-all duration-300 ease-out",style:{width:"".concat(100*(b||0),"%")}})}),(0,l.jsx)("div",{className:"text-center",children:(0,l.jsxs)("span",{className:"text-sm text-gray-600",children:[Math.round(100*(b||0)),"% complete"]})})]}),(null==c?void 0:c.ping)&&(0,l.jsxs)("div",{className:"text-center space-y-2 animate-in fade-in duration-500",children:[(0,l.jsxs)("div",{className:"text-3xl font-bold text-blue-600 tabular-nums transition-all duration-200",children:[c.ping.latency.toFixed(1)," ms"]}),c.ping.jitter&&(0,l.jsxs)("div",{className:"text-sm text-gray-500",children:["Jitter: ",c.ping.jitter.toFixed(1)," ms"]})]}),(0,l.jsx)("div",{className:"text-center opacity-60 transition-opacity duration-500",children:(0,l.jsxs)("div",{className:"flex items-center justify-center space-x-2 text-gray-400",children:[(0,l.jsx)(eT.A,{className:"size-4"}),(0,l.jsx)("span",{className:"text-xs",children:"Download test coming next..."})]})})]}):"download"===u?(0,l.jsxs)("div",{className:"space-y-6 transition-all duration-500 ease-in-out",children:[(null==c?void 0:c.ping)&&(0,l.jsx)("div",{className:"bg-blue-50 rounded-lg p-3 transition-all duration-500",children:(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(eM.A,{className:"text-blue-500 size-4"}),(0,l.jsx)("span",{className:"text-sm font-medium text-blue-700",children:"Ping Complete"})]}),(0,l.jsxs)("div",{className:"text-sm font-bold text-blue-600 tabular-nums",children:[c.ping.latency.toFixed(1)," ms"]})]})}),(0,l.jsxs)("div",{className:"text-center space-y-4",children:[(0,l.jsxs)("div",{className:"relative flex items-center justify-center",children:[(0,l.jsx)(eT.A,{className:"text-green-500 size-16 animate-pulse drop-shadow-sm"}),(0,l.jsx)("div",{className:"absolute size-24 bg-green-500/10 rounded-full animate-ping -top-4 "})]}),(0,l.jsx)("div",{className:"space-y-2",children:(0,l.jsx)("h3",{className:"text-xl font-semibold text-green-600 transition-colors duration-300",children:"Testing Download Speed"})}),(0,l.jsxs)("div",{className:"space-y-2",children:[(0,l.jsx)("div",{className:"text-4xl lg:text-5xl font-bold text-green-600 tabular-nums transition-all duration-200 tracking-tight",children:(null==c?void 0:null===(D=c.download)||void 0===D?void 0:D.bandwidth)?e_(c.download.bandwidth):"0 Mbps"}),(null==c?void 0:c.download)&&(0,l.jsxs)("div",{className:"space-y-1 text-sm text-gray-500",children:[(0,l.jsxs)("div",{className:"tabular-nums",children:[eF(c.download.bytes)," transferred"]}),c.download.elapsed&&(0,l.jsxs)("div",{className:"tabular-nums",children:[(c.download.elapsed/1e3).toFixed(1),"s elapsed"]})]})]}),(0,l.jsx)("div",{className:"text-center opacity-60 transition-opacity duration-500",children:(0,l.jsxs)("div",{className:"flex items-center justify-center space-x-2 text-gray-400",children:[(0,l.jsx)(eP.A,{className:"size-4"}),(0,l.jsx)("span",{className:"text-xs",children:"Upload test coming next..."})]})})]})]}):"upload"===u?(0,l.jsx)("div",{className:"space-y-6 transition-all duration-500 ease-in-out",children:(0,l.jsxs)("div",{className:"text-center space-y-4",children:[(0,l.jsxs)("div",{className:"relative flex items-center justify-center",children:[(0,l.jsx)(eP.A,{className:"text-violet-500 size-16 animate-pulse drop-shadow-sm"}),(0,l.jsx)("div",{className:"absolute size-24 bg-violet-500/10 rounded-full animate-ping -top-4 "})]}),(0,l.jsxs)("div",{className:"space-y-2",children:[(0,l.jsx)("h3",{className:"text-xl font-semibold text-violet-600 transition-colors duration-300",children:"Testing Upload Speed"}),(0,l.jsx)("p",{className:"text-sm text-gray-500",children:"Uploading test data..."})]}),(0,l.jsxs)("div",{className:"space-y-2",children:[(0,l.jsx)("div",{className:"text-4xl lg:text-5xl font-bold text-violet-600 tabular-nums transition-all duration-200 tracking-tight",children:(null==c?void 0:null===(U=c.upload)||void 0===U?void 0:U.bandwidth)?e_(c.upload.bandwidth):"0 Mbps"}),(null==c?void 0:c.upload)&&(0,l.jsxs)("div",{className:"space-y-1 text-sm text-gray-500",children:[(0,l.jsxs)("div",{className:"tabular-nums",children:[eF(c.upload.bytes)," transferred"]}),c.upload.elapsed&&(0,l.jsxs)("div",{className:"tabular-nums",children:[(c.upload.elapsed/1e3).toFixed(1),"s elapsed"]})]})]})]})}):ea?c&&c.download&&c.upload&&c.ping?(0,l.jsxs)("div",{className:"grid gap-4 w-full min-w-sm",children:[(0,l.jsxs)(a.Zp,{children:[(0,l.jsx)(a.aR,{children:(0,l.jsxs)(a.ZB,{className:"flex items-center",children:[(0,l.jsx)(eE.A,{className:"mr-4 text-violet-600"})," Speedtest Result"]})}),(0,l.jsx)(a.Wu,{className:"lg:py-12 py-6 min-w-sm w-full",children:(0,l.jsxs)("div",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-4 lg:gap-y-0 gap-y-8 gap-x-8",children:[(0,l.jsxs)("div",{className:"grid gap-1 place-items-center",children:[(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(eT.A,{className:"text-green-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"font-semibold",children:"Download"})]}),(0,l.jsx)("h1",{className:"text-[3rem] font-semibold text-center antialiased leading-tight",children:e_(null===(L=c.download)||void 0===L?void 0:L.bandwidth)}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eR.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Latency"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(et=null===(F=c.download)||void 0===F?void 0:null===(B=F.latency)||void 0===B?void 0:null===(G=B.iqm)||void 0===G?void 0:G.toFixed(2))&&void 0!==et?et:"N/A"," ","ms"]})]})]}),(0,l.jsxs)("div",{className:"grid gap-1.5 place-items-center",children:[(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(eP.A,{className:"text-violet-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"font-semibold",children:"Upload"})]}),(0,l.jsx)("h1",{className:"text-[3rem] font-semibold text-center antialiased leading-tight",children:e_(null===(_=c.upload)||void 0===_?void 0:_.bandwidth)}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eR.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Latency"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(el=null===(Z=c.upload)||void 0===Z?void 0:null===(q=Z.latency)||void 0===q?void 0:null===(O=q.iqm)||void 0===O?void 0:O.toFixed(2))&&void 0!==el?el:"N/A"," ","ms"]})]})]})]})}),(0,l.jsxs)(a.wL,{className:"flex items-center justify-between mx-auto",children:[(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(eM.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Ping"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(er=null===(Q=c.ping)||void 0===Q?void 0:null===(H=Q.latency)||void 0===H?void 0:H.toFixed(2))&&void 0!==er?er:"N/A"," ms"]})]}),(0,l.jsxs)("div",{className:"grid gap-0.5 lg:flex lg:items-center lg:space-x-1",children:[(0,l.jsxs)("div",{className:"flex items-center justify-center gap-x-2",children:[(0,l.jsx)(ez.A,{className:"text-gray-600 lg:size-6 size-4"}),(0,l.jsx)("p",{className:"text-foreground-muted text-sm text-center",children:"Jitter"})]}),(0,l.jsxs)("p",{className:"text-foreground-muted text-sm text-center",children:[null!==(en=null===($=c.ping)||void 0===$?void 0:null===(W=$.jitter)||void 0===W?void 0:W.toFixed(2))&&void 0!==en?en:"N/A"," ms"]})]})]})]}),(0,l.jsxs)(a.Zp,{children:[(0,l.jsx)(a.aR,{children:(0,l.jsxs)(a.ZB,{className:"flex items-center",children:[(0,l.jsx)(eU.A,{className:"mr-4 text-blue-600"})," Connection & Server Details"]})}),(0,l.jsx)(a.Wu,{children:(0,l.jsxs)("div",{className:"grid gap-2",children:[(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"ISP:"}),(0,l.jsx)("p",{children:c.isp||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Internal IP:"}),(0,l.jsx)("p",{children:(null===(K=c.interface)||void 0===K?void 0:K.internalIp)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"External IP:"}),(0,l.jsx)("p",{children:(null===(V=c.interface)||void 0===V?void 0:V.externalIp)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Server Name:"}),(0,l.jsx)("p",{children:(null===(J=c.server)||void 0===J?void 0:J.name)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Location:"}),(0,l.jsx)("p",{children:(null===(Y=c.server)||void 0===Y?void 0:Y.location)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Country:"}),(0,l.jsx)("p",{children:(null===(X=c.server)||void 0===X?void 0:X.country)||"N/A"})]}),(0,l.jsxs)("div",{className:"grid grid-cols-2 grid-flow-row gap-2 truncate",children:[(0,l.jsx)("p",{className:"font-medium",children:"Server IP:"}),(0,l.jsx)("p",{children:(null===(ee=c.server)||void 0===ee?void 0:ee.host)||"N/A"})]}),(null===(es=c.result)||void 0===es?void 0:es.url)&&(0,l.jsxs)("div",{className:"flex items-center gap-x-2 mt-4",children:[(0,l.jsx)(eD.A,{className:"text-blue-600 size-4"}),(0,l.jsx)("a",{href:c.result.url,target:"_blank",rel:"noopener noreferrer",className:"font-medium text-blue-600 hover:underline",children:"View Full Result Online"})]})]})})]})]}):(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,l.jsx)(ek.A,{className:"text-amber-500 lg:size-16 size-8"}),(0,l.jsx)("h3",{className:"text-xl font-semibold",children:"Incomplete Test Results"}),(0,l.jsxs)("p",{className:"text-sm text-gray-500 text-center",children:["The test didn't complete properly. Some data may be missing.",(0,l.jsx)("span",{className:"underline cursor-pointer ml-2 block",onClick:()=>{R(),M()},children:"Run the test again"})]})]}):(0,l.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,l.jsx)(eG.A,{className:"text-primary size-8 animate-spin"}),(0,l.jsx)("p",{className:"text-sm text-gray-500",children:"Please wait while the test is running..."})]})})()}),(0,l.jsx)(D.Es,{className:"flex justify-between gap-4",children:g?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("div",{children:(0,l.jsxs)(z.$,{onClick:()=>{S?d({title:"Please wait",description:"Cooldown period active"}):(R(),M())},variant:"outline",disabled:S,children:[(0,l.jsx)(eG.A,{className:"h-4 w-4"}),"Run Again"]})}),(0,l.jsx)(z.$,{onClick:()=>I(!1),children:"Close"})]}):(0,l.jsx)(l.Fragment,{children:v?(0,l.jsx)(z.$,{onClick:()=>{R(),I(!1)},variant:"destructive",children:"Cancel Test"}):(0,l.jsx)(z.$,{onClick:()=>I(!1),children:"Close"})})})]})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)(a.BT,{className:"relative flex flex-col items-center justify-center",children:S?"Please wait 10 seconds before starting another test.":v?"Test in progress...":"Run a speed test to check your internet connection."}),c?(0,l.jsx)("div",{className:"mt-4",children:(0,l.jsx)("div",{className:"relative flex flex-col items-center justify-center",children:(0,l.jsxs)("div",{className:"grid grid-cols-3 grid-flow-row",children:[(0,l.jsxs)("div",{className:"flex items-center mx-2",children:[(0,l.jsx)(eT.A,{className:"text-green-500 size-4 mr-1"}),(null==c?void 0:c.download)?"".concat(e_(null==c?void 0:null===(e=c.download)||void 0===e?void 0:e.bandwidth)):"N/A"]}),(0,l.jsxs)("div",{className:"flex items-center mx-2",children:[(0,l.jsx)(eP.A,{className:"text-violet-500 size-4 mr-1"}),(null==c?void 0:c.upload)?"".concat(e_(null==c?void 0:null===(s=c.upload)||void 0===s?void 0:s.bandwidth)):"N/A"]}),(0,l.jsxs)("div",{className:"flex items-center mx-2",children:[(0,l.jsx)(eM.A,{className:"text-gray-600 size-4 mr-1"}),(null==c?void 0:c.ping)?"".concat(null==c?void 0:null===(i=c.ping)||void 0===i?void 0:null===(t=i.latency)||void 0===t?void 0:t.toFixed(2)," ms"):"N/A"]})]})})}):v?(0,l.jsx)("p",{className:"text-sm text-gray-500 text-center",children:'"Test in progress..."'}):(0,l.jsx)("p",{className:"text-sm text-gray-500 text-center",children:'"Previous data not available."'})]})]})]})};var eq=t(88926);let eZ=e=>{let{data:s,isLoading:t,isPublicIPLoading:r=!1,hideSensitiveData:n}=e;return(0,l.jsx)(a.Zp,{className:"md:py-6 md:px-6 py-6 px-4 ",children:(0,l.jsxs)("div",{className:"grid lg:grid-cols-5 grid-cols-1 grid-flow-row gap-4",children:[(0,l.jsxs)("div",{className:"grid place-items-center gap-1.5",children:[(0,l.jsx)("h2",{className:"font-semibold",children:"Public IPv4 Address"}),t||r?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):n?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{children:null==s?void 0:s.networkAddressing.publicIPv4})]}),(0,l.jsxs)("div",{className:"grid place-items-center gap-1.5",children:[(0,l.jsx)("h2",{className:"font-semibold",children:"Cellular IPv4 Address"}),(0,l.jsx)("div",{className:"flex items-center gap-x-2",children:t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):n?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{children:null==s?void 0:s.networkAddressing.cellularIPv4})})]}),(0,l.jsxs)("div",{className:"grid place-items-center gap-1.5",children:[(0,l.jsx)("h2",{className:"font-semibold",children:"Cellular IPv6 Address"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):n?(0,l.jsx)("div",{className:"border-none bg-gray-600 rounded-md h-5 md:w-36 w-24"}):(0,l.jsx)("p",{children:null==s?void 0:s.networkAddressing.cellularIPv6})]}),(0,l.jsxs)("div",{className:"grid place-items-center gap-1.5",children:[(0,l.jsx)("h2",{className:"font-semibold",children:"Carrier Primary DNS"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{children:null==s?void 0:s.networkAddressing.carrierPrimaryDNS}),(0,l.jsx)(g.ZI,{children:(0,l.jsx)("p",{children:null==s?void 0:s.networkAddressing.rawCarrierPrimaryDNS})})]})})]}),(0,l.jsxs)("div",{className:"grid place-items-center gap-1.5",children:[(0,l.jsx)("h2",{className:"font-semibold",children:"Carrier Secondary DNS"}),t?(0,l.jsx)(i.E,{className:"h-4 w-[100px]"}):(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{children:null==s?void 0:s.networkAddressing.carrierSecondaryDNS}),(0,l.jsx)(g.ZI,{children:(0,l.jsx)("p",{children:null==s?void 0:s.networkAddressing.rawCarrierSecondaryDNS})})]})})]})]})})};var eH=t(99015),eQ=t(13624);let eW=e=>{let{lteTimeAdvance:s="0",nrTimeAdvance:t="0",isLoading:n=!1,networkType:o="Unknown"}=e,[d,c]=(0,r.useState)("km"),[m,u]=(0,r.useState)(!0);(0,r.useEffect)(()=>{(async()=>{try{u(!0);let e=await fetch("/cgi-bin/quecmanager/settings/measurement_units.sh"),s=await e.json();"success"===s.status&&s.data&&c(s.data.unit)}catch(e){console.error("Error fetching measurement unit:",e),c("km")}finally{u(!1)}})()},[]);let x=s&&"Unknown"!==s&&"-"!==s&&parseInt(s,10)||0,h=t&&"Unknown"!==t&&"-"!==t&&parseInt(t,10)||0,p=x>0?(e=>((e<0||e>1282)&&(console.warn("Invalid LTE TA value: ".concat(e,", using 0 instead")),e=0),1/3072e4*(16*e)*3e8/2/1e3))(x):0,f=h>0?(e=>(e<0&&(console.warn("Invalid negative NTA value: ".concat(e,", using 0 instead")),e=0),3e8*e*(1/196608e4)/2/1e3))(h):0,v=e=>.621371*e,j=e=>{if(0===e)return"-";if("mi"===d){let s=v(e);if(s<1){let e=5280*s;return"".concat(e.toFixed(0)," ft")}return"".concat(s.toFixed(2)," mi")}return e<1?"".concat((1e3*e).toFixed(0)," m"):"".concat(e.toFixed(2)," km")};return(0,l.jsxs)(a.Zp,{className:"overflow-hidden",children:[(0,l.jsx)(a.aR,{children:(0,l.jsx)(a.ZB,{children:"Distance to Cell Tower"})}),(0,l.jsx)(a.Wu,{children:n||m?(0,l.jsxs)("div",{className:"space-y-3",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(eH.A,{className:"h-4 w-4 mr-1.5"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:"LTE"})]}),(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(i.E,{className:"h-4 w-16 mr-2"}),(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{asChild:!0,children:(0,l.jsx)(eQ.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,l.jsx)(g.ZI,{children:(0,l.jsx)(i.E,{className:"h-4 w-16 mr-2"})})]})})]})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(eH.A,{className:"h-4 w-4 mr-1.5"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:"NR5G"})]}),(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(i.E,{className:"h-4 w-16 mr-2"}),(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{asChild:!0,children:(0,l.jsx)(eQ.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,l.jsx)(g.ZI,{children:(0,l.jsx)(i.E,{className:"h-4 w-16 mr-2"})})]})})]})]})]}):(0,l.jsxs)("div",{className:"space-y-3",children:[x>0&&(0,l.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(eH.A,{className:"h-4 w-4 mr-1.5"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:"LTE"})]}),(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("p",{className:"mr-2",children:j(p)}),(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{asChild:!0,children:(0,l.jsx)(eQ.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,l.jsx)(g.ZI,{children:(0,l.jsxs)("p",{className:"max-w-xs text-xs mr-2",children:["LTE TA ",x]})})]})})]})]}),h>0&&(0,l.jsxs)("div",{className:"flex items-center justify-between mb-1",children:[(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)(eH.A,{className:"h-4 w-4 mr-1.5"}),(0,l.jsx)("span",{className:"text-sm font-medium",children:"NR5G"})]}),(0,l.jsxs)("div",{className:"flex items-center",children:[(0,l.jsx)("p",{className:"mr-2",children:j(f)}),(0,l.jsx)(g.TooltipProvider,{children:(0,l.jsxs)(g.m_,{children:[(0,l.jsx)(g.k$,{asChild:!0,children:(0,l.jsx)(eQ.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,l.jsx)(g.ZI,{children:(0,l.jsxs)("p",{className:"max-w-xs text-xs mr-2",children:["NTA ",h]})})]})})]})]}),!x&&!h&&(0,l.jsx)("div",{className:"h-16 flex items-center justify-center",children:(0,l.jsx)("p",{className:"text-muted-foreground text-sm",children:"No timing advance data available"})})]})})]})},e$=()=>{var e,s,t;let{toast:a}=(0,n.dj)(),[i,o]=(0,r.useState)(!1),[c,m]=(0,r.useState)(!1),{data:u,isLoading:x,refresh:g,isPublicIPLoading:v}=ew(),{dataConnectionState:j,isStateLoading:N,refresh:w}=eb(),{isRunningDiagnostics:b,runDiagnosticsData:y,startDiagnostics:S}=eC(),{bytesSent:A,bytesReceived:I,refresh:k}=eS(),E=async()=>{try{var e,s;let t=await (0,eq.a)("AT+QUIMSLOT?"),l=null===(e=t.response)||void 0===e?void 0:e.raw_output.split("\n")[1].split(":")[1].trim(),r=await (0,eq.a)("1"===l?"AT+QUIMSLOT=2":"AT+QUIMSLOT=1");if("error"===r.status||(null===(s=r.response)||void 0===s?void 0:s.status)==="error")throw Error("Failed to change SIM slot");a({title:"SIM Slot Changed",description:"The SIM slot has been changed successfully"}),setTimeout(async()=>{await (0,eq.a)("AT+COPS=2"),setTimeout(async()=>{let e=await (0,eq.a)("AT+COPS=0");if("error"===e.status)throw Error("Failed to reconnect to the network");a({title:"Network Reconnected",description:"The device has been reconnected to the network"})},2e3)},3e3),setTimeout(R,3e3)}catch(e){console.error("Error changing SIM slot:",e),a({variant:"destructive",title:"SIM Slot Change Failed",description:e instanceof Error?e.message:"Failed to change the SIM slot"})}},R=(0,r.useCallback)(async()=>{try{await Promise.all([g(),w(),k()])}catch(e){console.error("Error refreshing data:",e),a({variant:"destructive",title:"Refresh Failed",description:"Failed to refresh the data"})}},[g,w,k]),[P,O]=(0,r.useState)([]),Z=async()=>{try{await S()}catch(e){a({variant:"destructive",title:"Diagnostics Failed",description:"Failed to run diagnostics"})}};return(0,r.useEffect)(()=>{if(u&&u.currentBands){var e;let s=null===(e=u.currentBands.id)||void 0===e?void 0:e.map((e,s)=>{var t,l,r,n,a,i,o;return{id:e,bandNumber:(null===(t=u.currentBands.bandNumber)||void 0===t?void 0:t[s])||"N/A",earfcn:(null===(l=u.currentBands.earfcn)||void 0===l?void 0:l[s])||"N/A",bandwidth:(null===(r=u.currentBands.bandwidth)||void 0===r?void 0:r[s])||"N/A",pci:(null===(n=u.currentBands.pci)||void 0===n?void 0:n[s])||"N/A",rsrp:(null===(a=u.currentBands.rsrp)||void 0===a?void 0:a[s])||"N/A",rsrq:(null===(i=u.currentBands.rsrq)||void 0===i?void 0:i[s])||"N/A",sinr:(null===(o=u.currentBands.sinr)||void 0===o?void 0:o[s])||"N/A"}});s&&O(s)}},[u]),(0,r.useEffect)(()=>{var e,s;(null==u?void 0:null===(s=u.simCard)||void 0===s?void 0:null===(e=s.state)||void 0===e?void 0:e.toLowerCase().includes("failed"))&&a({title:"SMS_Tool failed to acquire token",description:"The system will attempt to recover automatically. If this issue persists, please logout and log back in or restart the device.",variant:"destructive"}),x||(null==u?void 0:u.simCard.state)!=="Not Inserted"||o(!0)},[u,x]),(0,l.jsxs)("div",{className:"grid xl:gap-y-10 gap-y-8 gap-4",children:[(0,l.jsxs)("div",{className:"grid gap-4",children:[(0,l.jsxs)("div",{className:"flex flex-row justify-between items-center",children:[(0,l.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,l.jsx)("h1",{className:"xl:text-3xl text-base font-bold",children:"Connection Summary"}),(0,l.jsx)(z.$,{variant:"ghost",size:"icon",className:"text-sm",onClick:R,children:(0,l.jsx)(U.A,{className:"xl:size-6 size-5 text-blue-500",strokeWidth:3})})]}),(0,l.jsxs)("div",{className:"flex flex-row items-center gap-x-2",children:[(0,l.jsxs)(z.$,{onClick:()=>m(e=>!e),children:[c?(0,l.jsx)(L.A,{className:"xl:size-6 size-5"}):(0,l.jsx)(G.A,{className:"xl:size-6 size-5"}),(0,l.jsxs)("span",{className:"hidden md:block",children:[c?"Show":"Hide"," Sensitive Data"]})]}),(null==u?void 0:u.simCard.state)==="Not Inserted"&&(0,l.jsxs)(D.lG,{open:i,onOpenChange:o,children:[(0,l.jsx)(D.zM,{asChild:!0,children:(0,l.jsxs)(z.$,{variant:"destructive",children:[(0,l.jsx)(eI.fU4,{className:"xl:size-6 size-5"}),(0,l.jsx)("span",{className:"hidden md:block",children:"No SIM"})]})}),(0,l.jsxs)(D.Cf,{className:"max-w-xs md:max-w-lg",children:[(0,l.jsx)(D.c7,{children:(0,l.jsx)(D.L3,{children:"No SIM Detected"})}),(0,l.jsxs)("div",{className:"grid gap-4 py-4",children:[(0,l.jsx)("div",{className:"flex items-center justify-center",children:(0,l.jsx)(eI.fU4,{className:"xl:size-14 md:size-12 size-6 text-red-500"})}),(0,l.jsx)("p",{className:"text-center",children:"There is no SIM card detected in the device. Please insert a SIM card or change the SIM card slot to use the device."})]}),(0,l.jsxs)("div",{className:"flex justify-end mt-4",children:[(0,l.jsx)(z.$,{onClick:E,className:"mr-2",children:"Change SIM Slot"}),(0,l.jsx)(D.HM,{asChild:!0,children:(0,l.jsx)(z.$,{variant:"secondary",onClick:()=>o(!1),children:"Close"})})]})]})]}),(0,l.jsxs)(D.lG,{children:[(0,l.jsx)(D.zM,{asChild:!0,children:(0,l.jsxs)(z.$,{onClick:Z,children:[(0,l.jsx)(B.A,{className:"xl:size-6 size-5"}),(0,l.jsx)("span",{className:"hidden md:block",children:"Run Diagnostics"})]})}),!b&&(0,l.jsxs)(D.Cf,{className:"max-w-xs md:max-w-lg",children:[(0,l.jsx)(D.c7,{children:(0,l.jsx)(D.L3,{children:"Diagnostics Result"})}),(0,l.jsx)(D.rr,{children:"This is the result of the diagnostic test ran on your device."}),(0,l.jsxs)("div",{className:"grid gap-4 py-4",children:[(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"Network Registration "}),(null==y?void 0:y.netRegistration)==="Registered"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"U-SIM State"}),(null==y?void 0:y.simState)==="READY"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"Manual APN"}),(null==y?void 0:y.manualAPN)==="Enabled"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"WAN IP"}),(null==y?void 0:y.wanIP)==="Connected"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"Cellular Signal"}),(null==y?void 0:y.cellSignal)==="Good"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"Modem Temperature"}),(null==y?void 0:y.modemTemp)==="Normal"?(0,l.jsx)(F.A,{className:"text-green-500"}):(0,l.jsx)(_.A,{className:"text-red-500"})]}),(0,l.jsxs)("div",{className:"flex items-center justify-between mt-6",children:[(0,l.jsx)("h3",{className:"font-semibold",children:"Network Reject Causes"}),(0,l.jsx)("div",{className:"flex flex-col items-end space-y-1",children:(null==y?void 0:y.rejectCauses)?(0,l.jsxs)(l.Fragment,{children:[y.rejectCauses.emm&&(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(_.A,{className:"text-red-500 w-4 h-4"}),(0,l.jsxs)("span",{className:"text-sm",children:["EMM (",y.rejectCauses.emm.code,"):"," ",y.rejectCauses.emm.description]})]}),y.rejectCauses.esm&&(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(_.A,{className:"text-red-500 w-4 h-4"}),(0,l.jsxs)("span",{className:"text-sm",children:["ESM (",y.rejectCauses.esm.code,"):"," ",y.rejectCauses.esm.description]})]}),y.rejectCauses.nrmm&&(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(_.A,{className:"text-red-500 w-4 h-4"}),(0,l.jsxs)("span",{className:"text-sm",children:["NRMM (",y.rejectCauses.nrmm.code,"):"," ",y.rejectCauses.nrmm.description]})]})]}):(0,l.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,l.jsx)(F.A,{className:"text-green-500"}),(0,l.jsx)("span",{children:"None"})]})})]})]})]}),b&&(0,l.jsxs)(D.Cf,{className:"max-w-xs md:max-w-lg",children:[(0,l.jsx)(D.c7,{children:(0,l.jsx)(D.L3,{children:"Running Diagnostics"})}),(0,l.jsx)("div",{className:"flex items-center justify-center my-4",children:(0,l.jsx)(q(),{color:"#6D28D9"})}),(0,l.jsx)(D.rr,{className:"text-center",children:"Please wait while we run diagnostics on your device."})]})]})]})]}),(0,l.jsxs)("div",{className:"grid lg:grid-cols-2 grid-cols-1 grid-flow-row gap-4",children:[(0,l.jsx)("div",{children:(0,l.jsx)(C,{})}),(0,l.jsxs)("div",{className:"grid gap-2 lg:grid-cols-2 grid-cols-1 grid-flow-row",children:[(0,l.jsx)(eW,{lteTimeAdvance:null==u?void 0:null===(e=u.timeAdvance)||void 0===e?void 0:e.lteTimeAdvance,nrTimeAdvance:null==u?void 0:null===(s=u.timeAdvance)||void 0===s?void 0:s.nrTimeAdvance,isLoading:x,networkType:null==u?void 0:null===(t=u.connection)||void 0===t?void 0:t.networkType}),(0,l.jsx)(T,{}),(0,l.jsx)(eO,{}),(0,l.jsx)(M,{})]})]}),(0,l.jsxs)("div",{className:"grid 2xl:grid-cols-4 lg:grid-cols-2 grid-cols-1 gap-4",children:[(0,l.jsx)(d,{data:u,isLoading:x,hideSensitiveData:c}),(0,l.jsx)(h,{data:u,isLoading:x,dataConnectionState:j,connectionStateLoading:N}),(0,l.jsx)(p,{data:u,isLoading:x,bytesSent:A,bytesReceived:I}),(0,l.jsx)(f,{data:u,isLoading:x})]})]}),(0,l.jsxs)("div",{className:"grid gap-4 w-full",children:[(0,l.jsx)("h1",{className:"xl:text-3xl text-base font-bold",children:"Active Addresses"}),(0,l.jsx)("div",{children:(0,l.jsx)(eZ,{data:u,isLoading:x,isPublicIPLoading:v,hideSensitiveData:c})})]}),(0,l.jsxs)("div",{className:"grid gap-4 w-full",children:[(0,l.jsx)("h1",{className:"xl:text-3xl text-base font-bold",children:"Current Active Bands"}),(0,l.jsx)("div",{children:(0,l.jsx)(X,{bands:P,isLoading:x})})]})]})}},45934:(e,s,t)=>{"use strict";t.d(s,{E:()=>i});var l=t(20475);t(20107);var r=t(29395),n=t(22250);let a=(0,r.F)("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function i(e){let{className:s,variant:t,...r}=e;return(0,l.jsx)("div",{className:(0,n.cn)(a({variant:t}),s),...r})}},42541:(e,s,t)=>{"use strict";t.d(s,{$:()=>d,r:()=>o});var l=t(20475),r=t(20107),n=t(61837),a=t(29395),i=t(22250);let o=(0,a.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),d=r.forwardRef((e,s)=>{let{className:t,variant:r,size:a,asChild:d=!1,...c}=e,m=d?n.DX:"button";return(0,l.jsx)(m,{className:(0,i.cn)(o({variant:r,size:a,className:t})),ref:s,...c})});d.displayName="Button"},72167:(e,s,t)=>{"use strict";t.d(s,{BT:()=>d,Wu:()=>c,ZB:()=>o,Zp:()=>a,aR:()=>i,wL:()=>m});var l=t(20475),r=t(20107),n=t(22250);let a=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("div",{ref:s,className:(0,n.cn)("rounded-xl border bg-card text-card-foreground shadow",t),...r})});a.displayName="Card";let i=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("div",{ref:s,className:(0,n.cn)("flex flex-col space-y-1.5 p-6",t),...r})});i.displayName="CardHeader";let o=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("h3",{ref:s,className:(0,n.cn)("font-semibold leading-none tracking-tight",t),...r})});o.displayName="CardTitle";let d=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("p",{ref:s,className:(0,n.cn)("text-sm text-muted-foreground",t),...r})});d.displayName="CardDescription";let c=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("div",{ref:s,className:(0,n.cn)("p-6 pt-0",t),...r})});c.displayName="CardContent";let m=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)("div",{ref:s,className:(0,n.cn)("flex items-center p-6 pt-0",t),...r})});m.displayName="CardFooter"},1307:(e,s,t)=>{"use strict";t.d(s,{II:()=>h,Nt:()=>p,at:()=>u});var l=t(20475),r=t(20107),n=t(81155),a=t(58601),i=t(58736),o=t(22250);let d={light:"",dark:".dark"},c=r.createContext(null);function m(){let e=r.useContext(c);if(!e)throw Error("useChart must be used within a ");return e}let u=r.forwardRef((e,s)=>{let{id:t,className:a,children:i,config:d,...m}=e,u=r.useId(),h="chart-".concat(t||u.replace(/:/g,""));return(0,l.jsx)(c.Provider,{value:{config:d},children:(0,l.jsxs)("div",{"data-chart":h,ref:s,className:(0,o.cn)("flex aspect-video justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-none [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-sector]:outline-none [&_.recharts-surface]:outline-none",a),...m,children:[(0,l.jsx)(x,{id:h,config:d}),(0,l.jsx)(n.u,{children:i})]})})});u.displayName="Chart";let x=e=>{let{id:s,config:t}=e,r=Object.entries(t).filter(e=>{let[s,t]=e;return t.theme||t.color});return r.length?(0,l.jsx)("style",{dangerouslySetInnerHTML:{__html:Object.entries(d).map(e=>{let[t,l]=e;return"\n".concat(l," [data-chart=").concat(s,"] {\n").concat(r.map(e=>{var s;let[l,r]=e,n=(null===(s=r.theme)||void 0===s?void 0:s[t])||r.color;return n?" --color-".concat(l,": ").concat(n,";"):null}).join("\n"),"\n}\n")}).join("\n")}}):null},h=a.m,p=r.forwardRef((e,s)=>{let{active:t,payload:n,className:a,indicator:i="dot",hideLabel:d=!1,hideIndicator:c=!1,label:u,labelFormatter:x,labelClassName:h,formatter:p,color:f,nameKey:v,labelKey:j}=e,{config:N}=m(),w=r.useMemo(()=>{var e;if(d||!(null==n?void 0:n.length))return null;let[s]=n,t="".concat(j||s.dataKey||s.name||"value"),r=g(N,s,t),a=j||"string"!=typeof u?null==r?void 0:r.label:(null===(e=N[u])||void 0===e?void 0:e.label)||u;return x?(0,l.jsx)("div",{className:(0,o.cn)("font-medium",h),children:x(a,n)}):a?(0,l.jsx)("div",{className:(0,o.cn)("font-medium",h),children:a}):null},[u,x,n,d,h,N,j]);if(!t||!(null==n?void 0:n.length))return null;let b=1===n.length&&"dot"!==i;return(0,l.jsxs)("div",{ref:s,className:(0,o.cn)("grid min-w-[8rem] items-start gap-1.5 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl",a),children:[b?null:w,(0,l.jsx)("div",{className:"grid gap-1.5",children:n.map((e,s)=>{let t="".concat(v||e.name||e.dataKey||"value"),r=g(N,e,t),n=f||e.payload.fill||e.color;return(0,l.jsx)("div",{className:(0,o.cn)("flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground","dot"===i&&"items-center"),children:p&&(null==e?void 0:e.value)!==void 0&&e.name?p(e.value,e.name,e,s,e.payload):(0,l.jsxs)(l.Fragment,{children:[(null==r?void 0:r.icon)?(0,l.jsx)(r.icon,{}):!c&&(0,l.jsx)("div",{className:(0,o.cn)("shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]",{"h-2.5 w-2.5":"dot"===i,"w-1":"line"===i,"w-0 border-[1.5px] border-dashed bg-transparent":"dashed"===i,"my-0.5":b&&"dashed"===i}),style:{"--color-bg":n,"--color-border":n}}),(0,l.jsxs)("div",{className:(0,o.cn)("flex flex-1 justify-between leading-none",b?"items-end":"items-center"),children:[(0,l.jsxs)("div",{className:"grid gap-1.5",children:[b?w:null,(0,l.jsx)("span",{className:"text-muted-foreground",children:(null==r?void 0:r.label)||e.name})]}),e.value&&(0,l.jsx)("span",{className:"font-mono font-medium tabular-nums text-foreground",children:e.value.toLocaleString()})]})]})},e.dataKey)})})]})});function g(e,s,t){if("object"!=typeof s||null===s)return;let l="payload"in s&&"object"==typeof s.payload&&null!==s.payload?s.payload:void 0,r=t;return t in s&&"string"==typeof s[t]?r=s[t]:l&&t in l&&"string"==typeof l[t]&&(r=l[t]),r in e?e[r]:e[t]}p.displayName="ChartTooltip",i.s,r.forwardRef((e,s)=>{let{className:t,hideIcon:r=!1,payload:n,verticalAlign:a="bottom",nameKey:i}=e,{config:d}=m();return(null==n?void 0:n.length)?(0,l.jsx)("div",{ref:s,className:(0,o.cn)("flex items-center justify-center gap-4","top"===a?"pb-3":"pt-3",t),children:n.map(e=>{let s="".concat(i||e.dataKey||"value"),t=g(d,e,s);return(0,l.jsxs)("div",{className:(0,o.cn)("flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground"),children:[(null==t?void 0:t.icon)&&!r?(0,l.jsx)(t.icon,{}):(0,l.jsx)("div",{className:"h-2 w-2 shrink-0 rounded-[2px]",style:{backgroundColor:e.color}}),null==t?void 0:t.label]},e.value)})}):null}).displayName="ChartLegend"},93557:(e,s,t)=>{"use strict";t.d(s,{Cf:()=>x,Es:()=>p,HM:()=>m,L3:()=>g,c7:()=>h,lG:()=>o,rr:()=>f,zM:()=>d});var l=t(20475),r=t(20107),n=t(60241),a=t(7197),i=t(22250);let o=n.bL,d=n.l9,c=n.ZL,m=n.bm,u=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)(n.hJ,{ref:s,className:(0,i.cn)("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...r})});u.displayName=n.hJ.displayName;let x=r.forwardRef((e,s)=>{let{className:t,children:r,...o}=e;return(0,l.jsxs)(c,{children:[(0,l.jsx)(u,{}),(0,l.jsxs)(n.UC,{ref:s,className:(0,i.cn)("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",t),...o,children:[r,(0,l.jsxs)(n.bm,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[(0,l.jsx)(a.MKb,{className:"h-4 w-4"}),(0,l.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})});x.displayName=n.UC.displayName;let h=e=>{let{className:s,...t}=e;return(0,l.jsx)("div",{className:(0,i.cn)("flex flex-col space-y-1.5 text-center sm:text-left",s),...t})};h.displayName="DialogHeader";let p=e=>{let{className:s,...t}=e;return(0,l.jsx)("div",{className:(0,i.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",s),...t})};p.displayName="DialogFooter";let g=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)(n.hE,{ref:s,className:(0,i.cn)("text-lg font-semibold leading-none tracking-tight",t),...r})});g.displayName=n.hE.displayName;let f=r.forwardRef((e,s)=>{let{className:t,...r}=e;return(0,l.jsx)(n.VY,{ref:s,className:(0,i.cn)("text-sm text-muted-foreground",t),...r})});f.displayName=n.VY.displayName},36760:(e,s,t)=>{"use strict";t.d(s,{E:()=>n});var l=t(20475),r=t(22250);function n(e){let{className:s,...t}=e;return(0,l.jsx)("div",{className:(0,r.cn)("animate-pulse rounded-md bg-primary/10",s),...t})}},85014:(e,s,t)=>{"use strict";t.d(s,{TooltipProvider:()=>i,ZI:()=>c,k$:()=>d,m_:()=>o});var l=t(20475),r=t(20107),n=t(43048),a=t(22250);let i=n.Kq,o=n.bL,d=n.l9,c=r.forwardRef((e,s)=>{let{className:t,sideOffset:r=4,...i}=e;return(0,l.jsx)(n.UC,{ref:s,sideOffset:r,className:(0,a.cn)("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...i})});c.displayName=n.UC.displayName},32857:(e,s,t)=>{"use strict";t.d(s,{dj:()=>u,oR:()=>m});var l=t(20107);let r=0,n=new Map,a=e=>{if(n.has(e))return;let s=setTimeout(()=>{n.delete(e),c({type:"REMOVE_TOAST",toastId:e})},1e6);n.set(e,s)},i=(e,s)=>{switch(s.type){case"ADD_TOAST":return{...e,toasts:[s.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===s.toast.id?{...e,...s.toast}:e)};case"DISMISS_TOAST":{let{toastId:t}=s;return t?a(t):e.toasts.forEach(e=>{a(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===t||void 0===t?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===s.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==s.toastId)}}},o=[],d={toasts:[]};function c(e){d=i(d,e),o.forEach(e=>{e(d)})}function m(e){let{...s}=e,t=(r=(r+1)%Number.MAX_SAFE_INTEGER).toString(),l=()=>c({type:"DISMISS_TOAST",toastId:t});return c({type:"ADD_TOAST",toast:{...s,id:t,open:!0,onOpenChange:e=>{e||l()}}}),{id:t,dismiss:l,update:e=>c({type:"UPDATE_TOAST",toast:{...e,id:t}})}}function u(){let[e,s]=l.useState(d);return l.useEffect(()=>(o.push(s),()=>{let e=o.indexOf(s);e>-1&&o.splice(e,1)}),[e]),{...e,toast:m,dismiss:e=>c({type:"DISMISS_TOAST",toastId:e})}}},22250:(e,s,t)=>{"use strict";t.d(s,{cn:()=>n});var l=t(64901),r=t(868);function n(){for(var e=arguments.length,s=Array(e),t=0;t{"use strict";t.d(s,{QI:()=>a,U_:()=>l,ZK:()=>r,jq:()=>n});let l={6:"1.4 MHz",15:"3 MHz",25:"5 MHz",50:"10 MHz",75:"15 MHz",100:"20 MHz","-":"-"},r={0:"No cause",2:"IMSI unknown in HSS",3:"Illegal UE",5:"IMEI not accepted",6:"Illegal ME",7:"EPS services not allowed",8:"EPS services and non-EPS services not allowed",9:"UE identity cannot be derived by the network",10:"Implicitly detached",11:"PLMN not allowed",12:"Tracking Area not allowed",13:"Roaming not allowed in this tracking area",14:"EPS services not allowed in this PLMN",15:"No Suitable Cells in tracking area",16:"MSC temporarily not reachable",17:"Network failure",18:"CS domain not available",19:"ESM failure",20:"MAC failure",21:"Synch failure",22:"Congestion",23:"UE security capabilities mismatch",24:"Security mode rejected, unspecified",25:"Not authorized for this CSG",26:"Non-EPS authentication unacceptable",31:"Redirection to 5GCN required",35:"Requested service option not authorized in this PLMN",39:"CS service temporarily not available",40:"No EPS bearer context activated",42:"Severe network failure",95:"Semantically incorrect message",96:"Invalid mandatory information",97:"Message type non-existent or not implemented",98:"Message type not compatible with the protocol state",99:"Information element non-existent or not implemented",100:"Conditional IE error",101:"Message not compatible with the protocol state",111:"Protocol error, unspecified"},n={0:"No cause",8:"Operator Determined Barring",26:"Insufficient resources",27:"Missing or unknown APN",28:"Unknown PDN type",29:"User authentication failed",30:"Request rejected by Serving GW or PDN GW",31:"Request rejected, unspecified",32:"Service option not supported",33:"Requested service option not subscribed",34:"Service option temporarily out of order",35:"PTI already in use",36:"Regular deactivation",37:"EPS QoS not accepted",38:"Network failure",39:"Reactivation requested",41:"Semantic error in the TFT operation",42:"Syntactical error in the TFT operation",43:"Invalid EPS bearer identity",44:"Semantic errors in packet filter(s)",45:"Syntactical errors in packet filter(s)",46:"Unused (see NOTE 2)",47:"PTI mismatch",49:"Last PDN disconnection not allowed",50:"PDN type IPv4 only allowed",51:"PDN type IPv6 only allowed",52:"Single address bearers only allowed",53:"ESM information not received",54:"PDN connection does not exist",55:"Multiple PDN connections for a given APN not allowed",56:"Collision with network initiated request",57:"PDN type IPv4v6 only allowed",58:"PDN type non IP only allowed",59:"Unsupported QCI value",60:"Bearer handling not supported",61:"PDN type Ethernet only allowed",65:"Maximum number of EPS bearers reached",66:"Requested APN not supported in current RAT and PLMN combination",81:"Invalid PTI value",95:"Semantically incorrect message",96:"Invalid mandatory information",97:"Message type non-existent or not implemented",98:"Message type not compatible with the protocol state",99:"Information element non-existent or not implemented",100:"Conditional IE error",101:"Message not compatible with the protocol state",111:"Protocol error, unspecified",112:"APN restriction value incompatible with active EPS bearer context",113:"Multiple accesses to a PDN connection not allowed"},a={0:"No cause",3:"Illegal UE",5:"PEI not accepted",6:"Illegal ME",7:"5GS services not allowed",9:"UE identity cannot be derived by the network",10:"Implicitly de-registered",11:"PLMN not allowed",12:"Tracking area not allowed",13:"Roaming not allowed in this tracking area",15:"No suitable cells in tracking area",20:"MAC failure",21:"Synch failure",22:"Congestion",23:"UE security capabilities mismatch",24:"Security mode rejected, unspecified",26:"Non-5G authentication unacceptable",27:"N1 mode not allowed",28:"Restricted service area",31:"Redirection to EPC required",43:"LADN not available",62:"No network slices available",65:"Maximum number of PDU sessions reached",67:"Insufficient resources for specific slice and DNN",69:"Insufficient resources for specific slice",71:"ngKSI already in use",72:"Non-3GPP access to 5GCN not allowed",73:"Serving network not authorized",74:"Temporarily not authorized for this SNPN",75:"Permanently not authorized for this SNPN",76:"Not authorized for this CAG or authorized for CAG cells only",77:"Wireline access area not allowed",78:"PLMN not allowed to operate at the present UE location",79:"UAS services not allowed",90:"Payload was not forwarded",91:"DNN not supported or not subscribed in the slice",92:"Insufficient user-plane resources for the PDU session",95:"Semantically incorrect message",96:"Invalid mandatory information",97:"Message type non-existent or not implemented",98:"Message type not compatible with the protocol state",99:"Information element non-existent or not implemented",100:"Conditional IE error",101:"Message not compatible with the protocol state",111:"Protocol error, unspecified"}},88926:(e,s,t)=>{"use strict";t.d(s,{a:()=>l});let l=async function(e){let s=!(arguments.length>1)||void 0===arguments[1]||arguments[1],t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:30;try{var l;let r=e.trim().toUpperCase().startsWith("AT")?e.trim():"AT".concat(e.trim()),n=encodeURIComponent(r),a="/cgi-bin/quecmanager/at_cmd/at_queue_client.sh?command=".concat(n);s&&(a+="&wait=1&timeout=".concat(t));let i=await fetch(a,{method:"GET",headers:{Accept:"application/json",Authorization:"".concat(localStorage.getItem("authToken"))},signal:AbortSignal.timeout(1e3*t+5e3)});if(!i.ok)throw Error("AT command failed with status: ".concat(i.status));let o=await i.json();if(o.error)throw Error("AT queue error: ".concat(o.error));if(s&&(null===(l=o.response)||void 0===l?void 0:l.status)==="timeout")throw Error("AT command timed out after ".concat(t," seconds"));return o}catch(e){throw console.error("AT Command error:",e),e}}}},e=>{var s=s=>e(e.s=s);e.O(0,[9980,9649,7780,8885,3746,9464,3048,1074,3095,1178,191,6035,7358],()=>s(98722)),_N_E=e.O()}]); \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/settings/personalization/page-066673f9996cf1d2.js b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/settings/personalization/page-066673f9996cf1d2.js new file mode 100644 index 0000000..7b5600f --- /dev/null +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/settings/personalization/page-066673f9996cf1d2.js @@ -0,0 +1 @@ +(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2824],{18508:(e,t,s)=>{Promise.resolve().then(s.bind(s,39898))},39898:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>j});var a=s(20475),r=s(20107),i=s(72167),n=s(35601),l=s(42541),o=s(64219),d=s(49153),c=s(53538),m=s(32857),u=s(66715),p=s(23615),f=s(59166),g=s(42841),h=s(51873),x=s(37369),v=s(76554),y=s(36760);let j=()=>{let{toast:e}=(0,m.dj)(),[t,s]=(0,r.useState)(!1),[j,w]=(0,r.useState)(!1),[b,N]=(0,r.useState)(!1),[E,S]=(0,r.useState)(null),[T,C]=(0,r.useState)(!1),[R,P]=(0,r.useState)("km"),[F,k]=(0,r.useState)(!1),[_,U]=(0,r.useState)(!0),[A,I]=(0,r.useState)(!0),[D,M]=(0,r.useState)(5),[O,z]=(0,r.useState)(!1),[q,J]=(0,r.useState)(!0),[L,B]=(0,r.useState)(!0),[V,$]=(0,r.useState)(1),[G,W]=(0,r.useState)(!1),[K,Z]=(0,r.useState)(!0),H=(0,r.useRef)(null),Y="profile_picture_data",Q="profile_picture_metadata";(0,r.useEffect)(()=>{X(),ea(),ec(),ep(),eh()},[]);let X=()=>{try{let e=localStorage.getItem(Y);e&&(S(e),C(!0))}catch(e){console.error("Error loading cached image:",e)}},ee=(e,t)=>{try{localStorage.setItem(Y,e),localStorage.setItem(Q,JSON.stringify(t))}catch(s){if(console.error("Error updating cache:",s),s instanceof Error&&"QuotaExceededError"===s.name){et();try{localStorage.setItem(Y,e),localStorage.setItem(Q,JSON.stringify(t))}catch(e){console.error("Failed to cache image even after clearing:",e)}}}},et=()=>{try{localStorage.removeItem(Y),localStorage.removeItem(Q)}catch(e){console.error("Error clearing cache:",e)}},es=()=>{try{let e=localStorage.getItem(Q);return e?JSON.parse(e):null}catch(e){return console.error("Error getting cached metadata:",e),null}},ea=async()=>{try{var e;s(!0);let t=await fetch("/cgi-bin/quecmanager/settings/profile_picture.sh"),a=await t.json();if("success"===a.status&&(null===(e=a.data)||void 0===e?void 0:e.exists)){let e={size:a.data.size,modified:a.data.modified,type:a.data.type},t=es();t&&t.size===e.size&&t.modified===e.modified&&t.type===e.type?C(!0):a.data.data&&(S(a.data.data),C(!0),ee(a.data.data,e))}else S(null),C(!1),et()}catch(e){console.error("Error fetching profile picture:",e),localStorage.getItem(Y)||(S(null),C(!1))}finally{s(!1)}},er=e=>{if(!["image/jpeg","image/jpg","image/png","image/gif","image/webp","image/pjpeg","image/x-png"].includes(e.type)){let t=e.name.toLowerCase();if(![".jpg",".jpeg",".png",".gif",".webp"].some(e=>t.endsWith(e)))return{valid:!1,error:"Invalid file type: ".concat(e.type,". Please select a JPEG, PNG, GIF, or WebP image.")}}return e.size>3145728?{valid:!1,error:"File too large. Please select an image smaller than 3MB."}:e.size<1024?{valid:!1,error:"File too small. Please select a valid image file (minimum 1KB)."}:{valid:!0}},ei=e=>new Promise(t=>{let s=new FileReader;s.onload=e=>{var s;let a=null===(s=e.target)||void 0===s?void 0:s.result;if(!a){t({valid:!1,error:"Could not read file content"});return}let r=new Uint8Array(a);if(r.length<4){t({valid:!1,error:"File too small to be a valid image"});return}if(255===r[0]&&216===r[1]||r.length>=8&&137===r[0]&&80===r[1]&&78===r[2]&&71===r[3]||r.length>=6&&71===r[0]&&73===r[1]&&70===r[2]&&56===r[3]){t({valid:!0});return}if(r.length>=12){let e=82===r[0]&&73===r[1]&&70===r[2]&&70===r[3],s=87===r[8]&&69===r[9]&&66===r[10]&&80===r[11];if(e&&s){t({valid:!0});return}}t({valid:!1,error:"File does not appear to be a valid image format"})},s.onerror=()=>{t({valid:!1,error:"Error reading file content"})},s.readAsArrayBuffer(e.slice(0,16))}),en=async t=>{var s;let a=null===(s=t.target.files)||void 0===s?void 0:s[0];if(!a)return;let r=er(a);if(!r.valid){e({title:"Invalid File",description:r.error,variant:"destructive"});return}let i=await ei(a);if(!i.valid){e({title:"Invalid Image File",description:i.error||"The selected file does not appear to be a valid image.",variant:"destructive"});return}el(a)},el=async t=>{w(!0);try{let s=await fetch("/cgi-bin/quecmanager/settings/profile_picture.sh",{method:"POST",body:t});if(!s.ok)throw Error("HTTP error! status: ".concat(s.status));let a=await s.json();if("success"===a.status)e({title:"Profile Picture Updated",description:"Your profile picture has been updated successfully."}),await ea(),window.dispatchEvent(new CustomEvent("profilePictureUpdated"));else throw Error(a.message||"Failed to upload profile picture")}catch(t){console.error("Error uploading profile picture:",t),e({title:"Upload Failed",description:t instanceof Error?t.message:"Failed to upload profile picture.",variant:"destructive"})}finally{w(!1),H.current&&(H.current.value="")}},eo=async()=>{N(!0);try{let t=await fetch("/cgi-bin/quecmanager/settings/profile_picture.sh",{method:"DELETE"}),s=await t.json();if("success"===s.status)e({title:"Profile Picture Deleted",description:"Your profile picture has been removed successfully."}),S(null),C(!1),et(),window.dispatchEvent(new CustomEvent("profilePictureDeleted"));else throw Error(s.message||"Failed to delete profile picture")}catch(t){console.error("Error deleting profile picture:",t),e({title:"Delete Failed",description:t instanceof Error?t.message:"Failed to delete profile picture.",variant:"destructive"})}finally{N(!1)}},ed=()=>{var e;null===(e=H.current)||void 0===e||e.click()},ec=async()=>{try{k(!0);let e=await fetch("/cgi-bin/quecmanager/settings/measurement_units.sh"),t=await e.json();"success"===t.status&&t.data&&(P(t.data.unit),U(t.data.isDefault))}catch(t){console.error("Error fetching measurement unit:",t),e({title:"Error",description:"Failed to load measurement unit preferences.",variant:"destructive"})}finally{k(!1)}},em=async t=>{try{k(!0);let s=await fetch("/cgi-bin/quecmanager/settings/measurement_units.sh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({unit:t})}),a=await s.json();if("success"===a.status)P(t),U(!1),e({title:"Preference Updated",description:"Measurement unit set to ".concat("km"===t?"kilometers":"miles",".")});else throw Error(a.message||"Failed to update measurement unit")}catch(t){console.error("Error updating measurement unit:",t),e({title:"Update Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{k(!1)}},eu=async()=>{try{k(!0);let t=await fetch("/cgi-bin/quecmanager/settings/measurement_units.sh",{method:"DELETE"}),s=await t.json();if("success"===s.status&&s.data)P(s.data.unit),U(!0),e({title:"Preference Reset",description:"Measurement unit reset to system default (".concat("km"===s.data.unit?"kilometers":"miles",").")});else throw Error(s.message||"Failed to reset measurement unit")}catch(t){console.error("Error resetting measurement unit:",t),e({title:"Reset Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{k(!1)}},ep=async()=>{try{z(!0);let e=await fetch("/cgi-bin/quecmanager/settings/ping_settings.sh"),t=await e.json();"success"===t.status&&t.data&&(I(t.data.enabled),"number"==typeof t.data.interval&&M(t.data.interval),J(!t.data.enabled))}catch(t){console.error("Error fetching ping settings:",t),e({title:"Error",description:"Failed to load ping settings.",variant:"destructive"})}finally{z(!1)}},ef=async(t,s)=>{try{z(!0),W(!0);let i=null!=s?s:D,n=await fetch("/cgi-bin/quecmanager/settings/ping_settings.sh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({enabled:t,interval:i})}),l=await n.json();if("success"===l.status){var a,r;I(t),"number"==typeof(null===(a=l.data)||void 0===a?void 0:a.interval)?M(l.data.interval):M(i),J(!t);let s="number"==typeof(null===(r=l.data)||void 0===r?void 0:r.interval)?l.data.interval:i;t!==A&&e({title:"Ping Status Updated",description:"Ping has been ".concat(t?"enabled":"disabled",".")}),s!==D&&e({title:"Polling Rate Updated",description:"Now measuring every ".concat(s," second").concat(1===s?"":"s",".")}),window.dispatchEvent(new CustomEvent("pingSettingsUpdated"))}else throw Error(l.message||"Failed to update ping settings")}catch(t){console.error("Error updating ping settings:",t),e({title:"Update Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{z(!1),W(!1)}},eg=async()=>{try{z(!0),W(!0);let t=await fetch("/cgi-bin/quecmanager/settings/ping_settings.sh",{method:"DELETE"}),s=await t.json();if("success"===s.status)I(!1),M(5),J(!0),e({title:"Ping Settings Reset",description:"Ping settings reset to system default (disabled)."}),window.dispatchEvent(new CustomEvent("pingSettingsUpdated"));else throw Error(s.message||"Failed to reset ping settings")}catch(t){console.error("Error resetting ping settings:",t),e({title:"Reset Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{z(!1),W(!1)}},eh=async()=>{try{W(!0);let e=await fetch("/cgi-bin/quecmanager/home/memory/memory_service.sh"),t=await e.json();"success"===t.status&&t.data&&(B(t.data.enabled),"number"==typeof t.data.interval&&$(t.data.interval),Z(!t.data.enabled))}catch(t){console.error("Error fetching memory settings:",t),e({title:"Error",description:"Failed to load memory monitoring settings.",variant:"destructive"})}finally{W(!1)}},ex=async(t,s)=>{try{W(!0),z(!0);let i=null!=s?s:V,n=await fetch("/cgi-bin/quecmanager/settings/memory_settings.sh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({enabled:t,interval:i})}),l=await n.json();if("success"===l.status){var a,r;B(t),"number"==typeof(null===(a=l.data)||void 0===a?void 0:a.interval)?$(l.data.interval):$(i),Z(!t);let s="number"==typeof(null===(r=l.data)||void 0===r?void 0:r.interval)?l.data.interval:i;t!==L&&e({title:"Memory Monitoring Updated",description:"Memory monitoring has been ".concat(t?"enabled":"disabled",".")}),s!==V&&e({title:"Update Rate Changed",description:"Memory now updates every ".concat(s," second").concat(1===s?"":"s",".")}),window.dispatchEvent(new CustomEvent("memorySettingsUpdated"))}else throw Error(l.message||"Failed to update memory settings")}catch(t){console.error("Error updating memory settings:",t),e({title:"Update Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{W(!1),z(!1)}},ev=async()=>{try{W(!0),z(!0);let t=await fetch("/cgi-bin/quecmanager/settings/memory_settings.sh",{method:"DELETE"}),s=await t.json();if("success"===s.status)B(!1),$(1),Z(!0),e({title:"Memory Settings Reset",description:"Memory monitoring reset to system default (disabled)."}),window.dispatchEvent(new CustomEvent("memorySettingsUpdated"));else throw Error(s.message||"Failed to reset memory settings")}catch(t){console.error("Error resetting memory settings:",t),e({title:"Reset Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{W(!1),z(!1)}};return(0,a.jsxs)(i.Zp,{children:[(0,a.jsxs)(i.aR,{children:[(0,a.jsx)(i.ZB,{children:"Personalization Settings"}),(0,a.jsx)(i.BT,{children:"Customize your profile and preferences."})]}),(0,a.jsx)(i.Wu,{children:(0,a.jsxs)("div",{className:"grid gap-6",children:[(0,a.jsxs)("div",{className:"flex flex-col items-center space-y-4",children:[(0,a.jsx)("div",{className:"grid gap-6"}),(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsx)(c.eu,{className:"lg:h-48 lg:w-48 h-32 w-32 border-4 border-dashed border-gray-300 hover:border-gray-400 transition-colors",children:E?(0,a.jsx)(c.BK,{src:E,alt:"Profile Picture"}):(0,a.jsx)(c.q5,{className:"bg-gray-100",children:(0,a.jsx)(u.A,{className:"h-12 w-12 text-gray-400"})})}),(0,a.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-black bg-opacity-50 rounded-full opacity-0 hover:opacity-100 transition-opacity cursor-pointer",onClick:ed,children:(0,a.jsx)(p.A,{className:"h-8 w-8 text-white"})})]}),(0,a.jsx)("p",{className:"text-muted-foreground text-sm italic",children:"Supported formats: JPEG, PNG, GIF, WebP (max 3MB)."}),(0,a.jsxs)("div",{className:"flex space-x-2",children:[(0,a.jsxs)(l.$,{variant:"outline",size:"sm",onClick:ed,disabled:j||t||b,children:[j?(0,a.jsx)(f.A,{className:"h-4 w-4 animate-spin"}):(0,a.jsx)(g.A,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:j?"Uploading...":"Upload"})]}),T&&(0,a.jsx)(a.Fragment,{children:(0,a.jsxs)(l.$,{variant:"destructive",size:"sm",onClick:eo,disabled:t||b||j||!T,children:[b?(0,a.jsx)(f.A,{className:"h-4 w-4 animate-spin"}):(0,a.jsx)(h.A,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:b?"Deleting...":"Delete"})]})})]}),(0,a.jsx)(o.p,{ref:H,type:"file",accept:"image/jpeg,image/jpg,image/png,image/gif,image/webp",onChange:en,className:"hidden"})]}),(0,a.jsx)(v.Separator,{className:"w-full my-2"}),(0,a.jsxs)("div",{className:"grid lg:grid-cols-2 grid-flow-row gap-4",children:[(0,a.jsx)("div",{className:"lg:col-span-2 col-span-1",children:(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"MeasurementUnits",children:"Distance Measurement Unit"}),F?(0,a.jsx)(y.E,{className:"h-8"}):(0,a.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,a.jsxs)(n.l6,{disabled:F,value:R,onValueChange:e=>em(e),children:[(0,a.jsx)(n.bq,{className:"w-full",children:(0,a.jsx)(n.yv,{children:"km"===R?"Kilometers (km)":"Miles (mi)"})}),(0,a.jsx)(n.gC,{children:(0,a.jsxs)(n.s3,{children:[(0,a.jsx)(n.TR,{children:"Distance Unit"}),(0,a.jsx)(n.eb,{value:"km",children:"Kilometers (km)"}),(0,a.jsx)(n.eb,{value:"mi",children:"Miles (mi)"})]})})]}),(0,a.jsx)(l.$,{variant:"outline",size:"icon",disabled:F||_,onClick:eu,children:(0,a.jsx)(x.A,{className:"h-4 w-4"})})]}),_?(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"This is the default unit based on your system settings."}):(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"This is a custom unit setting."})]})}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"PingSettings",children:"Network Latency Testing"}),O?(0,a.jsx)(y.E,{className:"h-8"}):(0,a.jsx)("div",{className:"flex flex-col gap-2",children:(0,a.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,a.jsxs)(n.l6,{disabled:O,value:A?"enabled":"disabled",onValueChange:e=>ef("enabled"===e),children:[(0,a.jsx)(n.bq,{className:"w-full",children:(0,a.jsx)(n.yv,{children:A?"Enabled":"Disabled"})}),(0,a.jsx)(n.gC,{children:(0,a.jsxs)(n.s3,{children:[(0,a.jsx)(n.TR,{children:"Latency Testing"}),(0,a.jsx)(n.eb,{value:"enabled",children:"Enable latency testing"}),(0,a.jsx)(n.eb,{value:"disabled",children:"Disable latency testing"})]})})]}),(0,a.jsx)(l.$,{variant:"outline",size:"icon",disabled:O||q,onClick:eg,children:(0,a.jsx)(x.A,{className:"h-4 w-4"})})]})}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"Controls whether the device measures network latency."})]}),(0,a.jsx)("div",{className:"grid w-full max-w-sm items-center gap-2",children:O?(0,a.jsx)(y.E,{className:"h-8"}):(0,a.jsxs)("div",{className:"grid w-full items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"PingPolling",children:"Polling Rate"}),(0,a.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,a.jsxs)(n.l6,{disabled:O||!A,value:String(D),onValueChange:e=>{let t=parseInt(e,10);M(t),ef(A,t)},children:[(0,a.jsx)(n.bq,{className:"w-full",children:(0,a.jsxs)(n.yv,{children:[D," seconds"]})}),(0,a.jsx)(n.gC,{children:(0,a.jsxs)(n.s3,{children:[(0,a.jsx)(n.TR,{children:"Polling Rate"}),(0,a.jsx)(n.eb,{value:"2",children:"Every 2 seconds"}),(0,a.jsx)(n.eb,{value:"5",children:"Every 5 seconds"}),(0,a.jsx)(n.eb,{value:"10",children:"Every 10 seconds"}),(0,a.jsx)(n.eb,{value:"15",children:"Every 15 seconds"}),(0,a.jsx)(n.eb,{value:"30",children:"Every 30 seconds"}),(0,a.jsx)(n.eb,{value:"60",children:"Every 60 seconds"})]})})]}),(0,a.jsx)(l.$,{variant:"outline",size:"icon",disabled:O||5===D||q,onClick:()=>ef(A,5),children:(0,a.jsx)(x.A,{className:"h-4 w-4"})})]}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"Controls how often the device measures latency."})]})}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"MemorySettings",children:"Memory Monitoring"}),G?(0,a.jsx)(y.E,{className:"h-8"}):(0,a.jsx)("div",{className:"flex flex-col gap-2",children:(0,a.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,a.jsxs)(n.l6,{disabled:G,value:L?"enabled":"disabled",onValueChange:e=>ex("enabled"===e),children:[(0,a.jsx)(n.bq,{className:"w-full",children:(0,a.jsx)(n.yv,{children:L?"Enabled":"Disabled"})}),(0,a.jsx)(n.gC,{children:(0,a.jsxs)(n.s3,{children:[(0,a.jsx)(n.TR,{children:"Memory Monitoring"}),(0,a.jsx)(n.eb,{value:"enabled",children:"Enable memory monitoring"}),(0,a.jsx)(n.eb,{value:"disabled",children:"Disable memory monitoring"})]})})]}),(0,a.jsx)(l.$,{variant:"outline",size:"icon",disabled:G||K,onClick:ev,children:(0,a.jsx)(x.A,{className:"h-4 w-4"})})]})}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"Controls whether the device measures memory usage."})]}),(0,a.jsx)("div",{className:"grid w-full max-w-sm items-center gap-2",children:G?(0,a.jsx)(y.E,{className:"h-8"}):(0,a.jsxs)("div",{className:"grid w-full items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"MemoryUpdateRate",children:"Update Rate"}),(0,a.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,a.jsxs)(n.l6,{disabled:G||!L,value:String(V),onValueChange:e=>{let t=parseInt(e,10);$(t),ex(L,t)},children:[(0,a.jsx)(n.bq,{className:"w-full",children:(0,a.jsxs)(n.yv,{children:[V," second",1===V?"":"s"]})}),(0,a.jsx)(n.gC,{children:(0,a.jsxs)(n.s3,{children:[(0,a.jsx)(n.TR,{children:"Update Rate"}),(0,a.jsx)(n.eb,{value:"1",children:"Every 1 second"}),(0,a.jsx)(n.eb,{value:"2",children:"Every 2 seconds"}),(0,a.jsx)(n.eb,{value:"3",children:"Every 3 seconds"}),(0,a.jsx)(n.eb,{value:"5",children:"Every 5 seconds"}),(0,a.jsx)(n.eb,{value:"10",children:"Every 10 seconds"})]})})]}),(0,a.jsx)(l.$,{variant:"outline",size:"icon",disabled:G||1===V||K,onClick:()=>ex(L,1),children:(0,a.jsx)(x.A,{className:"h-4 w-4"})})]}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"Controls how often memory usage is updated."})]})})]})]})})]})}},53538:(e,t,s)=>{"use strict";s.d(t,{BK:()=>o,eu:()=>l,q5:()=>d});var a=s(20475),r=s(20107),i=s(88601),n=s(22250);let l=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(i.bL,{ref:t,className:(0,n.cn)("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",s),...r})});l.displayName=i.bL.displayName;let o=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(i._V,{ref:t,className:(0,n.cn)("aspect-square h-full w-full",s),...r})});o.displayName=i._V.displayName;let d=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(i.H4,{ref:t,className:(0,n.cn)("flex h-full w-full items-center justify-center rounded-full bg-muted",s),...r})});d.displayName=i.H4.displayName},42541:(e,t,s)=>{"use strict";s.d(t,{$:()=>d,r:()=>o});var a=s(20475),r=s(20107),i=s(61837),n=s(29395),l=s(22250);let o=(0,n.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),d=r.forwardRef((e,t)=>{let{className:s,variant:r,size:n,asChild:d=!1,...c}=e,m=d?i.DX:"button";return(0,a.jsx)(m,{className:(0,l.cn)(o({variant:r,size:n,className:s})),ref:t,...c})});d.displayName="Button"},72167:(e,t,s)=>{"use strict";s.d(t,{BT:()=>d,Wu:()=>c,ZB:()=>o,Zp:()=>n,aR:()=>l,wL:()=>m});var a=s(20475),r=s(20107),i=s(22250);let n=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("rounded-xl border bg-card text-card-foreground shadow",s),...r})});n.displayName="Card";let l=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("flex flex-col space-y-1.5 p-6",s),...r})});l.displayName="CardHeader";let o=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("h3",{ref:t,className:(0,i.cn)("font-semibold leading-none tracking-tight",s),...r})});o.displayName="CardTitle";let d=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("p",{ref:t,className:(0,i.cn)("text-sm text-muted-foreground",s),...r})});d.displayName="CardDescription";let c=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("p-6 pt-0",s),...r})});c.displayName="CardContent";let m=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("flex items-center p-6 pt-0",s),...r})});m.displayName="CardFooter"},64219:(e,t,s)=>{"use strict";s.d(t,{p:()=>n});var a=s(20475),r=s(20107),i=s(22250);let n=r.forwardRef((e,t)=>{let{className:s,type:r,...n}=e;return(0,a.jsx)("input",{type:r,className:(0,i.cn)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",s),ref:t,...n})});n.displayName="Input"},49153:(e,t,s)=>{"use strict";s.d(t,{J:()=>d});var a=s(20475),r=s(20107),i=s(21840),n=s(29395),l=s(22250);let o=(0,n.F)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),d=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(i.b,{ref:t,className:(0,l.cn)(o(),s),...r})});d.displayName=i.b.displayName},35601:(e,t,s)=>{"use strict";s.d(t,{TR:()=>g,bq:()=>m,eb:()=>h,gC:()=>f,l6:()=>o,s3:()=>d,yv:()=>c});var a=s(20475),r=s(20107),i=s(7197),n=s(95257),l=s(22250);let o=n.bL,d=n.YJ,c=n.WT,m=r.forwardRef((e,t)=>{let{className:s,children:r,...o}=e;return(0,a.jsxs)(n.l9,{ref:t,className:(0,l.cn)("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",s),...o,children:[r,(0,a.jsx)(n.In,{asChild:!0,children:(0,a.jsx)(i.TBE,{className:"h-4 w-4 opacity-50"})})]})});m.displayName=n.l9.displayName;let u=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.PP,{ref:t,className:(0,l.cn)("flex cursor-default items-center justify-center py-1",s),...r,children:(0,a.jsx)(i.Mtm,{})})});u.displayName=n.PP.displayName;let p=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.wn,{ref:t,className:(0,l.cn)("flex cursor-default items-center justify-center py-1",s),...r,children:(0,a.jsx)(i.D3D,{})})});p.displayName=n.wn.displayName;let f=r.forwardRef((e,t)=>{let{className:s,children:r,position:i="popper",...o}=e;return(0,a.jsx)(n.ZL,{children:(0,a.jsxs)(n.UC,{ref:t,className:(0,l.cn)("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===i&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",s),position:i,...o,children:[(0,a.jsx)(u,{}),(0,a.jsx)(n.LM,{className:(0,l.cn)("p-1","popper"===i&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:r}),(0,a.jsx)(p,{})]})})});f.displayName=n.UC.displayName;let g=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.JU,{ref:t,className:(0,l.cn)("px-2 py-1.5 text-sm font-semibold",s),...r})});g.displayName=n.JU.displayName;let h=r.forwardRef((e,t)=>{let{className:s,children:r,...o}=e;return(0,a.jsxs)(n.q7,{ref:t,className:(0,l.cn)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",s),...o,children:[(0,a.jsx)("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,a.jsx)(n.VF,{children:(0,a.jsx)(i.Srz,{className:"h-4 w-4"})})}),(0,a.jsx)(n.p4,{children:r})]})});h.displayName=n.q7.displayName,r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.wv,{ref:t,className:(0,l.cn)("-mx-1 my-1 h-px bg-muted",s),...r})}).displayName=n.wv.displayName},76554:(e,t,s)=>{"use strict";s.d(t,{Separator:()=>l});var a=s(20475),r=s(20107),i=s(88853),n=s(22250);let l=r.forwardRef((e,t)=>{let{className:s,orientation:r="horizontal",decorative:l=!0,...o}=e;return(0,a.jsx)(i.b,{ref:t,decorative:l,orientation:r,className:(0,n.cn)("shrink-0 bg-border","horizontal"===r?"h-[1px] w-full":"h-full w-[1px]",s),...o})});l.displayName=i.b.displayName},36760:(e,t,s)=>{"use strict";s.d(t,{E:()=>i});var a=s(20475),r=s(22250);function i(e){let{className:t,...s}=e;return(0,a.jsx)("div",{className:(0,r.cn)("animate-pulse rounded-md bg-primary/10",t),...s})}},32857:(e,t,s)=>{"use strict";s.d(t,{dj:()=>u,oR:()=>m});var a=s(20107);let r=0,i=new Map,n=e=>{if(i.has(e))return;let t=setTimeout(()=>{i.delete(e),c({type:"REMOVE_TOAST",toastId:e})},1e6);i.set(e,t)},l=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:s}=t;return s?n(s):e.toasts.forEach(e=>{n(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===s||void 0===s?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},o=[],d={toasts:[]};function c(e){d=l(d,e),o.forEach(e=>{e(d)})}function m(e){let{...t}=e,s=(r=(r+1)%Number.MAX_SAFE_INTEGER).toString(),a=()=>c({type:"DISMISS_TOAST",toastId:s});return c({type:"ADD_TOAST",toast:{...t,id:s,open:!0,onOpenChange:e=>{e||a()}}}),{id:s,dismiss:a,update:e=>c({type:"UPDATE_TOAST",toast:{...e,id:s}})}}function u(){let[e,t]=a.useState(d);return a.useEffect(()=>(o.push(t),()=>{let e=o.indexOf(t);e>-1&&o.splice(e,1)}),[e]),{...e,toast:m,dismiss:e=>c({type:"DISMISS_TOAST",toastId:e})}}},22250:(e,t,s)=>{"use strict";s.d(t,{cn:()=>i});var a=s(64901),r=s(868);function i(){for(var e=arguments.length,t=Array(e),s=0;s{var t=t=>e(e.s=t);e.O(0,[9980,7780,8885,3746,9464,3494,940,191,6035,7358],()=>t(18508)),_N_E=e.O()}]); \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/settings/personalization/page-ab9fa733339f0739.js b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/settings/personalization/page-ab9fa733339f0739.js deleted file mode 100644 index f154f0b..0000000 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/chunks/app/dashboard/settings/personalization/page-ab9fa733339f0739.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2824],{18508:(e,t,s)=>{Promise.resolve().then(s.bind(s,39898))},39898:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>j});var a=s(20475),r=s(20107),i=s(72167),n=s(35601),l=s(42541),o=s(64219),d=s(49153),c=s(53538),m=s(32857),u=s(66715),p=s(23615),f=s(59166),g=s(42841),h=s(51873),x=s(37369),v=s(76554),y=s(36760);let j=()=>{let{toast:e}=(0,m.dj)(),[t,s]=(0,r.useState)(!1),[j,b]=(0,r.useState)(!1),[w,N]=(0,r.useState)(!1),[E,S]=(0,r.useState)(null),[T,C]=(0,r.useState)(!1),[R,P]=(0,r.useState)("km"),[F,k]=(0,r.useState)(!1),[_,U]=(0,r.useState)(!0),[A,I]=(0,r.useState)(!0),[D,M]=(0,r.useState)(5),[O,z]=(0,r.useState)(!1),[q,J]=(0,r.useState)(!0),[L,B]=(0,r.useState)(1),[V,$]=(0,r.useState)(!1),[G,W]=(0,r.useState)(!0),K=(0,r.useRef)(null),Z="profile_picture_data",H="profile_picture_metadata";(0,r.useEffect)(()=>{Y(),et(),eo(),em(),ef()},[]);let Y=()=>{try{let e=localStorage.getItem(Z);e&&(S(e),C(!0))}catch(e){console.error("Error loading cached image:",e)}},Q=(e,t)=>{try{localStorage.setItem(Z,e),localStorage.setItem(H,JSON.stringify(t))}catch(s){if(console.error("Error updating cache:",s),s instanceof Error&&"QuotaExceededError"===s.name){X();try{localStorage.setItem(Z,e),localStorage.setItem(H,JSON.stringify(t))}catch(e){console.error("Failed to cache image even after clearing:",e)}}}},X=()=>{try{localStorage.removeItem(Z),localStorage.removeItem(H)}catch(e){console.error("Error clearing cache:",e)}},ee=()=>{try{let e=localStorage.getItem(H);return e?JSON.parse(e):null}catch(e){return console.error("Error getting cached metadata:",e),null}},et=async()=>{try{var e;s(!0);let t=await fetch("/cgi-bin/quecmanager/settings/profile_picture.sh"),a=await t.json();if("success"===a.status&&(null===(e=a.data)||void 0===e?void 0:e.exists)){let e={size:a.data.size,modified:a.data.modified,type:a.data.type},t=ee();t&&t.size===e.size&&t.modified===e.modified&&t.type===e.type?C(!0):a.data.data&&(S(a.data.data),C(!0),Q(a.data.data,e))}else S(null),C(!1),X()}catch(e){console.error("Error fetching profile picture:",e),localStorage.getItem(Z)||(S(null),C(!1))}finally{s(!1)}},es=e=>{if(!["image/jpeg","image/jpg","image/png","image/gif","image/webp","image/pjpeg","image/x-png"].includes(e.type)){let t=e.name.toLowerCase();if(![".jpg",".jpeg",".png",".gif",".webp"].some(e=>t.endsWith(e)))return{valid:!1,error:"Invalid file type: ".concat(e.type,". Please select a JPEG, PNG, GIF, or WebP image.")}}return e.size>3145728?{valid:!1,error:"File too large. Please select an image smaller than 3MB."}:e.size<1024?{valid:!1,error:"File too small. Please select a valid image file (minimum 1KB)."}:{valid:!0}},ea=e=>new Promise(t=>{let s=new FileReader;s.onload=e=>{var s;let a=null===(s=e.target)||void 0===s?void 0:s.result;if(!a){t({valid:!1,error:"Could not read file content"});return}let r=new Uint8Array(a);if(r.length<4){t({valid:!1,error:"File too small to be a valid image"});return}if(255===r[0]&&216===r[1]||r.length>=8&&137===r[0]&&80===r[1]&&78===r[2]&&71===r[3]||r.length>=6&&71===r[0]&&73===r[1]&&70===r[2]&&56===r[3]){t({valid:!0});return}if(r.length>=12){let e=82===r[0]&&73===r[1]&&70===r[2]&&70===r[3],s=87===r[8]&&69===r[9]&&66===r[10]&&80===r[11];if(e&&s){t({valid:!0});return}}t({valid:!1,error:"File does not appear to be a valid image format"})},s.onerror=()=>{t({valid:!1,error:"Error reading file content"})},s.readAsArrayBuffer(e.slice(0,16))}),er=async t=>{var s;let a=null===(s=t.target.files)||void 0===s?void 0:s[0];if(!a)return;let r=es(a);if(!r.valid){e({title:"Invalid File",description:r.error,variant:"destructive"});return}let i=await ea(a);if(!i.valid){e({title:"Invalid Image File",description:i.error||"The selected file does not appear to be a valid image.",variant:"destructive"});return}ei(a)},ei=async t=>{b(!0);try{let s=await fetch("/cgi-bin/quecmanager/settings/profile_picture.sh",{method:"POST",body:t});if(!s.ok)throw Error("HTTP error! status: ".concat(s.status));let a=await s.json();if("success"===a.status)e({title:"Profile Picture Updated",description:"Your profile picture has been updated successfully."}),await et(),window.dispatchEvent(new CustomEvent("profilePictureUpdated"));else throw Error(a.message||"Failed to upload profile picture")}catch(t){console.error("Error uploading profile picture:",t),e({title:"Upload Failed",description:t instanceof Error?t.message:"Failed to upload profile picture.",variant:"destructive"})}finally{b(!1),K.current&&(K.current.value="")}},en=async()=>{N(!0);try{let t=await fetch("/cgi-bin/quecmanager/settings/profile_picture.sh",{method:"DELETE"}),s=await t.json();if("success"===s.status)e({title:"Profile Picture Deleted",description:"Your profile picture has been removed successfully."}),S(null),C(!1),X(),window.dispatchEvent(new CustomEvent("profilePictureDeleted"));else throw Error(s.message||"Failed to delete profile picture")}catch(t){console.error("Error deleting profile picture:",t),e({title:"Delete Failed",description:t instanceof Error?t.message:"Failed to delete profile picture.",variant:"destructive"})}finally{N(!1)}},el=()=>{var e;null===(e=K.current)||void 0===e||e.click()},eo=async()=>{try{k(!0);let e=await fetch("/cgi-bin/quecmanager/settings/measurement_units.sh"),t=await e.json();"success"===t.status&&t.data&&(P(t.data.unit),U(t.data.isDefault))}catch(t){console.error("Error fetching measurement unit:",t),e({title:"Error",description:"Failed to load measurement unit preferences.",variant:"destructive"})}finally{k(!1)}},ed=async t=>{try{k(!0);let s=await fetch("/cgi-bin/quecmanager/settings/measurement_units.sh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({unit:t})}),a=await s.json();if("success"===a.status)P(t),U(!1),e({title:"Preference Updated",description:"Measurement unit set to ".concat("km"===t?"kilometers":"miles",".")});else throw Error(a.message||"Failed to update measurement unit")}catch(t){console.error("Error updating measurement unit:",t),e({title:"Update Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{k(!1)}},ec=async()=>{try{k(!0);let t=await fetch("/cgi-bin/quecmanager/settings/measurement_units.sh",{method:"DELETE"}),s=await t.json();if("success"===s.status&&s.data)P(s.data.unit),U(!0),e({title:"Preference Reset",description:"Measurement unit reset to system default (".concat("km"===s.data.unit?"kilometers":"miles",").")});else throw Error(s.message||"Failed to reset measurement unit")}catch(t){console.error("Error resetting measurement unit:",t),e({title:"Reset Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{k(!1)}},em=async()=>{try{z(!0);let e=await fetch("/cgi-bin/quecmanager/settings/ping_settings.sh"),t=await e.json();"success"===t.status&&t.data&&(I(t.data.enabled),"number"==typeof t.data.interval&&M(t.data.interval))}catch(t){console.error("Error fetching ping settings:",t),e({title:"Error",description:"Failed to load ping settings.",variant:"destructive"})}finally{z(!1)}},eu=async(t,s)=>{try{z(!0);let i=null!=s?s:D,n=await fetch("/cgi-bin/quecmanager/settings/ping_settings.sh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({enabled:t,interval:i})}),l=await n.json();if("success"===l.status){var a,r;I(t),"number"==typeof(null===(a=l.data)||void 0===a?void 0:a.interval)&&M(l.data.interval);let s="number"==typeof(null===(r=l.data)||void 0===r?void 0:r.interval)?l.data.interval:i;t!==A&&e({title:"Ping Status Updated",description:"Ping has been ".concat(t?"enabled":"disabled",".")}),s!==D&&e({title:"Polling Rate Updated",description:"Now measuring every ".concat(s," second").concat(1===s?"":"s",".")}),window.dispatchEvent(new CustomEvent("pingSettingsUpdated"))}else throw Error(l.message||"Failed to update ping settings")}catch(t){console.error("Error updating ping settings:",t),e({title:"Update Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{z(!1)}},ep=async()=>{try{z(!0);let t=await fetch("/cgi-bin/quecmanager/settings/ping_settings.sh",{method:"DELETE"}),s=await t.json();if("success"===s.status&&s.data)I(s.data.enabled),"number"==typeof s.data.interval?M(s.data.interval):M(5),e({title:"Ping Settings Reset",description:"Ping settings reset to system default (".concat(s.data.enabled?"enabled":"disabled",").")}),window.dispatchEvent(new CustomEvent("pingSettingsUpdated"));else throw Error(s.message||"Failed to reset ping settings")}catch(t){console.error("Error resetting ping settings:",t),e({title:"Reset Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{z(!1)}},ef=async()=>{try{$(!0);let e=await fetch("/cgi-bin/quecmanager/home/memory/memory_service.sh"),t=await e.json();"success"===t.status&&t.data&&(J(t.data.enabled),"number"==typeof t.data.interval&&B(t.data.interval),W(!t.data.enabled))}catch(t){console.error("Error fetching memory settings:",t),e({title:"Error",description:"Failed to load memory monitoring settings.",variant:"destructive"})}finally{$(!1)}},eg=async(t,s)=>{try{$(!0);let i=null!=s?s:L,n=await fetch("/cgi-bin/quecmanager/settings/memory_settings.sh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({enabled:t,interval:i})}),l=await n.json();if("success"===l.status){var a,r;J(t),"number"==typeof(null===(a=l.data)||void 0===a?void 0:a.interval)?B(l.data.interval):B(i),W(!t);let s="number"==typeof(null===(r=l.data)||void 0===r?void 0:r.interval)?l.data.interval:i;t!==q&&e({title:"Memory Monitoring Updated",description:"Memory monitoring has been ".concat(t?"enabled":"disabled",".")}),s!==L&&e({title:"Update Rate Changed",description:"Memory now updates every ".concat(s," second").concat(1===s?"":"s",".")}),window.dispatchEvent(new CustomEvent("memorySettingsUpdated"))}else throw Error(l.message||"Failed to update memory settings")}catch(t){console.error("Error updating memory settings:",t),e({title:"Update Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{$(!1)}},eh=async()=>{try{$(!0);let t=await fetch("/cgi-bin/quecmanager/settings/memory_settings.sh",{method:"DELETE"}),s=await t.json();if("success"===s.status)J(!1),B(1),W(!0),e({title:"Memory Settings Reset",description:"Memory monitoring reset to system default (disabled)."}),window.dispatchEvent(new CustomEvent("memorySettingsUpdated"));else throw Error(s.message||"Failed to reset memory settings")}catch(t){console.error("Error resetting memory settings:",t),e({title:"Reset Failed",description:t instanceof Error?t.message:"Unknown error",variant:"destructive"})}finally{$(!1)}};return(0,a.jsxs)(i.Zp,{children:[(0,a.jsxs)(i.aR,{children:[(0,a.jsx)(i.ZB,{children:"Personalization Settings"}),(0,a.jsx)(i.BT,{children:"Customize your profile and preferences."})]}),(0,a.jsx)(i.Wu,{children:(0,a.jsxs)("div",{className:"grid gap-6",children:[(0,a.jsxs)("div",{className:"flex flex-col items-center space-y-4",children:[(0,a.jsx)("div",{className:"grid gap-6"}),(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsx)(c.eu,{className:"lg:h-48 lg:w-48 h-32 w-32 border-4 border-dashed border-gray-300 hover:border-gray-400 transition-colors",children:E?(0,a.jsx)(c.BK,{src:E,alt:"Profile Picture"}):(0,a.jsx)(c.q5,{className:"bg-gray-100",children:(0,a.jsx)(u.A,{className:"h-12 w-12 text-gray-400"})})}),(0,a.jsx)("div",{className:"absolute inset-0 flex items-center justify-center bg-black bg-opacity-50 rounded-full opacity-0 hover:opacity-100 transition-opacity cursor-pointer",onClick:el,children:(0,a.jsx)(p.A,{className:"h-8 w-8 text-white"})})]}),(0,a.jsx)("p",{className:"text-muted-foreground text-sm italic",children:"Supported formats: JPEG, PNG, GIF, WebP (max 3MB)."}),(0,a.jsxs)("div",{className:"flex space-x-2",children:[(0,a.jsxs)(l.$,{variant:"outline",size:"sm",onClick:el,disabled:j||t||w,children:[j?(0,a.jsx)(f.A,{className:"h-4 w-4 animate-spin"}):(0,a.jsx)(g.A,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:j?"Uploading...":"Upload"})]}),T&&(0,a.jsx)(a.Fragment,{children:(0,a.jsxs)(l.$,{variant:"destructive",size:"sm",onClick:en,disabled:t||w||j||!T,children:[w?(0,a.jsx)(f.A,{className:"h-4 w-4 animate-spin"}):(0,a.jsx)(h.A,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:w?"Deleting...":"Delete"})]})})]}),(0,a.jsx)(o.p,{ref:K,type:"file",accept:"image/jpeg,image/jpg,image/png,image/gif,image/webp",onChange:er,className:"hidden"})]}),(0,a.jsx)(v.Separator,{className:"w-full my-2"}),(0,a.jsxs)("div",{className:"grid lg:grid-cols-2 grid-flow-row gap-4",children:[(0,a.jsx)("div",{className:"lg:col-span-2 col-span-1",children:(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"MeasurementUnits",children:"Distance Measurement Unit"}),F?(0,a.jsx)(y.E,{className:"h-8"}):(0,a.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,a.jsxs)(n.l6,{disabled:F,value:R,onValueChange:e=>ed(e),children:[(0,a.jsx)(n.bq,{className:"w-full",children:(0,a.jsx)(n.yv,{children:"km"===R?"Kilometers (km)":"Miles (mi)"})}),(0,a.jsx)(n.gC,{children:(0,a.jsxs)(n.s3,{children:[(0,a.jsx)(n.TR,{children:"Distance Unit"}),(0,a.jsx)(n.eb,{value:"km",children:"Kilometers (km)"}),(0,a.jsx)(n.eb,{value:"mi",children:"Miles (mi)"})]})})]}),(0,a.jsx)(l.$,{variant:"outline",size:"icon",disabled:F||_,onClick:ec,children:(0,a.jsx)(x.A,{className:"h-4 w-4"})})]}),_?(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"This is the default unit based on your system settings."}):(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"This is a custom unit setting."})]})}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"PingSettings",children:"Network Latency Testing"}),O?(0,a.jsx)(y.E,{className:"h-8"}):(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,a.jsxs)(n.l6,{disabled:O,value:A?"enabled":"disabled",onValueChange:e=>eu("enabled"===e),children:[(0,a.jsx)(n.bq,{className:"w-full",children:(0,a.jsx)(n.yv,{children:A?"Enabled":"Disabled"})}),(0,a.jsx)(n.gC,{children:(0,a.jsxs)(n.s3,{children:[(0,a.jsx)(n.TR,{children:"Latency Testing"}),(0,a.jsx)(n.eb,{value:"enabled",children:"Enable latency testing"}),(0,a.jsx)(n.eb,{value:"disabled",children:"Disable latency testing"})]})})]}),(0,a.jsx)(l.$,{variant:"outline",size:"icon",disabled:O,onClick:ep,children:(0,a.jsx)(x.A,{className:"h-4 w-4"})})]}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"Controls whether the device measures network latency."})]})]}),(0,a.jsx)("div",{className:"grid w-full max-w-sm items-center gap-2",children:O?(0,a.jsx)(y.E,{className:"h-8"}):(0,a.jsxs)("div",{className:"grid w-full items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"PingPolling",children:"Polling Rate"}),(0,a.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,a.jsxs)(n.l6,{disabled:O||!A,value:String(D),onValueChange:e=>{let t=parseInt(e,10);M(t),eu(A,t)},children:[(0,a.jsx)(n.bq,{className:"w-full",children:(0,a.jsxs)(n.yv,{children:[D," seconds"]})}),(0,a.jsx)(n.gC,{children:(0,a.jsxs)(n.s3,{children:[(0,a.jsx)(n.TR,{children:"Polling Rate"}),(0,a.jsx)(n.eb,{value:"2",children:"Every 2 seconds"}),(0,a.jsx)(n.eb,{value:"5",children:"Every 5 seconds"}),(0,a.jsx)(n.eb,{value:"10",children:"Every 10 seconds"}),(0,a.jsx)(n.eb,{value:"15",children:"Every 15 seconds"}),(0,a.jsx)(n.eb,{value:"30",children:"Every 30 seconds"}),(0,a.jsx)(n.eb,{value:"60",children:"Every 60 seconds"})]})})]}),(0,a.jsx)(l.$,{variant:"outline",size:"icon",disabled:O||5===D,onClick:()=>eu(A,5),children:(0,a.jsx)(x.A,{className:"h-4 w-4"})})]}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"Controls how often the device measures latency."})]})}),(0,a.jsxs)("div",{className:"grid w-full max-w-sm items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"MemorySettings",children:"Memory Monitoring"}),V?(0,a.jsx)(y.E,{className:"h-8"}):(0,a.jsx)("div",{className:"flex flex-col gap-2",children:(0,a.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,a.jsxs)(n.l6,{disabled:V,value:q?"enabled":"disabled",onValueChange:e=>eg("enabled"===e),children:[(0,a.jsx)(n.bq,{className:"w-full",children:(0,a.jsx)(n.yv,{children:q?"Enabled":"Disabled"})}),(0,a.jsx)(n.gC,{children:(0,a.jsxs)(n.s3,{children:[(0,a.jsx)(n.TR,{children:"Memory Monitoring"}),(0,a.jsx)(n.eb,{value:"enabled",children:"Enable memory monitoring"}),(0,a.jsx)(n.eb,{value:"disabled",children:"Disable memory monitoring"})]})})]}),(0,a.jsx)(l.$,{variant:"outline",size:"icon",disabled:V||G,onClick:eh,children:(0,a.jsx)(x.A,{className:"h-4 w-4"})})]})}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"Controls whether the device measures memory usage."})]}),(0,a.jsx)("div",{className:"grid w-full max-w-sm items-center gap-2",children:V?(0,a.jsx)(y.E,{className:"h-8"}):(0,a.jsxs)("div",{className:"grid w-full items-center gap-2",children:[(0,a.jsx)(d.J,{htmlFor:"MemoryUpdateRate",children:"Update Rate"}),(0,a.jsxs)("div",{className:"flex flex-row gap-2 items-center",children:[(0,a.jsxs)(n.l6,{disabled:V||!q,value:String(L),onValueChange:e=>{let t=parseInt(e,10);B(t),eg(q,t)},children:[(0,a.jsx)(n.bq,{className:"w-full",children:(0,a.jsxs)(n.yv,{children:[L," second",1===L?"":"s"]})}),(0,a.jsx)(n.gC,{children:(0,a.jsxs)(n.s3,{children:[(0,a.jsx)(n.TR,{children:"Update Rate"}),(0,a.jsx)(n.eb,{value:"1",children:"Every 1 second"}),(0,a.jsx)(n.eb,{value:"2",children:"Every 2 seconds"}),(0,a.jsx)(n.eb,{value:"3",children:"Every 3 seconds"}),(0,a.jsx)(n.eb,{value:"5",children:"Every 5 seconds"}),(0,a.jsx)(n.eb,{value:"10",children:"Every 10 seconds"})]})})]}),(0,a.jsx)(l.$,{variant:"outline",size:"icon",disabled:V||1===L||G,onClick:()=>eg(q,1),children:(0,a.jsx)(x.A,{className:"h-4 w-4"})})]}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:"Controls how often memory usage is updated."})]})})]})]})})]})}},53538:(e,t,s)=>{"use strict";s.d(t,{BK:()=>o,eu:()=>l,q5:()=>d});var a=s(20475),r=s(20107),i=s(88601),n=s(22250);let l=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(i.bL,{ref:t,className:(0,n.cn)("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",s),...r})});l.displayName=i.bL.displayName;let o=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(i._V,{ref:t,className:(0,n.cn)("aspect-square h-full w-full",s),...r})});o.displayName=i._V.displayName;let d=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(i.H4,{ref:t,className:(0,n.cn)("flex h-full w-full items-center justify-center rounded-full bg-muted",s),...r})});d.displayName=i.H4.displayName},42541:(e,t,s)=>{"use strict";s.d(t,{$:()=>d,r:()=>o});var a=s(20475),r=s(20107),i=s(61837),n=s(29395),l=s(22250);let o=(0,n.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),d=r.forwardRef((e,t)=>{let{className:s,variant:r,size:n,asChild:d=!1,...c}=e,m=d?i.DX:"button";return(0,a.jsx)(m,{className:(0,l.cn)(o({variant:r,size:n,className:s})),ref:t,...c})});d.displayName="Button"},72167:(e,t,s)=>{"use strict";s.d(t,{BT:()=>d,Wu:()=>c,ZB:()=>o,Zp:()=>n,aR:()=>l,wL:()=>m});var a=s(20475),r=s(20107),i=s(22250);let n=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("rounded-xl border bg-card text-card-foreground shadow",s),...r})});n.displayName="Card";let l=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("flex flex-col space-y-1.5 p-6",s),...r})});l.displayName="CardHeader";let o=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("h3",{ref:t,className:(0,i.cn)("font-semibold leading-none tracking-tight",s),...r})});o.displayName="CardTitle";let d=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("p",{ref:t,className:(0,i.cn)("text-sm text-muted-foreground",s),...r})});d.displayName="CardDescription";let c=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("p-6 pt-0",s),...r})});c.displayName="CardContent";let m=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)("div",{ref:t,className:(0,i.cn)("flex items-center p-6 pt-0",s),...r})});m.displayName="CardFooter"},64219:(e,t,s)=>{"use strict";s.d(t,{p:()=>n});var a=s(20475),r=s(20107),i=s(22250);let n=r.forwardRef((e,t)=>{let{className:s,type:r,...n}=e;return(0,a.jsx)("input",{type:r,className:(0,i.cn)("flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",s),ref:t,...n})});n.displayName="Input"},49153:(e,t,s)=>{"use strict";s.d(t,{J:()=>d});var a=s(20475),r=s(20107),i=s(21840),n=s(29395),l=s(22250);let o=(0,n.F)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),d=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(i.b,{ref:t,className:(0,l.cn)(o(),s),...r})});d.displayName=i.b.displayName},35601:(e,t,s)=>{"use strict";s.d(t,{TR:()=>g,bq:()=>m,eb:()=>h,gC:()=>f,l6:()=>o,s3:()=>d,yv:()=>c});var a=s(20475),r=s(20107),i=s(7197),n=s(95257),l=s(22250);let o=n.bL,d=n.YJ,c=n.WT,m=r.forwardRef((e,t)=>{let{className:s,children:r,...o}=e;return(0,a.jsxs)(n.l9,{ref:t,className:(0,l.cn)("flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",s),...o,children:[r,(0,a.jsx)(n.In,{asChild:!0,children:(0,a.jsx)(i.TBE,{className:"h-4 w-4 opacity-50"})})]})});m.displayName=n.l9.displayName;let u=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.PP,{ref:t,className:(0,l.cn)("flex cursor-default items-center justify-center py-1",s),...r,children:(0,a.jsx)(i.Mtm,{})})});u.displayName=n.PP.displayName;let p=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.wn,{ref:t,className:(0,l.cn)("flex cursor-default items-center justify-center py-1",s),...r,children:(0,a.jsx)(i.D3D,{})})});p.displayName=n.wn.displayName;let f=r.forwardRef((e,t)=>{let{className:s,children:r,position:i="popper",...o}=e;return(0,a.jsx)(n.ZL,{children:(0,a.jsxs)(n.UC,{ref:t,className:(0,l.cn)("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===i&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",s),position:i,...o,children:[(0,a.jsx)(u,{}),(0,a.jsx)(n.LM,{className:(0,l.cn)("p-1","popper"===i&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:r}),(0,a.jsx)(p,{})]})})});f.displayName=n.UC.displayName;let g=r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.JU,{ref:t,className:(0,l.cn)("px-2 py-1.5 text-sm font-semibold",s),...r})});g.displayName=n.JU.displayName;let h=r.forwardRef((e,t)=>{let{className:s,children:r,...o}=e;return(0,a.jsxs)(n.q7,{ref:t,className:(0,l.cn)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",s),...o,children:[(0,a.jsx)("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,a.jsx)(n.VF,{children:(0,a.jsx)(i.Srz,{className:"h-4 w-4"})})}),(0,a.jsx)(n.p4,{children:r})]})});h.displayName=n.q7.displayName,r.forwardRef((e,t)=>{let{className:s,...r}=e;return(0,a.jsx)(n.wv,{ref:t,className:(0,l.cn)("-mx-1 my-1 h-px bg-muted",s),...r})}).displayName=n.wv.displayName},76554:(e,t,s)=>{"use strict";s.d(t,{Separator:()=>l});var a=s(20475),r=s(20107),i=s(88853),n=s(22250);let l=r.forwardRef((e,t)=>{let{className:s,orientation:r="horizontal",decorative:l=!0,...o}=e;return(0,a.jsx)(i.b,{ref:t,decorative:l,orientation:r,className:(0,n.cn)("shrink-0 bg-border","horizontal"===r?"h-[1px] w-full":"h-full w-[1px]",s),...o})});l.displayName=i.b.displayName},36760:(e,t,s)=>{"use strict";s.d(t,{E:()=>i});var a=s(20475),r=s(22250);function i(e){let{className:t,...s}=e;return(0,a.jsx)("div",{className:(0,r.cn)("animate-pulse rounded-md bg-primary/10",t),...s})}},32857:(e,t,s)=>{"use strict";s.d(t,{dj:()=>u,oR:()=>m});var a=s(20107);let r=0,i=new Map,n=e=>{if(i.has(e))return;let t=setTimeout(()=>{i.delete(e),c({type:"REMOVE_TOAST",toastId:e})},1e6);i.set(e,t)},l=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:s}=t;return s?n(s):e.toasts.forEach(e=>{n(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===s||void 0===s?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}},o=[],d={toasts:[]};function c(e){d=l(d,e),o.forEach(e=>{e(d)})}function m(e){let{...t}=e,s=(r=(r+1)%Number.MAX_SAFE_INTEGER).toString(),a=()=>c({type:"DISMISS_TOAST",toastId:s});return c({type:"ADD_TOAST",toast:{...t,id:s,open:!0,onOpenChange:e=>{e||a()}}}),{id:s,dismiss:a,update:e=>c({type:"UPDATE_TOAST",toast:{...e,id:s}})}}function u(){let[e,t]=a.useState(d);return a.useEffect(()=>(o.push(t),()=>{let e=o.indexOf(t);e>-1&&o.splice(e,1)}),[e]),{...e,toast:m,dismiss:e=>c({type:"DISMISS_TOAST",toastId:e})}}},22250:(e,t,s)=>{"use strict";s.d(t,{cn:()=>i});var a=s(64901),r=s(868);function i(){for(var e=arguments.length,t=Array(e),s=0;s{var t=t=>e(e.s=t);e.O(0,[9980,7780,8885,3746,9464,3494,940,191,6035,7358],()=>t(18508)),_N_E=e.O()}]); \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/css/82ea992fcf0f52f2.css b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/css/82ea992fcf0f52f2.css deleted file mode 100644 index b0f614b..0000000 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/css/82ea992fcf0f52f2.css +++ /dev/null @@ -1,3 +0,0 @@ -*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/* -! tailwindcss v3.4.13 | MIT License | https://tailwindcss.com -*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}:root{--background:0 0% 100%;--foreground:224 71.4% 4.1%;--card:0 0% 100%;--card-foreground:224 71.4% 4.1%;--popover:0 0% 100%;--popover-foreground:224 71.4% 4.1%;--primary:262.1 83.3% 57.8%;--primary-foreground:210 20% 98%;--secondary:220 14.3% 95.9%;--secondary-foreground:220.9 39.3% 11%;--muted:220 14.3% 95.9%;--muted-foreground:220 8.9% 46.1%;--accent:220 14.3% 95.9%;--accent-foreground:220.9 39.3% 11%;--destructive:0 84.2% 60.2%;--destructive-foreground:210 20% 98%;--border:220 13% 91%;--input:220 13% 91%;--ring:262.1 83.3% 57.8%;--radius:0.5rem;--chart-1:12 76% 61%;--chart-2:173 58% 39%;--chart-3:197 37% 24%;--chart-4:43 74% 66%;--chart-5:27 87% 67%}.dark{--background:224 71.4% 4.1%;--foreground:210 20% 98%;--card:224 71.4% 4.1%;--card-foreground:210 20% 98%;--popover:224 71.4% 4.1%;--popover-foreground:210 20% 98%;--primary:263.4 70% 50.4%;--primary-foreground:210 20% 98%;--secondary:215 27.9% 16.9%;--secondary-foreground:210 20% 98%;--muted:215 27.9% 16.9%;--muted-foreground:217.9 10.6% 64.9%;--accent:215 27.9% 16.9%;--accent-foreground:210 20% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:210 20% 98%;--border:215 27.9% 16.9%;--input:215 27.9% 16.9%;--ring:263.4 70% 50.4%;--chart-1:220 70% 50%;--chart-2:160 60% 45%;--chart-3:30 80% 55%;--chart-4:280 65% 60%;--chart-5:340 75% 55%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-inset-2{inset:-.5rem}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-bottom-12{bottom:-3rem}.-left-12{left:-3rem}.-left-8{left:-2rem}.-right-12{right:-3rem}.-top-12{top:-3rem}.-top-4{top:-1rem}.-top-8{top:-2rem}.bottom-0{bottom:0}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.top-full{top:100%}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.col-span-1{grid-column:span 1/span 1}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.col-span-8{grid-column:span 8/span 8}.row-start-2{grid-row-start:2}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.-ml-4{margin-left:-1rem}.-mr-2{margin-right:-.5rem}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-24{margin-top:6rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-auto{aspect-ratio:auto}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.size-12{width:3rem;height:3rem}.size-16{width:4rem;height:4rem}.size-24{width:6rem;height:6rem}.size-32{width:8rem;height:8rem}.size-36{width:9rem;height:9rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-full{width:100%;height:100%}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-36{height:9rem}.h-4{height:1rem}.h-44{height:11rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-72{height:18rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[1\.2rem\]{height:1.2rem}.h-\[140px\]{height:140px}.h-\[18px\]{height:18px}.h-\[1px\]{height:1px}.h-\[200px\]{height:200px}.h-\[250px\]{height:250px}.h-\[400px\]{height:400px}.h-\[500px\]{height:500px}.h-\[600px\]{height:600px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-96{max-height:24rem}.max-h-\[200px\]{max-height:200px}.max-h-\[300px\]{max-height:300px}.max-h-screen{max-height:100vh}.min-h-\[300px\]{min-height:300px}.min-h-\[60px\]{min-height:60px}.min-h-\[calc\(100vh_-_theme\(spacing\.16\)\)\]{min-height:calc(100vh - 4rem)}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-0{width:0}.w-1{width:.25rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[1\.2rem\]{width:1.2rem}.w-\[100px\]{width:100px}.w-\[140px\]{width:140px}.w-\[180px\]{width:180px}.w-\[18px\]{width:18px}.w-\[1px\]{width:1px}.w-\[200px\]{width:200px}.w-\[300px\]{width:300px}.w-\[50px\]{width:50px}.w-\[80px\]{width:80px}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-8{min-width:2rem}.min-w-9{min-width:2.25rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-10{max-width:2.5rem}.max-w-2xl{max-width:42rem}.max-w-32{max-width:8rem}.max-w-4xl{max-width:56rem}.max-w-6{max-width:1.5rem}.max-w-6xl{max-width:72rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.translate-x-\[-50\%\],.translate-y-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.rotate-0{--tw-rotate:0deg}.rotate-0,.rotate-90{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate:90deg}.scale-0{--tw-scale-x:0;--tw-scale-y:0}.scale-0,.scale-100{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{user-select:none}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-flow-row{grid-auto-flow:row}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-rows-\[20px_1fr_20px\]{grid-template-rows:20px 1fr 20px}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-evenly{justify-content:space-evenly}.justify-items-center{justify-items:center}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-px{gap:1px}.gap-x-1{column-gap:.25rem}.gap-x-2{column-gap:.5rem}.gap-x-4{column-gap:1rem}.gap-x-8{column-gap:2rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-5{row-gap:1.25rem}.gap-y-6{row-gap:1.5rem}.gap-y-8{row-gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-1\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.375rem * var(--tw-space-x-reverse));margin-left:calc(.375rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-e-lg{border-start-end-radius:var(--radius);border-end-end-radius:var(--radius)}.rounded-e-none{border-start-end-radius:0;border-end-end-radius:0}.rounded-s-lg{border-start-start-radius:var(--radius);border-end-start-radius:var(--radius)}.rounded-s-none{border-start-start-radius:0;border-end-start-radius:0}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\[1\.5px\]{border-width:1.5px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-0{border-right-width:0}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[--color-border\]{border-color:var(--color-border)}.border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity))}.border-border\/50{border-color:hsl(var(--border)/.5)}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive\/50{border-color:hsl(var(--destructive)/.5)}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity))}.border-gray-500{--tw-border-opacity:1;border-color:rgb(107 114 128/var(--tw-border-opacity))}.border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity))}.border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity))}.border-input{border-color:hsl(var(--input))}.border-orange-200{--tw-border-opacity:1;border-color:rgb(254 215 170/var(--tw-border-opacity))}.border-orange-500{--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity))}.border-primary{border-color:hsl(var(--primary))}.border-purple-200{--tw-border-opacity:1;border-color:rgb(233 213 255/var(--tw-border-opacity))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity))}.border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity))}.border-teal-200{--tw-border-opacity:1;border-color:rgb(153 246 228/var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-yellow-200{--tw-border-opacity:1;border-color:rgb(254 240 138/var(--tw-border-opacity))}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-\[--color-bg\]{background-color:var(--color-bg)}.bg-accent{background-color:hsl(var(--accent))}.bg-background{background-color:hsl(var(--background))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-black\/80{background-color:rgba(0,0,0,.8)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity))}.bg-blue-500\/10{background-color:rgba(59,130,246,.1)}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-emerald-500{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity))}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity))}.bg-foreground\/20{background-color:hsl(var(--foreground)/.2)}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity))}.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity))}.bg-green-500\/10{background-color:rgba(34,197,94,.1)}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/30{background-color:hsl(var(--muted)/.3)}.bg-muted\/40{background-color:hsl(var(--muted)/.4)}.bg-muted\/50{background-color:hsl(var(--muted)/.5)}.bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213/var(--tw-bg-opacity))}.bg-orange-500{--tw-bg-opacity:1;background-color:rgb(249 115 22/var(--tw-bg-opacity))}.bg-orange-600{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary)/.1)}.bg-primary\/20{background-color:hsl(var(--primary)/.2)}.bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity))}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.bg-rose-500{--tw-bg-opacity:1;background-color:rgb(244 63 94/var(--tw-bg-opacity))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}.bg-teal-100{--tw-bg-opacity:1;background-color:rgb(204 251 241/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-violet-500\/10{background-color:rgba(139,92,246,.1)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity))}.bg-yellow-500{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity))}.bg-opacity-50{--tw-bg-opacity:0.5}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-400{--tw-gradient-from:#60a5fa var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.fill-current{fill:currentColor}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[1px\]{padding:1px}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-\[9px\]{padding-top:9px;padding-bottom:9px}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-2{padding-left:.5rem}.pl-2\.5{padding-left:.625rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-2\.5{padding-right:.625rem}.pr-4{padding-right:1rem}.pr-6{padding-right:1.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.8rem\]{font-size:.8rem}.text-\[3rem\]{font-size:3rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/50{color:hsl(var(--foreground)/.5)}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-orange-500{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity))}.text-orange-800{--tw-text-opacity:1;color:rgb(154 52 18/var(--tw-text-opacity))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity))}.text-purple-800{--tw-text-opacity:1;color:rgb(107 33 168/var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity))}.text-rose-500{--tw-text-opacity:1;color:rgb(244 63 94/var(--tw-text-opacity))}.text-rose-600{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-teal-500{--tw-text-opacity:1;color:rgb(20 184 166/var(--tw-text-opacity))}.text-teal-800{--tw-text-opacity:1;color:rgb(17 94 89/var(--tw-text-opacity))}.text-violet-500{--tw-text-opacity:1;color:rgb(139 92 246/var(--tw-text-opacity))}.text-violet-600{--tw-text-opacity:1;color:rgb(124 58 237/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity))}.text-yellow-600{--tw-text-opacity:1;color:rgb(202 138 4/var(--tw-text-opacity))}.text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-offset-background{--tw-ring-offset-color:hsl(var(--background))}.drop-shadow-sm{--tw-drop-shadow:drop-shadow(0 1px 1px rgba(0,0,0,.05))}.drop-shadow-sm,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.fade-in,.fade-in-0{--tw-enter-opacity:0}.zoom-in-95{--tw-enter-scale:.95}.duration-100{animation-duration:.1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.running{animation-play-state:running}.paused{animation-play-state:paused}.text-balance{text-wrap:balance}.\[appearance\:textfield\]{appearance:textfield}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.first\:border-t-0:first-child{border-top-width:0}.first\:pt-0:first-child{padding-top:0}.even\:border-l:nth-child(2n){border-left-width:1px}.hover\:border-gray-400:hover{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-accent\/50:hover{background-color:hsl(var(--accent)/.5)}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.hover\:bg-blue-800:hover{--tw-bg-opacity:1;background-color:rgb(30 64 175/var(--tw-bg-opacity))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive)/.8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive)/.9)}.hover\:bg-emerald-700:hover{--tw-bg-opacity:1;background-color:rgb(4 120 87/var(--tw-bg-opacity))}.hover\:bg-emerald-800:hover{--tw-bg-opacity:1;background-color:rgb(6 95 70/var(--tw-bg-opacity))}.hover\:bg-gray-600:hover{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity))}.hover\:bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity))}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted)/.5)}.hover\:bg-orange-600:hover{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity))}.hover\:bg-orange-800:hover{--tw-bg-opacity:1;background-color:rgb(154 52 18/var(--tw-bg-opacity))}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary)/.8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary)/.9)}.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity))}.hover\:bg-rose-800:hover{--tw-bg-opacity:1;background-color:rgb(159 18 57/var(--tw-bg-opacity))}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary)/.8)}.hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\:text-primary\/80:hover{color:hsl(var(--primary)/.8)}.hover\:text-purple-300:hover{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-ring:focus{--tw-ring-color:hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:hsl(var(--background))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:border-muted\/40{border-color:hsl(var(--muted)/.4)}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:hsl(var(--destructive)/.3)}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover{background-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity:1;color:rgb(254 242 242/var(--tw-text-opacity))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(248 113 113/var(--tw-ring-opacity))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color:#dc2626}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom],.data-\[side\=left\]\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right],.data-\[side\=top\]\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end],.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x)}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.data-\[active\=true\]\:bg-muted\/50[data-active=true]{background-color:hsl(var(--muted)/.5)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:hsl(var(--accent))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=on\]\:bg-accent[data-state=on],.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:hsl(var(--accent-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity:0.8}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-0.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:0.5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-0.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:0.5rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x:-50%}.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed],.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x:-50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}.dark\:-rotate-90:is(.dark *){--tw-rotate:-90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:rotate-0:is(.dark *){--tw-rotate:0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:scale-0:is(.dark *){--tw-scale-x:0;--tw-scale-y:0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:scale-100:is(.dark *){--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:border-blue-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity))}.dark\:border-destructive:is(.dark *){border-color:hsl(var(--destructive))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity))}.dark\:border-green-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(22 101 52/var(--tw-border-opacity))}.dark\:border-orange-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(154 52 18/var(--tw-border-opacity))}.dark\:border-purple-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(107 33 168/var(--tw-border-opacity))}.dark\:border-red-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(153 27 27/var(--tw-border-opacity))}.dark\:border-teal-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(17 94 89/var(--tw-border-opacity))}.dark\:border-yellow-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(133 77 14/var(--tw-border-opacity))}.dark\:bg-blue-900\/20:is(.dark *){background-color:rgba(30,58,138,.2)}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity))}.dark\:bg-gray-800\/50:is(.dark *){background-color:rgba(31,41,55,.5)}.dark\:bg-gray-900\/20:is(.dark *){background-color:rgba(17,24,39,.2)}.dark\:bg-green-900\/20:is(.dark *){background-color:rgba(20,83,45,.2)}.dark\:bg-orange-900\/20:is(.dark *){background-color:rgba(124,45,18,.2)}.dark\:bg-purple-900\/20:is(.dark *){background-color:rgba(88,28,135,.2)}.dark\:bg-red-900\/20:is(.dark *){background-color:rgba(127,29,29,.2)}.dark\:bg-slate-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity))}.dark\:bg-teal-900\/20:is(.dark *){background-color:rgba(19,78,74,.2)}.dark\:bg-yellow-900\/20:is(.dark *){background-color:rgba(113,63,18,.2)}.dark\:text-blue-200:is(.dark *){--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity))}.dark\:text-gray-100:is(.dark *){--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.dark\:text-green-200:is(.dark *){--tw-text-opacity:1;color:rgb(187 247 208/var(--tw-text-opacity))}.dark\:text-green-300:is(.dark *){--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity))}.dark\:text-green-400:is(.dark *){--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity))}.dark\:text-orange-300:is(.dark *){--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity))}.dark\:text-orange-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity))}.dark\:text-purple-300:is(.dark *){--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity))}.dark\:text-purple-400:is(.dark *){--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity))}.dark\:text-red-200:is(.dark *){--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity))}.dark\:text-red-300:is(.dark *){--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.dark\:text-red-400:is(.dark *){--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity))}.dark\:text-teal-300:is(.dark *){--tw-text-opacity:1;color:rgb(94 234 212/var(--tw-text-opacity))}.dark\:text-yellow-200:is(.dark *){--tw-text-opacity:1;color:rgb(254 240 138/var(--tw-text-opacity))}.dark\:hover\:bg-slate-900:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity))}@media (min-width:640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:mt-0{margin-top:0}.sm\:max-w-\[800px\]{max-width:800px}.sm\:max-w-sm{max-width:24rem}.sm\:flex-initial{flex:0 1 auto}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:items-start{align-items:flex-start}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:.625rem}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:border-l{border-left-width:1px}.sm\:border-t-0{border-top-width:0}.sm\:p-20{padding:5rem}.sm\:p-6{padding:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sm\:text-left{text-align:left}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y:100%}}@media (min-width:768px){.md\:ml-auto{margin-left:auto}.md\:mr-8{margin-right:2rem}.md\:block{display:block}.md\:hidden{display:none}.md\:size-12{width:3rem;height:3rem}.md\:w-36{width:9rem}.md\:max-w-\[420px\]{max-width:420px}.md\:max-w-full{max-width:100%}.md\:max-w-lg{max-width:32rem}.md\:max-w-md{max-width:28rem}.md\:basis-1\/2{flex-basis:50%}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-cols-\[180px_1fr\]{grid-template-columns:180px 1fr}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:gap-2{gap:.5rem}.md\:gap-8{gap:2rem}.md\:p-10{padding:2.5rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:size-16{width:4rem;height:4rem}.lg\:size-48{width:12rem;height:12rem}.lg\:size-6{width:1.5rem;height:1.5rem}.lg\:h-10{height:2.5rem}.lg\:h-48{height:12rem}.lg\:w-48{width:12rem}.lg\:max-w-full{max-width:100%}.lg\:basis-1\/3{flex-basis:33.333333%}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:grid-cols-\[250px_1fr\]{grid-template-columns:250px 1fr}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:gap-4{gap:1rem}.lg\:gap-5{gap:1.25rem}.lg\:gap-y-0{row-gap:0}.lg\:space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.lg\:p-6{padding:1.5rem}.lg\:px-4{padding-left:1rem;padding-right:1rem}.lg\:py-12{padding-top:3rem;padding-bottom:3rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-base{font-size:1rem;line-height:1.5rem}}@media (min-width:1280px){.xl\:size-14{width:3.5rem;height:3.5rem}.xl\:size-6{width:1.5rem;height:1.5rem}.xl\:w-\[800px\]{width:800px}.xl\:max-w-xl{max-width:36rem}.xl\:gap-6{gap:1.5rem}.xl\:gap-y-10{row-gap:2.5rem}.xl\:p-4{padding:1rem}.xl\:text-2xl{font-size:1.5rem;line-height:2rem}.xl\:text-3xl{font-size:1.875rem;line-height:2.25rem}.xl\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1536px){.\32xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\+div\]\:text-xs+div{font-size:.75rem;line-height:1rem}.\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button,.\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button{appearance:none}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y:-3px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:left-4>svg{left:1rem}.\[\&\>svg\]\:top-4>svg{top:1rem}.\[\&\>svg\]\:size-3\.5>svg{width:.875rem;height:.875rem}.\[\&\>svg\]\:h-2\.5>svg{height:.625rem}.\[\&\>svg\]\:h-3>svg{height:.75rem}.\[\&\>svg\]\:w-2\.5>svg{width:.625rem}.\[\&\>svg\]\:w-3>svg{width:.75rem}.\[\&\>svg\]\:text-destructive>svg{color:hsl(var(--destructive))}.\[\&\>svg\]\:text-foreground>svg{color:hsl(var(--foreground))}.\[\&\>svg\]\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:1.75rem}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:hsl(var(--muted-foreground))}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:hsl(var(--border)/.5)}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:hsl(var(--border))}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{outline:2px solid transparent;outline-offset:2px}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:hsl(var(--muted))}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector,.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{outline:2px solid transparent;outline-offset:2px}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:size-full svg{width:100%;height:100%}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}@font-face{font-family:euclid;src:url(/_next/static/media/72399823edb708a6-s.p.woff2) format("woff2");font-display:swap;font-weight:300;font-style:normal}@font-face{font-family:euclid;src:url(/_next/static/media/a41b42e1a9703195-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:euclid;src:url(/_next/static/media/243b6dfb2e48e7ed-s.p.woff2) format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:euclid;src:url(/_next/static/media/70a526c127b6fc39-s.p.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:euclid;src:url(/_next/static/media/0aa2ebf4cf06f243-s.p.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:euclid;src:url(/_next/static/media/cf37f781bdc22339-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:euclid Fallback;src:local("Arial");ascent-override:93.47%;descent-override:25.05%;line-gap-override:0.00%;size-adjust:106.98%}.__className_9dae3d{font-family:euclid,euclid Fallback} \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/css/9128b47cc3d2bf6a.css b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/css/9128b47cc3d2bf6a.css new file mode 100644 index 0000000..bce1557 --- /dev/null +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/css/9128b47cc3d2bf6a.css @@ -0,0 +1,3 @@ +*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/* +! tailwindcss v3.4.13 | MIT License | https://tailwindcss.com +*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}:root{--background:0 0% 100%;--foreground:224 71.4% 4.1%;--card:0 0% 100%;--card-foreground:224 71.4% 4.1%;--popover:0 0% 100%;--popover-foreground:224 71.4% 4.1%;--primary:262.1 83.3% 57.8%;--primary-foreground:210 20% 98%;--secondary:220 14.3% 95.9%;--secondary-foreground:220.9 39.3% 11%;--muted:220 14.3% 95.9%;--muted-foreground:220 8.9% 46.1%;--accent:220 14.3% 95.9%;--accent-foreground:220.9 39.3% 11%;--destructive:0 84.2% 60.2%;--destructive-foreground:210 20% 98%;--border:220 13% 91%;--input:220 13% 91%;--ring:262.1 83.3% 57.8%;--radius:0.5rem;--chart-1:12 76% 61%;--chart-2:173 58% 39%;--chart-3:197 37% 24%;--chart-4:43 74% 66%;--chart-5:27 87% 67%}.dark{--background:224 71.4% 4.1%;--foreground:210 20% 98%;--card:224 71.4% 4.1%;--card-foreground:210 20% 98%;--popover:224 71.4% 4.1%;--popover-foreground:210 20% 98%;--primary:263.4 70% 50.4%;--primary-foreground:210 20% 98%;--secondary:215 27.9% 16.9%;--secondary-foreground:210 20% 98%;--muted:215 27.9% 16.9%;--muted-foreground:217.9 10.6% 64.9%;--accent:215 27.9% 16.9%;--accent-foreground:210 20% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:210 20% 98%;--border:215 27.9% 16.9%;--input:215 27.9% 16.9%;--ring:263.4 70% 50.4%;--chart-1:220 70% 50%;--chart-2:160 60% 45%;--chart-3:30 80% 55%;--chart-4:280 65% 60%;--chart-5:340 75% 55%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.-inset-2{inset:-.5rem}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-bottom-12{bottom:-3rem}.-left-12{left:-3rem}.-left-8{left:-2rem}.-right-12{right:-3rem}.-top-12{top:-3rem}.-top-4{top:-1rem}.-top-8{top:-2rem}.bottom-0{bottom:0}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.top-full{top:100%}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.col-span-1{grid-column:span 1/span 1}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.col-span-8{grid-column:span 8/span 8}.row-start-2{grid-row-start:2}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.-ml-4{margin-left:-1rem}.-mr-2{margin-right:-.5rem}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-24{margin-top:6rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-auto{aspect-ratio:auto}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.size-12{width:3rem;height:3rem}.size-16{width:4rem;height:4rem}.size-24{width:6rem;height:6rem}.size-32{width:8rem;height:8rem}.size-36{width:9rem;height:9rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-full{width:100%;height:100%}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-36{height:9rem}.h-4{height:1rem}.h-44{height:11rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-72{height:18rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[1\.2rem\]{height:1.2rem}.h-\[120px\]{height:120px}.h-\[140px\]{height:140px}.h-\[18px\]{height:18px}.h-\[1px\]{height:1px}.h-\[200px\]{height:200px}.h-\[250px\]{height:250px}.h-\[400px\]{height:400px}.h-\[500px\]{height:500px}.h-\[600px\]{height:600px}.h-\[60px\]{height:60px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-96{max-height:24rem}.max-h-\[200px\]{max-height:200px}.max-h-\[300px\]{max-height:300px}.max-h-screen{max-height:100vh}.min-h-\[300px\]{min-height:300px}.min-h-\[60px\]{min-height:60px}.min-h-\[calc\(100vh_-_theme\(spacing\.16\)\)\]{min-height:calc(100vh - 4rem)}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-0{width:0}.w-1{width:.25rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[1\.2rem\]{width:1.2rem}.w-\[100px\]{width:100px}.w-\[140px\]{width:140px}.w-\[180px\]{width:180px}.w-\[18px\]{width:18px}.w-\[1px\]{width:1px}.w-\[200px\]{width:200px}.w-\[300px\]{width:300px}.w-\[50px\]{width:50px}.w-\[80px\]{width:80px}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-8{min-width:2rem}.min-w-9{min-width:2.25rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-10{max-width:2.5rem}.max-w-2xl{max-width:42rem}.max-w-32{max-width:8rem}.max-w-4xl{max-width:56rem}.max-w-6{max-width:1.5rem}.max-w-6xl{max-width:72rem}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.translate-x-\[-50\%\],.translate-y-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.rotate-0{--tw-rotate:0deg}.rotate-0,.rotate-90{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate:90deg}.scale-0{--tw-scale-x:0;--tw-scale-y:0}.scale-0,.scale-100{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x:1;--tw-scale-y:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{user-select:none}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-flow-row{grid-auto-flow:row}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-rows-\[20px_1fr_20px\]{grid-template-rows:20px 1fr 20px}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-evenly{justify-content:space-evenly}.justify-items-center{justify-items:center}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-px{gap:1px}.gap-x-1{column-gap:.25rem}.gap-x-2{column-gap:.5rem}.gap-x-4{column-gap:1rem}.gap-x-8{column-gap:2rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-5{row-gap:1.25rem}.gap-y-6{row-gap:1.5rem}.gap-y-8{row-gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-1\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.375rem * var(--tw-space-x-reverse));margin-left:calc(.375rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-e-lg{border-start-end-radius:var(--radius);border-end-end-radius:var(--radius)}.rounded-e-none{border-start-end-radius:0;border-end-end-radius:0}.rounded-s-lg{border-start-start-radius:var(--radius);border-end-start-radius:var(--radius)}.rounded-s-none{border-start-start-radius:0;border-end-start-radius:0}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\[1\.5px\]{border-width:1.5px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-r-0{border-right-width:0}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[--color-border\]{border-color:var(--color-border)}.border-blue-200{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity))}.border-blue-500{--tw-border-opacity:1;border-color:rgb(59 130 246/var(--tw-border-opacity))}.border-border\/50{border-color:hsl(var(--border)/.5)}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive\/50{border-color:hsl(var(--destructive)/.5)}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity))}.border-gray-500{--tw-border-opacity:1;border-color:rgb(107 114 128/var(--tw-border-opacity))}.border-green-200{--tw-border-opacity:1;border-color:rgb(187 247 208/var(--tw-border-opacity))}.border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity))}.border-input{border-color:hsl(var(--input))}.border-orange-200{--tw-border-opacity:1;border-color:rgb(254 215 170/var(--tw-border-opacity))}.border-orange-500{--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity))}.border-primary{border-color:hsl(var(--primary))}.border-primary\/50{border-color:hsl(var(--primary)/.5)}.border-purple-200{--tw-border-opacity:1;border-color:rgb(233 213 255/var(--tw-border-opacity))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity))}.border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity))}.border-teal-200{--tw-border-opacity:1;border-color:rgb(153 246 228/var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-yellow-200{--tw-border-opacity:1;border-color:rgb(254 240 138/var(--tw-border-opacity))}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-\[--color-bg\]{background-color:var(--color-bg)}.bg-accent{background-color:hsl(var(--accent))}.bg-background{background-color:hsl(var(--background))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-black\/80{background-color:rgba(0,0,0,.8)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity))}.bg-blue-500\/10{background-color:rgba(59,130,246,.1)}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-emerald-500{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity))}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105/var(--tw-bg-opacity))}.bg-foreground\/20{background-color:hsl(var(--foreground)/.2)}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.bg-gray-500{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity))}.bg-gray-600{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity))}.bg-gray-700{--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.bg-gray-800{--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity))}.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity))}.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity))}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity))}.bg-green-500\/10{background-color:rgba(34,197,94,.1)}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/30{background-color:hsl(var(--muted)/.3)}.bg-muted\/40{background-color:hsl(var(--muted)/.4)}.bg-muted\/50{background-color:hsl(var(--muted)/.5)}.bg-orange-100{--tw-bg-opacity:1;background-color:rgb(255 237 213/var(--tw-bg-opacity))}.bg-orange-500{--tw-bg-opacity:1;background-color:rgb(249 115 22/var(--tw-bg-opacity))}.bg-orange-600{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary)/.1)}.bg-primary\/20{background-color:hsl(var(--primary)/.2)}.bg-purple-100{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity))}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity))}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.bg-rose-500{--tw-bg-opacity:1;background-color:rgb(244 63 94/var(--tw-bg-opacity))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}.bg-teal-100{--tw-bg-opacity:1;background-color:rgb(204 251 241/var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-violet-500\/10{background-color:rgba(139,92,246,.1)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity))}.bg-yellow-500{--tw-bg-opacity:1;background-color:rgb(234 179 8/var(--tw-bg-opacity))}.bg-opacity-50{--tw-bg-opacity:0.5}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-400{--tw-gradient-from:#60a5fa var(--tw-gradient-from-position);--tw-gradient-to:rgba(96,165,250,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.fill-current{fill:currentColor}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[1px\]{padding:1px}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-\[9px\]{padding-top:9px;padding-bottom:9px}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-2{padding-left:.5rem}.pl-2\.5{padding-left:.625rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-2\.5{padding-right:.625rem}.pr-4{padding-right:1rem}.pr-6{padding-right:1.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.8rem\]{font-size:.8rem}.text-\[3rem\]{font-size:3rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity))}.text-blue-800{--tw-text-opacity:1;color:rgb(30 64 175/var(--tw-text-opacity))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/50{color:hsl(var(--foreground)/.5)}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity))}.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity))}.text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity))}.text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-orange-500{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity))}.text-orange-600{--tw-text-opacity:1;color:rgb(234 88 12/var(--tw-text-opacity))}.text-orange-800{--tw-text-opacity:1;color:rgb(154 52 18/var(--tw-text-opacity))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity))}.text-purple-800{--tw-text-opacity:1;color:rgb(107 33 168/var(--tw-text-opacity))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity))}.text-rose-500{--tw-text-opacity:1;color:rgb(244 63 94/var(--tw-text-opacity))}.text-rose-600{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-teal-500{--tw-text-opacity:1;color:rgb(20 184 166/var(--tw-text-opacity))}.text-teal-800{--tw-text-opacity:1;color:rgb(17 94 89/var(--tw-text-opacity))}.text-violet-500{--tw-text-opacity:1;color:rgb(139 92 246/var(--tw-text-opacity))}.text-violet-600{--tw-text-opacity:1;color:rgb(124 58 237/var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-yellow-500{--tw-text-opacity:1;color:rgb(234 179 8/var(--tw-text-opacity))}.text-yellow-600{--tw-text-opacity:1;color:rgb(202 138 4/var(--tw-text-opacity))}.text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-offset-background{--tw-ring-offset-color:hsl(var(--background))}.drop-shadow-sm{--tw-drop-shadow:drop-shadow(0 1px 1px rgba(0,0,0,.05))}.drop-shadow-sm,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.fade-in,.fade-in-0{--tw-enter-opacity:0}.zoom-in-95{--tw-enter-scale:.95}.duration-100{animation-duration:.1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.running{animation-play-state:running}.paused{animation-play-state:paused}.text-balance{text-wrap:balance}.\[appearance\:textfield\]{appearance:textfield}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.first\:border-t-0:first-child{border-top-width:0}.first\:pt-0:first-child{padding-top:0}.even\:border-l:nth-child(2n){border-left-width:1px}.hover\:border-gray-400:hover{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-accent\/50:hover{background-color:hsl(var(--accent)/.5)}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.hover\:bg-blue-800:hover{--tw-bg-opacity:1;background-color:rgb(30 64 175/var(--tw-bg-opacity))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive)/.8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive)/.9)}.hover\:bg-emerald-700:hover{--tw-bg-opacity:1;background-color:rgb(4 120 87/var(--tw-bg-opacity))}.hover\:bg-emerald-800:hover{--tw-bg-opacity:1;background-color:rgb(6 95 70/var(--tw-bg-opacity))}.hover\:bg-gray-600:hover{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity))}.hover\:bg-green-600:hover{--tw-bg-opacity:1;background-color:rgb(22 163 74/var(--tw-bg-opacity))}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted)/.5)}.hover\:bg-orange-600:hover{--tw-bg-opacity:1;background-color:rgb(234 88 12/var(--tw-bg-opacity))}.hover\:bg-orange-800:hover{--tw-bg-opacity:1;background-color:rgb(154 52 18/var(--tw-bg-opacity))}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary)/.8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary)/.9)}.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity))}.hover\:bg-rose-800:hover{--tw-bg-opacity:1;background-color:rgb(159 18 57/var(--tw-bg-opacity))}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary)/.8)}.hover\:bg-slate-100:hover{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\:text-primary\/80:hover{color:hsl(var(--primary)/.8)}.hover\:text-purple-300:hover{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-ring:focus{--tw-ring-color:hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:hsl(var(--background))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:border-muted\/40{border-color:hsl(var(--muted)/.4)}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:hsl(var(--destructive)/.3)}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover{background-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity:1;color:rgb(254 242 242/var(--tw-text-opacity))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(248 113 113/var(--tw-ring-opacity))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color:#dc2626}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom],.data-\[side\=left\]\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right],.data-\[side\=top\]\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end],.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x)}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.data-\[active\=true\]\:bg-muted\/50[data-active=true]{background-color:hsl(var(--muted)/.5)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:hsl(var(--accent))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=on\]\:bg-accent[data-state=on],.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:hsl(var(--accent-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity:0.8}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-0.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:0.5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-0.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:0.5rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x:-50%}.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed],.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x:-50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}.dark\:-rotate-90:is(.dark *){--tw-rotate:-90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:rotate-0:is(.dark *){--tw-rotate:0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:scale-0:is(.dark *){--tw-scale-x:0;--tw-scale-y:0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:scale-100:is(.dark *){--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:border-blue-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity))}.dark\:border-destructive:is(.dark *){border-color:hsl(var(--destructive))}.dark\:border-gray-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity))}.dark\:border-gray-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity))}.dark\:border-green-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(22 101 52/var(--tw-border-opacity))}.dark\:border-orange-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(154 52 18/var(--tw-border-opacity))}.dark\:border-purple-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(107 33 168/var(--tw-border-opacity))}.dark\:border-red-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(153 27 27/var(--tw-border-opacity))}.dark\:border-teal-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(17 94 89/var(--tw-border-opacity))}.dark\:border-yellow-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(133 77 14/var(--tw-border-opacity))}.dark\:bg-blue-900\/20:is(.dark *){background-color:rgba(30,58,138,.2)}.dark\:bg-gray-700:is(.dark *){--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity))}.dark\:bg-gray-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity))}.dark\:bg-gray-800\/50:is(.dark *){background-color:rgba(31,41,55,.5)}.dark\:bg-gray-900\/20:is(.dark *){background-color:rgba(17,24,39,.2)}.dark\:bg-green-900\/20:is(.dark *){background-color:rgba(20,83,45,.2)}.dark\:bg-orange-900\/20:is(.dark *){background-color:rgba(124,45,18,.2)}.dark\:bg-purple-900\/20:is(.dark *){background-color:rgba(88,28,135,.2)}.dark\:bg-red-900\/20:is(.dark *){background-color:rgba(127,29,29,.2)}.dark\:bg-slate-800:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity))}.dark\:bg-teal-900\/20:is(.dark *){background-color:rgba(19,78,74,.2)}.dark\:bg-yellow-900\/20:is(.dark *){background-color:rgba(113,63,18,.2)}.dark\:text-blue-200:is(.dark *){--tw-text-opacity:1;color:rgb(191 219 254/var(--tw-text-opacity))}.dark\:text-blue-300:is(.dark *){--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity))}.dark\:text-blue-400:is(.dark *){--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity))}.dark\:text-gray-100:is(.dark *){--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity))}.dark\:text-gray-200:is(.dark *){--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity))}.dark\:text-gray-300:is(.dark *){--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity))}.dark\:text-gray-400:is(.dark *){--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.dark\:text-gray-500:is(.dark *){--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.dark\:text-green-200:is(.dark *){--tw-text-opacity:1;color:rgb(187 247 208/var(--tw-text-opacity))}.dark\:text-green-300:is(.dark *){--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity))}.dark\:text-green-400:is(.dark *){--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity))}.dark\:text-orange-300:is(.dark *){--tw-text-opacity:1;color:rgb(253 186 116/var(--tw-text-opacity))}.dark\:text-orange-400:is(.dark *){--tw-text-opacity:1;color:rgb(251 146 60/var(--tw-text-opacity))}.dark\:text-purple-300:is(.dark *){--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity))}.dark\:text-purple-400:is(.dark *){--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity))}.dark\:text-red-200:is(.dark *){--tw-text-opacity:1;color:rgb(254 202 202/var(--tw-text-opacity))}.dark\:text-red-300:is(.dark *){--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity))}.dark\:text-red-400:is(.dark *){--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity))}.dark\:text-teal-300:is(.dark *){--tw-text-opacity:1;color:rgb(94 234 212/var(--tw-text-opacity))}.dark\:text-yellow-200:is(.dark *){--tw-text-opacity:1;color:rgb(254 240 138/var(--tw-text-opacity))}.dark\:hover\:bg-slate-900:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(15 23 42/var(--tw-bg-opacity))}@media (min-width:640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:mt-0{margin-top:0}.sm\:max-w-\[800px\]{max-width:800px}.sm\:max-w-sm{max-width:24rem}.sm\:flex-initial{flex:0 1 auto}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:items-start{align-items:flex-start}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:.625rem}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:border-l{border-left-width:1px}.sm\:border-t-0{border-top-width:0}.sm\:p-20{padding:5rem}.sm\:p-6{padding:1.5rem}.sm\:px-8{padding-left:2rem;padding-right:2rem}.sm\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sm\:text-left{text-align:left}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y:100%}}@media (min-width:768px){.md\:ml-auto{margin-left:auto}.md\:mr-8{margin-right:2rem}.md\:block{display:block}.md\:hidden{display:none}.md\:size-12{width:3rem;height:3rem}.md\:w-36{width:9rem}.md\:max-w-\[420px\]{max-width:420px}.md\:max-w-full{max-width:100%}.md\:max-w-lg{max-width:32rem}.md\:max-w-md{max-width:28rem}.md\:basis-1\/2{flex-basis:50%}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-cols-\[180px_1fr\]{grid-template-columns:180px 1fr}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:gap-2{gap:.5rem}.md\:gap-8{gap:2rem}.md\:p-10{padding:2.5rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:size-16{width:4rem;height:4rem}.lg\:size-48{width:12rem;height:12rem}.lg\:size-6{width:1.5rem;height:1.5rem}.lg\:h-10{height:2.5rem}.lg\:h-48{height:12rem}.lg\:w-48{width:12rem}.lg\:max-w-full{max-width:100%}.lg\:basis-1\/3{flex-basis:33.333333%}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:grid-cols-\[250px_1fr\]{grid-template-columns:250px 1fr}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:gap-4{gap:1rem}.lg\:gap-5{gap:1.25rem}.lg\:gap-y-0{row-gap:0}.lg\:space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.lg\:p-6{padding:1.5rem}.lg\:px-4{padding-left:1rem;padding-right:1rem}.lg\:py-12{padding-top:3rem;padding-bottom:3rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-base{font-size:1rem;line-height:1.5rem}}@media (min-width:1280px){.xl\:size-14{width:3.5rem;height:3.5rem}.xl\:size-6{width:1.5rem;height:1.5rem}.xl\:w-\[800px\]{width:800px}.xl\:max-w-xl{max-width:36rem}.xl\:gap-6{gap:1.5rem}.xl\:gap-y-10{row-gap:2.5rem}.xl\:p-4{padding:1rem}.xl\:text-2xl{font-size:1.5rem;line-height:2rem}.xl\:text-3xl{font-size:1.875rem;line-height:2.25rem}.xl\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1536px){.\32xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\+div\]\:text-xs+div{font-size:.75rem;line-height:1rem}.\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button,.\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button{appearance:none}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y:-3px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:left-4>svg{left:1rem}.\[\&\>svg\]\:top-4>svg{top:1rem}.\[\&\>svg\]\:size-3\.5>svg{width:.875rem;height:.875rem}.\[\&\>svg\]\:h-2\.5>svg{height:.625rem}.\[\&\>svg\]\:h-3>svg{height:.75rem}.\[\&\>svg\]\:w-2\.5>svg{width:.625rem}.\[\&\>svg\]\:w-3>svg{width:.75rem}.\[\&\>svg\]\:text-destructive>svg{color:hsl(var(--destructive))}.\[\&\>svg\]\:text-foreground>svg{color:hsl(var(--foreground))}.\[\&\>svg\]\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:1.75rem}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:hsl(var(--muted-foreground))}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:hsl(var(--border)/.5)}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:hsl(var(--border))}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{outline:2px solid transparent;outline-offset:2px}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:hsl(var(--muted))}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector,.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{outline:2px solid transparent;outline-offset:2px}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:size-full svg{width:100%;height:100%}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}@font-face{font-family:euclid;src:url(/_next/static/media/72399823edb708a6-s.p.woff2) format("woff2");font-display:swap;font-weight:300;font-style:normal}@font-face{font-family:euclid;src:url(/_next/static/media/a41b42e1a9703195-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:euclid;src:url(/_next/static/media/243b6dfb2e48e7ed-s.p.woff2) format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:euclid;src:url(/_next/static/media/70a526c127b6fc39-s.p.woff2) format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:euclid;src:url(/_next/static/media/0aa2ebf4cf06f243-s.p.woff2) format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:euclid;src:url(/_next/static/media/cf37f781bdc22339-s.p.woff2) format("woff2");font-display:swap;font-weight:400;font-style:italic}@font-face{font-family:euclid Fallback;src:local("Arial");ascent-override:93.47%;descent-override:25.05%;line-gap-override:0.00%;size-adjust:106.98%}.__className_9dae3d{font-family:euclid,euclid Fallback} \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/Ybrwzc8VHk4VhrNWm32aK/_buildManifest.js b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/yktCwlUAti3Mjyq9KNNBy/_buildManifest.js similarity index 100% rename from ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/Ybrwzc8VHk4VhrNWm32aK/_buildManifest.js rename to ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/yktCwlUAti3Mjyq9KNNBy/_buildManifest.js diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/Ybrwzc8VHk4VhrNWm32aK/_ssgManifest.js b/ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/yktCwlUAti3Mjyq9KNNBy/_ssgManifest.js similarity index 100% rename from ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/Ybrwzc8VHk4VhrNWm32aK/_ssgManifest.js rename to ipk-source/sdxpinn-quecmanager-beta/root/www/_next/static/yktCwlUAti3Mjyq9KNNBy/_ssgManifest.js diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/at_cmd/at_queue_client.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/at_cmd/at_queue_client.sh index 3ae94a4..87177e2 100755 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/at_cmd/at_queue_client.sh +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/at_cmd/at_queue_client.sh @@ -2,10 +2,10 @@ # AT Queue Client for OpenWRT # Located in /www/cgi-bin/services/at_queue_client -AUTH_FILE="/tmp/auth_success" QUEUE_DIR="/tmp/at_queue" RESULTS_DIR="$QUEUE_DIR/results" -QUEUE_MANAGER="/www/cgi-bin/services/at_queue_manager.sh" +HOST_DIR=$(pwd) +QUEUE_MANAGER="${HOST_DIR}/cgi-bin/services/at_queue_manager.sh" POLL_INTERVAL=0.01 usage() { @@ -27,15 +27,13 @@ output_json() { # URL decode function urldecode() { local encoded="$1" - logger -t at_queue -p daemon.debug "urldecode: input='$encoded'" - + # Handle %2B -> + and %22 -> " conversions local decoded="${encoded//%2B/+}" decoded="${decoded//%22/\"}" # Then handle other encoded characters decoded=$(printf '%b' "${decoded//%/\\x}") - - logger -t at_queue -p daemon.debug "urldecode: output='$decoded'" + echo "$decoded" } @@ -43,28 +41,28 @@ urldecode() { get_command_id() { local response="$1" echo "DEBUG: Raw response: '$response'" >&2 - + # Strip any headers from response local json_response=$(echo "$response" | sed -n '/^{/,$p') echo "DEBUG: JSON portion: '$json_response'" >&2 - + # Try to extract command_id using grep and sed instead of jsonfilter local cmd_id=$(echo "$json_response" | grep -o '"command_id":"[^"]*"' | sed 's/"command_id":"//;s/"$//') - + if [ -n "$cmd_id" ]; then echo "$cmd_id" return 0 fi - + # Fallback to jsonfilter if available echo "DEBUG: Trying jsonfilter as fallback" >&2 local cmd_id_jsonfilter=$(echo "$json_response" | jsonfilter -e '@.command_id' 2>/dev/null) - + if [ -n "$cmd_id_jsonfilter" ]; then echo "$cmd_id_jsonfilter" return 0 fi - + echo "ERROR: Failed to extract command ID from response" >&2 return 1 } @@ -72,20 +70,16 @@ get_command_id() { # Normalize AT command normalize_at_command() { local cmd="$1" - logger -t at_queue -p daemon.debug "normalize: input='$cmd'" - + # URL decode the command cmd=$(urldecode "$cmd") - logger -t at_queue -p daemon.debug "normalize: after urldecode='$cmd'" - + # Remove any carriage returns or newlines cmd=$(echo "$cmd" | tr -d '\r\n') - logger -t at_queue -p daemon.debug "normalize: after cleanup='$cmd'" - + # Trim leading/trailing whitespace while preserving quotes cmd=$(echo "$cmd" | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') - logger -t at_queue -p daemon.debug "normalize: final output='$cmd'" - + echo "$cmd" } @@ -93,12 +87,12 @@ normalize_at_command() { submit_command() { local cmd="$1" local priority=10 - + # Set high priority for QSCAN commands for faster processing if echo "$cmd" | grep -qi "AT+QSCAN"; then priority=1 fi - + # Submit using appropriate method if [ "${SCRIPT_NAME}" != "" ]; then # CGI mode - direct execution @@ -114,11 +108,10 @@ submit_command() { check_result() { local cmd_id="$1" local show_headers="${2:-1}" # Add parameter for header control - + if [ -f "$RESULTS_DIR/$cmd_id.json" ]; then local result_content=$(cat "$RESULTS_DIR/$cmd_id.json") if [ -z "$result_content" ]; then - logger -t at_queue -p daemon.error "Empty result file for command ID: $cmd_id" local error_json="{\"error\":\"Empty result file\",\"command_id\":\"$cmd_id\"}" output_json "$error_json" "$show_headers" return 1 @@ -137,37 +130,37 @@ wait_for_completion() { local timeout="$2" local show_headers="${3:-1}" local result_file="$RESULTS_DIR/$cmd_id.json" - + if [ -z "$cmd_id" ]; then local error_json="{\"error\":\"Invalid command ID\"}" output_json "$error_json" "$show_headers" return 1 fi - + # First quick check if [ -f "$result_file" ]; then output_json "$(cat "$result_file")" "$show_headers" return 0 fi - + # Wait with shorter polling interval local start_time=$(date +%s) local current_time - + while true; do if [ -f "$result_file" ]; then output_json "$(cat "$result_file")" "$show_headers" return 0 fi - + current_time=$(date +%s) if [ $((current_time - start_time)) -ge "$timeout" ]; then break fi - + sleep $POLL_INTERVAL done - + local error_json=$(cat << EOF { "error": "Timeout waiting for completion", @@ -183,33 +176,19 @@ EOF # CGI request handling if [ "${SCRIPT_NAME}" != "" ]; then # Output headers only once at the beginning - echo "Content-Type: application/json" + echo "Content-Type: application/json" echo "" - # Get Token from Authorization Header - TOKEN="${HTTP_AUTHORIZATION}" - if [ ! -f $AUTH_FILE ]; then - output_json "{\"error\":\"Unauthenticated Request\"}" "0" + + # Check for Authorization Header + if [ -z "${HTTP_AUTHORIZATION}" ]; then + output_json "{\"error\":\"Unauthorized\"}" "0" exit 1 fi - - if [ -z "$TOKEN" ] || "${TOKEN}" = "" || [ $(grep "${TOKEN}" "${AUTH_FILE}" | wc -l) -eq 0 ]; then - output_json "{\"response\": { \"status\": \"error\", \"raw_output\": \"Not Authorized\" }, \"command\": {\"timestamp\": \"$(date +%Y%m%d'T'%H%M%S)\"}, \"error\":\"Not Authorized\"}" "0" - - exit 1 - fi - - # Check if token is within 2 hours - TOKEN_LINE=$(grep "${TOKEN}" "${AUTH_FILE}") - TOKEN_DATE=$(echo "$TOKEN_LINE" | awk '{print $1}' | sed 's/T/ /') - TOKEN_TIME=$(date -d "$TOKEN_DATE" +%s 2>/dev/null) - NOW_TIME=$(date +%s) - MAX_AGE=$((2 * 3600)) # 2 hours in seconds - - if [ -z "$TOKEN_TIME" ] || [ $((NOW_TIME - TOKEN_TIME)) -gt $MAX_AGE ]; then - output_json "{ \"response\": { \"status\": \"error\", \"raw_output\": \"Token expired. Reauthenticate to get new token.\" }, \"command\": {\"timestamp\": \"$(date +%Y%m%d'T'%H%M%S)\"}, \"error\":\"Token expired\"}" "0" - # Cleanup/Remove token from file - sed -i -e "s/.*${TOKEN}.*//g" /tmp/auth_success 2>/dev/null - exit 1 + AUTH_RESPONSE=$(/bin/sh ${HOST_DIR}/cgi-bin/quecmanager/auth-token.sh process "${HTTP_AUTHORIZATION}") + AUTH_RESPONSE_STATUS=$? + if [ $AUTH_RESPONSE_STATUS -ne 0 ]; then + output_json $AUTH_RESPONSE "0" + exit $AUTH_RESPONSE_STATUS fi # Parse query string diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/auth-token.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/auth-token.sh new file mode 100644 index 0000000..f562ebb --- /dev/null +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/auth-token.sh @@ -0,0 +1,84 @@ +#!/bin/sh + +# Exit Codes: 0 = Success, 1 = Not Authorized, 2 = Auth File Not Found, 3 = Token Removal Failed + +EXIT_CODE=0 +AUTH_FILE="/tmp/quecmanager/auth_success" + +cleanup() { + MAX_AGE=$((2 * 3600)) # 2 hours in seconds + NOW_TIME=$(date +%s) + TMP_FILE=$(mktemp) + # AUTH_FILE cleanup process, Remove any token lines older than 2 hours from AUTH_FILE + if [ -f $AUTH_FILE ]; then + while read -r line; do + if [ -n "$(echo "$line" | tr -d '[:space:]')" ]; then + # Extract the date from the line and convert it to a timestamp + TOKEN_DATE=$(echo "$line" | awk '{print $1}' | sed 's/T/ /') + TOKEN_TIME=$(date -d "$TOKEN_DATE" +%s 2>/dev/null) + # If date is valid and not older than MAX_AGE, keep the line + if [ -n "$TOKEN_TIME" ] && [ $((NOW_TIME - TOKEN_TIME)) -le $MAX_AGE ]; then + echo "$line" >> "$TMP_FILE" + fi + fi + done < "$AUTH_FILE" + mv "$TMP_FILE" "$AUTH_FILE" + fi +} + +removeToken() { + TOKEN=$1 + # Remove token from file + if [ -f $AUTH_FILE ] && [ -n "${TOKEN}" ]; then + sed -i -e "s/.*${TOKEN}.*//g" ${AUTH_FILE} 2>/dev/null + echo '{"state":"success", "message":"Logged out successfully"}' + EXIT_CODE=0 + else + echo '{"state":"failed", "message":"Token Removal Failed"}' + EXIT_CODE=3 + fi +} +process() { + if [ -n "$1" ]; then + TOKEN=$1 + else + TOKEN=$(head -c 16 /dev/urandom | hexdump -v -e '/1 "%02x"') + touch ${AUTH_FILE} + echo "$(date +"%Y-%m-%dT%H:%M:%S") ${TOKEN}" >> ${AUTH_FILE} + echo "" >> ${AUTH_FILE} + fi + + if [ ! -f $AUTH_FILE ]; then + echo '{"state":"failed", "message":"Authentication file not found"}' + EXIT_CODE=2 + fi + + if [ $EXIT_CODE -eq 0 ] && ( [ -z "$TOKEN" ] || [ "$TOKEN" = "" ] || [ $(grep "${TOKEN}" "${AUTH_FILE}" | wc -l) -eq 0 ] ); then + echo "{\"response\": { \"status\": \"error\", \"raw_output\": \"Not Authorized\" }, \"command\": {\"timestamp\": \"$(date +%Y%m%d'T'%H%M%S)\"}, \"error\":\"Not Authorized\"}" + EXIT_CODE=1 + fi + + if [ $EXIT_CODE -eq 0 ] && grep -q "$TOKEN" "$AUTH_FILE"; then + echo "{\"state\":\"success\", \"token\":\"$TOKEN\"}" + EXIT_CODE=0 + fi + +} +case $1 in + removeToken) + removeToken $2 + ;; + cleanup) + cleanup + ;; + process) + cleanup + process $2 + ;; + *) + cleanup + process $1 + ;; +esac + +exit $EXIT_CODE \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/auth.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/auth.sh index a481bf0..57b16c2 100755 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/auth.sh +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/auth.sh @@ -7,12 +7,11 @@ echo "" # Read POST data read -r POST_DATA -# Debug log for generated hash -DEBUG_LOG="/tmp/auth.log" -AUTH_FILE="/tmp/auth_success" # Extract the password from POST data (URL encoded) USER="root" INPUT_PASSWORD=$(echo "$POST_DATA" | grep -o 'password=[^&]*' | cut -d= -f2-) +RESPONSE="" +HOST_DIR=$(pwd) # URL-decode the password while preserving most special characters # First decode percent-encoded sequences @@ -51,46 +50,13 @@ SALT=$(echo "$USER_HASH" | cut -d'$' -f3) # Use printf to avoid issues with special characters in echo GENERATED_HASH=$(printf '%s' "$INPUT_PASSWORD" | openssl passwd -1 -salt "$SALT" -stdin) -# Log generated hash for debugging -printf "Generated hash: %s\n" "$GENERATED_HASH" >> "$DEBUG_LOG" - # Check if the request for AUTH contains the Authorization Header so as to assure we're not at an initial login SUPPLIED_TOKEN="${HTTP_AUTHORIZATION}" # Compare the generated hash with the one in the shadow file if [ "$GENERATED_HASH" = "$USER_HASH" ]; then - # If the token is supplied, use it; otherwise, generate a new one and store it in the auth file - if [ "$SUPPLIED_TOKEN" != "" ]; then - TOKEN="$SUPPLIED_TOKEN" - else - TOKEN=$(head -c 16 /dev/urandom | hexdump -v -e '/1 "%02x"') - CREATED_DATE=$(date +"%Y-%m-%dT%H:%M:%S") - touch ${AUTH_FILE} - echo "${CREATED_DATE} ${TOKEN}" >> ${AUTH_FILE} - echo "" >> ${AUTH_FILE} - fi - echo "{\"state\":\"success\",\"token\":\"${TOKEN}\"}" + RESPONSE=$(/bin/sh ${HOST_DIR}/cgi-bin/quecmanager/auth-token.sh process "$SUPPLIED_TOKEN") else - # Remove token from file - if [ -n ${TOKEN} ]; then - sed -i -e "s/.*${TOKEN}.*//g" ${AUTH_FILE} 2>/dev/null - fi - echo '{"state":"failed", "message":"Authentication failed"}' + RESPONSE=$(/bin/sh ${HOST_DIR}/cgi-bin/quecmanager/auth-token.sh removeToken "$SUPPLIED_TOKEN") fi -# AUTH_FILE cleanup process, Remove any token lines older than 2 hours from AUTH_FILE -MAX_AGE=$((2 * 3600)) # 2 hours in seconds -NOW_TIME=$(date +%s) -TMP_FILE=$(mktemp) -while read -r line; do - if [ -n "$(echo "$line" | tr -d '[:space:]')" ]; then - # Extract the date from the line and convert it to a timestamp - TOKEN_DATE=$(echo "$line" | awk '{print $1}' | sed 's/T/ /') - TOKEN_TIME=$(date -d "$TOKEN_DATE" +%s 2>/dev/null) - # If date is valid and not older than MAX_AGE, keep the line - if [ -n "$TOKEN_TIME" ] && [ $((NOW_TIME - TOKEN_TIME)) -le $MAX_AGE ]; then - echo "$line" >> "$TMP_FILE" - fi - fi -done < "$AUTH_FILE" - -mv "$TMP_FILE" "$AUTH_FILE" \ No newline at end of file +echo "$RESPONSE" \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/fetch_data.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/fetch_data.sh new file mode 100644 index 0000000..d821051 --- /dev/null +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/fetch_data.sh @@ -0,0 +1,303 @@ +#!/bin/sh +# OpenWrt-Compatible Improved fetch_data.sh +# Optimized for OpenWrt/BusyBox environment with enhanced performance + +# Set content-type for JSON response +printf "Content-type: application/json\r\n" +printf "\r\n" + +# Load centralized logging +. /www/cgi-bin/services/quecmanager_logger.sh + +# Configuration +QUEUE_DIR="/tmp/at_queue" +QUEUE_MANAGER="/www/cgi-bin/services/at_queue_manager.sh" +SCRIPT_NAME_LOG="fetch_data" + +# Performance settings - OpenWrt optimized +BATCH_TIMEOUT=45 # Timeout for batch operations +INDIVIDUAL_TIMEOUT=15 # Timeout for individual commands +TOKEN_RETRY_LIMIT=8 # Reduced retries for faster failure +TOKEN_RETRY_DELAY=0.1 # Faster retry intervals + +# Minimal logging for performance +log_fetch() { + local level="$1" + local message="$2" + + # Only log errors to centralized system for performance + case "$level" in + "error") + qm_log_error "service" "$SCRIPT_NAME_LOG" "$message" + ;; + "debug") + [ "${DEBUG_MODE:-0}" = "1" ] && logger -t fetch_data -p "daemon.debug" "$message" + ;; + esac +} + +# Ensure queue directory exists +mkdir -p "$QUEUE_DIR" + +# OpenWrt-compatible JSON escaping using shell builtins +escape_json() { + printf '%s' "$1" | sed 's/\\/\\\\/g; s/"/\\"/g; s/\x1b/\\u001b/g' | tr -d '\r\n\f\b' +} + +# OpenWrt-compatible URL encoding +urlencode_simple() { + local string="$1" + # Encode most common special characters for BusyBox compatibility + string="${string// /%20}" + string="${string//+/%2B}" + string="${string//\"/%22}" + string="${string//=/%3D}" + string="${string//&/%26}" + string="${string//#/%23}" + string="${string//?/%3F}" + string="${string//;/%3B}" + string="${string//,/%2C}" + echo "$string" +} + +# Fast AT command execution with OpenWrt timeout handling +execute_at_command() { + local cmd="$1" + local timeout="${2:-$INDIVIDUAL_TIMEOUT}" + + local output="" + local status=1 + + # OpenWrt-compatible timeout implementation + if command -v timeout >/dev/null 2>&1; then + # Use timeout command if available + output=$(timeout "$timeout" sms_tool at "$cmd" 2>&1) + status=$? + else + # BusyBox-compatible timeout implementation + ( + sms_tool at "$cmd" 2>&1 & + local cmd_pid=$! + + # Background timeout + (sleep "$timeout" && kill -TERM $cmd_pid 2>/dev/null) & + local timeout_pid=$! + + wait $cmd_pid + local cmd_status=$? + kill $timeout_pid 2>/dev/null + exit $cmd_status + ) + status=$? + output=$(cat) + fi + + if [ $status -eq 0 ] && [ -n "$output" ]; then + echo "$output" + return 0 + fi + + return 1 +} + +# Intelligent command grouping for batch processing +group_commands() { + local commands="$1" + + # Separate quick vs slow commands for optimized processing + local quick_commands="" + local slow_commands="" + + for cmd in $commands; do + case "$cmd" in + *"?"*|*"CREG"*|*"CGREG"*|*"CEREG"*|*"CPIN"*|*"CFUN"*) + quick_commands="$quick_commands $cmd" + ;; + *) + slow_commands="$slow_commands $cmd" + ;; + esac + done + + # Process quick commands first with shorter timeout + if [ -n "$quick_commands" ]; then + process_command_batch "$quick_commands" 10 + fi + + # Then process slower commands + if [ -n "$slow_commands" ]; then + process_command_batch "$slow_commands" $INDIVIDUAL_TIMEOUT + fi +} + +# Process a batch of commands using the queue manager +process_command_batch() { + local commands="$1" + local timeout="${2:-$INDIVIDUAL_TIMEOUT}" + local first=1 + + for cmd in $commands; do + [ $first -eq 0 ] && printf ',' + first=0 + + # Use queue manager for better performance and queuing + local escaped_cmd=$(urlencode_simple "$cmd") + local priority=5 # Medium priority for batch operations + + # Submit to queue manager + local response=$(REQUEST_METHOD="GET" QUERY_STRING="command=$escaped_cmd&priority=$priority&timeout=$timeout" "$QUEUE_MANAGER" 2>/dev/null) + + # Extract command ID + local cmd_id="" + if [ -n "$response" ]; then + cmd_id=$(echo "$response" | grep -o '"command_id":"[^"]*"' | cut -d'"' -f4) + [ -z "$cmd_id" ] && cmd_id=$(echo "$response" | grep -o '"id":"[^"]*"' | cut -d'"' -f4) + fi + + local escaped_cmd_display=$(escape_json "$cmd") + + if [ -n "$cmd_id" ]; then + # Wait for result with polling + local result_file="/tmp/at_queue/results/$cmd_id" + local wait_time=0 + local max_wait=$timeout + + while [ $wait_time -lt $max_wait ]; do + if [ -f "$result_file" ]; then + local result_content=$(cat "$result_file" 2>/dev/null) + if [ -n "$result_content" ]; then + # Extract response from result + local cmd_response=$(echo "$result_content" | grep -o '"response":"[^"]*"' | cut -d'"' -f4) + local cmd_status=$(echo "$result_content" | grep -o '"status":"[^"]*"' | cut -d'"' -f4) + + if [ "$cmd_status" = "success" ] && [ -n "$cmd_response" ]; then + printf '{"command":"%s","response":"%s","status":"success"}' \ + "$escaped_cmd_display" "$(escape_json "$cmd_response")" + else + printf '{"command":"%s","response":"Command failed","status":"error"}' \ + "$escaped_cmd_display" + fi + + # Cleanup result file + rm -f "$result_file" 2>/dev/null + break + fi + fi + + sleep 0.2 + wait_time=$((wait_time + 1)) + done + + # If we didn't get a result, report timeout + if [ $wait_time -ge $max_wait ]; then + printf '{"command":"%s","response":"Command timed out","status":"timeout"}' \ + "$escaped_cmd_display" + rm -f "$result_file" 2>/dev/null + fi + else + # Direct execution fallback if queue manager fails + local output=$(execute_at_command "$cmd" "$timeout") + local cmd_status=$? + + if [ $cmd_status -eq 0 ] && [ -n "$output" ]; then + printf '{"command":"%s","response":"%s","status":"success"}' \ + "$escaped_cmd_display" "$(escape_json "$output")" + else + printf '{"command":"%s","response":"Direct execution failed","status":"error"}' \ + "$escaped_cmd_display" + fi + fi + done +} + +# Enhanced batch processing with optimizations +process_all_commands() { + local commands="$1" + local priority="${2:-5}" + + printf '[' + group_commands "$commands" + printf ']\r\n' + + return 0 +} + +# Cleanup on exit +cleanup() { + exit 0 +} + +# Set up signal handlers +trap cleanup INT TERM + +# Enhanced command sets with better organization +COMMAND_SET_1='AT+QUIMSLOT? AT+CNUM AT+COPS? AT+CIMI AT+ICCID AT+CGSN AT+CPIN? AT+CGDCONT? AT+CREG? AT+CFUN? AT+QENG="servingcell" AT+QTEMP AT+CGCONTRDP' +COMMAND_SET_2='AT+QCAINFO=1;+QCAINFO;+QCAINFO=0 AT+QRSRP AT+QMAP="WWAN" AT+C5GREG=2;+C5GREG? AT+CGREG=2;+CGREG? AT+QRSRQ AT+QSINR' +COMMAND_SET_3='AT+CGMI AT+CGMM AT+QGMR AT+CNUM AT+CIMI AT+ICCID AT+CGSN AT+QMAP="LANIP" AT+QMAP="WWAN" AT+QGETCAPABILITY' +COMMAND_SET_4='AT+QMAP="MPDN_RULE" AT+QMAP="DHCPV4DNS" AT+QCFG="usbnet" AT+QNWCFG="3gpp_rel"' +COMMAND_SET_5='AT+QRSRP AT+QRSRQ AT+QSINR AT+QCAINFO AT+QSPN' +COMMAND_SET_6='AT+CEREG=2;+CEREG? AT+C5GREG=2;+C5GREG? AT+CPIN? AT+CGDCONT? AT+CGCONTRDP AT+QMAP="WWAN" AT+QRSRP AT+QTEMP' +COMMAND_SET_7='AT+QNWPREFCFG="policy_band" AT+QNWPREFCFG="lte_band";+QNWPREFCFG="nsa_nr5g_band";+QNWPREFCFG="nr5g_band"' +COMMAND_SET_8='AT+QNWLOCK="common/4g" AT+QNWLOCK="common/5g" AT+QNWLOCK="save_ctrl"' +COMMAND_SET_9='AT+QNWCFG="lte_time_advance",1;+QNWCFG="lte_time_advance" AT+QNWCFG="nr5g_time_advance",1;+QNWCFG="nr5g_time_advance"' +COMMAND_SET_10='AT+QNWPREFCFG="mode_pref" AT+QNWPREFCFG="nr5g_disable_mode" AT+QMBNCFG="AutoSel" AT+QMBNCFG="list"' + +# Parse command set with validation - OpenWrt compatible +COMMAND_SET=$(echo "$QUERY_STRING" | grep -o 'set=[0-9]\+' | cut -d'=' -f2 | tr -cd '0-9') +if [ -z "$COMMAND_SET" ] || [ "$COMMAND_SET" -lt 1 ] || [ "$COMMAND_SET" -gt 10 ]; then + COMMAND_SET=1 +fi + +# Select appropriate command set +case "$COMMAND_SET" in + 1) COMMANDS="$COMMAND_SET_1" ;; + 2) COMMANDS="$COMMAND_SET_2" ;; + 3) COMMANDS="$COMMAND_SET_3" ;; + 4) COMMANDS="$COMMAND_SET_4" ;; + 5) COMMANDS="$COMMAND_SET_5" ;; + 6) COMMANDS="$COMMAND_SET_6" ;; + 7) COMMANDS="$COMMAND_SET_7" ;; + 8) COMMANDS="$COMMAND_SET_8" ;; + 9) COMMANDS="$COMMAND_SET_9" ;; + 10) COMMANDS="$COMMAND_SET_10" ;; +esac + +# Set priority based on command type +PRIORITY=5 # Medium-high priority for data fetching + +# Check for high priority commands +if echo "$COMMANDS" | grep -qi "QSCAN"; then + PRIORITY=1 +elif echo "$COMMANDS" | grep -qi "COPS\|CFUN"; then + PRIORITY=3 +fi + +# Execute batch processing with timeout protection +( + # Set overall timeout for the entire script using OpenWrt-compatible method + if command -v timeout >/dev/null 2>&1; then + timeout $BATCH_TIMEOUT sh -c ' + process_all_commands "$1" "$2" + ' _ "$COMMANDS" "$PRIORITY" + else + # BusyBox timeout fallback + ( + process_all_commands "$COMMANDS" "$PRIORITY" & + local main_pid=$! + + (sleep $BATCH_TIMEOUT && kill -TERM $main_pid 2>/dev/null) & + local timeout_pid=$! + + wait $main_pid + local exit_status=$? + kill $timeout_pid 2>/dev/null + + if [ $exit_status -eq 143 ] || [ $exit_status -eq 124 ]; then + printf '[{"command":"batch","response":"Script execution timed out","status":"timeout"}]\r\n' + fi + ) + fi +) || { + # Handle script timeout + printf '[{"command":"batch","response":"Script execution timed out","status":"timeout"}]\r\n' +} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/heartbeat.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/heartbeat.sh deleted file mode 100755 index 3ee85ef..0000000 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/heartbeat.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -echo "Content-Type: application/json" -echo "Cache-Control: no-cache, no-store, must-revalidate" -echo "Pragma: no-cache" -echo "Expires: 0" -echo "" - -# Basic response indicating the server is up -echo '{"alive": true}' \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/logout.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/logout.sh index ad4e041..7093b27 100755 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/logout.sh +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/logout.sh @@ -1,8 +1,9 @@ #!/bin/sh -# Get token from Request Header Authorization -USER_TOKEN="${HTTP_AUTHORIZATION}" + # Remove token from file -sed -i -e "s/.*${USER_TOKEN}.*//g" /tmp/auth_success 2>/dev/null +HOST_DIR=$(pwd) +AUTH_RESPONSE=$(/bin/sh ${HOST_DIR}/cgi-bin/quecmanager/auth-token.sh removeToken "${HTTP_AUTHORIZATION}") +EXIT_CODE=$? echo "Content-Type: application/json" echo "Cache-Control: no-cache, no-store, must-revalidate" @@ -12,4 +13,5 @@ echo "" -echo '{"state":"success", "message":"Logged out successfully"}' \ No newline at end of file +echo $AUTH_RESPONSE +exit $EXIT_CODE \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/settings/change-password.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/settings/change-password.sh index e199a7f..359e674 100755 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/settings/change-password.sh +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/settings/change-password.sh @@ -4,38 +4,18 @@ echo "Content-type: application/json" echo "" -TOKEN="${HTTP_AUTHORIZATION}" - # Read POST data read -r POST_DATA # Debug log for generated hash DEBUG_LOG="/tmp/password_change.log" -AUTH_FILE="/tmp/auth_success" +HOST_DIR=$(pwd) -# Get Token from Authorization Header on Request -if [ ! -f $AUTH_FILE ]; then - echo "{\"error\":\"Unauthenticated Request\"}" - exit 1 -fi - -if [ -z "$TOKEN" ] || "${TOKEN}" = "" || [ $(grep "${TOKEN}" "${AUTH_FILE}" | wc -l) -eq 0 ]; then - echo "{\"response\": { \"status\": \"error\", \"raw_output\": \"Not Authorized\" }, \"command\": {\"timestamp\": \"$(date +%Y%m%d'T'%H%M%S)\"}, \"error\":\"Not Authorized\"}" - exit 1 -fi - -# Check if token is within 2 hours -TOKEN_LINE=$(grep "${TOKEN}" "${AUTH_FILE}") -TOKEN_DATE=$(echo "$TOKEN_LINE" | awk '{print $1}' | sed 's/T/ /') -TOKEN_TIME=$(date -d "$TOKEN_DATE" +%s 2>/dev/null) -NOW_TIME=$(date +%s) -MAX_AGE=$((2 * 3600)) # 2 hours in seconds - -if [ -z "$TOKEN_TIME" ] || [ $((NOW_TIME - TOKEN_TIME)) -gt $MAX_AGE ]; then - echo "{ \"response\": { \"status\": \"error\", \"raw_output\": \"Token expired. Reauthenticate to get new token.\" }, \"command\": {\"timestamp\": \"$(date +%Y%m%d'T'%H%M%S)\"}, \"error\":\"Token expired\"}" - # Cleanup/Remove token from file - sed -i -e "s/.*${TOKEN}.*//g" /tmp/auth_success 2>/dev/null - exit 1 +AUTH_RESPONSE=$(/bin/sh ${HOST_DIR}/cgi-bin/quecmanager/auth-token.sh process "$HTTP_AUTHORIZATION") +AUTH_RESPONSE_STATUS=$? +if [ $AUTH_RESPONSE_STATUS -ne 0 ]; then + echo $AUTH_RESPONSE + exit $AUTH_RESPONSE_STATUS fi diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/settings/ping_settings.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/settings/ping_settings.sh index 388b868..eff37ee 100755 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/settings/ping_settings.sh +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/quecmanager/settings/ping_settings.sh @@ -1,9 +1,9 @@ #!/bin/sh # Ping Settings Configuration Script -# Manages ping service (enable/disable) and daemon settings +# Manages ping service (enable/disable) and daemon settings with dynamic service management # Author: dr-dolomite -# Date: 2025-08-04 +# Date: 2025-08-31 # Handle OPTIONS request first (before any headers) if [ "${REQUEST_METHOD:-GET}" = "OPTIONS" ]; then @@ -29,9 +29,7 @@ CONFIG_FILE="$CONFIG_DIR/ping_settings.conf" FALLBACK_CONFIG_DIR="/tmp/quecmanager/settings" FALLBACK_CONFIG_FILE="$FALLBACK_CONFIG_DIR/ping_settings.conf" LOG_FILE="/tmp/ping_settings.log" -PID_FILE="/tmp/quecmanager/ping_daemon.pid" -# Prefer the new services location, fall back to the legacy path for compatibility -DAEMON_RELATIVE_PATHS="/cgi-bin/services/ping_daemon.sh" +SERVICES_INIT="/etc/init.d/quecmanager_services" # Logging function log_message() { @@ -72,77 +70,9 @@ resolve_config_for_read() { return 0 } -# Determine daemon path (absolute) based on typical web root layouts -resolve_daemon_path() { - # Common locations where CGI/WWW is mounted - for rel in $DAEMON_RELATIVE_PATHS; do - for base in \ - /www \ - /; do - if [ -x "$base$rel" ]; then - echo "$base$rel" - return 0 - fi - done - # Also try as-is if busybox httpd cwd matches web root - if [ -x "$rel" ]; then - echo "$rel" - return 0 - fi - done - # Nothing found; return first candidate as a best-effort path - set -- $DAEMON_RELATIVE_PATHS - echo "$1" -} - -daemon_running() { - if [ -f "$PID_FILE" ]; then - pid="$(cat "$PID_FILE" 2>/dev/null || true)" - if [ -n "${pid:-}" ] && kill -0 "$pid" 2>/dev/null; then - return 0 - fi - fi - return 1 -} - -start_daemon() { - # Ensure /tmp/quecmanager exists for PID - [ -d "/tmp/quecmanager" ] || mkdir -p "/tmp/quecmanager" - - if daemon_running; then - log_message "Daemon already running" - return 0 - fi - - local daemon_path - daemon_path="$(resolve_daemon_path)" - if [ ! -x "$daemon_path" ]; then - # Try to make it executable if present - if [ -f "$daemon_path" ]; then - chmod +x "$daemon_path" 2>/dev/null || true - fi - fi - - if [ -x "$daemon_path" ]; then - nohup "$daemon_path" >/dev/null 2>&1 & - log_message "Started ping daemon: $daemon_path (pid $!)" - return 0 - else - log_message "Daemon script not found or not executable: $daemon_path" - return 1 - fi -} - -stop_daemon() { - if daemon_running; then - pid="$(cat "$PID_FILE" 2>/dev/null || true)" - if [ -n "${pid:-}" ]; then - kill "$pid" 2>/dev/null || true - sleep 0.2 - kill -9 "$pid" 2>/dev/null || true - fi - fi - rm -f "$PID_FILE" 2>/dev/null || true +# Check if ping daemon is running +is_ping_daemon_running() { + pgrep -f "ping_daemon.sh" >/dev/null 2>&1 } # Get current ping setting @@ -202,6 +132,117 @@ save_config() { log_message "Saved ping config (fallback): enabled=$enabled host=$host interval=$interval" } +# Add ping daemon to services init script (remove the static version and add dynamic version) +add_ping_daemon_to_services() { + if [ ! -f "$SERVICES_INIT" ]; then + log_message "Services init file not found: $SERVICES_INIT" + return 1 + fi + + # First, remove any existing ping daemon block (both static and dynamic) + remove_ping_daemon_from_services + + # Add the dynamic ping daemon block before "All QuecManager services Started" + local temp_file="/tmp/services_temp_$$" + + awk ' + /echo "All QuecManager services Started"/ { + print " # Start ping daemon" + print " echo \"Starting Ping Daemon...\"" + print " procd_open_instance" + print " procd_set_param command /www/cgi-bin/services/ping_daemon.sh" + print " procd_set_param respawn" + print " procd_set_param stdout 1" + print " procd_set_param stderr 1" + print " procd_close_instance" + print " echo \"Ping Daemon started\"" + print "" + } + { print } + ' "$SERVICES_INIT" > "$temp_file" + + if [ -s "$temp_file" ]; then + mv "$temp_file" "$SERVICES_INIT" + chmod +x "$SERVICES_INIT" + log_message "Added ping daemon to services init script" + return 0 + else + rm -f "$temp_file" + log_message "Failed to add ping daemon to services" + return 1 + fi +} + +# Remove ping daemon from services init script (both static and dynamic versions) +remove_ping_daemon_from_services() { + if [ ! -f "$SERVICES_INIT" ]; then + log_message "Services init file not found: $SERVICES_INIT" + return 1 + fi + + local temp_file="/tmp/services_temp_$$" + + # Remove both the old static ping daemon block and any dynamic ping daemon block + awk ' + # Skip the old static ping daemon block + /# Start ping daemon if enabled in configuration/ { + skip_static=1 + next + } + skip_static && /echo "Ping Daemon started"/ { + skip_static=0 + next + } + skip_static && /echo "Ping configuration not found/ { + skip_static=0 + next + } + skip_static { next } + + # Skip the new dynamic ping daemon block + /# Start ping daemon$/ { + skip_dynamic=1 + next + } + skip_dynamic && /^$/ { + skip_dynamic=0 + next + } + skip_dynamic { next } + + # Print everything else + !skip_static && !skip_dynamic { print } + ' "$SERVICES_INIT" > "$temp_file" + + if [ -s "$temp_file" ]; then + mv "$temp_file" "$SERVICES_INIT" + chmod +x "$SERVICES_INIT" + log_message "Removed ping daemon from services init script" + return 0 + else + rm -f "$temp_file" + log_message "Failed to remove ping daemon from services" + return 1 + fi +} + +# Restart QuecManager services +restart_services() { + log_message "Restarting QuecManager services..." + + # Stop services + if [ -x "$SERVICES_INIT" ]; then + "$SERVICES_INIT" stop >/dev/null 2>&1 + sleep 2 + "$SERVICES_INIT" start >/dev/null 2>&1 + log_message "Services restarted successfully" + return 0 + else + log_message "Cannot restart services - init script not found or not executable" + return 1 + fi +} + # Delete ping configuration (reset to default) delete_ping_setting() { local removed=1 @@ -223,7 +264,7 @@ handle_get() { log_message "GET request received" get_config_values local running=false - if daemon_running; then running=true; fi + if is_ping_daemon_running; then running=true; fi local is_default=true if [ -f "$CONFIG_FILE" ] && grep -q "^PING_ENABLED=" "$CONFIG_FILE"; then is_default=false @@ -264,35 +305,34 @@ handle_post() { send_error "INVALID_INTERVAL" "Interval must be between 1 and 3600 seconds." fi - # Capture previous values to decide on restart + # Get current config to compare get_config_values local prev_enabled="$ENABLED" local prev_host="$HOST" local prev_interval="$INTERVAL" + # Save new configuration save_config "$enabled" "$host" "$interval" || send_error "WRITE_FAILED" "Failed to save configuration" + # Handle service changes using dynamic management like memory if [ "$enabled" = "true" ]; then - if daemon_running; then - # Restart only if effective parameters changed - if [ "$prev_host" != "$host" ] || [ "$prev_interval" != "$interval" ] || [ "$prev_enabled" != "$enabled" ]; then - log_message "Config change detected (host/interval/enabled). Restarting daemon." - stop_daemon - start_daemon || log_message "Failed to restart daemon" - else - log_message "No change requiring restart; daemon remains running" - fi - else - start_daemon || log_message "Failed to start daemon" + # Enable ping daemon + add_ping_daemon_to_services + if [ "$prev_enabled" != "true" ] || [ "$prev_host" != "$host" ] || [ "$prev_interval" != "$interval" ]; then + restart_services fi else - stop_daemon + # Disable ping daemon + remove_ping_daemon_from_services + restart_services fi - get_config_values + # Return current status + sleep 1 # Give services time to start/stop local running=false - if daemon_running; then running=true; fi - send_success "Ping setting updated successfully" "{\"enabled\":$ENABLED,\"host\":\"$HOST\",\"interval\":$INTERVAL,\"running\":$running}" + if is_ping_daemon_running; then running=true; fi + + send_success "Ping setting updated successfully" "{\"enabled\":$enabled,\"host\":\"$host\",\"interval\":$interval,\"running\":$running}" else send_error "NO_DATA" "No data provided" fi @@ -301,13 +341,15 @@ handle_post() { # Handle DELETE request - Reset to default (delete configuration) handle_delete() { log_message "DELETE request received" - stop_daemon - if delete_ping_setting; then - # Default is enabled - send_success "Ping setting reset to default" "{\"enabled\":true,\"isDefault\":true,\"running\":false}" - else - send_error "NOT_FOUND" "Ping setting configuration not found" - fi + + # Remove ping daemon from services and restart + remove_ping_daemon_from_services + restart_services + + # Remove config files + delete_ping_setting + + send_success "Ping setting reset to default (disabled)" "{\"enabled\":false,\"running\":false,\"isDefault\":true}" } # Main execution diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/at_queue_manager.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/at_queue_manager.sh index aa9aee3..268412e 100755 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/at_queue_manager.sh +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/at_queue_manager.sh @@ -2,6 +2,49 @@ # AT Queue Manager for OpenWRT with Preemption Support and Token System # Located in /www/cgi-bin/services/at_queue_manager +# Load centralized logging +. /www/cgi-bin/services/quecmanager_logger.sh + +# Script identification for logging +SCRIPT_NAME_LOG="at_queue_manager" + +# Test if centralized logging is available and log a test message +if command -v qm_log_info >/dev/null 2>&1; then + qm_log_info "service" "$SCRIPT_NAME_LOG" "Centralized logging system loaded successfully" +else + logger -t at_queue_manager -p daemon.error "Centralized logging functions not found after sourcing" +fi + +# Centralized logging function +log_at_queue_manager() { + local level="$1" + local message="$2" + + # Fallback logging if centralized system fails + if ! command -v qm_log_error >/dev/null 2>&1; then + logger -t at_queue_manager -p daemon.error "Centralized logging not available, falling back to syslog: $level - $message" + return 1 + fi + + case "$level" in + "error") + qm_log_error "service" "$SCRIPT_NAME_LOG" "$message" + ;; + "warn") + qm_log_warn "service" "$SCRIPT_NAME_LOG" "$message" + ;; + "info") + qm_log_info "service" "$SCRIPT_NAME_LOG" "$message" + ;; + "debug") + qm_log_debug "service" "$SCRIPT_NAME_LOG" "$message" + ;; + *) + qm_log_error "service" "$SCRIPT_NAME_LOG" "Invalid log level: $level - $message" + ;; + esac +} + # Constants QUEUE_DIR="/tmp/at_queue" QUEUE_FILE="$QUEUE_DIR/queue" @@ -39,7 +82,7 @@ acquire_lock() { while [ $attempt -lt $timeout ]; do if mkdir "$LOCK_DIR" 2>/dev/null; then - logger -t at_queue -p daemon.debug "Lock acquired" + log_at_queue_manager "debug" "Lock acquired" return 0 fi @@ -47,18 +90,18 @@ acquire_lock() { attempt=$((attempt + 1)) done - logger -t at_queue -p daemon.error "Failed to acquire lock after $timeout attempts" + log_at_queue_manager "error" "Failed to acquire lock after $timeout attempts" return 1 } release_lock() { if [ -d "$LOCK_DIR" ]; then rmdir "$LOCK_DIR" 2>/dev/null - logger -t at_queue -p daemon.debug "Lock released" + log_at_queue_manager "debug" "Lock released" return 0 fi - logger -t at_queue -p daemon.error "Lock directory doesn't exist" + log_at_queue_manager "error" "Lock directory doesn't exist" return 1 } @@ -69,7 +112,7 @@ init_queue_system() { chmod 755 "$QUEUE_DIR" chmod 644 "$QUEUE_FILE" chmod 755 "$RESULTS_DIR" - logger -t at_queue -p daemon.info "Queue system initialized" + log_at_queue_manager "info" "Queue system initialized" } # Cleanup old results and tracking files @@ -80,7 +123,7 @@ cleanup_old_results() { find "$QUEUE_DIR" -name "pid.*" -type f -mmin +60 -delete 2>/dev/null find "$QUEUE_DIR" -name "*.exit" -type f -mmin +60 -delete 2>/dev/null find "$QUEUE_DIR" -name "start_time.*" -type f -mmin +60 -delete 2>/dev/null - logger -t at_queue -p daemon.debug "Cleaned up old tracking files" + log_at_queue_manager "debug" "Cleaned up old tracking files" # Use find with -delete and basic timestamp check for OpenWRT find "$RESULTS_DIR" -name "*.json" -type f -mmin +60 -delete 2>/dev/null || { @@ -99,12 +142,12 @@ cleanup_old_results() { local token_time=$(cat "$TOKEN_FILE" | jsonfilter -e '@.timestamp') if [ $((current_time - token_time)) -gt $TOKEN_TIMEOUT ]; then local token_holder=$(cat "$TOKEN_FILE" | jsonfilter -e '@.id') - logger -t at_queue -p daemon.warn "Removing expired token from $token_holder" + log_at_queue_manager "warn" "Removing expired token from $token_holder" rm -f "$TOKEN_FILE" fi fi - logger -t at_queue -p daemon.info "Cleanup: Removed files older than 1 hour" + log_at_queue_manager "info" "Cleanup: Removed files older than 1 hour" } # Generate unique command ID @@ -122,7 +165,7 @@ start_execution_tracking() { echo "$pid" > "$QUEUE_DIR/pid.$cmd_id" chmod 644 "$QUEUE_DIR/start_time.$cmd_id" chmod 644 "$QUEUE_DIR/pid.$cmd_id" - logger -t at_queue -p daemon.debug "Started tracking command $cmd_id (PID: $pid)" + log_at_queue_manager "debug" "Started tracking command $cmd_id (PID: $pid)" } # Check if running command should be preempted @@ -131,7 +174,7 @@ should_preempt() { local new_priority="$2" if [ ! -f "$QUEUE_DIR/start_time.$current_cmd_id" ]; then - logger -t at_queue -p daemon.debug "No start time found for $current_cmd_id" + log_at_queue_manager "debug" "No start time found for $current_cmd_id" return 1 fi @@ -144,16 +187,16 @@ should_preempt() { if [ -f "$ACTIVE_FILE" ]; then current_priority=$(cat "$ACTIVE_FILE" | jsonfilter -e '@.priority') else - logger -t at_queue -p daemon.debug "No active command found" + log_at_queue_manager "debug" "No active command found" return 1 fi if [ $execution_time -gt $PREEMPTION_THRESHOLD ] && [ $new_priority -lt $current_priority ]; then - logger -t at_queue -p daemon.info "Command $current_cmd_id (priority $current_priority) running for ${execution_time}s is eligible for preemption by priority $new_priority" + log_at_queue_manager "info" "Command $current_cmd_id (priority $current_priority) running for ${execution_time}s is eligible for preemption by priority $new_priority" return 0 fi - logger -t at_queue -p daemon.debug "Command $current_cmd_id not eligible for preemption (time: ${execution_time}s, current priority: $current_priority, new priority: $new_priority)" + log_at_queue_manager "debug" "Command $current_cmd_id not eligible for preemption (time: ${execution_time}s, current priority: $current_priority, new priority: $new_priority)" return 1 } @@ -164,7 +207,7 @@ preempt_command() { if [ -f "$pid_file" ]; then local pid=$(cat "$pid_file") - logger -t at_queue -p daemon.info "Preempting command $cmd_id (PID: $pid)" + log_at_queue_manager "info" "Preempting command $cmd_id (PID: $pid)" # Send SIGTERM first kill -TERM $pid 2>/dev/null @@ -175,7 +218,7 @@ preempt_command() { # Force kill if still running if kill -0 $pid 2>/dev/null; then kill -KILL $pid 2>/dev/null - logger -t at_queue -p daemon.warn "Forced termination of command $cmd_id" + log_at_queue_manager "warn" "Forced termination of command $cmd_id" fi # Record preemption result @@ -185,11 +228,11 @@ preempt_command() { rm -f "$pid_file" "$QUEUE_DIR/start_time.$cmd_id" "$QUEUE_DIR/$cmd_id.exit" [ -f "$ACTIVE_FILE" ] && rm -f "$ACTIVE_FILE" - logger -t at_queue -p daemon.info "Command $cmd_id preemption complete" + log_at_queue_manager "info" "Command $cmd_id preemption complete" return 0 fi - logger -t at_queue -p daemon.warn "No PID file found for command $cmd_id" + log_at_queue_manager "warn" "No PID file found for command $cmd_id" return 1 } @@ -227,7 +270,7 @@ EOF printf "%s" "$response" > "$RESULTS_DIR/$cmd_id.json" chmod 644 "$RESULTS_DIR/$cmd_id.json" - logger -t at_queue -p daemon.info "Recorded preemption result for command $cmd_id (duration: ${duration}ms)" + log_at_queue_manager "info" "Recorded preemption result for command $cmd_id (duration: ${duration}ms)" } # Request a token for direct sms_tool execution @@ -238,7 +281,7 @@ request_token() { # Acquire lock first if ! acquire_lock; then - logger -t at_queue -p daemon.error "Failed to acquire lock for token request" + log_at_queue_manager "error" "Failed to acquire lock for token request" echo "{\"error\":\"Could not acquire lock\",\"status\":\"denied\"}" return 1 fi @@ -252,11 +295,11 @@ request_token() { # Check for expired token (> TOKEN_TIMEOUT seconds old) if [ $((current_time - timestamp)) -gt $TOKEN_TIMEOUT ]; then - logger -t at_queue -p daemon.warn "Found expired token from $current_holder, releasing" + log_at_queue_manager "warn" "Found expired token from $current_holder, releasing" rm -f "$TOKEN_FILE" # Check for priority preemption elif [ $priority -lt $current_priority ]; then - logger -t at_queue -p daemon.info "Preempting token from $current_holder (priority: $current_priority) for $requestor_id (priority: $priority)" + log_at_queue_manager "info" "Preempting token from $current_holder (priority: $current_priority) for $requestor_id (priority: $priority)" rm -f "$TOKEN_FILE" else # Token in use and cannot be preempted @@ -278,7 +321,7 @@ request_token() { return 1 fi - logger -t at_queue -p daemon.info "Direct execution with higher priority than active queue command" + log_at_queue_manager "info" "Direct execution with higher priority than active queue command" fi # Grant token @@ -296,7 +339,7 @@ release_token() { local requestor_id="$1" if ! acquire_lock; then - logger -t at_queue -p daemon.error "Failed to acquire lock for token release" + log_at_queue_manager "error" "Failed to acquire lock for token release" return 1 fi @@ -305,15 +348,15 @@ release_token() { if [ "$current_holder" = "$requestor_id" ]; then rm -f "$TOKEN_FILE" - logger -t at_queue -p daemon.debug "Token released by $requestor_id" + log_at_queue_manager "debug" "Token released by $requestor_id" release_lock echo "{\"status\":\"released\"}" return 0 else - logger -t at_queue -p daemon.warn "Token release attempted by $requestor_id but held by $current_holder" + log_at_queue_manager "warn" "Token release attempted by $requestor_id but held by $current_holder" fi else - logger -t at_queue -p daemon.warn "Token release attempted but no token exists" + log_at_queue_manager "warn" "Token release attempted but no token exists" fi release_lock @@ -331,11 +374,11 @@ enqueue_command() { # Ensure queue directory exists [ ! -d "$QUEUE_DIR" ] && init_queue_system - logger -t at_queue -p daemon.info "Enqueuing command: $cmd (priority: $priority, id: $cmd_id)" + log_at_queue_manager "info" "Enqueuing command: $cmd (priority: $priority, id: $cmd_id)" # Acquire lock for queue modification if ! acquire_lock; then - logger -t at_queue -p daemon.error "Failed to acquire lock for enqueuing command" + log_at_queue_manager "error" "Failed to acquire lock for enqueuing command" echo "{\"error\":\"Queue lock acquisition failed\",\"command\":\"$cmd\"}" return 1 fi @@ -358,11 +401,11 @@ enqueue_command() { cat "$QUEUE_FILE" >> "$temp_file" mv "$temp_file" "$QUEUE_FILE" chmod 644 "$QUEUE_FILE" - logger -t at_queue -p daemon.info "Added high priority command to front of queue" + log_at_queue_manager "info" "Added high priority command to front of queue" else # Normal priority - append to queue echo "$entry" >> "$QUEUE_FILE" - logger -t at_queue -p daemon.info "Added normal priority command to end of queue" + log_at_queue_manager "info" "Added normal priority command to end of queue" fi # Release lock @@ -379,7 +422,7 @@ dequeue_command() { # Acquire lock if ! acquire_lock; then - logger -t at_queue -p daemon.error "Failed to acquire lock for dequeuing command" + log_at_queue_manager "error" "Failed to acquire lock for dequeuing command" return 1 fi @@ -395,7 +438,7 @@ dequeue_command() { # Release lock release_lock - logger -t at_queue -p daemon.debug "Dequeued command: $(echo "$cmd_entry" | jsonfilter -e '@.command')" + log_at_queue_manager "debug" "Dequeued command: $(echo "$cmd_entry" | jsonfilter -e '@.command')" echo "$cmd_entry" } @@ -433,7 +476,7 @@ execute_with_timeout() { # Start execution tracking start_execution_tracking "$cmd_id" "$pid" - logger -t at_queue -p daemon.debug "Started command execution: $command (PID: $pid)" + log_at_queue_manager "debug" "Started command execution: $command (PID: $pid)" # Wait for completion with shorter polling interval local start_time=$(date +%s) @@ -447,7 +490,7 @@ execute_with_timeout() { # Cleanup rm -f "$QUEUE_DIR/pid.$cmd_id" "$QUEUE_DIR/$cmd_id.exit" "$output_file" "$QUEUE_DIR/start_time.$cmd_id" - logger -t at_queue -p daemon.debug "Command completed with exit code $exit_code" + log_at_queue_manager "debug" "Command completed with exit code $exit_code" echo "$output" return $exit_code fi @@ -471,7 +514,7 @@ execute_with_timeout() { # Cleanup rm -f "$QUEUE_DIR/pid.$cmd_id" "$QUEUE_DIR/$cmd_id.exit" "$output_file" "$QUEUE_DIR/start_time.$cmd_id" - logger -t at_queue -p daemon.warn "Command timed out after $timeout seconds" + log_at_queue_manager "warn" "Command timed out after $timeout seconds" echo "${partial_output:-Command timed out after $timeout seconds}" fi @@ -487,7 +530,7 @@ execute_command() { local start_time=$(date +%s%3N) - logger -t at_queue -p daemon.info "Executing command $cmd_id: $cmd_text (priority: $priority)" + log_at_queue_manager "info" "Executing command $cmd_id: $cmd_text (priority: $priority)" # Execute command with timeout local result=$(execute_with_timeout "$cmd_text" $MAX_TIMEOUT "$cmd_id") @@ -501,16 +544,16 @@ execute_command() { if [ $exit_code -eq 124 ]; then status="timeout" - logger -t at_queue -p daemon.error "Command $cmd_id timed out after ${duration}ms" + log_at_queue_manager "error" "Command $cmd_id timed out after ${duration}ms" elif echo "$result" | grep -q "OK"; then status="success" log_level="info" - logger -t at_queue -p daemon.info "Command $cmd_id completed successfully in ${duration}ms" + log_at_queue_manager "info" "Command $cmd_id completed successfully in ${duration}ms" elif echo "$result" | grep -q "CME ERROR"; then status="cme_error" - logger -t at_queue -p daemon.error "Command $cmd_id failed with CME ERROR in ${duration}ms" + log_at_queue_manager "error" "Command $cmd_id failed with CME ERROR in ${duration}ms" else - logger -t at_queue -p daemon.error "Command $cmd_id failed with general error in ${duration}ms" + log_at_queue_manager "error" "Command $cmd_id failed with general error in ${duration}ms" fi # Clean and escape the output @@ -536,7 +579,7 @@ EOF # Acquire lock for writing result if ! acquire_lock; then - logger -t at_queue -p daemon.error "Failed to acquire lock for writing result" + log_at_queue_manager "error" "Failed to acquire lock for writing result" else # Save response printf "%s" "$response" > "$RESULTS_DIR/$cmd_id.json" @@ -561,7 +604,7 @@ process_queue() { # Make sure the lock directory doesn't exist at startup [ -d "$LOCK_DIR" ] && rmdir "$LOCK_DIR" 2>/dev/null - logger -t at_queue -p daemon.info "Started queue processing daemon" + log_at_queue_manager "info" "Started queue processing daemon" while true; do # Quick cleanup check @@ -579,12 +622,12 @@ process_queue() { # Check for expired token if [ $((current_time - token_time)) -gt $TOKEN_TIMEOUT ]; then - logger -t at_queue -p daemon.warn "Removing expired token from $token_holder" + log_at_queue_manager "warn" "Removing expired token from $token_holder" rm -f "$TOKEN_FILE" else # Log pause status only every 5 seconds to reduce log spam if [ $((current_time - last_log)) -ge 5 ]; then - logger -t at_queue -p daemon.debug "Queue processing paused, token held by $token_holder" + log_at_queue_manager "debug" "Queue processing paused, token held by $token_holder" last_log=$current_time fi sleep $POLL_INTERVAL @@ -618,42 +661,42 @@ if [ "${SCRIPT_NAME}" != "" ]; then case "$action" in "enqueue") if [ -n "$command" ]; then - logger -t at_queue -p daemon.info "CGI: Received enqueue request for command: $command" + log_at_queue_manager "info" "CGI: Received enqueue request for command: $command" enqueue_command "$command" "$priority" else - logger -t at_queue -p daemon.error "CGI: Empty command received" + log_at_queue_manager "error" "CGI: Empty command received" echo "{\"error\":\"No command specified\"}" fi ;; "status") if [ -f "$ACTIVE_FILE" ]; then - logger -t at_queue -p daemon.debug "CGI: Status request - queue active" + log_at_queue_manager "debug" "CGI: Status request - queue active" cat "$ACTIVE_FILE" else - logger -t at_queue -p daemon.debug "CGI: Status request - queue idle" + log_at_queue_manager "debug" "CGI: Status request - queue idle" echo "{\"status\":\"idle\"}" fi ;; "request_token") if [ -n "$id" ]; then - logger -t at_queue -p daemon.info "Token request from $id (priority: ${priority:-10})" + log_at_queue_manager "info" "Token request from $id (priority: ${priority:-10})" request_token "$id" "${priority:-10}" "${timeout:-10}" else - logger -t at_queue -p daemon.error "Token request missing ID" + log_at_queue_manager "error" "Token request missing ID" echo "{\"error\":\"No requestor ID specified\",\"status\":\"denied\"}" fi ;; "release_token") if [ -n "$id" ]; then - logger -t at_queue -p daemon.info "Token release from $id" + log_at_queue_manager "info" "Token release from $id" release_token "$id" else - logger -t at_queue -p daemon.error "Token release missing ID" + log_at_queue_manager "error" "Token release missing ID" echo "{\"error\":\"No requestor ID specified\",\"status\":\"denied\"}" fi ;; *) - logger -t at_queue -p daemon.error "CGI: Invalid action received: $action" + log_at_queue_manager "error" "CGI: Invalid action received: $action" echo "{\"error\":\"Invalid action\"}" ;; esac @@ -668,5 +711,7 @@ fi # If not run as CGI, start queue processing if [ "${SCRIPT_NAME}" = "" ] && [ -z "$1" ]; then + # Test logging immediately on startup + log_at_queue_manager "info" "AT Queue Manager starting up - PID: $$" process_queue -fi \ No newline at end of file +fi diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/quecprofile.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/quecprofile.sh index eac608d..fcd6a23 100755 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/quecprofile.sh +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/quecprofile.sh @@ -2,9 +2,6 @@ # Updated QuecProfiles daemon with enhanced SA/NSA NR5G band management and TTL support # Including profile application functions and fixed comparison logic -# Load centralized logging -. /www/cgi-bin/services/quecmanager_logger.sh - # Configuration QUEUE_DIR="/tmp/at_queue" TOKEN_FILE="$QUEUE_DIR/token" @@ -18,49 +15,25 @@ DEFAULT_CHECK_INTERVAL=60 # Default check interval in seconds COMMAND_TIMEOUT=10 # Default timeout for AT commands in seconds QUEUE_PRIORITY=3 # Medium-high priority (1 is highest for cell scan) MAX_TOKEN_WAIT=15 # Maximum seconds to wait for token acquisition -SCRIPT_NAME_LOG="quecprofiles_daemon" -# Initialize log files and use centralized logging -mkdir -p "$(dirname "$DEBUG_LOG")" "$(dirname "$DETAILED_LOG")" -touch "$DEBUG_LOG" "$DETAILED_LOG" -chmod 644 "$DEBUG_LOG" "$DETAILED_LOG" - -# Log startup message using centralized logging -qm_log_info "service" "$SCRIPT_NAME_LOG" "Starting QuecProfiles daemon with SA/NSA NR5G and TTL support (PID: $$)" - -# Also maintain file logging for compatibility +# Initialize log file echo "$(date) - Starting QuecProfiles daemon with SA/NSA NR5G and TTL support (PID: $$)" >"$DEBUG_LOG" echo "$(date) - Starting QuecProfiles daemon with SA/NSA NR5G and TTL support (PID: $$)" >"$DETAILED_LOG" +chmod 644 "$DEBUG_LOG" "$DETAILED_LOG" -# Function to log messages - now uses centralized logging +# Function to log messages log_message() { local message="$1" local level="${2:-info}" local timestamp=$(date "+%Y-%m-%d %H:%M:%S") - # Use centralized logging - case "$level" in - "error") - qm_log_error "service" "$SCRIPT_NAME_LOG" "$message" - ;; - "warn") - qm_log_warn "service" "$SCRIPT_NAME_LOG" "$message" - ;; - "debug") - qm_log_debug "service" "$SCRIPT_NAME_LOG" "$message" - ;; - *) - qm_log_info "service" "$SCRIPT_NAME_LOG" "$message" - ;; - esac - - # Also maintain system logging for compatibility + # Log to system log logger -t quecprofiles_daemon -p "daemon.$level" "$message" - # Log to debug file (maintain existing behavior) + # Log to debug file echo "[$timestamp] [$level] $message" >>"$DEBUG_LOG" - # For detailed logs or errors (maintain existing behavior) + # For detailed logs or errors if [ "$level" = "error" ] || [ "$level" = "debug" ]; then echo "[$timestamp] [$level] $message" >>"$DETAILED_LOG" fi diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/quecwatch.sh b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/quecwatch.sh index df12391..8f4c912 100755 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/quecwatch.sh +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/cgi-bin/services/quecwatch.sh @@ -3,9 +3,6 @@ # QuecWatch Daemon # Monitors cellular connectivity and performs recovery actions -# Load centralized logging -. /www/cgi-bin/services/quecmanager_logger.sh - # Load UCI configuration functions . /lib/functions.sh @@ -20,7 +17,6 @@ RETRY_COUNT_FILE="/tmp/quecwatch_retry_count" UCI_CONFIG="quecmanager" MAX_TOKEN_WAIT=10 # Maximum seconds to wait for token acquisition TOKEN_PRIORITY=15 # Medium priority (between profiles and metrics) -SCRIPT_NAME_LOG="quecwatch" # Ensure directories exist mkdir -p "$LOG_DIR" "$QUEUE_DIR" @@ -29,33 +25,17 @@ mkdir -p "$LOG_DIR" "$QUEUE_DIR" echo "$$" > "$PID_FILE" chmod 644 "$PID_FILE" -# Function to log messages - now uses centralized logging +# Function to log messages log_message() { local level="${2:-info}" local message="$1" local timestamp=$(date "+%Y-%m-%d %H:%M:%S") - # Use centralized logging - case "$level" in - "error") - qm_log_error "service" "$SCRIPT_NAME_LOG" "$message" - ;; - "warn") - qm_log_warn "service" "$SCRIPT_NAME_LOG" "$message" - ;; - "debug") - qm_log_debug "service" "$SCRIPT_NAME_LOG" "$message" - ;; - *) - qm_log_info "service" "$SCRIPT_NAME_LOG" "$message" - ;; - esac - - # Also maintain system logging for compatibility - logger -t quecwatch -p "daemon.$level" "$message" - - # Log to file (maintain existing behavior) + # Log to file echo "[$timestamp] [$level] $message" >> "$LOG_FILE" + + # Log to system log + logger -t quecwatch -p "daemon.$level" "$message" } # Function to update status diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/about/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/about/index.html index 665cc29..98f2232 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/about/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/about/index.html @@ -1 +1 @@ -QuecManager
            \ No newline at end of file +QuecManager
              \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/about/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/about/index.txt index da029db..fdefc67 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/about/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/about/index.txt @@ -12,8 +12,8 @@ e:I[99165,[],"OutletBoundary"] 10:I[99165,[],"MetadataBoundary"] 12:I[99165,[],"ViewportBoundary"] 14:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","about",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["about",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["about",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","about","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$La",null,{"Component":"$b","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@c","$@d"]}],null,["$","$Le",null,{"children":"$Lf"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","UOVMC522hGfSuGuCt-Rly",{"children":[["$","$L10",null,{"children":"$L11"}],["$","$L12",null,{"children":"$L13"}],null]}]]}],false]],"m":"$undefined","G":["$14","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","about",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["about",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["about",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","about","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$La",null,{"Component":"$b","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@c","$@d"]}],null,["$","$Le",null,{"children":"$Lf"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","zkayu8_NnlAXwCGR6Yx7w",{"children":[["$","$L10",null,{"children":"$L11"}],["$","$L12",null,{"children":"$L13"}],null]}]]}],false]],"m":"$undefined","G":["$14","$undefined"],"s":false,"S":true} 9:{} c:{} d:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/at-terminal/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/at-terminal/index.html index 7b1b906..30ff2ea 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/at-terminal/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/at-terminal/index.html @@ -1 +1 @@ -QuecManager
                \ No newline at end of file +QuecManager
                  \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/at-terminal/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/at-terminal/index.txt index 11443b9..8707ca5 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/at-terminal/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/at-terminal/index.txt @@ -13,8 +13,8 @@ d:I[30233,["7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","advanced-settings","at-terminal",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["advanced-settings",{"children":["at-terminal",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["advanced-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["at-terminal",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children","at-terminal","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","KzLFzsRWG8FOMfx88l0uN",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","advanced-settings","at-terminal",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["advanced-settings",{"children":["at-terminal",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["advanced-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["at-terminal",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children","at-terminal","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","iaaWIaFMIeRAXxFKGPINc",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/connectivity/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/connectivity/index.html index 441fb78..0ab63eb 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/connectivity/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/connectivity/index.html @@ -1 +1 @@ -QuecManager
                    \ No newline at end of file +QuecManager
                      \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/connectivity/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/connectivity/index.txt index ad1091d..0253a12 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/connectivity/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/connectivity/index.txt @@ -13,8 +13,8 @@ d:I[76592,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/ch 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","advanced-settings","connectivity",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["advanced-settings",{"children":["connectivity",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["advanced-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["connectivity",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children","connectivity","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","K7_lbd6x110QTtWfeX7a9",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","advanced-settings","connectivity",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["advanced-settings",{"children":["connectivity",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["advanced-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["connectivity",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children","connectivity","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","OskcTBjw4gDPsJbFdyOxm",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/index.html index 561a299..23d3b95 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/index.html @@ -1 +1 @@ -QuecManager
                        \ No newline at end of file +QuecManager
                          \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/index.txt index f07ffdb..af2543a 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/index.txt @@ -12,8 +12,8 @@ d:I[99165,[],"OutletBoundary"] f:I[99165,[],"MetadataBoundary"] 11:I[99165,[],"ViewportBoundary"] 13:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","advanced-settings",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["advanced-settings",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["advanced-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{}],null,["$","$Ld",null,{"children":"$Le"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","Wrujy0ACwQn52Ibatj9eZ",{"children":[["$","$Lf",null,{"children":"$L10"}],["$","$L11",null,{"children":"$L12"}],null]}]]}],false]],"m":"$undefined","G":["$13","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","advanced-settings",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["advanced-settings",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["advanced-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{}],null,["$","$Ld",null,{"children":"$Le"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","00Ye537MTv5nHM4Zehc31",{"children":[["$","$Lf",null,{"children":"$L10"}],["$","$L11",null,{"children":"$L12"}],null]}]]}],false]],"m":"$undefined","G":["$13","$undefined"],"s":false,"S":true} 9:{} b:{} 12:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/mtu/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/mtu/index.html index 17bec56..176e22f 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/mtu/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/mtu/index.html @@ -1 +1 @@ -QuecManager
                            \ No newline at end of file +QuecManager
                              \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/mtu/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/mtu/index.txt index d2d21aa..2001416 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/mtu/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/mtu/index.txt @@ -13,8 +13,8 @@ d:I[34819,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/ch 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","advanced-settings","mtu",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["advanced-settings",{"children":["mtu",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["advanced-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["mtu",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children","mtu","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","huaGhfiFWANNnSk0UGnrG",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","advanced-settings","mtu",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["advanced-settings",{"children":["mtu",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["advanced-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["mtu",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children","mtu","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","S8_ZzkFUpZh-xQkCy5PG7",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/ttl-settings/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/ttl-settings/index.html index cfc3012..4c22c08 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/ttl-settings/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/ttl-settings/index.html @@ -1 +1 @@ -QuecManager
                                \ No newline at end of file +QuecManager
                                  \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/ttl-settings/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/ttl-settings/index.txt index 40f842d..d762327 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/ttl-settings/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/advanced-settings/ttl-settings/index.txt @@ -13,8 +13,8 @@ d:I[83143,["7780","static/chunks/7780-f325b2d7864a75f9.js","1630","static/chunks 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","advanced-settings","ttl-settings",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["advanced-settings",{"children":["ttl-settings",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["advanced-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["ttl-settings",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children","ttl-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","xBcthxygouNrp57-CyvEP",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","advanced-settings","ttl-settings",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["advanced-settings",{"children":["ttl-settings",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["advanced-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["ttl-settings",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","advanced-settings","children","ttl-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","i9sRcZZp-5BYwrI3H0-UP",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/band-locking/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/band-locking/index.html index 507ceeb..77284af 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/band-locking/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/band-locking/index.html @@ -1 +1 @@ -QuecManager
                                    \ No newline at end of file +QuecManager
                                      \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/band-locking/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/band-locking/index.txt index bfd69df..797435e 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/band-locking/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/band-locking/index.txt @@ -13,8 +13,8 @@ d:I[75808,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/ch 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","cell-settings","band-locking",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["band-locking",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["band-locking",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children","band-locking","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","0zbEqGKXwIwLf1QctX1tP",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","cell-settings","band-locking",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["band-locking",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["band-locking",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children","band-locking","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","OZtt_7CL2WRQ62S-pvNGJ",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/basic-settings/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/basic-settings/index.html index 6c7d84e..5405773 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/basic-settings/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/basic-settings/index.html @@ -1 +1 @@ -QuecManager
                                        \ No newline at end of file +QuecManager
                                          \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/basic-settings/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/basic-settings/index.txt index 53a3e4c..c1fa20e 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/basic-settings/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/basic-settings/index.txt @@ -8,13 +8,13 @@ 8:I[63231,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","9477","static/chunks/9477-4478381adb29cdff.js","564","static/chunks/564-bce78b0f1af68d0a.js","2682","static/chunks/2682-7f9e5e2a8bb2f859.js","9873","static/chunks/9873-1f9f7420ad1929d8.js","6223","static/chunks/6223-985db5887dec3c8a.js","1954","static/chunks/app/dashboard/layout-7031c764ad5e7199.js"],"default"] a:I[83593,["9477","static/chunks/9477-4478381adb29cdff.js","347","static/chunks/app/dashboard/cell-settings/layout-3f8340fe1040b17c.js"],"default"] c:I[5329,[],"ClientPageRoot"] -d:I[15469,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3494","static/chunks/3494-d763154adf622bee.js","3048","static/chunks/3048-9766c902a7fac6d2.js","2545","static/chunks/app/dashboard/cell-settings/basic-settings/page-0265c47fc97c235c.js"],"default"] +d:I[15469,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3494","static/chunks/3494-d763154adf622bee.js","3048","static/chunks/3048-9766c902a7fac6d2.js","2545","static/chunks/app/dashboard/cell-settings/basic-settings/page-7d5223318529fc2a.js"],"default"] 10:I[99165,[],"OutletBoundary"] 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","cell-settings","basic-settings",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["basic-settings",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["basic-settings",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children","basic-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","WJ3-m_95DO5BZBldBcQNu",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","cell-settings","basic-settings",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["basic-settings",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["basic-settings",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children","basic-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","AJOnVLbDz7PWGThrDKhwr",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/cell-locking/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/cell-locking/index.html index ad1bcb6..0342ecf 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/cell-locking/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/cell-locking/index.html @@ -1 +1 @@ -QuecManager
                                            \ No newline at end of file +QuecManager
                                              \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/cell-locking/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/cell-locking/index.txt index e641314..f4bbb41 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/cell-locking/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/cell-locking/index.txt @@ -8,13 +8,13 @@ 8:I[63231,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","9477","static/chunks/9477-4478381adb29cdff.js","564","static/chunks/564-bce78b0f1af68d0a.js","2682","static/chunks/2682-7f9e5e2a8bb2f859.js","9873","static/chunks/9873-1f9f7420ad1929d8.js","6223","static/chunks/6223-985db5887dec3c8a.js","1954","static/chunks/app/dashboard/layout-7031c764ad5e7199.js"],"default"] a:I[83593,["9477","static/chunks/9477-4478381adb29cdff.js","347","static/chunks/app/dashboard/cell-settings/layout-3f8340fe1040b17c.js"],"default"] c:I[5329,[],"ClientPageRoot"] -d:I[25621,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3494","static/chunks/3494-d763154adf622bee.js","2487","static/chunks/2487-2291b9526b271231.js","2266","static/chunks/2266-b5acaea1bac39ea4.js","5665","static/chunks/app/dashboard/cell-settings/cell-locking/page-2efaba6b348064d3.js"],"default"] +d:I[25621,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3494","static/chunks/3494-d763154adf622bee.js","2487","static/chunks/2487-2291b9526b271231.js","2266","static/chunks/2266-c3fabb1ea5003f9e.js","5665","static/chunks/app/dashboard/cell-settings/cell-locking/page-2efaba6b348064d3.js"],"default"] 10:I[99165,[],"OutletBoundary"] 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","cell-settings","cell-locking",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["cell-locking",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["cell-locking",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children","cell-locking","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","ase1sgMbSzTc1-a9ePtTb",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","cell-settings","cell-locking",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["cell-locking",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["cell-locking",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children","cell-locking","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","_D-sIOxdcC_dQxQBmPHu0",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/imei-mangling/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/imei-mangling/index.html index b20f517..72c1b5c 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/imei-mangling/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/imei-mangling/index.html @@ -1 +1 @@ -QuecManager
                                                \ No newline at end of file +QuecManager
                                                  \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/imei-mangling/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/imei-mangling/index.txt index 7136d02..9c26930 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/imei-mangling/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/imei-mangling/index.txt @@ -13,8 +13,8 @@ d:I[70231,["7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","cell-settings","imei-mangling",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["imei-mangling",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["imei-mangling",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children","imei-mangling","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","0bgGeHW0AxQLSi87Kwylj",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","cell-settings","imei-mangling",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["imei-mangling",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["imei-mangling",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children","imei-mangling","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","K8Gy479df0c72UB1E9g9B",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/index.html index ef2c14d..dc5f2ba 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/index.html @@ -1 +1 @@ -QuecManager
                                                    \ No newline at end of file +QuecManager
                                                      \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/index.txt index 2b0c4e1..9349f8b 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/index.txt @@ -7,13 +7,13 @@ 7:I[92907,[],"ClientSegmentRoot"] 8:I[63231,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","9477","static/chunks/9477-4478381adb29cdff.js","564","static/chunks/564-bce78b0f1af68d0a.js","2682","static/chunks/2682-7f9e5e2a8bb2f859.js","9873","static/chunks/9873-1f9f7420ad1929d8.js","6223","static/chunks/6223-985db5887dec3c8a.js","1954","static/chunks/app/dashboard/layout-7031c764ad5e7199.js"],"default"] a:I[83593,["9477","static/chunks/9477-4478381adb29cdff.js","347","static/chunks/app/dashboard/cell-settings/layout-3f8340fe1040b17c.js"],"default"] -c:I[25621,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3494","static/chunks/3494-d763154adf622bee.js","2487","static/chunks/2487-2291b9526b271231.js","2266","static/chunks/2266-b5acaea1bac39ea4.js","4808","static/chunks/app/dashboard/cell-settings/page-283fcf1b01289ed9.js"],"default"] +c:I[25621,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3494","static/chunks/3494-d763154adf622bee.js","2487","static/chunks/2487-2291b9526b271231.js","2266","static/chunks/2266-c3fabb1ea5003f9e.js","4808","static/chunks/app/dashboard/cell-settings/page-283fcf1b01289ed9.js"],"default"] d:I[99165,[],"OutletBoundary"] f:I[99165,[],"MetadataBoundary"] 11:I[99165,[],"ViewportBoundary"] 13:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","cell-settings",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{}],null,["$","$Ld",null,{"children":"$Le"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","GGO1NVfqd8rXYrJmO_Xcx",{"children":[["$","$Lf",null,{"children":"$L10"}],["$","$L11",null,{"children":"$L12"}],null]}]]}],false]],"m":"$undefined","G":["$13","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","cell-settings",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{}],null,["$","$Ld",null,{"children":"$Le"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","lfBHkFsHAokJHP14ayOmm",{"children":[["$","$Lf",null,{"children":"$L10"}],["$","$L11",null,{"children":"$L12"}],null]}]]}],false]],"m":"$undefined","G":["$13","$undefined"],"s":false,"S":true} 9:{} b:{} 12:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/sms/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/sms/index.html index 8f57d5a..2ceffa2 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/sms/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/sms/index.html @@ -1 +1 @@ -QuecManager
                                                        \ No newline at end of file +QuecManager
                                                          \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/sms/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/sms/index.txt index 9aa5ea0..f8b3fef 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/sms/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/cell-settings/sms/index.txt @@ -13,8 +13,8 @@ d:I[91557,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","1217","static/ch 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","cell-settings","sms",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["sms",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["sms",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children","sms","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","6XdjuR_fp-EtztaVybSen",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","cell-settings","sms",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["cell-settings",{"children":["sms",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["cell-settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["sms",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","cell-settings","children","sms","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","IzSKtI4ipasfpxHnsguh8",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/cell-scanner/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/cell-scanner/index.html index b95c904..390f3dc 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/cell-scanner/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/cell-scanner/index.html @@ -1 +1 @@ -QuecManager
                                                            \ No newline at end of file +QuecManager
                                                              \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/cell-scanner/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/cell-scanner/index.txt index 57fda54..9da7daf 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/cell-scanner/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/cell-scanner/index.txt @@ -13,8 +13,8 @@ d:I[12005,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","2101","static/ch 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","custom-features","cell-scanner",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["custom-features",{"children":["cell-scanner",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["custom-features",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["cell-scanner",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children","cell-scanner","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","dBc9IsQClFa12OMaf3uE3",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","custom-features","cell-scanner",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["custom-features",{"children":["cell-scanner",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["custom-features",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["cell-scanner",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children","cell-scanner","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","xl9biZOHd-DU_XwcPRzo-",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/frequency-calculator/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/frequency-calculator/index.html index 459c64b..0a4f0e1 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/frequency-calculator/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/frequency-calculator/index.html @@ -1 +1 @@ -QuecManager
                                                                \ No newline at end of file +QuecManager
                                                                  \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/frequency-calculator/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/frequency-calculator/index.txt index 25d28b9..ebef7e7 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/frequency-calculator/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/frequency-calculator/index.txt @@ -13,8 +13,8 @@ d:I[42503,["7780","static/chunks/7780-f325b2d7864a75f9.js","3453","static/chunks 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","custom-features","frequency-calculator",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["custom-features",{"children":["frequency-calculator",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["custom-features",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["frequency-calculator",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children","frequency-calculator","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","dO2OfiuJYT-oNRxinadf8",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","custom-features","frequency-calculator",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["custom-features",{"children":["frequency-calculator",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["custom-features",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["frequency-calculator",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children","frequency-calculator","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","lNITvcV0ufJDMKppWUOz7",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/index.html index e197d63..cb81d68 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/index.html @@ -1 +1 @@ -QuecManager
                                                                    \ No newline at end of file +QuecManager
                                                                      \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/index.txt index a35c608..bed579f 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/index.txt @@ -12,8 +12,8 @@ d:I[99165,[],"OutletBoundary"] f:I[99165,[],"MetadataBoundary"] 11:I[99165,[],"ViewportBoundary"] 13:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","custom-features",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["custom-features",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["custom-features",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{}],null,["$","$Ld",null,{"children":"$Le"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","3bhDKlM2jIIFY0e61u_HA",{"children":[["$","$Lf",null,{"children":"$L10"}],["$","$L11",null,{"children":"$L12"}],null]}]]}],false]],"m":"$undefined","G":["$13","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","custom-features",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["custom-features",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["custom-features",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{}],null,["$","$Ld",null,{"children":"$Le"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","5k4GkTniOkNwoSKsBAxNy",{"children":[["$","$Lf",null,{"children":"$L10"}],["$","$L11",null,{"children":"$L12"}],null]}]]}],false]],"m":"$undefined","G":["$13","$undefined"],"s":false,"S":true} 9:{} b:{} 12:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecprofiles/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecprofiles/index.html index dd5f25a..faae9ac 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecprofiles/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecprofiles/index.html @@ -1 +1 @@ -QuecManager
                                                                        \ No newline at end of file +QuecManager
                                                                          \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecprofiles/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecprofiles/index.txt index 0dda640..29c2592 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecprofiles/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecprofiles/index.txt @@ -13,8 +13,8 @@ d:I[70687,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/ch 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","custom-features","quecprofiles",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["custom-features",{"children":["quecprofiles",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["custom-features",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["quecprofiles",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children","quecprofiles","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","Go5606KyOFutIHaYYFvlv",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","custom-features","quecprofiles",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["custom-features",{"children":["quecprofiles",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["custom-features",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["quecprofiles",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children","quecprofiles","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","BU3lhYFS2ckXKhd7N8aVs",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecwatch/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecwatch/index.html index d0a5f91..6e4dd97 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecwatch/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecwatch/index.html @@ -1 +1 @@ -QuecManager
                                                                            \ No newline at end of file +QuecManager
                                                                              \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecwatch/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecwatch/index.txt index 531ea5c..2d00813 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecwatch/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/custom-features/quecwatch/index.txt @@ -13,8 +13,8 @@ d:I[31917,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/ch 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","custom-features","quecwatch",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["custom-features",{"children":["quecwatch",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["custom-features",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["quecwatch",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children","quecwatch","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","zr7OFN9nyTjlhSgdDYZxs",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","custom-features","quecwatch",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["custom-features",{"children":["quecwatch",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["custom-features",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["quecwatch",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","custom-features","children","quecwatch","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","hU0J-rOd6adexDU56e_6-",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/index.html index d6abe09..3c0faea 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/index.html @@ -1 +1 @@ -QuecManager
                                                                                \ No newline at end of file +QuecManager
                                                                                  \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/index.txt index 170fef0..6b0c723 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/index.txt @@ -12,8 +12,8 @@ d:I[99165,[],"OutletBoundary"] f:I[99165,[],"MetadataBoundary"] 11:I[99165,[],"ViewportBoundary"] 13:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","experimental",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["experimental",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["experimental",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{}],null,["$","$Ld",null,{"children":"$Le"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","v_-pJT0gfMNVZGfOLc6a8",{"children":[["$","$Lf",null,{"children":"$L10"}],["$","$L11",null,{"children":"$L12"}],null]}]]}],false]],"m":"$undefined","G":["$13","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","experimental",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["experimental",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["experimental",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{}],null,["$","$Ld",null,{"children":"$Le"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","YaF7BMfBW0QIceq2J4O_w",{"children":[["$","$Lf",null,{"children":"$L10"}],["$","$L11",null,{"children":"$L12"}],null]}]]}],false]],"m":"$undefined","G":["$13","$undefined"],"s":false,"S":true} 9:{} b:{} 12:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/keep-alive/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/keep-alive/index.html index a7bd0c0..0ee8733 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/keep-alive/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/keep-alive/index.html @@ -1 +1 @@ -QuecManager
                                                                                    \ No newline at end of file +QuecManager
                                                                                      \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/keep-alive/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/keep-alive/index.txt index 9c31f77..4906bea 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/keep-alive/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/keep-alive/index.txt @@ -13,8 +13,8 @@ d:I[4546,["7116","static/chunks/c556396d-fd1d753158c38164.js","7780","static/chu 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","experimental","keep-alive",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["experimental",{"children":["keep-alive",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["experimental",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["keep-alive",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children","keep-alive","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","rezlOvGvG0Wt1sWn5nAzt",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","experimental","keep-alive",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["experimental",{"children":["keep-alive",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["experimental",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["keep-alive",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children","keep-alive","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","bVWQfWd3Nt_FjLVKzVTW-",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/logs/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/logs/index.html index d7e353a..48e641d 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/logs/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/logs/index.html @@ -1 +1 @@ -QuecManager
                                                                                        \ No newline at end of file +QuecManager
                                                                                          \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/logs/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/logs/index.txt index c4f5c5d..7a973d7 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/logs/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/logs/index.txt @@ -8,13 +8,13 @@ 8:I[63231,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","9477","static/chunks/9477-4478381adb29cdff.js","564","static/chunks/564-bce78b0f1af68d0a.js","2682","static/chunks/2682-7f9e5e2a8bb2f859.js","9873","static/chunks/9873-1f9f7420ad1929d8.js","6223","static/chunks/6223-985db5887dec3c8a.js","1954","static/chunks/app/dashboard/layout-7031c764ad5e7199.js"],"default"] a:I[31753,["9477","static/chunks/9477-4478381adb29cdff.js","3075","static/chunks/app/dashboard/experimental/layout-0848225084616b4a.js"],"default"] c:I[5329,[],"ClientPageRoot"] -d:I[89163,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3494","static/chunks/3494-d763154adf622bee.js","9679","static/chunks/9679-02a7013bb86edb7d.js","6738","static/chunks/app/dashboard/experimental/logs/page-aafc009d49918935.js"],"default"] +d:I[89163,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3494","static/chunks/3494-d763154adf622bee.js","9679","static/chunks/9679-02a7013bb86edb7d.js","6738","static/chunks/app/dashboard/experimental/logs/page-c8c025937cf32a28.js"],"default"] 10:I[99165,[],"OutletBoundary"] 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","experimental","logs",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["experimental",{"children":["logs",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["experimental",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["logs",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children","logs","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","6sdx5G8tgigpXiMrMPxhX",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","experimental","logs",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["experimental",{"children":["logs",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["experimental",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["logs",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children","logs","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","LwEhEJvIeFXWgARHNLTiG",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/network-insights/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/network-insights/index.html index 1289166..3a8b0bf 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/network-insights/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/network-insights/index.html @@ -1 +1 @@ -QuecManager
                                                                                            \ No newline at end of file +QuecManager
                                                                                              \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/network-insights/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/network-insights/index.txt index 2146f11..5f2c0d6 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/network-insights/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/network-insights/index.txt @@ -13,8 +13,8 @@ d:I[15118,["7780","static/chunks/7780-f325b2d7864a75f9.js","5118","static/chunks 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","experimental","network-insights",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["experimental",{"children":["network-insights",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["experimental",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["network-insights",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children","network-insights","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","DNVtvN_8OBnJWcbFnuunP",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","experimental","network-insights",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["experimental",{"children":["network-insights",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["experimental",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["network-insights",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children","network-insights","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","_Rygx0OLFoXx_zA9OJIdM",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/scheduled-reboot/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/scheduled-reboot/index.html index 68e650e..6fffc2e 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/scheduled-reboot/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/scheduled-reboot/index.html @@ -1 +1 @@ -QuecManager
                                                                                                \ No newline at end of file +QuecManager
                                                                                                  \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/scheduled-reboot/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/scheduled-reboot/index.txt index 9636cfd..6c67084 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/scheduled-reboot/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/experimental/scheduled-reboot/index.txt @@ -13,8 +13,8 @@ d:I[58674,["7780","static/chunks/7780-f325b2d7864a75f9.js","8704","static/chunks 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","experimental","scheduled-reboot",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["experimental",{"children":["scheduled-reboot",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["experimental",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["scheduled-reboot",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children","scheduled-reboot","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","FphEliy0_bv9NdTMi-_DS",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","experimental","scheduled-reboot",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["experimental",{"children":["scheduled-reboot",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["experimental",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["scheduled-reboot",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","experimental","children","scheduled-reboot","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","N9p297JoFBBEafCcErH4R",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/home/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/home/index.html index eabb710..3dd8e48 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/home/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/home/index.html @@ -1 +1 @@ -QuecManager
                                                                                                    \ No newline at end of file +QuecManager
                                                                                                      \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/home/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/home/index.txt index 122cb92..ccaebc6 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/home/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/home/index.txt @@ -7,13 +7,13 @@ 7:I[92907,[],"ClientSegmentRoot"] 8:I[63231,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","9477","static/chunks/9477-4478381adb29cdff.js","564","static/chunks/564-bce78b0f1af68d0a.js","2682","static/chunks/2682-7f9e5e2a8bb2f859.js","9873","static/chunks/9873-1f9f7420ad1929d8.js","6223","static/chunks/6223-985db5887dec3c8a.js","1954","static/chunks/app/dashboard/layout-7031c764ad5e7199.js"],"default"] a:I[5329,[],"ClientPageRoot"] -b:I[42988,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","9649","static/chunks/47820753-41ce4d8e11c7c32d.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3048","static/chunks/3048-9766c902a7fac6d2.js","1074","static/chunks/1074-d79f1d7c29de56fa.js","3095","static/chunks/3095-9b41897dca47b121.js","1178","static/chunks/1178-c982126217e48d87.js","6665","static/chunks/app/dashboard/home/page-cdad6102877a38b8.js"],"default"] +b:I[42988,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","9649","static/chunks/47820753-41ce4d8e11c7c32d.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3048","static/chunks/3048-9766c902a7fac6d2.js","1074","static/chunks/1074-d79f1d7c29de56fa.js","3095","static/chunks/3095-9b41897dca47b121.js","1178","static/chunks/1178-c982126217e48d87.js","6665","static/chunks/app/dashboard/home/page-2bcf38b61b3bf607.js"],"default"] e:I[99165,[],"OutletBoundary"] 10:I[99165,[],"MetadataBoundary"] 12:I[99165,[],"ViewportBoundary"] 14:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","home",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["home",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["home",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","home","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$La",null,{"Component":"$b","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@c","$@d"]}],null,["$","$Le",null,{"children":"$Lf"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","h2Z5u_-KknTTSVN7uropM",{"children":[["$","$L10",null,{"children":"$L11"}],["$","$L12",null,{"children":"$L13"}],null]}]]}],false]],"m":"$undefined","G":["$14","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","home",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["home",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["home",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","home","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$La",null,{"Component":"$b","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@c","$@d"]}],null,["$","$Le",null,{"children":"$Lf"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","ln0a0k92PdwVDNS1beni8",{"children":[["$","$L10",null,{"children":"$L11"}],["$","$L12",null,{"children":"$L13"}],null]}]]}],false]],"m":"$undefined","G":["$14","$undefined"],"s":false,"S":true} 9:{} c:{} d:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/index.html index bbf3489..207f9e6 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/index.html @@ -1 +1 @@ -QuecManager
                                                                                                        \ No newline at end of file +QuecManager
                                                                                                          \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/index.txt index b92330a..8b9ed2f 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/index.txt @@ -12,8 +12,8 @@ d:I[99165,[],"OutletBoundary"] f:I[99165,[],"MetadataBoundary"] 11:I[99165,[],"ViewportBoundary"] 13:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","settings",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["settings",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{}],null,["$","$Ld",null,{"children":"$Le"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","F5MWvUKyPb36r49IhkNY1",{"children":[["$","$Lf",null,{"children":"$L10"}],["$","$L11",null,{"children":"$L12"}],null]}]]}],false]],"m":"$undefined","G":["$13","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","settings",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["settings",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{}],null,["$","$Ld",null,{"children":"$Le"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","3CKKtEp-Luq20w513Akr9",{"children":[["$","$Lf",null,{"children":"$L10"}],["$","$L11",null,{"children":"$L12"}],null]}]]}],false]],"m":"$undefined","G":["$13","$undefined"],"s":false,"S":true} 9:{} b:{} 12:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/personalization/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/personalization/index.html index 79d5537..2142752 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/personalization/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/personalization/index.html @@ -1 +1 @@ -QuecManager
                                                                                                            \ No newline at end of file +QuecManager
                                                                                                              \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/personalization/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/personalization/index.txt index a9afaca..59faac0 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/personalization/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/personalization/index.txt @@ -8,13 +8,13 @@ 8:I[63231,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","9477","static/chunks/9477-4478381adb29cdff.js","564","static/chunks/564-bce78b0f1af68d0a.js","2682","static/chunks/2682-7f9e5e2a8bb2f859.js","9873","static/chunks/9873-1f9f7420ad1929d8.js","6223","static/chunks/6223-985db5887dec3c8a.js","1954","static/chunks/app/dashboard/layout-7031c764ad5e7199.js"],"default"] a:I[36994,["9477","static/chunks/9477-4478381adb29cdff.js","5680","static/chunks/app/dashboard/settings/layout-3bcd1d2cd2bb9cb9.js"],"default"] c:I[5329,[],"ClientPageRoot"] -d:I[39898,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3494","static/chunks/3494-d763154adf622bee.js","940","static/chunks/940-09f21923885a1d0a.js","2824","static/chunks/app/dashboard/settings/personalization/page-ab9fa733339f0739.js"],"default"] +d:I[39898,["9980","static/chunks/7b0cf0b7-b5dde770929b7ab9.js","7780","static/chunks/7780-f325b2d7864a75f9.js","8885","static/chunks/8885-ae45735eaa57e8dd.js","3746","static/chunks/3746-654c7d406af2e140.js","9464","static/chunks/9464-54895f8e78c474f0.js","3494","static/chunks/3494-d763154adf622bee.js","940","static/chunks/940-09f21923885a1d0a.js","2824","static/chunks/app/dashboard/settings/personalization/page-066673f9996cf1d2.js"],"default"] 10:I[99165,[],"OutletBoundary"] 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","settings","personalization",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["settings",{"children":["personalization",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["personalization",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","settings","children","personalization","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","hjeAVt5sUyVFeXjlhkFXD",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","settings","personalization",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["settings",{"children":["personalization",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["personalization",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","settings","children","personalization","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","poDhD8oVj_FnGxrUC8DDC",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/security/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/security/index.html index 5137e92..2adf682 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/security/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/security/index.html @@ -1 +1 @@ -QuecManager
                                                                                                                \ No newline at end of file +QuecManager
                                                                                                                  \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/security/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/security/index.txt index 2396c9a..b4dc2dc 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/security/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/dashboard/settings/security/index.txt @@ -13,8 +13,8 @@ d:I[16212,["7780","static/chunks/7780-f325b2d7864a75f9.js","2162","static/chunks 12:I[99165,[],"MetadataBoundary"] 14:I[99165,[],"ViewportBoundary"] 16:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","dashboard","settings","security",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["settings",{"children":["security",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["security",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","settings","children","security","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","vuKOzSOLtH_iIAQl2F2_c",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","dashboard","settings","security",""],"i":false,"f":[[["",{"children":["dashboard",{"children":["settings",{"children":["security",{"children":["__PAGE__",{}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["dashboard",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$8","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":{},"promise":"$@9"}]]}],{"children":["settings",["$","$1","c",{"children":[null,["$","$L7",null,{"Component":"$a","slots":{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","settings","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promise":"$@b"}]]}],{"children":["security",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","dashboard","children","settings","children","security","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$Lc",null,{"Component":"$d","searchParams":{},"params":"$0:f:0:1:2:children:1:props:children:1:props:params","promises":["$@e","$@f"]}],null,["$","$L10",null,{"children":"$L11"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","e4NgTF3zHzRlAqltm0gsP",{"children":[["$","$L12",null,{"children":"$L13"}],["$","$L14",null,{"children":"$L15"}],null]}]]}],false]],"m":"$undefined","G":["$16","$undefined"],"s":false,"S":true} 9:{} b:{} e:{} diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/index.txt index 71172a7..d2fc59f 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/index.txt @@ -9,8 +9,8 @@ a:I[99165,[],"MetadataBoundary"] c:I[99165,[],"ViewportBoundary"] e:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["",""],"i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","div",null,{"className":"grid grid-rows-[20px_1fr_20px] items-center justify-items-center min-h-screen p-8 pb-20 gap-16 sm:p-20","children":["$","main",null,{"className":"flex flex-col gap-8 row-start-2 items-center sm:items-start","children":["$","$L7",null,{}]}]}],null,["$","$L8",null,{"children":"$L9"}]]}],{},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","PNOQIXN3UqcrNL6KaX1U5",{"children":[["$","$La",null,{"children":"$Lb"}],["$","$Lc",null,{"children":"$Ld"}],null]}]]}],false]],"m":"$undefined","G":["$e","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["",""],"i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","div",null,{"className":"grid grid-rows-[20px_1fr_20px] items-center justify-items-center min-h-screen p-8 pb-20 gap-16 sm:p-20","children":["$","main",null,{"className":"flex flex-col gap-8 row-start-2 items-center sm:items-start","children":["$","$L7",null,{}]}]}],null,["$","$L8",null,{"children":"$L9"}]]}],{},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","1mjDnJl7KVTN5wzQe9-31",{"children":[["$","$La",null,{"children":"$Lb"}],["$","$Lc",null,{"children":"$Ld"}],null]}]]}],false]],"m":"$undefined","G":["$e","$undefined"],"s":false,"S":true} d:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] b:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"QuecManager"}],["$","meta","2",{"name":"description","content":"Simpleadmin but better!"}],["$","link","3",{"rel":"icon","href":"/favicon.ico","type":"image/x-icon","sizes":"16x16"}]] 9:null diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/privacy/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/privacy/index.html index 09ee1a2..8eef846 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/privacy/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/privacy/index.html @@ -1 +1 @@ -QuecManager

                                                                                                                  QuecManager Privacy Policy

                                                                                                                  Your privacy is important to us. This Privacy Policy explains how QuecManager handles your information when you use our cellular modem management software.

                                                                                                                  1. Privacy Overview

                                                                                                                  QuecManager is designed with privacy as a core principle. As a local network management tool for Quectel cellular modems and routers, QuecManager operates primarily on your local network and devices, minimizing data collection and external communications.

                                                                                                                  Key Privacy Principles:

                                                                                                                  • Local-first processing - your data stays on your network
                                                                                                                  • Minimal data collection - we only collect what's necessary
                                                                                                                  • No remote tracking - no analytics sent to external servers
                                                                                                                  • User control - you decide what data to share and when
                                                                                                                  • Transparency - clear information about any data handling

                                                                                                                  2. Third-Party Disclaimer

                                                                                                                  Important Notice: QuecManager is an independent, third-party software application and is not affiliated with, endorsed by, or sponsored by Quectel Wireless Solutions Co., Ltd. or any of its subsidiaries or affiliates. This privacy policy applies solely to QuecManager and not to Quectel's own services or products.

                                                                                                                  2.1 Independent Privacy Practices: This privacy policy governs only how QuecManager handles your information. Quectel has its own privacy policies and data handling practices that are separate from ours.

                                                                                                                  2.2 Device Data Interaction: While QuecManager interacts with Quectel devices to provide management functionality, we do not share your data with Quectel, and Quectel does not have access to information processed by QuecManager unless you separately share it with them.

                                                                                                                  2.3 Support and Responsibility: Quectel is not responsible for QuecManager's privacy practices or data handling. All privacy-related inquiries about QuecManager should be directed to the QuecManager development team.

                                                                                                                  3. Information We Collect

                                                                                                                  3.1 Device Configuration Data (Local Only)

                                                                                                                  QuecManager accesses and displays information from your cellular modems and routers to provide management functionality. This includes:

                                                                                                                  • Device model, firmware version, and hardware identifiers
                                                                                                                  • Network configuration settings (APN, carrier settings, IP addresses)
                                                                                                                  • Signal strength, connection status, and performance metrics
                                                                                                                  • Data usage statistics and connection logs
                                                                                                                  • Device temperature, memory usage, and system status
                                                                                                                  • Custom configuration profiles and user-defined settings

                                                                                                                  Important: This data is processed locally on your network and is not transmitted to external servers unless you explicitly enable specific features that require it.

                                                                                                                  3.2 User-Provided Information

                                                                                                                  Information you voluntarily provide when using QuecManager:

                                                                                                                  • Custom device names and labels
                                                                                                                  • Network configuration preferences
                                                                                                                  • User profiles and access credentials (stored locally)
                                                                                                                  • Custom scripts and automation rules
                                                                                                                  • Backup and export data

                                                                                                                  4. How We Use Your Information

                                                                                                                  4.1 Primary Functions

                                                                                                                  • Device Management: Display and configure your cellular modem settings
                                                                                                                  • Network Monitoring: Show real-time connection status and performance data
                                                                                                                  • Troubleshooting: Provide diagnostic tools and error analysis
                                                                                                                  • Performance Optimization: Help optimize your network configuration

                                                                                                                  We Do NOT Use Your Information For:

                                                                                                                  • Advertising or marketing purposes
                                                                                                                  • Selling or sharing with third parties
                                                                                                                  • Creating user profiles for commercial purposes
                                                                                                                  • Tracking your internet usage or browsing habits
                                                                                                                  • Monitoring your cellular data consumption for business intelligence

                                                                                                                  5. Data Storage and Security

                                                                                                                  5.1 Local Storage

                                                                                                                  The majority of your data is stored locally on your devices and network:

                                                                                                                  • Browser Storage: Application settings and preferences in local browser storage
                                                                                                                  • Device Memory: Configuration data stored on your cellular modems and routers
                                                                                                                  • Local Database: Historical data and logs stored on your local network
                                                                                                                  • Configuration Files: Backup files and profiles stored locally

                                                                                                                  5.2 Security Measures

                                                                                                                  Technical Security

                                                                                                                  • Secure authentication protocols
                                                                                                                  • Input validation and sanitization
                                                                                                                  • Regular security updates

                                                                                                                  Access Control

                                                                                                                  • User authentication requirements
                                                                                                                  • Role-based access permissions
                                                                                                                  • Session management and timeouts
                                                                                                                  • Device-level security integration

                                                                                                                  5.3 Data Retention

                                                                                                                  • Local Data: Retained until you delete it or uninstall QuecManager
                                                                                                                  • Error Logs: Crash reports retained for up to 6 months for debugging

                                                                                                                  6. Information Sharing and Disclosure

                                                                                                                  We Do Not Sell, Rent, or Share Your Personal Information

                                                                                                                  QuecManager does not sell, rent, lease, or otherwise provide your personal information or device data to third parties for commercial purposes.

                                                                                                                  6.1 Limited Sharing Scenarios

                                                                                                                  We may share information only in these specific circumstances:

                                                                                                                  • With Your Consent: When you explicitly authorize sharing with specific services
                                                                                                                  • Service Providers: Anonymous data with trusted partners who help improve the software
                                                                                                                  • Legal Requirements: When required by law, regulation, or court order
                                                                                                                  • Security Incidents: To protect against fraud, abuse, or security threats
                                                                                                                  • Business Transfers: In the event of a merger, acquisition, or asset sale

                                                                                                                  6.2 Third-Party Integrations

                                                                                                                  QuecManager may offer optional integrations with third-party services:

                                                                                                                  • Optional secure VPN services (such as Tailscale) that you explicitly configure and authorize, with all data remaining encrypted and under your control
                                                                                                                  • Device manufacturer update services (for firmware updates)

                                                                                                                  Your Control: All third-party integrations are optional and require your explicit consent.

                                                                                                                  7. Your Privacy Rights and Choices

                                                                                                                  7.1 Access and Control

                                                                                                                  You have the right to:

                                                                                                                  • Access Your Data: View all information stored by QuecManager
                                                                                                                  • Modify Settings: Change configuration and privacy preferences
                                                                                                                  • Export Data: Download your device configurations and settings
                                                                                                                  • Delete Data: Remove stored information and user profiles
                                                                                                                  • Disable Analytics: Turn off usage data collection
                                                                                                                  • Opt-out: Decline optional data sharing and integrations

                                                                                                                  7.2 Account Deletion

                                                                                                                  To completely remove your data:

                                                                                                                  1. Access your device's administration interface (LuCI)
                                                                                                                  2. Go to "System" → "Software" in the navigation menu
                                                                                                                  3. Locate and uninstall the QuecManager package
                                                                                                                  4. Clear all stored data:
                                                                                                                    • Clear browser cache and local storage
                                                                                                                    • Delete any saved configurations
                                                                                                                    • Remove custom settings and profiles
                                                                                                                  5. Optional: Perform a factory reset on your device for complete data removal
                                                                                                                  6. Contact support if you need confirmation of data deletion

                                                                                                                  8. Children's Privacy

                                                                                                                  QuecManager is designed for professional and technical use in managing cellular network equipment. Our service is not intended for children under the age of 13, and we do not knowingly collect personal information from children under 13.

                                                                                                                  For users between 13 and 18 years of age, we recommend parental guidance when using QuecManager, as it involves managing network equipment that may affect internet connectivity and data usage.

                                                                                                                  9. International Data Transfers

                                                                                                                  QuecManager is designed to operate locally on your network, minimizing international data transfers. However, in limited circumstances, data may be transferred internationally:

                                                                                                                  • Software Updates: Update checks and downloads from our servers

                                                                                                                  When international transfers occur, we ensure appropriate safeguards are in place to protect your information in accordance with applicable data protection laws, including GDPR, CCPA, and other regional privacy regulations.

                                                                                                                  10. Changes to This Privacy Policy

                                                                                                                  We may update this Privacy Policy from time to time to reflect changes in our practices, technology, or legal requirements. When we make changes:

                                                                                                                  • We will update the "Last Updated" date at the top of this policy
                                                                                                                  • Significant changes will be highlighted in the application
                                                                                                                  • We may provide additional notice through the software interface
                                                                                                                  • Continued use of QuecManager after changes constitutes acceptance

                                                                                                                  We encourage you to review this Privacy Policy periodically to stay informed about how we protect your information.

                                                                                                                  11. Contact Us

                                                                                                                  If you have questions, concerns, or requests regarding this Privacy Policy or how we handle your information, please contact us through:

                                                                                                                  General Inquiries

                                                                                                                  • GitHub repository issues and discussions
                                                                                                                  • Official documentation and FAQ
                                                                                                                  • Community forums and support channels

                                                                                                                  Privacy-Specific Requests

                                                                                                                  • Privacy concerns and questions
                                                                                                                  • GDPR and CCPA related inquiries
                                                                                                                  QuecManager Logo

                                                                                                                  QuecManager Privacy Policy - Version 1.0

                                                                                                                  Last Updated: August 18, 2025

                                                                                                                  This Privacy Policy describes how QuecManager handles your information. By using our software, you acknowledge that you have read and understood this policy. We are committed to protecting your privacy and providing transparent information about our data practices.

                                                                                                                    \ No newline at end of file +QuecManager

                                                                                                                    QuecManager Privacy Policy

                                                                                                                    Your privacy is important to us. This Privacy Policy explains how QuecManager handles your information when you use our cellular modem management software.

                                                                                                                    1. Privacy Overview

                                                                                                                    QuecManager is designed with privacy as a core principle. As a local network management tool for Quectel cellular modems and routers, QuecManager operates primarily on your local network and devices, minimizing data collection and external communications.

                                                                                                                    Key Privacy Principles:

                                                                                                                    • Local-first processing - your data stays on your network
                                                                                                                    • Minimal data collection - we only collect what's necessary
                                                                                                                    • No remote tracking - no analytics sent to external servers
                                                                                                                    • User control - you decide what data to share and when
                                                                                                                    • Transparency - clear information about any data handling

                                                                                                                    2. Third-Party Disclaimer

                                                                                                                    Important Notice: QuecManager is an independent, third-party software application and is not affiliated with, endorsed by, or sponsored by Quectel Wireless Solutions Co., Ltd. or any of its subsidiaries or affiliates. This privacy policy applies solely to QuecManager and not to Quectel's own services or products.

                                                                                                                    2.1 Independent Privacy Practices: This privacy policy governs only how QuecManager handles your information. Quectel has its own privacy policies and data handling practices that are separate from ours.

                                                                                                                    2.2 Device Data Interaction: While QuecManager interacts with Quectel devices to provide management functionality, we do not share your data with Quectel, and Quectel does not have access to information processed by QuecManager unless you separately share it with them.

                                                                                                                    2.3 Support and Responsibility: Quectel is not responsible for QuecManager's privacy practices or data handling. All privacy-related inquiries about QuecManager should be directed to the QuecManager development team.

                                                                                                                    3. Information We Collect

                                                                                                                    3.1 Device Configuration Data (Local Only)

                                                                                                                    QuecManager accesses and displays information from your cellular modems and routers to provide management functionality. This includes:

                                                                                                                    • Device model, firmware version, and hardware identifiers
                                                                                                                    • Network configuration settings (APN, carrier settings, IP addresses)
                                                                                                                    • Signal strength, connection status, and performance metrics
                                                                                                                    • Data usage statistics and connection logs
                                                                                                                    • Device temperature, memory usage, and system status
                                                                                                                    • Custom configuration profiles and user-defined settings

                                                                                                                    Important: This data is processed locally on your network and is not transmitted to external servers unless you explicitly enable specific features that require it.

                                                                                                                    3.2 User-Provided Information

                                                                                                                    Information you voluntarily provide when using QuecManager:

                                                                                                                    • Custom device names and labels
                                                                                                                    • Network configuration preferences
                                                                                                                    • User profiles and access credentials (stored locally)
                                                                                                                    • Custom scripts and automation rules
                                                                                                                    • Backup and export data

                                                                                                                    4. How We Use Your Information

                                                                                                                    4.1 Primary Functions

                                                                                                                    • Device Management: Display and configure your cellular modem settings
                                                                                                                    • Network Monitoring: Show real-time connection status and performance data
                                                                                                                    • Troubleshooting: Provide diagnostic tools and error analysis
                                                                                                                    • Performance Optimization: Help optimize your network configuration

                                                                                                                    We Do NOT Use Your Information For:

                                                                                                                    • Advertising or marketing purposes
                                                                                                                    • Selling or sharing with third parties
                                                                                                                    • Creating user profiles for commercial purposes
                                                                                                                    • Tracking your internet usage or browsing habits
                                                                                                                    • Monitoring your cellular data consumption for business intelligence

                                                                                                                    5. Data Storage and Security

                                                                                                                    5.1 Local Storage

                                                                                                                    The majority of your data is stored locally on your devices and network:

                                                                                                                    • Browser Storage: Application settings and preferences in local browser storage
                                                                                                                    • Device Memory: Configuration data stored on your cellular modems and routers
                                                                                                                    • Local Database: Historical data and logs stored on your local network
                                                                                                                    • Configuration Files: Backup files and profiles stored locally

                                                                                                                    5.2 Security Measures

                                                                                                                    Technical Security

                                                                                                                    • Secure authentication protocols
                                                                                                                    • Input validation and sanitization
                                                                                                                    • Regular security updates

                                                                                                                    Access Control

                                                                                                                    • User authentication requirements
                                                                                                                    • Role-based access permissions
                                                                                                                    • Session management and timeouts
                                                                                                                    • Device-level security integration

                                                                                                                    5.3 Data Retention

                                                                                                                    • Local Data: Retained until you delete it or uninstall QuecManager
                                                                                                                    • Error Logs: Crash reports retained for up to 6 months for debugging

                                                                                                                    6. Information Sharing and Disclosure

                                                                                                                    We Do Not Sell, Rent, or Share Your Personal Information

                                                                                                                    QuecManager does not sell, rent, lease, or otherwise provide your personal information or device data to third parties for commercial purposes.

                                                                                                                    6.1 Limited Sharing Scenarios

                                                                                                                    We may share information only in these specific circumstances:

                                                                                                                    • With Your Consent: When you explicitly authorize sharing with specific services
                                                                                                                    • Service Providers: Anonymous data with trusted partners who help improve the software
                                                                                                                    • Legal Requirements: When required by law, regulation, or court order
                                                                                                                    • Security Incidents: To protect against fraud, abuse, or security threats
                                                                                                                    • Business Transfers: In the event of a merger, acquisition, or asset sale

                                                                                                                    6.2 Third-Party Integrations

                                                                                                                    QuecManager may offer optional integrations with third-party services:

                                                                                                                    • Optional secure VPN services (such as Tailscale) that you explicitly configure and authorize, with all data remaining encrypted and under your control
                                                                                                                    • Device manufacturer update services (for firmware updates)

                                                                                                                    Your Control: All third-party integrations are optional and require your explicit consent.

                                                                                                                    7. Your Privacy Rights and Choices

                                                                                                                    7.1 Access and Control

                                                                                                                    You have the right to:

                                                                                                                    • Access Your Data: View all information stored by QuecManager
                                                                                                                    • Modify Settings: Change configuration and privacy preferences
                                                                                                                    • Export Data: Download your device configurations and settings
                                                                                                                    • Delete Data: Remove stored information and user profiles
                                                                                                                    • Disable Analytics: Turn off usage data collection
                                                                                                                    • Opt-out: Decline optional data sharing and integrations

                                                                                                                    7.2 Account Deletion

                                                                                                                    To completely remove your data:

                                                                                                                    1. Access your device's administration interface (LuCI)
                                                                                                                    2. Go to "System" → "Software" in the navigation menu
                                                                                                                    3. Locate and uninstall the QuecManager package
                                                                                                                    4. Clear all stored data:
                                                                                                                      • Clear browser cache and local storage
                                                                                                                      • Delete any saved configurations
                                                                                                                      • Remove custom settings and profiles
                                                                                                                    5. Optional: Perform a factory reset on your device for complete data removal
                                                                                                                    6. Contact support if you need confirmation of data deletion

                                                                                                                    8. Children's Privacy

                                                                                                                    QuecManager is designed for professional and technical use in managing cellular network equipment. Our service is not intended for children under the age of 13, and we do not knowingly collect personal information from children under 13.

                                                                                                                    For users between 13 and 18 years of age, we recommend parental guidance when using QuecManager, as it involves managing network equipment that may affect internet connectivity and data usage.

                                                                                                                    9. International Data Transfers

                                                                                                                    QuecManager is designed to operate locally on your network, minimizing international data transfers. However, in limited circumstances, data may be transferred internationally:

                                                                                                                    • Software Updates: Update checks and downloads from our servers

                                                                                                                    When international transfers occur, we ensure appropriate safeguards are in place to protect your information in accordance with applicable data protection laws, including GDPR, CCPA, and other regional privacy regulations.

                                                                                                                    10. Changes to This Privacy Policy

                                                                                                                    We may update this Privacy Policy from time to time to reflect changes in our practices, technology, or legal requirements. When we make changes:

                                                                                                                    • We will update the "Last Updated" date at the top of this policy
                                                                                                                    • Significant changes will be highlighted in the application
                                                                                                                    • We may provide additional notice through the software interface
                                                                                                                    • Continued use of QuecManager after changes constitutes acceptance

                                                                                                                    We encourage you to review this Privacy Policy periodically to stay informed about how we protect your information.

                                                                                                                    11. Contact Us

                                                                                                                    If you have questions, concerns, or requests regarding this Privacy Policy or how we handle your information, please contact us through:

                                                                                                                    General Inquiries

                                                                                                                    • GitHub repository issues and discussions
                                                                                                                    • Official documentation and FAQ
                                                                                                                    • Community forums and support channels

                                                                                                                    Privacy-Specific Requests

                                                                                                                    • Privacy concerns and questions
                                                                                                                    • GDPR and CCPA related inquiries
                                                                                                                    QuecManager Logo

                                                                                                                    QuecManager Privacy Policy - Version 1.0

                                                                                                                    Last Updated: August 18, 2025

                                                                                                                    This Privacy Policy describes how QuecManager handles your information. By using our software, you acknowledge that you have read and understood this policy. We are committed to protecting your privacy and providing transparent information about our data practices.

                                                                                                                      \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/privacy/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/privacy/index.txt index c0d05a9..c4d47d3 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/privacy/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/privacy/index.txt @@ -10,8 +10,8 @@ b:I[99165,[],"MetadataBoundary"] d:I[99165,[],"ViewportBoundary"] f:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","legal","privacy",""],"i":false,"f":[[["",{"children":["legal",{"children":["privacy",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["legal",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","legal","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["privacy",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","legal","children","privacy","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","div",null,{"className":"max-w-4xl mx-auto p-6 space-y-6","children":["$","div",null,{"ref":"$undefined","className":"rounded-xl border bg-card text-card-foreground shadow","children":[["$","div",null,{"ref":"$undefined","className":"flex flex-col space-y-1.5 p-6 text-center","children":[["$","div",null,{"className":"flex justify-center mb-4","children":["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-shield h-12 w-12 text-blue-600 dark:text-blue-400","children":[["$","path","oel41y",{"d":"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],"$undefined"]}]}],["$","h3",null,{"ref":"$undefined","className":"tracking-tight text-3xl font-bold text-gray-900 dark:text-gray-100","children":"QuecManager Privacy Policy"}],["$","div",null,{"className":"flex justify-center items-center gap-4 mt-4","children":["$","$L7",null,{"href":"/login","children":["$","button",null,{"className":"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 text-primary underline-offset-4 hover:underline h-9 px-4 py-2","ref":"$undefined","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-arrow-left size-4","children":[["$","path","1l729n",{"d":"m12 19-7-7 7-7"}],["$","path","x3x0zl",{"d":"M19 12H5"}],"$undefined"]}],"Go Back"]}]}]}],["$","p",null,{"className":"text-gray-600 dark:text-gray-400 mt-4 max-w-2xl mx-auto","children":"Your privacy is important to us. This Privacy Policy explains how QuecManager handles your information when you use our cellular modem management software."}]]}],["$","div",null,{"ref":"$undefined","className":"p-6 pt-0 space-y-8","children":[["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-eye h-6 w-6 text-blue-600 dark:text-blue-400","children":[["$","path","1nclc0",{"d":"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}],["$","circle","1v7zrd",{"cx":"12","cy":"12","r":"3"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"1. Privacy Overview"}]]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"className":"leading-relaxed","children":"QuecManager is designed with privacy as a core principle. As a local network management tool for Quectel cellular modems and routers, QuecManager operates primarily on your local network and devices, minimizing data collection and external communications."}],["$","div",null,{"className":"bg-green-50 dark:bg-green-900/20 border border-green-200 dark:border-green-800 rounded-lg p-4","children":[["$","h3",null,{"className":"font-semibold text-green-800 dark:text-green-200 mb-2","children":"Key Privacy Principles:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-green-700 dark:text-green-300","children":[["$","li",null,{"children":"Local-first processing - your data stays on your network"}],["$","li",null,{"children":"Minimal data collection - we only collect what's necessary"}],["$","li",null,{"children":"No remote tracking - no analytics sent to external servers"}],["$","li",null,{"children":"User control - you decide what data to share and when"}],["$","li",null,{"children":"Transparency - clear information about any data handling"}]]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-triangle-alert h-6 w-6 text-orange-600 dark:text-orange-400","children":[["$","path","wmoenq",{"d":"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"}],["$","path","juzpu7",{"d":"M12 9v4"}],["$","path","p32p05",{"d":"M12 17h.01"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"2. Third-Party Disclaimer"}]]}],["$","div",null,{"className":"bg-yellow-50 dark:bg-yellow-900/20 border border-yellow-200 dark:border-yellow-800 rounded-lg p-4 mb-4","children":["$","p",null,{"className":"text-gray-700 dark:text-gray-300 leading-relaxed","children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"Important Notice:"}]," ","QuecManager is an independent, third-party software application and is ",["$","strong",null,{"children":"not affiliated with, endorsed by, or sponsored by Quectel Wireless Solutions Co., Ltd."}]," or any of its subsidiaries or affiliates. This privacy policy applies solely to QuecManager and not to Quectel's own services or products."]}]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"2.1 Independent Privacy Practices:"}]," ","This privacy policy governs only how QuecManager handles your information. Quectel has its own privacy policies and data handling practices that are separate from ours."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"2.2 Device Data Interaction:"}]," ","While QuecManager interacts with Quectel devices to provide management functionality, we do not share your data with Quectel, and Quectel does not have access to information processed by QuecManager unless you separately share it with them."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"2.3 Support and Responsibility:"}]," ","Quectel is not responsible for QuecManager's privacy practices or data handling. All privacy-related inquiries about QuecManager should be directed to the QuecManager development team."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-database h-6 w-6 text-purple-600 dark:text-purple-400","children":[["$","ellipse","msslwz",{"cx":"12","cy":"5","rx":"9","ry":"3"}],["$","path","1wlel7",{"d":"M3 5V19A9 3 0 0 0 21 19V5"}],["$","path","mv7ke4",{"d":"M3 12A9 3 0 0 0 21 12"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"3. Information We Collect"}]]}],["$","div",null,{"className":"space-y-6 text-gray-700 dark:text-gray-300","children":[["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"3.1 Device Configuration Data (Local Only)"}],["$","p",null,{"className":"mb-3","children":"QuecManager accesses and displays information from your cellular modems and routers to provide management functionality. This includes:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"Device model, firmware version, and hardware identifiers"}],["$","li",null,{"children":"Network configuration settings (APN, carrier settings, IP addresses)"}],["$","li",null,{"children":"Signal strength, connection status, and performance metrics"}],["$","li",null,{"children":"Data usage statistics and connection logs"}],["$","li",null,{"children":"Device temperature, memory usage, and system status"}],["$","li",null,{"children":"Custom configuration profiles and user-defined settings"}]]}],["$","div",null,{"className":"mt-3 p-3 bg-blue-50 dark:bg-blue-900/20 border border-blue-200 dark:border-blue-800 rounded","children":["$","p",null,{"className":"text-blue-800 dark:text-blue-200 text-sm","children":[["$","strong",null,{"children":"Important:"}]," This data is processed locally on your network and is not transmitted to external servers unless you explicitly enable specific features that require it."]}]}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"3.2 User-Provided Information"}],["$","p",null,{"className":"mb-3","children":"Information you voluntarily provide when using QuecManager:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"Custom device names and labels"}],["$","li",null,{"children":"Network configuration preferences"}],["$","li",null,{"children":"User profiles and access credentials (stored locally)"}],["$","li",null,{"children":"Custom scripts and automation rules"}],["$","li",null,{"children":"Backup and export data"}]]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-globe h-6 w-6 text-green-600 dark:text-green-400","children":[["$","circle","1mglay",{"cx":"12","cy":"12","r":"10"}],["$","path","13o1zl",{"d":"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"}],["$","path","9i4pu4",{"d":"M2 12h20"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"4. How We Use Your Information"}]]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"4.1 Primary Functions"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":[["$","strong",null,{"children":"Device Management:"}]," Display and configure your cellular modem settings"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Network Monitoring:"}]," Show real-time connection status and performance data"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Troubleshooting:"}]," Provide diagnostic tools and error analysis"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Performance Optimization:"}]," Help optimize your network configuration"]}]]}]]}],["$","div",null,{"className":"bg-gray-50 dark:bg-gray-800/50 border border-gray-200 dark:border-gray-700 rounded-lg p-4","children":[["$","h3",null,{"className":"font-semibold text-gray-800 dark:text-gray-200 mb-2","children":"We Do NOT Use Your Information For:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-gray-600 dark:text-gray-400","children":[["$","li",null,{"children":"Advertising or marketing purposes"}],["$","li",null,{"children":"Selling or sharing with third parties"}],["$","li",null,{"children":"Creating user profiles for commercial purposes"}],["$","li",null,{"children":"Tracking your internet usage or browsing habits"}],["$","li",null,{"children":"Monitoring your cellular data consumption for business intelligence"}]]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-lock h-6 w-6 text-red-600 dark:text-red-400","children":[["$","rect","1w4ew1",{"width":"18","height":"11","x":"3","y":"11","rx":"2","ry":"2"}],["$","path","fwvmzm",{"d":"M7 11V7a5 5 0 0 1 10 0v4"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"5. Data Storage and Security"}]]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"5.1 Local Storage"}],["$","p",null,{"className":"mb-3","children":"The majority of your data is stored locally on your devices and network:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":[["$","strong",null,{"children":"Browser Storage:"}]," Application settings and preferences in local browser storage"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Device Memory:"}]," Configuration data stored on your cellular modems and routers"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Local Database:"}]," Historical data and logs stored on your local network"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Configuration Files:"}]," Backup files and profiles stored locally"]}]]}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"5.2 Security Measures"}],["$","div",null,{"className":"grid md:grid-cols-2 gap-4","children":[["$","div",null,{"className":"border border-gray-200 dark:border-gray-700 rounded-lg p-4","children":[["$","h4",null,{"className":"font-semibold text-gray-800 dark:text-gray-200 mb-2","children":"Technical Security"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-sm","children":[["$","li",null,{"children":"Secure authentication protocols"}],["$","li",null,{"children":"Input validation and sanitization"}],["$","li",null,{"children":"Regular security updates"}]]}]]}],["$","div",null,{"className":"border border-gray-200 dark:border-gray-700 rounded-lg p-4","children":[["$","h4",null,{"className":"font-semibold text-gray-800 dark:text-gray-200 mb-2","children":"Access Control"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-sm","children":[["$","li",null,{"children":"User authentication requirements"}],["$","li",null,{"children":"Role-based access permissions"}],["$","li",null,{"children":"Session management and timeouts"}],["$","li",null,{"children":"Device-level security integration"}]]}]]}]]}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"5.3 Data Retention"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":[["$","strong",null,{"children":"Local Data:"}]," Retained until you delete it or uninstall QuecManager"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Error Logs:"}]," Crash reports retained for up to 6 months for debugging"]}]]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-triangle-alert h-6 w-6 text-orange-600 dark:text-orange-400","children":[["$","path","wmoenq",{"d":"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"}],["$","path","juzpu7",{"d":"M12 9v4"}],["$","path","p32p05",{"d":"M12 17h.01"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"6. Information Sharing and Disclosure"}]]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","div",null,{"className":"bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-lg p-4","children":[["$","h3",null,{"className":"font-semibold text-red-800 dark:text-red-200 mb-2","children":"We Do Not Sell, Rent, or Share Your Personal Information"}],["$","p",null,{"className":"text-red-700 dark:text-red-300","children":"QuecManager does not sell, rent, lease, or otherwise provide your personal information or device data to third parties for commercial purposes."}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"6.1 Limited Sharing Scenarios"}],["$","p",null,{"className":"mb-3","children":"We may share information only in these specific circumstances:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":[["$","strong",null,{"children":"With Your Consent:"}]," When you explicitly authorize sharing with specific services"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Service Providers:"}]," Anonymous data with trusted partners who help improve the software"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Legal Requirements:"}]," When required by law, regulation, or court order"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Security Incidents:"}]," To protect against fraud, abuse, or security threats"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Business Transfers:"}]," In the event of a merger, acquisition, or asset sale"]}]]}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"6.2 Third-Party Integrations"}],["$","p",null,{"className":"mb-3","children":"QuecManager may offer optional integrations with third-party services:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"Optional secure VPN services (such as Tailscale) that you explicitly configure and authorize, with all data remaining encrypted and under your control"}],["$","li",null,{"children":"Device manufacturer update services (for firmware updates)"}]]}],["$","div",null,{"className":"mt-3 p-3 bg-blue-50 dark:bg-blue-900/20 border border-blue-200 dark:border-blue-800 rounded","children":["$","p",null,{"className":"text-blue-800 dark:text-blue-200 text-sm","children":[["$","strong",null,{"children":"Your Control:"}]," All third-party integrations are optional and require your explicit consent."]}]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"7. Your Privacy Rights and Choices"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"7.1 Access and Control"}],["$","p",null,{"className":"mb-3","children":"You have the right to:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":[["$","strong",null,{"children":"Access Your Data:"}]," View all information stored by QuecManager"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Modify Settings:"}]," Change configuration and privacy preferences"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Export Data:"}]," Download your device configurations and settings"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Delete Data:"}]," Remove stored information and user profiles"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Disable Analytics:"}]," Turn off usage data collection"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Opt-out:"}]," Decline optional data sharing and integrations"]}]]}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"7.2 Account Deletion"}],["$","p",null,{"className":"mb-3","children":"To completely remove your data:"}],["$","ol",null,{"className":"list-decimal list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"Access your device's administration interface (LuCI)"}],["$","li",null,{"children":"Go to \"System\" → \"Software\" in the navigation menu"}],["$","li",null,{"children":"Locate and uninstall the QuecManager package"}],["$","li",null,{"children":["Clear all stored data:",["$","ul",null,{"className":"list-disc list-inside ml-6 mt-1 text-sm","children":[["$","li",null,{"children":"Clear browser cache and local storage"}],["$","li",null,{"children":"Delete any saved configurations"}],["$","li",null,{"children":"Remove custom settings and profiles"}]]}]]}],["$","li",null,{"children":"Optional: Perform a factory reset on your device for complete data removal"}],["$","li",null,{"children":"Contact support if you need confirmation of data deletion"}]]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"8. Children's Privacy"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"QuecManager is designed for professional and technical use in managing cellular network equipment. Our service is not intended for children under the age of 13, and we do not knowingly collect personal information from children under 13."}],["$","p",null,{"children":"For users between 13 and 18 years of age, we recommend parental guidance when using QuecManager, as it involves managing network equipment that may affect internet connectivity and data usage."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"9. International Data Transfers"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"QuecManager is designed to operate locally on your network, minimizing international data transfers. However, in limited circumstances, data may be transferred internationally:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":["$","li",null,{"children":[["$","strong",null,{"children":"Software Updates:"}]," Update checks and downloads from our servers"]}]}],["$","p",null,{"className":"mt-4","children":"When international transfers occur, we ensure appropriate safeguards are in place to protect your information in accordance with applicable data protection laws, including GDPR, CCPA, and other regional privacy regulations."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"10. Changes to This Privacy Policy"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"We may update this Privacy Policy from time to time to reflect changes in our practices, technology, or legal requirements. When we make changes:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":"We will update the \"Last Updated\" date at the top of this policy"}],["$","li",null,{"children":"Significant changes will be highlighted in the application"}],["$","li",null,{"children":"We may provide additional notice through the software interface"}],["$","li",null,{"children":"Continued use of QuecManager after changes constitutes acceptance"}]]}],["$","p",null,{"className":"mt-4","children":"We encourage you to review this Privacy Policy periodically to stay informed about how we protect your information."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"11. Contact Us"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"If you have questions, concerns, or requests regarding this Privacy Policy or how we handle your information, please contact us through:"}],["$","div",null,{"className":"grid md:grid-cols-2 gap-4 mt-4","children":[["$","div",null,{"className":"border border-gray-200 dark:border-gray-700 rounded-lg p-4","children":[["$","h3",null,{"className":"font-semibold text-gray-800 dark:text-gray-200 mb-2","children":"General Inquiries"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-sm","children":[["$","li",null,{"children":"GitHub repository issues and discussions"}],["$","li",null,{"children":"Official documentation and FAQ"}],["$","li",null,{"children":"Community forums and support channels"}]]}]]}],["$","div",null,{"className":"border border-gray-200 dark:border-gray-700 rounded-lg p-4","children":[["$","h3",null,{"className":"font-semibold text-gray-800 dark:text-gray-200 mb-2","children":"Privacy-Specific Requests"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-sm","children":[["$","li",null,{"children":"Privacy concerns and questions"}],["$","li",null,{"children":"GDPR and CCPA related inquiries"}]]}]]}]]}]]}]]}],["$","div",null,{"className":"mt-12 pt-8 border-t border-gray-200 dark:border-gray-700","children":["$","div",null,{"className":"text-center space-y-2","children":[["$","div",null,{"className":"flex justify-center","children":["$","img",null,{"src":"/login-logo.svg","alt":"QuecManager Logo","className":"lg:size-16 size-12 object-cover"}]}],["$","div",null,{"className":"space-y-2","children":[["$","p",null,{"className":"text-sm text-gray-600 dark:text-gray-400","children":["QuecManager Privacy Policy - Version ","1.0"]}],["$","p",null,{"className":"text-sm text-gray-600 dark:text-gray-400","children":["Last Updated: ","August 18, 2025"]}]]}],["$","div",null,{"className":"max-w-2xl mx-auto","children":["$","p",null,{"className":"text-xs text-gray-500 dark:text-gray-500","children":"This Privacy Policy describes how QuecManager handles your information. By using our software, you acknowledge that you have read and understood this policy. We are committed to protecting your privacy and providing transparent information about our data practices."}]}]]}]}]]}]]}]}],null,["$","$L9",null,{"children":"$La"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","b0ItJI2lx0MS-A_kkLMHm",{"children":[["$","$Lb",null,{"children":"$Lc"}],["$","$Ld",null,{"children":"$Le"}],null]}]]}],false]],"m":"$undefined","G":["$f","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","legal","privacy",""],"i":false,"f":[[["",{"children":["legal",{"children":["privacy",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["legal",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","legal","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["privacy",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","legal","children","privacy","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","div",null,{"className":"max-w-4xl mx-auto p-6 space-y-6","children":["$","div",null,{"ref":"$undefined","className":"rounded-xl border bg-card text-card-foreground shadow","children":[["$","div",null,{"ref":"$undefined","className":"flex flex-col space-y-1.5 p-6 text-center","children":[["$","div",null,{"className":"flex justify-center mb-4","children":["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-shield h-12 w-12 text-blue-600 dark:text-blue-400","children":[["$","path","oel41y",{"d":"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],"$undefined"]}]}],["$","h3",null,{"ref":"$undefined","className":"tracking-tight text-3xl font-bold text-gray-900 dark:text-gray-100","children":"QuecManager Privacy Policy"}],["$","div",null,{"className":"flex justify-center items-center gap-4 mt-4","children":["$","$L7",null,{"href":"/login","children":["$","button",null,{"className":"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 text-primary underline-offset-4 hover:underline h-9 px-4 py-2","ref":"$undefined","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-arrow-left size-4","children":[["$","path","1l729n",{"d":"m12 19-7-7 7-7"}],["$","path","x3x0zl",{"d":"M19 12H5"}],"$undefined"]}],"Go Back"]}]}]}],["$","p",null,{"className":"text-gray-600 dark:text-gray-400 mt-4 max-w-2xl mx-auto","children":"Your privacy is important to us. This Privacy Policy explains how QuecManager handles your information when you use our cellular modem management software."}]]}],["$","div",null,{"ref":"$undefined","className":"p-6 pt-0 space-y-8","children":[["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-eye h-6 w-6 text-blue-600 dark:text-blue-400","children":[["$","path","1nclc0",{"d":"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}],["$","circle","1v7zrd",{"cx":"12","cy":"12","r":"3"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"1. Privacy Overview"}]]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"className":"leading-relaxed","children":"QuecManager is designed with privacy as a core principle. As a local network management tool for Quectel cellular modems and routers, QuecManager operates primarily on your local network and devices, minimizing data collection and external communications."}],["$","div",null,{"className":"bg-green-50 dark:bg-green-900/20 border border-green-200 dark:border-green-800 rounded-lg p-4","children":[["$","h3",null,{"className":"font-semibold text-green-800 dark:text-green-200 mb-2","children":"Key Privacy Principles:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-green-700 dark:text-green-300","children":[["$","li",null,{"children":"Local-first processing - your data stays on your network"}],["$","li",null,{"children":"Minimal data collection - we only collect what's necessary"}],["$","li",null,{"children":"No remote tracking - no analytics sent to external servers"}],["$","li",null,{"children":"User control - you decide what data to share and when"}],["$","li",null,{"children":"Transparency - clear information about any data handling"}]]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-triangle-alert h-6 w-6 text-orange-600 dark:text-orange-400","children":[["$","path","wmoenq",{"d":"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"}],["$","path","juzpu7",{"d":"M12 9v4"}],["$","path","p32p05",{"d":"M12 17h.01"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"2. Third-Party Disclaimer"}]]}],["$","div",null,{"className":"bg-yellow-50 dark:bg-yellow-900/20 border border-yellow-200 dark:border-yellow-800 rounded-lg p-4 mb-4","children":["$","p",null,{"className":"text-gray-700 dark:text-gray-300 leading-relaxed","children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"Important Notice:"}]," ","QuecManager is an independent, third-party software application and is ",["$","strong",null,{"children":"not affiliated with, endorsed by, or sponsored by Quectel Wireless Solutions Co., Ltd."}]," or any of its subsidiaries or affiliates. This privacy policy applies solely to QuecManager and not to Quectel's own services or products."]}]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"2.1 Independent Privacy Practices:"}]," ","This privacy policy governs only how QuecManager handles your information. Quectel has its own privacy policies and data handling practices that are separate from ours."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"2.2 Device Data Interaction:"}]," ","While QuecManager interacts with Quectel devices to provide management functionality, we do not share your data with Quectel, and Quectel does not have access to information processed by QuecManager unless you separately share it with them."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"2.3 Support and Responsibility:"}]," ","Quectel is not responsible for QuecManager's privacy practices or data handling. All privacy-related inquiries about QuecManager should be directed to the QuecManager development team."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-database h-6 w-6 text-purple-600 dark:text-purple-400","children":[["$","ellipse","msslwz",{"cx":"12","cy":"5","rx":"9","ry":"3"}],["$","path","1wlel7",{"d":"M3 5V19A9 3 0 0 0 21 19V5"}],["$","path","mv7ke4",{"d":"M3 12A9 3 0 0 0 21 12"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"3. Information We Collect"}]]}],["$","div",null,{"className":"space-y-6 text-gray-700 dark:text-gray-300","children":[["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"3.1 Device Configuration Data (Local Only)"}],["$","p",null,{"className":"mb-3","children":"QuecManager accesses and displays information from your cellular modems and routers to provide management functionality. This includes:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"Device model, firmware version, and hardware identifiers"}],["$","li",null,{"children":"Network configuration settings (APN, carrier settings, IP addresses)"}],["$","li",null,{"children":"Signal strength, connection status, and performance metrics"}],["$","li",null,{"children":"Data usage statistics and connection logs"}],["$","li",null,{"children":"Device temperature, memory usage, and system status"}],["$","li",null,{"children":"Custom configuration profiles and user-defined settings"}]]}],["$","div",null,{"className":"mt-3 p-3 bg-blue-50 dark:bg-blue-900/20 border border-blue-200 dark:border-blue-800 rounded","children":["$","p",null,{"className":"text-blue-800 dark:text-blue-200 text-sm","children":[["$","strong",null,{"children":"Important:"}]," This data is processed locally on your network and is not transmitted to external servers unless you explicitly enable specific features that require it."]}]}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"3.2 User-Provided Information"}],["$","p",null,{"className":"mb-3","children":"Information you voluntarily provide when using QuecManager:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"Custom device names and labels"}],["$","li",null,{"children":"Network configuration preferences"}],["$","li",null,{"children":"User profiles and access credentials (stored locally)"}],["$","li",null,{"children":"Custom scripts and automation rules"}],["$","li",null,{"children":"Backup and export data"}]]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-globe h-6 w-6 text-green-600 dark:text-green-400","children":[["$","circle","1mglay",{"cx":"12","cy":"12","r":"10"}],["$","path","13o1zl",{"d":"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20"}],["$","path","9i4pu4",{"d":"M2 12h20"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"4. How We Use Your Information"}]]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"4.1 Primary Functions"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":[["$","strong",null,{"children":"Device Management:"}]," Display and configure your cellular modem settings"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Network Monitoring:"}]," Show real-time connection status and performance data"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Troubleshooting:"}]," Provide diagnostic tools and error analysis"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Performance Optimization:"}]," Help optimize your network configuration"]}]]}]]}],["$","div",null,{"className":"bg-gray-50 dark:bg-gray-800/50 border border-gray-200 dark:border-gray-700 rounded-lg p-4","children":[["$","h3",null,{"className":"font-semibold text-gray-800 dark:text-gray-200 mb-2","children":"We Do NOT Use Your Information For:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-gray-600 dark:text-gray-400","children":[["$","li",null,{"children":"Advertising or marketing purposes"}],["$","li",null,{"children":"Selling or sharing with third parties"}],["$","li",null,{"children":"Creating user profiles for commercial purposes"}],["$","li",null,{"children":"Tracking your internet usage or browsing habits"}],["$","li",null,{"children":"Monitoring your cellular data consumption for business intelligence"}]]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-lock h-6 w-6 text-red-600 dark:text-red-400","children":[["$","rect","1w4ew1",{"width":"18","height":"11","x":"3","y":"11","rx":"2","ry":"2"}],["$","path","fwvmzm",{"d":"M7 11V7a5 5 0 0 1 10 0v4"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"5. Data Storage and Security"}]]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"5.1 Local Storage"}],["$","p",null,{"className":"mb-3","children":"The majority of your data is stored locally on your devices and network:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":[["$","strong",null,{"children":"Browser Storage:"}]," Application settings and preferences in local browser storage"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Device Memory:"}]," Configuration data stored on your cellular modems and routers"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Local Database:"}]," Historical data and logs stored on your local network"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Configuration Files:"}]," Backup files and profiles stored locally"]}]]}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"5.2 Security Measures"}],["$","div",null,{"className":"grid md:grid-cols-2 gap-4","children":[["$","div",null,{"className":"border border-gray-200 dark:border-gray-700 rounded-lg p-4","children":[["$","h4",null,{"className":"font-semibold text-gray-800 dark:text-gray-200 mb-2","children":"Technical Security"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-sm","children":[["$","li",null,{"children":"Secure authentication protocols"}],["$","li",null,{"children":"Input validation and sanitization"}],["$","li",null,{"children":"Regular security updates"}]]}]]}],["$","div",null,{"className":"border border-gray-200 dark:border-gray-700 rounded-lg p-4","children":[["$","h4",null,{"className":"font-semibold text-gray-800 dark:text-gray-200 mb-2","children":"Access Control"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-sm","children":[["$","li",null,{"children":"User authentication requirements"}],["$","li",null,{"children":"Role-based access permissions"}],["$","li",null,{"children":"Session management and timeouts"}],["$","li",null,{"children":"Device-level security integration"}]]}]]}]]}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"5.3 Data Retention"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":[["$","strong",null,{"children":"Local Data:"}]," Retained until you delete it or uninstall QuecManager"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Error Logs:"}]," Crash reports retained for up to 6 months for debugging"]}]]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","div",null,{"className":"flex items-center gap-3 mb-4","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-triangle-alert h-6 w-6 text-orange-600 dark:text-orange-400","children":[["$","path","wmoenq",{"d":"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"}],["$","path","juzpu7",{"d":"M12 9v4"}],["$","path","p32p05",{"d":"M12 17h.01"}],"$undefined"]}],["$","h2",null,{"className":"text-2xl font-semibold text-gray-800 dark:text-gray-200","children":"6. Information Sharing and Disclosure"}]]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","div",null,{"className":"bg-red-50 dark:bg-red-900/20 border border-red-200 dark:border-red-800 rounded-lg p-4","children":[["$","h3",null,{"className":"font-semibold text-red-800 dark:text-red-200 mb-2","children":"We Do Not Sell, Rent, or Share Your Personal Information"}],["$","p",null,{"className":"text-red-700 dark:text-red-300","children":"QuecManager does not sell, rent, lease, or otherwise provide your personal information or device data to third parties for commercial purposes."}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"6.1 Limited Sharing Scenarios"}],["$","p",null,{"className":"mb-3","children":"We may share information only in these specific circumstances:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":[["$","strong",null,{"children":"With Your Consent:"}]," When you explicitly authorize sharing with specific services"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Service Providers:"}]," Anonymous data with trusted partners who help improve the software"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Legal Requirements:"}]," When required by law, regulation, or court order"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Security Incidents:"}]," To protect against fraud, abuse, or security threats"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Business Transfers:"}]," In the event of a merger, acquisition, or asset sale"]}]]}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"6.2 Third-Party Integrations"}],["$","p",null,{"className":"mb-3","children":"QuecManager may offer optional integrations with third-party services:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"Optional secure VPN services (such as Tailscale) that you explicitly configure and authorize, with all data remaining encrypted and under your control"}],["$","li",null,{"children":"Device manufacturer update services (for firmware updates)"}]]}],["$","div",null,{"className":"mt-3 p-3 bg-blue-50 dark:bg-blue-900/20 border border-blue-200 dark:border-blue-800 rounded","children":["$","p",null,{"className":"text-blue-800 dark:text-blue-200 text-sm","children":[["$","strong",null,{"children":"Your Control:"}]," All third-party integrations are optional and require your explicit consent."]}]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"7. Your Privacy Rights and Choices"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"7.1 Access and Control"}],["$","p",null,{"className":"mb-3","children":"You have the right to:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":[["$","strong",null,{"children":"Access Your Data:"}]," View all information stored by QuecManager"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Modify Settings:"}]," Change configuration and privacy preferences"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Export Data:"}]," Download your device configurations and settings"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Delete Data:"}]," Remove stored information and user profiles"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Disable Analytics:"}]," Turn off usage data collection"]}],["$","li",null,{"children":[["$","strong",null,{"children":"Opt-out:"}]," Decline optional data sharing and integrations"]}]]}]]}],["$","div",null,{"children":[["$","h3",null,{"className":"text-lg font-semibold text-gray-800 dark:text-gray-200 mb-3","children":"7.2 Account Deletion"}],["$","p",null,{"className":"mb-3","children":"To completely remove your data:"}],["$","ol",null,{"className":"list-decimal list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"Access your device's administration interface (LuCI)"}],["$","li",null,{"children":"Go to \"System\" → \"Software\" in the navigation menu"}],["$","li",null,{"children":"Locate and uninstall the QuecManager package"}],["$","li",null,{"children":["Clear all stored data:",["$","ul",null,{"className":"list-disc list-inside ml-6 mt-1 text-sm","children":[["$","li",null,{"children":"Clear browser cache and local storage"}],["$","li",null,{"children":"Delete any saved configurations"}],["$","li",null,{"children":"Remove custom settings and profiles"}]]}]]}],["$","li",null,{"children":"Optional: Perform a factory reset on your device for complete data removal"}],["$","li",null,{"children":"Contact support if you need confirmation of data deletion"}]]}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"8. Children's Privacy"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"QuecManager is designed for professional and technical use in managing cellular network equipment. Our service is not intended for children under the age of 13, and we do not knowingly collect personal information from children under 13."}],["$","p",null,{"children":"For users between 13 and 18 years of age, we recommend parental guidance when using QuecManager, as it involves managing network equipment that may affect internet connectivity and data usage."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"9. International Data Transfers"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"QuecManager is designed to operate locally on your network, minimizing international data transfers. However, in limited circumstances, data may be transferred internationally:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":["$","li",null,{"children":[["$","strong",null,{"children":"Software Updates:"}]," Update checks and downloads from our servers"]}]}],["$","p",null,{"className":"mt-4","children":"When international transfers occur, we ensure appropriate safeguards are in place to protect your information in accordance with applicable data protection laws, including GDPR, CCPA, and other regional privacy regulations."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"10. Changes to This Privacy Policy"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"We may update this Privacy Policy from time to time to reflect changes in our practices, technology, or legal requirements. When we make changes:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":"We will update the \"Last Updated\" date at the top of this policy"}],["$","li",null,{"children":"Significant changes will be highlighted in the application"}],["$","li",null,{"children":"We may provide additional notice through the software interface"}],["$","li",null,{"children":"Continued use of QuecManager after changes constitutes acceptance"}]]}],["$","p",null,{"className":"mt-4","children":"We encourage you to review this Privacy Policy periodically to stay informed about how we protect your information."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"11. Contact Us"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"If you have questions, concerns, or requests regarding this Privacy Policy or how we handle your information, please contact us through:"}],["$","div",null,{"className":"grid md:grid-cols-2 gap-4 mt-4","children":[["$","div",null,{"className":"border border-gray-200 dark:border-gray-700 rounded-lg p-4","children":[["$","h3",null,{"className":"font-semibold text-gray-800 dark:text-gray-200 mb-2","children":"General Inquiries"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-sm","children":[["$","li",null,{"children":"GitHub repository issues and discussions"}],["$","li",null,{"children":"Official documentation and FAQ"}],["$","li",null,{"children":"Community forums and support channels"}]]}]]}],["$","div",null,{"className":"border border-gray-200 dark:border-gray-700 rounded-lg p-4","children":[["$","h3",null,{"className":"font-semibold text-gray-800 dark:text-gray-200 mb-2","children":"Privacy-Specific Requests"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 text-sm","children":[["$","li",null,{"children":"Privacy concerns and questions"}],["$","li",null,{"children":"GDPR and CCPA related inquiries"}]]}]]}]]}]]}]]}],["$","div",null,{"className":"mt-12 pt-8 border-t border-gray-200 dark:border-gray-700","children":["$","div",null,{"className":"text-center space-y-2","children":[["$","div",null,{"className":"flex justify-center","children":["$","img",null,{"src":"/login-logo.svg","alt":"QuecManager Logo","className":"lg:size-16 size-12 object-cover"}]}],["$","div",null,{"className":"space-y-2","children":[["$","p",null,{"className":"text-sm text-gray-600 dark:text-gray-400","children":["QuecManager Privacy Policy - Version ","1.0"]}],["$","p",null,{"className":"text-sm text-gray-600 dark:text-gray-400","children":["Last Updated: ","August 18, 2025"]}]]}],["$","div",null,{"className":"max-w-2xl mx-auto","children":["$","p",null,{"className":"text-xs text-gray-500 dark:text-gray-500","children":"This Privacy Policy describes how QuecManager handles your information. By using our software, you acknowledge that you have read and understood this policy. We are committed to protecting your privacy and providing transparent information about our data practices."}]}]]}]}]]}]]}]}],null,["$","$L9",null,{"children":"$La"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","We5jY_QQORkdX4lb1SvR7",{"children":[["$","$Lb",null,{"children":"$Lc"}],["$","$Ld",null,{"children":"$Le"}],null]}]]}],false]],"m":"$undefined","G":["$f","$undefined"],"s":false,"S":true} e:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] c:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"QuecManager"}],["$","meta","2",{"name":"description","content":"Simpleadmin but better!"}],["$","link","3",{"rel":"icon","href":"/favicon.ico","type":"image/x-icon","sizes":"16x16"}]] a:null diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/tos/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/tos/index.html index 136a95a..a01b929 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/tos/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/tos/index.html @@ -1 +1 @@ -QuecManager

                                                                                                                      QuecManager Terms of Service

                                                                                                                      1. Acceptance of Terms

                                                                                                                      By accessing, installing, or using QuecManager ("the Software"), you acknowledge that you have read, understood, and agree to be bound by these Terms of Service ("Terms"). If you do not agree to these Terms, you must not use the Software. These Terms constitute a legally binding agreement between you ("User" or "you") and the QuecManager development team ("we," "us," or "our").

                                                                                                                      2. Description of Service

                                                                                                                      QuecManager is a web-based management interface designed for Quectel cellular modems and routers. The Software provides:

                                                                                                                      • Real-time monitoring of cellular connectivity and network status
                                                                                                                      • Configuration management for network settings and cellular parameters
                                                                                                                      • Diagnostic tools for troubleshooting connectivity issues
                                                                                                                      • Performance metrics and usage analytics
                                                                                                                      • Remote management capabilities for supported devices
                                                                                                                      • Firmware update management and device administration

                                                                                                                      3. Third-Party Disclaimer

                                                                                                                      Important Notice: QuecManager is an independent, third-party software application and is not affiliated with, endorsed by, or sponsored by Quectel Wireless Solutions Co., Ltd. or any of its subsidiaries or affiliates. QuecManager is developed and maintained independently by the QuecManager development team.

                                                                                                                      3.1 Independent Development: This software has been created independently to provide management capabilities for Quectel devices. Any trademarks, service marks, or product names mentioned in relation to Quectel are the property of Quectel Wireless Solutions Co., Ltd.

                                                                                                                      3.2 No Official Support: Quectel does not provide support, warranty, or endorsement for QuecManager. All support and inquiries regarding QuecManager should be directed to the QuecManager development team through official channels.

                                                                                                                      3.3 Device Compatibility: While QuecManager is designed to work with Quectel devices, we cannot guarantee compatibility with all device models or firmware versions. Use of QuecManager with Quectel devices is at your own discretion and risk.

                                                                                                                      4. License and Usage Rights

                                                                                                                      4.1 Grant of License: Subject to these Terms, we grant you a limited, non-exclusive, non-transferable, revocable license to use QuecManager solely for managing your Quectel devices in accordance with these Terms.

                                                                                                                      4.2 Restrictions: You may not:

                                                                                                                      • Modify, reverse engineer, decompile, or disassemble the Software
                                                                                                                      • Distribute, sublicense, or transfer the Software to third parties
                                                                                                                      • Use the Software for any illegal or unauthorized purpose
                                                                                                                      • Remove or alter any proprietary notices or labels
                                                                                                                      • Use the Software to damage, disable, or impair any networks or systems

                                                                                                                      5. Device Compatibility and Requirements

                                                                                                                      5.1 Compatibility: QuecManager is designed for use with Quectel cellular modems and routers. Compatibility is not guaranteed for all device models or firmware versions.

                                                                                                                      5.2 System Requirements: You are responsible for ensuring your system meets the minimum requirements for running QuecManager, including compatible web browsers, network connectivity, and device firmware.

                                                                                                                      5.3 Device Access: You must have legitimate ownership or authorization to manage any devices you connect to QuecManager.

                                                                                                                      6. User Responsibilities

                                                                                                                      You agree to:

                                                                                                                      • Use QuecManager only for lawful purposes and in compliance with all applicable laws and regulations
                                                                                                                      • Maintain the security and confidentiality of your device access credentials
                                                                                                                      • Regularly backup important device configurations and data
                                                                                                                      • Keep your devices and QuecManager installation updated with the latest security patches
                                                                                                                      • Monitor your device usage to ensure compliance with your carrier's terms of service
                                                                                                                      • Report any security vulnerabilities or bugs to the development team
                                                                                                                      • Not use the Software to interfere with or disrupt networks, servers, or other users

                                                                                                                      7. Privacy and Data Collection

                                                                                                                      7.1 Local Processing: QuecManager operates primarily as a local management interface. Device data and configurations are processed locally on your device and network.

                                                                                                                      7.2 No Remote Data Collection: We do not collect, store, or transmit your device data, configurations, or usage information to remote servers unless explicitly enabled by you for specific features.

                                                                                                                      7.3 Analytics: QuecManager may collect anonymous usage statistics to improve the software. This data does not include personal information or device-specific details.

                                                                                                                      7.4 Third-Party Services: If you choose to integrate with third-party services, those services' privacy policies will apply to data shared with them.

                                                                                                                      8. Security Considerations

                                                                                                                      8.1 Network Security: You are responsible for securing your network and devices when using QuecManager. This includes using strong passwords, enabling encryption, and implementing appropriate firewall rules.

                                                                                                                      8.2 Access Control: Limit access to QuecManager to authorized personnel only. Implement proper user authentication and access controls.

                                                                                                                      8.3 Regular Updates: Keep QuecManager and your device firmware updated to protect against security vulnerabilities.

                                                                                                                      9. Disclaimers and Limitations

                                                                                                                      9.1 "AS IS" Basis: QuecManager is provided "as is" without any warranties, express or implied, including but not limited to warranties of merchantability, fitness for a particular purpose, or non-infringement.

                                                                                                                      9.2 No Guarantee of Availability: We do not guarantee that QuecManager will be available at all times or free from errors, bugs, or interruptions.

                                                                                                                      9.3 Device Damage: Use of QuecManager is at your own risk. We are not responsible for any damage to your devices, data loss, or network disruption resulting from the use of the Software.

                                                                                                                      9.4 Carrier Compliance: You are responsible for ensuring your use of QuecManager complies with your cellular carrier's terms of service and data usage policies.

                                                                                                                      10. Limitation of Liability

                                                                                                                      To the maximum extent permitted by applicable law, we shall not be liable for any indirect, incidental, special, consequential, or punitive damages, including but not limited to:

                                                                                                                      • Loss of profits, data, or business opportunities
                                                                                                                      • Device damage or malfunction
                                                                                                                      • Network downtime or service interruption
                                                                                                                      • Security breaches or unauthorized access
                                                                                                                      • Carrier charges or fees resulting from software use

                                                                                                                      Our total liability for any claims arising from or related to QuecManager shall not exceed the amount you paid for the Software, if any.

                                                                                                                      11. Updates and Modifications

                                                                                                                      11.1 Software Updates: We may release updates, patches, or new versions of QuecManager. You are encouraged to install updates to maintain security and functionality.

                                                                                                                      11.2 Terms Updates: We reserve the right to modify these Terms at any time. Updated Terms will be effective immediately upon posting. Continued use of QuecManager after changes constitutes acceptance of the new Terms.

                                                                                                                      11.3 Feature Changes: We may add, modify, or remove features from QuecManager without prior notice.

                                                                                                                      12. Open Source and Third-Party Components

                                                                                                                      QuecManager may include open source software components and third-party libraries. These components are governed by their respective licenses, which are included in the software distribution. You agree to comply with all applicable open source licenses.

                                                                                                                      A complete list of third-party components and their licenses is available in the software documentation and source code repository.

                                                                                                                      13. Termination

                                                                                                                      13.1 Termination by You: You may stop using QuecManager at any time by uninstalling the Software from your devices.

                                                                                                                      13.2 Termination by Us: We may terminate your right to use QuecManager if you violate these Terms or engage in prohibited activities.

                                                                                                                      13.3 Effect of Termination: Upon termination, your right to use QuecManager ceases immediately. You must uninstall the Software and destroy all copies in your possession.

                                                                                                                      14. Governing Law and Disputes

                                                                                                                      14.1 Governing Law: These Terms shall be governed by and construed in accordance with the laws of your jurisdiction, without regard to conflict of law principles.

                                                                                                                      14.2 Dispute Resolution: Any disputes arising from these Terms or your use of QuecManager should first be addressed through good faith negotiation. If resolution cannot be reached, disputes may be subject to binding arbitration or court proceedings as determined by applicable law.

                                                                                                                      15. Contact Information

                                                                                                                      If you have questions about these Terms or QuecManager, please contact us through:

                                                                                                                      • GitHub repository issues and discussions
                                                                                                                      • Official documentation and support channels
                                                                                                                      • Community forums and support resources

                                                                                                                      For security-related issues, please follow responsible disclosure practices as outlined in our security policy.

                                                                                                                      16. Miscellaneous

                                                                                                                      16.1 Entire Agreement: These Terms constitute the entire agreement between you and us regarding QuecManager and supersede all prior agreements.

                                                                                                                      16.2 Severability: If any provision of these Terms is found to be unenforceable, the remaining provisions shall remain in full force and effect.

                                                                                                                      16.3 Waiver: Our failure to enforce any provision of these Terms shall not constitute a waiver of that provision.

                                                                                                                      16.4 Assignment: You may not assign or transfer your rights under these Terms without our prior written consent.

                                                                                                                      QuecManager Logo

                                                                                                                      QuecManager Terms of Service - Version 1.0

                                                                                                                      Last Updated: August 18, 2025

                                                                                                                      By using QuecManager, you acknowledge that you have read and understood these Terms of Service and agree to be bound by them.

                                                                                                                        \ No newline at end of file +QuecManager

                                                                                                                        QuecManager Terms of Service

                                                                                                                        1. Acceptance of Terms

                                                                                                                        By accessing, installing, or using QuecManager ("the Software"), you acknowledge that you have read, understood, and agree to be bound by these Terms of Service ("Terms"). If you do not agree to these Terms, you must not use the Software. These Terms constitute a legally binding agreement between you ("User" or "you") and the QuecManager development team ("we," "us," or "our").

                                                                                                                        2. Description of Service

                                                                                                                        QuecManager is a web-based management interface designed for Quectel cellular modems and routers. The Software provides:

                                                                                                                        • Real-time monitoring of cellular connectivity and network status
                                                                                                                        • Configuration management for network settings and cellular parameters
                                                                                                                        • Diagnostic tools for troubleshooting connectivity issues
                                                                                                                        • Performance metrics and usage analytics
                                                                                                                        • Remote management capabilities for supported devices
                                                                                                                        • Firmware update management and device administration

                                                                                                                        3. Third-Party Disclaimer

                                                                                                                        Important Notice: QuecManager is an independent, third-party software application and is not affiliated with, endorsed by, or sponsored by Quectel Wireless Solutions Co., Ltd. or any of its subsidiaries or affiliates. QuecManager is developed and maintained independently by the QuecManager development team.

                                                                                                                        3.1 Independent Development: This software has been created independently to provide management capabilities for Quectel devices. Any trademarks, service marks, or product names mentioned in relation to Quectel are the property of Quectel Wireless Solutions Co., Ltd.

                                                                                                                        3.2 No Official Support: Quectel does not provide support, warranty, or endorsement for QuecManager. All support and inquiries regarding QuecManager should be directed to the QuecManager development team through official channels.

                                                                                                                        3.3 Device Compatibility: While QuecManager is designed to work with Quectel devices, we cannot guarantee compatibility with all device models or firmware versions. Use of QuecManager with Quectel devices is at your own discretion and risk.

                                                                                                                        4. License and Usage Rights

                                                                                                                        4.1 Grant of License: Subject to these Terms, we grant you a limited, non-exclusive, non-transferable, revocable license to use QuecManager solely for managing your Quectel devices in accordance with these Terms.

                                                                                                                        4.2 Restrictions: You may not:

                                                                                                                        • Modify, reverse engineer, decompile, or disassemble the Software
                                                                                                                        • Distribute, sublicense, or transfer the Software to third parties
                                                                                                                        • Use the Software for any illegal or unauthorized purpose
                                                                                                                        • Remove or alter any proprietary notices or labels
                                                                                                                        • Use the Software to damage, disable, or impair any networks or systems

                                                                                                                        5. Device Compatibility and Requirements

                                                                                                                        5.1 Compatibility: QuecManager is designed for use with Quectel cellular modems and routers. Compatibility is not guaranteed for all device models or firmware versions.

                                                                                                                        5.2 System Requirements: You are responsible for ensuring your system meets the minimum requirements for running QuecManager, including compatible web browsers, network connectivity, and device firmware.

                                                                                                                        5.3 Device Access: You must have legitimate ownership or authorization to manage any devices you connect to QuecManager.

                                                                                                                        6. User Responsibilities

                                                                                                                        You agree to:

                                                                                                                        • Use QuecManager only for lawful purposes and in compliance with all applicable laws and regulations
                                                                                                                        • Maintain the security and confidentiality of your device access credentials
                                                                                                                        • Regularly backup important device configurations and data
                                                                                                                        • Keep your devices and QuecManager installation updated with the latest security patches
                                                                                                                        • Monitor your device usage to ensure compliance with your carrier's terms of service
                                                                                                                        • Report any security vulnerabilities or bugs to the development team
                                                                                                                        • Not use the Software to interfere with or disrupt networks, servers, or other users

                                                                                                                        7. Privacy and Data Collection

                                                                                                                        7.1 Local Processing: QuecManager operates primarily as a local management interface. Device data and configurations are processed locally on your device and network.

                                                                                                                        7.2 No Remote Data Collection: We do not collect, store, or transmit your device data, configurations, or usage information to remote servers unless explicitly enabled by you for specific features.

                                                                                                                        7.3 Analytics: QuecManager may collect anonymous usage statistics to improve the software. This data does not include personal information or device-specific details.

                                                                                                                        7.4 Third-Party Services: If you choose to integrate with third-party services, those services' privacy policies will apply to data shared with them.

                                                                                                                        8. Security Considerations

                                                                                                                        8.1 Network Security: You are responsible for securing your network and devices when using QuecManager. This includes using strong passwords, enabling encryption, and implementing appropriate firewall rules.

                                                                                                                        8.2 Access Control: Limit access to QuecManager to authorized personnel only. Implement proper user authentication and access controls.

                                                                                                                        8.3 Regular Updates: Keep QuecManager and your device firmware updated to protect against security vulnerabilities.

                                                                                                                        9. Disclaimers and Limitations

                                                                                                                        9.1 "AS IS" Basis: QuecManager is provided "as is" without any warranties, express or implied, including but not limited to warranties of merchantability, fitness for a particular purpose, or non-infringement.

                                                                                                                        9.2 No Guarantee of Availability: We do not guarantee that QuecManager will be available at all times or free from errors, bugs, or interruptions.

                                                                                                                        9.3 Device Damage: Use of QuecManager is at your own risk. We are not responsible for any damage to your devices, data loss, or network disruption resulting from the use of the Software.

                                                                                                                        9.4 Carrier Compliance: You are responsible for ensuring your use of QuecManager complies with your cellular carrier's terms of service and data usage policies.

                                                                                                                        10. Limitation of Liability

                                                                                                                        To the maximum extent permitted by applicable law, we shall not be liable for any indirect, incidental, special, consequential, or punitive damages, including but not limited to:

                                                                                                                        • Loss of profits, data, or business opportunities
                                                                                                                        • Device damage or malfunction
                                                                                                                        • Network downtime or service interruption
                                                                                                                        • Security breaches or unauthorized access
                                                                                                                        • Carrier charges or fees resulting from software use

                                                                                                                        Our total liability for any claims arising from or related to QuecManager shall not exceed the amount you paid for the Software, if any.

                                                                                                                        11. Updates and Modifications

                                                                                                                        11.1 Software Updates: We may release updates, patches, or new versions of QuecManager. You are encouraged to install updates to maintain security and functionality.

                                                                                                                        11.2 Terms Updates: We reserve the right to modify these Terms at any time. Updated Terms will be effective immediately upon posting. Continued use of QuecManager after changes constitutes acceptance of the new Terms.

                                                                                                                        11.3 Feature Changes: We may add, modify, or remove features from QuecManager without prior notice.

                                                                                                                        12. Open Source and Third-Party Components

                                                                                                                        QuecManager may include open source software components and third-party libraries. These components are governed by their respective licenses, which are included in the software distribution. You agree to comply with all applicable open source licenses.

                                                                                                                        A complete list of third-party components and their licenses is available in the software documentation and source code repository.

                                                                                                                        13. Termination

                                                                                                                        13.1 Termination by You: You may stop using QuecManager at any time by uninstalling the Software from your devices.

                                                                                                                        13.2 Termination by Us: We may terminate your right to use QuecManager if you violate these Terms or engage in prohibited activities.

                                                                                                                        13.3 Effect of Termination: Upon termination, your right to use QuecManager ceases immediately. You must uninstall the Software and destroy all copies in your possession.

                                                                                                                        14. Governing Law and Disputes

                                                                                                                        14.1 Governing Law: These Terms shall be governed by and construed in accordance with the laws of your jurisdiction, without regard to conflict of law principles.

                                                                                                                        14.2 Dispute Resolution: Any disputes arising from these Terms or your use of QuecManager should first be addressed through good faith negotiation. If resolution cannot be reached, disputes may be subject to binding arbitration or court proceedings as determined by applicable law.

                                                                                                                        15. Contact Information

                                                                                                                        If you have questions about these Terms or QuecManager, please contact us through:

                                                                                                                        • GitHub repository issues and discussions
                                                                                                                        • Official documentation and support channels
                                                                                                                        • Community forums and support resources

                                                                                                                        For security-related issues, please follow responsible disclosure practices as outlined in our security policy.

                                                                                                                        16. Miscellaneous

                                                                                                                        16.1 Entire Agreement: These Terms constitute the entire agreement between you and us regarding QuecManager and supersede all prior agreements.

                                                                                                                        16.2 Severability: If any provision of these Terms is found to be unenforceable, the remaining provisions shall remain in full force and effect.

                                                                                                                        16.3 Waiver: Our failure to enforce any provision of these Terms shall not constitute a waiver of that provision.

                                                                                                                        16.4 Assignment: You may not assign or transfer your rights under these Terms without our prior written consent.

                                                                                                                        QuecManager Logo

                                                                                                                        QuecManager Terms of Service - Version 1.0

                                                                                                                        Last Updated: August 18, 2025

                                                                                                                        By using QuecManager, you acknowledge that you have read and understood these Terms of Service and agree to be bound by them.

                                                                                                                          \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/tos/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/tos/index.txt index 93b562a..593982f 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/tos/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/legal/tos/index.txt @@ -10,8 +10,8 @@ b:I[99165,[],"MetadataBoundary"] d:I[99165,[],"ViewportBoundary"] f:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","legal","tos",""],"i":false,"f":[[["",{"children":["legal",{"children":["tos",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["legal",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","legal","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["tos",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","legal","children","tos","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","div",null,{"className":"max-w-4xl mx-auto p-6 space-y-6","children":["$","div",null,{"ref":"$undefined","className":"rounded-xl border bg-card text-card-foreground shadow","children":[["$","div",null,{"ref":"$undefined","className":"flex flex-col space-y-1.5 p-6 text-center","children":[["$","h3",null,{"ref":"$undefined","className":"tracking-tight text-3xl font-bold text-gray-900 dark:text-gray-100","children":"QuecManager Terms of Service"}],["$","$L7",null,{"href":"/login","children":["$","button",null,{"className":"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 text-primary underline-offset-4 hover:underline h-9 px-4 py-2","ref":"$undefined","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-arrow-left size-4","children":[["$","path","1l729n",{"d":"m12 19-7-7 7-7"}],["$","path","x3x0zl",{"d":"M19 12H5"}],"$undefined"]}],"Go Back"]}]}]]}],["$","div",null,{"ref":"$undefined","className":"p-6 pt-0 space-y-8","children":[["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"1. Acceptance of Terms"}],["$","p",null,{"className":"text-gray-700 dark:text-gray-300 leading-relaxed","children":"By accessing, installing, or using QuecManager (\"the Software\"), you acknowledge that you have read, understood, and agree to be bound by these Terms of Service (\"Terms\"). If you do not agree to these Terms, you must not use the Software. These Terms constitute a legally binding agreement between you (\"User\" or \"you\") and the QuecManager development team (\"we,\" \"us,\" or \"our\")."}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"2. Description of Service"}],["$","p",null,{"className":"text-gray-700 dark:text-gray-300 leading-relaxed mb-4","children":"QuecManager is a web-based management interface designed for Quectel cellular modems and routers. The Software provides:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 text-gray-700 dark:text-gray-300 ml-4","children":[["$","li",null,{"children":"Real-time monitoring of cellular connectivity and network status"}],["$","li",null,{"children":"Configuration management for network settings and cellular parameters"}],["$","li",null,{"children":"Diagnostic tools for troubleshooting connectivity issues"}],["$","li",null,{"children":"Performance metrics and usage analytics"}],["$","li",null,{"children":"Remote management capabilities for supported devices"}],["$","li",null,{"children":"Firmware update management and device administration"}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"3. Third-Party Disclaimer"}],["$","div",null,{"className":"bg-yellow-50 dark:bg-yellow-900/20 border border-yellow-200 dark:border-yellow-800 rounded-lg p-4 mb-4","children":["$","p",null,{"className":"text-gray-700 dark:text-gray-300 leading-relaxed","children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"Important Notice:"}]," ","QuecManager is an independent, third-party software application and is"," ",["$","strong",null,{"children":"not affiliated with, endorsed by, or sponsored by Quectel Wireless Solutions Co., Ltd."}]," ","or any of its subsidiaries or affiliates. QuecManager is developed and maintained independently by the QuecManager development team."]}]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"3.1 Independent Development:"}]," ","This software has been created independently to provide management capabilities for Quectel devices. Any trademarks, service marks, or product names mentioned in relation to Quectel are the property of Quectel Wireless Solutions Co., Ltd."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"3.2 No Official Support:"}]," ","Quectel does not provide support, warranty, or endorsement for QuecManager. All support and inquiries regarding QuecManager should be directed to the QuecManager development team through official channels."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"3.3 Device Compatibility:"}]," ","While QuecManager is designed to work with Quectel devices, we cannot guarantee compatibility with all device models or firmware versions. Use of QuecManager with Quectel devices is at your own discretion and risk."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"4. License and Usage Rights"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"4.1 Grant of License:"}]," ","Subject to these Terms, we grant you a limited, non-exclusive, non-transferable, revocable license to use QuecManager solely for managing your Quectel devices in accordance with these Terms."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"4.2 Restrictions:"}]," ","You may not:"]}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-6","children":[["$","li",null,{"children":"Modify, reverse engineer, decompile, or disassemble the Software"}],["$","li",null,{"children":"Distribute, sublicense, or transfer the Software to third parties"}],["$","li",null,{"children":"Use the Software for any illegal or unauthorized purpose"}],["$","li",null,{"children":"Remove or alter any proprietary notices or labels"}],["$","li",null,{"children":"Use the Software to damage, disable, or impair any networks or systems"}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"5. Device Compatibility and Requirements"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"5.1 Compatibility:"}]," ","QuecManager is designed for use with Quectel cellular modems and routers. Compatibility is not guaranteed for all device models or firmware versions."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"5.2 System Requirements:"}]," ","You are responsible for ensuring your system meets the minimum requirements for running QuecManager, including compatible web browsers, network connectivity, and device firmware."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"5.3 Device Access:"}]," ","You must have legitimate ownership or authorization to manage any devices you connect to QuecManager."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"6. User Responsibilities"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"You agree to:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":"Use QuecManager only for lawful purposes and in compliance with all applicable laws and regulations"}],["$","li",null,{"children":"Maintain the security and confidentiality of your device access credentials"}],["$","li",null,{"children":"Regularly backup important device configurations and data"}],["$","li",null,{"children":"Keep your devices and QuecManager installation updated with the latest security patches"}],["$","li",null,{"children":"Monitor your device usage to ensure compliance with your carrier's terms of service"}],["$","li",null,{"children":"Report any security vulnerabilities or bugs to the development team"}],["$","li",null,{"children":"Not use the Software to interfere with or disrupt networks, servers, or other users"}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"7. Privacy and Data Collection"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"7.1 Local Processing:"}]," ","QuecManager operates primarily as a local management interface. Device data and configurations are processed locally on your device and network."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"7.2 No Remote Data Collection:"}]," ","We do not collect, store, or transmit your device data, configurations, or usage information to remote servers unless explicitly enabled by you for specific features."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"7.3 Analytics:"}]," ","QuecManager may collect anonymous usage statistics to improve the software. This data does not include personal information or device-specific details."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"7.4 Third-Party Services:"}]," ","If you choose to integrate with third-party services, those services' privacy policies will apply to data shared with them."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"8. Security Considerations"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"8.1 Network Security:"}]," ","You are responsible for securing your network and devices when using QuecManager. This includes using strong passwords, enabling encryption, and implementing appropriate firewall rules."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"8.2 Access Control:"}]," ","Limit access to QuecManager to authorized personnel only. Implement proper user authentication and access controls."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"8.3 Regular Updates:"}]," ","Keep QuecManager and your device firmware updated to protect against security vulnerabilities."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"9. Disclaimers and Limitations"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"9.1 \"AS IS\" Basis:"}]," ","QuecManager is provided \"as is\" without any warranties, express or implied, including but not limited to warranties of merchantability, fitness for a particular purpose, or non-infringement."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"9.2 No Guarantee of Availability:"}]," ","We do not guarantee that QuecManager will be available at all times or free from errors, bugs, or interruptions."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"9.3 Device Damage:"}]," ","Use of QuecManager is at your own risk. We are not responsible for any damage to your devices, data loss, or network disruption resulting from the use of the Software."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"9.4 Carrier Compliance:"}]," ","You are responsible for ensuring your use of QuecManager complies with your cellular carrier's terms of service and data usage policies."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"10. Limitation of Liability"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"To the maximum extent permitted by applicable law, we shall not be liable for any indirect, incidental, special, consequential, or punitive damages, including but not limited to:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"Loss of profits, data, or business opportunities"}],["$","li",null,{"children":"Device damage or malfunction"}],["$","li",null,{"children":"Network downtime or service interruption"}],["$","li",null,{"children":"Security breaches or unauthorized access"}],["$","li",null,{"children":"Carrier charges or fees resulting from software use"}]]}],["$","p",null,{"className":"mt-4","children":"Our total liability for any claims arising from or related to QuecManager shall not exceed the amount you paid for the Software, if any."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"11. Updates and Modifications"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"11.1 Software Updates:"}]," ","We may release updates, patches, or new versions of QuecManager. You are encouraged to install updates to maintain security and functionality."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"11.2 Terms Updates:"}]," ","We reserve the right to modify these Terms at any time. Updated Terms will be effective immediately upon posting. Continued use of QuecManager after changes constitutes acceptance of the new Terms."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"11.3 Feature Changes:"}]," ","We may add, modify, or remove features from QuecManager without prior notice."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"12. Open Source and Third-Party Components"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"QuecManager may include open source software components and third-party libraries. These components are governed by their respective licenses, which are included in the software distribution. You agree to comply with all applicable open source licenses."}],["$","p",null,{"children":"A complete list of third-party components and their licenses is available in the software documentation and source code repository."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"13. Termination"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"13.1 Termination by You:"}]," ","You may stop using QuecManager at any time by uninstalling the Software from your devices."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"13.2 Termination by Us:"}]," ","We may terminate your right to use QuecManager if you violate these Terms or engage in prohibited activities."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"13.3 Effect of Termination:"}]," ","Upon termination, your right to use QuecManager ceases immediately. You must uninstall the Software and destroy all copies in your possession."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"14. Governing Law and Disputes"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"14.1 Governing Law:"}]," ","These Terms shall be governed by and construed in accordance with the laws of your jurisdiction, without regard to conflict of law principles."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"14.2 Dispute Resolution:"}]," ","Any disputes arising from these Terms or your use of QuecManager should first be addressed through good faith negotiation. If resolution cannot be reached, disputes may be subject to binding arbitration or court proceedings as determined by applicable law."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"15. Contact Information"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"If you have questions about these Terms or QuecManager, please contact us through:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"GitHub repository issues and discussions"}],["$","li",null,{"children":"Official documentation and support channels"}],["$","li",null,{"children":"Community forums and support resources"}]]}],["$","p",null,{"className":"mt-4","children":"For security-related issues, please follow responsible disclosure practices as outlined in our security policy."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"16. Miscellaneous"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"16.1 Entire Agreement:"}]," ","These Terms constitute the entire agreement between you and us regarding QuecManager and supersede all prior agreements."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"16.2 Severability:"}]," ","If any provision of these Terms is found to be unenforceable, the remaining provisions shall remain in full force and effect."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"16.3 Waiver:"}]," ","Our failure to enforce any provision of these Terms shall not constitute a waiver of that provision."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"16.4 Assignment:"}]," ","You may not assign or transfer your rights under these Terms without our prior written consent."]}]]}]]}],["$","div",null,{"className":"mt-12 pt-8 border-t border-gray-200 dark:border-gray-700","children":["$","div",null,{"className":"text-center space-y-2","children":[["$","div",null,{"className":"flex justify-center","children":["$","img",null,{"src":"/login-logo.svg","alt":"QuecManager Logo","className":"lg:size-16 size-12 object-cover"}]}],["$","p",null,{"className":"text-sm text-gray-600 dark:text-gray-400","children":["QuecManager Terms of Service - Version ","1.0"]}],["$","p",null,{"className":"text-sm text-gray-600 dark:text-gray-400","children":["Last Updated: ","August 18, 2025"]}],["$","p",null,{"className":"text-xs text-gray-500 dark:text-gray-500 mt-4","children":"By using QuecManager, you acknowledge that you have read and understood these Terms of Service and agree to be bound by them."}]]}]}]]}]]}]}],null,["$","$L9",null,{"children":"$La"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","OLXUXE-DxBEZ6vDaXC6yK",{"children":[["$","$Lb",null,{"children":"$Lc"}],["$","$Ld",null,{"children":"$Le"}],null]}]]}],false]],"m":"$undefined","G":["$f","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","legal","tos",""],"i":false,"f":[[["",{"children":["legal",{"children":["tos",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["legal",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","legal","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["tos",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","legal","children","tos","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","div",null,{"className":"max-w-4xl mx-auto p-6 space-y-6","children":["$","div",null,{"ref":"$undefined","className":"rounded-xl border bg-card text-card-foreground shadow","children":[["$","div",null,{"ref":"$undefined","className":"flex flex-col space-y-1.5 p-6 text-center","children":[["$","h3",null,{"ref":"$undefined","className":"tracking-tight text-3xl font-bold text-gray-900 dark:text-gray-100","children":"QuecManager Terms of Service"}],["$","$L7",null,{"href":"/login","children":["$","button",null,{"className":"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 text-primary underline-offset-4 hover:underline h-9 px-4 py-2","ref":"$undefined","children":[["$","svg",null,{"ref":"$undefined","xmlns":"http://www.w3.org/2000/svg","width":24,"height":24,"viewBox":"0 0 24 24","fill":"none","stroke":"currentColor","strokeWidth":2,"strokeLinecap":"round","strokeLinejoin":"round","className":"lucide lucide-arrow-left size-4","children":[["$","path","1l729n",{"d":"m12 19-7-7 7-7"}],["$","path","x3x0zl",{"d":"M19 12H5"}],"$undefined"]}],"Go Back"]}]}]]}],["$","div",null,{"ref":"$undefined","className":"p-6 pt-0 space-y-8","children":[["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"1. Acceptance of Terms"}],["$","p",null,{"className":"text-gray-700 dark:text-gray-300 leading-relaxed","children":"By accessing, installing, or using QuecManager (\"the Software\"), you acknowledge that you have read, understood, and agree to be bound by these Terms of Service (\"Terms\"). If you do not agree to these Terms, you must not use the Software. These Terms constitute a legally binding agreement between you (\"User\" or \"you\") and the QuecManager development team (\"we,\" \"us,\" or \"our\")."}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"2. Description of Service"}],["$","p",null,{"className":"text-gray-700 dark:text-gray-300 leading-relaxed mb-4","children":"QuecManager is a web-based management interface designed for Quectel cellular modems and routers. The Software provides:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 text-gray-700 dark:text-gray-300 ml-4","children":[["$","li",null,{"children":"Real-time monitoring of cellular connectivity and network status"}],["$","li",null,{"children":"Configuration management for network settings and cellular parameters"}],["$","li",null,{"children":"Diagnostic tools for troubleshooting connectivity issues"}],["$","li",null,{"children":"Performance metrics and usage analytics"}],["$","li",null,{"children":"Remote management capabilities for supported devices"}],["$","li",null,{"children":"Firmware update management and device administration"}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"3. Third-Party Disclaimer"}],["$","div",null,{"className":"bg-yellow-50 dark:bg-yellow-900/20 border border-yellow-200 dark:border-yellow-800 rounded-lg p-4 mb-4","children":["$","p",null,{"className":"text-gray-700 dark:text-gray-300 leading-relaxed","children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"Important Notice:"}]," ","QuecManager is an independent, third-party software application and is"," ",["$","strong",null,{"children":"not affiliated with, endorsed by, or sponsored by Quectel Wireless Solutions Co., Ltd."}]," ","or any of its subsidiaries or affiliates. QuecManager is developed and maintained independently by the QuecManager development team."]}]}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"3.1 Independent Development:"}]," ","This software has been created independently to provide management capabilities for Quectel devices. Any trademarks, service marks, or product names mentioned in relation to Quectel are the property of Quectel Wireless Solutions Co., Ltd."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"3.2 No Official Support:"}]," ","Quectel does not provide support, warranty, or endorsement for QuecManager. All support and inquiries regarding QuecManager should be directed to the QuecManager development team through official channels."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"3.3 Device Compatibility:"}]," ","While QuecManager is designed to work with Quectel devices, we cannot guarantee compatibility with all device models or firmware versions. Use of QuecManager with Quectel devices is at your own discretion and risk."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"4. License and Usage Rights"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"4.1 Grant of License:"}]," ","Subject to these Terms, we grant you a limited, non-exclusive, non-transferable, revocable license to use QuecManager solely for managing your Quectel devices in accordance with these Terms."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"4.2 Restrictions:"}]," ","You may not:"]}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-6","children":[["$","li",null,{"children":"Modify, reverse engineer, decompile, or disassemble the Software"}],["$","li",null,{"children":"Distribute, sublicense, or transfer the Software to third parties"}],["$","li",null,{"children":"Use the Software for any illegal or unauthorized purpose"}],["$","li",null,{"children":"Remove or alter any proprietary notices or labels"}],["$","li",null,{"children":"Use the Software to damage, disable, or impair any networks or systems"}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"5. Device Compatibility and Requirements"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"5.1 Compatibility:"}]," ","QuecManager is designed for use with Quectel cellular modems and routers. Compatibility is not guaranteed for all device models or firmware versions."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"5.2 System Requirements:"}]," ","You are responsible for ensuring your system meets the minimum requirements for running QuecManager, including compatible web browsers, network connectivity, and device firmware."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"5.3 Device Access:"}]," ","You must have legitimate ownership or authorization to manage any devices you connect to QuecManager."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"6. User Responsibilities"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"You agree to:"}],["$","ul",null,{"className":"list-disc list-inside space-y-2 ml-4","children":[["$","li",null,{"children":"Use QuecManager only for lawful purposes and in compliance with all applicable laws and regulations"}],["$","li",null,{"children":"Maintain the security and confidentiality of your device access credentials"}],["$","li",null,{"children":"Regularly backup important device configurations and data"}],["$","li",null,{"children":"Keep your devices and QuecManager installation updated with the latest security patches"}],["$","li",null,{"children":"Monitor your device usage to ensure compliance with your carrier's terms of service"}],["$","li",null,{"children":"Report any security vulnerabilities or bugs to the development team"}],["$","li",null,{"children":"Not use the Software to interfere with or disrupt networks, servers, or other users"}]]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"7. Privacy and Data Collection"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"7.1 Local Processing:"}]," ","QuecManager operates primarily as a local management interface. Device data and configurations are processed locally on your device and network."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"7.2 No Remote Data Collection:"}]," ","We do not collect, store, or transmit your device data, configurations, or usage information to remote servers unless explicitly enabled by you for specific features."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"7.3 Analytics:"}]," ","QuecManager may collect anonymous usage statistics to improve the software. This data does not include personal information or device-specific details."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"7.4 Third-Party Services:"}]," ","If you choose to integrate with third-party services, those services' privacy policies will apply to data shared with them."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"8. Security Considerations"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"8.1 Network Security:"}]," ","You are responsible for securing your network and devices when using QuecManager. This includes using strong passwords, enabling encryption, and implementing appropriate firewall rules."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"8.2 Access Control:"}]," ","Limit access to QuecManager to authorized personnel only. Implement proper user authentication and access controls."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"8.3 Regular Updates:"}]," ","Keep QuecManager and your device firmware updated to protect against security vulnerabilities."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"9. Disclaimers and Limitations"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"9.1 \"AS IS\" Basis:"}]," ","QuecManager is provided \"as is\" without any warranties, express or implied, including but not limited to warranties of merchantability, fitness for a particular purpose, or non-infringement."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"9.2 No Guarantee of Availability:"}]," ","We do not guarantee that QuecManager will be available at all times or free from errors, bugs, or interruptions."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"9.3 Device Damage:"}]," ","Use of QuecManager is at your own risk. We are not responsible for any damage to your devices, data loss, or network disruption resulting from the use of the Software."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"9.4 Carrier Compliance:"}]," ","You are responsible for ensuring your use of QuecManager complies with your cellular carrier's terms of service and data usage policies."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"10. Limitation of Liability"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"To the maximum extent permitted by applicable law, we shall not be liable for any indirect, incidental, special, consequential, or punitive damages, including but not limited to:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"Loss of profits, data, or business opportunities"}],["$","li",null,{"children":"Device damage or malfunction"}],["$","li",null,{"children":"Network downtime or service interruption"}],["$","li",null,{"children":"Security breaches or unauthorized access"}],["$","li",null,{"children":"Carrier charges or fees resulting from software use"}]]}],["$","p",null,{"className":"mt-4","children":"Our total liability for any claims arising from or related to QuecManager shall not exceed the amount you paid for the Software, if any."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"11. Updates and Modifications"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"11.1 Software Updates:"}]," ","We may release updates, patches, or new versions of QuecManager. You are encouraged to install updates to maintain security and functionality."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"11.2 Terms Updates:"}]," ","We reserve the right to modify these Terms at any time. Updated Terms will be effective immediately upon posting. Continued use of QuecManager after changes constitutes acceptance of the new Terms."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"11.3 Feature Changes:"}]," ","We may add, modify, or remove features from QuecManager without prior notice."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"12. Open Source and Third-Party Components"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"QuecManager may include open source software components and third-party libraries. These components are governed by their respective licenses, which are included in the software distribution. You agree to comply with all applicable open source licenses."}],["$","p",null,{"children":"A complete list of third-party components and their licenses is available in the software documentation and source code repository."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"13. Termination"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"13.1 Termination by You:"}]," ","You may stop using QuecManager at any time by uninstalling the Software from your devices."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"13.2 Termination by Us:"}]," ","We may terminate your right to use QuecManager if you violate these Terms or engage in prohibited activities."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"13.3 Effect of Termination:"}]," ","Upon termination, your right to use QuecManager ceases immediately. You must uninstall the Software and destroy all copies in your possession."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"14. Governing Law and Disputes"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"14.1 Governing Law:"}]," ","These Terms shall be governed by and construed in accordance with the laws of your jurisdiction, without regard to conflict of law principles."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"14.2 Dispute Resolution:"}]," ","Any disputes arising from these Terms or your use of QuecManager should first be addressed through good faith negotiation. If resolution cannot be reached, disputes may be subject to binding arbitration or court proceedings as determined by applicable law."]}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"15. Contact Information"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":"If you have questions about these Terms or QuecManager, please contact us through:"}],["$","ul",null,{"className":"list-disc list-inside space-y-1 ml-4","children":[["$","li",null,{"children":"GitHub repository issues and discussions"}],["$","li",null,{"children":"Official documentation and support channels"}],["$","li",null,{"children":"Community forums and support resources"}]]}],["$","p",null,{"className":"mt-4","children":"For security-related issues, please follow responsible disclosure practices as outlined in our security policy."}]]}]]}],["$","$L8",null,{}],["$","section",null,{"children":[["$","h2",null,{"className":"text-2xl font-semibold mb-4 text-gray-800 dark:text-gray-200","children":"16. Miscellaneous"}],["$","div",null,{"className":"space-y-4 text-gray-700 dark:text-gray-300","children":[["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"16.1 Entire Agreement:"}]," ","These Terms constitute the entire agreement between you and us regarding QuecManager and supersede all prior agreements."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"16.2 Severability:"}]," ","If any provision of these Terms is found to be unenforceable, the remaining provisions shall remain in full force and effect."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"16.3 Waiver:"}]," ","Our failure to enforce any provision of these Terms shall not constitute a waiver of that provision."]}],["$","p",null,{"children":[["$","strong",null,{"className":"text-gray-900 dark:text-gray-100","children":"16.4 Assignment:"}]," ","You may not assign or transfer your rights under these Terms without our prior written consent."]}]]}]]}],["$","div",null,{"className":"mt-12 pt-8 border-t border-gray-200 dark:border-gray-700","children":["$","div",null,{"className":"text-center space-y-2","children":[["$","div",null,{"className":"flex justify-center","children":["$","img",null,{"src":"/login-logo.svg","alt":"QuecManager Logo","className":"lg:size-16 size-12 object-cover"}]}],["$","p",null,{"className":"text-sm text-gray-600 dark:text-gray-400","children":["QuecManager Terms of Service - Version ","1.0"]}],["$","p",null,{"className":"text-sm text-gray-600 dark:text-gray-400","children":["Last Updated: ","August 18, 2025"]}],["$","p",null,{"className":"text-xs text-gray-500 dark:text-gray-500 mt-4","children":"By using QuecManager, you acknowledge that you have read and understood these Terms of Service and agree to be bound by them."}]]}]}]]}]]}]}],null,["$","$L9",null,{"children":"$La"}]]}],{},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","_YnXCIt3WSDG09BFgh8e7",{"children":[["$","$Lb",null,{"children":"$Lc"}],["$","$Ld",null,{"children":"$Le"}],null]}]]}],false]],"m":"$undefined","G":["$f","$undefined"],"s":false,"S":true} e:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] c:[["$","meta","0",{"charSet":"utf-8"}],["$","title","1",{"children":"QuecManager"}],["$","meta","2",{"name":"description","content":"Simpleadmin but better!"}],["$","link","3",{"rel":"icon","href":"/favicon.ico","type":"image/x-icon","sizes":"16x16"}]] a:null diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/login.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/login.html index 11fbd03..e685e92 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/login.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/login.html @@ -1 +1 @@ -QuecManager

                                                                                                                          QuecManager Quick Stats

                                                                                                                            \ No newline at end of file +QuecManager

                                                                                                                            QuecManager Quick Stats

                                                                                                                              \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/login/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/login/index.html index 21b7e16..124d9c4 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/login/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/login/index.html @@ -1 +1 @@ -QuecManager
                                                                                                                              QuecManager Logo

                                                                                                                              Welcome to QuecManager

                                                                                                                              Forgot your password?

                                                                                                                              Go Back

                                                                                                                              By clicking continue, you agree to our Terms of Service and Privacy Policy.
                                                                                                                                \ No newline at end of file +QuecManager
                                                                                                                                QuecManager Logo

                                                                                                                                Welcome to QuecManager

                                                                                                                                Forgot your password?

                                                                                                                                Go Back

                                                                                                                                By clicking continue, you agree to our Terms of Service and Privacy Policy.
                                                                                                                                  \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/login/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/login/index.txt index c8471c0..3732ea1 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/login/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/login/index.txt @@ -10,8 +10,8 @@ b:I[99165,[],"OutletBoundary"] d:I[99165,[],"MetadataBoundary"] f:I[99165,[],"ViewportBoundary"] 11:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","login",""],"i":false,"f":[[["",{"children":["login",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["login",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","login","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L7",null,{"Component":"$8","searchParams":{},"params":{},"promises":["$@9","$@a"]}],null,["$","$Lb",null,{"children":"$Lc"}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","Bq65l1Y4SBi4Q55pxOSyr",{"children":[["$","$Ld",null,{"children":"$Le"}],["$","$Lf",null,{"children":"$L10"}],null]}]]}],false]],"m":"$undefined","G":["$11","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","login",""],"i":false,"f":[[["",{"children":["login",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["login",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","login","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L7",null,{"Component":"$8","searchParams":{},"params":{},"promises":["$@9","$@a"]}],null,["$","$Lb",null,{"children":"$Lc"}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","r8flCZk7i2q2KHjHtvu0k",{"children":[["$","$Ld",null,{"children":"$Le"}],["$","$Lf",null,{"children":"$L10"}],null]}]]}],false]],"m":"$undefined","G":["$11","$undefined"],"s":false,"S":true} 9:{} a:{} 10:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]] diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/utils/dsMDh6647ZGkOLyv60QE/OGwW8ufEw6nWPQSaliNX/games/tetris/index.html b/ipk-source/sdxpinn-quecmanager-beta/root/www/utils/dsMDh6647ZGkOLyv60QE/OGwW8ufEw6nWPQSaliNX/games/tetris/index.html index cb77cb0..74b4883 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/utils/dsMDh6647ZGkOLyv60QE/OGwW8ufEw6nWPQSaliNX/games/tetris/index.html +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/utils/dsMDh6647ZGkOLyv60QE/OGwW8ufEw6nWPQSaliNX/games/tetris/index.html @@ -1 +1 @@ -QuecManager
                                                                                                                                  Score: 0
                                                                                                                                  High Score: 0
                                                                                                                                  Speed: 1x

                                                                                                                                  Controls:

                                                                                                                                  ← → : Move

                                                                                                                                  ↑ : Rotate

                                                                                                                                  ↓ : Soft Drop

                                                                                                                                  Space : Hard Drop

                                                                                                                                  Ctrl+R : Restart

                                                                                                                                    \ No newline at end of file +QuecManager
                                                                                                                                    Score: 0
                                                                                                                                    High Score: 0
                                                                                                                                    Speed: 1x

                                                                                                                                    Controls:

                                                                                                                                    ← → : Move

                                                                                                                                    ↑ : Rotate

                                                                                                                                    ↓ : Soft Drop

                                                                                                                                    Space : Hard Drop

                                                                                                                                    Ctrl+R : Restart

                                                                                                                                      \ No newline at end of file diff --git a/ipk-source/sdxpinn-quecmanager-beta/root/www/utils/dsMDh6647ZGkOLyv60QE/OGwW8ufEw6nWPQSaliNX/games/tetris/index.txt b/ipk-source/sdxpinn-quecmanager-beta/root/www/utils/dsMDh6647ZGkOLyv60QE/OGwW8ufEw6nWPQSaliNX/games/tetris/index.txt index bee6982..2448878 100644 --- a/ipk-source/sdxpinn-quecmanager-beta/root/www/utils/dsMDh6647ZGkOLyv60QE/OGwW8ufEw6nWPQSaliNX/games/tetris/index.txt +++ b/ipk-source/sdxpinn-quecmanager-beta/root/www/utils/dsMDh6647ZGkOLyv60QE/OGwW8ufEw6nWPQSaliNX/games/tetris/index.txt @@ -10,8 +10,8 @@ b:I[99165,[],"OutletBoundary"] d:I[99165,[],"MetadataBoundary"] f:I[99165,[],"ViewportBoundary"] 11:I[25339,[],""] -:HL["/_next/static/css/82ea992fcf0f52f2.css","style"] -0:{"P":null,"b":"Ybrwzc8VHk4VhrNWm32aK","p":"","c":["","utils","dsMDh6647ZGkOLyv60QE","OGwW8ufEw6nWPQSaliNX","games","tetris",""],"i":false,"f":[[["",{"children":["utils",{"children":["dsMDh6647ZGkOLyv60QE",{"children":["OGwW8ufEw6nWPQSaliNX",{"children":["games",{"children":["tetris",{"children":["__PAGE__",{}]}]}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/82ea992fcf0f52f2.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["utils",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","utils","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["dsMDh6647ZGkOLyv60QE",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","utils","children","dsMDh6647ZGkOLyv60QE","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["OGwW8ufEw6nWPQSaliNX",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","utils","children","dsMDh6647ZGkOLyv60QE","children","OGwW8ufEw6nWPQSaliNX","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["games",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","utils","children","dsMDh6647ZGkOLyv60QE","children","OGwW8ufEw6nWPQSaliNX","children","games","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["tetris",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","utils","children","dsMDh6647ZGkOLyv60QE","children","OGwW8ufEw6nWPQSaliNX","children","games","children","tetris","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L7",null,{"Component":"$8","searchParams":{},"params":{},"promises":["$@9","$@a"]}],null,["$","$Lb",null,{"children":"$Lc"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","_z_kOfVBctN0_pqORfmfG",{"children":[["$","$Ld",null,{"children":"$Le"}],["$","$Lf",null,{"children":"$L10"}],null]}]]}],false]],"m":"$undefined","G":["$11","$undefined"],"s":false,"S":true} +:HL["/_next/static/css/9128b47cc3d2bf6a.css","style"] +0:{"P":null,"b":"yktCwlUAti3Mjyq9KNNBy","p":"","c":["","utils","dsMDh6647ZGkOLyv60QE","OGwW8ufEw6nWPQSaliNX","games","tetris",""],"i":false,"f":[[["",{"children":["utils",{"children":["dsMDh6647ZGkOLyv60QE",{"children":["OGwW8ufEw6nWPQSaliNX",{"children":["games",{"children":["tetris",{"children":["__PAGE__",{}]}]}]}]}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9128b47cc3d2bf6a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","suppressHydrationWarning":true,"children":["$","body",null,{"className":"antialiased __className_9dae3d","children":[["$","$L2",null,{"attribute":"class","defaultTheme":"system","enableSystem":true,"disableTransitionOnChange":true,"children":["$","$L3",null,{"children":["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[],[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}],["$","$L6",null,{}]]}]}]]}],{"children":["utils",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","utils","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["dsMDh6647ZGkOLyv60QE",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","utils","children","dsMDh6647ZGkOLyv60QE","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["OGwW8ufEw6nWPQSaliNX",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","utils","children","dsMDh6647ZGkOLyv60QE","children","OGwW8ufEw6nWPQSaliNX","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["games",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","utils","children","dsMDh6647ZGkOLyv60QE","children","OGwW8ufEw6nWPQSaliNX","children","games","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["tetris",["$","$1","c",{"children":[null,["$","$L4",null,{"parallelRouterKey":"children","segmentPath":["children","utils","children","dsMDh6647ZGkOLyv60QE","children","OGwW8ufEw6nWPQSaliNX","children","games","children","tetris","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[["$","$L7",null,{"Component":"$8","searchParams":{},"params":{},"promises":["$@9","$@a"]}],null,["$","$Lb",null,{"children":"$Lc"}]]}],{},null,false]},null,false]},null,false]},null,false]},null,false]},null,false]},null,false],["$","$1","h",{"children":[null,["$","$1","4BvYgIneEPkVYt45OMqNP",{"children":[["$","$Ld",null,{"children":"$Le"}],["$","$Lf",null,{"children":"$L10"}],null]}]]}],false]],"m":"$undefined","G":["$11","$undefined"],"s":false,"S":true} 9:{} a:{} 10:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]