Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
TGUI Minor Updates (2024 Pre-React Typescript Edition) (#12066)
* color.js: Fix alpha specification (#61324) Bitwise OR coerces to an integral value. This is fine for the rgb components as they have a domain of [0,255], but is less useful for the alpha component, which has a domain of [0,1]. This retains the safely of | while permitting colors that are neither fully opaque nor fully transparent, including NaN handling. * tgui: Add new and disambiguate old gas colors (#61381) This PR adds color mappings for new gases, and disambiguates color mappings for old gases where multiple gases used one color - many used red, or purple. Most of these have been around for a while, but were missing color mappings in interfaces. This mainly affects the HFR gas list interface. * Fixes progress bars (#61604) Co-authored-by: Watermelon914 <[email protected]> * New string ops for tgui (#68337) * initial commit * by suggestion Co-Authored-By: Aleksej Komarov <[email protected]> Co-authored-by: Aleksej Komarov <[email protected]> * Automatically insert current year for TGUI bluescreen (#72490) Title Less hassle * Renames folder for tgchat CSS styles (#73907) I think it was previously named "goon" in relation to "goonchat", but that was phased out three years ago, so it's just confusing to have a "goon" folder especially when historically those tend to refer to specialized folders meant for containing content under a non aGPL license However, everything in this folder appears to just be styles ported from goonchat when tgchat was created, which is fine, but it's just confusing since none of the stuff is licensed under anything from goon- just an odd name to my eyes. It's a much more fitting name as to what these files specifically pertain too, rather than be an arcane reference to a system that has not been used in quite a while... nothing that concerns players * Refactors some core tgui components to typescript (#74547) Mind you I am very tired while making this and it's purely a thought project (... unless?) Otherwise, title. No gameplay changes Typescript is just universally better. Even if the types are wrong, we still can get some sort of idea what the author was going for, and autocompletion :cl: refactor: Tgui's state manager is in typescript now, huzzah /:cl: --------- Co-authored-by: Jeremiah <[email protected]> * Converts core tgui to ts (#74638) Converts the remaining core tgui files into typescript Builds tests for these files Completed some todos to rewrite/refactor functions Typescript good N/A nothing player facing --------- Co-authored-by: Jeremiah <[email protected]> * Dropdown selected element highlighting (#75255) This PR makes selected elements in Dropdowns to be highlighted. Without this: ![image](https://user-images.githubusercontent.com/5000549/236760396-5eb71a23-7b3d-4a9e-98d4-6bd4dc5fe1c7.png) With this: ![image](https://user-images.githubusercontent.com/5000549/236758675-b2ab90a7-0482-492e-b911-9e59f827f6b8.png) It's convenient to have this kind of selection indication, especially in long lists. :cl: qol: Made selected elements highlighted in TGUI Dropdowns /:cl: * Fix: Fixed dropdown buttons empty selected case (#75309) ## About The Pull Request If dropdown not receive `selected` prop, buttons will be change value to first(when press next) or last element(when press back) ## Changelog :cl: fix: Fixed dropdown buttons empty selected case /:cl: * TGUI timer.ts and keys.ts port (partial tgstation/tgstation#75431) * Prettier * JSX Conversions * Fix Debug Stories not picking up JSX * Bump a bunch of packages (soft port of tgstation/tgstation#79895) * Fix ESLint * Switch from Terser to ESBuild for minification (tgstation/tgstation#79916) * Drops ie8 support (#79974) <!-- Write **BELOW** The Headers and **ABOVE** The comments else it may not be viewable. --> <!-- You can view Contributing.MD for a detailed description of the pull request process. --> We currently transpile TGUI down into ie8. This was primarily for Linux compatibility, which, to my understanding, hasn't worked for quite some time. As we approach 2024, consider that ie8 is nearly 15 years old and had its support ended in 2016. I believe sunsetting ie8 is in order. >I have no objections to remove IE8 support and fully target IE11. tgstation/tgstation#79943 (comment) <!-- Describe The Pull Request. Please be sure every change is documented or this can delay review and even discourage maintainers from merging your PR! --> - Probably improves performance to some degree, you're only as slow as your weakest link. - Reduced maintenance burden <!-- Argue for the merits of your changes and how they benefit the game, especially if they are controversial and/or far reaching. If you can't actually explain WHY what you are doing will improve the game, then it probably isn't good for the game in the first place. --> <!-- If your PR modifies aspects of the game that can be concretely observed by players or admins you should add a changelog. If your change does NOT meet this description, remove this section. Be sure to properly mark your PRs to prevent unnecessary GBP loss. You can read up on GBP and it's effects on PRs in the tgstation guides for contributors. Please note that maintainers freely reserve the right to remove and add tags should they deem it appropriate. You can attempt to finagle the system all you want, but it's best to shoot for clear communication right off the bat. --> N/A if they can even see this message it doesn't affect them <!-- Both 🆑's are required for the changelog to work! You can put your name to the right of the first 🆑 if you want to overwrite your GitHub username as author ingame. --> <!-- You can use multiple of the same prefix (they're only used for the icon ingame) and delete the unneeded ones. Despite some of the tags, changelogs should generally represent how a player might be affected by the changes rather than a summary of the PR's contents. --> * Support for newer browsers (my own implementation of tgstation/tgstation#79244) * Fix Typescript errors * Prettier --------- Co-authored-by: esainane <[email protected]> Co-authored-by: Watermelon914 <[email protected]> Co-authored-by: Watermelon914 <[email protected]> Co-authored-by: Jeremiah <[email protected]> Co-authored-by: Aleksej Komarov <[email protected]> Co-authored-by: Zephyr <[email protected]> Co-authored-by: san7890 <[email protected]> Co-authored-by: Jeremiah <[email protected]> Co-authored-by: Serge K Lebedev <[email protected]> Co-authored-by: KoJIT2009 <[email protected]>
- Loading branch information