* battle-dex-search.ts: Fix natdex OMs pulling from SV OMs
* Fix Teambuilder Support For OMs
* National Dex OMs merging the rulesets for their SV counterparts
* Bans via required abilities and items never being checked
* Bans via required abilities not being implemented properly
* mega rayquaza clause being wastefully checked over and over again
* Tables in natdex now omit the 'natdex' part of the format to be consistent with battle-dex-search.ts
* Synced meta tables in build-indexes and battle-dex-search.ts
* Apply suggestions from code review
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
Previously, compound words (for dex searching) were hardcoded into
`build-indexes`. This moves them to server's data/aliases, where it
should be easier for people to see when they're updating aliases.
- Fix Rooms state when pressing Enter after searching
- Fix (workaround, but still) opening popups on testclient
- Fix team menu in challenge/search
- Change "Preact Alpha" to "Preact Beta"
- Support side servers
Teambuilder
- Fix Upload button and teambuilding links leaking through focus editor
- Use `inputmode="numeric"` for better number keyboard in phones
- You can't type `+` or `-` on EVs on phones, but oh well, the Nature
dropdown is good enough. I think it's worth it for easier EV inputs.
Trivial
- Align main menu battle search labels to the left
- Fix flicker when searching Rooms
- Hide "Open battles in right panel" option when it doesn't do anything
- Get rid of PSTeambuilder.*packTeam/export* in favor of Teams
Minor
- Light mode scrollbar in line with dark mode
- OS default scrollbars all look ugly for some reason, unless you use
macOS's hidden scrollbars, which are nice except they're hidden.
- Add Aurastic to credits
- Fix subtle notifications
- Fix "Copy" button and HTML popups
- These are both for the replay upload popup.
- Fix escaping in teambuilder tables
- They're escaped in Preact but raw HTML in old client, so using
Unicode make them work correctly in both.
- Fix a weird issue where history.replaceState was being called too
often
- I don't know exactly why this is only recently became a problem,
but it's easy enough to fix...
Trivial
- More ARIA roles (for blind users)
- The accessibility tree looks great now.
- Fix an unnecessary closure in AvatarsPanel
- Fix non-ASCII in battle.ts
- Fix class="readmore" to work like class="details" (re: don't do
expand/collapse hover effect if hovering over a link)
- Fix resizing from one-panel to two-panel mode
- This was really just one bug in `focusRoom` left over from an old
architecture where mini-rooms could be panels in vertical tab mode.
- But I took the opportunity to refactor a bunch of panel code to be
clearer.
- Slightly redesign open team sheets
- The yellow and black "construction" message no longer needs nested
divs
Non-Preact testclients don't deal well with non-full builds anymore,
now that battledata includes data/text.js. This fixes it so that
they're usable (although no longer being able to edit battle-dex etc
without an initial full build still sucks, it's unavoidable).
- Add format chooser
- Show team name in title
- Support selecting species/item/ability/move from menu
- Clicking species/item/ability/move selects the text for easy replace
- Add Stats menu
- Add placeholder Details menu
- Add types and item icon
- "Add Pokemon" button
It's still a very long way to go, but it's starting to look properly
like the vision I have in my mind.
Minor
- Refactor
- Fix cachebuster for teambuilder CSS
- Improve teambuilder resources HTML
The main new joke is #2337, but I made a number of other tweaks.
In particular:
- Bringing back some text from AFD 2019, and adding some more
- Showing the Taunt and Chilly Reception jokes in `/afd sprites`
This finally removes the tslint dependency and switches to eslint.
There are a lot of other changes here, too, to bring the codebase up to
server standards. TSLint never had much in the way of indentation
enforcement.
Not very happy about eslint splitting itself up over 6 dependencies,
or its documentation over three websites, nor how poorly documented the
new flat config is, but I mean, eslint's gonna eslint. Customizing
would be even harder if we tried to use Biome or something. They mostly
seem to go full Prettier.
Also here are some changes to our style rules. In particular:
- Curly brackets (for objects etc) now have spaces inside them. Sorry
for the huge change. ESLint doesn't support our old style, and most
projects use Prettier style, so we might as well match them in this way.
See https://github.com/eslint-stylistic/eslint-stylistic/issues/415
- String + number concatenation is no longer allowed (except in ES3
code). We otherwise now consistently use template strings for this.
* Attempt to add teambuilder support for Gen 5 ZU
* Add teambuilder support for Gen 5 ZU
* Update play.pokemonshowdown.com/src/battle-dex-search.ts
* Update build-tools/build-indexes
* Add proper showdown filter for Gen 5 ZU
* Fix Lint issue with ZU tierset creation
---------
Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>