1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._posthogChunkIds=e._posthogChunkIds||{},e._posthogChunkIds[n]="01a0d622-1aa0-7403-b857-00f392f0bc94")}catch(e){}}();try{!function(){var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="db659506-a17e-45fb-aec4-ccaf60027ceb",e._sentryDebugIdIdentifier="sentry-dbid-db659506-a17e-45fb-aec4-ccaf60027ceb")}()}catch(e){}"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4765],{1207:(e,t,i)=>{i.d(t,{Wf:()=>n,nF:()=>d,pM:()=>o});var a=i(78488),l=i(81204);let r=(0,l.createContext)(null),n=()=>{let e=(0,l.useContext)(r);if(null===e)throw Error("useReplayContext without a ReplayContext");return e.replay},o=()=>{let e=(0,l.useContext)(r);if(null===e)throw Error("useReplayContextAndDispatch without a ReplayContext");return e},d={Provider:e=>{let{value:t,dispatch:i,children:l}=e;return(0,a.jsx)(r.Provider,{value:{replay:t,dispatch:void 0!==i?i:()=>{}},children:l})}}},19207:(e,t,i)=>{i.d(t,{r:()=>n});var a=i(81204),l=i(65929),r=i(1207);let n=()=>{let e=(0,r.Wf)(),t=(0,l.ko)(),i=null==t?void 0:t.current;return(0,a.useMemo)(()=>{var t,a;return i?{width:e.mapWidth,height:e.mapHeight,latitude:e.viewState.latitude,longitude:e.viewState.longitude,zoom:e.viewState.zoom,bearing:null!=(t=e.viewState.bearing)?t:0,pitch:null!=(a=e.viewState.pitch)?a:0,project:e=>{let t=i.project(e);return[t.x,t.y]},unproject:e=>{let t=i.unproject(e);return[t.lng,t.lat]}}:null},[e.viewState,e.mapWidth,e.mapHeight,i])}},23188:(e,t,i)=>{i.d(t,{G:()=>r});var a=i(64404),l=i(12806);let r=()=>(e,t)=>{switch(e){case"sog":return{label:"SOG",unit:"kn",formattedValue:"".concat((0,l.msToKts)(t).toFixed(2))};case"cog":return{label:"COG",unit:"\xb0",formattedValue:"".concat((0,l.toDegrees)(t).toFixed(0))};case"heading":return{label:"HDG",unit:"\xb0",formattedValue:"".concat((0,l.toDegrees)(t).toFixed(0))};case"pitch":return{label:"Pitch",unit:"\xb0",formattedValue:"".concat((0,l.toDegrees)(t).toFixed(1))};case"roll":return{label:"Heel",unit:"\xb0",formattedValue:"".concat((0,l.toDegrees)(t).toFixed(0))};case"depth":return{label:"Depth",unit:"m",formattedValue:"".concat(t.toFixed(0))};case"heartRate":return{label:"Heart Rate",unit:"bpm",formattedValue:"".concat(t.toFixed(0))};case"airTemperature":return{label:"Air",unit:"\xbaC",formattedValue:"".concat((0,l.toCelsius)(t).toFixed(1))};case"waterTemperature":return{label:"Water",unit:"\xbaC",formattedValue:"".concat((0,l.toCelsius)(t).toFixed(1))}}let i=a.TrackPointFieldsDescription[e];switch(null==i?void 0:i.type){case"angle":return{label:e.toUpperCase(),unit:"\xb0",formattedValue:"".concat((0,l.toDegrees)(t).toFixed(0))};case"relative-angle":return{label:e.toUpperCase(),unit:"\xb0",formattedValue:"".concat((0,l.toDegrees)((0,l.toSignedAngle)(t)).toFixed(0))};case"distance":return{label:e.toUpperCase(),unit:"m",formattedValue:"".concat(t.toFixed(0))};case"force":return{label:e.toUpperCase(),unit:"N",formattedValue:"".concat(t.toFixed(1))};case"speed":return{label:e.toUpperCase(),unit:"kts",formattedValue:"".concat((0,l.msToKts)(t).toFixed(1))};case"temperature":return{label:e.toUpperCase(),unit:"\xbaC",formattedValue:"".concat((0,l.toCelsius)(t).toFixed(1))}}return{label:e.toUpperCase(),unit:"",formattedValue:t.toFixed(1)}}},29342:(e,t,i)=>{i.d(t,{V:()=>r});var a=i(23394),l=i(55440);let r=(e,t)=>{if(void 0===t.latitude||void 0===t.longitude)return null;let i=(0,l.zx)([t.longitude,t.latitude]),r=(0,a.A)(i,e,t.bearing+90,{units:"meters"}),n=t.project(i.geometry.coordinates);return Math.abs(t.project(r.geometry.coordinates)[0]-n[0])}},35154:(e,t,i)=>{i.d(t,{W:()=>n,l:()=>l});var a=i(12806);let l=6e5,r=(e,t,i,a,r)=>(r&&"fading-solid"===t?(i=r-l,a=r):("fading-solid"===t||"fading-forward"===t)&&(t="solid"),e.map(e=>({trackId:e.id,boatId:e.id,solidColor:e.color,mode:t,visibleStartTime:i,visibleEndTime:a}))),n=e=>{var t,i;let n=(e=>{switch(e){case"solid":return"solid";case"fading-tail":return"fading-solid";case"speed-gradient":return"speed";case"color-segments":return"segments"}})(e.selectedTailMode),o=e.boats.filter(t=>t.data&&-1!==e.visibleBoats.indexOf(t.id)),d=(null==(t=e.hover)?void 0:t.type)==="time"?e.hover.time:e.playbackTime;return(null==(i=e.hover)?void 0:i.type)==="segment"?r(o,n,e.hover.segment.startTime,e.hover.segment.endTime,void 0):e.timeSelection?r(o,n,e.t
1imeSelection[0],e.timeSelection[1],e.isTimeSelectionChanging?void 0:d):e.activeSegment&&void 0!==e.selectedLegIndex&&e.raceAnalysis?((e,t,i,r,n)=>e.map(e=>{var a,o;let d=i.boats.get(e.id),s=-1===r?null==d?void 0:d.start:null==d?void 0:d.legs[r];return s?n&&"fading-solid"===t?n>=s.startTime&&n<=s.finishTime?{trackId:e.id,boatId:e.id,solidColor:e.color,mode:t,visibleStartTime:n-l,visibleEndTime:n}:null:{trackId:e.id,boatId:e.id,solidColor:e.color,mode:t,visibleStartTime:s.startTime,visibleEndTime:-1===r&&null!=(o=null==d||null==(a=d.start)?void 0:a.timeAtLine)?o:s.finishTime}:null}).filter(a.isNotNullish))(o,n,e.raceAnalysis,e.selectedLegIndex,d):e.activeSegment?r(o,n,e.activeSegment.startTime,e.activeSegment.endTime,d):r(o,n,e.startTime,e.endTime,d)}},40909:(e,t,i)=>{i.d(t,{Z:()=>n});var a=i(2733),l=i(81204);let r=window.ResizeObserver||a.tb,n=e=>{let[t,i]=(0,l.useState)({width:0,height:0,left:0,top:0,right:0,bottom:0,x:0,y:0});return(0,l.useEffect)(()=>{if(!e.current)return;let t=e.current,a=new r(e=>{Array.isArray(e)&&e.length&&i(e[0].contentRect)});return a.observe(t),()=>a.unobserve(t)},[e]),t}},59107:(e,t,i)=>{i.d(t,{V:()=>r});var a=i(29342),l=i(19207);let r=e=>{let t=(0,l.r)();return t?(0,a.V)(e,t):e}},70809:(e,t,i)=>{i.r(t),i.d(t,{AllTailModes:()=>J,ReplayMap:()=>ee});var a=i(80290),l=i(38263),r=i(58045),n=i(78488),o=i(75291),d=i(30260),s=i(23515),c=i(76254),u=i.n(c);i(19846);var m=i(81204),v=i(65929),p=i(23901),g=i(40909),h=i(49114),b=i(12806),f=i(59246),y=i(1207),T=i(63735),x=i(23188),S=i(62497);let w=(0,d.Xy)(S.A,e=>({tooltip:(0,l._)((0,a._)({backgroundColor:e.palette.common.white,color:e.palette.text.primary},h.yX),{fontSize:12,lineHeight:"14px",boxShadow:"0px 2px 5px rgba(0, 0, 0, 0.15)",borderRadius:5}),arrow:{color:e.palette.common.white}})),C=(0,d.n9)()(e=>({root:{pointerEvents:"none",position:"absolute",width:0,height:0},tooltip:{},boatName:{fontSize:14,lineHeight:"21px",color:e.palette.text.primary,margin:4},data:(0,l._)((0,a._)({},h.yX),{fontSize:12,margin:4}),label:{color:T.Uf[800],fontSize:14},value:(0,l._)((0,a._)({},h.yX),{color:T.Uf[900],fontWeight:900,marginLeft:4,marginRight:4}),unit:{fontSize:14,color:T.Uf[600]}})),k=(0,m.forwardRef)((e,t)=>{let{className:i,x:a,y:l}=e;return(0,n.jsx)("div",{ref:t,className:i,style:{top:l,left:a}})});k.displayName="TooltipAnchor";let I=e=>{let{className:t,x:i,y:a,variable:l,value:r,boatName:o,boatColor:d}=e,{classes:s,cx:c}=C(),{formattedValue:u,unit:m}=(0,x.G)()(l,r),v=(0,n.jsxs)("div",{className:s.tooltip,style:{},children:[(0,n.jsx)("div",{className:s.boatName,children:o}),(0,n.jsxs)("div",{className:s.data,children:[(0,n.jsx)("span",{children:u}),(0,n.jsx)("span",{className:s.unit,children:m})]})]});return(0,n.jsx)(w,{style:{pointerEvents:"none"},title:v,open:!0,arrow:!0,placement:"right",children:(0,n.jsx)(k,{className:c(s.root,t),x:i,y:a})})},A=()=>{var e,t;let i=(0,y.Wf)(),l=(0,m.useMemo)(()=>{let e,t,l;return e=i.viewState,t=i.mapWidth,l=i.mapHeight,new f.Ay((0,a._)({width:t,height:l},e))},[i.viewState,i.mapWidth,i.mapHeight]),r=null!=(t=null==(e=i.hover)?void 0:e.time)?t:i.playbackTime,o=(0,m.useMemo)(()=>{var e;return"trimming"===i.activePane||"racesetup"===i.activePane?[]:(null==(e=i.hover)?void 0:e.type)==="map"?[i.hover.boatId]:i.lockMapOnBoatId?[i.lockMapOnBoatId]:[]},[i.hover,i.lockMapOnBoatId,i.activePane]),d=(0,m.useMemo)(()=>i.boats.filter(e=>o.includes(e.id)).map(e=>{var t;let i=null==(t=e.data)?void 0:t.getValuesAtTime(r);if(!i)return null;{let[t,a]=l.project([i.longitude,i.latitude]);return t<0||t>l.width||a<0||a>l.height?null:(0,n.jsx)(I,{x:t,y:a,boatName:e.name,variable:"sog",value:i.sog,boatColor:e.color},e.id)}}).filter(b.isNotNullish),[i.boats,o,r,l]);return(0,n.jsx)(n.Fragment,{children:d})};var E=i(71235),L=i(74453),_=i(64921),j=i(20232),M=i(85569);let V={pointerEvents:"none"},N=(e,t,i,a)=>{if(void 0!==i&&t){let l=t.boats.get(e.id),r=-1===i?null==l?void 0:l.start:null==l?void 0:l.legs[i];if(!r||(null==r?void 0:r.startTime)===null||(null==r?void 0:r.finishTime)===null||a<r.startTime||a>(null==r?void 0:r.finishTime))return!1}return!0},D=e=>{let{viewport:t}=e,{replay:i,dispatch:a}=(0,y.pM)(),l="racesetup"===i.activePane?i.currentGateIndex:-1,r="racesetup"===i.activePane?i.raceSetupHighlightedBoatId:void 0,o=(0,m.useMemo)(()=>{var e,t,a,r,n,o,d,s;let c=[];if("replay-chart"===i.activePane){if(i.isTimeSelectionChanging&&i.timeSelection)c.push(...i.boats.filter(e=>e.data&&-1!==i.visibleBoats.indexOf(e.id)).map(e=>{var t,a,l;return{id:"timesel-start-".concat(e.id),clickable:!1,boat:e,boatLength:null==(t=e.boatClass)?void 0:t.boatLength,opacity:1,position:null!=(l=null==(a=e.data)?void 0:a.getValuesAtTime(i.timeSelection[0]))?l:null}})),c.push(...i.boats.filter(e=>e.data&&-1!==i.visibleBoats.indexOf(e.id)).map(e=>{var t,a,l;return{id:"timesel-end-".concat(e.id),clickable:!1,boat:e,boatLength:null==(t=e.boatClass)?void 0:t.boatLength,opacity:.5,position:null!=(l=null==(a=e.data)?void 0:a.getValuesAtTime(i.timeSelection[1]))?l:null}}));else if((null==(e=i.hover)?void 0:e.type)==="segment")c.push(...i.boats.filter(e=>e.data&&-1!==i.visibleBoats.indexOf(e.id)).map(e=>{var t,a,l;return{id:"start-".concat(e.id),clickable:!1,boat:e,boatLength:null==(t=e.boatClass)?void 0:t.boatLength,opacity:1,position:null!=(l=null==(a=e.data)?void 0:a.getValuesAtTime(i.hover.segment.startTime))?l:null}})),c.push(...i.boats.filter(e=>e.data&&-1!==i.visibleBoats.indexOf(e.id)).map(e=>{var t,a,l;return{id:"end-".concat(e.id),clickable:!1,boat:e,boatLength:null==(t=e.boatClass)?void 0:t.boatLength,opacity:.5,position:null!=(l=null==(a=e.data)?void 0:a.getValuesAtTime(i.hover.segment.endTime))?l:null}}));else if(("fading-tail"!==i.selectedTailMode||(null==(t=i.hover)?void 0:t.type)!=="time")&&c.push(...i.boats.filter(e=>e.data&&-1!==i.visibleBoats.indexOf(e.id)).filter(e=>void 0!==i.timeSelection||!(0,_.P)(i.activeSegment)||N(e,i.raceAnalysis,i.selectedLegIndex,i.playbackTime)).map(e=>{var t,a,l;return{id:"solid-".concat(e.id),clickable:!0,boat:e,boatLength:null==(t=e.boatClass)?void 0:t.boatLength,opacity:1,position:null!=(l=null==(a=e.data)?void 0:a.getValuesAtTime(i.playbackTime))?l:null}})),(null==(a=i.hover)?void 0:a.type)==="time"&&c.push(...i.boats.filter(e=>e.data&&-1!==i.visibleBoats.indexOf(e.id)).filter(e=>void 0!==i.timeSelection||!(0,_.P)(i.activeSegment)||N(e,i.raceAnalysis,i.selectedLegIndex,i.hover.time)).map(e=>{var t,a,l;return{id:"hover-".concat(e.id),clickable:!1,boat:e,boatLength:null==(t=e.boatClass)?void 0:t.boatLength,opacity:.5,position:null!=(l=null==(a=e.data)?void 0:a.getValuesAtTime(i.hover.time))?l:null}})),(null==(r=i.hover)?void 0:r.type)==="map"){let e=i.boats.find(e=>e.id===i.hover.boatId);e&&c.push({id:"maphover-".concat(e.id),clickable:!1,boat:e,boatLength:null==(n=e.boatClass)?void 0:n.boatLength,opacity:.5,position:null!=(d=null==(o=e.data)?void 0:o.getValuesAtTime(i.hover.time))?d:null})}}else if("trimming"===i.activePane)c.push(...i.boats.filter(e=>e.data&&-1!==i.visibleBoats.indexOf(e.id)).map(e=>{var t,a,l;return{id:"start-".concat(e.id),clickable:!1,boat:e,boatLength:null==(t=e.boatClass)?void 0:t.boatLength,opacity:1,position:null!=(l=null==(a=e.data)?void 0:a.getValuesAtTime(Math.max(i.startTime,e.data.startTime)))?l:null}})),c.push(...i.boats.filter(e=>e.data&&-1!==i.visibleBoats.indexOf(e.id)).map(e=>{var t,a,l;return{id:"end-".concat(e.id),clickable:!1,boat:e,boatLength:null==(t=e.boatClass)?void 0:t.boatLength,opacity:1,position:null!=(l=null==(a=e.data)?void 0:a.getValuesAtTime(Math.min(i.endTime,e.data.endTime)))?l:null}}));else if("racesetup"===i.activePane){let e=i.raceAnalysis,t=i.activeSegment,a=i.raceSetupHighlightedBoatId;i.boats.filter(j.d1).filter(e=>
1!a||e.id===a).forEach(i=>{var a;let r,n=null==e?void 0:e.boats.get(i.id);if(0===l)r=Math.max(t.startTime,i.data.startTime),(null==n?void 0:n.start)&&(r=n.start.finishTime);else{let e=null==n?void 0:n.legs[l-1];e&&e.finishTime&&(r=e.finishTime)}c.push({id:"race-".concat(i.id),clickable:!1,boat:i,boatLength:null==(a=i.boatClass)?void 0:a.boatLength,opacity:1,position:r?i.data.getValuesAtTime(r):null})}),(null==(s=i.hover)?void 0:s.time)&&c.push(...i.boats.filter(e=>e.data&&-1!==i.visibleBoats.indexOf(e.id)).map(e=>{var t,a,l;return{id:"hover-".concat(e.id),clickable:!1,boat:e,boatLength:null==(t=e.boatClass)?void 0:t.boatLength,opacity:.5,position:null!=(l=null==(a=e.data)?void 0:a.getValuesAtTime(i.hover.time))?l:null}}))}return c},[i.activePane,i.isTimeSelectionChanging,i.timeSelection,i.hover,i.boats,i.visibleBoats,i.selectedTailMode,i.playbackTime,i.activeSegment,i.selectedLegIndex,i.raceAnalysis,i.startTime,i.endTime,l,r]),d=(0,L.$)("boat-selected",{actionName:"map"}),s=(0,m.useCallback)(e=>{let i=o.filter(e=>(0,b.isNotNullish)(e.position)).map(i=>(0,n.jsx)(M.b,{data:i.position,opacity:i.opacity,mapAngleDegrees:t.bearing||0,redrawContext:e,boatColor:i.boat.color,boatLength:i.boatLength,onClick:i.clickable?()=>{a({event:"map-click-boat",boatId:i.boat.id}),d({boatName:i.boat.name})}:void 0,style:i.clickable?void 0:V},i.id));return(0,n.jsx)("g",{children:i})},[o,d,a,t.bearing]);return(0,n.jsx)(E.p,{redraw:s})};var P=i(83165),R=i(35154),F=i(30718);let B=[0,0,0,0],H=(e,t)=>{let{index:i,data:a}=t;return a.trip.lonlat(i)},O=(e,t)=>{let{index:i,data:a}=t;return a.trip.lonlat(i+1)};function W(e){let t,{id:i,data:a,layerColor:l,width:r,pickable:n,fading:o,visible:d}=e;return d||(d=[a.trip.startTime,a.trip.endTime]),t=o||"colorSegments"===l||"speed"===l||d[0]!==a.trip.startTime||d[1]!==a.trip.endTime?"forward"===o?G(l,d[0],d[1],!0):"backward"===o?G(l,d[0],d[1],!1):z(l,d[0],d[1]):l,new F.A({id:i,data:a,getColor:t,getWidth:r,getSourcePosition:H,getTargetPosition:O,pickable:n,fp64:!0,updateTriggers:{getColor:[l,o,d[0],d[1]]}})}let U=(e,t)=>{let{index:i,data:a}=t;return"speed"===e?a.speedColors[i]:"colorSegments"===e?((e,t)=>{let i=t.filter(t=>e>=t.from);return i.length>0?i[i.length-1].color:B})(a.trip.time(i),a.colorSegments):e},z=(e,t,i)=>(a,l)=>{let{index:r,data:n}=l;return n.trip.time(r)>=t&&n.trip.time(r+1)<=i?U(e,{index:r,data:n}):B},G=(e,t,i,a)=>(l,r)=>{let{index:n,data:o}=r;if(!(o.trip.time(n)>=t&&o.trip.time(n+1)<=i))return B;{let l=U(e,{index:n,data:o}),r=1-(i-o.trip.time(n))/(i-t);return a&&(r=1-r),l[3]=255*r,l}};var X=i(84326),Z=i(77960),K=i(99131),Y=i(54860),q=i(76822);function $(e){let{overlayRef:t}=e,i=(0,r._)(e,["overlayRef"]);return(0,v.VI)(()=>{let e=new o.A(i);return t&&(t.current=e),e}).setProps(i),null}let J=["solid","fading-tail","speed-gradient","color-segments"],Q=(0,d.n9)()(()=>({root:{width:"100%",height:"100%",position:"absolute",top:0,left:0,right:0,bottom:0}})),ee=e=>{var t,i,r;let{className:o,children:d,mapDecorations:c,generateColorSegments:b,mapStyle:f}=e,{classes:T,cx:x}=Q(),{replay:S,dispatch:w}=(0,y.pM)(),C=null!=f?f:(e=>{switch(e){case"map":return p.gO;case"satellite":return p.Mg;case"blank":return"";case"satellite-simple":return p.DB}})(S.mapStyle),k=(0,m.useRef)(null),{width:I,height:E}=(0,g.Z)(k),L=(0,m.useRef)(!1),_=(0,m.useCallback)(e=>{let{viewState:t,interactionState:i}=e;w({event:"map-viewstate-change",viewState:t,interactionState:i})},[w]),j=(e=>{switch(e.activePane){case"replay-chart":return(0,R.W)(e);case"trimming":return(e=>e.boats.map(t=>({mode:"solid",trackId:t.id,boatId:t.id,solidColor:t.color,visibleStartTime:e.startTime,visibleEndTime:e.endTime})))(e);case"racesetup":return(0,P.rZ)(e)}})(S),M=((e,t,i)=>{let a=(0,m.useMemo)(()=>s.A.scale(h.Yh).domain([0,t]),[t]),l=(0,m.useRef)(new Map);return e.forEach(e=>{var r,n,o,d;e.data&&(!l.current.has(e.id)||(null==(r=l.current.get(e.id))?void 0:r.trip)!==e.data||(null==(n=l.current.get(e.id))?void 0:n.speedGradientUsed)!==a||(null==(o=l.current.get(e.id))?void 0:o.colorGeneratorUsed)!==i)&&l.current.set(e.id,{trip:e.data,length:(null==(d=e.data)?void 0:d.length)-1,speedColors:((e,t,i)=>{let a=new Y.V("trackColoredBySpeed"),l=Array(200);for(let e=0;e<200;e++){try{Number.isFinite(i)||(i=q.CR),l[e]=t(e/200*i).rgba()}catch(t){throw console.log("Colorband ".concat(e," failed: ").concat(t),{i:e,numColors:200,speedScaleMax:i,color_index:e/200*i}),t}l[e][3]=255}a.mark("prepare color band");let r=Array(e.length);a.mark("create array");for(let t=0;t<e.length-1;t++){let a=Math.floor((e.sog(t)+e.sog(t+1))/2/i*200);r[t]=l[Math.min(a,199)]}return a.mark("fill array"),a.log(),r})(e.data,a,t),speedGradientUsed:a,colorSegments:i?i(e):[],colorGeneratorUsed:i})}),Array.from(l.current.keys()).filter(t=>void 0===e.find(e=>
1e.id===t)).forEach(e=>l.current.delete(e)),l.current})(S.boats,S.speedScaleMax,b),V=j.map(e=>{let{trackId:t,boatId:i,solidColor:a,visibleStartTime:l,visibleEndTime:r,mode:n}=e,o=M.get(i);if(!o)return null;let d=(0,s.A)(a).rgba();return d[3]=255,W({id:t,data:o,layerColor:"segments"===n?"colorSegments":"speed"===n?"speed":d,width:2,pickable:!0,fading:"fading-solid"===n?"backward":"fading-forward"===n&&"forward",visible:[l,r]})}),N=(e=>{let t=(0,y.Wf)(),i=(0,K.L)(),a=(0,m.useMemo)(()=>{var i,a;if((null==(i=t.hover)?void 0:i.type)==="maneuver"){let i=e.find(e=>{var i;return e.boatId===(null==(i=t.hover)?void 0:i.boatId)});if(i&&(0,Z.r)(t.hover.maneuver.maneuver.interval,[i.visibleStartTime,i.visibleEndTime]))return{interval:t.hover.maneuver.maneuver.interval,boatId:t.hover.boatId}}if((null==(a=t.hover)?void 0:a.type)==="sailingdetail"){let i=e.find(e=>{var i;return e.boatId===(null==(i=t.hover)?void 0:i.boatId)});if(i&&(0,Z.r)(t.hover.interval,[i.visibleStartTime,i.visibleEndTime]))return{interval:t.hover.interval,boatId:t.hover.boatId}}return null},[t.hover,e]),l=null!=i?i:a,r=(0,m.useMemo)(()=>{let e=t.boats.find(e=>e.id===(null==l?void 0:l.boatId));if(!e||!e.data||!(null==l?void 0:l.interval))return null;let i=(0,X.safeTimeSlice)(e.data,null==l?void 0:l.interval[0],null==l?void 0:l.interval[1]);return i?{length:null!==i&&i.length>1?i.length-1:0,trip:i,speedColors:[],colorSegments:[]}:null},[null==l?void 0:l.boatId,null==l?void 0:l.interval,t.boats]);return r?W({id:"highlight",data:r,layerColor:h.Xy,width:5,pickable:!1,fading:!1}):null})(j),F=(0,h.FU)();N&&!F&&V.push(N);let B=(0,m.useRef)(null),H=(0,m.useRef)(!1);if(B.current&&!H.current){let e=null==(i=B.current)?void 0:i.getMap();null==e||e.addControl(new(u()).AttributionControl,"bottom-left"),H.current=!0}let O=(0,m.useRef)(null),U=(0,m.useCallback)(e=>{if(!e.layer||void 0===e.index||e.index<0)return void w({event:"map-click-track",pick:void 0});let t=e.layer,i=j.find(e=>e.trackId===t.id),a=S.boats.find(e=>e.id===(null==i?void 0:i.boatId));if((null==a?void 0:a.data)&&i&&e.coordinate&&e.coordinate.length>=2){let t=a.data.time(e.index);t>i.visibleStartTime&&t<i.visibleEndTime&&w({event:"map-click-track",pick:{x:e.x,y:e.y,lngLat:[e.coordinate[0],e.coordinate[1]],boatId:a.id,time:t}})}},[w,S.boats,j]),z=(0,m.useCallback)(e=>{if("replay-chart"!==S.activePane)return;if(!e.layer||void 0===e.index||e.index<0)return void w({event:"map-hover-track",pick:void 0});let t=e.layer,i=j.find(e=>e.trackId===t.id),a=S.boats.find(e=>e.id===(null==i?void 0:i.boatId));if((null==a?void 0:a.data)&&i&&e.coordinate&&e.coordinate.length>=2){let t=a.data.time(e.index);t>i.visibleStartTime&&t<i.visibleEndTime&&w({event:"map-hover-track",pick:{x:e.x,y:e.y,lngLat:[e.coordinate[0],e.coordinate[1]],boatId:a.id,time:t}})}},[w,S.activePane,S.boats,j]),G=(0,m.useCallback)(e=>{var t;let{isDragging:i}=e;return i?"move":(null==(t=S.hover)?void 0:t.type)==="map"?"pointer":"default"},[null==(t=S.hover)?void 0:t.type]);return(0,m.useEffect)(()=>{I>0&&E>0&&(I!==S.mapWidth||E!==S.mapHeight)&&(B.current&&B.current.getMap().resize(),w({event:"map-dimensions-change",mapWidth:I,mapHeight:E}))},[I,E,w,S.mapWidth,S.mapHeight]),(0,m.useEffect)(()=>{if(S.viewportAnimation&&B.current){var e,t;let i=B.current.getMap(),{targetViewState:a,duration:l}=S.viewportAnimation;i.flyTo({center:[a.longitude,a.latitude],zoom:a.zoom,bearing:null!=(e=a.bearing)?e:0,pitch:null!=(t=a.pitch)?t:0,duration:l,essential:!0})}},[S.viewportAnimation]),(0,n.jsx)("div",{ref:k,className:x(T.root,o),children:(0,n.jsxs)(v.T5,(0,l._)((0,a._)({},S.viewState),{mapLib:u(),style:{width:"100%",height:"100%"},mapboxAccessToken:p.Et,attributionControl:!1,antialias:!0,mapStyle:C,onDragStart:()=>{L.current=!0,_({viewState:S.viewState,interactionState:{isDragging:!0,isHovering:!1}})},onDragEnd:e=>{L.current=!1,_({viewState:e.viewState,interactionState:{isDragging:!1,isHovering:!1}})},onMove:e=>{_({viewState:e.viewState,interactionState:{isDragging:L.current,isHovering:!1}})},cursor:G({isDragging:!1}),ref:B,keyboard:!1,dragRotate:!1,children:[c,(0,n.jsx)($,{interleaved:!0,layers:V.filter(e=>null!==e),overlayRef:O,useDevicePixels:!0,pickingRadius:10,onClick:U,on
1Hover:z}),(0,n.jsx)(D,{viewport:null!=(r=S.viewState)?r:{latitude:0,longitude:0,zoom:1,bearing:0,pitch:0,padding:{top:0,bottom:0,left:0,right:0}}}),(0,n.jsx)(A,{}),d]}))})}},71235:(e,t,i)=>{i.d(t,{p:()=>o});var a=i(81204),l=i(65929),r=i(46971);class n{onAdd(e){this._map=e,e.on("move",this._redraw),this._container=document.createElementNS("http://www.w3.org/2000/svg","svg"),this._container.style.position="absolute",this._container.style.left="0",this._container.style.top="0",this._container.style.width="100%",this._container.style.height="100%",this._container.style.pointerEvents="none";let t=e.getContainer(),i=t.querySelector("#deckgl-overlay");i&&i.parentElement?i.parentElement.insertAdjacentElement("afterend",this._container):t.appendChild(this._container),this._redraw();let a=document.createElement("div");return a.style.display="none",a}onRemove(){this._container&&this._container.parentNode&&this._container.parentNode.removeChild(this._container),this._map&&(this._map.off("move",this._redraw),this._map=null)}getMap(){return this._map}getElement(){return this._container}constructor(e){this._map=null,this._redraw=e}}function o(e){let{redraw:t,captureClick:i,captureDrag:o,captureDoubleClick:d,capturePointerMove:s,captureScroll:c}=e,[,u]=(0,a.useState)(0),m=(0,l.VI)(()=>new n(()=>u(e=>e+1))),v=m.getMap(),p=(0,a.useCallback)(()=>{if(!v)return null;let e=v.getCanvas();return{width:e.width,height:e.height,project:e=>{let t=v.project(e);return[t.x,t.y]},unproject:e=>{let t=v.unproject(e);return[t.lng,t.lat]}}},[v]);if(!v)return null;let g=p();if(!g)return null;let h=t(g);if(!h)return null;let b=m.getElement();return b&&(b.style.pointerEvents=i||o||d||s||c?"auto":"none"),(0,r.createPortal)(h,m.getElement())}},74765:(e,t,i)=>{i.d(t,{Y:()=>o});var a=i(78488),l=i(68640),r=i.n(l);i(81204);var n=i(22490);i(70809);let o=r()(()=>Promise.resolve().then(i.bind(i,70809)).then(e=>({default:e.ReplayMap})),{loadableGenerated:{webpack:()=>[70809]},ssr:!1,loading:()=>(0,a.jsx)(n.A,{})})},83165:(e,t,i)=>{i.d(t,{WO:()=>r,fL:()=>l,rZ:()=>o});var a=i(12806);let l=["#2F80ED","#f37602","#5cd1b0","#9B51E0","#F2C94C","#56CCF2"],r="#27AE60",n="#f95c50",o=e=>e.raceSetupHighlightedBoatId?(e=>{var t;let i=e.raceSetupHighlightedBoatId;if(!e.boats.find(e=>e.id===i))return[];let a=null==(t=e.raceAnalysis)?void 0:t.boats.get(i);if(!a)return[];let o=e.activeSegment,d=[],s=o.startTime;if(a.start){let e=a.start.startTime,t=a.start.timeAtLine;e>s&&d.push({mode:"solid",trackId:"".concat(i,"-gap-pre-start"),boatId:i,solidColor:n,visibleStartTime:s,visibleEndTime:e}),d.push({mode:"solid",trackId:"".concat(i,"-start"),boatId:i,solidColor:r,visibleStartTime:e,visibleEndTime:t}),s=t}return a.legs.forEach((e,t)=>{if(!e)return;e.startTime>s&&d.push({mode:"solid",trackId:"".concat(i,"-gap-").concat(t),boatId:i,solidColor:n,visibleStartTime:s,visibleEndTime:e.startTime});let a=l[t%l.length];d.push({mode:"solid",trackId:"".concat(i,"-leg-").concat(t),boatId:i,solidColor:a,visibleStartTime:e.startTime,visibleEndTime:e.finishTime}),s=e.finishTime}),s<o.endTime&&d.push({mode:"solid",trackId:"".concat(i,"-gap-tail"),boatId:i,solidColor:n,visibleStartTime:s,visibleEndTime:o.endTime}),d})(e):(e=>{let t=e.activeSegment;return[...e.boats.map(t=>{var i,a,l;let r=null==(i=e.raceAnalysis)?void 0:i.boats.get(t.id),n=e.currentGateIndex-1,o=null==r||null==(a=r.legs[0])?void 0:a.startTime,d=null==r||null==(l=r.legs[n])?void 0:l.finishTime;return n>=0&&o&&d?{mode:"fading-solid",trackId:"".concat(t.id,"-beforeleg"),boatId:t.id,solidColor:"grey",visibleStartTime:o,visibleEndTime:d}:null}),...e.boats.map(i=>{var a,l;let r=null==(a=e.raceAnalysis)?void 0:a.boats.get(i.id),n=e.currentGateIndex-1;if(-1===n)if(null==r?void 0:r.start)return[{mode:"solid",trackId:"".concat(i.id,"-leg"),boatId:i.id,solidColor:i.color,visibleStartTime:null==r?void 0:r.start.startTime,visibleEndTime:null==r||null==(l=r.start)?void 0:l.timeAtLine},{mode:"fading-forward",trackId:"".concat(i.id,"-previewnext"),boatId:i.id,solidColor:i.color,visibleStartTime:r.start.timeAtLine,visibleEndTime:r.start.timeAtLine+3e4}];else return[{mode:"fading-forward",trackId:"".concat(i.id,"-previewnext"),boatId:i.id,solidColor:"red",visibleStartTime:t.startTime,visibleEndTime:t.raceConfig.gunTime+18e4}];{let e=-1===n?null==r?void 0:r.start:null==r?void 0:r.legs[n],a=0===n?null==r?void 0:r.start:null==r?void 0:r.legs[n-1];if((null==e?void 0:e.startTime)&&(null==e?void 0:e.finishTime))return[{mode:"solid",trackId:"".concat(i.id,"-leg"),boatId:i.id,solidColor:i.color,visibleStartTime:e.startTime,visibleEndTime:e.finishTime},{mode:"fading-forward",trackId:"".concat(i.id,"-previewnext"),boatId:i.id,solidColor:i.color,visibleStartTime:e.finishTime,visibleEndTime:e.finishTime+3e4}];if(null==a?void 0:a.finishTime)return[{mode:"solid",trackId:"".concat(i.id,"-leg"),boatId:i.id,solidColor:"red",visibleStartTime:a.finishTime,visibleEndTime:t.endTime}]}return null}).reduce((e,t)=>
1[...e,...null!=t?t:[]],[])].filter(a.isNotNullish)})(e)},85569:(e,t,i)=>{i.d(t,{S:()=>n,b:()=>o});var a=i(78488),l=i(12806),r=i(59107);let n=6.5;function o(e){var t,i;let{data:o,redrawContext:d,boatColor:s,boatLength:c,mapAngleDegrees:u,opacity:m,onClick:v,style:p}=e,g=d.project([o.longitude,o.latitude]),h=null!=(t=o.heading)?t:o.cog,b=Math.max(25,null!=(i=(0,r.V)(null!=c?c:n))?i:0)/100;return(0,a.jsx)("g",{style:p,transform:"translate(".concat(g[0]," ").concat(g[1],") rotate(").concat(-u,")"),children:(0,a.jsx)("g",{transform:"translate(-100, -100)",children:(0,a.jsx)("g",{id:"boat",transform:"rotate(".concat((0,l.toDegrees)(h)," 100 100)"),opacity:void 0!==m?m:1,children:(0,a.jsx)("g",{transform:"translate(100 100) scale(".concat(b," ").concat(b,") rotate(-45) translate(-40 -40)"),children:(0,a.jsx)("path",{onClick:v,fill:s,d:"M0,56.55 L14.079,70.635 L23.438,80 C56.384,68.35,80,36.943,80,0 C43.066,0,11.657,23.604,0,56.55z"})})})})})}},99131:(e,t,i)=>{i.d(t,{L:()=>n});var a=i(81204),l=i(64921),r=i(1207);let n=()=>{let e=(0,r.Wf)();return(0,a.useMemo)(()=>{var t,i,a,r;if((null==(t=e.hover)?void 0:t.type)==="map"){if((0,l.P)(e.activeSegment)){let t=e.activeSegment.raceConfig.gunTime,i=null==(r=e.raceAnalysis)||null==(a=r.boats.get(e.hover.boatId))?void 0:a.start;if(e.hover.time>=t&&(null==i?void 0:i.timeAtLine)&&e.hover.time<=(null==i?void 0:i.timeAtLine))return{type:"start",interval:[t,i.timeAtLine],boatId:e.hover.boatId,startAnalysis:i}}let t=null==(i=e.sailingInsights)?void 0:i.getSailingSegmentAt(e.hover.boatId,e.hover.time);if((null==t?void 0:t.type)==="line")return{type:t.type,interval:t.interval,boatId:e.hover.boatId};if((null==t?void 0:t.type)==="maneuver")return{type:"maneuver",interval:t.interval,boatId:e.hover.boatId,maneuver:t}}return null},[e.hover,e.sailingInsights,e.activeSegment,e.raceAnalysis])}}}]); 2//# chunkId=01a0d622-1aa0-7403-b857-00f392f0bc94
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.