ocearo-ui 0.1.16 → 0.1.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/404.html +1 -1
  2. package/__next.__PAGE__.txt +2 -2
  3. package/__next._full.txt +3 -3
  4. package/__next._head.txt +1 -1
  5. package/__next._index.txt +2 -2
  6. package/__next._tree.txt +2 -2
  7. package/_next/static/chunks/04cc0e5e9b2549b5.js +2 -0
  8. package/_next/static/chunks/05498d2aba8ad072.js +1 -0
  9. package/_next/static/chunks/056bb58d7d0223f4.js +1 -0
  10. package/_next/static/chunks/06e0cd4a5af05adb.js +1 -0
  11. package/_next/static/chunks/{c38ea03788f2be0c.js → 0df9a48159a5de95.js} +5 -5
  12. package/_next/static/chunks/{24276a9441b3a17c.js → 2474c03b842c10ab.js} +2 -2
  13. package/_next/static/chunks/290728133a3e7513.js +9 -0
  14. package/_next/static/chunks/{5fa37bbc3bb4edcd.js → 33a3c72f455c2711.js} +1 -1
  15. package/_next/static/chunks/{921d3675605372b8.js → 3b9428693f2cc0d6.js} +1 -1
  16. package/_next/static/chunks/4573d1a032e56240.js +1 -0
  17. package/_next/static/chunks/{1a84975c7599d36f.js → 4974092397cafa41.js} +1 -1
  18. package/_next/static/chunks/{b7cd9a25676911d4.js → 4a440e0aa6a0e7f7.js} +4 -4
  19. package/_next/static/chunks/{0c7febf3d9c056ee.js → 607b77f84fd065f0.js} +12 -12
  20. package/_next/static/chunks/72c822cfe5b6f4f2.js +4 -0
  21. package/_next/static/chunks/8610c545018747f6.css +3 -0
  22. package/_next/static/chunks/8bf2a6eefe03fbc9.js +1 -0
  23. package/_next/static/chunks/{8eb23f0ac435428f.js → a59b67714973a59e.js} +1 -1
  24. package/_next/static/chunks/b08b2ebeb951051c.js +1 -0
  25. package/_next/static/chunks/b9fde64db49c8fdf.js +1 -0
  26. package/_next/static/chunks/ca5d1b461892da4b.js +1 -0
  27. package/_next/static/chunks/{a27836f0b1f77ddb.js → dc7a868e9a2740f1.js} +3 -3
  28. package/_next/static/chunks/e63b192414a38d4f.js +783 -0
  29. package/_next/static/chunks/{530c5a9cb07bfe47.js → ed1a1adcf94d3203.js} +1 -1
  30. package/_next/static/chunks/f0df051aa5b9aee8.js +1 -0
  31. package/_next/static/chunks/turbopack-eb3e32db84948efc.js +4 -0
  32. package/_not-found/__next._full.txt +2 -2
  33. package/_not-found/__next._head.txt +1 -1
  34. package/_not-found/__next._index.txt +2 -2
  35. package/_not-found/__next._not-found.__PAGE__.txt +1 -1
  36. package/_not-found/__next._not-found.txt +1 -1
  37. package/_not-found/__next._tree.txt +2 -2
  38. package/_not-found.html +1 -1
  39. package/_not-found.txt +2 -2
  40. package/index.html +1 -1
  41. package/index.txt +3 -3
  42. package/package.json +11 -3
  43. package/settings/__next._full.txt +19 -0
  44. package/settings/__next._head.txt +6 -0
  45. package/settings/__next._index.txt +5 -0
  46. package/settings/__next._tree.txt +3 -0
  47. package/settings/__next.settings.__PAGE__.txt +9 -0
  48. package/settings/__next.settings.txt +4 -0
  49. package/settings.html +1 -0
  50. package/settings.txt +19 -0
  51. package/_next/static/chunks/1823e19419b12ae6.js +0 -1
  52. package/_next/static/chunks/209be887a3cd714b.js +0 -1
  53. package/_next/static/chunks/50601e46aa311f4e.js +0 -1
  54. package/_next/static/chunks/587d36d3311aba3e.js +0 -1
  55. package/_next/static/chunks/67f54f77fd717350.js +0 -783
  56. package/_next/static/chunks/7f118b65b59f0bb1.js +0 -1
  57. package/_next/static/chunks/81ee481bed3ff827.js +0 -1
  58. package/_next/static/chunks/94128f7a9098814a.js +0 -9
  59. package/_next/static/chunks/b7d4903ad528d0c6.js +0 -5
  60. package/_next/static/chunks/c3e7c45913a0a766.js +0 -1
  61. package/_next/static/chunks/c86a82a0ed86b6f2.js +0 -1
  62. package/_next/static/chunks/de921644e1dc2156.css +0 -3
  63. package/_next/static/chunks/turbopack-67a2be08589a4d64.js +0 -4
  64. /package/_next/static/{1OAeSzdmDSHTKcCCWBdc_ → fEaz-HJDfJbXQ22pI4nGl}/_buildManifest.js +0 -0
  65. /package/_next/static/{1OAeSzdmDSHTKcCCWBdc_ → fEaz-HJDfJbXQ22pI4nGl}/_clientMiddlewareManifest.json +0 -0
  66. /package/_next/static/{1OAeSzdmDSHTKcCCWBdc_ → fEaz-HJDfJbXQ22pI4nGl}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,73064,e=>{"use strict";var t=e.i(43476),s=e.i(71645),a=e.i(88653),l=e.i(46932);e.i(67561);var r=e.i(85709),i=e.i(83402),n=e.i(49721),o=e.i(68757),c=e.i(46991);let d=e=>null==e?null:(e/1e5).toFixed(1),u=e=>null==e?null:Math.round(100*e),m=({label:e,value:s,unit:a,min:l=0,max:r=100,icon:i,warningThreshold:o,criticalThreshold:c,size:d=120,showValue:u=!0})=>{let m=null==s||isNaN(s)?"N/A":s,x="N/A"!==m,h=x?Math.min(100,Math.max(0,(s-l)/(r-l)*100)):0,p=x?void 0!==c&&s>=c?"var(--color-oRed)":void 0!==o&&s>=o?"var(--color-oYellow)":"var(--color-oGreen)":"var(--color-oGray)";return(0,t.jsxs)("div",{className:"tesla-card p-2 tesla-hover flex flex-col items-center justify-center",children:[(0,t.jsxs)("div",{className:"relative",style:{width:d,height:d},children:[(0,t.jsxs)("svg",{style:{width:d,height:d},className:"transform -rotate-90",viewBox:"0 0 100 100",children:[(0,t.jsx)("circle",{cx:"50",cy:"50",r:"40",fill:"none",stroke:"var(--hud-border)",strokeWidth:"6"}),(0,t.jsx)("circle",{cx:"50",cy:"50",r:"40",fill:"none",stroke:p,strokeWidth:"6",strokeLinecap:"round",strokeDasharray:`${2*Math.PI*40}`,strokeDashoffset:`${x?2*Math.PI*40*(1-h/100):2*Math.PI*40}`,className:"transition-all duration-1000 cubic-bezier(0.4, 0, 0.2, 1)"})]}),(0,t.jsxs)("div",{className:"absolute inset-0 flex flex-col items-center justify-center",children:[i&&(0,t.jsx)(n.FontAwesomeIcon,{icon:i,className:"text-hud-muted text-sm mb-1"}),u&&(0,t.jsx)("div",{className:`text-2xl font-black tracking-tighter gliding-value ${x?"text-hud-main":"text-hud-muted"} ${h>=90||c&&s>=c?"animate-soft-pulse":""}`,children:m}),u&&x&&a&&(0,t.jsx)("div",{className:"text-xs font-black text-hud-secondary uppercase tracking-widest",children:a})]})]}),(0,t.jsx)("div",{className:"text-hud-muted text-xs font-black mt-1 text-center uppercase tracking-widest",children:e})]})},x=({label:e,value:s,unit:a,min:l=0,max:r=100,icon:i,warningThreshold:o,criticalThreshold:c,showMinMax:d=!1})=>{let u=null==s||isNaN(s)?"N/A":`${s}${a?` ${a}`:""}`,m="N/A"!==u,x=m?Math.min(100,Math.max(0,(s-l)/(r-l)*100)):0;return(0,t.jsxs)("div",{className:"tesla-card p-3 tesla-hover",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,t.jsxs)("div",{className:"flex items-center text-hud-muted text-xs font-black uppercase tracking-widest",children:[i&&(0,t.jsx)(n.FontAwesomeIcon,{icon:i,className:"mr-2 fa-fw opacity-50"}),e]}),(0,t.jsx)("div",{className:`font-black text-lg gliding-value ${m?"text-hud-main":"text-hud-dim"} ${x>=90||c&&s>=c?"animate-soft-pulse":""}`,children:u})]}),(0,t.jsx)("div",{className:"relative w-full bg-hud-elevated rounded-full h-1.5 overflow-hidden",children:(0,t.jsx)("div",{className:`h-full rounded-full transition-all duration-1000 cubic-bezier(0.4, 0, 0.2, 1) ${!m?"bg-hud-elevated":void 0!==c&&s>=c?"bg-oRed":void 0!==o&&s>=o?"bg-oYellow":"bg-oGreen"}`,style:{width:`${x}%`}})}),d&&(0,t.jsxs)("div",{className:"flex justify-between text-xs font-black text-hud-dim mt-2 uppercase tracking-tighter",children:[(0,t.jsx)("span",{children:l}),(0,t.jsx)("span",{children:r})]})]})},h=({label:e,value:s,unit:a,icon:l,warningThreshold:r,criticalThreshold:i,reversed:o=!1})=>{let c=null==s||isNaN(s)?"N/A":s,d="N/A"!==c;return(0,t.jsxs)("div",{className:"tesla-card p-3 tesla-hover flex items-center justify-between",children:[(0,t.jsxs)("div",{className:"flex items-center text-hud-muted text-xs font-black uppercase tracking-widest",children:[l&&(0,t.jsx)(n.FontAwesomeIcon,{icon:l,className:"mr-2 fa-fw opacity-50"}),e]}),(0,t.jsx)("div",{className:`font-black text-lg gliding-value ${(()=>{if(!d)return"text-hud-dim";if(o){if(void 0!==i&&s<=i)return"text-oRed";if(void 0!==r&&s<=r)return"text-oYellow"}else{if(void 0!==i&&s>=i)return"text-oRed";if(void 0!==r&&s>=r)return"text-oYellow"}return"text-oGreen"})()} ${i&&(o?s<=i:s>=i)?"animate-soft-pulse":""}`,children:"N/A"!==c?`${c}${a?` ${a}`:""}`:"N/A"})]})},p=({label:e,value:s,unit:a,icon:l,max:r=100,warningThreshold:i,criticalThreshold:o})=>{let c=null==s||isNaN(s)?"N/A":Math.round(s),d="N/A"!==c,u=d?Math.min(100,s/r*100):0;return(0,t.jsxs)("div",{className:"tesla-card p-4 text-center tesla-hover",children:[l&&(0,t.jsx)(n.FontAwesomeIcon,{icon:l,className:"text-lg text-hud-muted mb-2 opacity-50"}),(0,t.jsx)("div",{className:`text-4xl font-black mb-1 tracking-tighter gliding-value ${!d?"text-hud-muted":void 0!==o&&s>=o?"text-oRed":void 0!==i&&s>=i?"text-oYellow":"text-oGreen"} ${u>=90||o&&s>=o?"animate-soft-pulse":""}`,children:c}),d&&a&&(0,t.jsx)("div",{className:"text-hud-secondary text-xs font-black uppercase tracking-widest mb-2",children:a}),(0,t.jsx)("div",{className:"text-hud-muted text-xs font-black uppercase tracking-widest mb-3",children:e}),(0,t.jsx)("div",{className:"w-full bg-hud-elevated rounded-full h-1 overflow-hidden shadow-inner",children:(0,t.jsx)("div",{className:`h-full rounded-full transition-all duration-1000 cubic-bezier(0.4, 0, 0.2, 1) ${d?o&&s>=o?"bg-oRed":i&&s>=i?"bg-oYellow":"bg-oGreen":"bg-hud-elevated"}`,style:{width:`${u}%`}})})]})};e.i(85269);var g=e.i(22831);let f=({isOpen:e,onClose:a,onSave:l,currentEngineHours:r=null,lastRefillEngineHours:i=null,loading:c=!1})=>{let{t:d}=(0,g.useTranslation)(),[u,m]=(0,s.useState)({liters:"",cost:"",additive:!1,engineHours:"",hoursSinceLastRefill:""}),[x,h]=(0,s.useState)({});(0,s.useEffect)(()=>{if(e){let e=null!==r?Math.round(10*r)/10:"",t="";null!==r&&null!==i&&(t=Math.round((r-i)*10)/10),m({liters:"",cost:"",additive:!1,engineHours:e,hoursSinceLastRefill:t}),h({})}},[e,r,i]);let p=(e,t)=>{m(s=>({...s,[e]:t})),x[e]&&h(t=>({...t,[e]:null}))};return e?(0,t.jsx)("div",{className:"fixed inset-0 bg-hud-bg/60 backdrop-blur-sm flex items-center justify-center z-50",onClick:a,children:(0,t.jsxs)("div",{className:"bg-hud-bg backdrop-blur-xl rounded-3xl p-6 sm:p-8 max-w-md w-full mx-4 shadow-2xl border border-hud max-h-[90vh] overflow-y-auto",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex justify-between items-center mb-8",children:[(0,t.jsxs)("h3",{className:"text-xl font-black text-hud-main flex items-center tracking-tight",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faGasPump,className:"mr-3 text-oYellow"}),d("fuelLog.logFuelRefill")]}),(0,t.jsx)("button",{onClick:a,className:"w-10 h-10 rounded-full flex items-center justify-center text-hud-secondary hover:text-hud-main hover:bg-hud-elevated transition-all duration-300",disabled:c,children:(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faTimes,size:"lg"})})]}),(0,t.jsxs)("form",{onSubmit:e=>{let t;if(e.preventDefault(),t={},(!u.liters||0>=parseFloat(u.liters))&&(t.liters=d("fuelLog.errorLiters")),""!==u.cost&&0>parseFloat(u.cost)&&(t.cost=d("fuelLog.errorCost")),(!u.engineHours||0>parseFloat(u.engineHours))&&(t.engineHours=d("fuelLog.errorEngineHours")),h(t),0!==Object.keys(t).length)return;let s=""!==u.cost?parseFloat(u.cost):null;l({liters:parseFloat(u.liters),cost:s,additive:u.additive,engineHours:parseFloat(u.engineHours),hoursSinceLastRefill:u.hoursSinceLastRefill?parseFloat(u.hoursSinceLastRefill):null,previousEngineHours:i})},className:"space-y-6",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-xs font-black uppercase tracking-widest text-hud-secondary mb-2 flex items-center",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faGasPump,className:"mr-2 text-oBlue"}),d("fuelLog.litersAdded")]}),(0,t.jsx)("input",{type:"number",step:"0.1",min:"0",value:u.liters,onChange:e=>p("liters",e.target.value),className:`w-full bg-hud-elevated text-hud-main px-4 py-3 rounded-xl border ${x.liters?"border-red-500":"border-hud"} focus:border-oBlue focus:outline-none transition-all duration-300`,placeholder:"Ex: 50",disabled:c}),x.liters&&(0,t.jsx)("p",{className:"text-red-400 text-xs mt-2 font-medium",children:x.liters})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-xs font-black uppercase tracking-widest text-hud-secondary mb-2 flex items-center",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faEuroSign,className:"mr-2 text-oGreen"}),d("fuelLog.cost")," ",(0,t.jsxs)("span",{className:"text-hud-dim font-normal normal-case ml-1",children:["(",d("fuelLog.optional"),")"]})]}),(0,t.jsx)("input",{type:"number",step:"0.01",min:"0",value:u.cost,onChange:e=>p("cost",e.target.value),className:`w-full bg-hud-elevated text-hud-main px-4 py-3 rounded-xl border ${x.cost?"border-red-500":"border-hud"} focus:border-oBlue focus:outline-none transition-all duration-300`,placeholder:"Ex: 85.50",disabled:c}),x.cost&&(0,t.jsx)("p",{className:"text-red-400 text-xs mt-2 font-medium",children:x.cost})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-xs font-black uppercase tracking-widest text-hud-secondary mb-2 flex items-center",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faClock,className:"mr-2 text-oYellow"}),d("fuelLog.currentEngineHours")]}),(0,t.jsx)("input",{type:"number",step:"0.1",min:"0",value:u.engineHours,onChange:e=>(e=>{let t=parseFloat(e),s=u.hoursSinceLastRefill;if(!isNaN(t)&&null!==i){let e=Math.round((t-i)*10)/10;e>=0&&(s=e)}m(t=>({...t,engineHours:e,hoursSinceLastRefill:s})),x.engineHours&&h(e=>({...e,engineHours:null}))})(e.target.value),className:`w-full bg-hud-elevated text-hud-main px-4 py-3 rounded-xl border ${x.engineHours?"border-red-500":"border-hud"} focus:border-oBlue focus:outline-none transition-all duration-300`,placeholder:"Ex: 245.5",disabled:c}),x.engineHours&&(0,t.jsx)("p",{className:"text-red-400 text-xs mt-2 font-medium",children:x.engineHours}),null!==r&&(0,t.jsxs)("p",{className:"text-hud-dim text-xs mt-2 font-medium",children:[d("fuelLog.signalkValue")," ",Math.round(10*r)/10," h"]}),null===r&&(0,t.jsx)("p",{className:"text-hud-dim text-xs mt-2 font-medium",children:d("fuelLog.noSignalkHours")})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("label",{className:"block text-xs font-black uppercase tracking-widest text-hud-secondary mb-2 flex items-center",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faClock,className:"mr-2 text-hud-dim"}),d("fuelLog.hoursSinceLastRefill")]}),(0,t.jsx)("input",{type:"number",step:"0.1",min:"0",value:u.hoursSinceLastRefill,onChange:e=>p("hoursSinceLastRefill",e.target.value),className:"w-full bg-hud-elevated text-hud-main px-4 py-3 rounded-xl border border-hud focus:border-oBlue focus:outline-none transition-all duration-300 disabled:opacity-60",placeholder:"Ex: 25.5",disabled:c||null!==i&&""!==u.hoursSinceLastRefill}),null!==i&&(0,t.jsxs)("p",{className:"text-hud-dim text-xs mt-2 font-medium",children:[d("fuelLog.lastRefillAt")," ",Math.round(10*i)/10," h"]})]}),(0,t.jsxs)("div",{className:"flex items-center p-1",children:[(0,t.jsx)("input",{type:"checkbox",id:"additive",checked:u.additive,onChange:e=>p("additive",e.target.checked),className:"w-5 h-5 rounded border-hud bg-hud-elevated text-oBlue focus:ring-oBlue transition-all duration-300",disabled:c}),(0,t.jsxs)("label",{htmlFor:"additive",className:"ml-3 text-sm font-bold text-hud-secondary flex items-center cursor-pointer hover:text-hud-main transition-colors duration-300",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faFlask,className:"mr-2 text-purple-400 opacity-70"}),d("fuelLog.additiveAdded")]})]}),(0,t.jsxs)("div",{className:"flex justify-end space-x-4 pt-6 border-t border-hud",children:[(0,t.jsx)("button",{type:"button",onClick:a,className:"px-6 py-3 bg-hud-elevated hover:bg-hud-bg text-hud-main font-bold rounded-xl transition-all duration-300",disabled:c,children:d("fuelLog.cancel")}),(0,t.jsx)("button",{type:"submit",className:"px-8 py-3 bg-oBlue hover:bg-blue-600 text-hud-main font-bold rounded-xl transition-all duration-300 flex items-center disabled:opacity-50 shadow-lg shadow-oBlue/20",disabled:c,children:c?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"animate-spin mr-3 font-normal",children:"⏳"}),d("fuelLog.saving")]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faSave,className:"mr-2"}),d("fuelLog.save")]})})]})]})]})}):null};var b=e.i(48390);e.s(["default",0,()=>{let e,v,j,{t:N}=(0,g.useTranslation)(),w=i.default.get("debugMode"),[k,y]=(0,s.useState)("0"),[T,L]=(0,s.useState)("engine"),[C,R]=(0,s.useState)([]),[A,F]=(0,s.useState)(!1),M=(0,s.useMemo)(()=>{let e=[],t=["revolutions","runTime","coolantTemperature","temperature","exhaustTemperature","coolantPressure","boostPressure","oilPressure","oilTemperature","fuel.rate","fuel.pressure","load","torque","intakeManifoldTemperature","tilt","state","transmission.gear","transmission.oilPressure","transmission.oilTemperature"];return["0","1","port","main","starboard"].forEach(s=>{t.forEach(t=>{e.push(`propulsion.${s}.${t}`)})}),e.push("electrical.batteries.0.voltage","electrical.batteries.0.current","electrical.batteries.1.voltage","electrical.batteries.1.current","electrical.alternators.0.voltage","electrical.alternators.1.voltage","electrical.alternators.0.current","electrical.alternators.1.current","tanks.fuel.0.currentLevel","tanks.fuel.0.capacity"),e},[]),S=(0,r.useSignalKPaths)(M),P=(0,r.useSignalKPath)("navigation.position"),E=(0,s.useCallback)(e=>S[e]??null,[S]),$=(0,s.useCallback)(()=>{let e=[];for(let t=0;t<=1;t++){let s=E(`propulsion.${t}.revolutions`),a=E(`propulsion.${t}.runTime`);0===t&&null===s&&null===a?(s=E("propulsion.port.revolutions")??E("propulsion.main.revolutions"),a=E("propulsion.port.runTime")??E("propulsion.main.runTime")):1===t&&null===s&&null===a&&(s=E("propulsion.starboard.revolutions"),a=E("propulsion.starboard.runTime")),(null!==s||null!==a||w)&&e.push({id:t.toString(),name:0===t?N("motor.portMainEngine"):N("motor.starboardEngine"),hasData:null!==s||null!==a})}return e.length>0?e:[{id:"0",name:N("motor.mainEngine"),hasData:!1}]},[E,w]);(0,s.useEffect)(()=>{R($())},[$]);let I=(0,s.useCallback)(e=>{let t=E(`propulsion.${k}.${e}`);return null===t&&"0"===k?t=E(`propulsion.port.${e}`)??E(`propulsion.main.${e}`):null===t&&"1"===k&&(t=E(`propulsion.starboard.${e}`)),t},[k,E]),H=(0,s.useMemo)(()=>{var e,t;let s=I("coolantTemperature")??I("temperature")??E("propulsion.port.temperature"),a=I("exhaustTemperature")??E("propulsion.main.exhaustTemperature");return{rpm:null==(e=I("revolutions"))?null:60*e,runTime:(e=>{if(null==e)return null;let t=(e/3600).toFixed(1);return`${t} h`})(I("runTime")),coolantTemp:c.kelvinToCelsius(s),coolantPressure:d(I("coolantPressure")),boostPressure:d(I("boostPressure")),oilPressure:d(I("oilPressure")),oilTemp:c.kelvinToCelsius(I("oilTemperature")),fuelRate:null==(t=I("fuel.rate"))?null:Math.round(1e3*t*3600),fuelPressure:d(I("fuel.pressure")),load:u(I("load")),torque:u(I("torque")),exhaustTemp:c.kelvinToCelsius(a),intakeTemp:c.kelvinToCelsius(I("intakeManifoldTemperature")),tilt:c.radiansToDegrees(I("tilt")),state:I("state"),gear:I("transmission.gear"),transOilPressure:d(I("transmission.oilPressure")),transOilTemp:c.kelvinToCelsius(I("transmission.oilTemperature")),batteryVoltage:E("electrical.batteries.0.voltage"),batteryCurrent:E("electrical.batteries.0.current"),alternatorVoltage:E(`electrical.alternators.${k}.voltage`)??E("propulsion.port.alternatorVoltage"),alternatorCurrent:E(`electrical.alternators.${k}.current`)??E("propulsion.port.alternatorCurrent"),fuelLevel:u(E("tanks.fuel.0.currentLevel")),fuelCapacity:E("tanks.fuel.0.capacity")}},[k,I,E]),B=E("electrical.batteries.1.current"),G="number"==typeof B?Math.round(10*B)/10:B,O=I("runTime"),Y=null!==O?O/3600:null,[z,V]=(0,s.useState)(!1),[D,U]=(0,s.useState)([]),[q,W]=(0,s.useState)(null),[K,Z]=(0,s.useState)(!1),[J,Q]=(0,s.useState)(null),X=(0,s.useCallback)(async()=>{Z(!0),Q(null);try{let e=await (0,b.fetchFuelLogEntries)();U(e);let t=(0,b.calculateFuelStats)(e,H.fuelCapacity);W(t)}catch(e){Q((0,b.handleOcearoCoreError)(e,"Fuel log fetch")),U([]),W(null)}finally{Z(!1)}},[H.fuelCapacity]);(0,s.useEffect)(()=>{"fuel"===T&&X()},[T,X]);let _=(0,s.useCallback)(async e=>{Z(!0),Q(null);try{await (0,b.addFuelLogEntry)(e,P),V(!1),await X()}catch(e){Q((0,b.handleOcearoCoreError)(e,"Fuel log save"))}finally{Z(!1)}},[P,X]),ee=q?.lastRefill?.engineHours||null,et=(0,b.estimateTankLevel)(D,Y,H.fuelCapacity,null!==H.fuelLevel?H.fuelLevel/100:null);return(0,t.jsxs)("div",{className:"flex flex-col h-full bg-rightPaneBg overflow-hidden",children:[(0,t.jsx)("div",{className:"flex border-b border-hud bg-hud-bg",children:[{id:"engine",label:N("motor.engine"),icon:o.faCar},{id:"transmission",label:N("motor.transmission"),icon:o.faCogs},{id:"electrical",label:N("motor.electrical"),icon:o.faBolt},{id:"fuel",label:N("motor.fuel"),icon:o.faGasPump},{id:"warnings",label:N("motor.warnings"),icon:o.faExclamationTriangle}].map(e=>(0,t.jsxs)("button",{onClick:()=>L(e.id),className:`flex-1 py-3 px-2 text-xs font-black uppercase flex items-center justify-center transition-all duration-500 ${T===e.id?"text-oGreen border-b-2 border-oGreen bg-hud-bg":"text-hud-secondary hover:text-hud-main tesla-hover"}`,children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:e.icon,className:"mr-2"}),e.label]},e.id))}),(0,t.jsx)("div",{className:"flex-1 min-h-0 overflow-auto scrollbar-hide",children:(0,t.jsx)(a.AnimatePresence,{mode:"wait",children:(0,t.jsxs)(l.motion.div,{initial:{opacity:0,x:10},animate:{opacity:1,x:0},exit:{opacity:0,x:-10},transition:{duration:.4,ease:"easeOut"},className:"p-3",children:["engine"===T&&(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("div",{className:"flex justify-between items-center mb-2",children:[(0,t.jsxs)("h2",{className:"text-sm font-black text-hud-main uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-2 h-2 rounded-full bg-oBlue mr-3 animate-soft-pulse"}),N("motor.propulsionSystems")]}),(0,t.jsx)("select",{value:k,onChange:e=>y(e.target.value),className:"bg-hud-elevated px-4 py-1.5 rounded-sm text-hud-main text-xs font-black uppercase border border-hud focus:outline-none tesla-hover transition-all duration-500 shadow-soft",children:C.map(e=>(0,t.jsx)("option",{value:e.id,className:"bg-oNight",children:e.name},e.id))})]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-2",children:[(0,t.jsx)(p,{label:N("motor.propulsionSpeed"),value:H.rpm,unit:"RPM",icon:o.faTachometerAlt,max:4e3,warningThreshold:3e3,criticalThreshold:3500}),(0,t.jsxs)("div",{className:"tesla-card p-4 text-center tesla-hover flex flex-col justify-center bg-hud-bg border border-hud",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faClock,className:"text-lg text-hud-dim mb-2 opacity-50"}),(0,t.jsx)("div",{className:"text-3xl font-black text-hud-main leading-none gliding-value tracking-tighter",children:H.runTime||N("common.na")}),(0,t.jsx)("div",{className:"text-hud-secondary text-xs font-black uppercase mt-2 tracking-[0.2em]",children:N("motor.serviceHours")})]}),(0,t.jsx)(m,{label:N("motor.load"),value:H.load,unit:"%",min:0,max:100,icon:o.faChartLine,warningThreshold:70,criticalThreshold:85,size:100}),(0,t.jsx)(m,{label:N("motor.torque"),value:H.torque,unit:"%",min:0,max:100,icon:o.faRotate,warningThreshold:75,criticalThreshold:90,size:100})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("h3",{className:"text-xs font-black text-hud-main mb-1 uppercase tracking-widest flex items-center",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faTemperatureHalf,className:"mr-2 text-orange-500 text-xs"}),N("motor.temperatureSection")]}),(0,t.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-2",children:[(0,t.jsx)(m,{label:N("motor.coolant"),value:H.coolantTemp,unit:"°C",min:0,max:120,icon:o.faSnowflake,warningThreshold:85,criticalThreshold:95,size:90}),(0,t.jsx)(m,{label:N("motor.oil"),value:H.oilTemp,unit:"°C",min:0,max:150,icon:o.faOilCan,warningThreshold:110,criticalThreshold:130,size:90}),(0,t.jsx)(m,{label:N("motor.exhaust"),value:H.exhaustTemp,unit:"°C",min:0,max:600,icon:o.faFire,warningThreshold:450,criticalThreshold:550,size:90}),(0,t.jsx)(m,{label:N("motor.intake"),value:H.intakeTemp,unit:"°C",min:0,max:100,icon:o.faArrowDown,warningThreshold:60,criticalThreshold:80,size:90})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("h3",{className:"text-xs font-black text-hud-main mb-1 uppercase tracking-widest flex items-center",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faGaugeHigh,className:"mr-2 text-oBlue text-xs"}),N("motor.pressures")]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-2",children:[(0,t.jsx)(x,{label:N("motor.oil"),value:H.oilPressure,unit:"bar",min:0,max:6,icon:o.faOilCan,warningThreshold:2.5,criticalThreshold:2,showMinMax:!0}),(0,t.jsx)(x,{label:N("motor.coolant"),value:H.coolantPressure,unit:"bar",min:0,max:3,icon:o.faWater,showMinMax:!0}),(0,t.jsx)(x,{label:N("motor.boost"),value:H.boostPressure,unit:"bar",min:0,max:2.5,icon:o.faArrowUp,showMinMax:!0}),(0,t.jsx)(x,{label:N("motor.fuel"),value:H.fuelPressure,unit:"bar",min:0,max:5,icon:o.faGasPump,warningThreshold:2.5,criticalThreshold:2,showMinMax:!0})]})]}),(0,t.jsxs)("div",{className:"grid grid-cols-3 gap-2",children:[(0,t.jsx)(h,{label:N("motor.state"),value:H.state||N("motor.unknown"),icon:o.faCar}),(0,t.jsx)(h,{label:N("motor.tilt"),value:H.tilt,unit:"°",icon:o.faRuler}),(0,t.jsx)(h,{label:N("motor.fuelRate"),value:H.fuelRate,unit:"L/h",icon:o.faGasPump})]})]}),"transmission"===T&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-3",children:[(0,t.jsxs)("div",{className:"tesla-card p-4 text-center tesla-hover flex flex-col justify-center bg-hud-bg border border-hud",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faCogs,className:"text-xl text-hud-dim mb-2 opacity-50"}),(0,t.jsx)("div",{className:"text-hud-secondary text-xs font-black uppercase mb-2 tracking-[0.2em]",children:N("motor.transmissionGear")}),(0,t.jsx)("div",{className:"text-3xl font-black text-hud-main uppercase gliding-value tracking-tighter",children:-1===H.gear?N("motor.reverse"):0===H.gear?N("motor.neutral"):H.gear?`${N("motor.forward")} ${H.gear}`:N("common.na")})]}),(0,t.jsx)(m,{label:N("motor.oilPressure"),value:H.transOilPressure,unit:"bar",min:0,max:6,icon:o.faOilCan,warningThreshold:2.5,criticalThreshold:2,size:120}),(0,t.jsx)(m,{label:N("motor.oilTemperature"),value:H.transOilTemp,unit:"°C",min:0,max:120,icon:o.faTemperatureHalf,warningThreshold:85,criticalThreshold:95,size:120})]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[(0,t.jsx)(x,{label:N("motor.hydraulicPressure"),value:H.transOilPressure,unit:"bar",min:0,max:6,icon:o.faOilCan,warningThreshold:2.5,criticalThreshold:2,showMinMax:!0}),(0,t.jsx)(x,{label:N("motor.thermalAnalysis"),value:H.transOilTemp,unit:"°C",min:0,max:120,icon:o.faTemperatureHalf,warningThreshold:85,criticalThreshold:95,showMinMax:!0})]})]}),"electrical"===T&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("h3",{className:"text-xs font-black text-hud-main mb-2 uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full bg-oBlue mr-3"}),N("motor.energyDistribution")]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsx)("h4",{className:"text-xs font-black text-hud-muted uppercase tracking-widest px-1",children:N("motor.ignitionBank")}),(0,t.jsx)(x,{label:N("motor.voltageNode"),value:H.batteryVoltage,unit:"V",min:10,max:15,icon:o.faBatteryFull,warningThreshold:11.8,criticalThreshold:11.5,showMinMax:!0}),(0,t.jsx)(x,{label:N("motor.amperageLoad"),value:H.batteryCurrent,unit:"A",min:-50,max:50,icon:o.faBolt,showMinMax:!0})]}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsx)("h4",{className:"text-xs font-black text-hud-muted uppercase tracking-widest px-1",children:N("motor.serviceBank")}),(0,t.jsx)(x,{label:N("motor.voltageNode"),value:E("electrical.batteries.1.voltage"),unit:"V",min:10,max:15,icon:o.faBatteryFull,warningThreshold:11.8,criticalThreshold:11.5,showMinMax:!0}),(0,t.jsx)(x,{label:N("motor.amperageLoad"),value:G,unit:"A",min:-50,max:50,icon:o.faBolt,showMinMax:!0})]})]})]}),(0,t.jsxs)("div",{children:[(0,t.jsxs)("h3",{className:"text-xs font-black text-hud-main mb-2 uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full bg-oYellow mr-3"}),N("motor.chargingSystems")]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[(0,t.jsx)(m,{label:N("motor.alternatorOutput"),value:H.alternatorVoltage,unit:"V",min:10,max:16,icon:o.faBolt,warningThreshold:15,criticalThreshold:15.5,size:120}),(0,t.jsx)(m,{label:N("motor.chargeIntensity"),value:H.alternatorCurrent,unit:"A",min:0,max:100,icon:o.faBolt,size:120})]})]})]}),"fuel"===T&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex justify-between items-center mb-2",children:[(0,t.jsxs)("h3",{className:"text-sm font-black text-hud-main uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-2 h-2 rounded-full bg-oYellow mr-3 animate-soft-pulse"}),N("motor.resourceManagement")]}),(0,t.jsxs)("button",{onClick:()=>V(!0),className:"bg-oBlue hover:bg-blue-600 text-hud-main px-4 py-1.5 rounded-sm text-xs font-black uppercase tracking-widest transition-all duration-500 flex items-center shadow-lg shadow-oBlue/20",disabled:K,children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faPlus,className:"mr-2 text-xs"}),N("motor.registerRefill")]})]}),J&&(0,t.jsxs)("div",{className:"tesla-card bg-oRed/10 border border-oRed/20 text-oRed p-4 rounded-sm text-xs font-black uppercase tracking-widest animate-soft-pulse",children:[N("motor.nodeError")," ",J]}),(0,t.jsxs)("div",{className:"grid grid-cols-3 gap-3",children:[(0,t.jsx)(m,{label:N("motor.consumptionRate"),value:H.fuelRate,unit:"L/h",min:0,max:50,icon:o.faGasPump,size:100}),(0,t.jsx)(m,{label:N("motor.injectionPressure"),value:H.fuelPressure,unit:"bar",min:0,max:5,icon:o.faGaugeHigh,warningThreshold:2.5,criticalThreshold:2,size:100}),(0,t.jsx)(m,{label:N("motor.primaryReservoir"),value:H.fuelLevel,unit:"%",min:0,max:100,icon:o.faFlask,warningThreshold:30,criticalThreshold:15,size:100})]}),(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("h3",{className:"text-xs font-black text-hud-main mb-1 uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full bg-oBlue mr-3"}),N("motor.telemetryDetails")]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[(0,t.jsx)(x,{label:N("motor.levelPercentage"),value:H.fuelLevel,unit:"%",min:0,max:100,icon:o.faFlask,warningThreshold:30,criticalThreshold:15,showMinMax:!0}),(0,t.jsx)(h,{label:N("motor.totalCapacity"),value:H.fuelCapacity?.toFixed(0),unit:"L",icon:o.faFlask})]}),null!==H.fuelLevel&&null!==H.fuelCapacity&&(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:[(0,t.jsx)(h,{label:N("motor.currentVolume"),value:(H.fuelLevel/100*H.fuelCapacity).toFixed(0),unit:"L",icon:o.faFlask}),(0,t.jsx)(h,{label:N("motor.enduranceEst"),value:H.fuelRate>0&&null!==H.fuelLevel&&null!==H.fuelCapacity?(H.fuelLevel/100*H.fuelCapacity/H.fuelRate).toFixed(1):"N/A",unit:H.fuelRate>0?"h":"",icon:o.faClock})]})]}),et&&(0,t.jsxs)("div",{className:"tesla-card p-4 bg-hud-bg border border-hud",children:[(0,t.jsxs)("h3",{className:"text-xs font-black text-hud-main mb-3 uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full bg-oGreen mr-3"}),N("motor.predictiveAnalysis")]}),(0,t.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-3",children:[null!==et.litersRemaining&&(0,t.jsx)(h,{label:N("motor.estimatedVolume"),value:et.litersRemaining,unit:"L",icon:o.faGasPump}),null!==et.levelPercentage&&(0,t.jsx)(x,{label:N("motor.computedLevel"),value:et.levelPercentage,unit:"%",min:0,max:100,icon:o.faFlask,warningThreshold:30,criticalThreshold:15,reversed:!0}),null!==et.hoursRemaining&&(0,t.jsx)(h,{label:N("motor.timeToExhaustion"),value:et.hoursRemaining,unit:"h",icon:o.faClock,warningThreshold:10,criticalThreshold:5,reversed:!0})]})]}),D.length>0&&(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsxs)("h3",{className:"text-xs font-black text-hud-main mb-1 uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full bg-hud-muted mr-3"}),N("motor.logHistory")]}),(0,t.jsx)("div",{className:"tesla-card overflow-hidden shadow-soft transition-all duration-500 border border-hud bg-hud-bg",children:(0,t.jsxs)("table",{className:"w-full text-xs font-black uppercase tracking-widest",children:[(0,t.jsx)("thead",{className:"bg-hud-elevated",children:(0,t.jsxs)("tr",{children:[(0,t.jsx)("th",{className:"text-hud-muted p-4 text-left font-black",children:N("motor.meridianDate")}),(0,t.jsx)("th",{className:"text-hud-muted p-4 text-left font-black",children:N("motor.liters")}),(0,t.jsx)("th",{className:"text-hud-muted p-4 text-left font-black",children:N("motor.refillCost")}),(0,t.jsx)("th",{className:"text-hud-muted p-4 text-left font-black",children:N("motor.hmr")}),(0,t.jsx)("th",{className:"text-hud-muted p-4 text-left font-black",children:N("motor.avgConsumption")}),(0,t.jsx)("th",{className:"text-hud-muted p-4 text-left font-black",children:N("motor.fuelAutonomy")}),(0,t.jsx)("th",{className:"text-hud-muted p-4 text-center font-black",children:N("motor.additive")})]})}),(0,t.jsx)("tbody",{className:"divide-y divide-hud",children:D.slice(-5).reverse().map((e,s)=>{let a=e.fuel||{},l=a.liters&&a.hoursSinceLastRefill&&a.hoursSinceLastRefill>0?Math.round(a.liters/a.hoursSinceLastRefill*10)/10:null,r=l&&H.fuelCapacity&&a.liters?Math.round(a.liters/l*10)/10:null;return(0,t.jsxs)("tr",{className:"text-hud-main tesla-hover group",children:[(0,t.jsx)("td",{className:"p-4 opacity-60 group-hover:opacity-100 transition-opacity",children:new Date(e.datetime).toLocaleDateString("fr-FR",{day:"2-digit",month:"2-digit",year:"numeric"})}),(0,t.jsxs)("td",{className:"p-4 gliding-value text-oBlue",children:[a.liters," L"]}),(0,t.jsx)("td",{className:"p-4 gliding-value",children:null!=a.cost?`${a.cost} €`:"—"}),(0,t.jsxs)("td",{className:"p-4 gliding-value opacity-60",children:[a.engineHoursAtRefill," h"]}),(0,t.jsx)("td",{className:"p-4 gliding-value text-oYellow",children:null!=l?`${l} L/h`:"—"}),(0,t.jsx)("td",{className:"p-4 gliding-value text-oGreen",children:null!=r?`${r} h`:"—"}),(0,t.jsx)("td",{className:"p-4 text-center",children:a.additive?(0,t.jsx)("span",{className:"text-purple-400 animate-soft-pulse",children:(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faFlask,className:"text-xs"})}):(0,t.jsx)("span",{className:"text-hud-dim font-black",children:"—"})})]},e.datetime||s)})})]})})]})]}),"warnings"===T&&(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"tesla-card p-4 bg-hud-bg border border-hud",children:[(0,t.jsxs)("div",{className:"flex justify-between items-center mb-4",children:[(0,t.jsxs)("h3",{className:"text-sm font-black text-hud-main uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-2 h-2 rounded-full bg-oRed mr-3 animate-soft-pulse"}),N("motor.warningsSummary")]}),(0,t.jsx)("button",{onClick:()=>F(!A),className:"px-4 py-1.5 text-xs bg-hud-elevated text-hud-secondary rounded-sm font-black uppercase tracking-widest tesla-hover border border-hud transition-all duration-500 shadow-soft",children:N("motor.notificationLog")})]}),(e=[],["chargeIndicator","checkEngine","commError","eGRSystem","emergencyStopMode","highBoostPressure","lowCoolantLevel","lowFuelPressure","lowOilLevel","lowOilPressure","lowSystemVoltage","maintenanceNeeded","neutralStartProtect","overTemperature","powerReduction","preheatIndicator","revLimitExceeded","shuttingDown","subOrSecondaryThrottle","throttlePositionSensor","warningLevel1","warningLevel2","waterFlow","waterInFuel"].forEach(t=>{let s=E(`notifications.propulsion.${k}.${t}`);s||"0"!==k?s||"1"!==k||(s=E(`notifications.propulsion.starboard.${t}`)):s=E(`notifications.propulsion.port.${t}`)??E(`notifications.propulsion.main.${t}`),s&&"object"==typeof s&&e.push({type:t,...s})}),v=e.some(e=>"alert"===e.state||"warn"===e.state),j=e.some(e=>"alarm"===e.state||"emergency"===e.state),0===e.filter(e=>"normal"!==e.state).length?(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"text-center text-hud-secondary py-8 tesla-card bg-hud-bg border border-hud",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faCheckCircle,className:"text-4xl mb-4 text-oGreen/40 animate-soft-pulse"}),(0,t.jsx)("h4",{className:"text-sm font-black text-hud-main uppercase tracking-[0.2em]",children:N("motor.allSystemsNominal")}),(0,t.jsx)("p",{className:"text-xs font-black mt-2 uppercase text-hud-muted tracking-widest opacity-60",children:N("motor.noActiveWarnings")})]}),A&&e.length>0&&(0,t.jsxs)("div",{className:"tesla-card p-4 bg-oGreen/5 border border-oGreen/10 shadow-soft",children:[(0,t.jsxs)("h4",{className:"text-xs font-black text-oGreen mb-3 uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full bg-oGreen mr-3"}),"HEALTHY TELEMETRY NODES (",e.length,")"]}),(0,t.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-3 text-xs font-black uppercase tracking-tight",children:e.map((e,s)=>(0,t.jsxs)("div",{className:"text-hud-secondary flex items-center bg-hud-elevated p-3 rounded-sm tesla-hover border border-hud",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:o.faCheckCircle,className:"text-oGreen mr-3 text-xs opacity-40"}),(0,t.jsx)("span",{className:"truncate opacity-60",children:e.type.replace(/([A-Z])/g," $1").trim()})]},s))})]})]}):(0,t.jsxs)("div",{className:"space-y-8",children:[j&&(0,t.jsxs)("div",{className:"bg-oRed/5 border border-oRed/20 p-6 rounded-sm shadow-soft animate-soft-pulse",children:[(0,t.jsxs)("h4",{className:"text-xs font-black text-oRed mb-6 uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full bg-oRed mr-3"}),"CRITICAL NODE ALARMS"]}),(0,t.jsx)("div",{className:"space-y-4",children:e.filter(e=>"alarm"===e.state||"emergency"===e.state).map((e,s)=>(0,t.jsxs)("div",{className:"text-hud-main text-xs font-black uppercase tracking-widest bg-oRed/10 p-4 rounded-sm tesla-hover border border-oRed/20",children:[(0,t.jsxs)("div",{className:"flex justify-between items-center",children:[(0,t.jsx)("span",{className:"text-xs",children:e.type.replace(/([A-Z])/g," $1").trim()}),(0,t.jsx)("span",{className:"text-oRed text-xs font-black tracking-tighter",children:"ALERT LEVEL 3"})]}),(0,t.jsx)("div",{className:"text-hud-secondary text-xs mt-3 normal-case font-black tracking-normal opacity-80",children:e.message})]},s))})]}),v&&(0,t.jsxs)("div",{className:"bg-oYellow/5 border border-oYellow/20 p-6 rounded-sm shadow-soft",children:[(0,t.jsxs)("h4",{className:"text-xs font-black text-oYellow mb-6 uppercase tracking-[0.2em] flex items-center",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full bg-oYellow mr-3"}),"SYSTEM ANOMALIES"]}),(0,t.jsx)("div",{className:"space-y-4",children:e.filter(e=>"alert"===e.state||"warn"===e.state).map((e,s)=>(0,t.jsxs)("div",{className:"text-hud-main text-xs font-black uppercase tracking-widest bg-oYellow/10 p-4 rounded-sm tesla-hover border border-oYellow/20",children:[(0,t.jsxs)("div",{className:"flex justify-between items-center",children:[(0,t.jsx)("span",{className:"text-xs",children:e.type.replace(/([A-Z])/g," $1").trim()}),(0,t.jsx)("span",{className:"text-oYellow text-xs font-black tracking-tighter",children:"WARN LEVEL 2"})]}),(0,t.jsx)("div",{className:"text-hud-secondary text-xs mt-3 normal-case font-black tracking-normal opacity-80",children:e.message})]},s))})]})]}))]}),w&&(0,t.jsxs)("div",{className:"tesla-card p-8 bg-hud-bg border border-hud",children:[(0,t.jsxs)("h3",{className:"text-xs font-black text-oBlue mb-6 uppercase tracking-[0.3em] flex items-center",children:[(0,t.jsx)("div",{className:"w-1.5 h-1.5 rounded-full bg-oBlue mr-3"}),"Internal Debug Telemetry"]}),(0,t.jsx)("div",{className:"space-y-4 text-xs font-black font-mono text-hud-secondary uppercase tracking-widest",children:(0,t.jsxs)("div",{className:"grid grid-cols-2 gap-x-8 gap-y-2",children:[(0,t.jsx)("span",{className:"text-hud-muted",children:"PATH.REVOLUTIONS:"}),(0,t.jsxs)("span",{className:"text-oGreen opacity-80",children:["propulsion.",k,".revs"]}),(0,t.jsx)("span",{className:"text-hud-muted",children:"VALUE.REVOLUTIONS:"}),(0,t.jsx)("span",{className:"text-hud-main gliding-value",children:E(`propulsion.${k}.revolutions`)??"NULL"}),(0,t.jsx)("div",{className:"col-span-2 my-4 border-t border-hud"}),(0,t.jsx)("span",{className:"text-hud-muted",children:"PATH.TEMPERATURE:"}),(0,t.jsxs)("span",{className:"text-oGreen opacity-80",children:["propulsion.",k,".temp"]}),(0,t.jsx)("span",{className:"text-hud-muted",children:"VALUE.TEMPERATURE:"}),(0,t.jsx)("span",{className:"text-hud-main gliding-value",children:E(`propulsion.${k}.coolantTemperature`)??"NULL"})]})})]})]})]},T)})}),(0,t.jsx)(f,{isOpen:z,onClose:()=>V(!1),onSave:_,currentEngineHours:Y,lastRefillEngineHours:ee,loading:K})]})}],73064)},8161,e=>{e.n(e.i(73064))}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,52822,(e,t,r)=>{"use strict";var a=e.r(71645),n=e.r(2239),i="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},o=n.useSyncExternalStore,l=a.useRef,s=a.useEffect,u=a.useMemo,c=a.useDebugValue;r.useSyncExternalStoreWithSelector=function(e,t,r,a,n){var d=l(null);if(null===d.current){var p={hasValue:!1,value:null};d.current=p}else p=d.current;var m=o(e,(d=u(function(){function e(e){if(!s){if(s=!0,o=e,e=a(e),void 0!==n&&p.hasValue){var t=p.value;if(n(t,e))return l=t}return l=e}if(t=l,i(o,e))return t;var r=a(e);return void 0!==n&&n(t,r)?(o=e,t):(o=e,l=r)}var o,l,s=!1,u=void 0===r?null:r;return[function(){return e(t())},null===u?void 0:function(){return e(u())}]},[t,r,a,n]))[0],d[1]);return s(function(){p.hasValue=!0,p.value=m},[m]),c(m),m}},30224,(e,t,r)=>{"use strict";t.exports=e.r(52822)},15080,e=>{"use strict";var t=e.i(40859);e.s(["useThree",()=>t.C])},35637,e=>{"use strict";e.s(["drawAttitudeInstrument",0,(e,t)=>{let{w:r,h:a,roll:n,pitch:i,yaw:o,nightMode:l=!1,showHeading:s=!0,showPitchScale:u=!0,showRollScale:c=!0,showBezel:d=!0,compact:p=!1,colors:m={}}=t,h=r/2,g=a/2,C=Math.min(r,a)/(p?80:200),f=e=>e*C,S=e=>Math.max(.5,e*C),M={sky:l?"#1a0000":m.sky||"#87CEEB",sea:l?"#000000":m.sea||m.oGray2||"#424242",horizon:l?m.oNight||"#ef4444":m.oYellow||"#ffbe00",bezel:l?"#330000":m.bezel||m.oGray2||"#424242",text:l?m.oNight||"#ef4444":m.text||"var(--hud-text-main)",boat:l?m.oNight||"#ef4444":m.boat||m.oYellow||"#ffbe00",rollScale:l?m.oNight||"#ef4444":m.rollScale||m.oRed||"#cc000c",headingMarks:l?m.oNight||"#ef4444":m.headingMarks||"var(--hud-text-main)",pitchMarks:l?"rgba(239, 68, 68, 0.6)":m.pitchMarks||"var(--hud-text-secondary)",...m};e.clearRect(0,0,r,a);let T=Math.min(h,g)-f(p?5:20);if(e.save(),e.beginPath(),e.arc(h,g,T,0,2*Math.PI),e.clip(),e.translate(h,g),e.rotate(n*Math.PI/180),e.translate(0,i/90*T*(p?1:1.5)),e.fillStyle=M.sky,e.fillRect(-r,-(2*a),2*r,2*a),e.fillStyle=M.sea,e.fillRect(-r,0,2*r,2*a),e.beginPath(),e.moveTo(-r,0),e.lineTo(r,0),e.strokeStyle=M.horizon,e.lineWidth=S(p?1.5:3),e.stroke(),u){e.strokeStyle=M.pitchMarks,e.fillStyle=M.pitchMarks,e.font=`${Math.round(f(p?8:12))}px sans-serif`,e.textAlign="center",e.textBaseline="middle";let t=p?60:30,r=p?20:10;for(let a=-t;a<=t;a+=r){if(0===a)continue;let t=-(a/90)*T*(p?1:1.5),r=f(Math.abs(a)%20!=0||p?p?15:30:50);e.beginPath(),e.moveTo(-r/2,t),e.lineTo(r/2,t),e.lineWidth=S(Math.abs(a)%20==0?2:1),e.stroke(),p&&Math.abs(a)%40!=0||(e.fillText(Math.abs(a)+"°",r/2+f(10),t),e.fillText(Math.abs(a)+"°",-r/2-f(10),t))}}if(e.restore(),d&&(e.beginPath(),e.arc(h,g,Math.min(h,g)-f(p?2:8),0,2*Math.PI),e.strokeStyle=M.bezel,e.lineWidth=S(p?2:12),e.stroke(),p||(e.beginPath(),e.arc(h,g,T,0,2*Math.PI),e.strokeStyle=M.bezel,e.lineWidth=S(2),e.stroke())),s){e.save(),e.translate(h,g),e.font=`bold ${Math.round(f(p?7:10))}px sans-serif`,e.textAlign="center";let t=p?15:10;for(let r=0;r<360;r+=t){let t=(r-o-90)*Math.PI/180,a=T+f(2*!!p),n=r%(p?90:30)==0,i=f(n?p?5:20:p?2:10),s=a*Math.cos(t),u=a*Math.sin(t),c=(a-i)*Math.cos(t),d=(a-i)*Math.sin(t);if(e.beginPath(),e.moveTo(s,u),e.lineTo(c,d),e.strokeStyle=n?M.headingMarks:l?"rgba(239, 68, 68, 0.4)":M.pitchMarks,e.lineWidth=S(n?1.5:p?.5:2),e.stroke(),n&&!p){let n=["N","E","S","W"];if(r%90==0){let i=(a-f(35))*Math.cos(t),o=(a-f(35))*Math.sin(t)+f(4);e.fillStyle=M.text,e.fillText(n[r/90],i,o)}}}e.restore()}if(e.save(),e.translate(h,g),p?(e.rotate(o*Math.PI/180),e.beginPath(),e.moveTo(0,-f(10)),e.lineTo(f(5),f(5)),e.lineTo(-f(5),f(5)),e.closePath(),e.fillStyle=M.boat,e.fill(),e.strokeStyle=l?M.boat:m.oGray||"#989898",e.lineWidth=S(1),e.stroke()):(e.beginPath(),e.moveTo(0,-f(25)),e.lineTo(f(12),f(12)),e.lineTo(0,f(8)),e.lineTo(-f(12),f(12)),e.closePath(),e.fillStyle=M.horizon,e.fill(),e.strokeStyle=M.text,e.lineWidth=S(2),e.stroke(),e.beginPath(),e.arc(0,0,f(3),0,2*Math.PI),e.fillStyle=M.text,e.fill()),e.restore(),c&&!p){e.save(),e.translate(h,g),e.rotate(n*Math.PI/180);for(let t=-60;t<=60;t+=30){if(0===t)continue;let r=t*Math.PI/180,a=Math.min(h,g)-f(30),n=a*Math.sin(r),i=-a*Math.cos(r),o=(a-f(15))*Math.sin(r),l=-(a-f(15))*Math.cos(r);e.beginPath(),e.moveTo(n,i),e.lineTo(o,l),e.strokeStyle=M.rollScale,e.lineWidth=S(3),e.stroke()}e.restore()}}])},32615,13035,e=>{"use strict";var t=e.i(43476),r=e.i(71645),a=e.i(31067),n=e.i(90072);function i(e,t){let n=e+"Geometry";return r.forwardRef(({args:e,children:i,...o},l)=>{let s=r.useRef(null);return r.useImperativeHandle(l,()=>s.current),r.useLayoutEffect(()=>void(null==t||t(s.current))),r.createElement("mesh",(0,a.default)({ref:s},o),r.createElement(n,{attach:"geometry",args:e}),i)})}let o=i("sphere"),l=i("ring");e.s(["Ring",()=>l,"Sphere",()=>o],13035);var s=e.i(16196),u=e.i(67561),c=e.i(85709),d=e.i(83402);let p=r.default.memo(({radius:e,isOuter:a,markerColorPrimary:i,markerColorGreen:l,markerColorRed:u})=>{let c=(0,r.useMemo)(()=>{let r=[];for(let c=0;c<360;c+=10){let d=n.MathUtils.degToRad(c-90),p=c%30==0,m=a?p?.35:.15:p?.25:.1,h=(e+.5*m+.2)*Math.cos(d),g=(e+.5*m+.2)*Math.sin(d),C=a&&c>0&&c<61,f=a&&c>=300&&c<360,S=C?l:f?u:i;if(!a&&p){let e;e=0===c?"N":90===c?"E":180===c?"S":270===c?"W":c.toString(),r.push((0,t.jsx)(s.Text,{characters:"NESW0123456789",position:[h,.02,g],color:i,fontSize:.6,rotation:[-Math.PI/2,0,Math.PI/2-d],font:"fonts/Roboto-Bold.ttf",anchorY:"middle",fillOpacity:.9,children:e},`text-${c}`))}else r.push((0,t.jsx)(o,{args:[m/2,16,16],position:[h,0,g],children:(0,t.jsx)("meshBasicMaterial",{color:S,transparent:!0,opacity:p?.8:.4})},`marker-${a?"outer":"inner"}-${c}`))}return r},[e,a,i,l,u]);return(0,t.jsx)(t.Fragment,{children:c})});p.displayName="StaticMarkers";let m=r.default.memo(({innerRadius:e,outerRadius:r,dialColor:a,opacity:i=1,transparent:o=!1})=>(0,t.jsx)(l,{args:[e,r,64],rotation:[Math.PI/2,0,0],children:(0,t.jsx)("meshBasicMaterial",{color:a,side:n.DoubleSide,transparent:o,opacity:i,depthWrite:!1})}));m.displayName="StaticRing";let h=({outerRadius:e,innerRadius:a})=>{let{nightMode:n}=(0,u.useOcearoContext)(),i=n?u.oNight:"#ffffff",o=u.oGreen,l=u.oRed,s=(0,r.useMemo)(()=>["navigation.headingTrue","navigation.headingMagnetic","navigation.courseOverGroundTrue","navigation.courseOverGroundMagnetic"],[]),h=(0,c.useSignalKPaths)(s),g=(0,r.useMemo)(()=>{let e=d.default.get("preferredHeadingPath")||"courseOverGroundTrue",t=h[`navigation.${e}`];if(null!=t)return t;let r=h["navigation.headingTrue"]||h["navigation.headingMagnetic"];return h["navigation.courseOverGroundTrue"]||h["navigation.courseOverGroundMagnetic"]||r||0},[h]),C=n?"#000000":"#0a0a0a",f=d.default.get("compassNorthUp"),S=(0,r.useMemo)(()=>({innerRadius:a,outerRadius:e,dialColor:C,markerColorPrimary:i,markerColorGreen:o,markerColorRed:l}),[a,e,C,i,o,l]);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("group",{rotation:[0,g+(f?0:Math.PI),0],children:[(0,t.jsx)(m,{innerRadius:S.innerRadius,outerRadius:S.outerRadius,dialColor:S.dialColor,transparent:!0,opacity:.1}),(0,t.jsx)(p,{radius:S.innerRadius,isOuter:!1,markerColorPrimary:S.markerColorPrimary,markerColorGreen:S.markerColorGreen,markerColorRed:S.markerColorRed})]}),(0,t.jsxs)("group",{children:[(0,t.jsx)(m,{innerRadius:S.innerRadius+.8,outerRadius:S.outerRadius+.8,dialColor:S.dialColor,transparent:!0,opacity:.15}),(0,t.jsx)(p,{radius:S.innerRadius+.8,isOuter:!0,markerColorPrimary:S.markerColorPrimary,markerColorGreen:S.markerColorGreen,markerColorRed:S.markerColorRed})]})]})};h.displayName="CompassDial";var g=e.i(84226);e.s(["default",0,({visible:e=!0,position:r,scale:a})=>!e||d.default.get("hide3DCompass")?null:(0,t.jsxs)("group",{position:r,scale:a,children:[(0,t.jsx)(h,{outerRadius:5.6,innerRadius:5}),(0,t.jsx)(g.default,{outerRadius:5.6+1.1})]})],32615)},62588,e=>{"use strict";var t=e.i(43476),r=e.i(71645);e.i(49018);var a=e.i(83402),n=e.i(66799),i=e.i(67561),o=e.i(85709);let l=(0,r.createContext)(),s=(e,t,r,a)=>{let n=r.split(".").reduce((e,t)=>e?.[t],a);void 0!==n&&(e[t]=n)};e.s(["AISProvider",0,({children:e})=>{let[u,c]=(0,r.useState)({}),[d,p]=(0,r.useState)([]),m=(0,r.useRef)(null),h=(0,r.useRef)({}),g=(0,r.useRef)(null),{convertLatLonToXY:C}=(0,i.useOcearoContext)(),f=(0,o.useSignalKPath)("navigation.position"),S=(0,r.useRef)(),M=(0,r.useRef)(),T=(0,r.useCallback)(e=>{if(e.latitude&&e.longitude&&f&&f.latitude&&f.longitude&&e.latitude!=f.latitude&&e.longitude!=f.longitude){let t=a.default.get("aisLengthScalingFactor")||.7,{x:r,y:n}=C({lat:e.latitude,lon:e.longitude},{lat:f.latitude,lon:f.longitude});e.sceneX=r*t,e.sceneZ=-n*t,e.rotationAngleY=(e=>{if(!e)return 0;let t=e.heading||e.headingMagnetic;return e.cog||e.cogMagnetic||t||0})(e),e.distanceMeters=Math.sqrt(r**2+n**2);let i=e.visible;return e.visible=e.distanceMeters>10&&e.distanceMeters<=5e3,i!==e.visible}return!1},[f,C]),v=(0,r.useCallback)(()=>{g.current&&(clearTimeout(g.current),g.current=null);let e=Object.values(u).filter(e=>e.visible);((e,t)=>{if(e.length!==t.length)return!0;let r=new Set(e.map(e=>e.mmsi)),a=new Set(t.map(e=>e.mmsi));if(r.size!==a.size)return!0;for(let e of r)if(!a.has(e))return!0;return!1})(d,e)&&(console.log(`Updating visible vessels: ${e.length} vessels`),p(e))},[u,d]),G=(0,r.useCallback)(()=>{g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{v(),g.current=null},100)},[v]);return(0,r.useEffect)(()=>{S.current=T,M.current=G},[T,G]),(0,r.useEffect)(()=>{let e=setInterval(()=>{let e=Date.now();c(t=>{let r=!1,a={...t};return(Object.entries(a).forEach(([t,n])=>{e-n.lastUpdate>6e5&&(delete a[t],r=!0)}),r)?(G(),a):t})},6e4);return()=>clearInterval(e)},[G]),(0,r.useEffect)(()=>{let e=async e=>{console.log("Fetching static vessel info...");try{let t=await e.API().then(e=>e.vessels()),r=Object.entries(t).map(([e,t])=>{let r={mmsi:e};return s(r,"name","name",t),s(r,"latitude","navigation.position.value.latitude",t),s(r,"longitude","navigation.position.value.longitude",t),s(r,"sog","navigation.speedOverGround.value",t),s(r,"cog","navigation.courseOverGroundTrue.value",t),s(r,"cogMagnetic","navigation.courseOverGroundMagnetic.value",t),s(r,"heading","navigation.headingTrue.value",t),s(r,"headingMagnetic","navigation.headingMagnetic.value",t),s(r,"length","design.length.value.overall",t),s(r,"beam","design.beam.value",t),s(r,"callsign","communication.callsignVhf",t),s(r,"shipType","design.aisShipType.value.id",t),r.lastUpdate=Date.now(),r.distanceMeters=null,r.sceneX=null,r.sceneZ=null,r.rotationAngleY=null,r.visible=!1,r}),a={};if(r.forEach(e=>{e.mmsi&&"self"!=e.mmsi&&(null!==e.latitude||null!==e.longitude)&&(S.current(e),a[e.mmsi]=e)}),console.log(`Fetched ${r.length} vessels.`),Object.keys(a).length>0){console.log(`Initializing AIS data with ${Object.keys(a).length} vessels`),c(a);let e=Object.values(a).filter(e=>e.visible);p(e),console.log(`${e.length} vessels initially visible`)}}catch(e){console.error("Error fetching static info:",e)}},t=e=>{if(!e?.updates)return void console.warn("Missing delta or no updates:",e);let t=e.context.replace("vessels.","");t?(h.current[t]=Date.now(),c(r=>{let a=r[t]||{mmsi:t,name:"unknown",latitude:null,longitude:null,sog:null,cog:null,cogMagnetic:null,heading:null,headingMagnetic:null,distanceMeters:null,sceneX:null,sceneZ:null,rotationAngleY:null,visible:!1,length:null,beam:null,shipType:null};a.lastUpdate=h.current[t];let n=!1,i=!1;return e.updates.forEach(e=>{e.values&&e.values.forEach(e=>{switch(e.path){case"name":a.name=e.value;break;case"navigation.position":a.latitude=e.value.latitude,a.longitude=e.value.longitude,n=!0;break;case"navigation.speedOverGround":a.sog=e.value;break;case"navigation.courseOverGroundTrue":a.cog=e.value,i=!0;break;case"navigation.courseOverGroundMagnetic":a.cogMagnetic=e.value,i=!0;break;case"navigation.headingTrue":a.heading=e.value,i=!0;break;case"navigation.headingMagnetic":a.headingMagnetic=e.value,i=!0}})}),(S.current(a)||n||i)&&M.current(),{...r,[t]:a}})):console.warn("Update without MMSI context:",e)};return(async()=>{try{let{signalkUrl:r}=a.default.getAll();if(console.log("SignalK URL:",r),!r)throw Error("SignalK URL is undefined or invalid.");console.log(`Connecting to SignalK at: ${r}`);let i=n.default.createClient({subscriptions:[{context:"vessels.*",subscribe:[{path:"navigation.position"},{path:"navigation.speedOverGround"},{path:"navigation.courseOverGroundTrue"},{path:"navigation.courseOverGroundMagnetic"},{path:"navigation.headingTrue"},{path:"navigation.headingMagnetic"}]}]});m.current=i,await i.connect(),console.log("SignalK client connected."),await e(i),i.on("delta",t)}catch(e){console.warn("Error connecting to SignalK:",e)}})(),()=>{console.log("Disconnecting SignalK client..."),g.current&&clearTimeout(g.current),m.current?.disconnect()}},[]),(0,t.jsx)(l.Provider,{value:{aisData:u,vesselIds:d},children:e})},"useAIS",0,()=>(0,r.useContext)(l)])},75056,e=>{"use strict";var t=e.i(40859),r=e.i(71645),a=e.i(8560),n=e.i(90072);e.s(["ACESFilmicToneMapping",()=>n.ACESFilmicToneMapping,"AddEquation",()=>n.AddEquation,"AddOperation",()=>n.AddOperation,"AdditiveAnimationBlendMode",()=>n.AdditiveAnimationBlendMode,"AdditiveBlending",()=>n.AdditiveBlending,"AgXToneMapping",()=>n.AgXToneMapping,"AlphaFormat",()=>n.AlphaFormat,"AlwaysCompare",()=>n.AlwaysCompare,"AlwaysDepth",()=>n.AlwaysDepth,"AlwaysStencilFunc",()=>n.AlwaysStencilFunc,"AmbientLight",()=>n.AmbientLight,"AnimationAction",()=>n.AnimationAction,"AnimationClip",()=>n.AnimationClip,"AnimationLoader",()=>n.AnimationLoader,"AnimationMixer",()=>n.AnimationMixer,"AnimationObjectGroup",()=>n.AnimationObjectGroup,"AnimationUtils",()=>n.AnimationUtils,"ArcCurve",()=>n.ArcCurve,"ArrayCamera",()=>n.ArrayCamera,"ArrowHelper",()=>n.ArrowHelper,"AttachedBindMode",()=>n.AttachedBindMode,"Audio",()=>n.Audio,"AudioAnalyser",()=>n.AudioAnalyser,"AudioContext",()=>n.AudioContext,"AudioListener",()=>n.AudioListener,"AudioLoader",()=>n.AudioLoader,"AxesHelper",()=>n.AxesHelper,"BackSide",()=>n.BackSide,"BasicDepthPacking",()=>n.BasicDepthPacking,"BasicShadowMap",()=>n.BasicShadowMap,"BatchedMesh",()=>n.BatchedMesh,"Bone",()=>n.Bone,"BooleanKeyframeTrack",()=>n.BooleanKeyframeTrack,"Box2",()=>n.Box2,"Box3",()=>n.Box3,"Box3Helper",()=>n.Box3Helper,"BoxGeometry",()=>n.BoxGeometry,"BoxHelper",()=>n.BoxHelper,"BufferAttribute",()=>n.BufferAttribute,"BufferGeometry",()=>n.BufferGeometry,"BufferGeometryLoader",()=>n.BufferGeometryLoader,"ByteType",()=>n.ByteType,"Cache",()=>n.Cache,"Camera",()=>n.Camera,"CameraHelper",()=>n.CameraHelper,"CanvasTexture",()=>n.CanvasTexture,"CapsuleGeometry",()=>n.CapsuleGeometry,"CatmullRomCurve3",()=>n.CatmullRomCurve3,"CineonToneMapping",()=>n.CineonToneMapping,"CircleGeometry",()=>n.CircleGeometry,"ClampToEdgeWrapping",()=>n.ClampToEdgeWrapping,"Clock",()=>n.Clock,"Color",()=>n.Color,"ColorKeyframeTrack",()=>n.ColorKeyframeTrack,"ColorManagement",()=>n.ColorManagement,"CompressedArrayTexture",()=>n.CompressedArrayTexture,"CompressedCubeTexture",()=>n.CompressedCubeTexture,"CompressedTexture",()=>n.CompressedTexture,"CompressedTextureLoader",()=>n.CompressedTextureLoader,"ConeGeometry",()=>n.ConeGeometry,"ConstantAlphaFactor",()=>n.ConstantAlphaFactor,"ConstantColorFactor",()=>n.ConstantColorFactor,"Controls",()=>n.Controls,"CubeCamera",()=>n.CubeCamera,"CubeDepthTexture",()=>n.CubeDepthTexture,"CubeReflectionMapping",()=>n.CubeReflectionMapping,"CubeRefractionMapping",()=>n.CubeRefractionMapping,"CubeTexture",()=>n.CubeTexture,"CubeTextureLoader",()=>n.CubeTextureLoader,"CubeUVReflectionMapping",()=>n.CubeUVReflectionMapping,"CubicBezierCurve",()=>n.CubicBezierCurve,"CubicBezierCurve3",()=>n.CubicBezierCurve3,"CubicInterpolant",()=>n.CubicInterpolant,"CullFaceBack",()=>n.CullFaceBack,"CullFaceFront",()=>n.CullFaceFront,"CullFaceFrontBack",()=>n.CullFaceFrontBack,"CullFaceNone",()=>n.CullFaceNone,"Curve",()=>n.Curve,"CurvePath",()=>n.CurvePath,"CustomBlending",()=>n.CustomBlending,"CustomToneMapping",()=>n.CustomToneMapping,"CylinderGeometry",()=>n.CylinderGeometry,"Cylindrical",()=>n.Cylindrical,"Data3DTexture",()=>n.Data3DTexture,"DataArrayTexture",()=>n.DataArrayTexture,"DataTexture",()=>n.DataTexture,"DataTextureLoader",()=>n.DataTextureLoader,"DataUtils",()=>n.DataUtils,"DecrementStencilOp",()=>n.DecrementStencilOp,"DecrementWrapStencilOp",()=>n.DecrementWrapStencilOp,"DefaultLoadingManager",()=>n.DefaultLoadingManager,"DepthFormat",()=>n.DepthFormat,"DepthStencilFormat",()=>n.DepthStencilFormat,"DepthTexture",()=>n.DepthTexture,"DetachedBindMode",()=>n.DetachedBindMode,"DirectionalLight",()=>n.DirectionalLight,"DirectionalLightHelper",()=>n.DirectionalLightHelper,"DiscreteInterpolant",()=>n.DiscreteInterpolant,"DodecahedronGeometry",()=>n.DodecahedronGeometry,"DoubleSide",()=>n.DoubleSide,"DstAlphaFactor",()=>n.DstAlphaFactor,"DstColorFactor",()=>n.DstColorFactor,"DynamicCopyUsage",()=>n.DynamicCopyUsage,"DynamicDrawUsage",()=>n.DynamicDrawUsage,"DynamicReadUsage",()=>n.DynamicReadUsage,"EdgesGeometry",()=>n.EdgesGeometry,"EllipseCurve",()=>n.EllipseCurve,"EqualCompare",()=>n.EqualCompare,"EqualDepth",()=>n.EqualDepth,"EqualStencilFunc",()=>n.EqualStencilFunc,"EquirectangularReflectionMapping",()=>n.EquirectangularReflectionMapping,"EquirectangularRefractionMapping",()=>n.EquirectangularRefractionMapping,"Euler",()=>n.Euler,"EventDispatcher",()=>n.EventDispatcher,"ExternalTexture",()=>n.ExternalTexture,"ExtrudeGeometry",()=>n.ExtrudeGeometry,"FileLoader",()=>n.FileLoader,"Float16BufferAttribute",()=>n.Float16BufferAttribute,"Float32BufferAttribute",()=>n.Float32BufferAttribute,"FloatType",()=>n.FloatType,"Fog",()=>n.Fog,"FogExp2",()=>n.FogExp2,"FramebufferTexture",()=>n.FramebufferTexture,"FrontSide",()=>n.FrontSide,"Frustum",()=>n.Frustum,"FrustumArray",()=>n.FrustumArray,"GLBufferAttribute",()=>n.GLBufferAttribute,"GLSL1",()=>n.GLSL1,"GLSL3",()=>n.GLSL3,"GreaterCompare",()=>n.GreaterCompare,"GreaterDepth",()=>n.GreaterDepth,"GreaterEqualCompare",()=>n.GreaterEqualCompare,"GreaterEqualDepth",()=>n.GreaterEqualDepth,"GreaterEqualStencilFunc",()=>n.GreaterEqualStencilFunc,"GreaterStencilFunc",()=>n.GreaterStencilFunc,"GridHelper",()=>n.GridHelper,"Group",()=>n.Group,"HalfFloatType",()=>n.HalfFloatType,"HemisphereLight",()=>n.HemisphereLight,"HemisphereLightHelper",()=>n.HemisphereLightHelper,"IcosahedronGeometry",()=>n.IcosahedronGeometry,"ImageBitmapLoader",()=>n.ImageBitmapLoader,"ImageLoader",()=>n.ImageLoader,"ImageUtils",()=>n.ImageUtils,"IncrementStencilOp",()=>n.IncrementStencilOp,"IncrementWrapStencilOp",()=>n.IncrementWrapStencilOp,"InstancedBufferAttribute",()=>n.InstancedBufferAttribute,"InstancedBufferGeometry",()=>n.InstancedBufferGeometry,"InstancedInterleavedBuffer",()=>n.InstancedInterleavedBuffer,"InstancedMesh",()=>n.InstancedMesh,"Int16BufferAttribute",()=>n.Int16BufferAttribute,"Int32BufferAttribute",()=>n.Int32BufferAttribute,"Int8BufferAttribute",()=>n.Int8BufferAttribute,"IntType",()=>n.IntType,"InterleavedBuffer",()=>n.InterleavedBuffer,"InterleavedBufferAttribute",()=>n.InterleavedBufferAttribute,"Interpolant",()=>n.Interpolant,"InterpolateDiscrete",()=>n.InterpolateDiscrete,"InterpolateLinear",()=>n.InterpolateLinear,"InterpolateSmooth",()=>n.InterpolateSmooth,"InterpolationSamplingMode",()=>n.InterpolationSamplingMode,"InterpolationSamplingType",()=>n.InterpolationSamplingType,"InvertStencilOp",()=>n.InvertStencilOp,"KeepStencilOp",()=>n.KeepStencilOp,"KeyframeTrack",()=>n.KeyframeTrack,"LOD",()=>n.LOD,"LatheGeometry",()=>n.LatheGeometry,"Layers",()=>n.Layers,"LessCompare",()=>n.LessCompare,"LessDepth",()=>n.LessDepth,"LessEqualCompare",()=>n.LessEqualCompare,"LessEqualDepth",()=>n.LessEqualDepth,"LessEqualStencilFunc",()=>n.LessEqualStencilFunc,"LessStencilFunc",()=>n.LessStencilFunc,"Light",()=>n.Light,"LightProbe",()=>n.LightProbe,"Line",()=>n.Line,"Line3",()=>n.Line3,"LineBasicMaterial",()=>n.LineBasicMaterial,"LineCurve",()=>n.LineCurve,"LineCurve3",()=>n.LineCurve3,"LineDashedMaterial",()=>n.LineDashedMaterial,"LineLoop",()=>n.LineLoop,"LineSegments",()=>n.LineSegments,"LinearFilter",()=>n.LinearFilter,"LinearInterpolant",()=>n.LinearInterpolant,"LinearMipMapLinearFilter",()=>n.LinearMipMapLinearFilter,"LinearMipMapNearestFilter",()=>n.LinearMipMapNearestFilter,"LinearMipmapLinearFilter",()=>n.LinearMipmapLinearFilter,"LinearMipmapNearestFilter",()=>n.LinearMipmapNearestFilter,"LinearSRGBColorSpace",()=>n.LinearSRGBColorSpace,"LinearToneMapping",()=>n.LinearToneMapping,"LinearTransfer",()=>n.LinearTransfer,"Loader",()=>n.Loader,"LoaderUtils",()=>n.LoaderUtils,"LoadingManager",()=>n.LoadingManager,"LoopOnce",()=>n.LoopOnce,"LoopPingPong",()=>n.LoopPingPong,"LoopRepeat",()=>n.LoopRepeat,"MOUSE",()=>n.MOUSE,"Material",()=>n.Material,"MaterialLoader",()=>n.MaterialLoader,"MathUtils",()=>n.MathUtils,"Matrix2",()=>n.Matrix2,"Matrix3",()=>n.Matrix3,"Matrix4",()=>n.Matrix4,"MaxEquation",()=>n.MaxEquation,"Mesh",()=>n.Mesh,"MeshBasicMaterial",()=>n.MeshBasicMaterial,"MeshDepthMaterial",()=>n.MeshDepthMaterial,"MeshDistanceMaterial",()=>n.MeshDistanceMaterial,"MeshLambertMaterial",()=>n.MeshLambertMaterial,"MeshMatcapMaterial",()=>n.MeshMatcapMaterial,"MeshNormalMaterial",()=>n.MeshNormalMaterial,"MeshPhongMaterial",()=>n.MeshPhongMaterial,"MeshPhysicalMaterial",()=>n.MeshPhysicalMaterial,"MeshStandardMaterial",()=>n.MeshStandardMaterial,"MeshToonMaterial",()=>n.MeshToonMaterial,"MinEquation",()=>n.MinEquation,"MirroredRepeatWrapping",()=>n.MirroredRepeatWrapping,"MixOperation",()=>n.MixOperation,"MultiplyBlending",()=>n.MultiplyBlending,"MultiplyOperation",()=>n.MultiplyOperation,"NearestFilter",()=>n.NearestFilter,"NearestMipMapLinearFilter",()=>n.NearestMipMapLinearFilter,"NearestMipMapNearestFilter",()=>n.NearestMipMapNearestFilter,"NearestMipmapLinearFilter",()=>n.NearestMipmapLinearFilter,"NearestMipmapNearestFilter",()=>n.NearestMipmapNearestFilter,"NeutralToneMapping",()=>n.NeutralToneMapping,"NeverCompare",()=>n.NeverCompare,"NeverDepth",()=>n.NeverDepth,"NeverStencilFunc",()=>n.NeverStencilFunc,"NoBlending",()=>n.NoBlending,"NoColorSpace",()=>n.NoColorSpace,"NoNormalPacking",()=>n.NoNormalPacking,"NoToneMapping",()=>n.NoToneMapping,"NormalAnimationBlendMode",()=>n.NormalAnimationBlendMode,"NormalBlending",()=>n.NormalBlending,"NormalGAPacking",()=>n.NormalGAPacking,"NormalRGPacking",()=>n.NormalRGPacking,"NotEqualCompare",()=>n.NotEqualCompare,"NotEqualDepth",()=>n.NotEqualDepth,"NotEqualStencilFunc",()=>n.NotEqualStencilFunc,"NumberKeyframeTrack",()=>n.NumberKeyframeTrack,"Object3D",()=>n.Object3D,"ObjectLoader",()=>n.ObjectLoader,"ObjectSpaceNormalMap",()=>n.ObjectSpaceNormalMap,"OctahedronGeometry",()=>n.OctahedronGeometry,"OneFactor",()=>n.OneFactor,"OneMinusConstantAlphaFactor",()=>n.OneMinusConstantAlphaFactor,"OneMinusConstantColorFactor",()=>n.OneMinusConstantColorFactor,"OneMinusDstAlphaFactor",()=>n.OneMinusDstAlphaFactor,"OneMinusDstColorFactor",()=>n.OneMinusDstColorFactor,"OneMinusSrcAlphaFactor",()=>n.OneMinusSrcAlphaFactor,"OneMinusSrcColorFactor",()=>n.OneMinusSrcColorFactor,"OrthographicCamera",()=>n.OrthographicCamera,"PCFShadowMap",()=>n.PCFShadowMap,"PCFSoftShadowMap",()=>n.PCFSoftShadowMap,"PMREMGenerator",()=>a.PMREMGenerator,"Path",()=>n.Path,"PerspectiveCamera",()=>n.PerspectiveCamera,"Plane",()=>n.Plane,"PlaneGeometry",()=>n.PlaneGeometry,"PlaneHelper",()=>n.PlaneHelper,"PointLight",()=>n.PointLight,"PointLightHelper",()=>n.PointLightHelper,"Points",()=>n.Points,"PointsMaterial",()=>n.PointsMaterial,"PolarGridHelper",()=>n.PolarGridHelper,"PolyhedronGeometry",()=>n.PolyhedronGeometry,"PositionalAudio",()=>n.PositionalAudio,"PropertyBinding",()=>n.PropertyBinding,"PropertyMixer",()=>n.PropertyMixer,"QuadraticBezierCurve",()=>n.QuadraticBezierCurve,"QuadraticBezierCurve3",()=>n.QuadraticBezierCurve3,"Quaternion",()=>n.Quaternion,"QuaternionKeyframeTrack",()=>n.QuaternionKeyframeTrack,"QuaternionLinearInterpolant",()=>n.QuaternionLinearInterpolant,"R11_EAC_Format",()=>n.R11_EAC_Format,"RED_GREEN_RGTC2_Format",()=>n.RED_GREEN_RGTC2_Format,"RED_RGTC1_Format",()=>n.RED_RGTC1_Format,"REVISION",()=>n.REVISION,"RG11_EAC_Format",()=>n.RG11_EAC_Format,"RGBADepthPacking",()=>n.RGBADepthPacking,"RGBAFormat",()=>n.RGBAFormat,"RGBAIntegerFormat",()=>n.RGBAIntegerFormat,"RGBA_ASTC_10x10_Format",()=>n.RGBA_ASTC_10x10_Format,"RGBA_ASTC_10x5_Format",()=>n.RGBA_ASTC_10x5_Format,"RGBA_ASTC_10x6_Format",()=>n.RGBA_ASTC_10x6_Format,"RGBA_ASTC_10x8_Format",()=>n.RGBA_ASTC_10x8_Format,"RGBA_ASTC_12x10_Format",()=>n.RGBA_ASTC_12x10_Format,"RGBA_ASTC_12x12_Format",()=>n.RGBA_ASTC_12x12_Format,"RGBA_ASTC_4x4_Format",()=>n.RGBA_ASTC_4x4_Format,"RGBA_ASTC_5x4_Format",()=>n.RGBA_ASTC_5x4_Format,"RGBA_ASTC_5x5_Format",()=>n.RGBA_ASTC_5x5_Format,"RGBA_ASTC_6x5_Format",()=>n.RGBA_ASTC_6x5_Format,"RGBA_ASTC_6x6_Format",()=>n.RGBA_ASTC_6x6_Format,"RGBA_ASTC_8x5_Format",()=>n.RGBA_ASTC_8x5_Format,"RGBA_ASTC_8x6_Format",()=>n.RGBA_ASTC_8x6_Format,"RGBA_ASTC_8x8_Format",()=>n.RGBA_ASTC_8x8_Format,"RGBA_BPTC_Format",()=>n.RGBA_BPTC_Format,"RGBA_ETC2_EAC_Format",()=>n.RGBA_ETC2_EAC_Format,"RGBA_PVRTC_2BPPV1_Format",()=>n.RGBA_PVRTC_2BPPV1_Format,"RGBA_PVRTC_4BPPV1_Format",()=>n.RGBA_PVRTC_4BPPV1_Format,"RGBA_S3TC_DXT1_Format",()=>n.RGBA_S3TC_DXT1_Format,"RGBA_S3TC_DXT3_Format",()=>n.RGBA_S3TC_DXT3_Format,"RGBA_S3TC_DXT5_Format",()=>n.RGBA_S3TC_DXT5_Format,"RGBDepthPacking",()=>n.RGBDepthPacking,"RGBFormat",()=>n.RGBFormat,"RGBIntegerFormat",()=>n.RGBIntegerFormat,"RGB_BPTC_SIGNED_Format",()=>n.RGB_BPTC_SIGNED_Format,"RGB_BPTC_UNSIGNED_Format",()=>n.RGB_BPTC_UNSIGNED_Format,"RGB_ETC1_Format",()=>n.RGB_ETC1_Format,"RGB_ETC2_Format",()=>n.RGB_ETC2_Format,"RGB_PVRTC_2BPPV1_Format",()=>n.RGB_PVRTC_2BPPV1_Format,"RGB_PVRTC_4BPPV1_Format",()=>n.RGB_PVRTC_4BPPV1_Format,"RGB_S3TC_DXT1_Format",()=>n.RGB_S3TC_DXT1_Format,"RGDepthPacking",()=>n.RGDepthPacking,"RGFormat",()=>n.RGFormat,"RGIntegerFormat",()=>n.RGIntegerFormat,"RawShaderMaterial",()=>n.RawShaderMaterial,"Ray",()=>n.Ray,"Raycaster",()=>n.Raycaster,"RectAreaLight",()=>n.RectAreaLight,"RedFormat",()=>n.RedFormat,"RedIntegerFormat",()=>n.RedIntegerFormat,"ReinhardToneMapping",()=>n.ReinhardToneMapping,"RenderTarget",()=>n.RenderTarget,"RenderTarget3D",()=>n.RenderTarget3D,"RepeatWrapping",()=>n.RepeatWrapping,"ReplaceStencilOp",()=>n.ReplaceStencilOp,"ReverseSubtractEquation",()=>n.ReverseSubtractEquation,"RingGeometry",()=>n.RingGeometry,"SIGNED_R11_EAC_Format",()=>n.SIGNED_R11_EAC_Format,"SIGNED_RED_GREEN_RGTC2_Format",()=>n.SIGNED_RED_GREEN_RGTC2_Format,"SIGNED_RED_RGTC1_Format",()=>n.SIGNED_RED_RGTC1_Format,"SIGNED_RG11_EAC_Format",()=>n.SIGNED_RG11_EAC_Format,"SRGBColorSpace",()=>n.SRGBColorSpace,"SRGBTransfer",()=>n.SRGBTransfer,"Scene",()=>n.Scene,"ShaderChunk",()=>a.ShaderChunk,"ShaderLib",()=>a.ShaderLib,"ShaderMaterial",()=>n.ShaderMaterial,"ShadowMaterial",()=>n.ShadowMaterial,"Shape",()=>n.Shape,"ShapeGeometry",()=>n.ShapeGeometry,"ShapePath",()=>n.ShapePath,"ShapeUtils",()=>n.ShapeUtils,"ShortType",()=>n.ShortType,"Skeleton",()=>n.Skeleton,"SkeletonHelper",()=>n.SkeletonHelper,"SkinnedMesh",()=>n.SkinnedMesh,"Source",()=>n.Source,"Sphere",()=>n.Sphere,"SphereGeometry",()=>n.SphereGeometry,"Spherical",()=>n.Spherical,"SphericalHarmonics3",()=>n.SphericalHarmonics3,"SplineCurve",()=>n.SplineCurve,"SpotLight",()=>n.SpotLight,"SpotLightHelper",()=>n.SpotLightHelper,"Sprite",()=>n.Sprite,"SpriteMaterial",()=>n.SpriteMaterial,"SrcAlphaFactor",()=>n.SrcAlphaFactor,"SrcAlphaSaturateFactor",()=>n.SrcAlphaSaturateFactor,"SrcColorFactor",()=>n.SrcColorFactor,"StaticCopyUsage",()=>n.StaticCopyUsage,"StaticDrawUsage",()=>n.StaticDrawUsage,"StaticReadUsage",()=>n.StaticReadUsage,"StereoCamera",()=>n.StereoCamera,"StreamCopyUsage",()=>n.StreamCopyUsage,"StreamDrawUsage",()=>n.StreamDrawUsage,"StreamReadUsage",()=>n.StreamReadUsage,"StringKeyframeTrack",()=>n.StringKeyframeTrack,"SubtractEquation",()=>n.SubtractEquation,"SubtractiveBlending",()=>n.SubtractiveBlending,"TOUCH",()=>n.TOUCH,"TangentSpaceNormalMap",()=>n.TangentSpaceNormalMap,"TetrahedronGeometry",()=>n.TetrahedronGeometry,"Texture",()=>n.Texture,"TextureLoader",()=>n.TextureLoader,"TextureUtils",()=>n.TextureUtils,"Timer",()=>n.Timer,"TimestampQuery",()=>n.TimestampQuery,"TorusGeometry",()=>n.TorusGeometry,"TorusKnotGeometry",()=>n.TorusKnotGeometry,"Triangle",()=>n.Triangle,"TriangleFanDrawMode",()=>n.TriangleFanDrawMode,"TriangleStripDrawMode",()=>n.TriangleStripDrawMode,"TrianglesDrawMode",()=>n.TrianglesDrawMode,"TubeGeometry",()=>n.TubeGeometry,"UVMapping",()=>n.UVMapping,"Uint16BufferAttribute",()=>n.Uint16BufferAttribute,"Uint32BufferAttribute",()=>n.Uint32BufferAttribute,"Uint8BufferAttribute",()=>n.Uint8BufferAttribute,"Uint8ClampedBufferAttribute",()=>n.Uint8ClampedBufferAttribute,"Uniform",()=>n.Uniform,"UniformsGroup",()=>n.UniformsGroup,"UniformsLib",()=>a.UniformsLib,"UniformsUtils",()=>n.UniformsUtils,"UnsignedByteType",()=>n.UnsignedByteType,"UnsignedInt101111Type",()=>n.UnsignedInt101111Type,"UnsignedInt248Type",()=>n.UnsignedInt248Type,"UnsignedInt5999Type",()=>n.UnsignedInt5999Type,"UnsignedIntType",()=>n.UnsignedIntType,"UnsignedShort4444Type",()=>n.UnsignedShort4444Type,"UnsignedShort5551Type",()=>n.UnsignedShort5551Type,"UnsignedShortType",()=>n.UnsignedShortType,"VSMShadowMap",()=>n.VSMShadowMap,"Vector2",()=>n.Vector2,"Vector3",()=>n.Vector3,"Vector4",()=>n.Vector4,"VectorKeyframeTrack",()=>n.VectorKeyframeTrack,"VideoFrameTexture",()=>n.VideoFrameTexture,"VideoTexture",()=>n.VideoTexture,"WebGL3DRenderTarget",()=>n.WebGL3DRenderTarget,"WebGLArrayRenderTarget",()=>n.WebGLArrayRenderTarget,"WebGLCoordinateSystem",()=>n.WebGLCoordinateSystem,"WebGLCubeRenderTarget",()=>n.WebGLCubeRenderTarget,"WebGLRenderTarget",()=>n.WebGLRenderTarget,"WebGLRenderer",()=>a.WebGLRenderer,"WebGLUtils",()=>a.WebGLUtils,"WebGPUCoordinateSystem",()=>n.WebGPUCoordinateSystem,"WebXRController",()=>n.WebXRController,"WireframeGeometry",()=>n.WireframeGeometry,"WrapAroundEnding",()=>n.WrapAroundEnding,"ZeroCurvatureEnding",()=>n.ZeroCurvatureEnding,"ZeroFactor",()=>n.ZeroFactor,"ZeroSlopeEnding",()=>n.ZeroSlopeEnding,"ZeroStencilOp",()=>n.ZeroStencilOp,"createCanvasElement",()=>n.createCanvasElement,"error",()=>n.error,"getConsoleFunction",()=>n.getConsoleFunction,"log",()=>n.log,"setConsoleFunction",()=>n.setConsoleFunction,"warn",()=>n.warn,"warnOnce",()=>n.warnOnce],32009);var i=e.i(32009);function o(e,t){let r;return(...a)=>{window.clearTimeout(r),r=window.setTimeout(()=>e(...a),t)}}let l=["x","y","top","bottom","left","right","width","height"];var s=e.i(46791),u=e.i(43476);function c({ref:e,children:a,fallback:n,resize:s,style:c,gl:d,events:p=t.f,eventSource:m,eventPrefix:h,shadows:g,linear:C,flat:f,legacy:S,orthographic:M,frameloop:T,dpr:v,performance:G,raycaster:R,camera:y,scene:A,onPointerMissed:F,onCreated:_,...B}){r.useMemo(()=>(0,t.e)(i),[]);let b=(0,t.u)(),[L,x]=function({debounce:e,scroll:t,polyfill:a,offsetSize:n}={debounce:0,scroll:!1,offsetSize:!1}){var i,s,u;let c=a||("u"<typeof window?class{}:window.ResizeObserver);if(!c)throw Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");let[d,p]=(0,r.useState)({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),m=(0,r.useRef)({element:null,scrollContainers:null,resizeObserver:null,lastBounds:d,orientationHandler:null}),h=e?"number"==typeof e?e:e.scroll:null,g=e?"number"==typeof e?e:e.resize:null,C=(0,r.useRef)(!1);(0,r.useEffect)(()=>(C.current=!0,()=>void(C.current=!1)));let[f,S,M]=(0,r.useMemo)(()=>{let e=()=>{let e,t;if(!m.current.element)return;let{left:r,top:a,width:i,height:o,bottom:s,right:u,x:c,y:d}=m.current.element.getBoundingClientRect(),h={left:r,top:a,width:i,height:o,bottom:s,right:u,x:c,y:d};m.current.element instanceof HTMLElement&&n&&(h.height=m.current.element.offsetHeight,h.width=m.current.element.offsetWidth),Object.freeze(h),C.current&&(e=m.current.lastBounds,t=h,!l.every(r=>e[r]===t[r]))&&p(m.current.lastBounds=h)};return[e,g?o(e,g):e,h?o(e,h):e]},[p,n,h,g]);function T(){m.current.scrollContainers&&(m.current.scrollContainers.forEach(e=>e.removeEventListener("scroll",M,!0)),m.current.scrollContainers=null),m.current.resizeObserver&&(m.current.resizeObserver.disconnect(),m.current.resizeObserver=null),m.current.orientationHandler&&("orientation"in screen&&"removeEventListener"in screen.orientation?screen.orientation.removeEventListener("change",m.current.orientationHandler):"onorientationchange"in window&&window.removeEventListener("orientationchange",m.current.orientationHandler))}function v(){m.current.element&&(m.current.resizeObserver=new c(M),m.current.resizeObserver.observe(m.current.element),t&&m.current.scrollContainers&&m.current.scrollContainers.forEach(e=>e.addEventListener("scroll",M,{capture:!0,passive:!0})),m.current.orientationHandler=()=>{M()},"orientation"in screen&&"addEventListener"in screen.orientation?screen.orientation.addEventListener("change",m.current.orientationHandler):"onorientationchange"in window&&window.addEventListener("orientationchange",m.current.orientationHandler))}return i=M,s=!!t,(0,r.useEffect)(()=>{if(s)return window.addEventListener("scroll",i,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",i,!0)},[i,s]),u=S,(0,r.useEffect)(()=>(window.addEventListener("resize",u),()=>void window.removeEventListener("resize",u)),[u]),(0,r.useEffect)(()=>{T(),v()},[t,M,S]),(0,r.useEffect)(()=>T,[]),[e=>{e&&e!==m.current.element&&(T(),m.current.element=e,m.current.scrollContainers=function e(t){let r=[];if(!t||t===document.body)return r;let{overflow:a,overflowX:n,overflowY:i}=window.getComputedStyle(t);return[a,n,i].some(e=>"auto"===e||"scroll"===e)&&r.push(t),[...r,...e(t.parentElement)]}(e),v())},d,f]}({scroll:!0,debounce:{scroll:50,resize:0},...s}),E=r.useRef(null),D=r.useRef(null);r.useImperativeHandle(e,()=>E.current);let P=(0,t.a)(F),[I,w]=r.useState(!1),[k,O]=r.useState(!1);if(I)throw I;if(k)throw k;let N=r.useRef(null);(0,t.b)(()=>{let e=E.current;x.width>0&&x.height>0&&e&&(N.current||(N.current=(0,t.c)(e)),async function(){await N.current.configure({gl:d,scene:A,events:p,shadows:g,linear:C,flat:f,legacy:S,orthographic:M,frameloop:T,dpr:v,performance:G,raycaster:R,camera:y,size:x,onPointerMissed:(...e)=>null==P.current?void 0:P.current(...e),onCreated:e=>{null==e.events.connect||e.events.connect(m?(0,t.i)(m)?m.current:m:D.current),h&&e.setEvents({compute:(e,t)=>{let r=e[h+"X"],a=e[h+"Y"];t.pointer.set(r/t.size.width*2-1,-(2*(a/t.size.height))+1),t.raycaster.setFromCamera(t.pointer,t.camera)}}),null==_||_(e)}}),N.current.render((0,u.jsx)(b,{children:(0,u.jsx)(t.E,{set:O,children:(0,u.jsx)(r.Suspense,{fallback:(0,u.jsx)(t.B,{set:w}),children:null!=a?a:null})})}))}())}),r.useEffect(()=>{let e=E.current;if(e)return()=>(0,t.d)(e)},[]);let U=m?"none":"auto";return(0,u.jsx)("div",{ref:D,style:{position:"relative",width:"100%",height:"100%",overflow:"hidden",pointerEvents:U,...c},...B,children:(0,u.jsx)("div",{ref:L,style:{width:"100%",height:"100%"},children:(0,u.jsx)("canvas",{ref:E,style:{display:"block"},children:n})})})}function d(e){return(0,u.jsx)(s.FiberProvider,{children:(0,u.jsx)(c,{...e})})}e.i(89499),e.s(["Canvas",()=>d],75056)}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,50124,e=>{"use strict";var t=e.i(43476),a=e.i(71645),n=e.i(49721),l=e.i(68757),s=e.i(67561),r=e.i(46991),i=e.i(85709);e.i(85269);var o=e.i(22831);let c={waterTemp:{key:"waterTemp",path:"environment.water.temperature",icon:l.faWater,labelKey:"temperature.waterTemperature",format:e=>`${e}${(0,r.getTemperatureUnitLabel)()}`,transform:r.convertTemperatureUnit},airTemp:{key:"airTemp",path:"environment.outside.temperature",icon:l.faThermometerHalf,labelKey:"temperature.airTemperature",format:e=>`${e}${(0,r.getTemperatureUnitLabel)()}`,transform:r.convertTemperatureUnit},exhaustTemp:{key:"exhaustTemp",path:"propulsion.main.exhaustTemperature",icon:l.faFire,labelKey:"temperature.exhaustTemperature",format:e=>`${e}${(0,r.getTemperatureUnitLabel)()}`,transform:r.convertTemperatureUnit},fridgeTemp:{key:"fridgeTemp",path:"environment.inside.fridge.temperature",icon:l.faSnowflake,labelKey:"temperature.fridgeTemperature",format:e=>`${e}${(0,r.getTemperatureUnitLabel)()}`,transform:r.convertTemperatureUnit}},m=({mode:e,value:a,icon:l,nightMode:s})=>{let{t:r}=(0,o.useTranslation)();if(!a&&0!==a)return null;let i=r(c[e].labelKey);return(0,t.jsxs)("div",{className:`flex items-center flex-shrink-0 space-x-2 sm:space-x-3 px-2 sm:px-3 py-1.5 transition-all duration-300 ${s?"text-oNight":"text-hud-main"}`,children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:l,className:"text-base sm:text-lg opacity-80"}),(0,t.jsxs)("div",{className:"flex flex-col flex-shrink-0",children:[(0,t.jsx)("span",{className:"ocearo-large-label text-xs font-black uppercase tracking-widest text-hud-muted leading-none mb-1",children:i.split(" ")[0]}),(0,t.jsx)("span",{className:"text-base sm:text-xl font-bold tracking-tight leading-none whitespace-nowrap",children:c[e].format(a)})]})]})},u=()=>{let{t:e}=(0,o.useTranslation)(),{nightMode:n}=(0,s.useOcearoContext)(),[l,r]=(0,a.useState)([]),[u,p]=(0,a.useState)(null),x=(0,a.useMemo)(()=>Object.values(c).map(e=>e.path),[]),d=(0,i.useSignalKPaths)(x),h=(0,a.useMemo)(()=>Object.entries(c).reduce((e,[t,a])=>{let n=d[a.path];return e[t]=null!==n?a.transform(n):null,e},{}),[d]);(0,a.useEffect)(()=>{let e=Object.entries(h).filter(([e,t])=>null!==t).map(([e])=>e);r(e),e.length>0&&!e.includes(u)&&p(e[0])},[h,u]);let f=(0,a.useCallback)(()=>{if(l.length<=1)return;let e=(l.indexOf(u)+1)%l.length;p(l[e])},[l,u]);return 0===l.length?(0,t.jsx)("div",{className:`px-3 py-1.5 ${n?"text-oNight":"text-hud-muted"}`,children:(0,t.jsx)("span",{className:"text-sm font-black uppercase tracking-widest",children:"N/A"})}):(0,t.jsx)("div",{className:"cursor-pointer flex items-center group",onClick:f,title:`Toggle Temperature Display (${l.length} sensors available)`,role:"button",tabIndex:0,onKeyPress:e=>"Enter"===e.key&&f(),"aria-label":e(u?c[u].labelKey:"common.na"),children:u&&(0,t.jsx)(m,{mode:u,value:h[u],icon:c[u].icon,nightMode:n})})},p={pressure:{key:"pressure",path:"environment.outside.pressure",icon:l.faCloud,labelKey:"environmental.pressure",format:e=>`${e} hPa`,transform:r.convertPressure},humidity:{key:"humidity",path:"environment.inside.relativeHumidity",icon:l.faDroplet,labelKey:"environmental.humidity",format:e=>`${e.toFixed(1)}%`,transform:e=>100*e},voc:{key:"voc",path:"environment.inside.voc",icon:l.faWind,labelKey:"environmental.voc",format:e=>`${e} ppm`,transform:e=>e}},x=({mode:e,value:a,icon:l,nightMode:s})=>{let{t:r}=(0,o.useTranslation)();return a||0===a?(0,t.jsxs)("div",{className:`flex items-center flex-shrink-0 space-x-2 sm:space-x-3 px-2 sm:px-3 py-1.5 transition-all duration-300 ${s?"text-oNight":"text-hud-main"}`,children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:l,className:"text-base sm:text-lg opacity-80"}),(0,t.jsxs)("div",{className:"flex flex-col flex-shrink-0",children:[(0,t.jsx)("span",{className:"ocearo-large-label text-xs font-black uppercase tracking-widest text-hud-muted leading-none mb-1",children:r(p[e].labelKey)}),(0,t.jsx)("span",{className:"text-base sm:text-xl font-bold tracking-tight leading-none whitespace-nowrap",children:p[e].format(a)})]})]}):null},d=()=>{let{nightMode:e}=(0,s.useOcearoContext)(),[n,l]=(0,a.useState)([]),[r,o]=(0,a.useState)(null),c=(0,a.useMemo)(()=>Object.values(p).map(e=>e.path),[]),m=(0,i.useSignalKPaths)(c),u=(0,a.useMemo)(()=>Object.entries(p).reduce((e,[t,a])=>{let n=m[a.path];return e[t]=null!==n?a.transform(n):null,e},{}),[m]);(0,a.useEffect)(()=>{let e=Object.entries(u).filter(([e,t])=>null!==t).map(([e])=>e);l(e),e.length>0&&!e.includes(r)&&o(e[0])},[u,r]);let d=(0,a.useCallback)(()=>{if(n.length<=1)return;let e=(n.indexOf(r)+1)%n.length;o(n[e])},[n,r]);return 0===n.length?(0,t.jsx)("div",{className:`px-3 py-1.5 ${e?"text-oNight":"text-hud-muted"}`,children:(0,t.jsx)("span",{className:"text-sm font-black uppercase tracking-widest",children:"N/A"})}):(0,t.jsx)("div",{className:"cursor-pointer flex items-center group",onClick:d,title:`Toggle Environmental Display (${n.length} modes available)`,role:"button",tabIndex:0,onKeyPress:e=>"Enter"===e.key&&d(),children:r&&(0,t.jsx)(x,{mode:r,value:u[r],icon:p[r].icon,nightMode:e})})};var h=e.i(83402);let f=({icon:e,onClick:a,label:l,textColor:s,badgeColor:r})=>(0,t.jsxs)("button",{onClick:a,className:`${s} flex-shrink-0 flex flex-col items-center justify-center p-1 sm:p-2 rounded-xl tesla-hover transition-all duration-300 group relative`,"aria-label":l,children:[(0,t.jsxs)("div",{className:"w-7 h-7 sm:w-10 sm:h-10 flex items-center justify-center rounded-lg group-hover:bg-hud-elevated transition-colors relative",children:[(0,t.jsx)(n.FontAwesomeIcon,{icon:e,className:"text-base sm:text-xl group-hover:scale-110 transition-transform"}),r&&(0,t.jsx)("span",{className:`absolute top-0 right-0 w-2.5 h-2.5 rounded-full border-2 border-leftPaneBg ${r} animate-pulse`})]}),(0,t.jsx)("span",{className:"ocearo-large-label text-xs font-black uppercase tracking-[0.2em] mt-1 opacity-60 group-hover:opacity-100 transition-opacity",children:l})]});e.s(["default",0,({setRightView:e,toggleSettings:a,toggleAppMenu:n})=>{let{t:r}=(0,o.useTranslation)(),{nightMode:i}=(0,s.useOcearoContext)(),c=i?"text-hud-main/90":"text-hud-main",m=h.default.getAll(),p=m.debugMode?"bg-yellow-400":m.signalKUrlSet?null:"bg-oBlue",x=[{section:"left",items:[{icon:l.faShip,onClick:()=>a(),label:r("nav.system"),badgeColor:p}]},{section:"center",items:[{icon:l.faMapMarkedAlt,onClick:()=>e("navigation"),label:r("nav.nav")},{icon:l.faCloudSun,onClick:()=>e("weather"),label:r("nav.weather")},{icon:l.faTh,onClick:n,label:r("nav.apps")},{icon:l.faTachometerAlt,onClick:()=>e("instrument"),label:r("nav.gauges")},{icon:l.faHandsHelping,onClick:()=>e("manual"),label:r("nav.help")}]}],g=e=>{let a=x.find(t=>t.section===e);return a?a.items.map((a,n)=>(0,t.jsx)(f,{icon:a.icon,onClick:a.onClick,label:a.label,textColor:c,badgeColor:a.badgeColor},`${e}-${n}`)):null};return(0,t.jsxs)("div",{className:"flex items-center justify-between w-full h-full bg-leftPaneBg px-1 sm:px-6 overflow-x-auto overflow-y-hidden scrollbar-hide",children:[(0,t.jsxs)("div",{className:"flex items-center space-x-0.5 sm:space-x-6 flex-shrink-0 sm:flex-1 min-w-0",children:[g("left"),(0,t.jsx)("div",{className:"hidden sm:block h-8 w-[1px] bg-hud-muted opacity-20 mx-1 sm:mx-2"}),(0,t.jsx)(u,{})]}),(0,t.jsx)("div",{className:"flex flex-shrink-0 items-center justify-center space-x-0.5 sm:space-x-8 px-1 sm:px-0",children:g("center")}),(0,t.jsx)("div",{className:"flex items-center justify-end space-x-0.5 sm:space-x-6 flex-shrink-0 sm:flex-1 min-w-0",children:(0,t.jsx)(d,{})})]})}],50124)},61891,e=>{e.n(e.i(50124))}]);