1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/nivo-line.es-DMybuHyK.js","assets/index-D6h6POgK.js","assets/index-CN_6aBzh.css","assets/nivo-core.es-CyZM7F2I.js","assets/string-B6NtwyIl.js","assets/_defineProperty-Bz5qGQ-b.js","assets/_isIterateeCall-rO7taIQZ.js","assets/_baseAssignValue-D68-QOrz.js","assets/sortBy-D2IqbDWA.js","assets/identity-CdjJNdvM.js","assets/_initCloneObject-CFOa3ZOr.js","assets/isArrayLikeObject-D5XUxk-U.js","assets/get-DrasMaYq.js","assets/_arrayIncludesWith-XJRwRZaz.js","assets/isEqual-BkuW0-GO.js","assets/nivo-legends.es-BMCEJFtR.js","assets/linear-dN3TQtjf.js","assets/nivo-axes.es-BAU5QLWA.js","assets/uniqBy-D-0jmfYm.js","assets/noop-BdyXNs-O.js","assets/isDate-BCqP632m.js","assets/time-Ci5sWZ80.js","assets/year-yAtznGmD.js","assets/uniqueId-DHQDEogl.js","assets/nivo-voronoi.es-C-eXOphV.js","assets/array-2GBN5xbU.js","assets/line-nH_P9Ild.js"])))=>i.map(i=>d[i]); 2import{j as e,t as f,d as w,aN as U,f as q,r as j,a6 as S,b6 as l,b7 as v,b8 as M,b9 as I,ba as R,bb as T,g as k,R as z,bW as F,aL as Q,b4 as K,bO as X,bk as J,ai as p,b as Z,u as ee,F as ae,b5 as se,bX as te,a9 as re,ax as ie,aQ as ne,ah as C,$ as oe,ag as le,bY as de}from"./index-D6h6POgK.js";import{G as ce}from"./GenericPage-LB9a0fml.js";import{P as ge}from"./PageHeader-Bg2zCPUp.js";import{T as me}from"./Tabs-DaiEIOOI.js";import{L as he}from"./shared-BtgZHUzh.js";import{u as $,h as ue,g as E,a as P,b as _,c as L,e as D,f as V,d as A}from"./TableHeader-DPrR6COp.js";import{s as H}from"./cellStyle-DNh9v2D5.js";import{S as G}from"./Table-cc6qULRG.js";import{P as B,a as b}from"./tableFilters-CP7s0IXz.js";import{P as N}from"./tablePagination-DAjGE-UK.js";import{T as O}from"./TankFilters2-DEKmmqEJ.js";import{c as pe}from"./LazyClient-0EXbxws4.js";import{n as xe}from"./nivoTheme-CTD6JYPn.js";import"./ServerSelection-BCO3QWX4.js";import"./SelectButtonGroup-EMxuxGvn.js";import"./colors-Ceb-GOgv.js";import"./CaretRight.es-CR8YaoZ2.js";import"./ArrowClockwise.es-C8elHHK1.js";import"./identity-CdjJNdvM.js";import"./usePlayerData-XBlMaULM.js";import"./TierFilter-DdnFT0y3.js";import"./FilterButton-G2ptpqqN.js";const ye=pe(()=>U(()=>import("./nivo-line.es-DMybuHyK.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26])).then(s=>s.ResponsiveLine)),fe=w.div.withConfig({displayName:"MasteryGraph__GraphContainer",componentId:"sc-1um591a-0"})(["height:450px;tr{background-color:"," !important;}"],f.darkgray2);function be(s){const a=[{id:"3rd",data:s.data.data.map(t=>({x:t.date,y:t.mastery[0]})).reverse()},{id:"2nd",data:s.data.data.map(t=>({x:t.date,y:t.mastery[1]})).reverse()},{id:"1st",data:s.data.data.map(t=>({x:t.date,y:t.mastery[2]})).reverse()},{id:"Ace",data:s.data.data.map(t=>({x:t.date,y:t.mastery[3]})).reverse()}];return e.jsx(fe,{children:e.jsx(ye,{theme:{...xe},data:a,margin:{top:50,right:70,bottom:70,left:80},xScale:{type:"point"},yScale:{type:"linear",min:"auto",max:"auto",stacked:!1,reverse:!1},enableSlices:"x",axisTop:null,axisRight:null,axisBottom:{tickSize:5,tickPadding:5,tickRotation:-45,legendOffset:70,legendPosition:"middle",format:t=>t.slice(5)},axisLeft:{tickSize:5,tickPadding:5,tickRotation:0,legend:"Experience",legendOffset:-50,legendPosition:"middle",tickValues:6},pointSize:10,colors:[f.mastery_third,f.mastery_second,f.mastery_first,f.mastery_ace],pointColor:{theme:"background"},pointBorderWidth:2,pointBorderColor:{from:"serieColor"},pointLabelYOffset:-12,useMesh:!0,legends:[{anchor:"bottom-right",direction:"column",justify:!1,translateX:100,translateY:0,itemsSpacing:0,itemDirection:"left-to-right",itemWidth:80,itemHeight:20,itemOpacity:.75,symbolSize:12,symbolShape:"circle",symbolBorderColor:"rgba(0, 0, 0, .5)",itemTextColor:"rgb(210, 210, 210)",effects:[{on:"hover",style:{itemBackgroun
2d:"rgba(0, 0, 0, .03)",itemOpacity:1}}]}],animate:!1})})}function je({data:s,status:a}){return!s||!a?e.jsx("div",{children:"Loading..."}):e.jsx("div",{style:{backgroundColor:f.darkgray5,marginLeft:"-8px"},children:e.jsx(be,{data:s,status:a})})}function Se(s,a){const t=g=>`rgb(${255+g*a},255,${255+g*a})`,i=g=>`rgb(255,${255-g*a},${255-g*a})`;return s>0?i(s):t(s)}const y=(s,a)=>({getValue:t})=>{const i=t();return e.jsxs("span",{style:{color:a?Se(i,a):void 0},children:[i>0?"+":"",s?`${Q(i,3)}%`:i]})};function W({row:s,server:a}){const{data:t}=q({queryKey:["poliroidMasteryHistory",a,s.original.id],queryFn:()=>fetch(`https://poliroid.me/mastery/api/v2/data/${a}/vehicle/${s.original.id}`).then(i=>i.json())});return e.jsx(je,{data:t?.data,status:t?.status})}const c=A();function Ce({data:s,mastery:a,server:t,loggedIn:i}){const[g,x]=j.useState(s),h=S.useMemo(()=>[c.accessor("nation",{cell:v,header:l.nation}),c.accessor("class",{cell:M,header:l.class}),c.accessor("tier",{cell:I,header:l.tier}),c.accessor("name",{cell:R,header:l.name}),c.accessor(a,{header:a[0].toUpperCase()+a.slice(1,a.length)+l.masteryReqs}),c.accessor(`7diff${a}`,{cell:y(!1,50),header:"7"+l.dayChange+"Î",sortingFn:"basic"}),c.accessor(`7percent${a}`,{cell:y(!0,50),header:"7"+l.dayChange+"%Î",sortingFn:"basic"}),c.accessor(`14diff${a}`,{cell:y(!1,30),header:"14"+l.dayChange+"Î",sortingFn:"basic"}),c.accessor(`14percent${a}`,{cell:y(!0,30),header:"14"+l.dayChange+"%Î",sortingFn:"basic"}),c.accessor(`30diff${a}`,{cell:y(!1,20),header:"30"+l.dayChange+"Î",sortingFn:"basic"}),c.accessor(`30percent${a}`,{cell:y(!0,20),header:"30"+l.dayChange+"%Î",sortingFn:"basic"}),c.accessor("isPrem",{header:"",filterFn:b,meta:{Filter:B}})],[a]),u=S.useMemo(()=>[...h,c.accessor("moe",{header:"Your MoEs",cell:r=>{const n=r.getValue();return n?e.jsx("img",{decoding:"async",width:24,height:24,src:`/markIcons/mark_${n}.webp`,alt:`World of Tanks ${n} Marks of Excellence `,loading:"lazy"}):null},filterFn:b}),c.accessor("mastery",{header:"Your Mastery",cell:r=>{const n=r.getValue();return e.jsx("img",{decoding:"async",width:24,height:24,src:`/masteryIcons/${n}.webp`,alt:`World of Tanks ${n} Mastery `,loading:"lazy"})},filterFn:b})],[h]),o=$({data:g,columns:i?u:h,getCoreRowModel:L(),getFilteredRowModel:_(),getSortedRowModel:P(),getPaginationRowModel:E(),getExpandedRowModel:ue(),initialState:{pagination:{pageSize:50},sorting:[{id:`7percent${a}`,desc:!1}],columnVisibility:{isPrem:!1}}});return e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{marginBottom:10},children:e.jsx(O,{data:s,setFilteredData:x,disableFilters:{minBattles:!0}})}),e.jsx(T,{children:e.jsxs(G,{children:[e.jsx(D,{headerGroups:o.getHeaderGroups(),saveSort:!0}),e.jsx("tbody",{children:o.getRowModel().rows.map(r=>e.jsxs(S.Fragment,{children:[e.jsx("tr",{style:{cursor:"pointer"},onClick:()=>r.toggleExpanded(),...r.getToggleExpandedHandler(),onMouseDown:n=>{n.button===1&&window.open(k({route:z.TANK_PAGE,server:t,id:r.original.id,name:r.original.name}))},children:r.getVisibleCells().map(n=>e.jsx("td",{style:H(n.column.getIsSorted(),n.column.id,n.getValue()),children:V(n.
2column.columnDef.cell,n.getContext())},n.id))}),r.getIsExpanded()&&e.jsx(F,{children:e.jsx("td",{colSpan:r.getVisibleCells().length,children:e.jsx(W,{row:r,server:t})})})]},r.id))})]})}),e.jsx(N,{pageSizes:[50,100,250,500],table:o})]})}const m=A(),Y=[m.accessor("nation",{cell:v,header:l.nation}),m.accessor("class",{cell:M,header:l.class}),m.accessor("tier",{cell:I,header:l.tier}),m.accessor("name",{cell:R,header:l.name}),m.accessor("3rd",{header:()=>e.jsx(p,{message:"Class III",children:e.jsx("img",{loading:"lazy",decoding:"async",src:"/masteryIcons/1.webp",width:24,height:24,alt:"3rd"})})}),m.accessor("2nd",{header:()=>e.jsx(p,{message:"Class II",children:e.jsx("img",{loading:"lazy",decoding:"async",src:"/masteryIcons/2.webp",width:24,height:24,alt:"2nd"})})}),m.accessor("1st",{header:()=>e.jsx(p,{message:"Class I",children:e.jsx("img",{loading:"lazy",decoding:"async",src:"/masteryIcons/3.webp",width:24,height:24,alt:"1st"})})}),m.accessor("ace",{header:()=>e.jsx(p,{message:"Ace Tanker",children:e.jsx("img",{loading:"lazy",decoding:"async",src:"/masteryIcons/4.webp",width:24,height:24,alt:"Ace"})})}),m.accessor("isPrem",{header:"",filterFn:b,meta:{Filter:B}})],we=[...Y,m.accessor("moe",{header:"Your MoEs",cell:s=>{const a=s.getValue();return a?e.jsx("img",{decoding:"async",width:24,height:24,src:`/markIcons/mark_${a}.webp`,alt:`World of Tanks ${a} Marks of Excellence `,loading:"lazy"}):null},filterFn:b}),m.accessor("mastery",{header:"Your Mastery",cell:s=>{const a=s.getValue();return e.jsx("img",{decoding:"async",width:24,height:24,src:`/masteryIcons/${a}.webp`,alt:`World of Tanks ${a} Mastery `,loading:"lazy"})},filterFn:b})];function ve({data:s,server:a,loggedIn:t}){const[i,g]=j.useState(s),[{sort:x,direction:h}]=K({sort:J,direction:X}),u=$({data:i,columns:t?we:Y,getCoreRowModel:L(),getFilteredRowModel:_(),getSortedRowModel:P(),getPaginationRowModel:E(),initialState:{pagination:{pageSize:50},sorting:[{id:x??"ace",desc:h??!0}],columnVisibility:{isPrem:!1}}});return e.jsxs(e.Fragment,{children:[e.jsx("div",{style:{marginBottom:10},children:e.jsx(O,{data:s,setFilteredData:g,disableFilters:{minBattles:!0}})}),e.jsx(T,{children:e.jsxs(G,{pointer:!0,children:[e.jsx(D,{headerGroups:u.getHeaderGroups(),saveSort:!0}),e.jsx("tbody",{children:u.getRowModel().rows.map(o=>e.jsxs(S.Fragment,{children:[e.jsx("tr",{onClick:()=>o.toggleExpanded(),...o.getToggleExpandedHandler(),onMouseDown:r=>{r.button===1&&window.open(k({route:z.TANK_PAGE,server:a,id:o.original.id,name:o.original.name}))},children:o.getVisibleCells().map(r=>e.jsx("td",{style:H(r.column.getIsSorted(),r.column.id,Number(r.getValue())),children:V(r.column.columnDef.cell,r.getContext())},r.id))},o.id),o.getIsExpanded()&&e.jsx(F,{children:e.jsx("td",{colSpan:o.getVisibleCells().length,children:e.jsx(W,{row:o,server:a})})})]},o.id))})]})}),e.jsx(N,{pageSizes:[50,100,250,500],table:u})]})}const Me=w.div.withConfig({displayName:"MasteryPage__TabsContainer",componentId:"sc-13z921v-0"})(["display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;flex-wrap:wrap;"]);function Ie({initialServer:s,initialChangeData:a,updated:t}){j.useEffect(()=>{Z("page-visit",{page:"mastery",server:s})},[]);const i=ee(d=>d.server),g=ae(d=>d.wgId),[x,h]=se("mode",te(["val","ace","1st","2nd","3rd"]).withDefault("val")),u=re(),o=ie();j.useEffect(()=>{u({to:"/mastery/$server",params:{server:ne[i]}})},[u,i]);function r(d){switch(d){case"val":return"Values";case"ace":return e.jsx(p,{message:"Î Ace Tanker %",children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4},children:["Î",e.jsx("img",{loading:"lazy",decoding:"async",src:"/masteryIcons/4.webp",width:24,height:24,alt:d}),"%"]})});case"1st":return e.jsx(p,{message:"Î 1st Class %",children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4},children:["Î",e.jsx("img",{loading:"lazy",decoding:"async",src:"/masteryIcons/3.webp",width:24,height:24,alt:d}),"%"]})});case"2nd":return e.jsx(p,{message:"Î 2nd Class %",children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4},children:["Î",e.jsx("img",{loading:"lazy",decoding:"async",src:"/masteryIcons/2.webp",width:24,height:24,alt:
2d}),"%"]})});case"3rd":return e.jsx(p,{message:"Î 3rd Class %",children:e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:4},children:["Î",e.jsx("img",{loading:"lazy",decoding:"async",src:"/masteryIcons/1.webp",width:24,height:24,alt:d}),"%"]})});case"100":return e.jsx("div",{style:{display:"flex",alignItems:"center"},children:"Î100%"})}return d==="val"?"Values":`Î${d}%`}const n=j.useMemo(()=>["val","ace","1st","2nd","3rd"].map(d=>({title:r(d),onClick:()=>{h(d)}})),[h]);return e.jsx(e.Fragment,{children:e.jsxs(ce,{children:[e.jsx(ge,{icon:e.jsx(oe,{size:40,weight:"bold"}),title:"Mastery Requirements",description:"Discover how much XP you need to ace a tank",showServerSelection:!0,lastUpdate:e.jsxs(he,{children:["Last Update:"," ",C.fromISO(t.replace(" ","T")).toLocaleString(C.DATETIME_MED_WITH_SECONDS)]})}),e.jsxs(le,{attribution:!0,children:[e.jsx(Me,{children:e.jsx(me,{tabs:n})}),e.jsx("div",{style:{width:o?"calc(100vw - 46px)":""},children:x=="val"?e.jsx(ve,{data:a,server:i,loggedIn:g!==null}):e.jsx(Ce,{data:a,mastery:x,server:i,loggedIn:g!==null})})]})]})})}function Ke(){return e.jsx(Ie,{...de.useLoaderData()})}export{Ke as component};
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.