|
1
|
-
import{E as P,d as S,e as T,f as O,g as w,h as f,k as F}from"./chunk-SAP35QIC.mjs";import{b as u}from"./chunk-TL2VWYDC.mjs";import{a as g}from"./chunk-CAXAR7DE.mjs";import{SUPPORTED_LANGUAGES as E}from"@tenno-companion/shared/locales";var I=g({"../../data/stats/factions.json":()=>import("./factions-HCRW72KS.mjs"),"../../data/stats/missionTypes.json":()=>import("./missionTypes-UVZI4JJ4.mjs"),"../../data/stats/railjackIntrinsics.json":()=>import("./railjackIntrinsics-LQINTVAY.mjs"),"../../data/stats/regions.json":()=>import("./regions-QXO5IQXY.mjs"),"../../data/stats/sentinels.json":()=>import("./sentinels-J2NG46RT.mjs"),"../../data/stats/warframes.json":()=>import("./warframes-GPPOP5F2.mjs"),"../../data/stats/weapons.json":()=>import("./weapons-N5W26ION.mjs")});var B=g({"../../data/dicts/de.json":()=>import("./de-ZRU7AN5G.mjs"),"../../data/dicts/en.json":()=>import("./en-YN6X3Q2N.mjs"),"../../data/dicts/es.json":()=>import("./es-3VG4626S.mjs"),"../../data/dicts/fr.json":()=>import("./fr-BL4MSUXR.mjs"),"../../data/dicts/it.json":()=>import("./it-5KYQQ6EK.mjs"),"../../data/dicts/ja.json":()=>import("./ja-D5AYFOTS.mjs"),"../../data/dicts/ko.json":()=>import("./ko-UV3QI7KK.mjs"),"../../data/dicts/pl.json":()=>import("./pl-EMRDV3G5.mjs"),"../../data/dicts/pt.json":()=>import("./pt-I2MUIREY.mjs"),"../../data/dicts/ru.json":()=>import("./ru-5AGW3OBP.mjs"),"../../data/dicts/tc.json":()=>import("./tc-2OU3GC62.mjs"),"../../data/dicts/th.json":()=>import("./th-BZER7RQS.mjs"),"../../data/dicts/tr.json":()=>import("./tr-WWZ5NHQZ.mjs"),"../../data/dicts/uk.json":()=>import("./uk-FQH5AZ4F.mjs"),"../../data/dicts/zh.json":()=>import("./zh-NIJQUYPC.mjs")});var i=class{constructor(t,e){this.items=t;this.locale=e}items;locale;static async getHydratedData(t,{locale:e,productCategory:r,skipSorting:s}={}){let c=e&&Object.keys(E).includes(e)?e:"en",[y,l]=await Promise.all([I(`../../data/stats/${t}.json`).then(o=>o.default),B(`../../data/dicts/${c}.json`).then(o=>o.default)]),a=Object.entries(y).filter(([o,p])=>r?"productCategory"in p&&p.productCategory===r:!0).map(([o,p])=>({...this.translateRecursive(p,l),uniqueName:o})),m=s?a:u(a,{locale:e}),d={};for(let o of m)d[o.uniqueName]=o;return d}static translateRecursive(t,e){if(typeof t=="string"){let r=t.startsWith("/Lotus/Language")?e[t]??t:t;return r=r.replace("<ARCHWING>","").trim(),r}if(Array.isArray(t))return t.map(r=>this.translateRecursive(r,e));if(t!==null&&typeof t=="object"){let r={};for(let[s,c]of Object.entries(t))r[s]=this.translateRecursive(c,e);return r}return t}getAll(){return Object.values(this.items)}getByUniqueName(t){return this.items[t]??null}find(t){let e=[];for(let r of Object.values(this.items))t(r)&&e.push(r);return e}};function h(n){let t="partType"in n?n.partType:void 0,{uniqueName:e}=n;return!(t&&P.includes(t)||t==="LWPT_BLADE"&&e.includes("PvPVariant")||e.includes("TnDoppelgangerGrimoire")||e.includes("TnBayonetMeleeWeapon"))}var A=class n extends i{static async create(t={}){let{locale:e="en"}=t,r=await this.getHydratedData("factions",{locale:e});return new n(r,e)}},x=class n extends i{static async create(t={}){let{locale:e="en"}=t,r=await this.getHydratedData("missionTypes",{locale:e});return new n(r,e)}},D=class n extends i{static async create(t={}){let{locale:e="en"}=t,r=await this.getHydratedData("railjackIntrinsics",{locale:e,skipSorting:!0});return new n(r,e)}},W=class n extends i{static async create(t={}){let{locale:e="en"}=t,r=await this.getHydratedData("regions",{locale:e});return new n(r,e)}},b=class n extends i{static async create(t={}){let{locale:e="en"}=t,r=await this.getHydratedData("sentinels",{locale:e});return new n(r,e)}},H=class n extends i{getPrimes(){return this.find(t=>t.variantType==="VT_PRIME")}static async create(t={}){let{locale:e="en"}=t,r=await this.getHydratedData("warframes",{locale:e,productCategory:"Suits"});return new n(r,e)}},R=class n extends i{static async create(t={}){let{locale:e="en"}=t,r=await this.getHydratedData("warframes",{locale:e,productCategory:"SpaceSuits"});return new n(r,e)}},C=class n extends i{static async create(t={}){let{locale:e="en"}=t,r=await this.getHydratedData("warframes",{locale:e,productCategory:"MechSuits"});return new n(r,e)}},M=class n extends i{getFiltered(t,e){return this.find(r=>e(r)?t.masterable?h(r):!0:!1)}getPrimaries(t={}){return this.getFiltered(t,e=>e.productCategory==="LongGuns")}getSecondaries(t={}){return this.getFiltered(t,e=>e.productCategory==="Pistols"&&!("partType"in e))}getMelees(t={}){return this.getFiltered(t,e=>e.productCategory==="Melee")}getArchguns(t={}){return this.getFiltered(t,e=>e.productCategory==="SpaceGuns")}getArchmelees(t={}){return this.getFiltered(t,e=>e.productCategory==="SpaceMelee")}getAmps(t={}){return this.getFiltered(t,e=>{let r=e.productCategory==="OperatorAmps",s="partType"in e&&S.includes(e.partType);return r||s})}getRobotics(t={}){return this.getFiltered(t,e=>e.productCategory==="SentinelWeapons")}getKDrives(t={}){return this.getFiltered(t,e=>"partType"in e&&O.includes(e.partType))}getKitguns(t={}){return this.getFiltered(t,e=>"partType"in e&&w.includes(e.partType))}getZaws(t={}){return this.getFiltered(t,e=>"partType"in e&&F.includes(e.partType))}static async create(t={}){let{locale:e="en"}=t,r=await this.getHydratedData("weapons",{locale:e});return new n(r,e)}},v=class n extends i{static async create(t={}){let{locale:e="en"}=t,[r,s]=await Promise.all([this.getHydratedData("sentinels",{locale:e}),this.getHydratedData("weapons",{locale:e})]),c={};for(let[l,a]of Object.entries(r))c[l]=a;for(let[l,a]of Object.entries(s)){let{productCategory:m}=a,d=m==="SentinelWeapons",o="partType"in a&&f.includes(a.partType),p="partType"in a&&T.includes(a.partType);(d||o||p)&&(c[l]=a)}let y=u(c,{locale:e});return new n(y,e)}getFiltered(t,e){return this.find(r=>e(r)?t.masterable?h(r):!0:!1)}getSentinels(t={}){return this.getFiltered(t,e=>e.productCategory==="Sentinels")}getMOAs(t={}){return this.getFiltered(t,e=>"partType"in e&&f.includes(e.partType))}getHounds(t={}){return this.getFiltered(t,e=>"partType"in e&&T.includes(e.partType))}getBeasts(t={}){let{includeSpecial:e=!1}=t,r=this.getFiltered(t,s=>s.productCategory==="KubrowPets");if(e){let s=this.getFiltered(t,c=>c.productCategory==="SpecialItems"&&"exalted"in c);return u([...r,...s],{locale:this.locale})}return r}getSentinelWeapons(t={}){return this.getFiltered(t,e=>e.productCategory==="SentinelWeapons")}};export{R as ArchwingProvider,A as FactionProvider,x as MissionTypeProvider,C as NecramechProvider,v as PetProvider,D as RailjackIntrinsicProvider,W as RegionProvider,b as SentinelProvider,H as WarframeProvider,M as WeaponProvider};
|