@flesh-and-blood/search 3.1.57 → 3.1.59
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.
- package/dist/index.js +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
var Wr=Object.create;var se=Object.defineProperty,$r=Object.defineProperties,Gr=Object.getOwnPropertyDescriptor,jr=Object.getOwnPropertyDescriptors,Kr=Object.getOwnPropertyNames,gt=Object.getOwnPropertySymbols,Zr=Object.getPrototypeOf,yt=Object.prototype.hasOwnProperty,Ur=Object.prototype.propertyIsEnumerable;var mt=(e,t,r)=>t in e?se(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,H=(e,t)=>{for(var r in t||(t={}))yt.call(t,r)&&mt(e,r,t[r]);if(gt)for(var r of gt(t))Ur.call(t,r)&&mt(e,r,t[r]);return e},Z=(e,t)=>$r(e,jr(t));var vt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Vr=(e,t)=>{for(var r in t)se(e,r,{get:t[r],enumerable:!0})},kt=(e,t,r,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Kr(t))!yt.call(e,i)&&i!==r&&se(e,i,{get:()=>t[i],enumerable:!(a=Gr(t,i))||a.enumerable});return e};var U=(e,t,r)=>(r=e!=null?Wr(Zr(e)):{},kt(t||!e||!e.__esModule?se(r,"default",{value:e,enumerable:!0}):r,e)),Yr=e=>kt(se({},"__esModule",{value:!0}),e);var V=vt((dn,Gt)=>{var de=Object.defineProperty,Qr=Object.defineProperties,Jr=Object.getOwnPropertyDescriptor,Xr=Object.getOwnPropertyDescriptors,qr=Object.getOwnPropertyNames,bt=Object.getOwnPropertySymbols,At=Object.prototype.hasOwnProperty,ea=Object.prototype.propertyIsEnumerable,Dt=(e,t,r)=>t in e?de(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ta=(e,t)=>{for(var r in t||(t={}))At.call(t,r)&&Dt(e,r,t[r]);if(bt)for(var r of bt(t))ea.call(t,r)&&Dt(e,r,t[r]);return e},ra=(e,t)=>Qr(e,Xr(t)),aa=(e,t)=>{for(var r in t)de(e,r,{get:t[r],enumerable:!0})},ia=(e,t,r,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of qr(t))!At.call(e,i)&&i!==r&&de(e,i,{get:()=>t[i],enumerable:!(a=Jr(t,i))||a.enumerable});return e},na=e=>ia(de({},"__esModule",{value:!0}),e),Mt={};aa(Mt,{Bond:()=>Ft,Class:()=>Tt,Flow:()=>xt,Foiling:()=>Ct,Format:()=>St,Fusion:()=>Et,Hero:()=>Ot,Keyword:()=>_t,Language:()=>Ht,Rarity:()=>wt,Release:()=>It,ReleaseEdition:()=>Lt,ReleaseType:()=>Wt,Subtype:()=>zt,Talent:()=>Pt,Treatment:()=>Bt,Type:()=>Rt,coreSetIdentifiers:()=>ga,fullSetIdentifiers:()=>Pe,getCanAddToDeck:()=>oa,getCardIdentifier:()=>sa,getDefaultPrinting:()=>Fa,getIsArenaCard:()=>Nt,getIsBooster:()=>ua,getIsDeckCard:()=>Le,getIsDraftable:()=>ha,getIsPreconstructed:()=>pa,getIsReprint:()=>da,getPrint:()=>Aa,getShouldRotateCardImage:()=>la,getSpecialPrinting:()=>Ba,orderedFullSetBlackBorderIdentifiers:()=>Ma,promoSetIdentifiers:()=>ya,releases:()=>va,setIdentifierToSetMappings:()=>$t,setToSetIdentifierMappings:()=>ka,supplementalSetIdentifiers:()=>ma});Gt.exports=na(Mt);var Ct=(e=>(e.C="Cold",e.G="Gold",e.R="Rainbow",e))(Ct||{}),Bt=(e=>(e.AB="Alternate Border",e.AA="Alternate Art",e.AT="Alternate Text",e.EA="Extended Art",e.FA="Full Art",e))(Bt||{}),Tt=(e=>(e.NotClassed="NotClassed",e.Generic="Generic",e.Adjudicator="Adjudicator",e.Assassin="Assassin",e.Bard="Bard",e.Brute="Brute",e.Guardian="Guardian",e.Illusionist="Illusionist",e.Mechanologist="Mechanologist",e.Merchant="Merchant",e.Ninja="Ninja",e.Ranger="Ranger",e.Runeblade="Runeblade",e.Shapeshifter="Shapeshifter",e.Warrior="Warrior",e.Wizard="Wizard",e))(Tt||{}),Ft=(e=>(e.Earth="Earth",e))(Ft||{}),xt=(e=>(e.Lightning="Lightning",e))(xt||{}),St=(e=>(e.Blitz="Blitz",e.BlitzLivingLegend="Blitz (Living Legend)",e.Clash="Clash",e.ClassicConstructed="Classic Constructed",e.ClassicConstructedLivingLegend="Classic Constructed (Living Legend)",e.Commoner="Commoner",e.Draft="Draft",e.Open="Open",e.Sealed="Sealed",e.UltimatePitFight="Ultimate Pit Fight",e))(St||{}),Et=(e=>(e.Earth="Earth",e.Ice="Ice",e.Lightning="Lightning",e))(Et||{}),wt=(e=>(e.Token="Token",e.Common="Common",e.Rare="Rare",e.SuperRare="Super Rare",e.Majestic="Majestic",e.Marvel="Marvel",e.Legendary="Legendary",e.Fabled="Fabled",e.Promo="Promo",e))(wt||{}),It=(e=>(e.ArcaneRising="Arcane Rising",e.BrightLights="Bright Lights",e.CrucibleOfWar="Crucible of War",e.DuskTillDawn="Dusk till Dawn",e.Dynasty="Dynasty",e.Everfest="Everfest",e.HeavyHitters="Heavy Hitters",e.HistoryPack1="History Pack 1",e.Monarch="Monarch",e.Outsiders="Outsiders",e.PartTheMistveil="Part the Mistveil",e.Rosetta="Rosetta",e.TalesOfAria="Tales of Aria",e.Uprising="Uprising",e.WelcomeToRathe="Welcome to Rathe",e.ArmoryDeckKayo="Armory Deck: Kayo",e.ArmoryDeckBoltyn="Armory Deck: Boltyn",e.ArmoryDeckAzalea="Armory Deck: Azalea",e.ArmoryDeckDash="Armory Deck: Dash",e.ArakniBlitzDeck="Arakni Blitz Deck",e.AuroraBlitzDeck="Aurora Blitz Deck",e.AzaleaBlitzDeck="Azalea Blitz Deck",e.BenjiBlitzDeck="Benji Blitz Deck",e.BetsyBlitzDeck="Betsy Blitz Deck",e.BoltynBlitzDeck="Boltyn Blitz Deck",e.BriarBlitzDeck="Briar Blitz Deck",e.ChaneBlitzDeck="Chane Blitz Deck",e.DromaiBlitzDeck="Dromai Blitz Deck",e.EnigmaBlitzDeck="Enigma Blitz Deck",e.FaiBlitzDeck="Fai Blitz Deck",e.KassaiBlitzDeck="Kassai Blitz Deck",e.KatsuBlitzDeck="Katsu Blitz Deck",e.KayoBlitzDeck="Kayo Blitz Deck",e.LeviaBlitzDeck="Levia Blitz Deck",e.LexiBlitzDeck="Lexi Blitz Deck",e.NuuBlitzDeck="Nuu Blitz Deck",e.OldhimBlitzDeck="Oldhim Blitz Deck",e.OlympiaBlitzDeck="Olympia Blitz Deck",e.PrismBlitzDeck="Prism Blitz Deck",e.RhinarBlitzDeck="Rhinar Blitz Deck",e.RiptideBlitzDeck="Riptide Blitz Deck",e.UzuriBlitzDeck="Uzuri Blitz Deck",e.VictorBlitzDeck="Victor Blitz Deck",e.ZenBlitzDeck="Zen Blitz Deck",e.FirstStrikeAurora="1st Strike: Aurora",e.FirstStrikeTerra="1st Strike: Terra",e.BravoHeroDeck="Bravo Hero Deck",e.DorintheaHeroDeck="Dorinthea Hero Deck",e.KatsuHeroDeck="Katsu Hero Deck",e.RhinarHeroDeck="Rhinar Hero Deck",e.ClassicBattlesRhinarDorinthea="Classic Battles: Rhinar vs Dorinthea",e.IraWelcomeDeck="Ira Welcome Deck",e.RoundTheTable="Round the Table: TCC x LSS",e.Promos="Promos",e))(It||{}),Lt=(e=>(e.Alpha="Alpha",e.First="First",e.Unlimited="Unlimited",e.Promo="Promo",e))(Lt||{}),Pt=(e=>(e.Draconic="Draconic",e.Earth="Earth",e.Elemental="Elemental",e.Ice="Ice",e.Light="Light",e.Lightning="Lightning",e.Mystic="Mystic",e.Royal="Royal",e.Shadow="Shadow",e))(Pt||{}),Rt=(e=>(e.Action="Action",e.AttackReaction="Attack Reaction",e.Block="Block",e.DefenseReaction="Defense Reaction",e.DemiHero="Demi-Hero",e.Equipment="Equipment",e.Hero="Hero",e.Instant="Instant",e.Macro="Macro",e.Mentor="Mentor",e.Resource="Resource",e.Token="Token",e.Weapon="Weapon",e))(Rt||{}),zt=(e=>(e.OneHanded="1H",e.TwoHanded="2H",e.Affliction="Affliction",e.Ally="Ally",e.Angel="Angel",e.Arms="Arms",e.Arrow="Arrow",e.Ash="Ash",e.Attack="Attack",e.Aura="Aura",e.Axe="Axe",e.Base="Base",e.Book="Book",e.Bow="Bow",e.Chest="Chest",e.Chi="Chi",e.Claw="Claw",e.Club="Club",e.Construct="Construct",e.Dagger="Dagger",e.Demon="Demon",e.Dragon="Dragon",e.Evo="Evo",e.Fiddle="Fiddle",e.Figment="Figment",e.Flail="Flail",e.Gem="Gem",e.Gun="Gun",e.Hammer="Hammer",e.Head="Head",e.Invocation="Invocation",e.Item="Item",e.Landmark="Landmark",e.Lute="Lute",e.Legs="Legs",e.NonAttack="Non-Attack",e.OffHand="Off-Hand",e.Orb="Orb",e.Pistol="Pistol",e.Quiver="Quiver",e.Rock="Rock",e.Shuriken="Shuriken",e.Scepter="Scepter",e.Scroll="Scroll",e.Scythe="Scythe",e.Song="Song",e.Staff="Staff",e.Sword="Sword",e.Trap="Trap",e.Wrench="Wrench",e.Young="Young",e))(zt||{}),Ot=(e=>(e.Arakni="Arakni",e.Aurora="Aurora",e.Azalea="Azalea",e.Benji="Benji",e.Betsy="Betsy",e.Blaze="Blaze",e.Boltyn="Boltyn",e.Bravo="Bravo",e.Brevant="Brevant",e.Briar="Briar",e.Brutus="Brutus",e.Chane="Chane",e.Dash="Dash",e.DataDoll="Data Doll",e.Dorinthea="Dorinthea",e.Dromai="Dromai",e.Emperor="Emperor",e.Enigma="Enigma",e.Fai="Fai",e.Florian="Florian",e.GenisWotchuneed="Genis Wotchuneed",e.Ira="Ira",e.Iyslander="Iyslander",e.Kano="Kano",e.Kassai="Kassai",e.Katsu="Katsu",e.Kavdaen="Kavdaen",e.Kayo="Kayo",e.Levia="Levia",e.Lexi="Lexi",e.Maxx="Maxx",e.Melody="Melody",e.Nuu="Nuu",e.Oldhim="Oldhim",e.Olympia="Olympia",e.Oscilio="Oscilio",e.Prism="Prism",e.Rhinar="Rhinar",e.Riptide="Riptide",e.Ruudi="Ruu'di",e.Shiyana="Shiyana",e.Squizzy="Squizzy",e.Starvo="Starvo",e.Taipanis="Taipanis",e.Taylor="Taylor",e.Teklovossen="Teklovossen",e.Terra="Terra",e.Theryon="Theryon",e.Uzuri="Uzuri",e.Valda="Valda",e.Verdance="Verdance",e.Victor="Victor",e.Vynnset="Vynnset",e.Viserai="Viserai",e.Yorick="Yorick",e.Yoji="Yoji",e.Zen="Zen",e))(Ot||{}),_t=(e=>(e.Ambush="Ambush",e.Amp="Amp",e.ArcaneBarrier="Arcane Barrier",e.ArcaneShelter="Arcane Shelter",e.Awaken="Awaken",e.Battleworn="Battleworn",e.BeatChest="Beat Chest",e.BladeBreak="Blade Break",e.BloodDebt="Blood Debt",e.Boost="Boost",e.Bond="Bond",e.Channel="Channel",e.Charge="Charge",e.Clash="Clash",e.Cloaked="Cloaked",e.Combo="Combo",e.Contract="Contract",e.Crank="Crank",e.Crush="Crush",e.Decompose="Decompose",e.Dominate="Dominate",e.Ephemeral="Ephemeral",e.Essence="Essence",e.EvoUpgrade="Evo Upgrade",e.Flow="Flow",e.Freeze="Freeze",e.Fusion="Fusion",e.Galvanize="Galvanize",e.GoAgain="Go again",e.Guardwell="Guardwell",e.Heave="Heave",e.Intimidate="Intimidate",e.Legendary="Legendary",e.Material="Material",e.Meld="Meld",e.Modular="Modular",e.Mirage="Mirage",e.Negate="Negate",e.Opt="Opt",e.Overpower="Overpower",e.Pairs="Pairs",e.Piercing="Piercing",e.Phantasm="Phantasm",e.Protect="Protect",e.Quell="Quell",e.Reload="Reload",e.Reprise="Reprise",e.RuneGate="Rune Gate",e.Rupture="Rupture",e.Scrap="Scrap",e.Solflare="Solflare",e.Specialization="Specialization",e.Spectra="Spectra",e.Spellvoid="Spellvoid",e.Stealth="Stealth",e.Surge="Surge",e.Temper="Temper",e.Tower="Tower",e.Transform="Transform",e.Transcend="Transcend",e.Universal="Universal",e.Unfreeze="Unfreeze",e.Unity="Unity",e.Wager="Wager",e.Ward="Ward",e))(_t||{}),sa=(e,t)=>{let{name:r,pitch:a}=e,i=r.toLowerCase().replace("//","-").normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"").replace(/ /g,"-").replace("\xED","i").replace(/[^a-z0-9 -]/g,"").replace(/--/,"-"),n="";switch(a){case"1":case 1:n=t?"-1":"-red";break;case"2":case 2:n=t?"-2":"-yellow";break;case"3":case 3:n=t?"-3":"-blue";break}return`${i}${n}`},Nt=(e,t)=>{let r=Le(e,t),a=["Demi-Hero","Equipment","Weapon"].some(i=>e.includes(i));return!r&&a},Le=(e,t)=>{let r=["Action","Attack Reaction","Block","Defense Reaction","Instant","Mentor","Resource"].some(i=>e.includes(i)),a=!t||!t.includes("Ephemeral");return r&&a},oa=(e,t)=>{let r=Nt(e,t),a=Le(e,t);return r||a},la=e=>{var t,r;return((t=e.keywords)==null?void 0:t.includes("Meld"))||((r=e.subtypes)==null?void 0:r.includes("Landmark"))||!1},Ht=(e=>(e.English="English",e.French="Fran\xE7ais",e.German="Deutsch",e.Italian="Italiano",e.Japanese="\u65E5\u672C\u8A9E",e.Spanish="Espa\xF1ol",e))(Ht||{}),we=["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],Wt=(e=>(e.ArmoryDeck="Armory Deck",e.BlitzDeck="Blitz Deck",e.ClassicBattles="Classic Battles",e.ExpansionBooster="Expansion Booster",e.FirstStrike="1st Strike",e.HistoryPack="History Pack",e.MasteryPack="Mastery Pack",e.RoundTheTable="Round the Table",e.StandaloneBooster="Standalone Booster",e.WelcomeDeck="Welcome Deck",e))(Wt||{}),ca=["Expansion Booster","Standalone Booster"],ua=e=>ca.includes(e),da=e=>e==="History Pack",ha=e=>e==="Standalone Booster",fa=["Armory Deck","Blitz Deck","Classic Battles","1st Strike","Welcome Deck"],pa=e=>fa.includes(e),ga={wtr:"Welcome to Rathe",arc:"Arcane Rising",mon:"Monarch",ele:"Tales of Aria",upr:"Uprising",out:"Outsiders",evo:"Bright Lights",hvy:"Heavy Hitters",mst:"Part the Mistveil",ros:"Rosetta"},ma={cru:"Crucible of War",evr:"Everfest","1hp":"History Pack 1",hp1:"History Pack 1",dyn:"Dynasty",dtd:"Dusk till Dawn"},ya=["fab","her","jdg","lgs","lss","oxo","xxx","win"],va=[{cards:30,classes:["Ninja"],heroes:["Ira"],languages:we,release:"Ira Welcome Deck",releaseDate:new Date("2019-08-31T00:00:00.000Z"),releaseType:"Welcome Deck",setIdentifiers:["ira"],talents:[]},{cards:226,classes:["Brute","Guardian","Ninja","Warrior"],heroes:["Bravo","Dorinthea","Katsu","Rhinar"],languages:["English"],release:"Welcome to Rathe",releaseDate:new Date("2019-10-11T00:00:00.000Z"),releaseType:"Standalone Booster",setIdentifiers:["wtr"],talents:[]},{cards:219,classes:["Mechanologist","Ranger","Runeblade","Wizard"],heroes:["Azalea","Dash","Kano","Viserai"],languages:["English"],release:"Arcane Rising",releaseDate:new Date("2020-03-27T00:00:00.000Z"),releaseType:"Standalone Booster",setIdentifiers:["arc"],talents:[]},{cards:194,classes:["Brute","Guardian","Mechanologist","Merchant","Ninja","Ranger","Runeblade","Warrior","Wizard"],heroes:["Benji","Data Doll","Ira","Kassai","Kavdaen","Kayo","Shiyana"],languages:["English"],release:"Crucible of War",releaseDate:new Date("2020-08-28T00:00:00.000Z"),releaseType:"Expansion Booster",setIdentifiers:["cru"],talents:[]},{cards:40,classes:["Warrior"],heroes:["Boltyn"],languages:["English"],release:"Boltyn Blitz Deck",releaseDate:new Date("2021-05-07T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["bol"],talents:["Light"]},{cards:40,classes:["Runeblade"],heroes:["Chane"],languages:["English"],release:"Chane Blitz Deck",releaseDate:new Date("2021-05-07T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["chn"],talents:["Shadow"]},{cards:40,classes:["Brute"],languages:["English"],heroes:["Levia"],release:"Levia Blitz Deck",releaseDate:new Date("2021-05-07T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["lev"],talents:["Shadow"]},{cards:40,classes:["Illusionist"],heroes:["Prism"],languages:["English"],releaseDate:new Date("2021-05-07T00:00:00.000Z"),release:"Prism Blitz Deck",releaseType:"Blitz Deck",setIdentifiers:["psm"],talents:["Light"]},{cards:307,classes:["Brute","Illusionist","Runeblade","Warrior"],heroes:["Boltyn","Chane","Levia","Prism"],languages:["English"],release:"Monarch",releaseDate:new Date("2021-05-07T00:00:00.000Z"),releaseType:"Standalone Booster",setIdentifiers:["mon"],talents:["Light","Shadow"]},{cards:40,classes:["Runeblade"],heroes:["Briar"],languages:["English"],release:"Briar Blitz Deck",releaseDate:new Date("2021-11-24T00:00:00.000Z"),releaseType:"Blitz Deck",talents:["Elemental","Earth","Lightning"],setIdentifiers:["bri"]},{cards:40,classes:["Ranger"],heroes:["Lexi"],languages:["English"],release:"Lexi Blitz Deck",releaseDate:new Date("2021-11-24T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["lxi"],talents:["Elemental","Ice","Lightning"]},{cards:40,classes:["Guardian"],heroes:["Oldhim"],languages:["English"],release:"Oldhim Blitz Deck",releaseDate:new Date("2021-11-24T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["old"],talents:["Elemental","Earth","Ice"]},{cards:238,classes:["Guardian","Ranger","Runeblade"],heroes:["Briar","Lexi","Oldhim"],languages:["English"],release:"Tales of Aria",releaseDate:new Date("2021-09-24T00:00:00.000Z"),releaseType:"Standalone Booster",setIdentifiers:["ele"],talents:["Elemental","Earth","Ice","Lightning"]},{cards:198,classes:["Brute","Guardian","Illusionist","Mechanologist","Merchant","Ninja","Ranger","Runeblade","Warrior","Wizard"],heroes:["Genis Wotchuneed","Valda"],languages:["English"],release:"Everfest",releaseDate:new Date("2022-02-04T00:00:00.000Z"),releaseType:"Expansion Booster",setIdentifiers:["evr"],talents:["Elemental","Earth","Ice","Lightning"]},{cards:423,classes:["Brute","Guardian","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],heroes:["Azalea","Benji","Bravo","Dash","Data Doll","Dorinthea","Ira","Kassai","Katsu","Kayo","Rhinar","Viserai","Kano"],languages:["English"],release:"History Pack 1",releaseDate:new Date("2022-05-06T00:00:00.000Z"),releaseType:"History Pack",setIdentifiers:["1hp","hp1"],talents:[]},{cards:80,classes:["Brute","Warrior"],heroes:["Dorinthea","Rhinar"],languages:["English"],release:"Classic Battles: Rhinar vs Dorinthea",releaseDate:new Date("2022-05-27T00:00:00.000Z"),releaseType:"Classic Battles",setIdentifiers:["dvr","rvd"],talents:[]},{cards:40,classes:["Illusionist"],heroes:["Dromai"],languages:["English"],releaseDate:new Date("2022-06-24T00:00:00.000Z"),release:"Dromai Blitz Deck",releaseType:"Blitz Deck",setIdentifiers:["dro"],talents:["Draconic"]},{cards:40,classes:["Ninja"],heroes:["Fai"],languages:["English"],release:"Fai Blitz Deck",releaseDate:new Date("2022-06-24T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["fai"],talents:["Draconic"]},{cards:226,classes:["Illusionist","Ninja","Wizard"],heroes:["Dromai","Fai","Iyslander"],languages:["English"],release:"Uprising",releaseDate:new Date("2022-06-24T00:00:00.000Z"),releaseType:"Standalone Booster",setIdentifiers:["upr"],talents:["Draconic","Elemental","Ice"]},{cards:247,classes:["Assassin","Brute","Guardian","Illusionist","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],heroes:["Arakni","Emperor","Yoji"],languages:["English"],release:"Dynasty",releaseDate:new Date("2022-11-11T00:00:00.000Z"),releaseType:"Expansion Booster",setIdentifiers:["dyn"],talents:["Royal"]},{cards:536,classes:["Brute","Guardian","Illusionist","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],heroes:["Boltyn","Briar","Chane","Levia","Lexi","Oldhim","Prism"],languages:["Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"History Pack 2: Black Label",releaseDate:new Date("2023-02-24T00:00:00.000Z"),releaseType:"History Pack",setIdentifiers:["hp2"],talents:["Elemental","Earth","Ice","Lightning","Light","Shadow"]},{cards:40,classes:["Assassin"],heroes:["Arakni"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Arakni Blitz Deck",releaseDate:new Date("2023-03-24T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["ara"],talents:[]},{cards:40,classes:["Ranger"],heroes:["Azalea"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Azalea Blitz Deck",releaseDate:new Date("2023-03-24T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["azl"],talents:[]},{cards:40,classes:["Ninja"],heroes:["Benji"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Benji Blitz Deck",releaseDate:new Date("2023-03-24T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["ben"],talents:[]},{cards:40,classes:["Ninja"],heroes:["Katsu"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Katsu Blitz Deck",releaseDate:new Date("2023-03-24T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["kat"],talents:[]},{cards:40,classes:["Ranger"],heroes:["Riptide"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Riptide Blitz Deck",releaseDate:new Date("2023-03-24T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["rip"],talents:[]},{cards:40,classes:["Assassin"],heroes:["Uzuri"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Uzuri Blitz Deck",releaseDate:new Date("2023-03-24T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["uzu"],talents:[]},{cards:239,classes:["Assassin","Ranger","Ninja"],heroes:["Arakni","Uzuri","Azalea","Katsu","Benji","Riptide"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Outsiders",releaseDate:new Date("2023-03-24T00:00:00.000Z"),releaseType:"Standalone Booster",setIdentifiers:["out"],talents:[]},{cards:236,classes:["Illusionist","Runeblade","Warrior","Brute"],heroes:["Prism","Vynnset","Boltyn","Levia"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Dusk till Dawn",releaseDate:new Date("2023-07-14T00:00:00.000Z"),releaseType:"Expansion Booster",setIdentifiers:["dtd"],talents:["Light","Shadow"]},{cards:107,classes:["Mechanologist","Bard","Guardian","Ninja"],heroes:["Teklovossen","Melody","Brevant","Ira"],languages:["English"],release:"Round the Table: TCC x LSS",releaseDate:new Date("2023-09-29T00:00:00.000Z"),releaseType:"Round the Table",talents:[],setIdentifiers:["tcc"]},{cards:251,classes:["Mechanologist"],heroes:["Dash","Maxx","Teklovossen"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],raritiesExcludedInLimited:["Legendary","Fabled"],release:"Bright Lights",releaseDate:new Date("2023-10-06T00:00:00.000Z"),releaseType:"Standalone Booster",setIdentifiers:["evo"],talents:[]},{cards:40,classes:["Guardian"],heroes:["Betsy"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Betsy Blitz Deck",releaseDate:new Date("2024-02-02T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["bet"],talents:[]},{cards:40,classes:["Warrior"],heroes:["Kassai"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Kassai Blitz Deck",releaseDate:new Date("2024-02-02T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["ksi"],talents:[]},{cards:40,classes:["Brute"],heroes:["Kayo"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Kayo Blitz Deck",releaseDate:new Date("2024-02-02T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["kyo"],talents:[]},{cards:40,classes:["Warrior"],heroes:["Olympia"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Olympia Blitz Deck",releaseDate:new Date("2024-02-02T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["ola"],talents:[]},{cards:40,classes:["Brute"],heroes:["Rhinar"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Rhinar Blitz Deck",releaseDate:new Date("2024-02-02T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["rnr"],talents:[]},{cards:40,classes:["Guardian"],heroes:["Victor"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Victor Blitz Deck",releaseDate:new Date("2024-02-02T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["vic"],talents:[]},{cards:255,classes:["Brute","Guardian","Warrior"],heroes:["Kassai","Betsy","Kayo","Olympia","Victor"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],raritiesExcludedInLimited:["Legendary","Fabled"],release:"Heavy Hitters",releaseDate:new Date("2024-02-02T00:00:00.000Z"),releaseType:"Standalone Booster",setIdentifiers:["hvy"],talents:[]},{cards:66,classes:["Brute"],heroes:["Kayo"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Kayo",releaseDate:new Date("2024-05-03T00:00:00.000Z"),releaseType:"Armory Deck",setIdentifiers:["ako"],talents:[]},{cards:40,classes:["Illusionist"],heroes:["Enigma"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Enigma Blitz Deck",releaseDate:new Date("2024-05-31T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["eng"],talents:["Mystic"]},{cards:40,classes:["Assassin"],heroes:["Nuu"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Nuu Blitz Deck",releaseDate:new Date("2024-05-31T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["nuu"],talents:["Mystic"]},{cards:40,classes:["Ninja"],heroes:["Zen"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Zen Blitz Deck",releaseDate:new Date("2024-05-31T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["zen"],talents:["Mystic"]},{cards:239,classes:["Assassin","Illusionist","Ninja"],heroes:["Enigma","Nuu","Zen"],languages:we,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Part the Mistveil",releaseDate:new Date("2024-05-31T00:00:00.000Z"),releaseType:"Standalone Booster",setIdentifiers:["mst"],talents:["Mystic"]},{cards:66,classes:["Warrior"],heroes:["Boltyn"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Boltyn",releaseDate:new Date("2024-07-12T00:00:00.000Z"),releaseType:"Armory Deck",setIdentifiers:["asb"],talents:["Light"]},{cards:40,classes:["Runeblade"],heroes:["Aurora"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"1st Strike: Aurora",releaseDate:new Date("2024-08-01T00:00:00.000Z"),releaseType:"1st Strike",setIdentifiers:["aur"],talents:["Lightning"]},{cards:40,classes:["Guardian"],heroes:["Terra"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"1st Strike: Terra",releaseDate:new Date("2024-08-01T00:00:00.000Z"),releaseType:"1st Strike",setIdentifiers:["ter"],talents:["Earth"]},{cards:66,classes:["Ranger"],heroes:["Azalea"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Azalea",releaseDate:new Date("2024-08-02T00:00:00.000Z"),releaseType:"Armory Deck",setIdentifiers:["aaz"],talents:[]},{cards:258,classes:["Runeblade","Wizard"],heroes:["Aurora","Florian","Oscilio","Verdance"],languages:we,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Rosetta",releaseDate:new Date("2024-09-20T00:00:00.000Z"),releaseType:"Standalone Booster",setIdentifiers:["ros"],talents:["Elemental","Earth","Lightning"]},{cards:40,classes:["Runeblade"],heroes:["Aurora"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Aurora Blitz Deck",releaseDate:new Date("2024-09-20T00:00:00.000Z"),releaseType:"Blitz Deck",setIdentifiers:["aua"],talents:["Lightning"]},{cards:66,classes:["Mechanologist"],heroes:["Dash"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Dash",releaseDate:new Date("2024-10-18T00:00:00.000Z"),releaseType:"Armory Deck",setIdentifiers:["aio"],talents:[]}],Pe={wtr:"Welcome to Rathe",arc:"Arcane Rising",cru:"Crucible of War",mon:"Monarch",ele:"Tales of Aria",evr:"Everfest","1hp":"History Pack 1",hp1:"History Pack 1",upr:"Uprising",dyn:"Dynasty",out:"Outsiders",dtd:"Dusk till Dawn",evo:"Bright Lights",hvy:"Heavy Hitters",mst:"Part the Mistveil",ros:"Rosetta"},$t=ra(ta({},Pe),{ako:"Armory Deck: Kayo",asb:"Armory Deck: Boltyn",aaz:"Armory Deck: Azalea",aio:"Armory Deck: Dash",ara:"Arakni Blitz Deck",aua:"Aurora Blitz Deck",azl:"Azalea Blitz Deck",ben:"Benji Blitz Deck",bet:"Betsy Blitz Deck",bol:"Boltyn Blitz Deck",bri:"Briar Blitz Deck",chn:"Chane Blitz Deck",dro:"Dromai Blitz Deck",eng:"Enigma Blitz Deck",fai:"Fai Blitz Deck",kat:"Katsu Blitz Deck",ksi:"Kassai Blitz Deck",kyo:"Kayo Blitz Deck",lev:"Levia Blitz Deck",lxi:"Lexi Blitz Deck",nuu:"Nuu Blitz Deck",old:"Oldhim Blitz Deck",ola:"Olympia Blitz Deck",psm:"Prism Blitz Deck",rip:"Riptide Blitz Deck",rnr:"Rhinar Blitz Deck",uzu:"Uzuri Blitz Deck",vic:"Victor Blitz Deck",zen:"Zen Blitz Deck",aur:"1st Strike: Aurora",ter:"1st Strike: Terra",dvr:"Classic Battles: Rhinar vs Dorinthea",rvd:"Classic Battles: Rhinar vs Dorinthea",ira:"Ira Welcome Deck",tcc:"Round the Table: TCC x LSS",bvo:"Bravo Hero Deck",tea:"Dorinthea Hero Deck",ksu:"Katsu Hero Deck",rnr2:"Rhinar Hero Deck",fab:"Promos",her:"Promos",jdg:"Promos",lgs:"Promos",lss:"Promos",oxo:"Promos",xxx:"Promos",win:"Promos"}),Ie={};for(let[e,t]of Object.entries($t)){let r=Ie[t];r?r.push(e):Ie[t]=[e]}var ka=Ie,ba={"Rhinar Blitz Deck":"-Blitz"},Da={MST158_V3:"-V3",ROS162_V2:"-V2","ROS008-MV_V2_BACK":"-V3"},Aa=e=>{var t,r;let a=ba[e.set]||"",i=`${e.identifier}${a}`,n=e.edition?`-${e.edition}`:"",o=e.foiling?`-${e.foiling}`:"",s=e.treatment?`-${e.treatment}`:"",l=(t=e.image)!=null&&t.toLowerCase().includes("back")?"-Back":"",c=Da[((r=e.image)==null?void 0:r.toUpperCase())||""]||"";return`${i}${n}${o}${s}${l}${c}`},Ma=Object.keys(Pe).filter(e=>!e.toLowerCase().includes("hp")).reverse().map(e=>e.toUpperCase()),Ca={"command-and-conquer-red":{print:"DYN000-Cold"},"cracked-bauble-yellow":{print:"LGS083-Cold"},"fate-foreseen-red":{print:"FAB024-Rainbow"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},quicken:{print:"EVO250"},"ravenous-rabble-red":{print:"FAB190-Rainbow-Extended Art"},"rockslide-trap-blue":{print:"LGS152-Rainbow"},"sigil-of-solace-red":{print:"FAB178-Rainbow-Extended Art"},"spectral-shield":{print:"MST158-Alternate Art-V3"},"tripwire-trap-red":{print:"LGS150-Rainbow"},"viserai-rune-blood":{print:"HER011-Cold"}},Ba=(e,t)=>{let{cardIdentifier:r}=e,a=Object.entries(Ca).find(([i])=>i===r);if(a){let[,{print:i}]=a;return t.find(n=>n.print===i)||t[0]}else{let i,n,o,s,l,c,u,h,d,g,m,f,y,p,D,M,v,B,T;for(let k of t){let{edition:F,foiling:x,identifier:j,image:w,treatment:E}=k,I=j.toLowerCase().includes("win");if(w&&!I){if(i||(i=k),E==="Alternate Art")n=k;else if(E==="Alternate Border")o=k;else if(E==="Alternate Text")s=k;else if(E==="Extended Art")h=k,x==="Cold"&&(l=k),x||(g=k),F==="Promo"&&(m=k);else if(E==="Full Art"&&(d=k,x==="Cold"&&(c=k,w.includes("_V3")))){u=k;break}w&&w.includes("_V2")&&(f=k),F==="Alpha"?y=k:F==="First"?p=k:F==="Promo"?D=k:F==="Unlimited"&&(M=k),x==="Cold"?(v=k,F==="Promo"&&(T=k)):x==="Gold"&&(B=k)}}return u||c||d||l||m||g||h||o||n||s||f||T||y||p||D||M||B||v||i}},Ta={"command-and-conquer-red":{print:"ARC159-Unlimited"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},"rockslide-trap-blue":{print:"LGS152-Rainbow"},"spectral-shield":{print:"MST158"},"tripwire-trap-red":{print:"LGS150-Rainbow"}},Fa=(e,t)=>{let{cardIdentifier:r}=e,a=Object.entries(Ta).find(([i])=>i===r);if(a){let[,{print:i}]=a;return t.find(n=>n.print===i)||t[0]}else{let i,n;for(let o of t){let{edition:s,image:l,treatment:c}=o;if(l&&(i||(i=o),!n&&s!=="Promo"&&(n=o)),i&&n)break}return n||i||t[0]}}});var or=vt((hn,sr)=>{"use strict";function jt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,a)}return r}function ae(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?jt(Object(r),!0).forEach(function(a){Oe(e,a,r[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):jt(Object(r)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(r,a))})}return e}function ze(e){"@babel/helpers - typeof";return ze=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ze(e)}function L(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Kt(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function P(e,t,r){return t&&Kt(e.prototype,t),r&&Kt(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function Oe(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Y(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");Object.defineProperty(e,"prototype",{value:Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),writable:!1}),t&&_e(e,t)}function fe(e){return fe=Object.setPrototypeOf?Object.getPrototypeOf:function(r){return r.__proto__||Object.getPrototypeOf(r)},fe(e)}function _e(e,t){return _e=Object.setPrototypeOf||function(a,i){return a.__proto__=i,a},_e(e,t)}function xa(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function Sa(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Ea(e,t){if(t&&(typeof t=="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Sa(e)}function Q(e){var t=xa();return function(){var a=fe(e),i;if(t){var n=fe(this).constructor;i=Reflect.construct(a,arguments,n)}else i=a.apply(this,arguments);return Ea(this,i)}}function te(e){return wa(e)||Ia(e)||La(e)||Pa()}function wa(e){if(Array.isArray(e))return Ne(e)}function Ia(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function La(e,t){if(e){if(typeof e=="string")return Ne(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Ne(e,t)}}function Ne(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,a=new Array(t);r<t;r++)a[r]=e[r];return a}function Pa(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
2
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function G(e){return Array.isArray?Array.isArray(e):qt(e)==="[object Array]"}var Ra=1/0;function za(e){if(typeof e=="string")return e;var t=e+"";return t=="0"&&1/e==-Ra?"-0":t}function Oa(e){return e==null?"":za(e)}function W(e){return typeof e=="string"}function Jt(e){return typeof e=="number"}function _a(e){return e===!0||e===!1||Na(e)&&qt(e)=="[object Boolean]"}function Xt(e){return ze(e)==="object"}function Na(e){return Xt(e)&&e!==null}function z(e){return e!=null}function Re(e){return!e.trim().length}function qt(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var Ha="Incorrect 'index' type",Wa=function(t){return"Invalid value for key ".concat(t)},$a=function(t){return"Pattern length exceeds max of ".concat(t,".")},Ga=function(t){return"Missing ".concat(t," property in key")},ja=function(t){return"Property 'weight' in key '".concat(t,"' must be a positive integer")},Zt=Object.prototype.hasOwnProperty,Ka=function(){function e(t){var r=this;L(this,e),this._keys=[],this._keyMap={};var a=0;t.forEach(function(i){var n=er(i);a+=n.weight,r._keys.push(n),r._keyMap[n.id]=n,a+=n.weight}),this._keys.forEach(function(i){i.weight/=a})}return P(e,[{key:"get",value:function(r){return this._keyMap[r]}},{key:"keys",value:function(){return this._keys}},{key:"toJSON",value:function(){return JSON.stringify(this._keys)}}]),e}();function er(e){var t=null,r=null,a=null,i=1,n=null;if(W(e)||G(e))a=e,t=Ut(e),r=He(e);else{if(!Zt.call(e,"name"))throw new Error(Ga("name"));var o=e.name;if(a=o,Zt.call(e,"weight")&&(i=e.weight,i<=0))throw new Error(ja(o));t=Ut(o),r=He(o),n=e.getFn}return{path:t,id:r,weight:i,src:a,getFn:n}}function Ut(e){return G(e)?e:e.split(".")}function He(e){return G(e)?e.join("."):e}function Za(e,t){var r=[],a=!1,i=function n(o,s,l){if(z(o))if(!s[l])r.push(o);else{var c=s[l],u=o[c];if(!z(u))return;if(l===s.length-1&&(W(u)||Jt(u)||_a(u)))r.push(Oa(u));else if(G(u)){a=!0;for(var h=0,d=u.length;h<d;h+=1)n(u[h],s,l+1)}else s.length&&n(u,s,l+1)}};return i(e,W(t)?t.split("."):t,0),a?r:r[0]}var Ua={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},Va={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:function(t,r){return t.score===r.score?t.idx<r.idx?-1:1:t.score<r.score?-1:1}},Ya={location:0,threshold:.6,distance:100},Qa={useExtendedSearch:!1,getFn:Za,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},A=ae(ae(ae(ae({},Va),Ua),Ya),Qa),Ja=/[^ ]+/g;function Xa(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:3,r=new Map,a=Math.pow(10,t);return{get:function(n){var o=n.match(Ja).length;if(r.has(o))return r.get(o);var s=1/Math.pow(o,.5*e),l=parseFloat(Math.round(s*a)/a);return r.set(o,l),l},clear:function(){r.clear()}}}var Ke=function(){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=t.getFn,a=r===void 0?A.getFn:r,i=t.fieldNormWeight,n=i===void 0?A.fieldNormWeight:i;L(this,e),this.norm=Xa(n,3),this.getFn=a,this.isCreated=!1,this.setIndexRecords()}return P(e,[{key:"setSources",value:function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.docs=r}},{key:"setIndexRecords",value:function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.records=r}},{key:"setKeys",value:function(){var r=this,a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.keys=a,this._keysMap={},a.forEach(function(i,n){r._keysMap[i.id]=n})}},{key:"create",value:function(){var r=this;this.isCreated||!this.docs.length||(this.isCreated=!0,W(this.docs[0])?this.docs.forEach(function(a,i){r._addString(a,i)}):this.docs.forEach(function(a,i){r._addObject(a,i)}),this.norm.clear())}},{key:"add",value:function(r){var a=this.size();W(r)?this._addString(r,a):this._addObject(r,a)}},{key:"removeAt",value:function(r){this.records.splice(r,1);for(var a=r,i=this.size();a<i;a+=1)this.records[a].i-=1}},{key:"getValueForItemAtKeyId",value:function(r,a){return r[this._keysMap[a]]}},{key:"size",value:function(){return this.records.length}},{key:"_addString",value:function(r,a){if(!(!z(r)||Re(r))){var i={v:r,i:a,n:this.norm.get(r)};this.records.push(i)}}},{key:"_addObject",value:function(r,a){var i=this,n={i:a,$:{}};this.keys.forEach(function(o,s){var l=o.getFn?o.getFn(r):i.getFn(r,o.path);if(z(l)){if(G(l))(function(){for(var u=[],h=[{nestedArrIndex:-1,value:l}];h.length;){var d=h.pop(),g=d.nestedArrIndex,m=d.value;if(z(m))if(W(m)&&!Re(m)){var f={v:m,i:g,n:i.norm.get(m)};u.push(f)}else G(m)&&m.forEach(function(y,p){h.push({nestedArrIndex:p,value:y})})}n.$[s]=u})();else if(W(l)&&!Re(l)){var c={v:l,n:i.norm.get(l)};n.$[s]=c}}}),this.records.push(n)}},{key:"toJSON",value:function(){return{keys:this.keys,records:this.records}}}]),e}();function tr(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=r.getFn,i=a===void 0?A.getFn:a,n=r.fieldNormWeight,o=n===void 0?A.fieldNormWeight:n,s=new Ke({getFn:i,fieldNormWeight:o});return s.setKeys(e.map(er)),s.setSources(t),s.create(),s}function qa(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=t.getFn,a=r===void 0?A.getFn:r,i=t.fieldNormWeight,n=i===void 0?A.fieldNormWeight:i,o=e.keys,s=e.records,l=new Ke({getFn:a,fieldNormWeight:n});return l.setKeys(o),l.setIndexRecords(s),l}function he(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=t.errors,a=r===void 0?0:r,i=t.currentLocation,n=i===void 0?0:i,o=t.expectedLocation,s=o===void 0?0:o,l=t.distance,c=l===void 0?A.distance:l,u=t.ignoreLocation,h=u===void 0?A.ignoreLocation:u,d=a/e.length;if(h)return d;var g=Math.abs(s-n);return c?d+g/c:g?1:d}function ei(){for(var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:A.minMatchCharLength,r=[],a=-1,i=-1,n=0,o=e.length;n<o;n+=1){var s=e[n];s&&a===-1?a=n:!s&&a!==-1&&(i=n-1,i-a+1>=t&&r.push([a,i]),a=-1)}return e[n-1]&&n-a>=t&&r.push([a,n-1]),r}var ee=32;function ti(e,t,r){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},i=a.location,n=i===void 0?A.location:i,o=a.distance,s=o===void 0?A.distance:o,l=a.threshold,c=l===void 0?A.threshold:l,u=a.findAllMatches,h=u===void 0?A.findAllMatches:u,d=a.minMatchCharLength,g=d===void 0?A.minMatchCharLength:d,m=a.includeMatches,f=m===void 0?A.includeMatches:m,y=a.ignoreLocation,p=y===void 0?A.ignoreLocation:y;if(t.length>ee)throw new Error($a(ee));for(var D=t.length,M=e.length,v=Math.max(0,Math.min(n,M)),B=c,T=v,k=g>1||f,F=k?Array(M):[],x;(x=e.indexOf(t,T))>-1;){var j=he(t,{currentLocation:x,expectedLocation:v,distance:s,ignoreLocation:p});if(B=Math.min(j,B),T=x+D,k)for(var w=0;w<D;)F[x+w]=1,w+=1}T=-1;for(var E=[],I=1,_=D+M,xe=1<<D-1,q=0;q<D;q+=1){for(var ce=0,K=_;ce<K;){var Nr=he(t,{errors:q,currentLocation:v+K,expectedLocation:v,distance:s,ignoreLocation:p});Nr<=B?ce=K:_=K,K=Math.floor((_-ce)/2+ce)}_=K;var ht=Math.max(1,v-K+1),Se=h?M:Math.min(v+K,M)+D,re=Array(Se+2);re[Se+1]=(1<<q)-1;for(var N=Se;N>=ht;N-=1){var ue=N-1,ft=r[e.charAt(ue)];if(k&&(F[ue]=+!!ft),re[N]=(re[N+1]<<1|1)&ft,q&&(re[N]|=(E[N+1]|E[N])<<1|1|E[N+1]),re[N]&xe&&(I=he(t,{errors:q,currentLocation:ue,expectedLocation:v,distance:s,ignoreLocation:p}),I<=B)){if(B=I,T=ue,T<=v)break;ht=Math.max(1,2*v-T)}}var Hr=he(t,{errors:q+1,currentLocation:v,expectedLocation:v,distance:s,ignoreLocation:p});if(Hr>B)break;E=re}var Ee={isMatch:T>=0,score:Math.max(.001,I)};if(k){var pt=ei(F,g);pt.length?f&&(Ee.indices=pt):Ee.isMatch=!1}return Ee}function ri(e){for(var t={},r=0,a=e.length;r<a;r+=1){var i=e.charAt(r);t[i]=(t[i]||0)|1<<a-r-1}return t}var rr=function(){function e(t){var r=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=a.location,n=i===void 0?A.location:i,o=a.threshold,s=o===void 0?A.threshold:o,l=a.distance,c=l===void 0?A.distance:l,u=a.includeMatches,h=u===void 0?A.includeMatches:u,d=a.findAllMatches,g=d===void 0?A.findAllMatches:d,m=a.minMatchCharLength,f=m===void 0?A.minMatchCharLength:m,y=a.isCaseSensitive,p=y===void 0?A.isCaseSensitive:y,D=a.ignoreLocation,M=D===void 0?A.ignoreLocation:D;if(L(this,e),this.options={location:n,threshold:s,distance:c,includeMatches:h,findAllMatches:g,minMatchCharLength:f,isCaseSensitive:p,ignoreLocation:M},this.pattern=p?t:t.toLowerCase(),this.chunks=[],!!this.pattern.length){var v=function(w,E){r.chunks.push({pattern:w,alphabet:ri(w),startIndex:E})},B=this.pattern.length;if(B>ee){for(var T=0,k=B%ee,F=B-k;T<F;)v(this.pattern.substr(T,ee),T),T+=ee;if(k){var x=B-ee;v(this.pattern.substr(x),x)}}else v(this.pattern,0)}}return P(e,[{key:"searchIn",value:function(r){var a=this.options,i=a.isCaseSensitive,n=a.includeMatches;if(i||(r=r.toLowerCase()),this.pattern===r){var o={isMatch:!0,score:0};return n&&(o.indices=[[0,r.length-1]]),o}var s=this.options,l=s.location,c=s.distance,u=s.threshold,h=s.findAllMatches,d=s.minMatchCharLength,g=s.ignoreLocation,m=[],f=0,y=!1;this.chunks.forEach(function(D){var M=D.pattern,v=D.alphabet,B=D.startIndex,T=ti(r,M,v,{location:l+B,distance:c,threshold:u,findAllMatches:h,minMatchCharLength:d,includeMatches:n,ignoreLocation:g}),k=T.isMatch,F=T.score,x=T.indices;k&&(y=!0),f+=F,k&&x&&(m=[].concat(te(m),te(x)))});var p={isMatch:y,score:y?f/this.chunks.length:1};return y&&n&&(p.indices=m),p}}]),e}(),J=function(){function e(t){L(this,e),this.pattern=t}return P(e,[{key:"search",value:function(){}}],[{key:"isMultiMatch",value:function(r){return Vt(r,this.multiRegex)}},{key:"isSingleMatch",value:function(r){return Vt(r,this.singleRegex)}}]),e}();function Vt(e,t){var r=e.match(t);return r?r[1]:null}var ai=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=i===this.pattern;return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"exact"}},{key:"multiRegex",get:function(){return/^="(.*)"$/}},{key:"singleRegex",get:function(){return/^=(.*)$/}}]),r}(J),ii=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=i.indexOf(this.pattern),o=n===-1;return{isMatch:o,score:o?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"$/}},{key:"singleRegex",get:function(){return/^!(.*)$/}}]),r}(J),ni=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=i.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"prefix-exact"}},{key:"multiRegex",get:function(){return/^\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^\^(.*)$/}}]),r}(J),si=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=!i.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-prefix-exact"}},{key:"multiRegex",get:function(){return/^!\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^!\^(.*)$/}}]),r}(J),oi=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=i.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[i.length-this.pattern.length,i.length-1]}}}],[{key:"type",get:function(){return"suffix-exact"}},{key:"multiRegex",get:function(){return/^"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^(.*)\$$/}}]),r}(J),li=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=!i.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-suffix-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^!(.*)\$$/}}]),r}(J),ar=function(e){Y(r,e);var t=Q(r);function r(a){var i,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=n.location,s=o===void 0?A.location:o,l=n.threshold,c=l===void 0?A.threshold:l,u=n.distance,h=u===void 0?A.distance:u,d=n.includeMatches,g=d===void 0?A.includeMatches:d,m=n.findAllMatches,f=m===void 0?A.findAllMatches:m,y=n.minMatchCharLength,p=y===void 0?A.minMatchCharLength:y,D=n.isCaseSensitive,M=D===void 0?A.isCaseSensitive:D,v=n.ignoreLocation,B=v===void 0?A.ignoreLocation:v;return L(this,r),i=t.call(this,a),i._bitapSearch=new rr(a,{location:s,threshold:c,distance:h,includeMatches:g,findAllMatches:f,minMatchCharLength:p,isCaseSensitive:M,ignoreLocation:B}),i}return P(r,[{key:"search",value:function(i){return this._bitapSearch.searchIn(i)}}],[{key:"type",get:function(){return"fuzzy"}},{key:"multiRegex",get:function(){return/^"(.*)"$/}},{key:"singleRegex",get:function(){return/^(.*)$/}}]),r}(J),ir=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){for(var n=0,o,s=[],l=this.pattern.length;(o=i.indexOf(this.pattern,n))>-1;)n=o+l,s.push([o,n-1]);var c=!!s.length;return{isMatch:c,score:c?0:1,indices:s}}}],[{key:"type",get:function(){return"include"}},{key:"multiRegex",get:function(){return/^'"(.*)"$/}},{key:"singleRegex",get:function(){return/^'(.*)$/}}]),r}(J),We=[ai,ir,ni,si,li,oi,ii,ar],Yt=We.length,ci=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,ui="|";function di(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return e.split(ui).map(function(r){for(var a=r.trim().split(ci).filter(function(m){return m&&!!m.trim()}),i=[],n=0,o=a.length;n<o;n+=1){for(var s=a[n],l=!1,c=-1;!l&&++c<Yt;){var u=We[c],h=u.isMultiMatch(s);h&&(i.push(new u(h,t)),l=!0)}if(!l)for(c=-1;++c<Yt;){var d=We[c],g=d.isSingleMatch(s);if(g){i.push(new d(g,t));break}}}return i})}var hi=new Set([ar.type,ir.type]),fi=function(){function e(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=r.isCaseSensitive,i=a===void 0?A.isCaseSensitive:a,n=r.includeMatches,o=n===void 0?A.includeMatches:n,s=r.minMatchCharLength,l=s===void 0?A.minMatchCharLength:s,c=r.ignoreLocation,u=c===void 0?A.ignoreLocation:c,h=r.findAllMatches,d=h===void 0?A.findAllMatches:h,g=r.location,m=g===void 0?A.location:g,f=r.threshold,y=f===void 0?A.threshold:f,p=r.distance,D=p===void 0?A.distance:p;L(this,e),this.query=null,this.options={isCaseSensitive:i,includeMatches:o,minMatchCharLength:l,findAllMatches:d,ignoreLocation:u,location:m,threshold:y,distance:D},this.pattern=i?t:t.toLowerCase(),this.query=di(this.pattern,this.options)}return P(e,[{key:"searchIn",value:function(r){var a=this.query;if(!a)return{isMatch:!1,score:1};var i=this.options,n=i.includeMatches,o=i.isCaseSensitive;r=o?r:r.toLowerCase();for(var s=0,l=[],c=0,u=0,h=a.length;u<h;u+=1){var d=a[u];l.length=0,s=0;for(var g=0,m=d.length;g<m;g+=1){var f=d[g],y=f.search(r),p=y.isMatch,D=y.indices,M=y.score;if(p){if(s+=1,c+=M,n){var v=f.constructor.type;hi.has(v)?l=[].concat(te(l),te(D)):l.push(D)}}else{c=0,s=0,l.length=0;break}}if(s){var B={isMatch:!0,score:c/s};return n&&(B.indices=l),B}}return{isMatch:!1,score:1}}}],[{key:"condition",value:function(r,a){return a.useExtendedSearch}}]),e}(),pe=[];function pi(){pe.push.apply(pe,arguments)}function $e(e,t){for(var r=0,a=pe.length;r<a;r+=1){var i=pe[r];if(i.condition(e,t))return new i(e,t)}return new rr(e,t)}var ge={AND:"$and",OR:"$or"},Ge={PATH:"$path",PATTERN:"$val"},je=function(t){return!!(t[ge.AND]||t[ge.OR])},gi=function(t){return!!t[Ge.PATH]},mi=function(t){return!G(t)&&Xt(t)&&!je(t)},Qt=function(t){return Oe({},ge.AND,Object.keys(t).map(function(r){return Oe({},r,t[r])}))};function nr(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=r.auto,i=a===void 0?!0:a,n=function o(s){var l=Object.keys(s),c=gi(s);if(!c&&l.length>1&&!je(s))return o(Qt(s));if(mi(s)){var u=c?s[Ge.PATH]:l[0],h=c?s[Ge.PATTERN]:s[u];if(!W(h))throw new Error(Wa(u));var d={keyId:He(u),pattern:h};return i&&(d.searcher=$e(h,t)),d}var g={children:[],operator:l[0]};return l.forEach(function(m){var f=s[m];G(f)&&f.forEach(function(y){g.children.push(o(y))})}),g};return je(e)||(e=Qt(e)),n(e)}function yi(e,t){var r=t.ignoreFieldNorm,a=r===void 0?A.ignoreFieldNorm:r;e.forEach(function(i){var n=1;i.matches.forEach(function(o){var s=o.key,l=o.norm,c=o.score,u=s?s.weight:null;n*=Math.pow(c===0&&u?Number.EPSILON:c,(u||1)*(a?1:l))}),i.score=n})}function vi(e,t){var r=e.matches;t.matches=[],z(r)&&r.forEach(function(a){if(!(!z(a.indices)||!a.indices.length)){var i=a.indices,n=a.value,o={indices:i,value:n};a.key&&(o.key=a.key.src),a.idx>-1&&(o.refIndex=a.idx),t.matches.push(o)}})}function ki(e,t){t.score=e.score}function bi(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=r.includeMatches,i=a===void 0?A.includeMatches:a,n=r.includeScore,o=n===void 0?A.includeScore:n,s=[];return i&&s.push(vi),o&&s.push(ki),e.map(function(l){var c=l.idx,u={item:t[c],refIndex:c};return s.length&&s.forEach(function(h){h(l,u)}),u})}var ie=function(){function e(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=arguments.length>2?arguments[2]:void 0;L(this,e),this.options=ae(ae({},A),r),this.options.useExtendedSearch,this._keyStore=new Ka(this.options.keys),this.setCollection(t,a)}return P(e,[{key:"setCollection",value:function(r,a){if(this._docs=r,a&&!(a instanceof Ke))throw new Error(Ha);this._myIndex=a||tr(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}},{key:"add",value:function(r){z(r)&&(this._docs.push(r),this._myIndex.add(r))}},{key:"remove",value:function(){for(var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){return!1},a=[],i=0,n=this._docs.length;i<n;i+=1){var o=this._docs[i];r(o,i)&&(this.removeAt(i),i-=1,n-=1,a.push(o))}return a}},{key:"removeAt",value:function(r){this._docs.splice(r,1),this._myIndex.removeAt(r)}},{key:"getIndex",value:function(){return this._myIndex}},{key:"search",value:function(r){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=a.limit,n=i===void 0?-1:i,o=this.options,s=o.includeMatches,l=o.includeScore,c=o.shouldSort,u=o.sortFn,h=o.ignoreFieldNorm,d=W(r)?W(this._docs[0])?this._searchStringList(r):this._searchObjectList(r):this._searchLogical(r);return yi(d,{ignoreFieldNorm:h}),c&&d.sort(u),Jt(n)&&n>-1&&(d=d.slice(0,n)),bi(d,this._docs,{includeMatches:s,includeScore:l})}},{key:"_searchStringList",value:function(r){var a=$e(r,this.options),i=this._myIndex.records,n=[];return i.forEach(function(o){var s=o.v,l=o.i,c=o.n;if(z(s)){var u=a.searchIn(s),h=u.isMatch,d=u.score,g=u.indices;h&&n.push({item:s,idx:l,matches:[{score:d,value:s,norm:c,indices:g}]})}}),n}},{key:"_searchLogical",value:function(r){var a=this,i=nr(r,this.options),n=function c(u,h,d){if(!u.children){var g=u.keyId,m=u.searcher,f=a._findMatches({key:a._keyStore.get(g),value:a._myIndex.getValueForItemAtKeyId(h,g),searcher:m});return f&&f.length?[{idx:d,item:h,matches:f}]:[]}for(var y=[],p=0,D=u.children.length;p<D;p+=1){var M=u.children[p],v=c(M,h,d);if(v.length)y.push.apply(y,te(v));else if(u.operator===ge.AND)return[]}return y},o=this._myIndex.records,s={},l=[];return o.forEach(function(c){var u=c.$,h=c.i;if(z(u)){var d=n(i,u,h);d.length&&(s[h]||(s[h]={idx:h,item:u,matches:[]},l.push(s[h])),d.forEach(function(g){var m,f=g.matches;(m=s[h].matches).push.apply(m,te(f))}))}}),l}},{key:"_searchObjectList",value:function(r){var a=this,i=$e(r,this.options),n=this._myIndex,o=n.keys,s=n.records,l=[];return s.forEach(function(c){var u=c.$,h=c.i;if(z(u)){var d=[];o.forEach(function(g,m){d.push.apply(d,te(a._findMatches({key:g,value:u[m],searcher:i})))}),d.length&&l.push({idx:h,item:u,matches:d})}}),l}},{key:"_findMatches",value:function(r){var a=r.key,i=r.value,n=r.searcher;if(!z(i))return[];var o=[];if(G(i))i.forEach(function(g){var m=g.v,f=g.i,y=g.n;if(z(m)){var p=n.searchIn(m),D=p.isMatch,M=p.score,v=p.indices;D&&o.push({score:M,key:a,value:m,idx:f,norm:y,indices:v})}});else{var s=i.v,l=i.n,c=n.searchIn(s),u=c.isMatch,h=c.score,d=c.indices;u&&o.push({score:h,key:a,value:s,norm:l,indices:d})}return o}}]),e}();ie.version="6.6.2";ie.createIndex=tr;ie.parseIndex=qa;ie.config=A;ie.parseQuery=nr;pi(fi);var Di=ie;sr.exports=Di});var cn={};Vr(cn,{PUNCTUATION:()=>C,abbreviations:()=>Ve,availableExclusions:()=>wr,availableModifiers:()=>Er,clashBannedCards:()=>Ze,clashLegalCards:()=>Ai,clashSpecializationOverrides:()=>Ue,default:()=>Pr,filterCard:()=>Rr,filtersToCardPropertyMappings:()=>Be,getAbbreviation:()=>ye,getAbbreviationByCard:()=>Mi,getCardByName:()=>nt,getCleanText:()=>st,getExcludedMetaFilters:()=>Qe,getKeywordsAndAppliedFiltersFromText:()=>it,getMetaFilters:()=>Ye,getNormalizedText:()=>le,getRelatedCards:()=>dt,getRelatedCardsByName:()=>Te,getTokensReferencedByCards:()=>ln,multiWordShorthands:()=>Xe,shorthands:()=>Je,singleWordShorthands:()=>qe});module.exports=Yr(cn);var O=U(V()),ot=U(or());var me=U(V()),Ze=["Amulet of Ice","Ball Lightning","Belittle","Drone of Brutality","Duskblade","Rosetta Thorn","Stubby Hammerers"],Ai=[],Ue=[{heroes:[me.Hero.Briar],cardIdentifiers:["rosetta-thorn"]},{heroes:[me.Hero.Emperor],cardIdentifiers:["command-and-conquer-red"]},{heroes:[me.Hero.Prism],cardIdentifiers:["figment-of-erudition-yellow","figment-of-judgment-yellow","figment-of-protection-yellow","figment-of-ravages-yellow","figment-of-rebirth-yellow","figment-of-tenacity-yellow","figment-of-triumph-yellow","figment-of-war-yellow"]}];var C=/[!"#$%&'’(),./:;<=>?@[\]^_`|~]/g;var b=U(V());var ye=e=>Ve.find(({abbreviations:t})=>t.find(r=>r.toLowerCase()===e)),Mi=e=>Ve.find(({card:t})=>t.toLowerCase()===e.name.toLowerCase()),Ve=[{abbreviations:["10k"],card:"10,000 Year Reunion"},{abbreviations:["3oak"],card:"Three of a Kind"},{abbreviations:["ALS"],card:"Arc Light Sentinel"},{abbreviations:["AoW"],card:"Art of War"},{abbreviations:["BBD"],card:"Barraging Beatdown"},{abbreviations:["BBS"],card:"Big Blue Sky"},{abbreviations:["Starvo"],card:"Bravo, Star of the Show"},{abbreviations:["BEB"],card:"Bull's Eye Bracers"},{abbreviations:["BLW"],card:"Be Like Water"},{abbreviations:["BoJ"],card:"Balance of Justice"},{abbreviations:["BOHH"],card:"Blood on Her Hands"},{abbreviations:["BRB"],card:"Bloodrush Bellow"},{abbreviations:["Breezies"],card:"Breeze Rider Boots"},{abbreviations:["BTA"],card:"Burn Them All"},{abbreviations:["Cake","\u{1F382}"],card:"Ninth Blade of the Blood Oath"},{abbreviations:["CLF"],card:"Channel Lake Frigid"},{abbreviations:["CMH"],card:"Channel Mount Heroic"},{abbreviations:["CnC","C&C"],card:"Command and Conquer"},{abbreviations:["CStrike","C-Strike","C Strike"],card:"Celestial Cataclysm"},{abbreviations:["Cat","Kitty"],card:"Crouching Tiger"},{abbreviations:["CoD"],card:"Crown of Dominion"},{abbreviations:["CoP"],card:"Crown of Providence"},{abbreviations:["CtW"],card:"Crush the Weak"},{abbreviations:["DD"],card:"Death Dealer"},{abbreviations:["DPot","D Pot"],card:"Potion of Deja Vu"},{abbreviations:["Dullcap"],card:"Arcanite Skullcap"},{abbreviations:["EBTT"],card:"Even Bigger Than That!"},{abbreviations:["NewNigma"],card:"Enigma, New Moon"},{abbreviations:["EPot","E Pot"],card:"Energy Potion"},{abbreviations:["EStrike","E-Strike","E Strike"],card:"Enlightened Strike"},{abbreviations:["FFS"],card:"Fyendal's Fighting Spirit"},{abbreviations:["FoN"],card:"Force of Nature"},{abbreviations:["Frosty","\u{1F976}","\u{1F9CA}","\u2744\uFE0F"],card:"Frostbite"},{abbreviations:["Frosty Hammer"],card:"Winter's Wail"},{abbreviations:["GnT"],card:"Give and Take"},{abbreviations:["HMH"],card:"Hope Merchant's Hood"},{abbreviations:["HoI"],card:"Heart of Ice"},{abbreviations:["KKBB"],card:"Knick Knack Bric-a-brac"},{abbreviations:["BStrike"],card:"Levels of Enlightenment"},{abbreviations:["LAG","Twominaris"],card:"Luminaris, Angel's Glow"},{abbreviations:["LCF","Newminaris"],card:"Luminaris, Celestial Fury"},{abbreviations:["LDE"],card:"Last Ditch Effort"},{abbreviations:["LFaL","L4aL"],card:"Life for a Life"},{abbreviations:["LiT"],card:"Lost in Thought"},{abbreviations:["LNW"],card:"Leave No Witnesses"},{abbreviations:["LoW"],card:"Lord of Wind"},{abbreviations:["LtC"],card:"Lead the Charge"},{abbreviations:["MaxV"],card:"Maximum Velocity"},{abbreviations:["MMB"],card:"Mage Master Boots"},{abbreviations:["MnG"],card:"Meat and Greet"},{abbreviations:["MoM"],card:"Mask of Momentum"},{abbreviations:["Pajamas","PJs"],card:"Alluvion Constellas"},{abbreviations:["Ponder Run"],card:"Premeditate"},{abbreviations:["PF","\u{1F525}"],card:"Phoenix Flame"},{abbreviations:["PoM"],card:"Peace of Mind"},{abbreviations:["Pumpkin"],card:"Jack-o'-lantern"},{abbreviations:["Qi Unbound"],card:"Qi Unleashed"},{abbreviations:["RitL"],card:"Red in the Ledger"},{abbreviations:["Cats","Ghost cat","Ghost cats"],card:"Restless Coalescence"},{abbreviations:["SFaF","S4aS"],card:"Scar for a Scar"},{abbreviations:["SWOMB"],card:"Shifting Winds of the Mystic Beast"},{abbreviations:["SWK"],card:"Spinning Wheel Kick"},{abbreviations:["SSGB"],card:"Sandscour Greatbow"},{abbreviations:["SSP"],card:"Sand Sketched Plan"},{abbreviations:["SFTL"],card:"Swing Fist, Think Later"},{abbreviations:["Thanos","Infinity Gauntlet"],card:"Polarity Reversal Script"},{abbreviations:["TAYG"],card:"That All You Got?"},{abbreviations:["ToS"],card:"Test of Strength"},{abbreviations:["TROM"],card:"This Round's on Me"},{abbreviations:["TTT"],card:"Take the Tempo"},{abbreviations:["Ultron"],card:"Teklovossen, the Mechropotent"},{abbreviations:["Pox Malone","Post Malone"],card:"Virulent Touch"},{abbreviations:["Cast Homes"],card:"Visit Goldmane Estate"},{abbreviations:["ZTS"],card:"Zero to Sixty"}];var R=U(V());var De=Array.from(Array(50).keys()).map(e=>`${e}`),Ci=[{format:R.Format.BlitzLivingLegend,nicknames:["blitz ll"]},{format:R.Format.ClassicConstructed,nicknames:["cc","classic"]},{format:R.Format.ClassicConstructedLivingLegend,nicknames:["cc ll","classic constructed ll","ll cc","ll","living legend"]},{format:R.Format.UltimatePitFight,nicknames:["upf"]}],Bi=Object.values(R.Format).map(e=>{let t=Ci.find(({format:a})=>a===e),r=e.toLowerCase().replaceAll(C,"");return t?Z(H({},t),{format:r}):{format:r}}),Ti=[{hero:R.Hero.DataDoll,nicknames:["data","datadoll"]},{hero:R.Hero.Dorinthea,nicknames:["dori"]},{hero:R.Hero.GenisWotchuneed,nicknames:["genis"]},{hero:R.Hero.Iyslander,nicknames:["islander"]}],Fi=Object.values(R.Hero).map(e=>{let t=Ti.find(({hero:a})=>a===e),r=e.toLowerCase().replaceAll(C,"");return t?Z(H({},t),{hero:r}):{hero:r}}),ve=["common","rare","super rare","majestic","legendary","fabled"],xi=(e,t,r)=>{let a=[];if(!t)a.push(...e);else for(let i of e)switch(t){case">=":let n=!1;for(let c of ve)n?a.push(c):c===i&&(n=!0,a.push(c));break;case">":let o=!1;for(let c of ve)o?a.push(c):c===i&&(o=!0);break;case"<=":let s=!1;for(let c of ve.slice().reverse())s?a.push(c):c===i&&(s=!0,a.push(c));break;case"<":let l=!1;for(let c of ve.slice().reverse())l?a.push(c):c===i&&(l=!0);break;default:break}return{filterToPropertyMapping:{property:"rarities",isArray:!0},isOr:!0,values:a,excluded:r}},Si=(e,t)=>{let r=[],a=[],i=[];for(let n of e){let o=Bi.find(({format:s,nicknames:l})=>s===n||!!l&&l.includes(n));if(o)a.push(o.format);else{let s=Fi.find(({hero:l,nicknames:c})=>l===n||!!c&&c.includes(n));s&&i.push(s.hero)}}return a.length>0&&r.push({filterToPropertyMapping:{property:"legalFormats",isArray:!0},values:a,isOr:!0,excluded:t}),i.length>0&&r.push({filterToPropertyMapping:{property:"legalHeroes",isArray:!0},values:i,isOr:!0,excluded:t}),r},Ye=(e,t,r,a)=>{let i=[];return Ii(t)?i.push(...Si(r,e)):Pi(t)&&i.push(xi(r,a,e)),i},ne=[{filterToPropertyMapping:{property:"cost",isNumber:!0},values:De,excluded:!0},{filterToPropertyMapping:{property:"specialCost",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token","weapon"],excluded:!0}],$=[{filterToPropertyMapping:{property:"defense",isNumber:!0},values:De,excluded:!0},{filterToPropertyMapping:{property:"specialDefense",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["hero","placeholder","token","weapon"],excluded:!0}],ke=[{filterToPropertyMapping:{property:"pitch",isNumber:!0},excluded:!0,values:De},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token","weapon"],excluded:!0},{filterToPropertyMapping:{property:"isCardBack",isBoolean:!0},values:["true"],excluded:!0}],X=[{filterToPropertyMapping:{property:"power",isNumber:!0},excluded:!0,values:De},{filterToPropertyMapping:{property:"specialPower",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token"],excluded:!0}],be=[{filterToPropertyMapping:{property:"talents",isArray:!0},excluded:!0,values:Object.values(R.Talent).map(e=>e.toLowerCase())}],Ei={"!co":ne,"-co":ne,"!cost":ne,"-cost":ne,"!color":ne,"-color":ne,"!b":$,"-b":$,"!block":$,"-block":$,"!d":$,"-d":$,"!def":$,"-def":$,"!defense":$,"-defense":$,"!pitch":ke,"-pitch":ke,"!p":ke,"-p":ke,"!attack":X,"-attack":X,"!power":X,"-power":X,"!pwr":X,"-pwr":X,"!pow":X,"-pow":X,"!talents":be,"-talents":be,"!tal":be,"-tal":be},Qe=e=>{let t=[],r=Ei[e];return r&&t.push(...r),t},wi=["l","legal","hero"],Ii=e=>wi.includes(e),Li=["r","rarity"],Pi=e=>Li.includes(e);var Je=[{description:"Attack actions",filters:["st:attack"],shorthands:["AA"]},{description:"Arcane barrier",filters:['k:"arcane barrier"'],shorthands:["AB"]},{description:"Attack reactions",filters:['t:"attack reaction"'],shorthands:["AR"]},{description:"Defense reactions",filters:['t:"defense reaction"'],shorthands:["DR"]},{description:"Gain life",filters:["gain {h}"],shorthands:["Gain life","Gains life"]},{description:"Go again",filters:['k:"go again"'],shorthands:["GA"]},{description:"Non-attack actions",filters:["t:action","st:non-attack"],shorthands:["NAA"]},{description:"Plus defense",filters:["+ {d}"],shorthands:["Pump defense","Pumps defense","Buff defense","Buffs defense"]},{description:"Plus power",filters:["+ {p}"],shorthands:["Pumps","Pump","Buff","Buffs","Pump attack","Pump attacks","Pumps attack","Pumps attacks","Buff attack","Buff attacks","Buffs attack","Buffs attacks","Pump power","Pumps power","Buff power","Buffs power"]},{description:"Poppers",filters:["!c:illusionist","st:attack","pwr:>=6","def:>=0"],helper:'6+ power non-Illusionist attacks that can "pop" phantasm attacks when defending',shorthands:["Poppers","Popper"]},{description:"Spellvoid",filters:['k:"spellvoid"'],shorthands:["SV"]}],Xe=Je.filter(({shorthands:e})=>e.some(t=>t.includes(" "))).map(e=>Z(H({},e),{shorthands:e.shorthands.filter(t=>t.includes(" ")).map(t=>t.toLowerCase()).sort((t,r)=>r.length-t.length)})),qe=Je.filter(({shorthands:e})=>e.some(t=>!t.includes(" "))).map(e=>Z(H({},e),{shorthands:e.shorthands.filter(t=>!t.includes(" ")).map(t=>t.toLowerCase()).sort((t,r)=>r.length-t.length)}));var Er=[">=",">","<=","<"],wr=["!","-"],et={property:"artists",isArray:!0,partialMatch:!0},lr={property:"bannedFormats",isArray:!0,partialMatch:!0},cr={property:"bonds",isArray:!0},Ri={property:"n/a"},ur={property:"classes",isArray:!0,partialMatch:!0},dr={property:"cost",specialProperty:"specialCost",isNumber:!0,partialMatch:!0},oe={property:"defense",specialProperty:"specialDefense",isNumber:!0},hr={property:"flows",isArray:!0},fr={nestedProperty:"foiling",property:"printings",isArray:!0},pr={property:"fusions",isArray:!0},gr={property:"intellect",isNumber:!0},mr={property:"keywords",isArray:!0,partialMatch:!0},tt={property:"n/a",isMeta:!0},yr={property:"life",specialProperty:"specialLife",isNumber:!0},vr={property:"name",isString:!0},rt={property:"pitch",isNumber:!0},Ae={property:"power",specialProperty:"specialPower",isNumber:!0},kr={property:"n/a",isMeta:!0},zi={property:"n/a"},Oi={property:"n/a"},br={property:"sets",isArray:!0,partialMatch:!0},Me={property:"specializations",isArray:!0,partialMatch:!0},Dr={property:"subtypes",isArray:!0},Ar={property:"types",isArray:!0},Mr={property:"talents",isArray:!0},_i={property:"functionalText",isString:!0,partialMatch:!0},Ni={property:"typeText",isString:!0,partialMatch:!0},Ce={nestedProperty:"treatment",property:"printings",isArray:!0},Be={a:et,artist:et,art:et,attack:Ae,b:oe,block:oe,banned:lr,bond:cr,bonds:cr,c:ur,class:ur,chain:Ri,co:dr,cost:dr,color:rt,d:oe,def:oe,defense:oe,flow:hr,flows:hr,f:pr,fusion:pr,foil:fr,foiling:fr,i:gr,intellect:gr,k:mr,keyword:mr,l:tt,legal:tt,hero:tt,li:yr,life:yr,n:vr,name:vr,p:rt,pitch:rt,pwr:Ae,pow:Ae,power:Ae,r:kr,rarity:kr,referencedby:zi,references:Oi,rf:lr,s:br,set:br,sp:Me,spec:Me,specialization:Me,specializations:Me,st:Dr,subtype:Dr,t:Ar,type:Ar,tal:Mr,talent:Mr,text:_i,treat:Ce,treatment:Ce,var:Ce,variation:Ce,x:Ni},Hi=[{text:b.Release.ClassicBattlesRhinarDorinthea.toLowerCase(),override:b.Release.ClassicBattlesRhinarDorinthea.toLowerCase().replaceAll(C,"")}],Wi=e=>{var i;let t=[],r=e.replaceAll("\u201D",'"');for(let{text:n,override:o}of Hi)r.includes(n)&&(r=r.replace(n,o));if((i=ye(r))==null?void 0:i.card)t.push(r);else{let n=r.split(/[ ]+/),o="",s=0;for(let l of n)s===2&&(t.push(o.trim().replaceAll('"',"")),o="",s=0),s<2&&l.split('"').length===2?(o+=" "+l,s++):s===0&&o===""?t.push(l):s===1&&(o+=" "+l);s===2&&(t.push(o.trim().replaceAll('"',"")),o="",s=0)}return t},$i=[b.Hero.Briar,b.Hero.Brutus,b.Hero.Emperor,b.Hero.Prism,b.Hero.Shiyana,b.Hero.Taylor,b.Hero.Yorick],it=(e,t)=>{var d;let r=e.trim().toLowerCase();for(let{filters:g,shorthands:m}of Xe)for(let f of m)if(r.includes(f)){r=r.replace(f,g.join(" "));break}for(let[g,m]of Object.entries(b.setToSetIdentifierMappings))r.includes(g.toLowerCase())&&(r=r.replace(g.toLowerCase(),m[0]));let a=Wi(r),i=[];for(let g of a){let m=qe.find(({shorthands:f})=>f.includes(g));m?i.push(...m.filters):i.push(g)}let n=[],o=[],s=[],l=[],c=[],u=[],h={isClash:!1,heroes:[]};for(let g of i)if(Ji(g)){let[m,f]=g.split(":"),{modifier:y,values:p,isAnd:D,isOr:M}=Yi(f),{filterKey:v,excluded:B,isMeta:T}=Qi(m);if(T){if(["rarity","r"].includes(v)&&(p=Vi(p)),["legal","l","hero"].includes(v)){for(let k of $i)f.includes(k.toLowerCase())&&(h.heroes.includes(k)||h.heroes.push(k));f.includes("clash")&&(h.isClash=!0)}n.push(...Ye(B,v,p,y))}else{if(["chain"].includes(v)){let k=I=>I.name.toLowerCase().replaceAll(C,""),F=p.map(I=>nt(I,t)).filter(I=>!!I).map(k),x=new Set(F);v="name",M=!0;let j=20,w=0,E=I=>{if(!I.types.includes(b.Type.Hero)){let _=k(I);x.add(_),F.includes(_)||F.push(_)}};for(let I of F){if(w>j)break;let{referencedBy:_,references:xe}=Te(I,t);xe.forEach(E),w===0&&_.forEach(E),w++}p=Array.from(x)}else if(["referencedby","references"].includes(v)){let k=v,F=[...p].filter(x=>!!x);p=[],v="name",M=!0;for(let x of F){let{referencedBy:j,references:w}=Te(x,t);["referencedby"].includes(k)?p.push(...w.map(({name:E})=>E.toLowerCase().replaceAll(C,""))):["references"].includes(k)&&p.push(...j.map(({name:E})=>E.toLowerCase().replaceAll(C,"")))}}else["art","artist"].includes(v)?o=p:["foiling","foil"].includes(v)?(l=Zi(p),p=l.map(k=>k.toLowerCase())):["treat","treatment","var","variation"].includes(v)?(u=Ui(p),p=u.map(k=>k.toLowerCase())):["set","s"].includes(v)?(c=Gi(p),p=c.map(k=>k.toLowerCase().replaceAll(C,""))):["pitch","p","color"].includes(v)&&(p=Ki(p));Be[v]&&n.push({filterToPropertyMapping:Be[v],values:p,isAnd:D,isOr:M,modifier:y,excluded:B})}}else if(g){let m=(d=ye(g))==null?void 0:d.card,f=Qe(g);m?s.push(`"${m.toLowerCase().replace(C,"")}"`):f&&f.length>0?n.push(...f):s.push(g.replace(C,""))}return{appliedFilters:n,attributes:{artists:o,foilings:l,releases:c,treatments:u},keywords:s,specialConditions:h}},Gi=e=>{let t=[];for(let r of e)t.push(...ji(r));return t},ji=e=>{let t=[],r=Object.values(b.Release).find(a=>a.toLowerCase().replaceAll(C,"")===e);if(r&&t.push(r),t.length===0){let a=b.setIdentifierToSetMappings[e];a&&t.push(a)}if(t.length===0){let a=Object.values(b.Release).filter(i=>i.toLowerCase().includes(e));a.length>0&&t.push(...a)}return t},at={blue:3,yellow:2,red:1,white:0},Ki=e=>{let t=[];for(let r of e)at[r]||at[r]===0?t.push(at[r].toString()):t.push(r);return t},Cr={r:b.Foiling.R,rf:b.Foiling.R,rainbow:b.Foiling.R,c:b.Foiling.C,cf:b.Foiling.C,cold:b.Foiling.C,g:b.Foiling.G,gf:b.Foiling.G,gold:b.Foiling.G},Zi=e=>{let t=[];for(let r of e)Cr[r]&&t.push(Cr[r]);return t},Br=Z(H({},Object.values(b.Treatment).reduce((e,t)=>(e[t.toLowerCase()]=t,e),{})),{aa:b.Treatment.AA,alt:b.Treatment.AA,"alt art":b.Treatment.AA,ab:b.Treatment.AB,"alt border":b.Treatment.AB,at:b.Treatment.AT,"alt text":b.Treatment.AT,ea:b.Treatment.EA,extended:b.Treatment.EA,"extended art":b.Treatment.EA,fa:b.Treatment.FA,full:b.Treatment.FA,"full art":b.Treatment.FA}),Ui=e=>{let t=[];for(let r of e)Br[r]?t.push(Br[r]):b.Treatment[r.toUpperCase()]&&t.push(b.Treatment[r.toUpperCase()]);return t},Tr={c:"common",f:"fabled",l:"legendary",m:"majestic",v:"marvel",r:"rare",s:"super rare",t:"token"},Vi=e=>{let t=[];for(let r of e)Tr[r]?t.push(Tr[r]):t.push(r);return t},Yi=e=>{let t=[],r,a,i=Er.find(n=>e.includes(n));if(i){let[,n]=e.split(i);Fr(n)?(r=!0,t.push(...n.trim().split("+").map(o=>o.replace(C,"")))):xr(n)?(a=!0,t.push(...n.trim().split(",").map(o=>o.replace(C,"")))):t.push(n.trim().replace(C,""))}else Fr(e)?(r=!0,t.push(...e.trim().split("+").map(n=>n.replace(C,"")))):xr(e)?(a=!0,t.push(...e.trim().split(",").map(n=>n.replace(C,"")))):e.startsWith('"')&&e.endsWith('"')?t.push(e.trim().replaceAll('"',"").replace(C,"")):t.push(e.trim().replace(C,""));return{modifier:i,values:t,isAnd:r,isOr:a}},Qi=e=>{let t=Xi(e);if(t){let[,r]=e.split(t);return{excluded:!0,filterKey:r,isMeta:Sr(r)}}else return{excluded:!1,filterKey:e,isMeta:Sr(e)}},Ji=e=>e.indexOf(":")>=0,Fr=e=>e.indexOf("+")>=0,xr=e=>e.indexOf(",")>=0,Sr=e=>{var t;return!!((t=Be[e])!=null&&t.isMeta)},Xi=e=>{var t;return(t=wr.find(r=>e.includes(r)))==null?void 0:t.slice(0,1)};var S=U(V()),Ir={artists:["Hoodwill"],cardIdentifier:"fangs-a-lot-blue",classes:[S.Class.Generic],defaultImage:"FNG000",functionalText:"If Fangs A Lot is put into your banished zone from your graveyard, instead put it into your hand.",legalFormats:[],legalHeroes:[S.Hero.Kayo,S.Hero.Levia,S.Hero.Rhinar],printings:[{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000",print:"FNG000",set:S.Release.Promos},{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000_Marvel",print:`FNG000-${S.Treatment.FA}`,set:S.Release.Promos,treatment:S.Treatment.FA}],name:"Fangs A Lot",rarities:[S.Rarity.Rare],rarity:S.Rarity.Rare,sets:[S.Release.Promos],setIdentifiers:["FNG000"],specialImage:"FNG000_Marvel",subtypes:[S.Subtype.Attack],types:[S.Type.Action],typeText:"Generic Action - Attack"},Lr=[{keyword:Ir.name.toLowerCase(),card:Ir}];var nt=(e,t)=>{let r=t.find(a=>st(a.name)===e);return r||(r=t.find(a=>st(a.name).includes(e))),r},st=e=>le(e.toLowerCase().trim().replace(C,"")),le=e=>e.normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"");var lt=class{constructor(t){this.search=(t,r)=>{let a,{appliedFilters:i,attributes:n,keywords:o,specialConditions:s}=it(t,this.cards),l=o.join(" "),c=r?Lr.filter(f=>f.keyword===l):[];if(c.length>0?a=c.map(({card:f})=>f):o.length?a=this.fuse.search(l).map(f=>f.item):a=[...this.cards],i.length&&(a=a.filter(f=>f&&Rr(f,i,s))),o.length===0){let f="";if(n.releases.length===1)try{let y=n.releases[0];f=O.setToSetIdentifierMappings[y][0].toUpperCase()}catch(y){console.error("Error getting set identifier from search",y)}f?a.sort((y,p)=>{var v,B;let D=(v=y.setIdentifiers.find(T=>T.includes(f)))==null?void 0:v.replace(f,""),M=(B=p.setIdentifiers.find(T=>T.includes(f)))==null?void 0:B.replace(f,"");return D&&M?D.localeCompare(M):-1}):a.sort((y,p)=>y.name===p.name?`${y.pitch}`.localeCompare(`${p.pitch}`):y.name.localeCompare(p.name))}else{let f=[],y=[],p=o.map(D=>D.toLowerCase().replace(C,"")).join(" ");for(let D of a)D.name.toLowerCase().replace(C,"")===p?f.push(D):y.push(D);a=[...f,...y]}let u,{artists:h,foilings:d,releases:g,treatments:m}=n;return(h.length>0||d.length>0||g.length>0||m.length>0)&&(u=a.map(f=>{let y=f.printings.filter(p=>{let D=!!p.image,M=h.length===0||h.some(k=>p.artists.find(F=>F.replace(C,"").toLowerCase().includes(F))),v=d.length===0||d.includes(p.foiling),B=g.length===0||g.includes(p.set),T=m.length===0||m.includes(p.treatment);return D&&M&&v&&B&&T});return H({matchingPrintings:y},f)})),{appliedFilters:i,attributes:n,keywords:o,searchResults:u||a}};let r={getFn:(a,i)=>{let n=ot.default.config.getFn(a,i);return n&&(Array.isArray(n)?n.map(o=>le(o.replace(C,""))):le(n).replace(C,""))},ignoreLocation:!0,includeScore:!0,keys:[{name:"name",weight:10},{name:"functionalText",weight:6},{name:"setIdentifiers",weight:2},{name:"typeText",weight:6}],threshold:.15,useExtendedSearch:!0};this.cards=[...t],this.fuse=new ot.default([...t],r)}},Pr=lt,Rr=(e,t,r)=>{let a=!0;for(let i of t){let{isNumber:n,isString:o,isArray:s,isBoolean:l,property:c}=i.filterToPropertyMapping;if((n&&!qi(e,i)||o&&!en(e,i)||s&&!tn(e,i)||l&&!rn(e,i))&&(a=!1),r.isClash&&["rarities","bannedFormats","legalFormats"].includes(c)){let h=[O.Rarity.SuperRare,O.Rarity.Majestic,O.Rarity.Legendary,O.Rarity.Fabled].some(y=>e.rarities.includes(y)),d=!1;for(let{cardIdentifiers:y,heroes:p}of Ue)for(let D of r.heroes)p.includes(D)&&y.includes(e.cardIdentifier)&&(d=!0);let g=!!e.specializations&&e.specializations.length>0||d,m=[O.Type.Mentor,O.Type.Weapon].some(y=>e.types.includes(y)),f=Ze.includes(e.name);!a&&!f&&(g||m)&&h&&(a=!0),f&&(a=!1)}if(r.isClash&&r.heroes.includes(O.Hero.Briar)&&e.name==="Rosetta Thorn"&&(a=!0),!a)break}return a},qi=(e,t)=>{var r;if(Fe(t,e)){let{values:a,modifier:i,excluded:n,filterToPropertyMapping:{partialMatch:o}}=t,s=ct(e,t);if(s!=null&&!isNaN(s))if(s=parseInt(s),i)switch(i){case">=":let l=a==null?void 0:a.some(d=>s>=parseInt(d));return n?!l:l;case">":let c=a==null?void 0:a.some(d=>s>parseInt(d));return n?!c:c;case"<=":let u=a==null?void 0:a.some(d=>s<=parseInt(d));return n?!u:u;case"<":let h=a==null?void 0:a.some(d=>s<parseInt(d));return n?!h:h;default:return!1}else{let l=a==null?void 0:a.some(c=>s===parseInt(c));return n?!l:l}else{let l=(r=nn(e,t))==null?void 0:r.toLowerCase(),c=o?a==null?void 0:a.some(u=>l==null?void 0:l.includes(u)):a==null?void 0:a.some(u=>l===u);return n?!c:c}}else return!0},en=(e,t)=>{var r;if(Fe(t,e)){let{values:a,isAnd:i,excluded:n,filterToPropertyMapping:{partialMatch:o}}=t,s=(r=ct(e,t))==null?void 0:r.replaceAll(C,"");if(o){let l=i?a==null?void 0:a.every(c=>s==null?void 0:s.toLowerCase().includes(c)):a==null?void 0:a.some(c=>s==null?void 0:s.toLowerCase().includes(c));return n?!l:l}else{let l=i?a==null?void 0:a.every(c=>(s==null?void 0:s.toLowerCase())===c):a==null?void 0:a.some(c=>(s==null?void 0:s.toLowerCase())===c);return n?!l:l}}else return!0},tn=(e,t)=>{if(Fe(t,e)){let{values:r,isAnd:a,excluded:i,filterToPropertyMapping:{partialMatch:n}}=t,o=an(e,t).map(s=>s==null?void 0:s.replaceAll(C,""));if(n){let s=a?r.every(c=>o==null?void 0:o.some(u=>u==null?void 0:u.toLowerCase().includes(c))):r.some(c=>o==null?void 0:o.some(u=>u==null?void 0:u.toLowerCase().includes(c))),l=o.length===0;return i?!s||l:s}else{let s=a?r.every(l=>o==null?void 0:o.some(c=>(c==null?void 0:c.toLowerCase())===l)):r.some(l=>o==null?void 0:o.some(c=>(c==null?void 0:c.toLowerCase())===l));return i?!s:s}}else return!0},rn=(e,t)=>{if(Fe(t,e)){let{excluded:r}=t,a=ct(e,t);return r?!a:a}else return!0},ct=(e,t)=>{let{filterToPropertyMapping:r}=t;return e[r.property]},an=(e,t)=>{let{filterToPropertyMapping:{nestedProperty:r,property:a}}=t,i=e[a]||[];return r?i.map(n=>n[r]).filter(n=>!!n):i},nn=(e,t)=>{let{filterToPropertyMapping:r}=t;return e[r.specialProperty]},Fe=({cardTypes:e},{types:t,subtypes:r})=>!e||(e==null?void 0:e.some(a=>t.map(i=>i.toLowerCase()).includes(a.toLowerCase())||r.map(i=>i.toLowerCase()).includes(a.toLowerCase())));var _r=U(V());var ut=U(V()),sn={"Dawnblade, Resplendent":"Dawnblade"},zr=e=>sn[e.name]||e.name,Or=e=>{var t;return(t=e.functionalText)==null?void 0:t.replaceAll(e.name,"")},Te=(e,t)=>{let r=t.find(a=>a.name.toLowerCase().replace(C,"")===e);return r||(r=t.find(a=>a.name.toLowerCase().replace(C,"").includes(e))),dt(r,t)},dt=(e,t)=>{var n,o;let r=[],a=[],i=[];if(e){let s=[],l=[],c=zr(e);for(let u of t){let h=zr(u),d=c===h,g=e.pitch!==u.pitch;if(d&&g)r.push(u);else if(!d){let m=e.name==="Seismic Surge",f=(n=u.keywords)==null?void 0:n.includes(ut.Keyword.Heave),y=m&&f,p=Or(u),D=p==null?void 0:p.includes(c),M=Or(e),v=M==null?void 0:M.includes(h);(D||y)&&s.push(u);let B=u.name==="Seismic Surge",T=(o=e.keywords)==null?void 0:o.includes(ut.Keyword.Heave);(v||B&&T)&&l.push(u)}}for(let u of s)a.push(u);for(let u of l){let h=u.name;c!==h&&!l.some(d=>{let g=d.name;return g!==h&&g.includes(h)})&&i.push(u)}}return{otherPitches:r,referencedBy:a,references:i}},on=["cash-in-yellow"],ln=(e,t,r)=>{let a=new Set;for(let i of e.filter(({cardIdentifier:n})=>!on.includes(n))){let{references:n}=dt(i,t);for(let o of n.filter(s=>{let l=s.name==="Hyper Driver",c=r===_r.Hero.Maxx;return!l||c}))a.add(o)}return Array.from(a)};0&&(module.exports={PUNCTUATION,abbreviations,availableExclusions,availableModifiers,clashBannedCards,clashLegalCards,clashSpecializationOverrides,filterCard,filtersToCardPropertyMappings,getAbbreviation,getAbbreviationByCard,getCardByName,getCleanText,getExcludedMetaFilters,getKeywordsAndAppliedFiltersFromText,getMetaFilters,getNormalizedText,getRelatedCards,getRelatedCardsByName,getTokensReferencedByCards,multiWordShorthands,shorthands,singleWordShorthands});
|
|
2
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function G(e){return Array.isArray?Array.isArray(e):qt(e)==="[object Array]"}var Ra=1/0;function za(e){if(typeof e=="string")return e;var t=e+"";return t=="0"&&1/e==-Ra?"-0":t}function Oa(e){return e==null?"":za(e)}function W(e){return typeof e=="string"}function Jt(e){return typeof e=="number"}function _a(e){return e===!0||e===!1||Na(e)&&qt(e)=="[object Boolean]"}function Xt(e){return ze(e)==="object"}function Na(e){return Xt(e)&&e!==null}function z(e){return e!=null}function Re(e){return!e.trim().length}function qt(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var Ha="Incorrect 'index' type",Wa=function(t){return"Invalid value for key ".concat(t)},$a=function(t){return"Pattern length exceeds max of ".concat(t,".")},Ga=function(t){return"Missing ".concat(t," property in key")},ja=function(t){return"Property 'weight' in key '".concat(t,"' must be a positive integer")},Zt=Object.prototype.hasOwnProperty,Ka=function(){function e(t){var r=this;L(this,e),this._keys=[],this._keyMap={};var a=0;t.forEach(function(i){var n=er(i);a+=n.weight,r._keys.push(n),r._keyMap[n.id]=n,a+=n.weight}),this._keys.forEach(function(i){i.weight/=a})}return P(e,[{key:"get",value:function(r){return this._keyMap[r]}},{key:"keys",value:function(){return this._keys}},{key:"toJSON",value:function(){return JSON.stringify(this._keys)}}]),e}();function er(e){var t=null,r=null,a=null,i=1,n=null;if(W(e)||G(e))a=e,t=Ut(e),r=He(e);else{if(!Zt.call(e,"name"))throw new Error(Ga("name"));var o=e.name;if(a=o,Zt.call(e,"weight")&&(i=e.weight,i<=0))throw new Error(ja(o));t=Ut(o),r=He(o),n=e.getFn}return{path:t,id:r,weight:i,src:a,getFn:n}}function Ut(e){return G(e)?e:e.split(".")}function He(e){return G(e)?e.join("."):e}function Za(e,t){var r=[],a=!1,i=function n(o,s,l){if(z(o))if(!s[l])r.push(o);else{var c=s[l],u=o[c];if(!z(u))return;if(l===s.length-1&&(W(u)||Jt(u)||_a(u)))r.push(Oa(u));else if(G(u)){a=!0;for(var h=0,d=u.length;h<d;h+=1)n(u[h],s,l+1)}else s.length&&n(u,s,l+1)}};return i(e,W(t)?t.split("."):t,0),a?r:r[0]}var Ua={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},Va={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:function(t,r){return t.score===r.score?t.idx<r.idx?-1:1:t.score<r.score?-1:1}},Ya={location:0,threshold:.6,distance:100},Qa={useExtendedSearch:!1,getFn:Za,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},A=ae(ae(ae(ae({},Va),Ua),Ya),Qa),Ja=/[^ ]+/g;function Xa(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:3,r=new Map,a=Math.pow(10,t);return{get:function(n){var o=n.match(Ja).length;if(r.has(o))return r.get(o);var s=1/Math.pow(o,.5*e),l=parseFloat(Math.round(s*a)/a);return r.set(o,l),l},clear:function(){r.clear()}}}var Ke=function(){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=t.getFn,a=r===void 0?A.getFn:r,i=t.fieldNormWeight,n=i===void 0?A.fieldNormWeight:i;L(this,e),this.norm=Xa(n,3),this.getFn=a,this.isCreated=!1,this.setIndexRecords()}return P(e,[{key:"setSources",value:function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.docs=r}},{key:"setIndexRecords",value:function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.records=r}},{key:"setKeys",value:function(){var r=this,a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.keys=a,this._keysMap={},a.forEach(function(i,n){r._keysMap[i.id]=n})}},{key:"create",value:function(){var r=this;this.isCreated||!this.docs.length||(this.isCreated=!0,W(this.docs[0])?this.docs.forEach(function(a,i){r._addString(a,i)}):this.docs.forEach(function(a,i){r._addObject(a,i)}),this.norm.clear())}},{key:"add",value:function(r){var a=this.size();W(r)?this._addString(r,a):this._addObject(r,a)}},{key:"removeAt",value:function(r){this.records.splice(r,1);for(var a=r,i=this.size();a<i;a+=1)this.records[a].i-=1}},{key:"getValueForItemAtKeyId",value:function(r,a){return r[this._keysMap[a]]}},{key:"size",value:function(){return this.records.length}},{key:"_addString",value:function(r,a){if(!(!z(r)||Re(r))){var i={v:r,i:a,n:this.norm.get(r)};this.records.push(i)}}},{key:"_addObject",value:function(r,a){var i=this,n={i:a,$:{}};this.keys.forEach(function(o,s){var l=o.getFn?o.getFn(r):i.getFn(r,o.path);if(z(l)){if(G(l))(function(){for(var u=[],h=[{nestedArrIndex:-1,value:l}];h.length;){var d=h.pop(),g=d.nestedArrIndex,m=d.value;if(z(m))if(W(m)&&!Re(m)){var f={v:m,i:g,n:i.norm.get(m)};u.push(f)}else G(m)&&m.forEach(function(y,p){h.push({nestedArrIndex:p,value:y})})}n.$[s]=u})();else if(W(l)&&!Re(l)){var c={v:l,n:i.norm.get(l)};n.$[s]=c}}}),this.records.push(n)}},{key:"toJSON",value:function(){return{keys:this.keys,records:this.records}}}]),e}();function tr(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=r.getFn,i=a===void 0?A.getFn:a,n=r.fieldNormWeight,o=n===void 0?A.fieldNormWeight:n,s=new Ke({getFn:i,fieldNormWeight:o});return s.setKeys(e.map(er)),s.setSources(t),s.create(),s}function qa(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=t.getFn,a=r===void 0?A.getFn:r,i=t.fieldNormWeight,n=i===void 0?A.fieldNormWeight:i,o=e.keys,s=e.records,l=new Ke({getFn:a,fieldNormWeight:n});return l.setKeys(o),l.setIndexRecords(s),l}function he(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=t.errors,a=r===void 0?0:r,i=t.currentLocation,n=i===void 0?0:i,o=t.expectedLocation,s=o===void 0?0:o,l=t.distance,c=l===void 0?A.distance:l,u=t.ignoreLocation,h=u===void 0?A.ignoreLocation:u,d=a/e.length;if(h)return d;var g=Math.abs(s-n);return c?d+g/c:g?1:d}function ei(){for(var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:A.minMatchCharLength,r=[],a=-1,i=-1,n=0,o=e.length;n<o;n+=1){var s=e[n];s&&a===-1?a=n:!s&&a!==-1&&(i=n-1,i-a+1>=t&&r.push([a,i]),a=-1)}return e[n-1]&&n-a>=t&&r.push([a,n-1]),r}var ee=32;function ti(e,t,r){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},i=a.location,n=i===void 0?A.location:i,o=a.distance,s=o===void 0?A.distance:o,l=a.threshold,c=l===void 0?A.threshold:l,u=a.findAllMatches,h=u===void 0?A.findAllMatches:u,d=a.minMatchCharLength,g=d===void 0?A.minMatchCharLength:d,m=a.includeMatches,f=m===void 0?A.includeMatches:m,y=a.ignoreLocation,p=y===void 0?A.ignoreLocation:y;if(t.length>ee)throw new Error($a(ee));for(var D=t.length,M=e.length,v=Math.max(0,Math.min(n,M)),B=c,T=v,k=g>1||f,F=k?Array(M):[],x;(x=e.indexOf(t,T))>-1;){var j=he(t,{currentLocation:x,expectedLocation:v,distance:s,ignoreLocation:p});if(B=Math.min(j,B),T=x+D,k)for(var w=0;w<D;)F[x+w]=1,w+=1}T=-1;for(var E=[],I=1,_=D+M,xe=1<<D-1,q=0;q<D;q+=1){for(var ce=0,K=_;ce<K;){var Nr=he(t,{errors:q,currentLocation:v+K,expectedLocation:v,distance:s,ignoreLocation:p});Nr<=B?ce=K:_=K,K=Math.floor((_-ce)/2+ce)}_=K;var ht=Math.max(1,v-K+1),Se=h?M:Math.min(v+K,M)+D,re=Array(Se+2);re[Se+1]=(1<<q)-1;for(var N=Se;N>=ht;N-=1){var ue=N-1,ft=r[e.charAt(ue)];if(k&&(F[ue]=+!!ft),re[N]=(re[N+1]<<1|1)&ft,q&&(re[N]|=(E[N+1]|E[N])<<1|1|E[N+1]),re[N]&xe&&(I=he(t,{errors:q,currentLocation:ue,expectedLocation:v,distance:s,ignoreLocation:p}),I<=B)){if(B=I,T=ue,T<=v)break;ht=Math.max(1,2*v-T)}}var Hr=he(t,{errors:q+1,currentLocation:v,expectedLocation:v,distance:s,ignoreLocation:p});if(Hr>B)break;E=re}var Ee={isMatch:T>=0,score:Math.max(.001,I)};if(k){var pt=ei(F,g);pt.length?f&&(Ee.indices=pt):Ee.isMatch=!1}return Ee}function ri(e){for(var t={},r=0,a=e.length;r<a;r+=1){var i=e.charAt(r);t[i]=(t[i]||0)|1<<a-r-1}return t}var rr=function(){function e(t){var r=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=a.location,n=i===void 0?A.location:i,o=a.threshold,s=o===void 0?A.threshold:o,l=a.distance,c=l===void 0?A.distance:l,u=a.includeMatches,h=u===void 0?A.includeMatches:u,d=a.findAllMatches,g=d===void 0?A.findAllMatches:d,m=a.minMatchCharLength,f=m===void 0?A.minMatchCharLength:m,y=a.isCaseSensitive,p=y===void 0?A.isCaseSensitive:y,D=a.ignoreLocation,M=D===void 0?A.ignoreLocation:D;if(L(this,e),this.options={location:n,threshold:s,distance:c,includeMatches:h,findAllMatches:g,minMatchCharLength:f,isCaseSensitive:p,ignoreLocation:M},this.pattern=p?t:t.toLowerCase(),this.chunks=[],!!this.pattern.length){var v=function(w,E){r.chunks.push({pattern:w,alphabet:ri(w),startIndex:E})},B=this.pattern.length;if(B>ee){for(var T=0,k=B%ee,F=B-k;T<F;)v(this.pattern.substr(T,ee),T),T+=ee;if(k){var x=B-ee;v(this.pattern.substr(x),x)}}else v(this.pattern,0)}}return P(e,[{key:"searchIn",value:function(r){var a=this.options,i=a.isCaseSensitive,n=a.includeMatches;if(i||(r=r.toLowerCase()),this.pattern===r){var o={isMatch:!0,score:0};return n&&(o.indices=[[0,r.length-1]]),o}var s=this.options,l=s.location,c=s.distance,u=s.threshold,h=s.findAllMatches,d=s.minMatchCharLength,g=s.ignoreLocation,m=[],f=0,y=!1;this.chunks.forEach(function(D){var M=D.pattern,v=D.alphabet,B=D.startIndex,T=ti(r,M,v,{location:l+B,distance:c,threshold:u,findAllMatches:h,minMatchCharLength:d,includeMatches:n,ignoreLocation:g}),k=T.isMatch,F=T.score,x=T.indices;k&&(y=!0),f+=F,k&&x&&(m=[].concat(te(m),te(x)))});var p={isMatch:y,score:y?f/this.chunks.length:1};return y&&n&&(p.indices=m),p}}]),e}(),J=function(){function e(t){L(this,e),this.pattern=t}return P(e,[{key:"search",value:function(){}}],[{key:"isMultiMatch",value:function(r){return Vt(r,this.multiRegex)}},{key:"isSingleMatch",value:function(r){return Vt(r,this.singleRegex)}}]),e}();function Vt(e,t){var r=e.match(t);return r?r[1]:null}var ai=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=i===this.pattern;return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"exact"}},{key:"multiRegex",get:function(){return/^="(.*)"$/}},{key:"singleRegex",get:function(){return/^=(.*)$/}}]),r}(J),ii=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=i.indexOf(this.pattern),o=n===-1;return{isMatch:o,score:o?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"$/}},{key:"singleRegex",get:function(){return/^!(.*)$/}}]),r}(J),ni=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=i.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"prefix-exact"}},{key:"multiRegex",get:function(){return/^\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^\^(.*)$/}}]),r}(J),si=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=!i.startsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-prefix-exact"}},{key:"multiRegex",get:function(){return/^!\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^!\^(.*)$/}}]),r}(J),oi=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=i.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[i.length-this.pattern.length,i.length-1]}}}],[{key:"type",get:function(){return"suffix-exact"}},{key:"multiRegex",get:function(){return/^"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^(.*)\$$/}}]),r}(J),li=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){var n=!i.endsWith(this.pattern);return{isMatch:n,score:n?0:1,indices:[0,i.length-1]}}}],[{key:"type",get:function(){return"inverse-suffix-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^!(.*)\$$/}}]),r}(J),ar=function(e){Y(r,e);var t=Q(r);function r(a){var i,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=n.location,s=o===void 0?A.location:o,l=n.threshold,c=l===void 0?A.threshold:l,u=n.distance,h=u===void 0?A.distance:u,d=n.includeMatches,g=d===void 0?A.includeMatches:d,m=n.findAllMatches,f=m===void 0?A.findAllMatches:m,y=n.minMatchCharLength,p=y===void 0?A.minMatchCharLength:y,D=n.isCaseSensitive,M=D===void 0?A.isCaseSensitive:D,v=n.ignoreLocation,B=v===void 0?A.ignoreLocation:v;return L(this,r),i=t.call(this,a),i._bitapSearch=new rr(a,{location:s,threshold:c,distance:h,includeMatches:g,findAllMatches:f,minMatchCharLength:p,isCaseSensitive:M,ignoreLocation:B}),i}return P(r,[{key:"search",value:function(i){return this._bitapSearch.searchIn(i)}}],[{key:"type",get:function(){return"fuzzy"}},{key:"multiRegex",get:function(){return/^"(.*)"$/}},{key:"singleRegex",get:function(){return/^(.*)$/}}]),r}(J),ir=function(e){Y(r,e);var t=Q(r);function r(a){return L(this,r),t.call(this,a)}return P(r,[{key:"search",value:function(i){for(var n=0,o,s=[],l=this.pattern.length;(o=i.indexOf(this.pattern,n))>-1;)n=o+l,s.push([o,n-1]);var c=!!s.length;return{isMatch:c,score:c?0:1,indices:s}}}],[{key:"type",get:function(){return"include"}},{key:"multiRegex",get:function(){return/^'"(.*)"$/}},{key:"singleRegex",get:function(){return/^'(.*)$/}}]),r}(J),We=[ai,ir,ni,si,li,oi,ii,ar],Yt=We.length,ci=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,ui="|";function di(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return e.split(ui).map(function(r){for(var a=r.trim().split(ci).filter(function(m){return m&&!!m.trim()}),i=[],n=0,o=a.length;n<o;n+=1){for(var s=a[n],l=!1,c=-1;!l&&++c<Yt;){var u=We[c],h=u.isMultiMatch(s);h&&(i.push(new u(h,t)),l=!0)}if(!l)for(c=-1;++c<Yt;){var d=We[c],g=d.isSingleMatch(s);if(g){i.push(new d(g,t));break}}}return i})}var hi=new Set([ar.type,ir.type]),fi=function(){function e(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=r.isCaseSensitive,i=a===void 0?A.isCaseSensitive:a,n=r.includeMatches,o=n===void 0?A.includeMatches:n,s=r.minMatchCharLength,l=s===void 0?A.minMatchCharLength:s,c=r.ignoreLocation,u=c===void 0?A.ignoreLocation:c,h=r.findAllMatches,d=h===void 0?A.findAllMatches:h,g=r.location,m=g===void 0?A.location:g,f=r.threshold,y=f===void 0?A.threshold:f,p=r.distance,D=p===void 0?A.distance:p;L(this,e),this.query=null,this.options={isCaseSensitive:i,includeMatches:o,minMatchCharLength:l,findAllMatches:d,ignoreLocation:u,location:m,threshold:y,distance:D},this.pattern=i?t:t.toLowerCase(),this.query=di(this.pattern,this.options)}return P(e,[{key:"searchIn",value:function(r){var a=this.query;if(!a)return{isMatch:!1,score:1};var i=this.options,n=i.includeMatches,o=i.isCaseSensitive;r=o?r:r.toLowerCase();for(var s=0,l=[],c=0,u=0,h=a.length;u<h;u+=1){var d=a[u];l.length=0,s=0;for(var g=0,m=d.length;g<m;g+=1){var f=d[g],y=f.search(r),p=y.isMatch,D=y.indices,M=y.score;if(p){if(s+=1,c+=M,n){var v=f.constructor.type;hi.has(v)?l=[].concat(te(l),te(D)):l.push(D)}}else{c=0,s=0,l.length=0;break}}if(s){var B={isMatch:!0,score:c/s};return n&&(B.indices=l),B}}return{isMatch:!1,score:1}}}],[{key:"condition",value:function(r,a){return a.useExtendedSearch}}]),e}(),pe=[];function pi(){pe.push.apply(pe,arguments)}function $e(e,t){for(var r=0,a=pe.length;r<a;r+=1){var i=pe[r];if(i.condition(e,t))return new i(e,t)}return new rr(e,t)}var ge={AND:"$and",OR:"$or"},Ge={PATH:"$path",PATTERN:"$val"},je=function(t){return!!(t[ge.AND]||t[ge.OR])},gi=function(t){return!!t[Ge.PATH]},mi=function(t){return!G(t)&&Xt(t)&&!je(t)},Qt=function(t){return Oe({},ge.AND,Object.keys(t).map(function(r){return Oe({},r,t[r])}))};function nr(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=r.auto,i=a===void 0?!0:a,n=function o(s){var l=Object.keys(s),c=gi(s);if(!c&&l.length>1&&!je(s))return o(Qt(s));if(mi(s)){var u=c?s[Ge.PATH]:l[0],h=c?s[Ge.PATTERN]:s[u];if(!W(h))throw new Error(Wa(u));var d={keyId:He(u),pattern:h};return i&&(d.searcher=$e(h,t)),d}var g={children:[],operator:l[0]};return l.forEach(function(m){var f=s[m];G(f)&&f.forEach(function(y){g.children.push(o(y))})}),g};return je(e)||(e=Qt(e)),n(e)}function yi(e,t){var r=t.ignoreFieldNorm,a=r===void 0?A.ignoreFieldNorm:r;e.forEach(function(i){var n=1;i.matches.forEach(function(o){var s=o.key,l=o.norm,c=o.score,u=s?s.weight:null;n*=Math.pow(c===0&&u?Number.EPSILON:c,(u||1)*(a?1:l))}),i.score=n})}function vi(e,t){var r=e.matches;t.matches=[],z(r)&&r.forEach(function(a){if(!(!z(a.indices)||!a.indices.length)){var i=a.indices,n=a.value,o={indices:i,value:n};a.key&&(o.key=a.key.src),a.idx>-1&&(o.refIndex=a.idx),t.matches.push(o)}})}function ki(e,t){t.score=e.score}function bi(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=r.includeMatches,i=a===void 0?A.includeMatches:a,n=r.includeScore,o=n===void 0?A.includeScore:n,s=[];return i&&s.push(vi),o&&s.push(ki),e.map(function(l){var c=l.idx,u={item:t[c],refIndex:c};return s.length&&s.forEach(function(h){h(l,u)}),u})}var ie=function(){function e(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=arguments.length>2?arguments[2]:void 0;L(this,e),this.options=ae(ae({},A),r),this.options.useExtendedSearch,this._keyStore=new Ka(this.options.keys),this.setCollection(t,a)}return P(e,[{key:"setCollection",value:function(r,a){if(this._docs=r,a&&!(a instanceof Ke))throw new Error(Ha);this._myIndex=a||tr(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}},{key:"add",value:function(r){z(r)&&(this._docs.push(r),this._myIndex.add(r))}},{key:"remove",value:function(){for(var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){return!1},a=[],i=0,n=this._docs.length;i<n;i+=1){var o=this._docs[i];r(o,i)&&(this.removeAt(i),i-=1,n-=1,a.push(o))}return a}},{key:"removeAt",value:function(r){this._docs.splice(r,1),this._myIndex.removeAt(r)}},{key:"getIndex",value:function(){return this._myIndex}},{key:"search",value:function(r){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=a.limit,n=i===void 0?-1:i,o=this.options,s=o.includeMatches,l=o.includeScore,c=o.shouldSort,u=o.sortFn,h=o.ignoreFieldNorm,d=W(r)?W(this._docs[0])?this._searchStringList(r):this._searchObjectList(r):this._searchLogical(r);return yi(d,{ignoreFieldNorm:h}),c&&d.sort(u),Jt(n)&&n>-1&&(d=d.slice(0,n)),bi(d,this._docs,{includeMatches:s,includeScore:l})}},{key:"_searchStringList",value:function(r){var a=$e(r,this.options),i=this._myIndex.records,n=[];return i.forEach(function(o){var s=o.v,l=o.i,c=o.n;if(z(s)){var u=a.searchIn(s),h=u.isMatch,d=u.score,g=u.indices;h&&n.push({item:s,idx:l,matches:[{score:d,value:s,norm:c,indices:g}]})}}),n}},{key:"_searchLogical",value:function(r){var a=this,i=nr(r,this.options),n=function c(u,h,d){if(!u.children){var g=u.keyId,m=u.searcher,f=a._findMatches({key:a._keyStore.get(g),value:a._myIndex.getValueForItemAtKeyId(h,g),searcher:m});return f&&f.length?[{idx:d,item:h,matches:f}]:[]}for(var y=[],p=0,D=u.children.length;p<D;p+=1){var M=u.children[p],v=c(M,h,d);if(v.length)y.push.apply(y,te(v));else if(u.operator===ge.AND)return[]}return y},o=this._myIndex.records,s={},l=[];return o.forEach(function(c){var u=c.$,h=c.i;if(z(u)){var d=n(i,u,h);d.length&&(s[h]||(s[h]={idx:h,item:u,matches:[]},l.push(s[h])),d.forEach(function(g){var m,f=g.matches;(m=s[h].matches).push.apply(m,te(f))}))}}),l}},{key:"_searchObjectList",value:function(r){var a=this,i=$e(r,this.options),n=this._myIndex,o=n.keys,s=n.records,l=[];return s.forEach(function(c){var u=c.$,h=c.i;if(z(u)){var d=[];o.forEach(function(g,m){d.push.apply(d,te(a._findMatches({key:g,value:u[m],searcher:i})))}),d.length&&l.push({idx:h,item:u,matches:d})}}),l}},{key:"_findMatches",value:function(r){var a=r.key,i=r.value,n=r.searcher;if(!z(i))return[];var o=[];if(G(i))i.forEach(function(g){var m=g.v,f=g.i,y=g.n;if(z(m)){var p=n.searchIn(m),D=p.isMatch,M=p.score,v=p.indices;D&&o.push({score:M,key:a,value:m,idx:f,norm:y,indices:v})}});else{var s=i.v,l=i.n,c=n.searchIn(s),u=c.isMatch,h=c.score,d=c.indices;u&&o.push({score:h,key:a,value:s,norm:l,indices:d})}return o}}]),e}();ie.version="6.6.2";ie.createIndex=tr;ie.parseIndex=qa;ie.config=A;ie.parseQuery=nr;pi(fi);var Di=ie;sr.exports=Di});var cn={};Vr(cn,{PUNCTUATION:()=>C,abbreviations:()=>Ve,availableExclusions:()=>wr,availableModifiers:()=>Er,clashBannedCards:()=>Ze,clashLegalCards:()=>Ai,clashSpecializationOverrides:()=>Ue,default:()=>Pr,filterCard:()=>Rr,filtersToCardPropertyMappings:()=>Be,getAbbreviation:()=>ye,getAbbreviationByCard:()=>Mi,getCardByName:()=>nt,getCleanText:()=>st,getExcludedMetaFilters:()=>Qe,getKeywordsAndAppliedFiltersFromText:()=>it,getMetaFilters:()=>Ye,getNormalizedText:()=>le,getRelatedCards:()=>dt,getRelatedCardsByName:()=>Te,getTokensReferencedByCards:()=>ln,multiWordShorthands:()=>Xe,shorthands:()=>Je,singleWordShorthands:()=>qe});module.exports=Yr(cn);var O=U(V()),ot=U(or());var me=U(V()),Ze=["Amulet of Ice","Ball Lightning","Belittle","Drone of Brutality","Duskblade","Rosetta Thorn","Stubby Hammerers"],Ai=[],Ue=[{heroes:[me.Hero.Briar],cardIdentifiers:["rosetta-thorn"]},{heroes:[me.Hero.Emperor],cardIdentifiers:["command-and-conquer-red"]},{heroes:[me.Hero.Prism],cardIdentifiers:["figment-of-erudition-yellow","figment-of-judgment-yellow","figment-of-protection-yellow","figment-of-ravages-yellow","figment-of-rebirth-yellow","figment-of-tenacity-yellow","figment-of-triumph-yellow","figment-of-war-yellow"]}];var C=/[!"#$%&'’(),./:;<=>?@[\]^_`|~]/g;var b=U(V());var ye=e=>Ve.find(({abbreviations:t})=>t.find(r=>r.toLowerCase()===e)),Mi=e=>Ve.find(({card:t})=>t.toLowerCase()===e.name.toLowerCase()),Ve=[{abbreviations:["10k"],card:"10,000 Year Reunion"},{abbreviations:["3oak"],card:"Three of a Kind"},{abbreviations:["ALS"],card:"Arc Light Sentinel"},{abbreviations:["AoW"],card:"Art of War"},{abbreviations:["BBD"],card:"Barraging Beatdown"},{abbreviations:["BBS"],card:"Big Blue Sky"},{abbreviations:["Starvo"],card:"Bravo, Star of the Show"},{abbreviations:["BEB"],card:"Bull's Eye Bracers"},{abbreviations:["BLW"],card:"Be Like Water"},{abbreviations:["BoJ"],card:"Balance of Justice"},{abbreviations:["BOHH"],card:"Blood on Her Hands"},{abbreviations:["BRB"],card:"Bloodrush Bellow"},{abbreviations:["Breezies"],card:"Breeze Rider Boots"},{abbreviations:["BTA"],card:"Burn Them All"},{abbreviations:["Cake","\u{1F382}"],card:"Ninth Blade of the Blood Oath"},{abbreviations:["CLF"],card:"Channel Lake Frigid"},{abbreviations:["CMH"],card:"Channel Mount Heroic"},{abbreviations:["CnC","C&C"],card:"Command and Conquer"},{abbreviations:["CStrike","C-Strike","C Strike"],card:"Celestial Cataclysm"},{abbreviations:["Cat","Kitty"],card:"Crouching Tiger"},{abbreviations:["CoD"],card:"Crown of Dominion"},{abbreviations:["CoP"],card:"Crown of Providence"},{abbreviations:["CtW"],card:"Crush the Weak"},{abbreviations:["DD"],card:"Death Dealer"},{abbreviations:["DIO"],card:"Dash I/O"},{abbreviations:["DPot","D Pot"],card:"Potion of Deja Vu"},{abbreviations:["Dullcap"],card:"Arcanite Skullcap"},{abbreviations:["EBTT"],card:"Even Bigger Than That!"},{abbreviations:["NewNigma"],card:"Enigma, New Moon"},{abbreviations:["EPot","E Pot"],card:"Energy Potion"},{abbreviations:["EStrike","E-Strike","E Strike"],card:"Enlightened Strike"},{abbreviations:["FFS"],card:"Fyendal's Fighting Spirit"},{abbreviations:["FoN"],card:"Force of Nature"},{abbreviations:["Frosty","\u{1F976}","\u{1F9CA}","\u2744\uFE0F"],card:"Frostbite"},{abbreviations:["Frosty Hammer"],card:"Winter's Wail"},{abbreviations:["GnT"],card:"Give and Take"},{abbreviations:["HMH"],card:"Hope Merchant's Hood"},{abbreviations:["HoI"],card:"Heart of Ice"},{abbreviations:["KKBB"],card:"Knick Knack Bric-a-brac"},{abbreviations:["BStrike"],card:"Levels of Enlightenment"},{abbreviations:["LAG","Twominaris"],card:"Luminaris, Angel's Glow"},{abbreviations:["LCF","Newminaris"],card:"Luminaris, Celestial Fury"},{abbreviations:["LDE"],card:"Last Ditch Effort"},{abbreviations:["LFaL","L4aL"],card:"Life for a Life"},{abbreviations:["LiT"],card:"Lost in Thought"},{abbreviations:["LNW"],card:"Leave No Witnesses"},{abbreviations:["LoW"],card:"Lord of Wind"},{abbreviations:["LtC"],card:"Lead the Charge"},{abbreviations:["MaxV"],card:"Maximum Velocity"},{abbreviations:["MMB"],card:"Mage Master Boots"},{abbreviations:["MnG"],card:"Meat and Greet"},{abbreviations:["MoM"],card:"Mask of Momentum"},{abbreviations:["Pajamas","PJs"],card:"Alluvion Constellas"},{abbreviations:["Ponder Run"],card:"Premeditate"},{abbreviations:["PF","\u{1F525}"],card:"Phoenix Flame"},{abbreviations:["PoM"],card:"Peace of Mind"},{abbreviations:["Pumpkin"],card:"Jack-o'-lantern"},{abbreviations:["Qi Unbound"],card:"Qi Unleashed"},{abbreviations:["RitL"],card:"Red in the Ledger"},{abbreviations:["Cats","Ghost cat","Ghost cats"],card:"Restless Coalescence"},{abbreviations:["SFaF","S4aS"],card:"Scar for a Scar"},{abbreviations:["SWOMB"],card:"Shifting Winds of the Mystic Beast"},{abbreviations:["SWK"],card:"Spinning Wheel Kick"},{abbreviations:["SSGB"],card:"Sandscour Greatbow"},{abbreviations:["SSP"],card:"Sand Sketched Plan"},{abbreviations:["SFTL"],card:"Swing Fist, Think Later"},{abbreviations:["Thanos","Infinity Gauntlet"],card:"Polarity Reversal Script"},{abbreviations:["TAYG"],card:"That All You Got?"},{abbreviations:["ToS"],card:"Test of Strength"},{abbreviations:["TROM"],card:"This Round's on Me"},{abbreviations:["TTT"],card:"Take the Tempo"},{abbreviations:["Ultron"],card:"Teklovossen, the Mechropotent"},{abbreviations:["Pox Malone","Post Malone"],card:"Virulent Touch"},{abbreviations:["Cast Homes"],card:"Visit Goldmane Estate"},{abbreviations:["ZTS"],card:"Zero to Sixty"}];var R=U(V());var De=Array.from(Array(50).keys()).map(e=>`${e}`),Ci=[{format:R.Format.BlitzLivingLegend,nicknames:["blitz ll"]},{format:R.Format.ClassicConstructed,nicknames:["cc","classic"]},{format:R.Format.ClassicConstructedLivingLegend,nicknames:["cc ll","classic constructed ll","ll cc","ll","living legend"]},{format:R.Format.UltimatePitFight,nicknames:["upf"]}],Bi=Object.values(R.Format).map(e=>{let t=Ci.find(({format:a})=>a===e),r=e.toLowerCase().replaceAll(C,"");return t?Z(H({},t),{format:r}):{format:r}}),Ti=[{hero:R.Hero.DataDoll,nicknames:["data","datadoll"]},{hero:R.Hero.Dorinthea,nicknames:["dori"]},{hero:R.Hero.GenisWotchuneed,nicknames:["genis"]},{hero:R.Hero.Iyslander,nicknames:["islander"]}],Fi=Object.values(R.Hero).map(e=>{let t=Ti.find(({hero:a})=>a===e),r=e.toLowerCase().replaceAll(C,"");return t?Z(H({},t),{hero:r}):{hero:r}}),ve=["common","rare","super rare","majestic","legendary","fabled"],xi=(e,t,r)=>{let a=[];if(!t)a.push(...e);else for(let i of e)switch(t){case">=":let n=!1;for(let c of ve)n?a.push(c):c===i&&(n=!0,a.push(c));break;case">":let o=!1;for(let c of ve)o?a.push(c):c===i&&(o=!0);break;case"<=":let s=!1;for(let c of ve.slice().reverse())s?a.push(c):c===i&&(s=!0,a.push(c));break;case"<":let l=!1;for(let c of ve.slice().reverse())l?a.push(c):c===i&&(l=!0);break;default:break}return{filterToPropertyMapping:{property:"rarities",isArray:!0},isOr:!0,values:a,excluded:r}},Si=(e,t)=>{let r=[],a=[],i=[];for(let n of e){let o=Bi.find(({format:s,nicknames:l})=>s===n||!!l&&l.includes(n));if(o)a.push(o.format);else{let s=Fi.find(({hero:l,nicknames:c})=>l===n||!!c&&c.includes(n));s&&i.push(s.hero)}}return a.length>0&&r.push({filterToPropertyMapping:{property:"legalFormats",isArray:!0},values:a,isOr:!0,excluded:t}),i.length>0&&r.push({filterToPropertyMapping:{property:"legalHeroes",isArray:!0},values:i,isOr:!0,excluded:t}),r},Ye=(e,t,r,a)=>{let i=[];return Ii(t)?i.push(...Si(r,e)):Pi(t)&&i.push(xi(r,a,e)),i},ne=[{filterToPropertyMapping:{property:"cost",isNumber:!0},values:De,excluded:!0},{filterToPropertyMapping:{property:"specialCost",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token","weapon"],excluded:!0}],$=[{filterToPropertyMapping:{property:"defense",isNumber:!0},values:De,excluded:!0},{filterToPropertyMapping:{property:"specialDefense",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["hero","placeholder","token","weapon"],excluded:!0}],ke=[{filterToPropertyMapping:{property:"pitch",isNumber:!0},excluded:!0,values:De},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token","weapon"],excluded:!0},{filterToPropertyMapping:{property:"isCardBack",isBoolean:!0},values:["true"],excluded:!0}],X=[{filterToPropertyMapping:{property:"power",isNumber:!0},excluded:!0,values:De},{filterToPropertyMapping:{property:"specialPower",isString:!0,partialMatch:!0},values:["*","x"],excluded:!0},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},values:["equipment","hero","placeholder","token"],excluded:!0}],be=[{filterToPropertyMapping:{property:"talents",isArray:!0},excluded:!0,values:Object.values(R.Talent).map(e=>e.toLowerCase())}],Ei={"!co":ne,"-co":ne,"!cost":ne,"-cost":ne,"!color":ne,"-color":ne,"!b":$,"-b":$,"!block":$,"-block":$,"!d":$,"-d":$,"!def":$,"-def":$,"!defense":$,"-defense":$,"!pitch":ke,"-pitch":ke,"!p":ke,"-p":ke,"!attack":X,"-attack":X,"!power":X,"-power":X,"!pwr":X,"-pwr":X,"!pow":X,"-pow":X,"!talents":be,"-talents":be,"!tal":be,"-tal":be},Qe=e=>{let t=[],r=Ei[e];return r&&t.push(...r),t},wi=["l","legal","hero"],Ii=e=>wi.includes(e),Li=["r","rarity"],Pi=e=>Li.includes(e);var Je=[{description:"Attack actions",filters:["st:attack"],shorthands:["AA"]},{description:"Arcane barrier",filters:['k:"arcane barrier"'],shorthands:["AB"]},{description:"Attack reactions",filters:['t:"attack reaction"'],shorthands:["AR"]},{description:"Defense reactions",filters:['t:"defense reaction"'],shorthands:["DR"]},{description:"Gain life",filters:["gain {h}"],shorthands:["Gain life","Gains life"]},{description:"Go again",filters:['k:"go again"'],shorthands:["GA"]},{description:"Non-attack actions",filters:["t:action","st:non-attack"],shorthands:["NAA"]},{description:"Plus defense",filters:["+ {d}"],shorthands:["Pump defense","Pumps defense","Buff defense","Buffs defense"]},{description:"Plus power",filters:["+ {p}"],shorthands:["Pumps","Pump","Buff","Buffs","Pump attack","Pump attacks","Pumps attack","Pumps attacks","Buff attack","Buff attacks","Buffs attack","Buffs attacks","Pump power","Pumps power","Buff power","Buffs power"]},{description:"Poppers",filters:["!c:illusionist","st:attack","pwr:>=6","def:>=0"],helper:'6+ power non-Illusionist attacks that can "pop" phantasm attacks when defending',shorthands:["Poppers","Popper"]},{description:"Spellvoid",filters:['k:"spellvoid"'],shorthands:["SV"]}],Xe=Je.filter(({shorthands:e})=>e.some(t=>t.includes(" "))).map(e=>Z(H({},e),{shorthands:e.shorthands.filter(t=>t.includes(" ")).map(t=>t.toLowerCase()).sort((t,r)=>r.length-t.length)})),qe=Je.filter(({shorthands:e})=>e.some(t=>!t.includes(" "))).map(e=>Z(H({},e),{shorthands:e.shorthands.filter(t=>!t.includes(" ")).map(t=>t.toLowerCase()).sort((t,r)=>r.length-t.length)}));var Er=[">=",">","<=","<"],wr=["!","-"],et={property:"artists",isArray:!0,partialMatch:!0},lr={property:"bannedFormats",isArray:!0,partialMatch:!0},cr={property:"bonds",isArray:!0},Ri={property:"n/a"},ur={property:"classes",isArray:!0,partialMatch:!0},dr={property:"cost",specialProperty:"specialCost",isNumber:!0,partialMatch:!0},oe={property:"defense",specialProperty:"specialDefense",isNumber:!0},hr={property:"flows",isArray:!0},fr={nestedProperty:"foiling",property:"printings",isArray:!0},pr={property:"fusions",isArray:!0},gr={property:"intellect",isNumber:!0},mr={property:"keywords",isArray:!0,partialMatch:!0},tt={property:"n/a",isMeta:!0},yr={property:"life",specialProperty:"specialLife",isNumber:!0},vr={property:"name",isString:!0},rt={property:"pitch",isNumber:!0},Ae={property:"power",specialProperty:"specialPower",isNumber:!0},kr={property:"n/a",isMeta:!0},zi={property:"n/a"},Oi={property:"n/a"},br={property:"sets",isArray:!0,partialMatch:!0},Me={property:"specializations",isArray:!0,partialMatch:!0},Dr={property:"subtypes",isArray:!0},Ar={property:"types",isArray:!0},Mr={property:"talents",isArray:!0},_i={property:"functionalText",isString:!0,partialMatch:!0},Ni={property:"typeText",isString:!0,partialMatch:!0},Ce={nestedProperty:"treatment",property:"printings",isArray:!0},Be={a:et,artist:et,art:et,attack:Ae,b:oe,block:oe,banned:lr,bond:cr,bonds:cr,c:ur,class:ur,chain:Ri,co:dr,cost:dr,color:rt,d:oe,def:oe,defense:oe,flow:hr,flows:hr,f:pr,fusion:pr,foil:fr,foiling:fr,i:gr,intellect:gr,k:mr,keyword:mr,l:tt,legal:tt,hero:tt,li:yr,life:yr,n:vr,name:vr,p:rt,pitch:rt,pwr:Ae,pow:Ae,power:Ae,r:kr,rarity:kr,referencedby:zi,references:Oi,rf:lr,s:br,set:br,sp:Me,spec:Me,specialization:Me,specializations:Me,st:Dr,subtype:Dr,t:Ar,type:Ar,tal:Mr,talent:Mr,text:_i,treat:Ce,treatment:Ce,var:Ce,variation:Ce,x:Ni},Hi=[{text:b.Release.ClassicBattlesRhinarDorinthea.toLowerCase(),override:b.Release.ClassicBattlesRhinarDorinthea.toLowerCase().replaceAll(C,"")}],Wi=e=>{var i;let t=[],r=e.replaceAll("\u201D",'"');for(let{text:n,override:o}of Hi)r.includes(n)&&(r=r.replace(n,o));if((i=ye(r))==null?void 0:i.card)t.push(r);else{let n=r.split(/[ ]+/),o="",s=0;for(let l of n)s===2&&(t.push(o.trim().replaceAll('"',"")),o="",s=0),s<2&&l.split('"').length===2?(o+=" "+l,s++):s===0&&o===""?t.push(l):s===1&&(o+=" "+l);s===2&&(t.push(o.trim().replaceAll('"',"")),o="",s=0)}return t},$i=[b.Hero.Briar,b.Hero.Brutus,b.Hero.Emperor,b.Hero.Prism,b.Hero.Shiyana,b.Hero.Taylor,b.Hero.Yorick],it=(e,t)=>{var d;let r=e.trim().toLowerCase();for(let{filters:g,shorthands:m}of Xe)for(let f of m)if(r.includes(f)){r=r.replace(f,g.join(" "));break}for(let[g,m]of Object.entries(b.setToSetIdentifierMappings))r.includes(g.toLowerCase())&&(r=r.replace(g.toLowerCase(),m[0]));let a=Wi(r),i=[];for(let g of a){let m=qe.find(({shorthands:f})=>f.includes(g));m?i.push(...m.filters):i.push(g)}let n=[],o=[],s=[],l=[],c=[],u=[],h={isClash:!1,heroes:[]};for(let g of i)if(Ji(g)){let[m,f]=g.split(":"),{modifier:y,values:p,isAnd:D,isOr:M}=Yi(f),{filterKey:v,excluded:B,isMeta:T}=Qi(m);if(T){if(["rarity","r"].includes(v)&&(p=Vi(p)),["legal","l","hero"].includes(v)){for(let k of $i)f.includes(k.toLowerCase())&&(h.heroes.includes(k)||h.heroes.push(k));f.includes("clash")&&(h.isClash=!0)}n.push(...Ye(B,v,p,y))}else{if(["chain"].includes(v)){let k=I=>I.name.toLowerCase().replaceAll(C,""),F=p.map(I=>nt(I,t)).filter(I=>!!I).map(k),x=new Set(F);v="name",M=!0;let j=20,w=0,E=I=>{if(!I.types.includes(b.Type.Hero)){let _=k(I);x.add(_),F.includes(_)||F.push(_)}};for(let I of F){if(w>j)break;let{referencedBy:_,references:xe}=Te(I,t);xe.forEach(E),w===0&&_.forEach(E),w++}p=Array.from(x)}else if(["referencedby","references"].includes(v)){let k=v,F=[...p].filter(x=>!!x);p=[],v="name",M=!0;for(let x of F){let{referencedBy:j,references:w}=Te(x,t);["referencedby"].includes(k)?p.push(...w.map(({name:E})=>E.toLowerCase().replaceAll(C,""))):["references"].includes(k)&&p.push(...j.map(({name:E})=>E.toLowerCase().replaceAll(C,"")))}}else["art","artist"].includes(v)?o=p:["foiling","foil"].includes(v)?(l=Zi(p),p=l.map(k=>k.toLowerCase())):["treat","treatment","var","variation"].includes(v)?(u=Ui(p),p=u.map(k=>k.toLowerCase())):["set","s"].includes(v)?(c=Gi(p),p=c.map(k=>k.toLowerCase().replaceAll(C,""))):["pitch","p","color"].includes(v)&&(p=Ki(p));Be[v]&&n.push({filterToPropertyMapping:Be[v],values:p,isAnd:D,isOr:M,modifier:y,excluded:B})}}else if(g){let m=(d=ye(g))==null?void 0:d.card,f=Qe(g);m?s.push(`"${m.toLowerCase().replace(C,"")}"`):f&&f.length>0?n.push(...f):s.push(g.replace(C,""))}return{appliedFilters:n,attributes:{artists:o,foilings:l,releases:c,treatments:u},keywords:s,specialConditions:h}},Gi=e=>{let t=[];for(let r of e)t.push(...ji(r));return t},ji=e=>{let t=[],r=Object.values(b.Release).find(a=>a.toLowerCase().replaceAll(C,"")===e);if(r&&t.push(r),t.length===0){let a=b.setIdentifierToSetMappings[e];a&&t.push(a)}if(t.length===0){let a=Object.values(b.Release).filter(i=>i.toLowerCase().includes(e));a.length>0&&t.push(...a)}return t},at={blue:3,yellow:2,red:1,white:0},Ki=e=>{let t=[];for(let r of e)at[r]||at[r]===0?t.push(at[r].toString()):t.push(r);return t},Cr={r:b.Foiling.R,rf:b.Foiling.R,rainbow:b.Foiling.R,c:b.Foiling.C,cf:b.Foiling.C,cold:b.Foiling.C,g:b.Foiling.G,gf:b.Foiling.G,gold:b.Foiling.G},Zi=e=>{let t=[];for(let r of e)Cr[r]&&t.push(Cr[r]);return t},Br=Z(H({},Object.values(b.Treatment).reduce((e,t)=>(e[t.toLowerCase()]=t,e),{})),{aa:b.Treatment.AA,alt:b.Treatment.AA,"alt art":b.Treatment.AA,ab:b.Treatment.AB,"alt border":b.Treatment.AB,at:b.Treatment.AT,"alt text":b.Treatment.AT,ea:b.Treatment.EA,extended:b.Treatment.EA,"extended art":b.Treatment.EA,fa:b.Treatment.FA,full:b.Treatment.FA,"full art":b.Treatment.FA}),Ui=e=>{let t=[];for(let r of e)Br[r]?t.push(Br[r]):b.Treatment[r.toUpperCase()]&&t.push(b.Treatment[r.toUpperCase()]);return t},Tr={c:"common",f:"fabled",l:"legendary",m:"majestic",v:"marvel",r:"rare",s:"super rare",t:"token"},Vi=e=>{let t=[];for(let r of e)Tr[r]?t.push(Tr[r]):t.push(r);return t},Yi=e=>{let t=[],r,a,i=Er.find(n=>e.includes(n));if(i){let[,n]=e.split(i);Fr(n)?(r=!0,t.push(...n.trim().split("+").map(o=>o.replace(C,"")))):xr(n)?(a=!0,t.push(...n.trim().split(",").map(o=>o.replace(C,"")))):t.push(n.trim().replace(C,""))}else Fr(e)?(r=!0,t.push(...e.trim().split("+").map(n=>n.replace(C,"")))):xr(e)?(a=!0,t.push(...e.trim().split(",").map(n=>n.replace(C,"")))):e.startsWith('"')&&e.endsWith('"')?t.push(e.trim().replaceAll('"',"").replace(C,"")):t.push(e.trim().replace(C,""));return{modifier:i,values:t,isAnd:r,isOr:a}},Qi=e=>{let t=Xi(e);if(t){let[,r]=e.split(t);return{excluded:!0,filterKey:r,isMeta:Sr(r)}}else return{excluded:!1,filterKey:e,isMeta:Sr(e)}},Ji=e=>e.indexOf(":")>=0,Fr=e=>e.indexOf("+")>=0,xr=e=>e.indexOf(",")>=0,Sr=e=>{var t;return!!((t=Be[e])!=null&&t.isMeta)},Xi=e=>{var t;return(t=wr.find(r=>e.includes(r)))==null?void 0:t.slice(0,1)};var S=U(V()),Ir={artists:["Hoodwill"],cardIdentifier:"fangs-a-lot-blue",classes:[S.Class.Generic],defaultImage:"FNG000",functionalText:"If Fangs A Lot is put into your banished zone from your graveyard, instead put it into your hand.",legalFormats:[],legalHeroes:[S.Hero.Kayo,S.Hero.Levia,S.Hero.Rhinar],printings:[{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000",print:"FNG000",set:S.Release.Promos},{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000_Marvel",print:`FNG000-${S.Treatment.FA}`,set:S.Release.Promos,treatment:S.Treatment.FA}],name:"Fangs A Lot",rarities:[S.Rarity.Rare],rarity:S.Rarity.Rare,sets:[S.Release.Promos],setIdentifiers:["FNG000"],specialImage:"FNG000_Marvel",subtypes:[S.Subtype.Attack],types:[S.Type.Action],typeText:"Generic Action - Attack"},Lr=[{keyword:Ir.name.toLowerCase(),card:Ir}];var nt=(e,t)=>{let r=t.find(a=>st(a.name)===e);return r||(r=t.find(a=>st(a.name).includes(e))),r},st=e=>le(e.toLowerCase().trim().replace(C,"")),le=e=>e.normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"");var lt=class{constructor(t){this.search=(t,r)=>{let a,{appliedFilters:i,attributes:n,keywords:o,specialConditions:s}=it(t,this.cards),l=o.join(" "),c=r?Lr.filter(f=>f.keyword===l):[];if(c.length>0?a=c.map(({card:f})=>f):o.length?a=this.fuse.search(l).map(f=>f.item):a=[...this.cards],i.length&&(a=a.filter(f=>f&&Rr(f,i,s))),o.length===0){let f="";if(n.releases.length===1)try{let y=n.releases[0];f=O.setToSetIdentifierMappings[y][0].toUpperCase()}catch(y){console.error("Error getting set identifier from search",y)}f?a.sort((y,p)=>{var v,B;let D=(v=y.setIdentifiers.find(T=>T.includes(f)))==null?void 0:v.replace(f,""),M=(B=p.setIdentifiers.find(T=>T.includes(f)))==null?void 0:B.replace(f,"");return D&&M?D.localeCompare(M):-1}):a.sort((y,p)=>y.name===p.name?`${y.pitch}`.localeCompare(`${p.pitch}`):y.name.localeCompare(p.name))}else{let f=[],y=[],p=o.map(D=>D.toLowerCase().replace(C,"")).join(" ");for(let D of a)D.name.toLowerCase().replace(C,"")===p?f.push(D):y.push(D);a=[...f,...y]}let u,{artists:h,foilings:d,releases:g,treatments:m}=n;return(h.length>0||d.length>0||g.length>0||m.length>0)&&(u=a.map(f=>{let y=f.printings.filter(p=>{let D=!!p.image,M=h.length===0||h.some(k=>p.artists.find(F=>F.replace(C,"").toLowerCase().includes(F))),v=d.length===0||d.includes(p.foiling),B=g.length===0||g.includes(p.set),T=m.length===0||m.includes(p.treatment);return D&&M&&v&&B&&T});return H({matchingPrintings:y},f)})),{appliedFilters:i,attributes:n,keywords:o,searchResults:u||a}};let r={getFn:(a,i)=>{let n=ot.default.config.getFn(a,i);return n&&(Array.isArray(n)?n.map(o=>le(o.replace(C,""))):le(n).replace(C,""))},ignoreLocation:!0,includeScore:!0,keys:[{name:"name",weight:10},{name:"functionalText",weight:6},{name:"setIdentifiers",weight:2},{name:"typeText",weight:6}],threshold:.15,useExtendedSearch:!0};this.cards=[...t],this.fuse=new ot.default([...t],r)}},Pr=lt,Rr=(e,t,r)=>{let a=!0;for(let i of t){let{isNumber:n,isString:o,isArray:s,isBoolean:l,property:c}=i.filterToPropertyMapping;if((n&&!qi(e,i)||o&&!en(e,i)||s&&!tn(e,i)||l&&!rn(e,i))&&(a=!1),r.isClash&&["rarities","bannedFormats","legalFormats"].includes(c)){let h=[O.Rarity.SuperRare,O.Rarity.Majestic,O.Rarity.Legendary,O.Rarity.Fabled].some(y=>e.rarities.includes(y)),d=!1;for(let{cardIdentifiers:y,heroes:p}of Ue)for(let D of r.heroes)p.includes(D)&&y.includes(e.cardIdentifier)&&(d=!0);let g=!!e.specializations&&e.specializations.length>0||d,m=[O.Type.Mentor,O.Type.Weapon].some(y=>e.types.includes(y)),f=Ze.includes(e.name);!a&&!f&&(g||m)&&h&&(a=!0),f&&(a=!1)}if(r.isClash&&r.heroes.includes(O.Hero.Briar)&&e.name==="Rosetta Thorn"&&(a=!0),!a)break}return a},qi=(e,t)=>{var r;if(Fe(t,e)){let{values:a,modifier:i,excluded:n,filterToPropertyMapping:{partialMatch:o}}=t,s=ct(e,t);if(s!=null&&!isNaN(s))if(s=parseInt(s),i)switch(i){case">=":let l=a==null?void 0:a.some(d=>s>=parseInt(d));return n?!l:l;case">":let c=a==null?void 0:a.some(d=>s>parseInt(d));return n?!c:c;case"<=":let u=a==null?void 0:a.some(d=>s<=parseInt(d));return n?!u:u;case"<":let h=a==null?void 0:a.some(d=>s<parseInt(d));return n?!h:h;default:return!1}else{let l=a==null?void 0:a.some(c=>s===parseInt(c));return n?!l:l}else{let l=(r=nn(e,t))==null?void 0:r.toLowerCase(),c=o?a==null?void 0:a.some(u=>l==null?void 0:l.includes(u)):a==null?void 0:a.some(u=>l===u);return n?!c:c}}else return!0},en=(e,t)=>{var r;if(Fe(t,e)){let{values:a,isAnd:i,excluded:n,filterToPropertyMapping:{partialMatch:o}}=t,s=(r=ct(e,t))==null?void 0:r.replaceAll(C,"");if(o){let l=i?a==null?void 0:a.every(c=>s==null?void 0:s.toLowerCase().includes(c)):a==null?void 0:a.some(c=>s==null?void 0:s.toLowerCase().includes(c));return n?!l:l}else{let l=i?a==null?void 0:a.every(c=>(s==null?void 0:s.toLowerCase())===c):a==null?void 0:a.some(c=>(s==null?void 0:s.toLowerCase())===c);return n?!l:l}}else return!0},tn=(e,t)=>{if(Fe(t,e)){let{values:r,isAnd:a,excluded:i,filterToPropertyMapping:{partialMatch:n}}=t,o=an(e,t).map(s=>s==null?void 0:s.replaceAll(C,""));if(n){let s=a?r.every(c=>o==null?void 0:o.some(u=>u==null?void 0:u.toLowerCase().includes(c))):r.some(c=>o==null?void 0:o.some(u=>u==null?void 0:u.toLowerCase().includes(c))),l=o.length===0;return i?!s||l:s}else{let s=a?r.every(l=>o==null?void 0:o.some(c=>(c==null?void 0:c.toLowerCase())===l)):r.some(l=>o==null?void 0:o.some(c=>(c==null?void 0:c.toLowerCase())===l));return i?!s:s}}else return!0},rn=(e,t)=>{if(Fe(t,e)){let{excluded:r}=t,a=ct(e,t);return r?!a:a}else return!0},ct=(e,t)=>{let{filterToPropertyMapping:r}=t;return e[r.property]},an=(e,t)=>{let{filterToPropertyMapping:{nestedProperty:r,property:a}}=t,i=e[a]||[];return r?i.map(n=>n[r]).filter(n=>!!n):i},nn=(e,t)=>{let{filterToPropertyMapping:r}=t;return e[r.specialProperty]},Fe=({cardTypes:e},{types:t,subtypes:r})=>!e||(e==null?void 0:e.some(a=>t.map(i=>i.toLowerCase()).includes(a.toLowerCase())||r.map(i=>i.toLowerCase()).includes(a.toLowerCase())));var _r=U(V());var ut=U(V()),sn={"Dawnblade, Resplendent":"Dawnblade"},zr=e=>sn[e.name]||e.name,Or=e=>{var t;return(t=e.functionalText)==null?void 0:t.replaceAll(e.name,"")},Te=(e,t)=>{let r=t.find(a=>a.name.toLowerCase().replace(C,"")===e);return r||(r=t.find(a=>a.name.toLowerCase().replace(C,"").includes(e))),dt(r,t)},dt=(e,t)=>{var n,o;let r=[],a=[],i=[];if(e){let s=[],l=[],c=zr(e);for(let u of t){let h=zr(u),d=c===h,g=e.pitch!==u.pitch;if(d&&g)r.push(u);else if(!d){let m=e.name==="Seismic Surge",f=(n=u.keywords)==null?void 0:n.includes(ut.Keyword.Heave),y=m&&f,p=Or(u),D=p==null?void 0:p.includes(c),M=Or(e),v=M==null?void 0:M.includes(h);(D||y)&&s.push(u);let B=u.name==="Seismic Surge",T=(o=e.keywords)==null?void 0:o.includes(ut.Keyword.Heave);(v||B&&T)&&l.push(u)}}for(let u of s)a.push(u);for(let u of l){let h=u.name;c!==h&&!l.some(d=>{let g=d.name;return g!==h&&g.includes(h)})&&i.push(u)}}return{otherPitches:r,referencedBy:a,references:i}},on=["cash-in-yellow"],ln=(e,t,r)=>{let a=new Set;for(let i of e.filter(({cardIdentifier:n})=>!on.includes(n))){let{references:n}=dt(i,t);for(let o of n.filter(s=>{let l=s.name==="Hyper Driver",c=r===_r.Hero.Maxx;return!l||c}))a.add(o)}return Array.from(a)};0&&(module.exports={PUNCTUATION,abbreviations,availableExclusions,availableModifiers,clashBannedCards,clashLegalCards,clashSpecializationOverrides,filterCard,filtersToCardPropertyMappings,getAbbreviation,getAbbreviationByCard,getCardByName,getCleanText,getExcludedMetaFilters,getKeywordsAndAppliedFiltersFromText,getMetaFilters,getNormalizedText,getRelatedCards,getRelatedCardsByName,getTokensReferencedByCards,multiWordShorthands,shorthands,singleWordShorthands});
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flesh-and-blood/search",
|
|
3
3
|
"description": "TypeScript search engine for Flesh and Blood cards",
|
|
4
|
-
"version": "3.1.
|
|
4
|
+
"version": "3.1.59",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"fuse.js": "^6.6.2"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
|
-
"@flesh-and-blood/cards": "^3.1.
|
|
20
|
+
"@flesh-and-blood/cards": "^3.1.59",
|
|
21
21
|
"@types/jest": "^29.5.11",
|
|
22
22
|
"@types/node": "^20.10.5",
|
|
23
23
|
"esbuild": "^0.19.10",
|
|
@@ -47,5 +47,5 @@
|
|
|
47
47
|
"FAB",
|
|
48
48
|
"FABTCG"
|
|
49
49
|
],
|
|
50
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "40acaa95a8d2c8104e0697b969ecc17684069283"
|
|
51
51
|
}
|