@flesh-and-blood/search 3.6.112 → 3.6.113
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 +2 -2
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var Ut=Object.create;var pe=Object.defineProperty,Jt=Object.defineProperties,Yt=Object.getOwnPropertyDescriptor,Xt=Object.getOwnPropertyDescriptors,Zt=Object.getOwnPropertyNames,kr=Object.getOwnPropertySymbols,Qt=Object.getPrototypeOf,br=Object.prototype.hasOwnProperty,qt=Object.prototype.propertyIsEnumerable;var vr=(e,r,t)=>r in e?pe(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,j=(e,r)=>{for(var t in r||(r={}))br.call(r,t)&&vr(e,t,r[t]);if(kr)for(var t of kr(r))qt.call(r,t)&&vr(e,t,r[t]);return e},V=(e,r)=>Jt(e,Xt(r));var Dr=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),ea=(e,r)=>{for(var t in r)pe(e,t,{get:r[t],enumerable:!0})},Ar=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let s of Zt(r))!br.call(e,s)&&s!==t&&pe(e,s,{get:()=>r[s],enumerable:!(a=Yt(r,s))||a.enumerable});return e};var Q=(e,r,t)=>(t=e!=null?Ut(Qt(e)):{},Ar(r||!e||!e.__esModule?pe(t,"default",{value:e,enumerable:!0}):t,e)),ra=e=>Ar(pe({},"__esModule",{value:!0}),e);var ee=Dr((Di,Yr)=>{var ve=Object.defineProperty,ta=Object.defineProperties,aa=Object.getOwnPropertyDescriptor,sa=Object.getOwnPropertyDescriptors,ia=Object.getOwnPropertyNames,Br=Object.getOwnPropertySymbols,Mr=Object.prototype.hasOwnProperty,na=Object.prototype.propertyIsEnumerable,Cr=(e,r,t)=>r in e?ve(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,oa=(e,r)=>{for(var t in r||(r={}))Mr.call(r,t)&&Cr(e,t,r[t]);if(Br)for(var t of Br(r))na.call(r,t)&&Cr(e,t,r[t]);return e},la=(e,r)=>ta(e,sa(r)),ca=(e,r)=>{for(var t in r)ve(e,t,{get:r[t],enumerable:!0})},da=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let s of ia(r))!Mr.call(e,s)&&s!==t&&ve(e,s,{get:()=>r[s],enumerable:!(a=aa(r,s))||a.enumerable});return e},ua=e=>da(ve({},"__esModule",{value:!0}),e),Fr={};ca(Fr,{Bond:()=>xr,Class:()=>Sr,Flow:()=>Rr,Foiling:()=>Er,Format:()=>Lr,Fusion:()=>Pr,Hero:()=>Wr,Keyword:()=>$r,Language:()=>Vr,Meta:()=>wr,Metatype:()=>_r,Rarity:()=>Ir,Release:()=>zr,ReleaseEdition:()=>Or,ReleaseType:()=>Ur,Subtype:()=>Kr,Talent:()=>Nr,Trait:()=>Hr,Treatment:()=>Tr,Type:()=>Gr,coreSetIdentifiers:()=>Ba,fullSetIdentifiers:()=>He,getCanAddToDeck:()=>ga,getCanCardBeTokenForDeck:()=>fa,getCardIdentifier:()=>ha,getDefaultPrinting:()=>za,getIsArenaCard:()=>jr,getIsBooster:()=>ka,getIsCardTokenForDeck:()=>be,getIsDeckCard:()=>Ne,getIsDraftable:()=>ba,getIsPreconstructed:()=>Aa,getIsReprint:()=>va,getPrint:()=>xa,getShouldRotateCardImage:()=>ya,getSpecialPrinting:()=>Ia,orderedFullSetBlackBorderIdentifiers:()=>Ra,promoSetIdentifiers:()=>Ma,releases:()=>Fa,setIdentifierToSetMappings:()=>Jr,setToSetIdentifierMappings:()=>Ea,supplementalSetIdentifiers:()=>Ca});Yr.exports=ua(Fr);var Er=(e=>(e.C="Cold",e.G="Gold",e.R="Rainbow",e))(Er||{}),Tr=(e=>(e.AB="Alternate Border",e.AA="Alternate Art",e.AT="Alternate Text",e.EA="Extended Art",e.FA="Full Art",e))(Tr||{}),Sr=(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.Necromancer="Necromancer",e.Ninja="Ninja",e.Pirate="Pirate",e.Ranger="Ranger",e.Runeblade="Runeblade",e.Shapeshifter="Shapeshifter",e.Thief="Thief",e.Warrior="Warrior",e.Wizard="Wizard",e))(Sr||{}),xr=(e=>(e.Earth="Earth",e))(xr||{}),Rr=(e=>(e.Lightning="Lightning",e))(Rr||{}),Lr=(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.ProjectBlue="Project Blue",e.Sealed="Sealed",e.UltimatePitFight="Ultimate Pit Fight",e))(Lr||{}),Pr=(e=>(e.Earth="Earth",e.Ice="Ice",e.Lightning="Lightning",e))(Pr||{}),Ir=(e=>(e.Basic="Basic",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))(Ir||{}),wr=(e=>(e.Expansion="Expansion slot",e.Rainbow="Rainbow",e))(wr||{}),zr=(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.HighSeas="High Seas",e.HistoryPack1="History Pack 1",e.Monarch="Monarch",e.Outsiders="Outsiders",e.PartTheMistveil="Part the Mistveil",e.Rosetta="Rosetta",e.SuperSlam="Super Slam",e.TalesOfAria="Tales of Aria",e.TheHunted="The Hunted",e.Uprising="Uprising",e.WelcomeToRathe="Welcome to Rathe",e.ArmoryDeckAurora="Armory Deck: Aurora",e.ArmoryDeckAzalea="Armory Deck: Azalea",e.ArmoryDeckBoltyn="Armory Deck: Boltyn",e.ArmoryDeckDash="Armory Deck: Dash",e.ArmoryDeckGravyBones="Armory Deck: Gravy Bones",e.ArmoryDeckIra="Armory Deck: Ira",e.ArmoryDeckKayo="Armory Deck: Kayo",e.ArmoryDeckMaxx="Armory Deck: Maxx",e.ArmoryDeckPleiades="Armory Deck: Pleiades",e.ArmoryDeckOriginsJarl="Armory Deck Origins: Jarl",e.ArmoryDeckLegendsPrism="Armory Deck Legends: Prism",e.ArmoryDeckLegendsViserai="Armory Deck Legends: Viserai",e.ArakniBlitzDeck="Arakni Blitz Deck",e.ArakniBlitzDeckARK="Arakni Hunted Blitz Deck",e.ArakniWebOfDeceitBlitzDeck="Arakni, Web of Deceit 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.CindraBlitzDeck="Cindra Blitz Deck",e.DromaiBlitzDeck="Dromai Blitz Deck",e.EnigmaBlitzDeck="Enigma Blitz Deck",e.FaiBlitzDeck="Fai Blitz Deck",e.FangBlitzDeck="Fang Blitz Deck",e.FlorianBlitzDeck="Florian 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.OscilioBlitzDeck="Oscilio Blitz Deck",e.PrismBlitzDeck="Prism Blitz Deck",e.RhinarBlitzDeck="Rhinar Blitz Deck",e.RiptideBlitzDeck="Riptide Blitz Deck",e.UzuriBlitzDeck="Uzuri Blitz Deck",e.VerdanceBlitzDeck="Verdance 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.BravoDemoDeck="Bravo Demo Deck",e.ClassicBattlesRhinarDorinthea="Classic Battles: Rhinar vs Dorinthea",e.MasteryPackGuardian="Mastery Pack: Guardian",e.IraWelcomeDeck="Ira Welcome Deck",e.RoundTheTable="Round the Table: TCC x LSS",e.SmashPalace="Smash Palace",e.GEM="GEM",e.Promos="Promos",e))(zr||{}),Or=(e=>(e.Alpha="Alpha",e.First="First",e.Unlimited="Unlimited",e.Promo="Promo",e))(Or||{}),Nr=(e=>(e.Chaos="Chaos",e.Draconic="Draconic",e.Earth="Earth",e.Elemental="Elemental",e.Ice="Ice",e.Light="Light",e.Lightning="Lightning",e.Mystic="Mystic",e.Revered="Revered",e.Reviled="Reviled",e.Royal="Royal",e.Shadow="Shadow",e))(Nr||{}),Hr=(e=>(e.AgentOfChaos="Agent of Chaos",e))(Hr||{}),_r=(e=>(e.Arakni="Arakni",e.Scurv="Scurv",e.HighSeas="High Seas",e.Puffin="Puffin",e.Rosetta="Rosetta",e))(_r||{}),Gr=(e=>(e.Action="Action",e.AttackReaction="Attack Reaction",e.Block="Block",e.Companion="Companion",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))(Gr||{}),Kr=(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.Cannon="Cannon",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.PitFighter="Pit-Fighter",e.Polearm="Polearm",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))(Kr||{}),Wr=(e=>(e.Arakni="Arakni",e.Aurora="Aurora",e.Azalea="Azalea",e.Benji="Benji",e.Betsy="Betsy",e.Blaze="Blaze",e.Bolfar="Bolfar",e.Boltyn="Boltyn",e.Bravo="Bravo",e.Brevant="Brevant",e.Briar="Briar",e.Brutus="Brutus",e.Chane="Chane",e.Cindra="Cindra",e.Crackni="Crackni",e.Crix="Crix",e.Dash="Dash",e.DataDoll="Data Doll",e.Dorinthea="Dorinthea",e.Dromai="Dromai",e.Emperor="Emperor",e.Enigma="Enigma",e.Fai="Fai",e.Fang="Fang",e.Florian="Florian",e.Genis="Genis",e.GravyBones="Gravy Bones",e.Ira="Ira",e.Iyslander="Iyslander",e.Jarl="Jarl",e.Kano="Kano",e.Kassai="Kassai",e.Katsu="Katsu",e.Kavdaen="Kavdaen",e.Kayo="Kayo",e.Kox="Kox",e.Levia="Levia",e.Lexi="Lexi",e.Lyath="Lyath",e.Marlynn="Marlynn",e.Maxx="Maxx",e.Melody="Melody",e.Nuu="Nuu",e.Oldhim="Oldhim",e.Olympia="Olympia",e.Oscilio="Oscilio",e.Pleiades="Pleiades",e.Prism="Prism",e.Puffin="Puffin",e.Reya="Reya",e.Rhinar="Rhinar",e.Riptide="Riptide",e.RKO="RKO",e.Ruudi="Ruu'di",e.Shiyana="Shiyana",e.Slippy="Slippy",e.Squizzy="Squizzy",e.Scurv="Scurv",e.Starvo="Starvo",e.Taipanis="Taipanis",e.Taylor="Taylor",e.Teklovossen="Teklovossen",e.Terra="Terra",e.Theryon="Theryon",e.Tuffnut="Tuffnut",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))(Wr||{}),$r=(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.TheCrowdBoos="The Crowd Boos",e.TheCrowdCheers="The Crowd Cheers",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.GoFish="Go Fish",e.Guardwell="Guardwell",e.Heave="Heave",e.Heavy="Heavy",e.HighTide="High Tide",e.Intimidate="Intimidate",e.Legendary="Legendary",e.Mark="Mark",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.Retrieve="Retrieve",e.RuneGate="Rune Gate",e.Rupture="Rupture",e.Scrap="Scrap",e.Solflare="Solflare",e.Specialization="Specialization",e.Spectra="Spectra",e.Spellvoid="Spellvoid",e.Steal="Steal",e.Stealth="Stealth",e.Surge="Surge",e.Suspense="Suspense",e.Temper="Temper",e.Tower="Tower",e.Transform="Transform",e.Transcend="Transcend",e.Unlimited="Unlimited",e.Universal="Universal",e.Unfreeze="Unfreeze",e.Unity="Unity",e.Wager="Wager",e.Ward="Ward",e.WateryGrave="Watery Grave",e))($r||{}),ha=(e,r)=>{let{name:t,pitch:a}=e,s=t.trim().toLowerCase().replace("//","-").normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"").replace(/ /g,"-").replace("\xF0","d").replace("\u0111","d").replace("\xED","i").replace(/[^a-z0-9 -]/g,"").replace(/--/,"-"),i="";switch(a){case"1":case 1:i=r?"-1":"-red";break;case"2":case 2:i=r?"-2":"-yellow";break;case"3":case 3:i=r?"-3":"-blue";break}return`${s}${i}`},jr=({keywords:e,traits:r,types:t})=>{let a=Ne({keywords:e,traits:r,types:t}),s=be({keywords:e,traits:r,types:t}),i=["Companion","Demi-Hero","Equipment","Weapon"].some(o=>t.includes(o));return!a&&!s&&i},Ne=({keywords:e,traits:r,types:t})=>{let a=["Action","Attack Reaction","Block","Defense Reaction","Instant","Mentor","Resource"].some(i=>t.includes(i)),s=be({keywords:e,traits:r,types:t});return a&&!s},be=({keywords:e,traits:r,types:t})=>{let a=!!r&&(r==null?void 0:r.includes("Agent of Chaos")),s=!!e&&e.includes("Ephemeral"),i=["Macro","Token"].some(o=>t.includes(o));return a||s||i},pa=["cracked-bauble-yellow","goldfin-harpoon"],fa=e=>{let r=pa.includes(e.cardIdentifier),t=be(e),a=e.isCardBack&&e.cardIdentifier!=="inner-chi-blue";return r||t||a},ga=({isCardBack:e,keywords:r,traits:t,types:a})=>{let s=jr({keywords:r,traits:t,types:a}),i=Ne({keywords:r,traits:t,types:a});return!e&&(s||i)},ya=e=>{var r,t,a;let s=(r=e.keywords)==null?void 0:r.includes("Meld"),i=!((t=e.types)!=null&&t.includes("Macro"))&&((a=e.subtypes)==null?void 0:a.includes("Landmark"));return s||i},Vr=(e=>(e.English="English",e.French="Fran\xE7ais",e.German="Deutsch",e.Italian="Italiano",e.Japanese="\u65E5\u672C\u8A9E",e.Spanish="Espa\xF1ol",e))(Vr||{}),q=["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],X=["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],Ur=(e=>(e.ArmoryDeck="Armory Deck",e.BlitzDeck="Blitz Deck",e.BoxSet="Box Set",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))(Ur||{}),ma=["Expansion Booster","Standalone Booster"],ka=e=>ma.includes(e),va=e=>e==="History Pack",ba=e=>e==="Standalone Booster",Da=["Armory Deck","Blitz Deck","Classic Battles","1st Strike","Round the Table","Welcome Deck"],Aa=e=>Da.includes(e),Ba={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"},Ca={cru:"Crucible of War",evr:"Everfest","1hp":"History Pack 1",hp1:"History Pack 1",dyn:"Dynasty",dtd:"Dusk till Dawn"},Ma=["fab","her","jdg","lgs","lss","oxo","xxx","win"],Fa=[{cards:30,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GJG7Z4WGWSZ95FY74KX4M557"}],heroes:["Ira"],languages:q,release:"Ira Welcome Deck",relatedReleases:[],releaseDate:"2019-08-31 12:00",releaseType:"Welcome Deck",setIdentifiers:["ira"],talents:[]},{cards:226,classes:["Brute","Guardian","Ninja","Warrior"],deckLinks:[],draft:{heroIdentifiers:["bravo","dorinthea","katsu","rhinar"],picksPerPack:15},heroes:["Bravo","Dorinthea","Katsu","Rhinar"],languages:["English"],release:"Welcome to Rathe",relatedReleases:[],releaseDate:"2019-10-11 12:00",releaseType:"Standalone Booster",setIdentifiers:["wtr"],talents:[]},{cards:219,classes:["Mechanologist","Ranger","Runeblade","Wizard"],deckLinks:[],draft:{heroIdentifiers:["azalea","dash","kano","viserai"],picksPerPack:15},heroes:["Azalea","Dash","Kano","Viserai"],languages:["English"],release:"Arcane Rising",relatedReleases:[],releaseDate:"2020-03-27 12:00",releaseType:"Standalone Booster",setIdentifiers:["arc"],talents:[]},{cards:194,classes:["Brute","Guardian","Mechanologist","Merchant","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Benji","Data Doll","Ira","Kassai","Kavdaen","Kayo","Shiyana"],languages:["English"],release:"Crucible of War",relatedReleases:[],releaseDate:"2020-08-28 12:00",releaseType:"Expansion Booster",setIdentifiers:["cru"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01G7FD2B3YQAMR8NJ4B3M58H96"}],heroes:["Boltyn"],languages:["English"],release:"Boltyn Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["bol"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01G7FDVRZP35DFWBRK64AG5TKQ"}],heroes:["Chane"],languages:["English"],release:"Chane Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["chn"],talents:["Shadow"]},{cards:40,classes:["Brute"],languages:["English"],deckLinks:[{url:"https://fabrary.net/decks/01G7B1T1D1M2DAM61K876VJBDK"}],heroes:["Levia"],release:"Levia Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["lev"],talents:["Shadow"]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01G7FCP2N7N0MNHWAH6JTP0KFN"}],heroes:["Prism"],languages:["English"],relatedReleases:[],releaseDate:"2021-05-07 12:00",release:"Prism Blitz Deck",releaseType:"Blitz Deck",setIdentifiers:["psm"],talents:["Light"]},{cards:307,classes:["Brute","Illusionist","Runeblade","Warrior"],deckLinks:[],draft:{heroIdentifiers:["boltyn","chane","levia","prism"],picksPerPack:15},heroes:["Boltyn","Chane","Levia","Prism"],languages:["English"],release:"Monarch",relatedReleases:["Boltyn Blitz Deck","Chane Blitz Deck","Levia Blitz Deck","Prism Blitz Deck"],releaseDate:"2021-05-07 12:00",releaseType:"Standalone Booster",setIdentifiers:["mon"],talents:["Light","Shadow"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01G7K4D304QQCZZSBT7ABCX4XC"}],heroes:["Briar"],languages:["English"],release:"Briar Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",talents:["Elemental","Earth","Lightning"],setIdentifiers:["bri"]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01G7K3WGPVKVDXG2J013GXSXNP"}],heroes:["Lexi"],languages:["English"],release:"Lexi Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["lxi"],talents:["Elemental","Ice","Lightning"]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01G7K464J7VS0K7HKW5E395TBK"}],heroes:["Oldhim"],languages:["English"],release:"Oldhim Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["old"],talents:["Elemental","Earth","Ice"]},{cards:238,classes:["Guardian","Ranger","Runeblade"],deckLinks:[],draft:{heroIdentifiers:["briar","lexi","oldhim"],picksPerPack:15},heroes:["Briar","Lexi","Oldhim"],languages:["English"],release:"Tales of Aria",relatedReleases:["Briar Blitz Deck","Lexi Blitz Deck","Oldhim Blitz Deck"],releaseDate:"2021-09-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["ele"],talents:["Elemental","Earth","Ice","Lightning"]},{cards:198,classes:["Brute","Guardian","Illusionist","Mechanologist","Merchant","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Genis","Starvo","Valda"],languages:["English"],release:"Everfest",relatedReleases:[],releaseDate:"2022-02-04 12:00",releaseType:"Expansion Booster",setIdentifiers:["evr"],talents:["Elemental","Earth","Ice","Lightning"]},{cards:423,classes:["Brute","Guardian","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Azalea","Benji","Bravo","Dash","Data Doll","Dorinthea","Ira","Kassai","Katsu","Kayo","Rhinar","Viserai","Kano"],languages:["English"],release:"History Pack 1",relatedReleases:[],releaseDate:"2022-05-06 12:00",releaseType:"History Pack",setIdentifiers:["1hp","hp1"],talents:[]},{cards:80,classes:["Brute","Warrior"],deckLinks:[{name:"Dorinthea",url:"https://fabrary.net/decks/01GA4WTNSD12YTQB4FY8EYYNG5"},{name:"Rhinar",url:"https://fabrary.net/decks/01GA4WZKX9VEWKKPX7Y7H3MG1F"}],heroes:["Dorinthea","Rhinar"],languages:["English"],release:"Classic Battles: Rhinar vs Dorinthea",relatedReleases:[],releaseDate:"2022-05-27 12:00",releaseType:"Classic Battles",setIdentifiers:["dvr","rvd"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01G76H1R1ERRBRKS7RVCQAB8RX"}],heroes:["Dromai"],languages:["English"],relatedReleases:[],releaseDate:"2022-06-24 12:00",release:"Dromai Blitz Deck",releaseType:"Blitz Deck",setIdentifiers:["dro"],talents:["Draconic"]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01G76H7RG7GN5ZA10F3BJBH740"}],heroes:["Fai"],languages:["English"],release:"Fai Blitz Deck",relatedReleases:[],releaseDate:"2022-06-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["fai"],talents:["Draconic"]},{cards:226,classes:["Illusionist","Ninja","Wizard"],deckLinks:[],draft:{heroIdentifiers:["dromai","fai","iyslander"],picksPerPack:14},heroes:["Dromai","Fai","Iyslander"],languages:["English"],release:"Uprising",relatedReleases:["Dromai Blitz Deck","Fai Blitz Deck"],releaseDate:"2022-06-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["upr"],talents:["Draconic","Elemental","Ice"]},{cards:247,classes:["Assassin","Brute","Guardian","Illusionist","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Arakni","Emperor","Yoji"],languages:["English"],release:"Dynasty",relatedReleases:[],releaseDate:"2022-11-11 12:00",releaseType:"Expansion Booster",setIdentifiers:["dyn"],talents:["Royal"]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01GW25PNWBW2FPDHRNTPSET0GT"}],heroes:["Arakni"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Arakni Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["ara"],talents:[]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01GW26RNH1Q1J0S1VFXPN609S2"}],heroes:["Azalea"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Azalea Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["azl"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GW28622XSVAK7H9RXZVAVKM0"}],heroes:["Benji"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Benji Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["ben"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GW28TF5FXFKJ5CGRNXB84CG6"}],heroes:["Katsu"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Katsu Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["kat"],talents:[]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01GW29DPNZ3XVBJQHHFQHHHDGN"}],heroes:["Riptide"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Riptide Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["rip"],talents:[]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01GW2945GHPH2YSX3FTS7HCBT1"}],heroes:["Uzuri"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Uzuri Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["uzu"],talents:[]},{cards:239,classes:["Assassin","Ranger","Ninja"],deckLinks:[],draft:{heroIdentifiers:["arakni-solitary-confinement","azalea","benji-the-piercing-wind","katsu","riptide","uzuri"],picksPerPack:14},heroes:["Arakni","Azalea","Benji","Katsu","Riptide","Uzuri"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Outsiders",relatedReleases:["Arakni Blitz Deck","Azalea Blitz Deck","Benji Blitz Deck","Katsu Blitz Deck","Riptide Blitz Deck","Uzuri Blitz Deck"],releaseDate:"2023-03-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["out"],talents:[]},{cards:236,classes:["Illusionist","Runeblade","Warrior","Brute"],deckLinks:[],heroes:["Prism","Vynnset","Boltyn","Levia"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Dusk till Dawn",relatedReleases:[],releaseDate:"2023-07-14 12:00",releaseType:"Expansion Booster",setIdentifiers:["dtd"],talents:["Light","Shadow"]},{cards:107,classes:["Mechanologist","Bard","Guardian","Ninja"],deckLinks:[{name:"Brevant",url:"https://fabrary.net/decks/01HAXKPFH7ZHPDEJZH967VNRW6"},{name:"Ira",url:"https://fabrary.net/decks/01HAXKZMTRN4FR7CFTQA11A70N"},{name:"Melody",url:"https://fabrary.net/decks/01HAXKSFPXGCEH99PDZJ32V4N9"},{name:"Teklovossen",url:"https://fabrary.net/decks/01HAXKZMTRN4FR7CFTQA11A70N"}],heroes:["Teklovossen","Melody","Brevant","Ira"],languages:["English"],release:"Round the Table: TCC x LSS",relatedReleases:[],releaseDate:"2023-09-29 12:00",releaseType:"Round the Table",talents:[],setIdentifiers:["tcc"]},{cards:251,classes:["Mechanologist"],deckLinks:[],draft:{heroIdentifiers:["dash-database","maxx-nitro","teklovossen"],picksPerPack:14},heroes:["Dash","Maxx","Teklovossen"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],raritiesExcludedInLimited:["Legendary","Fabled"],release:"Bright Lights",relatedReleases:[],releaseDate:"2023-10-06 12:00",releaseType:"Standalone Booster",setIdentifiers:["evo"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01HN3J1X1NQ9TB9RTVWV42JG46"}],heroes:["Betsy"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Betsy Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["bet"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01HN3SHBEQBRECYK6ZN1CHRADR"}],heroes:["Kassai"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Kassai Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["ksi"],talents:[]},{cards:40,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HN3HK89NA910SK3FQV84H46Z"}],heroes:["Kayo"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Kayo Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["kyo"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01HN3GP5ZJ1NRC0XBYNE45XQE8"}],heroes:["Olympia"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Olympia Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["ola"],talents:[]},{cards:40,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HN3Q4GBDMEFSX98HEN9ET308"}],heroes:["Rhinar"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Rhinar Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["rhi"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01HN3K8ZV7KBRRJKPHW4B13J1K"}],heroes:["Victor"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Victor Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["vic"],talents:[]},{cards:255,classes:["Brute","Guardian","Warrior"],deckLinks:[],draft:{heroIdentifiers:["kassai","betsy","kayo","olympia","rhinar","victor-goldmane"],picksPerPack:14},heroes:["Kassai","Betsy","Kayo","Olympia","Rhinar","Victor"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],raritiesExcludedInLimited:["Legendary","Fabled"],release:"Heavy Hitters",relatedReleases:["Betsy Blitz Deck","Kassai Blitz Deck","Kayo Blitz Deck","Olympia Blitz Deck","Rhinar Blitz Deck","Victor Blitz Deck"],releaseDate:"2024-02-02 12:00",releaseType:"Standalone Booster",setIdentifiers:["hvy"],talents:[]},{cards:66,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HWNCK2BYPVKK6701052YYXMZ"}],heroes:["Kayo"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Kayo",relatedReleases:[],releaseDate:"2024-05-03 12:00",releaseType:"Armory Deck",setIdentifiers:["ako"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z23X2PRQCJ100FP4CAZGK"}],heroes:["Enigma"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Enigma Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["eng"],talents:["Mystic"]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z4BD3TRMS3CP1ME4ZP3T6"}],heroes:["Nuu"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Nuu Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["nuu"],talents:["Mystic"]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z395FD35CM24QCJQKJER1"}],heroes:["Zen"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Zen Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["zen"],talents:["Mystic"]},{cards:239,classes:["Assassin","Illusionist","Ninja"],deckLinks:[],draft:{heroIdentifiers:["enigma","nuu","zen"],picksPerPack:14},heroes:["Enigma","Nuu","Zen"],languages:q,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Part the Mistveil",relatedReleases:["Enigma Blitz Deck","Nuu Blitz Deck","Zen Blitz Deck"],releaseDate:"2024-05-31 12:00",releaseType:"Standalone Booster",setIdentifiers:["mst"],talents:["Mystic"]},{cards:66,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01J202NH0RG8S0V8WXH1FWB2AH"}],heroes:["Boltyn"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Boltyn",relatedReleases:[],releaseDate:"2024-07-12 12:00",releaseType:"Armory Deck",setIdentifiers:["asb"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J45SYSM2ZERW6CWY283ZAT1S"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"1st Strike: Aurora",relatedReleases:[],releaseDate:"2024-08-01 12:00",releaseType:"1st Strike",setIdentifiers:["aur"],talents:["Lightning"]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01J45SWXNDV5XD8PTBACAV8NZ1"}],heroes:["Terra"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"1st Strike: Terra",relatedReleases:[],releaseDate:"2024-08-01 12:00",releaseType:"1st Strike",setIdentifiers:["ter"],talents:["Earth"]},{cards:66,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01J3GKKSTM773CW7BG3RRJ5FJH"}],heroes:["Azalea"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Azalea",relatedReleases:[],releaseDate:"2024-08-02 12:00",releaseType:"Armory Deck",setIdentifiers:["aaz"],talents:[]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J68KF1TFNN62TC0G7M993FTY"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Aurora Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["aua"],talents:["Lightning"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J68KFRMJFKRQYJJ7THG1GMTB"}],heroes:["Florian"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Florian Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["flr"],talents:["Earth"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01J68KGA3JVKFHEXGKYW0441CY"}],heroes:["Oscilio"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Oscilio Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["osc"],talents:["Lightning"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01J68KGT3XD3HMVVRFT174QNMF"}],heroes:["Verdance"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Verdance Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["ver"],talents:["Earth"]},{cards:258,classes:["Runeblade","Wizard"],deckLinks:[],draft:{heroIdentifiers:["aurora","florian","oscilio","verdance"],picksPerPack:14},heroes:["Aurora","Florian","Oscilio","Verdance"],languages:q,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Rosetta",relatedReleases:["Aurora Blitz Deck","Florian Blitz Deck","Oscilio Blitz Deck","Verdance Blitz Deck"],releaseDate:"2024-09-20 12:00",releaseType:"Standalone Booster",setIdentifiers:["ros"],talents:["Elemental","Earth","Lightning"]},{cards:66,classes:["Mechanologist"],deckLinks:[{url:"https://fabrary.net/decks/01J9822H5PANJAFQVMC4TPK4Z1"}],heroes:["Dash"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Dash",relatedReleases:[],releaseDate:"2024-10-18 12:00",releaseType:"Armory Deck",setIdentifiers:["aio"],talents:[]},{cards:30,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01JCPPENK52DTRBJZMWQF8S0X2"}],heroes:["Jarl"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck Origins: Jarl",relatedReleases:[],releaseDate:"2024-11-29 12:00",releaseType:"Armory Deck",setIdentifiers:["ajv"],talents:["Elemental","Earth","Ice"]},{cards:40,classes:["Assassin"],deckLinks:[],heroes:["Arakni"],languages:q,release:"Arakni Hunted Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["ark"],talents:[]},{cards:40,classes:["Assassin"],deckLinks:[],heroes:["Crackni"],languages:q,release:"Arakni, Web of Deceit Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["wod"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[],heroes:["Cindra"],languages:q,release:"Cindra Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["cin"],talents:["Draconic","Royal"]},{cards:40,classes:["Warrior"],deckLinks:[],heroes:["Fang"],languages:q,release:"Fang Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["fng"],talents:["Draconic","Royal"]},{cards:265,classes:["Assassin","Ninja","Warrior"],deckLinks:[],draft:{heroIdentifiers:["arakni-web-of-deceit","cindra","fang"],picksPerPack:14},heroes:["Arakni","Cindra","Fang"],heroOverrides:{Arakni:"Crackni"},languages:q,raritiesExcludedInLimited:["Legendary","Fabled"],release:"The Hunted",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Standalone Booster",setIdentifiers:["hnt"],talents:["Chaos","Draconic","Royal"],url:"https://fabtcg.com/en/articles/hnt/"},{cards:28,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01JN2DEG4X2V8DVMCWFBWQTTSC"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],release:"Armory Deck: Aurora",relatedReleases:[],releaseDate:"2025-03-14 12:00",releaseType:"Armory Deck",setIdentifiers:["ast"],talents:["Elemental","Lightning"]},{cards:28,classes:["Mechanologist"],deckLinks:[{url:"https://fabrary.net/decks/01JRH0631MH5A9JPVGTP3TKJXN"}],heroes:["Maxx"],languages:["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],release:"Armory Deck: Maxx",relatedReleases:[],releaseDate:"2025-04-17 12:00",releaseType:"Armory Deck",setIdentifiers:["amx"],talents:[]},{cards:30,classes:["Necromancer","Pirate"],deckLinks:[{url:"https://fabrary.net/decks/01JVYZ0NCHP49HAP40C23P14E3"}],heroes:["Gravy Bones"],languages:X,release:"Armory Deck: Gravy Bones",relatedReleases:[],releaseDate:"2025-05-30 12:00",releaseType:"Armory Deck",setIdentifiers:["agb"],talents:[]},{cards:265,classes:["Mechanologist","Necromancer","Pirate","Ranger","Thief"],deckLinks:[],draft:{heroIdentifiers:["gravy-bones","marlynn","puffin","scurv-stowaway"],picksPerPack:14},heroes:["Gravy Bones","Marlynn","Puffin","Scurv"],languages:X,raritiesExcludedInLimited:["Fabled","Legendary"],release:"High Seas",relatedReleases:[],releaseDate:"2025-06-06 12:00",releaseType:"Standalone Booster",setIdentifiers:["sea"],talents:[]},{cards:30,classes:["Ninja"],deckLinks:[],heroes:["Ira"],languages:X,release:"Armory Deck: Ira",relatedReleases:[],releaseDate:"2025-07-11 12:00",releaseType:"Armory Deck",setIdentifiers:["asr"],talents:[]},{cards:30,classes:["Runeblade"],deckLinks:[],heroes:["Viserai"],languages:X,release:"Armory Deck Legends: Viserai",relatedReleases:[],releaseDate:"2025-07-24 12:00",releaseType:"Armory Deck",setIdentifiers:["avs"],talents:[]},{cards:30,classes:["Illusionist"],deckLinks:[],heroes:["Prism"],languages:X,release:"Armory Deck Legends: Prism",relatedReleases:[],releaseDate:"2025-07-24 12:00",releaseType:"Armory Deck",setIdentifiers:["apr"],talents:["Light"]},{cards:130,classes:["Guardian"],deckLinks:[],heroes:["Valda"],languages:X,release:"Mastery Pack: Guardian",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Expansion Booster",setIdentifiers:["mpg"],talents:[]},{cards:30,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01K1GBSGB17GT925NVJ0PM0G9Y"}],heroes:["Bravo"],languages:X,release:"Bravo Demo Deck",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Welcome Deck",setIdentifiers:["bdd"],talents:[]},{cards:107,classes:["Guardian"],deckLinks:[],heroes:["Bravo"],languages:["English"],release:"Smash Palace",relatedReleases:[],releaseDate:"2025-09-29 12:00",releaseType:"Box Set",talents:[],setIdentifiers:["smp"]},{cards:276,classes:["Brute","Guardian"],deckLinks:[],draft:{heroIdentifiers:["tuffnut","pleiades","kayo-strong-arm","lyath-goldmane"],picksPerPack:14},heroes:["Kayo","Lyath","Pleiades","Tuffnut"],heroOverrides:{Kayo:"RKO"},languages:X,raritiesExcludedInLimited:["Fabled","Legendary"],release:"Super Slam",relatedReleases:[],releaseDate:"2025-09-26 12:00",releaseType:"Standalone Booster",setIdentifiers:["sup"],talents:["Revered","Reviled"]},{cards:30,classes:["Guardian"],deckLinks:[],heroes:["Pleiades"],languages:X,release:"Armory Deck: Pleiades",relatedReleases:[],releaseDate:"2025-09-19 12:00",releaseType:"Armory Deck",setIdentifiers:["aps"],talents:["Revered"]}],He={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",hnt:"The Hunted",sea:"High Seas",sup:"Super Slam",mpg:"Mastery Pack: Guardian"},Jr=la(oa({},He),{aaz:"Armory Deck: Azalea",asb:"Armory Deck: Boltyn",aio:"Armory Deck: Dash",ako:"Armory Deck: Kayo",ajv:"Armory Deck Origins: Jarl",ast:"Armory Deck: Aurora",amx:"Armory Deck: Maxx",agb:"Armory Deck: Gravy Bones",asr:"Armory Deck: Ira",aps:"Armory Deck: Pleiades",apr:"Armory Deck Legends: Prism",avs:"Armory Deck Legends: Viserai",ara:"Arakni Blitz Deck",ark:"Arakni Hunted 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",cin:"Cindra Blitz Deck",dro:"Dromai Blitz Deck",eng:"Enigma Blitz Deck",fai:"Fai Blitz Deck",fng:"Fang Blitz Deck",flr:"Florian 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",osc:"Oscilio Blitz Deck",psm:"Prism Blitz Deck",rip:"Riptide Blitz Deck",rhi:"Rhinar Blitz Deck",uzu:"Uzuri Blitz Deck",ver:"Verdance Blitz Deck",vic:"Victor Blitz Deck",zen:"Zen Blitz Deck",wod:"Arakni, Web of Deceit Blitz Deck",aur:"1st Strike: Aurora",ter:"1st Strike: Terra",bdd:"Bravo Demo Deck",dvr:"Classic Battles: Rhinar vs Dorinthea",rvd:"Classic Battles: Rhinar vs Dorinthea",ira:"Ira Welcome Deck",tcc:"Round the Table: TCC x LSS",smp:"Smash Palace",bvo:"Bravo Hero Deck",tea:"Dorinthea Hero Deck",ksu:"Katsu Hero Deck",rnr:"Rhinar Hero Deck",gem:"GEM",fab:"Promos",her:"Promos",jdg:"Promos",lgs:"Promos",lss:"Promos",oxo:"Promos",xxx:"Promos",win:"Promos"}),Oe={};for(let[e,r]of Object.entries(Jr)){let t=Oe[r];t?t.push(e):Oe[r]=[e]}var Ea=Oe,Ta={},Sa={MPG112_V2:"-V2",MPG112_V3:"-V3",MST158_V3:"-V3",ROS162_V2:"-V2","ROS008-MV_V2_BACK":"-V3"},xa=e=>{var r,t,a;let s=Ta[e.set]||"",i=`${e.identifier}${s}`,o=e.edition?`-${e.edition}`:"",n=e.foiling?`-${e.foiling}`:"",l=(r=e.treatments)!=null&&r.length?`-${e.treatments.sort().join("-")}`:e.treatment?`-${e.treatment}`:"",d=(t=e.image)!=null&&t.toLowerCase().includes("back")?"-Back":"",c=Sa[((a=e.image)==null?void 0:a.toUpperCase())||""]||"";return`${i}${o}${n}${l}${d}${c}`},Ra=Object.keys(He).filter(e=>!e.toLowerCase().includes("hp")).reverse().map(e=>e.toUpperCase()),La={"adaptive-plating":{print:"EVO013-Cold"},"command-and-conquer-red":{print:"DYN000-Cold-Alternate Art-Extended Art"},"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"},"rosetta-thorn":{print:"ROS256-Cold"},"sigil-of-solace-red":{print:"FAB178-Rainbow-Alternate Art-Extended Art"},"spectral-shield":{print:"MST158-Alternate Art-V3"},"tripwire-trap-red":{print:"LGS150-Rainbow"},"viserai-rune-blood":{print:"HER011-Cold"},"wreck-havoc-red":{print:"OUT198"}},Pa=["JDG044-Full Art-Back"],Ia=(e,r)=>{let{cardIdentifier:t}=e,a=Object.entries(La).find(([s])=>s===t);if(a&&r.some(s=>{let[,{print:i}]=a;return s.print===i})){let[,{print:s}]=a;return r.find(i=>i.print===s)||r[0]}else{let s,i,o,n,l,d,c,h,u,p,g,v,k,b,y,A,f,C,T,B,x,L;for(let M of r){let{edition:F,foiling:R,identifier:w,image:N,print:W,treatments:S}=M,P=(N==null?void 0:N.toUpperCase())||"",z=w.toLowerCase().includes("win"),Y=!!P,me=P.includes("HP"),he=Pa.includes(W);if(Y&&!z&&!me&&!he){if(s||(s=M),S!=null&&S.includes("Full Art")){if(g=M,R==="Cold"&&(d=M,P.includes("_V3"))){c=M;break}P.includes("BACK")?u=M:p=M}S!=null&&S.includes("Extended Art")&&(h=M,R==="Cold"&&(l=M),R||(v=M),F==="Promo"&&(k=M)),S!=null&&S.includes("Alternate Art")&&(i=M),S!=null&&S.includes("Alternate Border")&&(o=M),S!=null&&S.includes("Alternate Text")&&(n=M),(P.includes("_V2")||P.includes("-MV"))&&S!=null&&S.includes("Full Art")&&(y=M),F==="Alpha"?A=M:F==="First"?f=M:F==="Promo"?C=M:F==="Unlimited"&&(T=M),R==="Cold"?(B=M,F==="Promo"&&(L=M)):R==="Gold"&&(x=M)}}return b||c||p||u||d||g||l||y||k||v||h||o||i||n||L||A||f||C||T||x||B||s}},wa={"command-and-conquer-red":{print:"HNT260"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},"portside-exchange-blue":{print:"SEA145"},"rockslide-trap-blue":{print:"LGS152-Rainbow"},"rosetta-thorn":{print:"ELE222-First"},"spectral-shield":{print:"MST158"},"tripwire-trap-red":{print:"LGS150-Rainbow"},"wreck-havoc-red":{print:"OUT198"}},za=(e,r)=>{let{cardIdentifier:t}=e,a=Object.entries(wa).find(([s])=>s===t);if(a&&r.some(s=>{let[,{print:i}]=a;return s.print===i})){let[,{print:s}]=a;return r.find(i=>i.print===s)||r[0]}else{let s,i;for(let o of r){let{edition:n,image:l,treatment:d}=o,c=!!l,h=l==null?void 0:l.includes("HP");if(c&&!h&&(s||(s=o),!i&&n!=="Promo"&&d!=="Full Art"&&(i=o)),s&&i)break}return i||s||r[0]}}});var pt=Dr((Ai,ht)=>{"use strict";function Xr(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),t.push.apply(t,a)}return t}function le(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?Xr(Object(t),!0).forEach(function(a){Ke(e,a,t[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Xr(Object(t)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})}return e}function Ge(e){"@babel/helpers - typeof";return Ge=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Ge(e)}function H(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}function Zr(e,r){for(var t=0;t<r.length;t++){var a=r[t];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function _(e,r,t){return r&&Zr(e.prototype,r),t&&Zr(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ke(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function re(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Super expression must either be null or a function");Object.defineProperty(e,"prototype",{value:Object.create(r&&r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),writable:!1}),r&&We(e,r)}function Ae(e){return Ae=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},Ae(e)}function We(e,r){return We=Object.setPrototypeOf||function(a,s){return a.__proto__=s,a},We(e,r)}function Oa(){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 Na(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Ha(e,r){if(r&&(typeof r=="object"||typeof r=="function"))return r;if(r!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Na(e)}function te(e){var r=Oa();return function(){var a=Ae(e),s;if(r){var i=Ae(this).constructor;s=Reflect.construct(a,arguments,i)}else s=a.apply(this,arguments);return Ha(this,s)}}function ne(e){return _a(e)||Ga(e)||Ka(e)||Wa()}function _a(e){if(Array.isArray(e))return $e(e)}function Ga(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Ka(e,r){if(e){if(typeof e=="string")return $e(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return $e(e,r)}}function $e(e,r){(r==null||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t<r;t++)a[t]=e[t];return a}function Wa(){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 Z(e){return Array.isArray?Array.isArray(e):it(e)==="[object Array]"}var $a=1/0;function ja(e){if(typeof e=="string")return e;var r=e+"";return r=="0"&&1/e==-$a?"-0":r}function Va(e){return e==null?"":ja(e)}function U(e){return typeof e=="string"}function at(e){return typeof e=="number"}function Ua(e){return e===!0||e===!1||Ja(e)&&it(e)=="[object Boolean]"}function st(e){return Ge(e)==="object"}function Ja(e){return st(e)&&e!==null}function K(e){return e!=null}function _e(e){return!e.trim().length}function it(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var Ya="Incorrect 'index' type",Xa=function(r){return"Invalid value for key ".concat(r)},Za=function(r){return"Pattern length exceeds max of ".concat(r,".")},Qa=function(r){return"Missing ".concat(r," property in key")},qa=function(r){return"Property 'weight' in key '".concat(r,"' must be a positive integer")},Qr=Object.prototype.hasOwnProperty,es=function(){function e(r){var t=this;H(this,e),this._keys=[],this._keyMap={};var a=0;r.forEach(function(s){var i=nt(s);a+=i.weight,t._keys.push(i),t._keyMap[i.id]=i,a+=i.weight}),this._keys.forEach(function(s){s.weight/=a})}return _(e,[{key:"get",value:function(t){return this._keyMap[t]}},{key:"keys",value:function(){return this._keys}},{key:"toJSON",value:function(){return JSON.stringify(this._keys)}}]),e}();function nt(e){var r=null,t=null,a=null,s=1,i=null;if(U(e)||Z(e))a=e,r=qr(e),t=je(e);else{if(!Qr.call(e,"name"))throw new Error(Qa("name"));var o=e.name;if(a=o,Qr.call(e,"weight")&&(s=e.weight,s<=0))throw new Error(qa(o));r=qr(o),t=je(o),i=e.getFn}return{path:r,id:t,weight:s,src:a,getFn:i}}function qr(e){return Z(e)?e:e.split(".")}function je(e){return Z(e)?e.join("."):e}function rs(e,r){var t=[],a=!1,s=function i(o,n,l){if(K(o))if(!n[l])t.push(o);else{var d=n[l],c=o[d];if(!K(c))return;if(l===n.length-1&&(U(c)||at(c)||Ua(c)))t.push(Va(c));else if(Z(c)){a=!0;for(var h=0,u=c.length;h<u;h+=1)i(c[h],n,l+1)}else n.length&&i(c,n,l+1)}};return s(e,U(r)?r.split("."):r,0),a?t:t[0]}var ts={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},as={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:function(r,t){return r.score===t.score?r.idx<t.idx?-1:1:r.score<t.score?-1:1}},ss={location:0,threshold:.6,distance:100},is={useExtendedSearch:!1,getFn:rs,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},D=le(le(le(le({},as),ts),ss),is),ns=/[^ ]+/g;function os(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:3,t=new Map,a=Math.pow(10,r);return{get:function(i){var o=i.match(ns).length;if(t.has(o))return t.get(o);var n=1/Math.pow(o,.5*e),l=parseFloat(Math.round(n*a)/a);return t.set(o,l),l},clear:function(){t.clear()}}}var Xe=function(){function e(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=r.getFn,a=t===void 0?D.getFn:t,s=r.fieldNormWeight,i=s===void 0?D.fieldNormWeight:s;H(this,e),this.norm=os(i,3),this.getFn=a,this.isCreated=!1,this.setIndexRecords()}return _(e,[{key:"setSources",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.docs=t}},{key:"setIndexRecords",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.records=t}},{key:"setKeys",value:function(){var t=this,a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.keys=a,this._keysMap={},a.forEach(function(s,i){t._keysMap[s.id]=i})}},{key:"create",value:function(){var t=this;this.isCreated||!this.docs.length||(this.isCreated=!0,U(this.docs[0])?this.docs.forEach(function(a,s){t._addString(a,s)}):this.docs.forEach(function(a,s){t._addObject(a,s)}),this.norm.clear())}},{key:"add",value:function(t){var a=this.size();U(t)?this._addString(t,a):this._addObject(t,a)}},{key:"removeAt",value:function(t){this.records.splice(t,1);for(var a=t,s=this.size();a<s;a+=1)this.records[a].i-=1}},{key:"getValueForItemAtKeyId",value:function(t,a){return t[this._keysMap[a]]}},{key:"size",value:function(){return this.records.length}},{key:"_addString",value:function(t,a){if(!(!K(t)||_e(t))){var s={v:t,i:a,n:this.norm.get(t)};this.records.push(s)}}},{key:"_addObject",value:function(t,a){var s=this,i={i:a,$:{}};this.keys.forEach(function(o,n){var l=o.getFn?o.getFn(t):s.getFn(t,o.path);if(K(l)){if(Z(l))(function(){for(var c=[],h=[{nestedArrIndex:-1,value:l}];h.length;){var u=h.pop(),p=u.nestedArrIndex,g=u.value;if(K(g))if(U(g)&&!_e(g)){var v={v:g,i:p,n:s.norm.get(g)};c.push(v)}else Z(g)&&g.forEach(function(k,b){h.push({nestedArrIndex:b,value:k})})}i.$[n]=c})();else if(U(l)&&!_e(l)){var d={v:l,n:s.norm.get(l)};i.$[n]=d}}}),this.records.push(i)}},{key:"toJSON",value:function(){return{keys:this.keys,records:this.records}}}]),e}();function ot(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.getFn,s=a===void 0?D.getFn:a,i=t.fieldNormWeight,o=i===void 0?D.fieldNormWeight:i,n=new Xe({getFn:s,fieldNormWeight:o});return n.setKeys(e.map(nt)),n.setSources(r),n.create(),n}function ls(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=r.getFn,a=t===void 0?D.getFn:t,s=r.fieldNormWeight,i=s===void 0?D.fieldNormWeight:s,o=e.keys,n=e.records,l=new Xe({getFn:a,fieldNormWeight:i});return l.setKeys(o),l.setIndexRecords(n),l}function De(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=r.errors,a=t===void 0?0:t,s=r.currentLocation,i=s===void 0?0:s,o=r.expectedLocation,n=o===void 0?0:o,l=r.distance,d=l===void 0?D.distance:l,c=r.ignoreLocation,h=c===void 0?D.ignoreLocation:c,u=a/e.length;if(h)return u;var p=Math.abs(n-i);return d?u+p/d:p?1:u}function cs(){for(var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:D.minMatchCharLength,t=[],a=-1,s=-1,i=0,o=e.length;i<o;i+=1){var n=e[i];n&&a===-1?a=i:!n&&a!==-1&&(s=i-1,s-a+1>=r&&t.push([a,s]),a=-1)}return e[i-1]&&i-a>=r&&t.push([a,i-1]),t}var ie=32;function ds(e,r,t){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},s=a.location,i=s===void 0?D.location:s,o=a.distance,n=o===void 0?D.distance:o,l=a.threshold,d=l===void 0?D.threshold:l,c=a.findAllMatches,h=c===void 0?D.findAllMatches:c,u=a.minMatchCharLength,p=u===void 0?D.minMatchCharLength:u,g=a.includeMatches,v=g===void 0?D.includeMatches:g,k=a.ignoreLocation,b=k===void 0?D.ignoreLocation:k;if(r.length>ie)throw new Error(Za(ie));for(var y=r.length,A=e.length,f=Math.max(0,Math.min(i,A)),C=d,T=f,B=p>1||v,x=B?Array(A):[],L;(L=e.indexOf(r,T))>-1;){var M=De(r,{currentLocation:L,expectedLocation:f,distance:n,ignoreLocation:b});if(C=Math.min(M,C),T=L+y,B)for(var F=0;F<y;)x[L+F]=1,F+=1}T=-1;for(var R=[],w=1,N=y+A,W=1<<y-1,S=0;S<y;S+=1){for(var P=0,z=N;P<z;){var Y=De(r,{errors:S,currentLocation:f+z,expectedLocation:f,distance:n,ignoreLocation:b});Y<=C?P=z:N=z,z=Math.floor((N-P)/2+P)}N=z;var me=Math.max(1,f-z+1),he=h?A:Math.min(f+z,A)+y,oe=Array(he+2);oe[he+1]=(1<<S)-1;for(var $=he;$>=me;$-=1){var ke=$-1,yr=t[e.charAt(ke)];if(B&&(x[ke]=+!!yr),oe[$]=(oe[$+1]<<1|1)&yr,S&&(oe[$]|=(R[$+1]|R[$])<<1|1|R[$+1]),oe[$]&W&&(w=De(r,{errors:S,currentLocation:ke,expectedLocation:f,distance:n,ignoreLocation:b}),w<=C)){if(C=w,T=ke,T<=f)break;me=Math.max(1,2*f-T)}}var Vt=De(r,{errors:S+1,currentLocation:f,expectedLocation:f,distance:n,ignoreLocation:b});if(Vt>C)break;R=oe}var ze={isMatch:T>=0,score:Math.max(.001,w)};if(B){var mr=cs(x,p);mr.length?v&&(ze.indices=mr):ze.isMatch=!1}return ze}function us(e){for(var r={},t=0,a=e.length;t<a;t+=1){var s=e.charAt(t);r[s]=(r[s]||0)|1<<a-t-1}return r}var lt=function(){function e(r){var t=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=a.location,i=s===void 0?D.location:s,o=a.threshold,n=o===void 0?D.threshold:o,l=a.distance,d=l===void 0?D.distance:l,c=a.includeMatches,h=c===void 0?D.includeMatches:c,u=a.findAllMatches,p=u===void 0?D.findAllMatches:u,g=a.minMatchCharLength,v=g===void 0?D.minMatchCharLength:g,k=a.isCaseSensitive,b=k===void 0?D.isCaseSensitive:k,y=a.ignoreLocation,A=y===void 0?D.ignoreLocation:y;if(H(this,e),this.options={location:i,threshold:n,distance:d,includeMatches:h,findAllMatches:p,minMatchCharLength:v,isCaseSensitive:b,ignoreLocation:A},this.pattern=b?r:r.toLowerCase(),this.chunks=[],!!this.pattern.length){var f=function(F,R){t.chunks.push({pattern:F,alphabet:us(F),startIndex:R})},C=this.pattern.length;if(C>ie){for(var T=0,B=C%ie,x=C-B;T<x;)f(this.pattern.substr(T,ie),T),T+=ie;if(B){var L=C-ie;f(this.pattern.substr(L),L)}}else f(this.pattern,0)}}return _(e,[{key:"searchIn",value:function(t){var a=this.options,s=a.isCaseSensitive,i=a.includeMatches;if(s||(t=t.toLowerCase()),this.pattern===t){var o={isMatch:!0,score:0};return i&&(o.indices=[[0,t.length-1]]),o}var n=this.options,l=n.location,d=n.distance,c=n.threshold,h=n.findAllMatches,u=n.minMatchCharLength,p=n.ignoreLocation,g=[],v=0,k=!1;this.chunks.forEach(function(y){var A=y.pattern,f=y.alphabet,C=y.startIndex,T=ds(t,A,f,{location:l+C,distance:d,threshold:c,findAllMatches:h,minMatchCharLength:u,includeMatches:i,ignoreLocation:p}),B=T.isMatch,x=T.score,L=T.indices;B&&(k=!0),v+=x,B&&L&&(g=[].concat(ne(g),ne(L)))});var b={isMatch:k,score:k?v/this.chunks.length:1};return k&&i&&(b.indices=g),b}}]),e}(),ae=function(){function e(r){H(this,e),this.pattern=r}return _(e,[{key:"search",value:function(){}}],[{key:"isMultiMatch",value:function(t){return et(t,this.multiRegex)}},{key:"isSingleMatch",value:function(t){return et(t,this.singleRegex)}}]),e}();function et(e,r){var t=e.match(r);return t?t[1]:null}var hs=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=s===this.pattern;return{isMatch:i,score:i?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"exact"}},{key:"multiRegex",get:function(){return/^="(.*)"$/}},{key:"singleRegex",get:function(){return/^=(.*)$/}}]),t}(ae),ps=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=s.indexOf(this.pattern),o=i===-1;return{isMatch:o,score:o?0:1,indices:[0,s.length-1]}}}],[{key:"type",get:function(){return"inverse-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"$/}},{key:"singleRegex",get:function(){return/^!(.*)$/}}]),t}(ae),fs=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=s.startsWith(this.pattern);return{isMatch:i,score:i?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/^\^(.*)$/}}]),t}(ae),gs=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=!s.startsWith(this.pattern);return{isMatch:i,score:i?0:1,indices:[0,s.length-1]}}}],[{key:"type",get:function(){return"inverse-prefix-exact"}},{key:"multiRegex",get:function(){return/^!\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^!\^(.*)$/}}]),t}(ae),ys=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=s.endsWith(this.pattern);return{isMatch:i,score:i?0:1,indices:[s.length-this.pattern.length,s.length-1]}}}],[{key:"type",get:function(){return"suffix-exact"}},{key:"multiRegex",get:function(){return/^"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^(.*)\$$/}}]),t}(ae),ms=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=!s.endsWith(this.pattern);return{isMatch:i,score:i?0:1,indices:[0,s.length-1]}}}],[{key:"type",get:function(){return"inverse-suffix-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^!(.*)\$$/}}]),t}(ae),ct=function(e){re(t,e);var r=te(t);function t(a){var s,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=i.location,n=o===void 0?D.location:o,l=i.threshold,d=l===void 0?D.threshold:l,c=i.distance,h=c===void 0?D.distance:c,u=i.includeMatches,p=u===void 0?D.includeMatches:u,g=i.findAllMatches,v=g===void 0?D.findAllMatches:g,k=i.minMatchCharLength,b=k===void 0?D.minMatchCharLength:k,y=i.isCaseSensitive,A=y===void 0?D.isCaseSensitive:y,f=i.ignoreLocation,C=f===void 0?D.ignoreLocation:f;return H(this,t),s=r.call(this,a),s._bitapSearch=new lt(a,{location:n,threshold:d,distance:h,includeMatches:p,findAllMatches:v,minMatchCharLength:b,isCaseSensitive:A,ignoreLocation:C}),s}return _(t,[{key:"search",value:function(s){return this._bitapSearch.searchIn(s)}}],[{key:"type",get:function(){return"fuzzy"}},{key:"multiRegex",get:function(){return/^"(.*)"$/}},{key:"singleRegex",get:function(){return/^(.*)$/}}]),t}(ae),dt=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){for(var i=0,o,n=[],l=this.pattern.length;(o=s.indexOf(this.pattern,i))>-1;)i=o+l,n.push([o,i-1]);var d=!!n.length;return{isMatch:d,score:d?0:1,indices:n}}}],[{key:"type",get:function(){return"include"}},{key:"multiRegex",get:function(){return/^'"(.*)"$/}},{key:"singleRegex",get:function(){return/^'(.*)$/}}]),t}(ae),Ve=[hs,dt,fs,gs,ms,ys,ps,ct],rt=Ve.length,ks=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,vs="|";function bs(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return e.split(vs).map(function(t){for(var a=t.trim().split(ks).filter(function(g){return g&&!!g.trim()}),s=[],i=0,o=a.length;i<o;i+=1){for(var n=a[i],l=!1,d=-1;!l&&++d<rt;){var c=Ve[d],h=c.isMultiMatch(n);h&&(s.push(new c(h,r)),l=!0)}if(!l)for(d=-1;++d<rt;){var u=Ve[d],p=u.isSingleMatch(n);if(p){s.push(new u(p,r));break}}}return s})}var Ds=new Set([ct.type,dt.type]),As=function(){function e(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=t.isCaseSensitive,s=a===void 0?D.isCaseSensitive:a,i=t.includeMatches,o=i===void 0?D.includeMatches:i,n=t.minMatchCharLength,l=n===void 0?D.minMatchCharLength:n,d=t.ignoreLocation,c=d===void 0?D.ignoreLocation:d,h=t.findAllMatches,u=h===void 0?D.findAllMatches:h,p=t.location,g=p===void 0?D.location:p,v=t.threshold,k=v===void 0?D.threshold:v,b=t.distance,y=b===void 0?D.distance:b;H(this,e),this.query=null,this.options={isCaseSensitive:s,includeMatches:o,minMatchCharLength:l,findAllMatches:u,ignoreLocation:c,location:g,threshold:k,distance:y},this.pattern=s?r:r.toLowerCase(),this.query=bs(this.pattern,this.options)}return _(e,[{key:"searchIn",value:function(t){var a=this.query;if(!a)return{isMatch:!1,score:1};var s=this.options,i=s.includeMatches,o=s.isCaseSensitive;t=o?t:t.toLowerCase();for(var n=0,l=[],d=0,c=0,h=a.length;c<h;c+=1){var u=a[c];l.length=0,n=0;for(var p=0,g=u.length;p<g;p+=1){var v=u[p],k=v.search(t),b=k.isMatch,y=k.indices,A=k.score;if(b){if(n+=1,d+=A,i){var f=v.constructor.type;Ds.has(f)?l=[].concat(ne(l),ne(y)):l.push(y)}}else{d=0,n=0,l.length=0;break}}if(n){var C={isMatch:!0,score:d/n};return i&&(C.indices=l),C}}return{isMatch:!1,score:1}}}],[{key:"condition",value:function(t,a){return a.useExtendedSearch}}]),e}(),Be=[];function Bs(){Be.push.apply(Be,arguments)}function Ue(e,r){for(var t=0,a=Be.length;t<a;t+=1){var s=Be[t];if(s.condition(e,r))return new s(e,r)}return new lt(e,r)}var Ce={AND:"$and",OR:"$or"},Je={PATH:"$path",PATTERN:"$val"},Ye=function(r){return!!(r[Ce.AND]||r[Ce.OR])},Cs=function(r){return!!r[Je.PATH]},Ms=function(r){return!Z(r)&&st(r)&&!Ye(r)},tt=function(r){return Ke({},Ce.AND,Object.keys(r).map(function(t){return Ke({},t,r[t])}))};function ut(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.auto,s=a===void 0?!0:a,i=function o(n){var l=Object.keys(n),d=Cs(n);if(!d&&l.length>1&&!Ye(n))return o(tt(n));if(Ms(n)){var c=d?n[Je.PATH]:l[0],h=d?n[Je.PATTERN]:n[c];if(!U(h))throw new Error(Xa(c));var u={keyId:je(c),pattern:h};return s&&(u.searcher=Ue(h,r)),u}var p={children:[],operator:l[0]};return l.forEach(function(g){var v=n[g];Z(v)&&v.forEach(function(k){p.children.push(o(k))})}),p};return Ye(e)||(e=tt(e)),i(e)}function Fs(e,r){var t=r.ignoreFieldNorm,a=t===void 0?D.ignoreFieldNorm:t;e.forEach(function(s){var i=1;s.matches.forEach(function(o){var n=o.key,l=o.norm,d=o.score,c=n?n.weight:null;i*=Math.pow(d===0&&c?Number.EPSILON:d,(c||1)*(a?1:l))}),s.score=i})}function Es(e,r){var t=e.matches;r.matches=[],K(t)&&t.forEach(function(a){if(!(!K(a.indices)||!a.indices.length)){var s=a.indices,i=a.value,o={indices:s,value:i};a.key&&(o.key=a.key.src),a.idx>-1&&(o.refIndex=a.idx),r.matches.push(o)}})}function Ts(e,r){r.score=e.score}function Ss(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.includeMatches,s=a===void 0?D.includeMatches:a,i=t.includeScore,o=i===void 0?D.includeScore:i,n=[];return s&&n.push(Es),o&&n.push(Ts),e.map(function(l){var d=l.idx,c={item:r[d],refIndex:d};return n.length&&n.forEach(function(h){h(l,c)}),c})}var ce=function(){function e(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=arguments.length>2?arguments[2]:void 0;H(this,e),this.options=le(le({},D),t),this.options.useExtendedSearch,this._keyStore=new es(this.options.keys),this.setCollection(r,a)}return _(e,[{key:"setCollection",value:function(t,a){if(this._docs=t,a&&!(a instanceof Xe))throw new Error(Ya);this._myIndex=a||ot(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}},{key:"add",value:function(t){K(t)&&(this._docs.push(t),this._myIndex.add(t))}},{key:"remove",value:function(){for(var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){return!1},a=[],s=0,i=this._docs.length;s<i;s+=1){var o=this._docs[s];t(o,s)&&(this.removeAt(s),s-=1,i-=1,a.push(o))}return a}},{key:"removeAt",value:function(t){this._docs.splice(t,1),this._myIndex.removeAt(t)}},{key:"getIndex",value:function(){return this._myIndex}},{key:"search",value:function(t){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=a.limit,i=s===void 0?-1:s,o=this.options,n=o.includeMatches,l=o.includeScore,d=o.shouldSort,c=o.sortFn,h=o.ignoreFieldNorm,u=U(t)?U(this._docs[0])?this._searchStringList(t):this._searchObjectList(t):this._searchLogical(t);return Fs(u,{ignoreFieldNorm:h}),d&&u.sort(c),at(i)&&i>-1&&(u=u.slice(0,i)),Ss(u,this._docs,{includeMatches:n,includeScore:l})}},{key:"_searchStringList",value:function(t){var a=Ue(t,this.options),s=this._myIndex.records,i=[];return s.forEach(function(o){var n=o.v,l=o.i,d=o.n;if(K(n)){var c=a.searchIn(n),h=c.isMatch,u=c.score,p=c.indices;h&&i.push({item:n,idx:l,matches:[{score:u,value:n,norm:d,indices:p}]})}}),i}},{key:"_searchLogical",value:function(t){var a=this,s=ut(t,this.options),i=function d(c,h,u){if(!c.children){var p=c.keyId,g=c.searcher,v=a._findMatches({key:a._keyStore.get(p),value:a._myIndex.getValueForItemAtKeyId(h,p),searcher:g});return v&&v.length?[{idx:u,item:h,matches:v}]:[]}for(var k=[],b=0,y=c.children.length;b<y;b+=1){var A=c.children[b],f=d(A,h,u);if(f.length)k.push.apply(k,ne(f));else if(c.operator===Ce.AND)return[]}return k},o=this._myIndex.records,n={},l=[];return o.forEach(function(d){var c=d.$,h=d.i;if(K(c)){var u=i(s,c,h);u.length&&(n[h]||(n[h]={idx:h,item:c,matches:[]},l.push(n[h])),u.forEach(function(p){var g,v=p.matches;(g=n[h].matches).push.apply(g,ne(v))}))}}),l}},{key:"_searchObjectList",value:function(t){var a=this,s=Ue(t,this.options),i=this._myIndex,o=i.keys,n=i.records,l=[];return n.forEach(function(d){var c=d.$,h=d.i;if(K(c)){var u=[];o.forEach(function(p,g){u.push.apply(u,ne(a._findMatches({key:p,value:c[g],searcher:s})))}),u.length&&l.push({idx:h,item:c,matches:u})}}),l}},{key:"_findMatches",value:function(t){var a=t.key,s=t.value,i=t.searcher;if(!K(s))return[];var o=[];if(Z(s))s.forEach(function(p){var g=p.v,v=p.i,k=p.n;if(K(g)){var b=i.searchIn(g),y=b.isMatch,A=b.score,f=b.indices;y&&o.push({score:A,key:a,value:g,idx:v,norm:k,indices:f})}});else{var n=s.v,l=s.n,d=i.searchIn(n),c=d.isMatch,h=d.score,u=d.indices;c&&o.push({score:h,key:a,value:n,norm:l,indices:u})}return o}}]),e}();ce.version="6.6.2";ce.createIndex=ot;ce.parseIndex=ls;ce.config=D;ce.parseQuery=ut;Bs(As);var xs=ce;ht.exports=xs});var vi={};ea(vi,{FilterProperty:()=>Qe,PUNCTUATION:()=>E,RARITY_VALUES_MAPPING:()=>lr,abbreviations:()=>Ze,availableExclusions:()=>Nt,availableModifiers:()=>Ot,default:()=>Kt,filterCard:()=>Wt,filtersToCardPropertyMappings:()=>Pe,getAbbreviation:()=>Me,getAbbreviationByCard:()=>Rs,getCardByName:()=>dr,getCleanText:()=>ur,getExcludedMetaFilters:()=>er,getKeywordsAndAppliedFiltersFromText:()=>cr,getMetaFilters:()=>qe,getNormalizedText:()=>ge,getRelatedCards:()=>gr,getRelatedCardsByName:()=>Ie,getTokensReferencedByCards:()=>ki,multiWordShorthands:()=>tr,shorthands:()=>rr,singleWordShorthands:()=>ar});module.exports=ra(vi);var Gt=Q(ee()),hr=Q(pt());var E=/[!"#$%&'’(),./:;<=>?@[\]^_`|~]/g;var m=Q(ee());var Me=e=>Ze.find(({abbreviations:r})=>r.find(t=>t.toLowerCase()===e)),Rs=e=>Ze.find(({card:r})=>r.toLowerCase()===e.name.toLowerCase()),Ze=[{abbreviations:["10k"],card:"10,000 Year Reunion"},{abbreviations:["Pajamas","PJs"],card:"Alluvion Constellas"},{abbreviations:["Slippy","Arakni Slipped Through the Cracks","Arakni, Slipped Through the Cracks"],card:"Arakni, 5L!p3d 7hRu 7h3 cR4X"},{abbreviations:["Dullcap"],card:"Arcanite Skullcap"},{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:["CStrike","C-Strike","C Strike"],card:"Celestial Cataclysm"},{abbreviations:["CBelly"],card:"Cerebellum Processor"},{abbreviations:["CLF"],card:"Channel Lake Frigid"},{abbreviations:["CLV"],card:"Channel Lightning Valley"},{abbreviations:["CMH"],card:"Channel Mount Heroic"},{abbreviations:["CMI"],card:"Channel Mount Isen"},{abbreviations:["CMT"],card:"Channel the Millennium Tree"},{abbreviations:["CnC","C&C"],card:"Command and Conquer"},{abbreviations:["Sea and Sea"],card:"Conqueror of the High Seas"},{abbreviations:["CYB"],card:"Count Your Blessings"},{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:["DnD"],card:"Devotion Never Dies"},{abbreviations:["DIO"],card:"Dash I/O"},{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:["Yum yum"],card:"Fruits of the Forest"},{abbreviations:["GnT"],card:"Give and Take"},{abbreviations:["Habibi"],card:"Hanabi Blaster"},{abbreviations:["HMH"],card:"Hope Merchant's Hood"},{abbreviations:["HoI"],card:"Heart of Ice"},{abbreviations:["Pumpkin"],card:"Jack-o'-lantern"},{abbreviations:["RKO","Cheato"],card:"Kayo, Underhanded Cheat"},{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:["LtC"],card:"Lead the Charge"},{abbreviations:["LNW"],card:"Leave No Witnesses"},{abbreviations:["LFaL","L4aL"],card:"Life for a Life"},{abbreviations:["LiT"],card:"Lost in Thought"},{abbreviations:["MMB"],card:"Mage Master Boots"},{abbreviations:["MaxV"],card:"Maximum Velocity"},{abbreviations:["MoM"],card:"Mask of Momentum"},{abbreviations:["MnG"],card:"Meat and Greet"},{abbreviations:["Cake","\u{1F382}"],card:"Ninth Blade of the Blood Oath"},{abbreviations:["PoM"],card:"Peace of Mind"},{abbreviations:["P-Bone"],card:"Performance Bonus"},{abbreviations:["PF","\u{1F525}"],card:"Phoenix Flame"},{abbreviations:["PtW"],card:"Poison the Well"},{abbreviations:["Thanos","Infinity Gauntlet"],card:"Polarity Reversal Script"},{abbreviations:["DPot","D Pot"],card:"Potion of D\xE9j\xE0 Vu"},{abbreviations:["Ponder Run"],card:"Premeditate"},{abbreviations:["Qi Unbound"],card:"Qi Unleashed"},{abbreviations:["RitL"],card:"Red in the Ledger"},{abbreviations:["Cats","Ghost cat","Ghost cats"],card:"Restless Coalescence"},{abbreviations:["Eugene"],card:"Rhinar, Reckless Rampage",isHidden:!0},{abbreviations:["SSGB"],card:"Sandscour Greatbow"},{abbreviations:["SSP"],card:"Sand Sketched Plan"},{abbreviations:["SFaS","S4aS"],card:"Scar for a Scar"},{abbreviations:["Tyler"],card:"Scurv, Stowaway",isHidden:!0},{abbreviations:["SWOMB"],card:"Shifting Winds of the Mystic Beast"},{abbreviations:["Snaps"],card:"Snapdragon Scalers"},{abbreviations:["SWK"],card:"Spinning Wheel Kick"},{abbreviations:["SFTL"],card:"Swing Fist, Think Later"},{abbreviations:["TTT"],card:"Take the Tempo"},{abbreviations:["Ultron"],card:"Teklovossen, the Mechropotent"},{abbreviations:["ToS"],card:"Test of Strength"},{abbreviations:["TAYG"],card:"That All You Got?"},{abbreviations:["TROM"],card:"This Round's on Me"},{abbreviations:["3oak"],card:"Three of a Kind"},{abbreviations:["Pox Malone","Post Malone"],card:"Virulent Touch"},{abbreviations:["Cast Homes"],card:"Visit Goldmane Estate"},{abbreviations:["Frosty Hammer"],card:"Winter's Wail"},{abbreviations:["Wreckless Wing"],card:"War Cry of Bellona"},{abbreviations:["ZTS"],card:"Zero to Sixty"}];var O=Q(ee());var Qe=(t=>(t.LegalFormats="legalFormats",t.LegalHeroes="legalHeroes",t))(Qe||{}),Se=Array.from(Array(50).keys()).map(e=>`${e}`),Ls=[{format:O.Format.BlitzLivingLegend,nicknames:["blitz ll"]},{format:O.Format.ClassicConstructed,nicknames:["cc","classic"]},{format:O.Format.ClassicConstructedLivingLegend,nicknames:["cc ll","classic constructed ll","ll cc","ll","living legend"]},{format:O.Format.ProjectBlue,nicknames:["pb"]},{format:O.Format.UltimatePitFight,nicknames:["upf"]}],Ps=Object.values(O.Format).map(e=>{let r=Ls.find(({format:a})=>a===e),t=e.toLowerCase().replaceAll(E,"");return r?V(j({},r),{format:t}):{format:t}}),Is=[{hero:O.Hero.DataDoll,nicknames:["data","datadoll"]},{hero:O.Hero.Dorinthea,nicknames:["dori"]},{hero:O.Hero.Genis,nicknames:["genis"]},{hero:O.Hero.GravyBones,nicknames:["gravy"]},{hero:O.Hero.Iyslander,nicknames:["islander"]}],ws=Object.values(O.Hero).map(e=>{let r=Is.find(({hero:a})=>a===e),t=e.toLowerCase().replaceAll(E,"");return r?V(j({},r),{hero:t}):{hero:t}}),Fe=["common","rare","super rare","majestic","legendary","fabled"],zs=(e,r,t,a)=>{let s=[];if(!r)s.push(...e);else for(let i of e)switch(r){case">=":let o=!1;for(let c of Fe)o?s.push(c):c===i&&(o=!0,s.push(c));break;case">":let n=!1;for(let c of Fe)n?s.push(c):c===i&&(n=!0);break;case"<=":let l=!1;for(let c of Fe.slice().reverse())l?s.push(c):c===i&&(l=!0,s.push(c));break;case"<":let d=!1;for(let c of Fe.slice().reverse())d?s.push(c):c===i&&(d=!0);break;default:break}return{filterToPropertyMapping:{nestedProperty:"rarity",property:"printings",isArray:!0},isExcluded:t,isOptional:a,isOr:!0,values:s}},Os=(e,r,t,a)=>{let s=a.map(l=>({hero:l.toLowerCase().replaceAll(E,"")})),i=[],o=[],n=[];for(let l of e){let d=Ps.find(({format:c,nicknames:h})=>c===l||!!h&&h.includes(l));if(d)o.push(d.format);else{let c=ws.find(({hero:h,nicknames:u})=>h===l||!!u&&u.includes(l))||s.find(({hero:h})=>h===l);c&&n.push(c.hero)}}return o.length>0&&i.push({filterToPropertyMapping:{property:"legalFormats",isArray:!0},values:o,isOr:!0,isExcluded:r,isOptional:t}),n.length>0&&i.push({filterToPropertyMapping:{property:"legalHeroes",isArray:!0},values:n,isOr:!0,isExcluded:r,isOptional:t}),i},qe=(e,r,t,a,s,i)=>{let o=[];return _s(t)?o.push(...Os(a,e,r,i)):Ks(t)&&o.push(zs(a,s,e,r)),o},de=[{filterToPropertyMapping:{property:"cost",isNumber:!0},isExcluded:!0,values:Se},{filterToPropertyMapping:{property:"specialCost",isString:!0,partialMatch:!0},isExcluded:!0,values:["*","x"]},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},isExcluded:!0,values:["equipment","hero","placeholder","token","weapon"]}],J=[{filterToPropertyMapping:{property:"defense",isNumber:!0},isExcluded:!0,values:Se},{filterToPropertyMapping:{property:"specialDefense",isString:!0,partialMatch:!0},isExcluded:!0,values:["*","x"]},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},isExcluded:!0,values:["hero","placeholder","token","weapon"]}],Ee=[{filterToPropertyMapping:{property:"pitch",isNumber:!0},isExcluded:!0,values:Se},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},isExcluded:!0,values:["equipment","hero","placeholder","token","weapon"]},{filterToPropertyMapping:{property:"isCardBack",isBoolean:!0},isExcluded:!0,values:["true"]}],se=[{filterToPropertyMapping:{property:"power",isNumber:!0},isExcluded:!0,values:Se},{filterToPropertyMapping:{property:"specialPower",isString:!0,partialMatch:!0},isExcluded:!0,values:["*","x"]},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},isExcluded:!0,values:["equipment","hero","placeholder","token"]}],Te=[{filterToPropertyMapping:{property:"talents",isArray:!0},isExcluded:!0,values:Object.values(O.Talent).map(e=>e.toLowerCase())}],Ns={"!co":de,"-co":de,"!cost":de,"-cost":de,"!color":de,"-color":de,"!b":J,"-b":J,"!block":J,"-block":J,"!d":J,"-d":J,"!def":J,"-def":J,"!defense":J,"-defense":J,"!pitch":Ee,"-pitch":Ee,"!p":Ee,"-p":Ee,"!attack":se,"-attack":se,"!power":se,"-power":se,"!pwr":se,"-pwr":se,"!pow":se,"-pow":se,"!talents":Te,"-talents":Te,"!tal":Te,"-tal":Te},er=e=>{let r=[],t=Ns[e];return t&&r.push(...t),r},Hs=["l","legal","hero"],_s=e=>Hs.includes(e),Gs=["r","rarity"],Ks=e=>Gs.includes(e);var G=Q(ee());var rr=[{description:"Attack actions",expanded:["st:attack"],filters:{subtypes:[G.Subtype.Attack]},isCardProperty:!1,shorthands:["AA"]},{description:"Arcane barrier",expanded:['k:"arcane barrier"'],filters:{keywords:[G.Keyword.ArcaneBarrier]},isCardProperty:!1,shorthands:["AB"]},{description:"Attack reactions",expanded:['t:"attack reaction"'],filters:{types:[G.Type.AttackReaction]},isCardProperty:!1,shorthands:["AR"]},{description:"Defense reactions",expanded:['t:"defense reaction"'],filters:{types:[G.Type.DefenseReaction]},isCardProperty:!1,shorthands:["DR"]},{description:"Flick daggers",expanded:["dagger you control deal 1 damage"],filters:{functionalText:"dagger you control deal 1 damage"},isCardProperty:!0,shorthands:["Flick","Hurl","Throw"]},{description:"Gain life",expanded:["gain {h}"],filters:{functionalText:"gain {h}"},isCardProperty:!1,shorthands:["Gain life","Gains life"]},{description:"Go again",expanded:['k:"go again"'],filters:{keywords:[G.Keyword.GoAgain]},isCardProperty:!1,shorthands:["GA"]},{description:"Non-attack actions",expanded:["t:action","st:non-attack"],filters:{subtypes:[G.Subtype.NonAttack],types:[G.Type.Action]},isCardProperty:!1,shorthands:["NAA"]},{description:"Plus defense",expanded:["+ {d}"],filters:{functionalText:"+ {d}"},isCardProperty:!1,shorthands:["Pump defense","Pumps defense","Buff defense","Buffs defense"]},{description:"Plus power",expanded:["+ {p}"],filters:{functionalText:"+ {p}"},isCardProperty:!1,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",expanded:["!c:illusionist","st:attack","pwr:>=6","def:>=0"],filters:{defenseGreaterThanOrEqualTo:0,notClass:[G.Class.Illusionist],powerGreaterThanOrEqualTo:6,subtypes:[G.Subtype.Attack]},isCardProperty:!1,helper:'6+ power non-Illusionist attacks that can "pop" phantasm attacks when defending',shorthands:["Poppers","Popper"]},{description:"Spellvoid",expanded:['k:"spellvoid"'],filters:{keywords:[G.Keyword.Spellvoid]},isCardProperty:!1,shorthands:["SV"]},{description:"Tap",expanded:["{t}"],filters:{functionalText:"{t}"},isCardProperty:!0,shorthands:["Tap"]},{description:"Untap",expanded:["{u}"],filters:{functionalText:"{u}"},isCardProperty:!0,shorthands:["Untap"]}],tr=rr.filter(({shorthands:e})=>e.some(r=>r.includes(" "))).map(e=>V(j({},e),{shorthands:e.shorthands.filter(r=>r.includes(" ")).map(r=>r.toLowerCase()).sort((r,t)=>t.length-r.length)})),ar=rr.filter(({shorthands:e})=>e.some(r=>!r.includes(" "))).map(e=>V(j({},e),{shorthands:e.shorthands.filter(r=>!r.includes(" ")).map(r=>r.toLowerCase()).sort((r,t)=>t.length-r.length)}));var Ot=[">=",">","<=","<"],Nt=["!","-"],Ws={property:"arcane",specialProperty:"specialArcane",isNumber:!0,partialMatch:!0},sr={property:"artists",isArray:!0,partialMatch:!0},ft={property:"bannedFormats",isArray:!0,partialMatch:!0},gt={property:"bonds",isArray:!0},$s={property:"n/a"},yt={property:"classes",isArray:!0,partialMatch:!0},mt={property:"cost",specialProperty:"specialCost",isNumber:!0,partialMatch:!0},fe={property:"defense",specialProperty:"specialDefense",isNumber:!0},kt={property:"flows",isArray:!0},vt={nestedProperty:"foiling",property:"printings",isArray:!0},bt={property:"fusions",isArray:!0},Dt={property:"intellect",isNumber:!0},At={property:"keywords",isArray:!0},ir={property:"n/a",isMeta:!0},Bt={property:"life",specialProperty:"specialLife",isNumber:!0},Ct={property:"meta",isArray:!0},Mt={property:"name",isString:!0,partialMatch:!0},nr={property:"pitch",isNumber:!0},xe={property:"power",specialProperty:"specialPower",isNumber:!0},Ft={property:"n/a",isMeta:!0},js={property:"n/a"},Vs={property:"n/a"},Et={property:"sets",isArray:!0,partialMatch:!0},Re={property:"specializations",isArray:!0,partialMatch:!0},Tt={property:"subtypes",isArray:!0},St={property:"types",isArray:!0},xt={property:"talents",isArray:!0},Us={property:"functionalText",isString:!0,partialMatch:!0},Js={property:"traits",isArray:!0,partialMatch:!0},Ys={property:"typeText",isString:!0,partialMatch:!0},Le={nestedProperty:"treatments",property:"printings",isArray:!0,isNestedPropertyArray:!0},Pe={arcane:Ws,a:sr,artist:sr,art:sr,attack:xe,b:fe,block:fe,banned:ft,bond:gt,bonds:gt,c:yt,class:yt,chain:$s,co:mt,cost:mt,color:nr,d:fe,def:fe,defense:fe,flow:kt,flows:kt,f:bt,fusion:bt,foil:vt,foiling:vt,i:Dt,intellect:Dt,is:Ct,k:At,keyword:At,l:ir,legal:ir,hero:ir,li:Bt,life:Bt,meta:Ct,n:Mt,name:Mt,p:nr,pitch:nr,pwr:xe,pow:xe,power:xe,r:Ft,rarity:Ft,referencedby:js,references:Vs,rf:ft,s:Et,set:Et,sp:Re,spec:Re,specialization:Re,specializations:Re,st:Tt,subtype:Tt,t:St,type:St,tal:xt,talent:xt,text:Us,trait:Js,treat:Le,treatment:Le,var:Le,variation:Le,x:Ys},Xs=[{text:m.Release.ClassicBattlesRhinarDorinthea.toLowerCase(),override:m.Release.ClassicBattlesRhinarDorinthea.toLowerCase().replaceAll(E,"")}],Zs=e=>{var s;let r=[],t=e.replaceAll("\u201D",'"');for(let{text:i,override:o}of Xs)t.includes(i)&&(t=t.replace(i,o));if((s=Me(t))==null?void 0:s.card)r.push(t);else{let i=t.split(/[ ]+/),o="",n=0;for(let l of i)n===2&&(r.push(o.trim().replaceAll('"',"")),o="",n=0),n<2&&l.split('"').length===2?(o+=" "+l,n++):n===0&&o===""?r.push(l):n===1&&(o+=" "+l);n===2&&(r.push(o.trim().replaceAll('"',"")),o="",n=0)}return r},zi=[m.Hero.Briar,m.Hero.Brutus,m.Hero.Emperor,m.Hero.Prism,m.Hero.Shiyana,m.Hero.Taylor,m.Hero.Yorick],cr=(e,r,t=[])=>{var v;let a=e.trim().toLowerCase();for(let{expanded:k,shorthands:b}of tr)for(let y of b)if(a.includes(y)){a=a.replace(y,k.join(" "));break}for(let[k,b]of Object.entries(m.setToSetIdentifierMappings))a.includes(k.toLowerCase())&&(a=a.replace(k.toLowerCase(),b[0]));let s=Zs(a),i=[];for(let k of s){let b=ar.find(({shorthands:y})=>y.includes(k));b&&!b.isCardProperty?i.push(...b.expanded):i.push(k)}let o=[],n=[],l=[],d=[],c=!1,h=[],u=[],p=[],g={isClash:!1};for(let k of i)if(oi(k)){let[b,y]=k.split(":"),{modifier:A,values:f,isAnd:C,isOr:T}=ii(y),{filterKey:B,isExcluded:x,isOptional:L,isMeta:M}=ni(b);if(M){if(["rarity","r"].includes(B)){let F=si(f);x||(h=[...F]),f=F.map(R=>R.toLowerCase())}["legal","l","hero"].includes(B)&&y.includes("clash")&&(g.isClash=!0),o.push(...qe(x,L,B,f,A,t))}else{if(["chain"].includes(B)){let F=P=>P.name.toLowerCase().replaceAll(E,""),R=f.map(P=>dr(P,r)).filter(P=>!!P).map(F),w=new Set(R);B="name",T=!0;let N=20,W=0,S=P=>{if(!P.types.includes(m.Type.Hero)){let z=F(P);w.add(z),R.includes(z)||R.push(z)}};for(let P of R){if(W>N)break;let{referencedBy:z,references:Y}=Ie(P,r);Y.forEach(S),W===0&&z.forEach(S),W++}f=Array.from(w)}else if(["referencedby","references"].includes(B)){let F=B,R=[...f].filter(w=>!!w);f=[],B="name",T=!0;for(let w of R){let{referencedBy:N,references:W}=Ie(w,r);["referencedby"].includes(F)?f.push(...W.map(({name:S})=>S.toLowerCase().replaceAll(E,""))):["references"].includes(F)&&f.push(...N.map(({name:S})=>S.toLowerCase().replaceAll(E,"")))}}else if(["art","artist"].includes(B))n=f;else if(["is","is","meta"].includes(B)){let F=ri(f);f=F.map(R=>R.toLowerCase().replaceAll(E,"")),F.includes(m.Meta.Expansion)&&!x&&(c=!0)}else["foiling","foil"].includes(B)?(d=ti(f),f=d.map(F=>F.toLowerCase())):["treat","treatment","var","variation"].includes(B)?(p=ai(f),f=p.map(F=>F.toLowerCase())):["set","s"].includes(B)?(u=Qs(f),f=u.map(F=>F.toLowerCase().replaceAll(E,""))):["pitch","p","color"].includes(B)&&(f=ei(f));Pe[B]&&o.push({filterToPropertyMapping:Pe[B],values:f,isAnd:C,isOr:T,modifier:A,isExcluded:x,isOptional:L})}}else if(k){let b=(v=Me(k))==null?void 0:v.card,y=er(k);b?l.push(`"${b.toLowerCase().replace(E,"")}"`):y&&y.length>0?o.push(...y):l.push(k.replace(E,""))}return{appliedFilters:o,attributes:{artists:n,foilings:d,isExpansionSlot:c,rarities:h,releases:u,treatments:p},keywords:l,specialConditions:g}},Qs=e=>{let r=[];for(let t of e)r.push(...qs(t));return r},qs=e=>{let r=[],t=Object.values(m.Release).find(a=>a.toLowerCase().replaceAll(E,"")===e);if(t&&r.push(t),r.length===0){let a=m.setIdentifierToSetMappings[e];a&&r.push(a)}if(r.length===0){let a=Object.values(m.Release).filter(s=>s.toLowerCase().includes(e));a.length>0&&r.push(...a)}return r},or={blue:3,yellow:2,red:1,white:0},ei=e=>{let r=[];for(let t of e)or[t]||or[t]===0?r.push(or[t].toString()):r.push(t);return r},Rt={exp:m.Meta.Expansion,expansion:m.Meta.Expansion,expansionSlot:m.Meta.Expansion,rainbow:m.Meta.Rainbow},ri=e=>{let r=[];for(let t of e)Rt[t]&&r.push(Rt[t]);return r},Lt={r:m.Foiling.R,rf:m.Foiling.R,rainbow:m.Foiling.R,c:m.Foiling.C,cf:m.Foiling.C,cold:m.Foiling.C,g:m.Foiling.G,gf:m.Foiling.G,gold:m.Foiling.G},ti=e=>{let r=[];for(let t of e)Lt[t]&&r.push(Lt[t]);return r},Pt=V(j({},Object.values(m.Treatment).reduce((e,r)=>(e[r.toLowerCase()]=r,e),{})),{aa:m.Treatment.AA,alt:m.Treatment.AA,"alt art":m.Treatment.AA,ab:m.Treatment.AB,"alt border":m.Treatment.AB,at:m.Treatment.AT,"alt text":m.Treatment.AT,ea:m.Treatment.EA,extended:m.Treatment.EA,"extended art":m.Treatment.EA,fa:m.Treatment.FA,full:m.Treatment.FA,"full art":m.Treatment.FA}),ai=e=>{let r=[];for(let t of e)Pt[t]?r.push(Pt[t]):m.Treatment[t.toUpperCase()]&&r.push(m.Treatment[t.toUpperCase()]);return r},lr={b:m.Rarity.Basic,c:m.Rarity.Common,f:m.Rarity.Fabled,l:m.Rarity.Legendary,m:m.Rarity.Majestic,p:m.Rarity.Promo,r:m.Rarity.Rare,s:m.Rarity.SuperRare,t:m.Rarity.Token,v:m.Rarity.Marvel},si=e=>{let r=[];for(let t of e)lr[t]?r.push(lr[t]):r.push(t);return r},ii=e=>{let r=[],t,a,s=Ot.find(i=>e.includes(i));if(s){let[,i]=e.split(s);It(i)?(t=!0,r.push(...i.trim().split("+").map(o=>o.replace(E,"")))):wt(i)?(a=!0,r.push(...i.trim().split(",").map(o=>o.replace(E,"")))):r.push(i.trim().replace(E,""))}else It(e)?(t=!0,r.push(...e.trim().split("+").map(i=>i.replace(E,"")))):wt(e)?(a=!0,r.push(...e.trim().split(",").map(i=>i.replace(E,"")))):e.startsWith('"')&&e.endsWith('"')?r.push(e.trim().replaceAll('"',"").replace(E,"")):r.push(e.trim().replace(E,""));return{modifier:s,values:r,isAnd:t,isOr:a}},ni=e=>{let r=li(e);if(r){let[,t]=e.split(r);return{filterKey:t,isExcluded:!0,isOptional:!1,isMeta:zt(t)}}else return{filterKey:e,isExcluded:!1,isOptional:!1,isMeta:zt(e)}},oi=e=>e.indexOf(":")>=0,It=e=>e.indexOf("+")>=0,wt=e=>e.indexOf(",")>=0,zt=e=>{var r;return!!((r=Pe[e])!=null&&r.isMeta)},li=e=>{var r;return(r=Nt.find(t=>e.includes(t)))==null?void 0:r.slice(0,1)};var I=Q(ee()),Ht={artists:["Hoodwill"],cardIdentifier:"fangs-a-lot-blue",classes:[I.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:[I.Hero.Kayo,I.Hero.Levia,I.Hero.Rhinar],printings:[{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000",print:"FNG000",rarity:I.Rarity.Rare,set:I.Release.Promos},{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000_Marvel",print:`FNG000-${I.Treatment.FA}`,rarity:I.Rarity.Marvel,set:I.Release.Promos,treatment:I.Treatment.FA}],name:"Fangs A Lot",rarities:[I.Rarity.Rare,I.Rarity.Marvel],rarity:I.Rarity.Rare,sets:[I.Release.Promos],setIdentifiers:["FNG000"],specialImage:"FNG000_Marvel",subtypes:[I.Subtype.Attack],types:[I.Type.Action],typeText:"Generic Action - Attack"},_t=[{keyword:Ht.name.toLowerCase(),card:Ht}];var dr=(e,r)=>{let t=r.find(a=>ur(a.name)===e);return t||(t=r.find(a=>ur(a.name).includes(e))),t},ur=e=>ge(e.toLowerCase().trim().replace(E,"")),ge=e=>e.normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"");var pr=class{constructor(r,t=[],a=!1){this.log=(r,...t)=>{this.debug&&console.log(r,...t)};this.search=(r,t)=>{let a,{appliedFilters:s,attributes:i,keywords:o}=cr(r,this.cards,this.additionalHeroes),n=o.join(" "),l=t?_t.filter(y=>y.keyword===n):[];if(l.length>0?a=l.map(({card:y})=>y):o.length?a=this.fuse.search(n).map(y=>y.item):a=[...this.cards],s.length&&(a=a.filter(y=>y&&Wt(y,s))),o.length===0){let y="";if(i.releases.length===1)try{let A=i.releases[0];y=Gt.setToSetIdentifierMappings[A][0].toUpperCase()}catch(A){console.error("Error getting set identifier from search",A)}y?a.sort((A,f)=>{var B,x;let C=(B=A.setIdentifiers.find(L=>L.includes(y)))==null?void 0:B.replace(y,""),T=(x=f.setIdentifiers.find(L=>L.includes(y)))==null?void 0:x.replace(y,"");return C&&T?C.localeCompare(T):-1}):a.sort((A,f)=>A.name===f.name?`${A.pitch}`.localeCompare(`${f.pitch}`):A.name.localeCompare(f.name))}else{let y=[],A=[],f=o.map(C=>C.toLowerCase().replace(E,"")).join(" ");for(let C of a)C.name.toLowerCase().replace(E,"")===f?y.push(C):A.push(C);a=[...y,...A]}let d,{artists:c,isExpansionSlot:h,foilings:u,rarities:p,releases:g,treatments:v}=i;(c.length>0||h||u.length>0||p.length>0||g.length>0||v.length>0)&&(d=a.map(y=>{let A=y.printings.filter(f=>{let C=!!f.image,T=c.length===0||c.some(w=>f.artists.find(N=>N.replace(E,"").toLowerCase().includes(w))),B=(h||void 0)===f.isExpansionSlot,x=u.length===0||u.includes(f.foiling),L=p.length===0||p.includes(f.rarity),M=g.length===0||g.includes(f.set),F=v.length===0||v.includes(f.treatment);return C&&T&&B&&x&&L&&M&&F});return V(j({},y),{matchingPrintings:A})}));let b=(d==null?void 0:d.length)>0?d:a;return{appliedFilters:s,attributes:i,keywords:o,searchResults:b}};let s={getFn:(i,o)=>{let n=hr.default.config.getFn(i,o);return n&&(Array.isArray(n)?n.map(l=>ge(l.replace(E,""))):ge(n).replace(E,""))},ignoreLocation:!0,includeScore:!0,keys:[{name:"name",weight:10},{name:"functionalText",weight:6},{name:"shorthands",weight:4},{name:"setIdentifiers",weight:2},{name:"traits",weight:4},{name:"typeText",weight:6}],threshold:.15,useExtendedSearch:!0};this.additionalHeroes=t,this.cards=[...r],this.debug=a,this.fuse=new hr.default([...r],s)}},Kt=pr,Wt=(e,r)=>{let t=!0,a=!1;for(let s of r){let i=s.isOptional,{isNumber:o,isString:n,isArray:l,isBoolean:d}=s.filterToPropertyMapping;if(o){let c=ci(e,s);i?c&&(a=!0):t=t&&c}else if(n){let c=di(e,s);i?c&&(a=!0):t=t&&c}else if(l){let c=ui(e,s,r);i?c&&(a=!0):t=t&&c}else if(d){let c=hi(e,s);i?c&&(a=!0):t=t&&c}}return t},ci=(e,r)=>{var t;if(we(r,e)){let{values:a,modifier:s,isExcluded:i,filterToPropertyMapping:{partialMatch:o}}=r,n=fr(e,r);if(n!=null&&!isNaN(n))if(n=parseInt(n),s)switch(s){case">=":let l=a==null?void 0:a.some(u=>n>=parseInt(u));return i?!l:l;case">":let d=a==null?void 0:a.some(u=>n>parseInt(u));return i?!d:d;case"<=":let c=a==null?void 0:a.some(u=>n<=parseInt(u));return i?!c:c;case"<":let h=a==null?void 0:a.some(u=>n<parseInt(u));return i?!h:h;default:return!1}else{let l=a==null?void 0:a.some(d=>n===parseInt(d));return i?!l:l}else{let l=(t=fi(e,r))==null?void 0:t.toLowerCase(),d=o?a==null?void 0:a.some(c=>l==null?void 0:l.includes(c)):a==null?void 0:a.some(c=>l===c);return i?!d:d}}else return!0},di=(e,r)=>{var t;if(we(r,e)){let{values:a,isAnd:s,isExcluded:i,filterToPropertyMapping:{partialMatch:o}}=r,n=(t=fr(e,r))==null?void 0:t.replaceAll(E,"");if(o){let l=s?a==null?void 0:a.every(d=>n==null?void 0:n.toLowerCase().includes(d)):a==null?void 0:a.some(d=>n==null?void 0:n.toLowerCase().includes(d));return i?!l:l}else{let l=s?a==null?void 0:a.every(d=>(n==null?void 0:n.toLowerCase())===d):a==null?void 0:a.some(d=>(n==null?void 0:n.toLowerCase())===d);return i?!l:l}}else return!0},ui=(e,r,t)=>{if(we(r,e)){let{values:a,isAnd:s,isExcluded:i,filterToPropertyMapping:{partialMatch:o}}=r,n=pi(e,r,t).map(l=>l==null?void 0:l.replaceAll(E,""));if(o){let l=s?a.every(c=>n==null?void 0:n.some(h=>h==null?void 0:h.toLowerCase().includes(c))):a.some(c=>n==null?void 0:n.some(h=>h==null?void 0:h.toLowerCase().includes(c))),d=n.length===0;return i?!l||d:l}else{let l=s?a.every(d=>n==null?void 0:n.some(c=>(c==null?void 0:c.toLowerCase())===d)):a.some(d=>n==null?void 0:n.some(c=>(c==null?void 0:c.toLowerCase())===d));return i?!l:l}}else return!0},hi=(e,r)=>{if(we(r,e)){let{isExcluded:t}=r,a=fr(e,r);return t?!a:a}else return!0},fr=(e,r)=>{let{filterToPropertyMapping:t}=r;return e[t.property]},pi=(e,r,t)=>{let{filterToPropertyMapping:{isNestedPropertyArray:a,nestedProperty:s,property:i}}=r,o=e[i]||[],n=[],l=Object.keys(e.legalOverrides||{}).length>0,d=r.filterToPropertyMapping.property==="legalHeroes",c=t.find(({filterToPropertyMapping:u})=>u.property==="legalFormats");if(l&&d&&!!c){let u=new Set;for(let{format:p,heroes:g}of e.legalOverrides||[])if(c.values.includes(p.toLowerCase()))for(let v of g)u.add(v);n=Array.from(u)}if(n.length===0)if(s){let u=new Set;for(let p of o)if(a){let g=p[s]||[];for(let v of g)u.add(v)}else{let g=p[s];g&&u.add(g)}n=Array.from(u)}else n=o;return n},fi=(e,r)=>{let{filterToPropertyMapping:t}=r;return e[t.specialProperty]},we=({cardTypes:e},{types:r,subtypes:t})=>!e||(e==null?void 0:e.some(a=>r.map(s=>s.toLowerCase()).includes(a.toLowerCase())||t.map(s=>s.toLowerCase()).includes(a.toLowerCase())));var ue=Q(ee());var ye=Q(ee()),gi={"Dawnblade, Resplendent":"Dawnblade"},$t=e=>gi[e.name]||e.name,jt=e=>{var r;return(r=e.functionalText)==null?void 0:r.replaceAll(e.name,"")},Ie=(e,r)=>{let t=r.find(a=>a.name.toLowerCase().replace(E,"")===e);return t||(t=r.find(a=>a.name.toLowerCase().replace(E,"").includes(e))),gr(t,r)},gr=(e,r)=>{var i,o,n,l,d;let t=[],a=[],s=[];if(e){let c=[],h=[],u=$t(e);for(let p of r){let g=$t(p),v=u===g,k=e.cardIdentifier!==p.cardIdentifier,b=e.pitch!==p.pitch;if(v&&k&&b)t.push(p);else if(!v){let y=e.name==="Seismic Surge",A=(i=p.keywords)==null?void 0:i.includes(ye.Keyword.Heave),f=y&&A,C=e.name==="Marked",T=(o=p.keywords)==null?void 0:o.includes(ye.Keyword.Mark),B=C&&T,x=jt(p),L=(x==null?void 0:x.includes(u))||((n=e.traits)==null?void 0:n.some(Y=>x==null?void 0:x.includes(Y))),M=jt(e);(L||f||B)&&c.push(p);let F=p.traits||[],R=(M==null?void 0:M.includes(g))||F.some(Y=>M==null?void 0:M.includes(Y)),w=p.name==="Seismic Surge",N=(l=e.keywords)==null?void 0:l.includes(ye.Keyword.Heave),W=w&&N,S=p.name==="Marked",P=(d=e.keywords)==null?void 0:d.includes(ye.Keyword.Mark);(R||W||S&&P)&&h.push(p)}}for(let p of c)a.push(p);for(let p of h){let g=p.name;u!==g&&!h.some(v=>{let k=v.name;return k!==g&&(k==null?void 0:k.includes(g))})&&s.push(p)}}return{otherPitches:t,referencedBy:a,references:s}},yi=["cash-in-yellow"],mi={[ue.Hero.Crackni]:{traits:[ue.Trait.AgentOfChaos]},[ue.Hero.Maxx]:{tokens:["hyper-driver"]}},ki=(e,r,t)=>{var s,i;let a=new Set;for(let o of e.filter(({cardIdentifier:n})=>!yi.includes(n))){let{references:n}=gr(o,r);for(let l of n.filter(d=>{let c=d.name==="Hyper Driver",h=t===ue.Hero.Maxx;return!c||h}))a.add(l)}if(t){let o=mi[t];if(o){if(o.cards)for(let n of e)(s=o.cards)!=null&&s.includes(n.cardIdentifier)&&a.add(n);if(o.tokens)for(let n of r)(i=o.tokens)!=null&&i.includes(n.cardIdentifier)&&a.add(n)}}return Array.from(a)};0&&(module.exports={FilterProperty,PUNCTUATION,RARITY_VALUES_MAPPING,abbreviations,availableExclusions,availableModifiers,filterCard,filtersToCardPropertyMappings,getAbbreviation,getAbbreviationByCard,getCardByName,getCleanText,getExcludedMetaFilters,getKeywordsAndAppliedFiltersFromText,getMetaFilters,getNormalizedText,getRelatedCards,getRelatedCardsByName,getTokensReferencedByCards,multiWordShorthands,shorthands,singleWordShorthands});
|
|
1
|
+
var Ut=Object.create;var pe=Object.defineProperty,Jt=Object.defineProperties,Yt=Object.getOwnPropertyDescriptor,Xt=Object.getOwnPropertyDescriptors,Zt=Object.getOwnPropertyNames,kr=Object.getOwnPropertySymbols,Qt=Object.getPrototypeOf,br=Object.prototype.hasOwnProperty,qt=Object.prototype.propertyIsEnumerable;var vr=(e,r,t)=>r in e?pe(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,V=(e,r)=>{for(var t in r||(r={}))br.call(r,t)&&vr(e,t,r[t]);if(kr)for(var t of kr(r))qt.call(r,t)&&vr(e,t,r[t]);return e},U=(e,r)=>Jt(e,Xt(r));var Dr=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),ea=(e,r)=>{for(var t in r)pe(e,t,{get:r[t],enumerable:!0})},Ar=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let s of Zt(r))!br.call(e,s)&&s!==t&&pe(e,s,{get:()=>r[s],enumerable:!(a=Yt(r,s))||a.enumerable});return e};var Q=(e,r,t)=>(t=e!=null?Ut(Qt(e)):{},Ar(r||!e||!e.__esModule?pe(t,"default",{value:e,enumerable:!0}):t,e)),ra=e=>Ar(pe({},"__esModule",{value:!0}),e);var ee=Dr((Di,Yr)=>{var ve=Object.defineProperty,ta=Object.defineProperties,aa=Object.getOwnPropertyDescriptor,sa=Object.getOwnPropertyDescriptors,ia=Object.getOwnPropertyNames,Cr=Object.getOwnPropertySymbols,Mr=Object.prototype.hasOwnProperty,na=Object.prototype.propertyIsEnumerable,Br=(e,r,t)=>r in e?ve(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,oa=(e,r)=>{for(var t in r||(r={}))Mr.call(r,t)&&Br(e,t,r[t]);if(Cr)for(var t of Cr(r))na.call(r,t)&&Br(e,t,r[t]);return e},la=(e,r)=>ta(e,sa(r)),ca=(e,r)=>{for(var t in r)ve(e,t,{get:r[t],enumerable:!0})},da=(e,r,t,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let s of ia(r))!Mr.call(e,s)&&s!==t&&ve(e,s,{get:()=>r[s],enumerable:!(a=aa(r,s))||a.enumerable});return e},ua=e=>da(ve({},"__esModule",{value:!0}),e),Fr={};ca(Fr,{Bond:()=>xr,Class:()=>Sr,Flow:()=>Rr,Foiling:()=>Er,Format:()=>Lr,Fusion:()=>Pr,Hero:()=>Wr,Keyword:()=>$r,Language:()=>Vr,Meta:()=>wr,Metatype:()=>_r,Rarity:()=>Ir,Release:()=>zr,ReleaseEdition:()=>Or,ReleaseType:()=>Ur,Subtype:()=>Kr,Talent:()=>Nr,Trait:()=>Hr,Treatment:()=>Tr,Type:()=>Gr,coreSetIdentifiers:()=>Ca,fullSetIdentifiers:()=>He,getCanAddToDeck:()=>ga,getCanCardBeTokenForDeck:()=>fa,getCardIdentifier:()=>ha,getDefaultPrinting:()=>za,getIsArenaCard:()=>jr,getIsBooster:()=>ka,getIsCardTokenForDeck:()=>be,getIsDeckCard:()=>Ne,getIsDraftable:()=>ba,getIsPreconstructed:()=>Aa,getIsReprint:()=>va,getPrint:()=>xa,getShouldRotateCardImage:()=>ya,getSpecialPrinting:()=>Ia,orderedFullSetBlackBorderIdentifiers:()=>Ra,promoSetIdentifiers:()=>Ma,releases:()=>Fa,setIdentifierToSetMappings:()=>Jr,setToSetIdentifierMappings:()=>Ea,supplementalSetIdentifiers:()=>Ba});Yr.exports=ua(Fr);var Er=(e=>(e.C="Cold",e.G="Gold",e.R="Rainbow",e))(Er||{}),Tr=(e=>(e.AB="Alternate Border",e.AA="Alternate Art",e.AT="Alternate Text",e.EA="Extended Art",e.FA="Full Art",e))(Tr||{}),Sr=(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.Necromancer="Necromancer",e.Ninja="Ninja",e.Pirate="Pirate",e.Ranger="Ranger",e.Runeblade="Runeblade",e.Shapeshifter="Shapeshifter",e.Thief="Thief",e.Warrior="Warrior",e.Wizard="Wizard",e))(Sr||{}),xr=(e=>(e.Earth="Earth",e))(xr||{}),Rr=(e=>(e.Lightning="Lightning",e))(Rr||{}),Lr=(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.ProjectBlue="Project Blue",e.Sealed="Sealed",e.UltimatePitFight="Ultimate Pit Fight",e))(Lr||{}),Pr=(e=>(e.Earth="Earth",e.Ice="Ice",e.Lightning="Lightning",e))(Pr||{}),Ir=(e=>(e.Basic="Basic",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))(Ir||{}),wr=(e=>(e.Expansion="Expansion slot",e.Rainbow="Rainbow",e))(wr||{}),zr=(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.HighSeas="High Seas",e.HistoryPack1="History Pack 1",e.Monarch="Monarch",e.Outsiders="Outsiders",e.PartTheMistveil="Part the Mistveil",e.Rosetta="Rosetta",e.SuperSlam="Super Slam",e.TalesOfAria="Tales of Aria",e.TheHunted="The Hunted",e.Uprising="Uprising",e.WelcomeToRathe="Welcome to Rathe",e.ArmoryDeckArakni="Armory Deck: Arakni",e.ArmoryDeckAurora="Armory Deck: Aurora",e.ArmoryDeckAzalea="Armory Deck: Azalea",e.ArmoryDeckBoltyn="Armory Deck: Boltyn",e.ArmoryDeckDash="Armory Deck: Dash",e.ArmoryDeckGravyBones="Armory Deck: Gravy Bones",e.ArmoryDeckIra="Armory Deck: Ira",e.ArmoryDeckKayo="Armory Deck: Kayo",e.ArmoryDeckMaxx="Armory Deck: Maxx",e.ArmoryDeckPleiades="Armory Deck: Pleiades",e.ArmoryDeckRhinar="Armory Deck: Rhinar",e.ArmoryDeckOriginsJarl="Armory Deck Origins: Jarl",e.ArmoryDeckLegendsPrism="Armory Deck Legends: Prism",e.ArmoryDeckLegendsViserai="Armory Deck Legends: Viserai",e.ArakniBlitzDeck="Arakni Blitz Deck",e.ArakniBlitzDeckARK="Arakni Hunted Blitz Deck",e.ArakniWebOfDeceitBlitzDeck="Arakni, Web of Deceit 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.CindraBlitzDeck="Cindra Blitz Deck",e.DromaiBlitzDeck="Dromai Blitz Deck",e.EnigmaBlitzDeck="Enigma Blitz Deck",e.FaiBlitzDeck="Fai Blitz Deck",e.FangBlitzDeck="Fang Blitz Deck",e.FlorianBlitzDeck="Florian 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.OscilioBlitzDeck="Oscilio Blitz Deck",e.PrismBlitzDeck="Prism Blitz Deck",e.RhinarBlitzDeck="Rhinar Blitz Deck",e.RiptideBlitzDeck="Riptide Blitz Deck",e.UzuriBlitzDeck="Uzuri Blitz Deck",e.VerdanceBlitzDeck="Verdance 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.BravoDemoDeck="Bravo Demo Deck",e.ClassicBattlesRhinarDorinthea="Classic Battles: Rhinar vs Dorinthea",e.MasteryPackGuardian="Mastery Pack: Guardian",e.IraWelcomeDeck="Ira Welcome Deck",e.RoundTheTable="Round the Table: TCC x LSS",e.SmashPalace="Smash Palace",e.GEM="GEM",e.Promos="Promos",e))(zr||{}),Or=(e=>(e.Alpha="Alpha",e.First="First",e.Unlimited="Unlimited",e.Promo="Promo",e))(Or||{}),Nr=(e=>(e.Chaos="Chaos",e.Draconic="Draconic",e.Earth="Earth",e.Elemental="Elemental",e.Ice="Ice",e.Light="Light",e.Lightning="Lightning",e.Mystic="Mystic",e.Revered="Revered",e.Reviled="Reviled",e.Royal="Royal",e.Shadow="Shadow",e))(Nr||{}),Hr=(e=>(e.AgentOfChaos="Agent of Chaos",e))(Hr||{}),_r=(e=>(e.Arakni="Arakni",e.Scurv="Scurv",e.HighSeas="High Seas",e.Puffin="Puffin",e.Rosetta="Rosetta",e))(_r||{}),Gr=(e=>(e.Action="Action",e.AttackReaction="Attack Reaction",e.Block="Block",e.Companion="Companion",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))(Gr||{}),Kr=(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.Cannon="Cannon",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.PitFighter="Pit-Fighter",e.Polearm="Polearm",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))(Kr||{}),Wr=(e=>(e.Arakni="Arakni",e.Aurora="Aurora",e.Azalea="Azalea",e.Benji="Benji",e.Betsy="Betsy",e.Blaze="Blaze",e.Bolfar="Bolfar",e.Boltyn="Boltyn",e.Bravo="Bravo",e.Brevant="Brevant",e.Briar="Briar",e.Brutus="Brutus",e.Chane="Chane",e.Cindra="Cindra",e.Crackni="Crackni",e.Crix="Crix",e.Dash="Dash",e.DataDoll="Data Doll",e.Dorinthea="Dorinthea",e.Dromai="Dromai",e.Emperor="Emperor",e.Enigma="Enigma",e.Fai="Fai",e.Fang="Fang",e.Florian="Florian",e.Genis="Genis",e.GravyBones="Gravy Bones",e.Ira="Ira",e.Iyslander="Iyslander",e.Jarl="Jarl",e.Kano="Kano",e.Kassai="Kassai",e.Katsu="Katsu",e.Kavdaen="Kavdaen",e.Kayo="Kayo",e.Kox="Kox",e.Levia="Levia",e.Lexi="Lexi",e.Lyath="Lyath",e.Marlynn="Marlynn",e.Maxx="Maxx",e.Melody="Melody",e.Nuu="Nuu",e.Oldhim="Oldhim",e.Olympia="Olympia",e.Oscilio="Oscilio",e.Pleiades="Pleiades",e.Prism="Prism",e.Puffin="Puffin",e.Reya="Reya",e.Rhinar="Rhinar",e.Riptide="Riptide",e.RKO="RKO",e.Ruudi="Ruu'di",e.Shiyana="Shiyana",e.Slippy="Slippy",e.Squizzy="Squizzy",e.Scurv="Scurv",e.Starvo="Starvo",e.Taipanis="Taipanis",e.Taylor="Taylor",e.Teklovossen="Teklovossen",e.Terra="Terra",e.Theryon="Theryon",e.Tuffnut="Tuffnut",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))(Wr||{}),$r=(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.TheCrowdBoos="The Crowd Boos",e.TheCrowdCheers="The Crowd Cheers",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.GoFish="Go Fish",e.Guardwell="Guardwell",e.Heave="Heave",e.Heavy="Heavy",e.HighTide="High Tide",e.Intimidate="Intimidate",e.Legendary="Legendary",e.Mark="Mark",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.Retrieve="Retrieve",e.RuneGate="Rune Gate",e.Rupture="Rupture",e.Scrap="Scrap",e.Solflare="Solflare",e.Specialization="Specialization",e.Spectra="Spectra",e.Spellvoid="Spellvoid",e.Steal="Steal",e.Stealth="Stealth",e.Surge="Surge",e.Suspense="Suspense",e.Temper="Temper",e.Tower="Tower",e.Transform="Transform",e.Transcend="Transcend",e.Unlimited="Unlimited",e.Universal="Universal",e.Unfreeze="Unfreeze",e.Unity="Unity",e.Wager="Wager",e.Ward="Ward",e.WateryGrave="Watery Grave",e))($r||{}),ha=(e,r)=>{let{name:t,pitch:a}=e,s=t.trim().toLowerCase().replace("//","-").normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"").replace(/ /g,"-").replace("\xF0","d").replace("\u0111","d").replace("\xED","i").replace(/[^a-z0-9 -]/g,"").replace(/--/,"-"),i="";switch(a){case"1":case 1:i=r?"-1":"-red";break;case"2":case 2:i=r?"-2":"-yellow";break;case"3":case 3:i=r?"-3":"-blue";break}return`${s}${i}`},jr=({keywords:e,traits:r,types:t})=>{let a=Ne({keywords:e,traits:r,types:t}),s=be({keywords:e,traits:r,types:t}),i=["Companion","Demi-Hero","Equipment","Weapon"].some(o=>t.includes(o));return!a&&!s&&i},Ne=({keywords:e,traits:r,types:t})=>{let a=["Action","Attack Reaction","Block","Defense Reaction","Instant","Mentor","Resource"].some(i=>t.includes(i)),s=be({keywords:e,traits:r,types:t});return a&&!s},be=({keywords:e,traits:r,types:t})=>{let a=!!r&&(r==null?void 0:r.includes("Agent of Chaos")),s=!!e&&e.includes("Ephemeral"),i=["Macro","Token"].some(o=>t.includes(o));return a||s||i},pa=["cracked-bauble-yellow","goldfin-harpoon"],fa=e=>{let r=pa.includes(e.cardIdentifier),t=be(e),a=e.isCardBack&&e.cardIdentifier!=="inner-chi-blue";return r||t||a},ga=({isCardBack:e,keywords:r,traits:t,types:a})=>{let s=jr({keywords:r,traits:t,types:a}),i=Ne({keywords:r,traits:t,types:a});return!e&&(s||i)},ya=e=>{var r,t,a;let s=(r=e.keywords)==null?void 0:r.includes("Meld"),i=!((t=e.types)!=null&&t.includes("Macro"))&&((a=e.subtypes)==null?void 0:a.includes("Landmark"));return s||i},Vr=(e=>(e.English="English",e.French="Fran\xE7ais",e.German="Deutsch",e.Italian="Italiano",e.Japanese="\u65E5\u672C\u8A9E",e.Spanish="Espa\xF1ol",e))(Vr||{}),q=["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],$=["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],Ur=(e=>(e.ArmoryDeck="Armory Deck",e.BlitzDeck="Blitz Deck",e.BoxSet="Box Set",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))(Ur||{}),ma=["Expansion Booster","Standalone Booster"],ka=e=>ma.includes(e),va=e=>e==="History Pack",ba=e=>e==="Standalone Booster",Da=["Armory Deck","Blitz Deck","Classic Battles","1st Strike","Round the Table","Welcome Deck"],Aa=e=>Da.includes(e),Ca={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"},Ba={cru:"Crucible of War",evr:"Everfest","1hp":"History Pack 1",hp1:"History Pack 1",dyn:"Dynasty",dtd:"Dusk till Dawn"},Ma=["fab","her","jdg","lgs","lss","oxo","xxx","win"],Fa=[{cards:30,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GJG7Z4WGWSZ95FY74KX4M557"}],heroes:["Ira"],languages:q,release:"Ira Welcome Deck",relatedReleases:[],releaseDate:"2019-08-31 12:00",releaseType:"Welcome Deck",setIdentifiers:["ira"],talents:[]},{cards:226,classes:["Brute","Guardian","Ninja","Warrior"],deckLinks:[],draft:{heroIdentifiers:["bravo","dorinthea","katsu","rhinar"],picksPerPack:15},heroes:["Bravo","Dorinthea","Katsu","Rhinar"],languages:["English"],release:"Welcome to Rathe",relatedReleases:[],releaseDate:"2019-10-11 12:00",releaseType:"Standalone Booster",setIdentifiers:["wtr"],talents:[]},{cards:219,classes:["Mechanologist","Ranger","Runeblade","Wizard"],deckLinks:[],draft:{heroIdentifiers:["azalea","dash","kano","viserai"],picksPerPack:15},heroes:["Azalea","Dash","Kano","Viserai"],languages:["English"],release:"Arcane Rising",relatedReleases:[],releaseDate:"2020-03-27 12:00",releaseType:"Standalone Booster",setIdentifiers:["arc"],talents:[]},{cards:194,classes:["Brute","Guardian","Mechanologist","Merchant","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Benji","Data Doll","Ira","Kassai","Kavdaen","Kayo","Shiyana"],languages:["English"],release:"Crucible of War",relatedReleases:[],releaseDate:"2020-08-28 12:00",releaseType:"Expansion Booster",setIdentifiers:["cru"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01G7FD2B3YQAMR8NJ4B3M58H96"}],heroes:["Boltyn"],languages:["English"],release:"Boltyn Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["bol"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01G7FDVRZP35DFWBRK64AG5TKQ"}],heroes:["Chane"],languages:["English"],release:"Chane Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["chn"],talents:["Shadow"]},{cards:40,classes:["Brute"],languages:["English"],deckLinks:[{url:"https://fabrary.net/decks/01G7B1T1D1M2DAM61K876VJBDK"}],heroes:["Levia"],release:"Levia Blitz Deck",relatedReleases:[],releaseDate:"2021-05-07 12:00",releaseType:"Blitz Deck",setIdentifiers:["lev"],talents:["Shadow"]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01G7FCP2N7N0MNHWAH6JTP0KFN"}],heroes:["Prism"],languages:["English"],relatedReleases:[],releaseDate:"2021-05-07 12:00",release:"Prism Blitz Deck",releaseType:"Blitz Deck",setIdentifiers:["psm"],talents:["Light"]},{cards:307,classes:["Brute","Illusionist","Runeblade","Warrior"],deckLinks:[],draft:{heroIdentifiers:["boltyn","chane","levia","prism"],picksPerPack:15},heroes:["Boltyn","Chane","Levia","Prism"],languages:["English"],release:"Monarch",relatedReleases:["Boltyn Blitz Deck","Chane Blitz Deck","Levia Blitz Deck","Prism Blitz Deck"],releaseDate:"2021-05-07 12:00",releaseType:"Standalone Booster",setIdentifiers:["mon"],talents:["Light","Shadow"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01G7K4D304QQCZZSBT7ABCX4XC"}],heroes:["Briar"],languages:["English"],release:"Briar Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",talents:["Elemental","Earth","Lightning"],setIdentifiers:["bri"]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01G7K3WGPVKVDXG2J013GXSXNP"}],heroes:["Lexi"],languages:["English"],release:"Lexi Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["lxi"],talents:["Elemental","Ice","Lightning"]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01G7K464J7VS0K7HKW5E395TBK"}],heroes:["Oldhim"],languages:["English"],release:"Oldhim Blitz Deck",relatedReleases:[],releaseDate:"2021-11-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["old"],talents:["Elemental","Earth","Ice"]},{cards:238,classes:["Guardian","Ranger","Runeblade"],deckLinks:[],draft:{heroIdentifiers:["briar","lexi","oldhim"],picksPerPack:15},heroes:["Briar","Lexi","Oldhim"],languages:["English"],release:"Tales of Aria",relatedReleases:["Briar Blitz Deck","Lexi Blitz Deck","Oldhim Blitz Deck"],releaseDate:"2021-09-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["ele"],talents:["Elemental","Earth","Ice","Lightning"]},{cards:198,classes:["Brute","Guardian","Illusionist","Mechanologist","Merchant","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Genis","Starvo","Valda"],languages:["English"],release:"Everfest",relatedReleases:[],releaseDate:"2022-02-04 12:00",releaseType:"Expansion Booster",setIdentifiers:["evr"],talents:["Elemental","Earth","Ice","Lightning"]},{cards:423,classes:["Brute","Guardian","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Azalea","Benji","Bravo","Dash","Data Doll","Dorinthea","Ira","Kassai","Katsu","Kayo","Rhinar","Viserai","Kano"],languages:["English"],release:"History Pack 1",relatedReleases:[],releaseDate:"2022-05-06 12:00",releaseType:"History Pack",setIdentifiers:["1hp","hp1"],talents:[]},{cards:80,classes:["Brute","Warrior"],deckLinks:[{name:"Dorinthea",url:"https://fabrary.net/decks/01GA4WTNSD12YTQB4FY8EYYNG5"},{name:"Rhinar",url:"https://fabrary.net/decks/01GA4WZKX9VEWKKPX7Y7H3MG1F"}],heroes:["Dorinthea","Rhinar"],languages:["English"],release:"Classic Battles: Rhinar vs Dorinthea",relatedReleases:[],releaseDate:"2022-05-27 12:00",releaseType:"Classic Battles",setIdentifiers:["dvr","rvd"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01G76H1R1ERRBRKS7RVCQAB8RX"}],heroes:["Dromai"],languages:["English"],relatedReleases:[],releaseDate:"2022-06-24 12:00",release:"Dromai Blitz Deck",releaseType:"Blitz Deck",setIdentifiers:["dro"],talents:["Draconic"]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01G76H7RG7GN5ZA10F3BJBH740"}],heroes:["Fai"],languages:["English"],release:"Fai Blitz Deck",relatedReleases:[],releaseDate:"2022-06-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["fai"],talents:["Draconic"]},{cards:226,classes:["Illusionist","Ninja","Wizard"],deckLinks:[],draft:{heroIdentifiers:["dromai","fai","iyslander"],picksPerPack:14},heroes:["Dromai","Fai","Iyslander"],languages:["English"],release:"Uprising",relatedReleases:["Dromai Blitz Deck","Fai Blitz Deck"],releaseDate:"2022-06-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["upr"],talents:["Draconic","Elemental","Ice"]},{cards:247,classes:["Assassin","Brute","Guardian","Illusionist","Mechanologist","Ninja","Ranger","Runeblade","Warrior","Wizard"],deckLinks:[],heroes:["Arakni","Emperor","Yoji"],languages:["English"],release:"Dynasty",relatedReleases:[],releaseDate:"2022-11-11 12:00",releaseType:"Expansion Booster",setIdentifiers:["dyn"],talents:["Royal"]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01GW25PNWBW2FPDHRNTPSET0GT"}],heroes:["Arakni"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Arakni Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["ara"],talents:[]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01GW26RNH1Q1J0S1VFXPN609S2"}],heroes:["Azalea"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Azalea Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["azl"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GW28622XSVAK7H9RXZVAVKM0"}],heroes:["Benji"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Benji Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["ben"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01GW28TF5FXFKJ5CGRNXB84CG6"}],heroes:["Katsu"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Katsu Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["kat"],talents:[]},{cards:40,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01GW29DPNZ3XVBJQHHFQHHHDGN"}],heroes:["Riptide"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Riptide Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["rip"],talents:[]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01GW2945GHPH2YSX3FTS7HCBT1"}],heroes:["Uzuri"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Uzuri Blitz Deck",relatedReleases:[],releaseDate:"2023-03-24 12:00",releaseType:"Blitz Deck",setIdentifiers:["uzu"],talents:[]},{cards:239,classes:["Assassin","Ranger","Ninja"],deckLinks:[],draft:{heroIdentifiers:["arakni-solitary-confinement","azalea","benji-the-piercing-wind","katsu","riptide","uzuri"],picksPerPack:14},heroes:["Arakni","Azalea","Benji","Katsu","Riptide","Uzuri"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Outsiders",relatedReleases:["Arakni Blitz Deck","Azalea Blitz Deck","Benji Blitz Deck","Katsu Blitz Deck","Riptide Blitz Deck","Uzuri Blitz Deck"],releaseDate:"2023-03-24 12:00",releaseType:"Standalone Booster",setIdentifiers:["out"],talents:[]},{cards:236,classes:["Illusionist","Runeblade","Warrior","Brute"],deckLinks:[],heroes:["Prism","Vynnset","Boltyn","Levia"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Dusk till Dawn",relatedReleases:[],releaseDate:"2023-07-14 12:00",releaseType:"Expansion Booster",setIdentifiers:["dtd"],talents:["Light","Shadow"]},{cards:107,classes:["Mechanologist","Bard","Guardian","Ninja"],deckLinks:[{name:"Brevant",url:"https://fabrary.net/decks/01HAXKPFH7ZHPDEJZH967VNRW6"},{name:"Ira",url:"https://fabrary.net/decks/01HAXKZMTRN4FR7CFTQA11A70N"},{name:"Melody",url:"https://fabrary.net/decks/01HAXKSFPXGCEH99PDZJ32V4N9"},{name:"Teklovossen",url:"https://fabrary.net/decks/01HAXKZMTRN4FR7CFTQA11A70N"}],heroes:["Teklovossen","Melody","Brevant","Ira"],languages:["English"],release:"Round the Table: TCC x LSS",relatedReleases:[],releaseDate:"2023-09-29 12:00",releaseType:"Round the Table",talents:[],setIdentifiers:["tcc"]},{cards:251,classes:["Mechanologist"],deckLinks:[],draft:{heroIdentifiers:["dash-database","maxx-nitro","teklovossen"],picksPerPack:14},heroes:["Dash","Maxx","Teklovossen"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],raritiesExcludedInLimited:["Legendary","Fabled"],release:"Bright Lights",relatedReleases:[],releaseDate:"2023-10-06 12:00",releaseType:"Standalone Booster",setIdentifiers:["evo"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01HN3J1X1NQ9TB9RTVWV42JG46"}],heroes:["Betsy"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Betsy Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["bet"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01HN3SHBEQBRECYK6ZN1CHRADR"}],heroes:["Kassai"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Kassai Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["ksi"],talents:[]},{cards:40,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HN3HK89NA910SK3FQV84H46Z"}],heroes:["Kayo"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Kayo Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["kyo"],talents:[]},{cards:40,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01HN3GP5ZJ1NRC0XBYNE45XQE8"}],heroes:["Olympia"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Olympia Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["ola"],talents:[]},{cards:40,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HN3Q4GBDMEFSX98HEN9ET308"}],heroes:["Rhinar"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Rhinar Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["rhi"],talents:[]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01HN3K8ZV7KBRRJKPHW4B13J1K"}],heroes:["Victor"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],release:"Victor Blitz Deck",relatedReleases:[],releaseDate:"2024-02-02 12:00",releaseType:"Blitz Deck",setIdentifiers:["vic"],talents:[]},{cards:255,classes:["Brute","Guardian","Warrior"],deckLinks:[],draft:{heroIdentifiers:["kassai","betsy","kayo","olympia","rhinar","victor-goldmane"],picksPerPack:14},heroes:["Kassai","Betsy","Kayo","Olympia","Rhinar","Victor"],languages:["English","Fran\xE7ais","Deutsch","Italiano","Espa\xF1ol"],raritiesExcludedInLimited:["Legendary","Fabled"],release:"Heavy Hitters",relatedReleases:["Betsy Blitz Deck","Kassai Blitz Deck","Kayo Blitz Deck","Olympia Blitz Deck","Rhinar Blitz Deck","Victor Blitz Deck"],releaseDate:"2024-02-02 12:00",releaseType:"Standalone Booster",setIdentifiers:["hvy"],talents:[]},{cards:66,classes:["Brute"],deckLinks:[{url:"https://fabrary.net/decks/01HWNCK2BYPVKK6701052YYXMZ"}],heroes:["Kayo"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Kayo",relatedReleases:[],releaseDate:"2024-05-03 12:00",releaseType:"Armory Deck",setIdentifiers:["ako"],talents:[]},{cards:40,classes:["Illusionist"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z23X2PRQCJ100FP4CAZGK"}],heroes:["Enigma"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Enigma Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["eng"],talents:["Mystic"]},{cards:40,classes:["Assassin"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z4BD3TRMS3CP1ME4ZP3T6"}],heroes:["Nuu"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Nuu Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["nuu"],talents:["Mystic"]},{cards:40,classes:["Ninja"],deckLinks:[{url:"https://fabrary.net/decks/01HX5Z395FD35CM24QCJQKJER1"}],heroes:["Zen"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Zen Blitz Deck",relatedReleases:[],releaseDate:"2024-05-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["zen"],talents:["Mystic"]},{cards:239,classes:["Assassin","Illusionist","Ninja"],deckLinks:[],draft:{heroIdentifiers:["enigma","nuu","zen"],picksPerPack:14},heroes:["Enigma","Nuu","Zen"],languages:q,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Part the Mistveil",relatedReleases:["Enigma Blitz Deck","Nuu Blitz Deck","Zen Blitz Deck"],releaseDate:"2024-05-31 12:00",releaseType:"Standalone Booster",setIdentifiers:["mst"],talents:["Mystic"]},{cards:66,classes:["Warrior"],deckLinks:[{url:"https://fabrary.net/decks/01J202NH0RG8S0V8WXH1FWB2AH"}],heroes:["Boltyn"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Boltyn",relatedReleases:[],releaseDate:"2024-07-12 12:00",releaseType:"Armory Deck",setIdentifiers:["asb"],talents:["Light"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J45SYSM2ZERW6CWY283ZAT1S"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"1st Strike: Aurora",relatedReleases:[],releaseDate:"2024-08-01 12:00",releaseType:"1st Strike",setIdentifiers:["aur"],talents:["Lightning"]},{cards:40,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01J45SWXNDV5XD8PTBACAV8NZ1"}],heroes:["Terra"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"1st Strike: Terra",relatedReleases:[],releaseDate:"2024-08-01 12:00",releaseType:"1st Strike",setIdentifiers:["ter"],talents:["Earth"]},{cards:66,classes:["Ranger"],deckLinks:[{url:"https://fabrary.net/decks/01J3GKKSTM773CW7BG3RRJ5FJH"}],heroes:["Azalea"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Azalea",relatedReleases:[],releaseDate:"2024-08-02 12:00",releaseType:"Armory Deck",setIdentifiers:["aaz"],talents:[]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J68KF1TFNN62TC0G7M993FTY"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Aurora Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["aua"],talents:["Lightning"]},{cards:40,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01J68KFRMJFKRQYJJ7THG1GMTB"}],heroes:["Florian"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Florian Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["flr"],talents:["Earth"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01J68KGA3JVKFHEXGKYW0441CY"}],heroes:["Oscilio"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Oscilio Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["osc"],talents:["Lightning"]},{cards:40,classes:["Wizard"],deckLinks:[{url:"https://fabrary.net/decks/01J68KGT3XD3HMVVRFT174QNMF"}],heroes:["Verdance"],languages:["English","Fran\xE7ais","Deutsch","Italiano","\u65E5\u672C\u8A9E","Espa\xF1ol"],release:"Verdance Blitz Deck",relatedReleases:[],releaseDate:"2024-09-20 12:00",releaseType:"Blitz Deck",setIdentifiers:["ver"],talents:["Earth"]},{cards:258,classes:["Runeblade","Wizard"],deckLinks:[],draft:{heroIdentifiers:["aurora","florian","oscilio","verdance"],picksPerPack:14},heroes:["Aurora","Florian","Oscilio","Verdance"],languages:q,raritiesExcludedInLimited:["Legendary","Fabled"],release:"Rosetta",relatedReleases:["Aurora Blitz Deck","Florian Blitz Deck","Oscilio Blitz Deck","Verdance Blitz Deck"],releaseDate:"2024-09-20 12:00",releaseType:"Standalone Booster",setIdentifiers:["ros"],talents:["Elemental","Earth","Lightning"]},{cards:66,classes:["Mechanologist"],deckLinks:[{url:"https://fabrary.net/decks/01J9822H5PANJAFQVMC4TPK4Z1"}],heroes:["Dash"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck: Dash",relatedReleases:[],releaseDate:"2024-10-18 12:00",releaseType:"Armory Deck",setIdentifiers:["aio"],talents:[]},{cards:30,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01JCPPENK52DTRBJZMWQF8S0X2"}],heroes:["Jarl"],languages:["English","Fran\xE7ais","Italiano","\u65E5\u672C\u8A9E"],release:"Armory Deck Origins: Jarl",relatedReleases:[],releaseDate:"2024-11-29 12:00",releaseType:"Armory Deck",setIdentifiers:["ajv"],talents:["Elemental","Earth","Ice"]},{cards:40,classes:["Assassin"],deckLinks:[],heroes:["Arakni"],languages:q,release:"Arakni Hunted Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["ark"],talents:[]},{cards:40,classes:["Assassin"],deckLinks:[],heroes:["Crackni"],languages:q,release:"Arakni, Web of Deceit Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["wod"],talents:[]},{cards:40,classes:["Ninja"],deckLinks:[],heroes:["Cindra"],languages:q,release:"Cindra Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["cin"],talents:["Draconic","Royal"]},{cards:40,classes:["Warrior"],deckLinks:[],heroes:["Fang"],languages:q,release:"Fang Blitz Deck",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Blitz Deck",setIdentifiers:["fng"],talents:["Draconic","Royal"]},{cards:265,classes:["Assassin","Ninja","Warrior"],deckLinks:[],draft:{heroIdentifiers:["arakni-web-of-deceit","cindra","fang"],picksPerPack:14},heroes:["Arakni","Cindra","Fang"],heroOverrides:{Arakni:"Crackni"},languages:q,raritiesExcludedInLimited:["Legendary","Fabled"],release:"The Hunted",relatedReleases:[],releaseDate:"2025-01-31 12:00",releaseType:"Standalone Booster",setIdentifiers:["hnt"],talents:["Chaos","Draconic","Royal"],url:"https://fabtcg.com/en/articles/hnt/"},{cards:28,classes:["Runeblade"],deckLinks:[{url:"https://fabrary.net/decks/01JN2DEG4X2V8DVMCWFBWQTTSC"}],heroes:["Aurora"],languages:["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],release:"Armory Deck: Aurora",relatedReleases:[],releaseDate:"2025-03-14 12:00",releaseType:"Armory Deck",setIdentifiers:["ast"],talents:["Elemental","Lightning"]},{cards:28,classes:["Mechanologist"],deckLinks:[{url:"https://fabrary.net/decks/01JRH0631MH5A9JPVGTP3TKJXN"}],heroes:["Maxx"],languages:["English","Fran\xE7ais","\u65E5\u672C\u8A9E"],release:"Armory Deck: Maxx",relatedReleases:[],releaseDate:"2025-04-17 12:00",releaseType:"Armory Deck",setIdentifiers:["amx"],talents:[]},{cards:30,classes:["Necromancer","Pirate"],deckLinks:[{url:"https://fabrary.net/decks/01JVYZ0NCHP49HAP40C23P14E3"}],heroes:["Gravy Bones"],languages:$,release:"Armory Deck: Gravy Bones",relatedReleases:[],releaseDate:"2025-05-30 12:00",releaseType:"Armory Deck",setIdentifiers:["agb"],talents:[]},{cards:265,classes:["Mechanologist","Necromancer","Pirate","Ranger","Thief"],deckLinks:[],draft:{heroIdentifiers:["gravy-bones","marlynn","puffin","scurv-stowaway"],picksPerPack:14},heroes:["Gravy Bones","Marlynn","Puffin","Scurv"],languages:$,raritiesExcludedInLimited:["Fabled","Legendary"],release:"High Seas",relatedReleases:[],releaseDate:"2025-06-06 12:00",releaseType:"Standalone Booster",setIdentifiers:["sea"],talents:[]},{cards:30,classes:["Ninja"],deckLinks:[],heroes:["Ira"],languages:$,release:"Armory Deck: Ira",relatedReleases:[],releaseDate:"2025-07-11 12:00",releaseType:"Armory Deck",setIdentifiers:["asr"],talents:[]},{cards:30,classes:["Runeblade"],deckLinks:[],heroes:["Viserai"],languages:$,release:"Armory Deck Legends: Viserai",relatedReleases:[],releaseDate:"2025-07-24 12:00",releaseType:"Armory Deck",setIdentifiers:["avs"],talents:[]},{cards:30,classes:["Illusionist"],deckLinks:[],heroes:["Prism"],languages:$,release:"Armory Deck Legends: Prism",relatedReleases:[],releaseDate:"2025-07-24 12:00",releaseType:"Armory Deck",setIdentifiers:["apr"],talents:["Light"]},{cards:130,classes:["Guardian"],deckLinks:[],heroes:["Valda"],languages:$,release:"Mastery Pack: Guardian",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Expansion Booster",setIdentifiers:["mpg"],talents:[]},{cards:30,classes:["Guardian"],deckLinks:[{url:"https://fabrary.net/decks/01K1GBSGB17GT925NVJ0PM0G9Y"}],heroes:["Bravo"],languages:$,release:"Bravo Demo Deck",relatedReleases:[],releaseDate:"2025-08-08 12:00",releaseType:"Welcome Deck",setIdentifiers:["bdd"],talents:[]},{cards:107,classes:["Guardian"],deckLinks:[],heroes:["Bravo"],languages:["English"],release:"Smash Palace",relatedReleases:[],releaseDate:"2025-09-29 12:00",releaseType:"Box Set",talents:[],setIdentifiers:["smp"]},{cards:276,classes:["Brute","Guardian"],deckLinks:[],draft:{heroIdentifiers:["tuffnut","pleiades","kayo-strong-arm","lyath-goldmane"],picksPerPack:14},heroes:["Kayo","Lyath","Pleiades","Tuffnut"],heroOverrides:{Kayo:"RKO"},languages:$,raritiesExcludedInLimited:["Fabled","Legendary"],release:"Super Slam",relatedReleases:[],releaseDate:"2025-09-26 12:00",releaseType:"Standalone Booster",setIdentifiers:["sup"],talents:["Revered","Reviled"]},{cards:30,classes:["Guardian"],deckLinks:[],heroes:["Pleiades"],languages:$,release:"Armory Deck: Pleiades",relatedReleases:[],releaseDate:"2025-09-19 12:00",releaseType:"Armory Deck",setIdentifiers:["aps"],talents:["Revered"]},{cards:30,classes:["Brute"],deckLinks:[],heroes:["Rhinar"],languages:$,release:"Armory Deck: Rhinar",relatedReleases:[],releaseDate:"2025-11-14 12:00",releaseType:"Armory Deck",setIdentifiers:["arr"],talents:[]},{cards:30,classes:["Assassin"],deckLinks:[],heroes:["Slippy"],languages:$,release:"Armory Deck: Arakni",relatedReleases:[],releaseDate:"2025-12-15 12:00",releaseType:"Armory Deck",setIdentifiers:["aac"],talents:["Chaos"]}],He={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",hnt:"The Hunted",sea:"High Seas",sup:"Super Slam",mpg:"Mastery Pack: Guardian"},Jr=la(oa({},He),{aac:"Armory Deck: Arakni",aaz:"Armory Deck: Azalea",asb:"Armory Deck: Boltyn",aio:"Armory Deck: Dash",ako:"Armory Deck: Kayo",ajv:"Armory Deck Origins: Jarl",ast:"Armory Deck: Aurora",amx:"Armory Deck: Maxx",agb:"Armory Deck: Gravy Bones",asr:"Armory Deck: Ira",aps:"Armory Deck: Pleiades",apr:"Armory Deck Legends: Prism",arr:"Armory Deck: Rhinar",avs:"Armory Deck Legends: Viserai",ara:"Arakni Blitz Deck",ark:"Arakni Hunted 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",cin:"Cindra Blitz Deck",dro:"Dromai Blitz Deck",eng:"Enigma Blitz Deck",fai:"Fai Blitz Deck",fng:"Fang Blitz Deck",flr:"Florian 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",osc:"Oscilio Blitz Deck",psm:"Prism Blitz Deck",rip:"Riptide Blitz Deck",rhi:"Rhinar Blitz Deck",uzu:"Uzuri Blitz Deck",ver:"Verdance Blitz Deck",vic:"Victor Blitz Deck",zen:"Zen Blitz Deck",wod:"Arakni, Web of Deceit Blitz Deck",aur:"1st Strike: Aurora",ter:"1st Strike: Terra",bdd:"Bravo Demo Deck",dvr:"Classic Battles: Rhinar vs Dorinthea",rvd:"Classic Battles: Rhinar vs Dorinthea",ira:"Ira Welcome Deck",tcc:"Round the Table: TCC x LSS",smp:"Smash Palace",bvo:"Bravo Hero Deck",tea:"Dorinthea Hero Deck",ksu:"Katsu Hero Deck",rnr:"Rhinar Hero Deck",gem:"GEM",fab:"Promos",her:"Promos",jdg:"Promos",lgs:"Promos",lss:"Promos",oxo:"Promos",xxx:"Promos",win:"Promos"}),Oe={};for(let[e,r]of Object.entries(Jr)){let t=Oe[r];t?t.push(e):Oe[r]=[e]}var Ea=Oe,Ta={},Sa={MPG112_V2:"-V2",MPG112_V3:"-V3",MST158_V3:"-V3",ROS162_V2:"-V2","ROS008-MV_V2_BACK":"-V3"},xa=e=>{var r,t,a;let s=Ta[e.set]||"",i=`${e.identifier}${s}`,o=e.edition?`-${e.edition}`:"",n=e.foiling?`-${e.foiling}`:"",l=(r=e.treatments)!=null&&r.length?`-${e.treatments.sort().join("-")}`:e.treatment?`-${e.treatment}`:"",d=(t=e.image)!=null&&t.toLowerCase().includes("back")?"-Back":"",c=Sa[((a=e.image)==null?void 0:a.toUpperCase())||""]||"";return`${i}${o}${n}${l}${d}${c}`},Ra=Object.keys(He).filter(e=>!e.toLowerCase().includes("hp")).reverse().map(e=>e.toUpperCase()),La={"adaptive-plating":{print:"EVO013-Cold"},"command-and-conquer-red":{print:"DYN000-Cold-Alternate Art-Extended Art"},"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"},"rosetta-thorn":{print:"ROS256-Cold"},"sigil-of-solace-red":{print:"FAB178-Rainbow-Alternate Art-Extended Art"},"spectral-shield":{print:"MST158-Alternate Art-V3"},"tripwire-trap-red":{print:"LGS150-Rainbow"},"viserai-rune-blood":{print:"HER011-Cold"},"wreck-havoc-red":{print:"OUT198"}},Pa=["JDG044-Full Art-Back"],Ia=(e,r)=>{let{cardIdentifier:t}=e,a=Object.entries(La).find(([s])=>s===t);if(a&&r.some(s=>{let[,{print:i}]=a;return s.print===i})){let[,{print:s}]=a;return r.find(i=>i.print===s)||r[0]}else{let s,i,o,n,l,d,c,h,u,p,g,v,k,b,y,A,f,B,T,C,x,L;for(let M of r){let{edition:F,foiling:R,identifier:w,image:N,print:W,treatments:S}=M,P=(N==null?void 0:N.toUpperCase())||"",z=w.toLowerCase().includes("win"),X=!!P,me=P.includes("HP"),he=Pa.includes(W);if(X&&!z&&!me&&!he){if(s||(s=M),S!=null&&S.includes("Full Art")){if(g=M,R==="Cold"&&(d=M,P.includes("_V3"))){c=M;break}P.includes("BACK")?u=M:p=M}S!=null&&S.includes("Extended Art")&&(h=M,R==="Cold"&&(l=M),R||(v=M),F==="Promo"&&(k=M)),S!=null&&S.includes("Alternate Art")&&(i=M),S!=null&&S.includes("Alternate Border")&&(o=M),S!=null&&S.includes("Alternate Text")&&(n=M),(P.includes("_V2")||P.includes("-MV"))&&S!=null&&S.includes("Full Art")&&(y=M),F==="Alpha"?A=M:F==="First"?f=M:F==="Promo"?B=M:F==="Unlimited"&&(T=M),R==="Cold"?(C=M,F==="Promo"&&(L=M)):R==="Gold"&&(x=M)}}return b||c||p||u||d||g||l||y||k||v||h||o||i||n||L||A||f||B||T||x||C||s}},wa={"command-and-conquer-red":{print:"HNT260"},"pitfall-trap-yellow":{print:"LGS151-Rainbow"},"portside-exchange-blue":{print:"SEA145"},"rockslide-trap-blue":{print:"LGS152-Rainbow"},"rosetta-thorn":{print:"ELE222-First"},"spectral-shield":{print:"MST158"},"tripwire-trap-red":{print:"LGS150-Rainbow"},"wreck-havoc-red":{print:"OUT198"}},za=(e,r)=>{let{cardIdentifier:t}=e,a=Object.entries(wa).find(([s])=>s===t);if(a&&r.some(s=>{let[,{print:i}]=a;return s.print===i})){let[,{print:s}]=a;return r.find(i=>i.print===s)||r[0]}else{let s,i;for(let o of r){let{edition:n,image:l,treatment:d}=o,c=!!l,h=l==null?void 0:l.includes("HP");if(c&&!h&&(s||(s=o),!i&&n!=="Promo"&&d!=="Full Art"&&(i=o)),s&&i)break}return i||s||r[0]}}});var pt=Dr((Ai,ht)=>{"use strict";function Xr(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r&&(a=a.filter(function(s){return Object.getOwnPropertyDescriptor(e,s).enumerable})),t.push.apply(t,a)}return t}function le(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};r%2?Xr(Object(t),!0).forEach(function(a){Ke(e,a,t[a])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):Xr(Object(t)).forEach(function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(t,a))})}return e}function Ge(e){"@babel/helpers - typeof";return Ge=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},Ge(e)}function H(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}function Zr(e,r){for(var t=0;t<r.length;t++){var a=r[t];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function _(e,r,t){return r&&Zr(e.prototype,r),t&&Zr(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ke(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function re(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Super expression must either be null or a function");Object.defineProperty(e,"prototype",{value:Object.create(r&&r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),writable:!1}),r&&We(e,r)}function Ae(e){return Ae=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},Ae(e)}function We(e,r){return We=Object.setPrototypeOf||function(a,s){return a.__proto__=s,a},We(e,r)}function Oa(){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 Na(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Ha(e,r){if(r&&(typeof r=="object"||typeof r=="function"))return r;if(r!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Na(e)}function te(e){var r=Oa();return function(){var a=Ae(e),s;if(r){var i=Ae(this).constructor;s=Reflect.construct(a,arguments,i)}else s=a.apply(this,arguments);return Ha(this,s)}}function ne(e){return _a(e)||Ga(e)||Ka(e)||Wa()}function _a(e){if(Array.isArray(e))return $e(e)}function Ga(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Ka(e,r){if(e){if(typeof e=="string")return $e(e,r);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return $e(e,r)}}function $e(e,r){(r==null||r>e.length)&&(r=e.length);for(var t=0,a=new Array(r);t<r;t++)a[t]=e[t];return a}function Wa(){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 Z(e){return Array.isArray?Array.isArray(e):it(e)==="[object Array]"}var $a=1/0;function ja(e){if(typeof e=="string")return e;var r=e+"";return r=="0"&&1/e==-$a?"-0":r}function Va(e){return e==null?"":ja(e)}function J(e){return typeof e=="string"}function at(e){return typeof e=="number"}function Ua(e){return e===!0||e===!1||Ja(e)&&it(e)=="[object Boolean]"}function st(e){return Ge(e)==="object"}function Ja(e){return st(e)&&e!==null}function K(e){return e!=null}function _e(e){return!e.trim().length}function it(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}var Ya="Incorrect 'index' type",Xa=function(r){return"Invalid value for key ".concat(r)},Za=function(r){return"Pattern length exceeds max of ".concat(r,".")},Qa=function(r){return"Missing ".concat(r," property in key")},qa=function(r){return"Property 'weight' in key '".concat(r,"' must be a positive integer")},Qr=Object.prototype.hasOwnProperty,es=function(){function e(r){var t=this;H(this,e),this._keys=[],this._keyMap={};var a=0;r.forEach(function(s){var i=nt(s);a+=i.weight,t._keys.push(i),t._keyMap[i.id]=i,a+=i.weight}),this._keys.forEach(function(s){s.weight/=a})}return _(e,[{key:"get",value:function(t){return this._keyMap[t]}},{key:"keys",value:function(){return this._keys}},{key:"toJSON",value:function(){return JSON.stringify(this._keys)}}]),e}();function nt(e){var r=null,t=null,a=null,s=1,i=null;if(J(e)||Z(e))a=e,r=qr(e),t=je(e);else{if(!Qr.call(e,"name"))throw new Error(Qa("name"));var o=e.name;if(a=o,Qr.call(e,"weight")&&(s=e.weight,s<=0))throw new Error(qa(o));r=qr(o),t=je(o),i=e.getFn}return{path:r,id:t,weight:s,src:a,getFn:i}}function qr(e){return Z(e)?e:e.split(".")}function je(e){return Z(e)?e.join("."):e}function rs(e,r){var t=[],a=!1,s=function i(o,n,l){if(K(o))if(!n[l])t.push(o);else{var d=n[l],c=o[d];if(!K(c))return;if(l===n.length-1&&(J(c)||at(c)||Ua(c)))t.push(Va(c));else if(Z(c)){a=!0;for(var h=0,u=c.length;h<u;h+=1)i(c[h],n,l+1)}else n.length&&i(c,n,l+1)}};return s(e,J(r)?r.split("."):r,0),a?t:t[0]}var ts={includeMatches:!1,findAllMatches:!1,minMatchCharLength:1},as={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:function(r,t){return r.score===t.score?r.idx<t.idx?-1:1:r.score<t.score?-1:1}},ss={location:0,threshold:.6,distance:100},is={useExtendedSearch:!1,getFn:rs,ignoreLocation:!1,ignoreFieldNorm:!1,fieldNormWeight:1},D=le(le(le(le({},as),ts),ss),is),ns=/[^ ]+/g;function os(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:3,t=new Map,a=Math.pow(10,r);return{get:function(i){var o=i.match(ns).length;if(t.has(o))return t.get(o);var n=1/Math.pow(o,.5*e),l=parseFloat(Math.round(n*a)/a);return t.set(o,l),l},clear:function(){t.clear()}}}var Xe=function(){function e(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=r.getFn,a=t===void 0?D.getFn:t,s=r.fieldNormWeight,i=s===void 0?D.fieldNormWeight:s;H(this,e),this.norm=os(i,3),this.getFn=a,this.isCreated=!1,this.setIndexRecords()}return _(e,[{key:"setSources",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.docs=t}},{key:"setIndexRecords",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.records=t}},{key:"setKeys",value:function(){var t=this,a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];this.keys=a,this._keysMap={},a.forEach(function(s,i){t._keysMap[s.id]=i})}},{key:"create",value:function(){var t=this;this.isCreated||!this.docs.length||(this.isCreated=!0,J(this.docs[0])?this.docs.forEach(function(a,s){t._addString(a,s)}):this.docs.forEach(function(a,s){t._addObject(a,s)}),this.norm.clear())}},{key:"add",value:function(t){var a=this.size();J(t)?this._addString(t,a):this._addObject(t,a)}},{key:"removeAt",value:function(t){this.records.splice(t,1);for(var a=t,s=this.size();a<s;a+=1)this.records[a].i-=1}},{key:"getValueForItemAtKeyId",value:function(t,a){return t[this._keysMap[a]]}},{key:"size",value:function(){return this.records.length}},{key:"_addString",value:function(t,a){if(!(!K(t)||_e(t))){var s={v:t,i:a,n:this.norm.get(t)};this.records.push(s)}}},{key:"_addObject",value:function(t,a){var s=this,i={i:a,$:{}};this.keys.forEach(function(o,n){var l=o.getFn?o.getFn(t):s.getFn(t,o.path);if(K(l)){if(Z(l))(function(){for(var c=[],h=[{nestedArrIndex:-1,value:l}];h.length;){var u=h.pop(),p=u.nestedArrIndex,g=u.value;if(K(g))if(J(g)&&!_e(g)){var v={v:g,i:p,n:s.norm.get(g)};c.push(v)}else Z(g)&&g.forEach(function(k,b){h.push({nestedArrIndex:b,value:k})})}i.$[n]=c})();else if(J(l)&&!_e(l)){var d={v:l,n:s.norm.get(l)};i.$[n]=d}}}),this.records.push(i)}},{key:"toJSON",value:function(){return{keys:this.keys,records:this.records}}}]),e}();function ot(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.getFn,s=a===void 0?D.getFn:a,i=t.fieldNormWeight,o=i===void 0?D.fieldNormWeight:i,n=new Xe({getFn:s,fieldNormWeight:o});return n.setKeys(e.map(nt)),n.setSources(r),n.create(),n}function ls(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=r.getFn,a=t===void 0?D.getFn:t,s=r.fieldNormWeight,i=s===void 0?D.fieldNormWeight:s,o=e.keys,n=e.records,l=new Xe({getFn:a,fieldNormWeight:i});return l.setKeys(o),l.setIndexRecords(n),l}function De(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=r.errors,a=t===void 0?0:t,s=r.currentLocation,i=s===void 0?0:s,o=r.expectedLocation,n=o===void 0?0:o,l=r.distance,d=l===void 0?D.distance:l,c=r.ignoreLocation,h=c===void 0?D.ignoreLocation:c,u=a/e.length;if(h)return u;var p=Math.abs(n-i);return d?u+p/d:p?1:u}function cs(){for(var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:D.minMatchCharLength,t=[],a=-1,s=-1,i=0,o=e.length;i<o;i+=1){var n=e[i];n&&a===-1?a=i:!n&&a!==-1&&(s=i-1,s-a+1>=r&&t.push([a,s]),a=-1)}return e[i-1]&&i-a>=r&&t.push([a,i-1]),t}var ie=32;function ds(e,r,t){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},s=a.location,i=s===void 0?D.location:s,o=a.distance,n=o===void 0?D.distance:o,l=a.threshold,d=l===void 0?D.threshold:l,c=a.findAllMatches,h=c===void 0?D.findAllMatches:c,u=a.minMatchCharLength,p=u===void 0?D.minMatchCharLength:u,g=a.includeMatches,v=g===void 0?D.includeMatches:g,k=a.ignoreLocation,b=k===void 0?D.ignoreLocation:k;if(r.length>ie)throw new Error(Za(ie));for(var y=r.length,A=e.length,f=Math.max(0,Math.min(i,A)),B=d,T=f,C=p>1||v,x=C?Array(A):[],L;(L=e.indexOf(r,T))>-1;){var M=De(r,{currentLocation:L,expectedLocation:f,distance:n,ignoreLocation:b});if(B=Math.min(M,B),T=L+y,C)for(var F=0;F<y;)x[L+F]=1,F+=1}T=-1;for(var R=[],w=1,N=y+A,W=1<<y-1,S=0;S<y;S+=1){for(var P=0,z=N;P<z;){var X=De(r,{errors:S,currentLocation:f+z,expectedLocation:f,distance:n,ignoreLocation:b});X<=B?P=z:N=z,z=Math.floor((N-P)/2+P)}N=z;var me=Math.max(1,f-z+1),he=h?A:Math.min(f+z,A)+y,oe=Array(he+2);oe[he+1]=(1<<S)-1;for(var j=he;j>=me;j-=1){var ke=j-1,yr=t[e.charAt(ke)];if(C&&(x[ke]=+!!yr),oe[j]=(oe[j+1]<<1|1)&yr,S&&(oe[j]|=(R[j+1]|R[j])<<1|1|R[j+1]),oe[j]&W&&(w=De(r,{errors:S,currentLocation:ke,expectedLocation:f,distance:n,ignoreLocation:b}),w<=B)){if(B=w,T=ke,T<=f)break;me=Math.max(1,2*f-T)}}var Vt=De(r,{errors:S+1,currentLocation:f,expectedLocation:f,distance:n,ignoreLocation:b});if(Vt>B)break;R=oe}var ze={isMatch:T>=0,score:Math.max(.001,w)};if(C){var mr=cs(x,p);mr.length?v&&(ze.indices=mr):ze.isMatch=!1}return ze}function us(e){for(var r={},t=0,a=e.length;t<a;t+=1){var s=e.charAt(t);r[s]=(r[s]||0)|1<<a-t-1}return r}var lt=function(){function e(r){var t=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=a.location,i=s===void 0?D.location:s,o=a.threshold,n=o===void 0?D.threshold:o,l=a.distance,d=l===void 0?D.distance:l,c=a.includeMatches,h=c===void 0?D.includeMatches:c,u=a.findAllMatches,p=u===void 0?D.findAllMatches:u,g=a.minMatchCharLength,v=g===void 0?D.minMatchCharLength:g,k=a.isCaseSensitive,b=k===void 0?D.isCaseSensitive:k,y=a.ignoreLocation,A=y===void 0?D.ignoreLocation:y;if(H(this,e),this.options={location:i,threshold:n,distance:d,includeMatches:h,findAllMatches:p,minMatchCharLength:v,isCaseSensitive:b,ignoreLocation:A},this.pattern=b?r:r.toLowerCase(),this.chunks=[],!!this.pattern.length){var f=function(F,R){t.chunks.push({pattern:F,alphabet:us(F),startIndex:R})},B=this.pattern.length;if(B>ie){for(var T=0,C=B%ie,x=B-C;T<x;)f(this.pattern.substr(T,ie),T),T+=ie;if(C){var L=B-ie;f(this.pattern.substr(L),L)}}else f(this.pattern,0)}}return _(e,[{key:"searchIn",value:function(t){var a=this.options,s=a.isCaseSensitive,i=a.includeMatches;if(s||(t=t.toLowerCase()),this.pattern===t){var o={isMatch:!0,score:0};return i&&(o.indices=[[0,t.length-1]]),o}var n=this.options,l=n.location,d=n.distance,c=n.threshold,h=n.findAllMatches,u=n.minMatchCharLength,p=n.ignoreLocation,g=[],v=0,k=!1;this.chunks.forEach(function(y){var A=y.pattern,f=y.alphabet,B=y.startIndex,T=ds(t,A,f,{location:l+B,distance:d,threshold:c,findAllMatches:h,minMatchCharLength:u,includeMatches:i,ignoreLocation:p}),C=T.isMatch,x=T.score,L=T.indices;C&&(k=!0),v+=x,C&&L&&(g=[].concat(ne(g),ne(L)))});var b={isMatch:k,score:k?v/this.chunks.length:1};return k&&i&&(b.indices=g),b}}]),e}(),ae=function(){function e(r){H(this,e),this.pattern=r}return _(e,[{key:"search",value:function(){}}],[{key:"isMultiMatch",value:function(t){return et(t,this.multiRegex)}},{key:"isSingleMatch",value:function(t){return et(t,this.singleRegex)}}]),e}();function et(e,r){var t=e.match(r);return t?t[1]:null}var hs=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=s===this.pattern;return{isMatch:i,score:i?0:1,indices:[0,this.pattern.length-1]}}}],[{key:"type",get:function(){return"exact"}},{key:"multiRegex",get:function(){return/^="(.*)"$/}},{key:"singleRegex",get:function(){return/^=(.*)$/}}]),t}(ae),ps=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=s.indexOf(this.pattern),o=i===-1;return{isMatch:o,score:o?0:1,indices:[0,s.length-1]}}}],[{key:"type",get:function(){return"inverse-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"$/}},{key:"singleRegex",get:function(){return/^!(.*)$/}}]),t}(ae),fs=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=s.startsWith(this.pattern);return{isMatch:i,score:i?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/^\^(.*)$/}}]),t}(ae),gs=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=!s.startsWith(this.pattern);return{isMatch:i,score:i?0:1,indices:[0,s.length-1]}}}],[{key:"type",get:function(){return"inverse-prefix-exact"}},{key:"multiRegex",get:function(){return/^!\^"(.*)"$/}},{key:"singleRegex",get:function(){return/^!\^(.*)$/}}]),t}(ae),ys=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=s.endsWith(this.pattern);return{isMatch:i,score:i?0:1,indices:[s.length-this.pattern.length,s.length-1]}}}],[{key:"type",get:function(){return"suffix-exact"}},{key:"multiRegex",get:function(){return/^"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^(.*)\$$/}}]),t}(ae),ms=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){var i=!s.endsWith(this.pattern);return{isMatch:i,score:i?0:1,indices:[0,s.length-1]}}}],[{key:"type",get:function(){return"inverse-suffix-exact"}},{key:"multiRegex",get:function(){return/^!"(.*)"\$$/}},{key:"singleRegex",get:function(){return/^!(.*)\$$/}}]),t}(ae),ct=function(e){re(t,e);var r=te(t);function t(a){var s,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=i.location,n=o===void 0?D.location:o,l=i.threshold,d=l===void 0?D.threshold:l,c=i.distance,h=c===void 0?D.distance:c,u=i.includeMatches,p=u===void 0?D.includeMatches:u,g=i.findAllMatches,v=g===void 0?D.findAllMatches:g,k=i.minMatchCharLength,b=k===void 0?D.minMatchCharLength:k,y=i.isCaseSensitive,A=y===void 0?D.isCaseSensitive:y,f=i.ignoreLocation,B=f===void 0?D.ignoreLocation:f;return H(this,t),s=r.call(this,a),s._bitapSearch=new lt(a,{location:n,threshold:d,distance:h,includeMatches:p,findAllMatches:v,minMatchCharLength:b,isCaseSensitive:A,ignoreLocation:B}),s}return _(t,[{key:"search",value:function(s){return this._bitapSearch.searchIn(s)}}],[{key:"type",get:function(){return"fuzzy"}},{key:"multiRegex",get:function(){return/^"(.*)"$/}},{key:"singleRegex",get:function(){return/^(.*)$/}}]),t}(ae),dt=function(e){re(t,e);var r=te(t);function t(a){return H(this,t),r.call(this,a)}return _(t,[{key:"search",value:function(s){for(var i=0,o,n=[],l=this.pattern.length;(o=s.indexOf(this.pattern,i))>-1;)i=o+l,n.push([o,i-1]);var d=!!n.length;return{isMatch:d,score:d?0:1,indices:n}}}],[{key:"type",get:function(){return"include"}},{key:"multiRegex",get:function(){return/^'"(.*)"$/}},{key:"singleRegex",get:function(){return/^'(.*)$/}}]),t}(ae),Ve=[hs,dt,fs,gs,ms,ys,ps,ct],rt=Ve.length,ks=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,vs="|";function bs(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return e.split(vs).map(function(t){for(var a=t.trim().split(ks).filter(function(g){return g&&!!g.trim()}),s=[],i=0,o=a.length;i<o;i+=1){for(var n=a[i],l=!1,d=-1;!l&&++d<rt;){var c=Ve[d],h=c.isMultiMatch(n);h&&(s.push(new c(h,r)),l=!0)}if(!l)for(d=-1;++d<rt;){var u=Ve[d],p=u.isSingleMatch(n);if(p){s.push(new u(p,r));break}}}return s})}var Ds=new Set([ct.type,dt.type]),As=function(){function e(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=t.isCaseSensitive,s=a===void 0?D.isCaseSensitive:a,i=t.includeMatches,o=i===void 0?D.includeMatches:i,n=t.minMatchCharLength,l=n===void 0?D.minMatchCharLength:n,d=t.ignoreLocation,c=d===void 0?D.ignoreLocation:d,h=t.findAllMatches,u=h===void 0?D.findAllMatches:h,p=t.location,g=p===void 0?D.location:p,v=t.threshold,k=v===void 0?D.threshold:v,b=t.distance,y=b===void 0?D.distance:b;H(this,e),this.query=null,this.options={isCaseSensitive:s,includeMatches:o,minMatchCharLength:l,findAllMatches:u,ignoreLocation:c,location:g,threshold:k,distance:y},this.pattern=s?r:r.toLowerCase(),this.query=bs(this.pattern,this.options)}return _(e,[{key:"searchIn",value:function(t){var a=this.query;if(!a)return{isMatch:!1,score:1};var s=this.options,i=s.includeMatches,o=s.isCaseSensitive;t=o?t:t.toLowerCase();for(var n=0,l=[],d=0,c=0,h=a.length;c<h;c+=1){var u=a[c];l.length=0,n=0;for(var p=0,g=u.length;p<g;p+=1){var v=u[p],k=v.search(t),b=k.isMatch,y=k.indices,A=k.score;if(b){if(n+=1,d+=A,i){var f=v.constructor.type;Ds.has(f)?l=[].concat(ne(l),ne(y)):l.push(y)}}else{d=0,n=0,l.length=0;break}}if(n){var B={isMatch:!0,score:d/n};return i&&(B.indices=l),B}}return{isMatch:!1,score:1}}}],[{key:"condition",value:function(t,a){return a.useExtendedSearch}}]),e}(),Ce=[];function Cs(){Ce.push.apply(Ce,arguments)}function Ue(e,r){for(var t=0,a=Ce.length;t<a;t+=1){var s=Ce[t];if(s.condition(e,r))return new s(e,r)}return new lt(e,r)}var Be={AND:"$and",OR:"$or"},Je={PATH:"$path",PATTERN:"$val"},Ye=function(r){return!!(r[Be.AND]||r[Be.OR])},Bs=function(r){return!!r[Je.PATH]},Ms=function(r){return!Z(r)&&st(r)&&!Ye(r)},tt=function(r){return Ke({},Be.AND,Object.keys(r).map(function(t){return Ke({},t,r[t])}))};function ut(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.auto,s=a===void 0?!0:a,i=function o(n){var l=Object.keys(n),d=Bs(n);if(!d&&l.length>1&&!Ye(n))return o(tt(n));if(Ms(n)){var c=d?n[Je.PATH]:l[0],h=d?n[Je.PATTERN]:n[c];if(!J(h))throw new Error(Xa(c));var u={keyId:je(c),pattern:h};return s&&(u.searcher=Ue(h,r)),u}var p={children:[],operator:l[0]};return l.forEach(function(g){var v=n[g];Z(v)&&v.forEach(function(k){p.children.push(o(k))})}),p};return Ye(e)||(e=tt(e)),i(e)}function Fs(e,r){var t=r.ignoreFieldNorm,a=t===void 0?D.ignoreFieldNorm:t;e.forEach(function(s){var i=1;s.matches.forEach(function(o){var n=o.key,l=o.norm,d=o.score,c=n?n.weight:null;i*=Math.pow(d===0&&c?Number.EPSILON:d,(c||1)*(a?1:l))}),s.score=i})}function Es(e,r){var t=e.matches;r.matches=[],K(t)&&t.forEach(function(a){if(!(!K(a.indices)||!a.indices.length)){var s=a.indices,i=a.value,o={indices:s,value:i};a.key&&(o.key=a.key.src),a.idx>-1&&(o.refIndex=a.idx),r.matches.push(o)}})}function Ts(e,r){r.score=e.score}function Ss(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=t.includeMatches,s=a===void 0?D.includeMatches:a,i=t.includeScore,o=i===void 0?D.includeScore:i,n=[];return s&&n.push(Es),o&&n.push(Ts),e.map(function(l){var d=l.idx,c={item:r[d],refIndex:d};return n.length&&n.forEach(function(h){h(l,c)}),c})}var ce=function(){function e(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=arguments.length>2?arguments[2]:void 0;H(this,e),this.options=le(le({},D),t),this.options.useExtendedSearch,this._keyStore=new es(this.options.keys),this.setCollection(r,a)}return _(e,[{key:"setCollection",value:function(t,a){if(this._docs=t,a&&!(a instanceof Xe))throw new Error(Ya);this._myIndex=a||ot(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}},{key:"add",value:function(t){K(t)&&(this._docs.push(t),this._myIndex.add(t))}},{key:"remove",value:function(){for(var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(){return!1},a=[],s=0,i=this._docs.length;s<i;s+=1){var o=this._docs[s];t(o,s)&&(this.removeAt(s),s-=1,i-=1,a.push(o))}return a}},{key:"removeAt",value:function(t){this._docs.splice(t,1),this._myIndex.removeAt(t)}},{key:"getIndex",value:function(){return this._myIndex}},{key:"search",value:function(t){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=a.limit,i=s===void 0?-1:s,o=this.options,n=o.includeMatches,l=o.includeScore,d=o.shouldSort,c=o.sortFn,h=o.ignoreFieldNorm,u=J(t)?J(this._docs[0])?this._searchStringList(t):this._searchObjectList(t):this._searchLogical(t);return Fs(u,{ignoreFieldNorm:h}),d&&u.sort(c),at(i)&&i>-1&&(u=u.slice(0,i)),Ss(u,this._docs,{includeMatches:n,includeScore:l})}},{key:"_searchStringList",value:function(t){var a=Ue(t,this.options),s=this._myIndex.records,i=[];return s.forEach(function(o){var n=o.v,l=o.i,d=o.n;if(K(n)){var c=a.searchIn(n),h=c.isMatch,u=c.score,p=c.indices;h&&i.push({item:n,idx:l,matches:[{score:u,value:n,norm:d,indices:p}]})}}),i}},{key:"_searchLogical",value:function(t){var a=this,s=ut(t,this.options),i=function d(c,h,u){if(!c.children){var p=c.keyId,g=c.searcher,v=a._findMatches({key:a._keyStore.get(p),value:a._myIndex.getValueForItemAtKeyId(h,p),searcher:g});return v&&v.length?[{idx:u,item:h,matches:v}]:[]}for(var k=[],b=0,y=c.children.length;b<y;b+=1){var A=c.children[b],f=d(A,h,u);if(f.length)k.push.apply(k,ne(f));else if(c.operator===Be.AND)return[]}return k},o=this._myIndex.records,n={},l=[];return o.forEach(function(d){var c=d.$,h=d.i;if(K(c)){var u=i(s,c,h);u.length&&(n[h]||(n[h]={idx:h,item:c,matches:[]},l.push(n[h])),u.forEach(function(p){var g,v=p.matches;(g=n[h].matches).push.apply(g,ne(v))}))}}),l}},{key:"_searchObjectList",value:function(t){var a=this,s=Ue(t,this.options),i=this._myIndex,o=i.keys,n=i.records,l=[];return n.forEach(function(d){var c=d.$,h=d.i;if(K(c)){var u=[];o.forEach(function(p,g){u.push.apply(u,ne(a._findMatches({key:p,value:c[g],searcher:s})))}),u.length&&l.push({idx:h,item:c,matches:u})}}),l}},{key:"_findMatches",value:function(t){var a=t.key,s=t.value,i=t.searcher;if(!K(s))return[];var o=[];if(Z(s))s.forEach(function(p){var g=p.v,v=p.i,k=p.n;if(K(g)){var b=i.searchIn(g),y=b.isMatch,A=b.score,f=b.indices;y&&o.push({score:A,key:a,value:g,idx:v,norm:k,indices:f})}});else{var n=s.v,l=s.n,d=i.searchIn(n),c=d.isMatch,h=d.score,u=d.indices;c&&o.push({score:h,key:a,value:n,norm:l,indices:u})}return o}}]),e}();ce.version="6.6.2";ce.createIndex=ot;ce.parseIndex=ls;ce.config=D;ce.parseQuery=ut;Cs(As);var xs=ce;ht.exports=xs});var vi={};ea(vi,{FilterProperty:()=>Qe,PUNCTUATION:()=>E,RARITY_VALUES_MAPPING:()=>lr,abbreviations:()=>Ze,availableExclusions:()=>Nt,availableModifiers:()=>Ot,default:()=>Kt,filterCard:()=>Wt,filtersToCardPropertyMappings:()=>Pe,getAbbreviation:()=>Me,getAbbreviationByCard:()=>Rs,getCardByName:()=>dr,getCleanText:()=>ur,getExcludedMetaFilters:()=>er,getKeywordsAndAppliedFiltersFromText:()=>cr,getMetaFilters:()=>qe,getNormalizedText:()=>ge,getRelatedCards:()=>gr,getRelatedCardsByName:()=>Ie,getTokensReferencedByCards:()=>ki,multiWordShorthands:()=>tr,shorthands:()=>rr,singleWordShorthands:()=>ar});module.exports=ra(vi);var Gt=Q(ee()),hr=Q(pt());var E=/[!"#$%&'’(),./:;<=>?@[\]^_`|~]/g;var m=Q(ee());var Me=e=>Ze.find(({abbreviations:r})=>r.find(t=>t.toLowerCase()===e)),Rs=e=>Ze.find(({card:r})=>r.toLowerCase()===e.name.toLowerCase()),Ze=[{abbreviations:["10k"],card:"10,000 Year Reunion"},{abbreviations:["Pajamas","PJs"],card:"Alluvion Constellas"},{abbreviations:["Slippy","Arakni Slipped Through the Cracks","Arakni, Slipped Through the Cracks"],card:"Arakni, 5L!p3d 7hRu 7h3 cR4X"},{abbreviations:["Dullcap"],card:"Arcanite Skullcap"},{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:["CStrike","C-Strike","C Strike"],card:"Celestial Cataclysm"},{abbreviations:["CBelly"],card:"Cerebellum Processor"},{abbreviations:["CLF"],card:"Channel Lake Frigid"},{abbreviations:["CLV"],card:"Channel Lightning Valley"},{abbreviations:["CMH"],card:"Channel Mount Heroic"},{abbreviations:["CMI"],card:"Channel Mount Isen"},{abbreviations:["CMT"],card:"Channel the Millennium Tree"},{abbreviations:["CnC","C&C"],card:"Command and Conquer"},{abbreviations:["Sea and Sea"],card:"Conqueror of the High Seas"},{abbreviations:["CYB"],card:"Count Your Blessings"},{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:["DnD"],card:"Devotion Never Dies"},{abbreviations:["DIO"],card:"Dash I/O"},{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:["Yum yum"],card:"Fruits of the Forest"},{abbreviations:["GnT"],card:"Give and Take"},{abbreviations:["Habibi"],card:"Hanabi Blaster"},{abbreviations:["HMH"],card:"Hope Merchant's Hood"},{abbreviations:["HoI"],card:"Heart of Ice"},{abbreviations:["Pumpkin"],card:"Jack-o'-lantern"},{abbreviations:["RKO","Cheato"],card:"Kayo, Underhanded Cheat"},{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:["LtC"],card:"Lead the Charge"},{abbreviations:["LNW"],card:"Leave No Witnesses"},{abbreviations:["LFaL","L4aL"],card:"Life for a Life"},{abbreviations:["LiT"],card:"Lost in Thought"},{abbreviations:["MMB"],card:"Mage Master Boots"},{abbreviations:["MaxV"],card:"Maximum Velocity"},{abbreviations:["MoM"],card:"Mask of Momentum"},{abbreviations:["MnG"],card:"Meat and Greet"},{abbreviations:["Cake","\u{1F382}"],card:"Ninth Blade of the Blood Oath"},{abbreviations:["PoM"],card:"Peace of Mind"},{abbreviations:["P-Bone"],card:"Performance Bonus"},{abbreviations:["PF","\u{1F525}"],card:"Phoenix Flame"},{abbreviations:["PtW"],card:"Poison the Well"},{abbreviations:["Thanos","Infinity Gauntlet"],card:"Polarity Reversal Script"},{abbreviations:["DPot","D Pot"],card:"Potion of D\xE9j\xE0 Vu"},{abbreviations:["Ponder Run"],card:"Premeditate"},{abbreviations:["Qi Unbound"],card:"Qi Unleashed"},{abbreviations:["RitL"],card:"Red in the Ledger"},{abbreviations:["Cats","Ghost cat","Ghost cats"],card:"Restless Coalescence"},{abbreviations:["Eugene"],card:"Rhinar, Reckless Rampage",isHidden:!0},{abbreviations:["SSGB"],card:"Sandscour Greatbow"},{abbreviations:["SSP"],card:"Sand Sketched Plan"},{abbreviations:["SFaS","S4aS"],card:"Scar for a Scar"},{abbreviations:["Tyler"],card:"Scurv, Stowaway",isHidden:!0},{abbreviations:["SWOMB"],card:"Shifting Winds of the Mystic Beast"},{abbreviations:["Snaps"],card:"Snapdragon Scalers"},{abbreviations:["SWK"],card:"Spinning Wheel Kick"},{abbreviations:["SFTL"],card:"Swing Fist, Think Later"},{abbreviations:["TTT"],card:"Take the Tempo"},{abbreviations:["Ultron"],card:"Teklovossen, the Mechropotent"},{abbreviations:["ToS"],card:"Test of Strength"},{abbreviations:["TAYG"],card:"That All You Got?"},{abbreviations:["TROM"],card:"This Round's on Me"},{abbreviations:["3oak"],card:"Three of a Kind"},{abbreviations:["Pox Malone","Post Malone"],card:"Virulent Touch"},{abbreviations:["Cast Homes"],card:"Visit Goldmane Estate"},{abbreviations:["Frosty Hammer"],card:"Winter's Wail"},{abbreviations:["Wreckless Wing"],card:"War Cry of Bellona"},{abbreviations:["ZTS"],card:"Zero to Sixty"}];var O=Q(ee());var Qe=(t=>(t.LegalFormats="legalFormats",t.LegalHeroes="legalHeroes",t))(Qe||{}),Se=Array.from(Array(50).keys()).map(e=>`${e}`),Ls=[{format:O.Format.BlitzLivingLegend,nicknames:["blitz ll"]},{format:O.Format.ClassicConstructed,nicknames:["cc","classic"]},{format:O.Format.ClassicConstructedLivingLegend,nicknames:["cc ll","classic constructed ll","ll cc","ll","living legend"]},{format:O.Format.ProjectBlue,nicknames:["pb"]},{format:O.Format.UltimatePitFight,nicknames:["upf"]}],Ps=Object.values(O.Format).map(e=>{let r=Ls.find(({format:a})=>a===e),t=e.toLowerCase().replaceAll(E,"");return r?U(V({},r),{format:t}):{format:t}}),Is=[{hero:O.Hero.DataDoll,nicknames:["data","datadoll"]},{hero:O.Hero.Dorinthea,nicknames:["dori"]},{hero:O.Hero.Genis,nicknames:["genis"]},{hero:O.Hero.GravyBones,nicknames:["gravy"]},{hero:O.Hero.Iyslander,nicknames:["islander"]}],ws=Object.values(O.Hero).map(e=>{let r=Is.find(({hero:a})=>a===e),t=e.toLowerCase().replaceAll(E,"");return r?U(V({},r),{hero:t}):{hero:t}}),Fe=["common","rare","super rare","majestic","legendary","fabled"],zs=(e,r,t,a)=>{let s=[];if(!r)s.push(...e);else for(let i of e)switch(r){case">=":let o=!1;for(let c of Fe)o?s.push(c):c===i&&(o=!0,s.push(c));break;case">":let n=!1;for(let c of Fe)n?s.push(c):c===i&&(n=!0);break;case"<=":let l=!1;for(let c of Fe.slice().reverse())l?s.push(c):c===i&&(l=!0,s.push(c));break;case"<":let d=!1;for(let c of Fe.slice().reverse())d?s.push(c):c===i&&(d=!0);break;default:break}return{filterToPropertyMapping:{nestedProperty:"rarity",property:"printings",isArray:!0},isExcluded:t,isOptional:a,isOr:!0,values:s}},Os=(e,r,t,a)=>{let s=a.map(l=>({hero:l.toLowerCase().replaceAll(E,"")})),i=[],o=[],n=[];for(let l of e){let d=Ps.find(({format:c,nicknames:h})=>c===l||!!h&&h.includes(l));if(d)o.push(d.format);else{let c=ws.find(({hero:h,nicknames:u})=>h===l||!!u&&u.includes(l))||s.find(({hero:h})=>h===l);c&&n.push(c.hero)}}return o.length>0&&i.push({filterToPropertyMapping:{property:"legalFormats",isArray:!0},values:o,isOr:!0,isExcluded:r,isOptional:t}),n.length>0&&i.push({filterToPropertyMapping:{property:"legalHeroes",isArray:!0},values:n,isOr:!0,isExcluded:r,isOptional:t}),i},qe=(e,r,t,a,s,i)=>{let o=[];return _s(t)?o.push(...Os(a,e,r,i)):Ks(t)&&o.push(zs(a,s,e,r)),o},de=[{filterToPropertyMapping:{property:"cost",isNumber:!0},isExcluded:!0,values:Se},{filterToPropertyMapping:{property:"specialCost",isString:!0,partialMatch:!0},isExcluded:!0,values:["*","x"]},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},isExcluded:!0,values:["equipment","hero","placeholder","token","weapon"]}],Y=[{filterToPropertyMapping:{property:"defense",isNumber:!0},isExcluded:!0,values:Se},{filterToPropertyMapping:{property:"specialDefense",isString:!0,partialMatch:!0},isExcluded:!0,values:["*","x"]},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},isExcluded:!0,values:["hero","placeholder","token","weapon"]}],Ee=[{filterToPropertyMapping:{property:"pitch",isNumber:!0},isExcluded:!0,values:Se},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},isExcluded:!0,values:["equipment","hero","placeholder","token","weapon"]},{filterToPropertyMapping:{property:"isCardBack",isBoolean:!0},isExcluded:!0,values:["true"]}],se=[{filterToPropertyMapping:{property:"power",isNumber:!0},isExcluded:!0,values:Se},{filterToPropertyMapping:{property:"specialPower",isString:!0,partialMatch:!0},isExcluded:!0,values:["*","x"]},{filterToPropertyMapping:{property:"types",isArray:!0,partialMatch:!0},isExcluded:!0,values:["equipment","hero","placeholder","token"]}],Te=[{filterToPropertyMapping:{property:"talents",isArray:!0},isExcluded:!0,values:Object.values(O.Talent).map(e=>e.toLowerCase())}],Ns={"!co":de,"-co":de,"!cost":de,"-cost":de,"!color":de,"-color":de,"!b":Y,"-b":Y,"!block":Y,"-block":Y,"!d":Y,"-d":Y,"!def":Y,"-def":Y,"!defense":Y,"-defense":Y,"!pitch":Ee,"-pitch":Ee,"!p":Ee,"-p":Ee,"!attack":se,"-attack":se,"!power":se,"-power":se,"!pwr":se,"-pwr":se,"!pow":se,"-pow":se,"!talents":Te,"-talents":Te,"!tal":Te,"-tal":Te},er=e=>{let r=[],t=Ns[e];return t&&r.push(...t),r},Hs=["l","legal","hero"],_s=e=>Hs.includes(e),Gs=["r","rarity"],Ks=e=>Gs.includes(e);var G=Q(ee());var rr=[{description:"Attack actions",expanded:["st:attack"],filters:{subtypes:[G.Subtype.Attack]},isCardProperty:!1,shorthands:["AA"]},{description:"Arcane barrier",expanded:['k:"arcane barrier"'],filters:{keywords:[G.Keyword.ArcaneBarrier]},isCardProperty:!1,shorthands:["AB"]},{description:"Attack reactions",expanded:['t:"attack reaction"'],filters:{types:[G.Type.AttackReaction]},isCardProperty:!1,shorthands:["AR"]},{description:"Defense reactions",expanded:['t:"defense reaction"'],filters:{types:[G.Type.DefenseReaction]},isCardProperty:!1,shorthands:["DR"]},{description:"Flick daggers",expanded:["dagger you control deal 1 damage"],filters:{functionalText:"dagger you control deal 1 damage"},isCardProperty:!0,shorthands:["Flick","Hurl","Throw"]},{description:"Gain life",expanded:["gain {h}"],filters:{functionalText:"gain {h}"},isCardProperty:!1,shorthands:["Gain life","Gains life"]},{description:"Go again",expanded:['k:"go again"'],filters:{keywords:[G.Keyword.GoAgain]},isCardProperty:!1,shorthands:["GA"]},{description:"Non-attack actions",expanded:["t:action","st:non-attack"],filters:{subtypes:[G.Subtype.NonAttack],types:[G.Type.Action]},isCardProperty:!1,shorthands:["NAA"]},{description:"Plus defense",expanded:["+ {d}"],filters:{functionalText:"+ {d}"},isCardProperty:!1,shorthands:["Pump defense","Pumps defense","Buff defense","Buffs defense"]},{description:"Plus power",expanded:["+ {p}"],filters:{functionalText:"+ {p}"},isCardProperty:!1,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",expanded:["!c:illusionist","st:attack","pwr:>=6","def:>=0"],filters:{defenseGreaterThanOrEqualTo:0,notClass:[G.Class.Illusionist],powerGreaterThanOrEqualTo:6,subtypes:[G.Subtype.Attack]},isCardProperty:!1,helper:'6+ power non-Illusionist attacks that can "pop" phantasm attacks when defending',shorthands:["Poppers","Popper"]},{description:"Spellvoid",expanded:['k:"spellvoid"'],filters:{keywords:[G.Keyword.Spellvoid]},isCardProperty:!1,shorthands:["SV"]},{description:"Tap",expanded:["{t}"],filters:{functionalText:"{t}"},isCardProperty:!0,shorthands:["Tap"]},{description:"Untap",expanded:["{u}"],filters:{functionalText:"{u}"},isCardProperty:!0,shorthands:["Untap"]}],tr=rr.filter(({shorthands:e})=>e.some(r=>r.includes(" "))).map(e=>U(V({},e),{shorthands:e.shorthands.filter(r=>r.includes(" ")).map(r=>r.toLowerCase()).sort((r,t)=>t.length-r.length)})),ar=rr.filter(({shorthands:e})=>e.some(r=>!r.includes(" "))).map(e=>U(V({},e),{shorthands:e.shorthands.filter(r=>!r.includes(" ")).map(r=>r.toLowerCase()).sort((r,t)=>t.length-r.length)}));var Ot=[">=",">","<=","<"],Nt=["!","-"],Ws={property:"arcane",specialProperty:"specialArcane",isNumber:!0,partialMatch:!0},sr={property:"artists",isArray:!0,partialMatch:!0},ft={property:"bannedFormats",isArray:!0,partialMatch:!0},gt={property:"bonds",isArray:!0},$s={property:"n/a"},yt={property:"classes",isArray:!0,partialMatch:!0},mt={property:"cost",specialProperty:"specialCost",isNumber:!0,partialMatch:!0},fe={property:"defense",specialProperty:"specialDefense",isNumber:!0},kt={property:"flows",isArray:!0},vt={nestedProperty:"foiling",property:"printings",isArray:!0},bt={property:"fusions",isArray:!0},Dt={property:"intellect",isNumber:!0},At={property:"keywords",isArray:!0},ir={property:"n/a",isMeta:!0},Ct={property:"life",specialProperty:"specialLife",isNumber:!0},Bt={property:"meta",isArray:!0},Mt={property:"name",isString:!0,partialMatch:!0},nr={property:"pitch",isNumber:!0},xe={property:"power",specialProperty:"specialPower",isNumber:!0},Ft={property:"n/a",isMeta:!0},js={property:"n/a"},Vs={property:"n/a"},Et={property:"sets",isArray:!0,partialMatch:!0},Re={property:"specializations",isArray:!0,partialMatch:!0},Tt={property:"subtypes",isArray:!0},St={property:"types",isArray:!0},xt={property:"talents",isArray:!0},Us={property:"functionalText",isString:!0,partialMatch:!0},Js={property:"traits",isArray:!0,partialMatch:!0},Ys={property:"typeText",isString:!0,partialMatch:!0},Le={nestedProperty:"treatments",property:"printings",isArray:!0,isNestedPropertyArray:!0},Pe={arcane:Ws,a:sr,artist:sr,art:sr,attack:xe,b:fe,block:fe,banned:ft,bond:gt,bonds:gt,c:yt,class:yt,chain:$s,co:mt,cost:mt,color:nr,d:fe,def:fe,defense:fe,flow:kt,flows:kt,f:bt,fusion:bt,foil:vt,foiling:vt,i:Dt,intellect:Dt,is:Bt,k:At,keyword:At,l:ir,legal:ir,hero:ir,li:Ct,life:Ct,meta:Bt,n:Mt,name:Mt,p:nr,pitch:nr,pwr:xe,pow:xe,power:xe,r:Ft,rarity:Ft,referencedby:js,references:Vs,rf:ft,s:Et,set:Et,sp:Re,spec:Re,specialization:Re,specializations:Re,st:Tt,subtype:Tt,t:St,type:St,tal:xt,talent:xt,text:Us,trait:Js,treat:Le,treatment:Le,var:Le,variation:Le,x:Ys},Xs=[{text:m.Release.ClassicBattlesRhinarDorinthea.toLowerCase(),override:m.Release.ClassicBattlesRhinarDorinthea.toLowerCase().replaceAll(E,"")}],Zs=e=>{var s;let r=[],t=e.replaceAll("\u201D",'"');for(let{text:i,override:o}of Xs)t.includes(i)&&(t=t.replace(i,o));if((s=Me(t))==null?void 0:s.card)r.push(t);else{let i=t.split(/[ ]+/),o="",n=0;for(let l of i)n===2&&(r.push(o.trim().replaceAll('"',"")),o="",n=0),n<2&&l.split('"').length===2?(o+=" "+l,n++):n===0&&o===""?r.push(l):n===1&&(o+=" "+l);n===2&&(r.push(o.trim().replaceAll('"',"")),o="",n=0)}return r},zi=[m.Hero.Briar,m.Hero.Brutus,m.Hero.Emperor,m.Hero.Prism,m.Hero.Shiyana,m.Hero.Taylor,m.Hero.Yorick],cr=(e,r,t=[])=>{var v;let a=e.trim().toLowerCase();for(let{expanded:k,shorthands:b}of tr)for(let y of b)if(a.includes(y)){a=a.replace(y,k.join(" "));break}for(let[k,b]of Object.entries(m.setToSetIdentifierMappings))a.includes(k.toLowerCase())&&(a=a.replace(k.toLowerCase(),b[0]));let s=Zs(a),i=[];for(let k of s){let b=ar.find(({shorthands:y})=>y.includes(k));b&&!b.isCardProperty?i.push(...b.expanded):i.push(k)}let o=[],n=[],l=[],d=[],c=!1,h=[],u=[],p=[],g={isClash:!1};for(let k of i)if(oi(k)){let[b,y]=k.split(":"),{modifier:A,values:f,isAnd:B,isOr:T}=ii(y),{filterKey:C,isExcluded:x,isOptional:L,isMeta:M}=ni(b);if(M){if(["rarity","r"].includes(C)){let F=si(f);x||(h=[...F]),f=F.map(R=>R.toLowerCase())}["legal","l","hero"].includes(C)&&y.includes("clash")&&(g.isClash=!0),o.push(...qe(x,L,C,f,A,t))}else{if(["chain"].includes(C)){let F=P=>P.name.toLowerCase().replaceAll(E,""),R=f.map(P=>dr(P,r)).filter(P=>!!P).map(F),w=new Set(R);C="name",T=!0;let N=20,W=0,S=P=>{if(!P.types.includes(m.Type.Hero)){let z=F(P);w.add(z),R.includes(z)||R.push(z)}};for(let P of R){if(W>N)break;let{referencedBy:z,references:X}=Ie(P,r);X.forEach(S),W===0&&z.forEach(S),W++}f=Array.from(w)}else if(["referencedby","references"].includes(C)){let F=C,R=[...f].filter(w=>!!w);f=[],C="name",T=!0;for(let w of R){let{referencedBy:N,references:W}=Ie(w,r);["referencedby"].includes(F)?f.push(...W.map(({name:S})=>S.toLowerCase().replaceAll(E,""))):["references"].includes(F)&&f.push(...N.map(({name:S})=>S.toLowerCase().replaceAll(E,"")))}}else if(["art","artist"].includes(C))n=f;else if(["is","is","meta"].includes(C)){let F=ri(f);f=F.map(R=>R.toLowerCase().replaceAll(E,"")),F.includes(m.Meta.Expansion)&&!x&&(c=!0)}else["foiling","foil"].includes(C)?(d=ti(f),f=d.map(F=>F.toLowerCase())):["treat","treatment","var","variation"].includes(C)?(p=ai(f),f=p.map(F=>F.toLowerCase())):["set","s"].includes(C)?(u=Qs(f),f=u.map(F=>F.toLowerCase().replaceAll(E,""))):["pitch","p","color"].includes(C)&&(f=ei(f));Pe[C]&&o.push({filterToPropertyMapping:Pe[C],values:f,isAnd:B,isOr:T,modifier:A,isExcluded:x,isOptional:L})}}else if(k){let b=(v=Me(k))==null?void 0:v.card,y=er(k);b?l.push(`"${b.toLowerCase().replace(E,"")}"`):y&&y.length>0?o.push(...y):l.push(k.replace(E,""))}return{appliedFilters:o,attributes:{artists:n,foilings:d,isExpansionSlot:c,rarities:h,releases:u,treatments:p},keywords:l,specialConditions:g}},Qs=e=>{let r=[];for(let t of e)r.push(...qs(t));return r},qs=e=>{let r=[],t=Object.values(m.Release).find(a=>a.toLowerCase().replaceAll(E,"")===e);if(t&&r.push(t),r.length===0){let a=m.setIdentifierToSetMappings[e];a&&r.push(a)}if(r.length===0){let a=Object.values(m.Release).filter(s=>s.toLowerCase().includes(e));a.length>0&&r.push(...a)}return r},or={blue:3,yellow:2,red:1,white:0},ei=e=>{let r=[];for(let t of e)or[t]||or[t]===0?r.push(or[t].toString()):r.push(t);return r},Rt={exp:m.Meta.Expansion,expansion:m.Meta.Expansion,expansionSlot:m.Meta.Expansion,rainbow:m.Meta.Rainbow},ri=e=>{let r=[];for(let t of e)Rt[t]&&r.push(Rt[t]);return r},Lt={r:m.Foiling.R,rf:m.Foiling.R,rainbow:m.Foiling.R,c:m.Foiling.C,cf:m.Foiling.C,cold:m.Foiling.C,g:m.Foiling.G,gf:m.Foiling.G,gold:m.Foiling.G},ti=e=>{let r=[];for(let t of e)Lt[t]&&r.push(Lt[t]);return r},Pt=U(V({},Object.values(m.Treatment).reduce((e,r)=>(e[r.toLowerCase()]=r,e),{})),{aa:m.Treatment.AA,alt:m.Treatment.AA,"alt art":m.Treatment.AA,ab:m.Treatment.AB,"alt border":m.Treatment.AB,at:m.Treatment.AT,"alt text":m.Treatment.AT,ea:m.Treatment.EA,extended:m.Treatment.EA,"extended art":m.Treatment.EA,fa:m.Treatment.FA,full:m.Treatment.FA,"full art":m.Treatment.FA}),ai=e=>{let r=[];for(let t of e)Pt[t]?r.push(Pt[t]):m.Treatment[t.toUpperCase()]&&r.push(m.Treatment[t.toUpperCase()]);return r},lr={b:m.Rarity.Basic,c:m.Rarity.Common,f:m.Rarity.Fabled,l:m.Rarity.Legendary,m:m.Rarity.Majestic,p:m.Rarity.Promo,r:m.Rarity.Rare,s:m.Rarity.SuperRare,t:m.Rarity.Token,v:m.Rarity.Marvel},si=e=>{let r=[];for(let t of e)lr[t]?r.push(lr[t]):r.push(t);return r},ii=e=>{let r=[],t,a,s=Ot.find(i=>e.includes(i));if(s){let[,i]=e.split(s);It(i)?(t=!0,r.push(...i.trim().split("+").map(o=>o.replace(E,"")))):wt(i)?(a=!0,r.push(...i.trim().split(",").map(o=>o.replace(E,"")))):r.push(i.trim().replace(E,""))}else It(e)?(t=!0,r.push(...e.trim().split("+").map(i=>i.replace(E,"")))):wt(e)?(a=!0,r.push(...e.trim().split(",").map(i=>i.replace(E,"")))):e.startsWith('"')&&e.endsWith('"')?r.push(e.trim().replaceAll('"',"").replace(E,"")):r.push(e.trim().replace(E,""));return{modifier:s,values:r,isAnd:t,isOr:a}},ni=e=>{let r=li(e);if(r){let[,t]=e.split(r);return{filterKey:t,isExcluded:!0,isOptional:!1,isMeta:zt(t)}}else return{filterKey:e,isExcluded:!1,isOptional:!1,isMeta:zt(e)}},oi=e=>e.indexOf(":")>=0,It=e=>e.indexOf("+")>=0,wt=e=>e.indexOf(",")>=0,zt=e=>{var r;return!!((r=Pe[e])!=null&&r.isMeta)},li=e=>{var r;return(r=Nt.find(t=>e.includes(t)))==null?void 0:r.slice(0,1)};var I=Q(ee()),Ht={artists:["Hoodwill"],cardIdentifier:"fangs-a-lot-blue",classes:[I.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:[I.Hero.Kayo,I.Hero.Levia,I.Hero.Rhinar],printings:[{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000",print:"FNG000",rarity:I.Rarity.Rare,set:I.Release.Promos},{artists:["Hoodwill"],identifier:"FNG000",image:"FNG000_Marvel",print:`FNG000-${I.Treatment.FA}`,rarity:I.Rarity.Marvel,set:I.Release.Promos,treatment:I.Treatment.FA}],name:"Fangs A Lot",rarities:[I.Rarity.Rare,I.Rarity.Marvel],rarity:I.Rarity.Rare,sets:[I.Release.Promos],setIdentifiers:["FNG000"],specialImage:"FNG000_Marvel",subtypes:[I.Subtype.Attack],types:[I.Type.Action],typeText:"Generic Action - Attack"},_t=[{keyword:Ht.name.toLowerCase(),card:Ht}];var dr=(e,r)=>{let t=r.find(a=>ur(a.name)===e);return t||(t=r.find(a=>ur(a.name).includes(e))),t},ur=e=>ge(e.toLowerCase().trim().replace(E,"")),ge=e=>e.normalize("NFD").replace(new RegExp("\\p{Diacritic}","gu"),"");var pr=class{constructor(r,t=[],a=!1){this.log=(r,...t)=>{this.debug&&console.log(r,...t)};this.search=(r,t)=>{let a,{appliedFilters:s,attributes:i,keywords:o}=cr(r,this.cards,this.additionalHeroes),n=o.join(" "),l=t?_t.filter(y=>y.keyword===n):[];if(l.length>0?a=l.map(({card:y})=>y):o.length?a=this.fuse.search(n).map(y=>y.item):a=[...this.cards],s.length&&(a=a.filter(y=>y&&Wt(y,s))),o.length===0){let y="";if(i.releases.length===1)try{let A=i.releases[0];y=Gt.setToSetIdentifierMappings[A][0].toUpperCase()}catch(A){console.error("Error getting set identifier from search",A)}y?a.sort((A,f)=>{var C,x;let B=(C=A.setIdentifiers.find(L=>L.includes(y)))==null?void 0:C.replace(y,""),T=(x=f.setIdentifiers.find(L=>L.includes(y)))==null?void 0:x.replace(y,"");return B&&T?B.localeCompare(T):-1}):a.sort((A,f)=>A.name===f.name?`${A.pitch}`.localeCompare(`${f.pitch}`):A.name.localeCompare(f.name))}else{let y=[],A=[],f=o.map(B=>B.toLowerCase().replace(E,"")).join(" ");for(let B of a)B.name.toLowerCase().replace(E,"")===f?y.push(B):A.push(B);a=[...y,...A]}let d,{artists:c,isExpansionSlot:h,foilings:u,rarities:p,releases:g,treatments:v}=i;(c.length>0||h||u.length>0||p.length>0||g.length>0||v.length>0)&&(d=a.map(y=>{let A=y.printings.filter(f=>{let B=!!f.image,T=c.length===0||c.some(w=>f.artists.find(N=>N.replace(E,"").toLowerCase().includes(w))),C=(h||void 0)===f.isExpansionSlot,x=u.length===0||u.includes(f.foiling),L=p.length===0||p.includes(f.rarity),M=g.length===0||g.includes(f.set),F=v.length===0||v.includes(f.treatment);return B&&T&&C&&x&&L&&M&&F});return U(V({},y),{matchingPrintings:A})}));let b=(d==null?void 0:d.length)>0?d:a;return{appliedFilters:s,attributes:i,keywords:o,searchResults:b}};let s={getFn:(i,o)=>{let n=hr.default.config.getFn(i,o);return n&&(Array.isArray(n)?n.map(l=>ge(l.replace(E,""))):ge(n).replace(E,""))},ignoreLocation:!0,includeScore:!0,keys:[{name:"name",weight:10},{name:"functionalText",weight:6},{name:"shorthands",weight:4},{name:"setIdentifiers",weight:2},{name:"traits",weight:4},{name:"typeText",weight:6}],threshold:.15,useExtendedSearch:!0};this.additionalHeroes=t,this.cards=[...r],this.debug=a,this.fuse=new hr.default([...r],s)}},Kt=pr,Wt=(e,r)=>{let t=!0,a=!1;for(let s of r){let i=s.isOptional,{isNumber:o,isString:n,isArray:l,isBoolean:d}=s.filterToPropertyMapping;if(o){let c=ci(e,s);i?c&&(a=!0):t=t&&c}else if(n){let c=di(e,s);i?c&&(a=!0):t=t&&c}else if(l){let c=ui(e,s,r);i?c&&(a=!0):t=t&&c}else if(d){let c=hi(e,s);i?c&&(a=!0):t=t&&c}}return t},ci=(e,r)=>{var t;if(we(r,e)){let{values:a,modifier:s,isExcluded:i,filterToPropertyMapping:{partialMatch:o}}=r,n=fr(e,r);if(n!=null&&!isNaN(n))if(n=parseInt(n),s)switch(s){case">=":let l=a==null?void 0:a.some(u=>n>=parseInt(u));return i?!l:l;case">":let d=a==null?void 0:a.some(u=>n>parseInt(u));return i?!d:d;case"<=":let c=a==null?void 0:a.some(u=>n<=parseInt(u));return i?!c:c;case"<":let h=a==null?void 0:a.some(u=>n<parseInt(u));return i?!h:h;default:return!1}else{let l=a==null?void 0:a.some(d=>n===parseInt(d));return i?!l:l}else{let l=(t=fi(e,r))==null?void 0:t.toLowerCase(),d=o?a==null?void 0:a.some(c=>l==null?void 0:l.includes(c)):a==null?void 0:a.some(c=>l===c);return i?!d:d}}else return!0},di=(e,r)=>{var t;if(we(r,e)){let{values:a,isAnd:s,isExcluded:i,filterToPropertyMapping:{partialMatch:o}}=r,n=(t=fr(e,r))==null?void 0:t.replaceAll(E,"");if(o){let l=s?a==null?void 0:a.every(d=>n==null?void 0:n.toLowerCase().includes(d)):a==null?void 0:a.some(d=>n==null?void 0:n.toLowerCase().includes(d));return i?!l:l}else{let l=s?a==null?void 0:a.every(d=>(n==null?void 0:n.toLowerCase())===d):a==null?void 0:a.some(d=>(n==null?void 0:n.toLowerCase())===d);return i?!l:l}}else return!0},ui=(e,r,t)=>{if(we(r,e)){let{values:a,isAnd:s,isExcluded:i,filterToPropertyMapping:{partialMatch:o}}=r,n=pi(e,r,t).map(l=>l==null?void 0:l.replaceAll(E,""));if(o){let l=s?a.every(c=>n==null?void 0:n.some(h=>h==null?void 0:h.toLowerCase().includes(c))):a.some(c=>n==null?void 0:n.some(h=>h==null?void 0:h.toLowerCase().includes(c))),d=n.length===0;return i?!l||d:l}else{let l=s?a.every(d=>n==null?void 0:n.some(c=>(c==null?void 0:c.toLowerCase())===d)):a.some(d=>n==null?void 0:n.some(c=>(c==null?void 0:c.toLowerCase())===d));return i?!l:l}}else return!0},hi=(e,r)=>{if(we(r,e)){let{isExcluded:t}=r,a=fr(e,r);return t?!a:a}else return!0},fr=(e,r)=>{let{filterToPropertyMapping:t}=r;return e[t.property]},pi=(e,r,t)=>{let{filterToPropertyMapping:{isNestedPropertyArray:a,nestedProperty:s,property:i}}=r,o=e[i]||[],n=[],l=Object.keys(e.legalOverrides||{}).length>0,d=r.filterToPropertyMapping.property==="legalHeroes",c=t.find(({filterToPropertyMapping:u})=>u.property==="legalFormats");if(l&&d&&!!c){let u=new Set;for(let{format:p,heroes:g}of e.legalOverrides||[])if(c.values.includes(p.toLowerCase()))for(let v of g)u.add(v);n=Array.from(u)}if(n.length===0)if(s){let u=new Set;for(let p of o)if(a){let g=p[s]||[];for(let v of g)u.add(v)}else{let g=p[s];g&&u.add(g)}n=Array.from(u)}else n=o;return n},fi=(e,r)=>{let{filterToPropertyMapping:t}=r;return e[t.specialProperty]},we=({cardTypes:e},{types:r,subtypes:t})=>!e||(e==null?void 0:e.some(a=>r.map(s=>s.toLowerCase()).includes(a.toLowerCase())||t.map(s=>s.toLowerCase()).includes(a.toLowerCase())));var ue=Q(ee());var ye=Q(ee()),gi={"Dawnblade, Resplendent":"Dawnblade"},$t=e=>gi[e.name]||e.name,jt=e=>{var r;return(r=e.functionalText)==null?void 0:r.replaceAll(e.name,"")},Ie=(e,r)=>{let t=r.find(a=>a.name.toLowerCase().replace(E,"")===e);return t||(t=r.find(a=>a.name.toLowerCase().replace(E,"").includes(e))),gr(t,r)},gr=(e,r)=>{var i,o,n,l,d;let t=[],a=[],s=[];if(e){let c=[],h=[],u=$t(e);for(let p of r){let g=$t(p),v=u===g,k=e.cardIdentifier!==p.cardIdentifier,b=e.pitch!==p.pitch;if(v&&k&&b)t.push(p);else if(!v){let y=e.name==="Seismic Surge",A=(i=p.keywords)==null?void 0:i.includes(ye.Keyword.Heave),f=y&&A,B=e.name==="Marked",T=(o=p.keywords)==null?void 0:o.includes(ye.Keyword.Mark),C=B&&T,x=jt(p),L=(x==null?void 0:x.includes(u))||((n=e.traits)==null?void 0:n.some(X=>x==null?void 0:x.includes(X))),M=jt(e);(L||f||C)&&c.push(p);let F=p.traits||[],R=(M==null?void 0:M.includes(g))||F.some(X=>M==null?void 0:M.includes(X)),w=p.name==="Seismic Surge",N=(l=e.keywords)==null?void 0:l.includes(ye.Keyword.Heave),W=w&&N,S=p.name==="Marked",P=(d=e.keywords)==null?void 0:d.includes(ye.Keyword.Mark);(R||W||S&&P)&&h.push(p)}}for(let p of c)a.push(p);for(let p of h){let g=p.name;u!==g&&!h.some(v=>{let k=v.name;return k!==g&&(k==null?void 0:k.includes(g))})&&s.push(p)}}return{otherPitches:t,referencedBy:a,references:s}},yi=["cash-in-yellow"],mi={[ue.Hero.Crackni]:{traits:[ue.Trait.AgentOfChaos]},[ue.Hero.Maxx]:{tokens:["hyper-driver"]}},ki=(e,r,t)=>{var s,i;let a=new Set;for(let o of e.filter(({cardIdentifier:n})=>!yi.includes(n))){let{references:n}=gr(o,r);for(let l of n.filter(d=>{let c=d.name==="Hyper Driver",h=t===ue.Hero.Maxx;return!c||h}))a.add(l)}if(t){let o=mi[t];if(o){if(o.cards)for(let n of e)(s=o.cards)!=null&&s.includes(n.cardIdentifier)&&a.add(n);if(o.tokens)for(let n of r)(i=o.tokens)!=null&&i.includes(n.cardIdentifier)&&a.add(n)}}return Array.from(a)};0&&(module.exports={FilterProperty,PUNCTUATION,RARITY_VALUES_MAPPING,abbreviations,availableExclusions,availableModifiers,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.6.
|
|
4
|
+
"version": "3.6.113",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
@@ -13,11 +13,11 @@
|
|
|
13
13
|
"full": "npm run build"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@flesh-and-blood/types": "^3.6.
|
|
16
|
+
"@flesh-and-blood/types": "^3.6.113",
|
|
17
17
|
"fuse.js": "^6.6.2"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
|
-
"@flesh-and-blood/cards": "^3.6.
|
|
20
|
+
"@flesh-and-blood/cards": "^3.6.113",
|
|
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": "7b8542a839c223b9e175641a166b5a43153d3090"
|
|
51
51
|
}
|