feat: set prioritization by set type (#5097)

* feat: prefer 'Core' and 'Expansion' sets for prioritization

* rework set prioritization

* clean up priority enum

* formatting

* revert changes to CockatriceXml3Parser

* re-add missing null check

* remove priority fallback ternary from CardSet model

* make defaultSort logic easier to follow

* revert changes to v3 card database xsd

* remove unused invisible priority col from sets dialog

* move draft innovation and duel deck sets to secondary prio

* minor fixes

* change PriorityFallback to 1

* make priority optional in xml

* remove PriorityUndefined and set PriorityFallback to 0

* set priority when not found to PriorityOther

in case a new set type is added it's unlikey we want it sorted first,
it'll probably be a new product so it's probably best to sort it with
the funny things

* simplify sort function

---------

Co-authored-by: tooomm <tooomm@users.noreply.github.com>
Co-authored-by: ebbit1q <ebbit1q@gmail.com>
This commit is contained in:
J. Cameron McDonald 2024-12-01 18:59:00 -06:00 committed by GitHub
parent 5156495b47
commit b9ed9a6c0b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 128 additions and 36 deletions

View file

@ -15,6 +15,7 @@
<xs:element type="xs:string" name="longname" minOccurs="0" maxOccurs="1" />
<xs:element type="xs:string" name="settype" minOccurs="0" maxOccurs="1" />
<xs:element type="xs:string" name="releasedate" minOccurs="0" maxOccurs="1" />
<xs:element type="xs:integer" name="priority" minOccurs="0" maxOccurs="1"/>
</xs:all>
</xs:complexType>
<xs:complexType name="cardInSetType">