Skip to content

Comments

feat: sync with local plugin status in store#733

Merged
TrainDoctor merged 6 commits intoSteamDeckHomebrew:mainfrom
alvaro-cuesta:feat/store-qol
Jan 2, 2025
Merged

feat: sync with local plugin status in store#733
TrainDoctor merged 6 commits intoSteamDeckHomebrew:mainfrom
alvaro-cuesta:feat/store-qol

Conversation

@alvaro-cuesta
Copy link
Contributor

Please tick as appropriate:

  • I have tested this code on a steam deck or on a PC
  • My changes generate no new errors/warnings
  • This is a bugfix/hotfix
  • This is a new feature

Description

This fixes issue: #360

Adds some quality-of-life changes to the plugin store browser:

  • Add ✓ icon to currently installed plugin version in version selector
  • Change install button label depending on the install type that the button would trigger
  • Adds icon to install button for clarity

The goal is to make it clear to the user what the current state of the installed plugin is, and what would be the impact of installing the selected version.

Screenshot

Adds some QoL changes to the plugin store browser:

- Add ✓ icon to currently installed plugin version in version selector
- Change install button label depending on the install type that the
  button would trigger
- Adds icon to install button for clarity

The goal is to make it clear to the user what the current state of the
installed plugin is, and what would be the impact of installing the
selected version.

Resolves SteamDeckHomebrew#360
@TrainDoctor TrainDoctor requested review from a team December 24, 2024 15:40
@TrainDoctor TrainDoctor added enhancement New feature or request javascript Pull requests that update Javascript code python Pull requests that update Python code labels Dec 24, 2024
@TrainDoctor TrainDoctor requested review from a team and AAGaming00 and removed request for a team December 25, 2024 06:49
Prefer using `t(...)` instead of `TranslationHelper` since it ensures
that the translation keys are not missing in the locale files when
running the `extractext` task.

By adding comments with `t(...)` calls, `i18next-parser` will generate
the strings as if they were present as literals in the code (see
https://github.com/i18next/i18next-parser#caveats).

This does _not_ suppress the warnings (since `i18next-parser` does not
have access to TS types, so it cannot infer template literals) but it at
least makes it less likely that a translation will be missed by mistake,
have typos, etc.
Copy link
Member

@AAGaming00 AAGaming00 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code lgtm, haven't tested myself but this looks really nice

Copy link
Member

@TrainDoctor TrainDoctor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Evaluated functionality, works great. Merging to main so users can give this a whirl on pre-release.

@TrainDoctor TrainDoctor merged commit f6144f9 into SteamDeckHomebrew:main Jan 2, 2025
4 checks passed
chenx-dust pushed a commit to chenx-dust/decky-loader that referenced this pull request Dec 22, 2025
* fix: useDeckyState proper type and safety

* refactor: plugin list

Avoids unneeded re-renders. See https://react.dev/learn/you-might-not-need-an-effect#caching-expensive-calculations

* feat: sync with local plugin status in store

Adds some QoL changes to the plugin store browser:

- Add ✓ icon to currently installed plugin version in version selector
- Change install button label depending on the install type that the
  button would trigger
- Adds icon to install button for clarity

The goal is to make it clear to the user what the current state of the
installed plugin is, and what would be the impact of installing the
selected version.

Resolves SteamDeckHomebrew#360

* lint: prettier

* fix: add missing translations

* refactor: safer translation strings on install

Prefer using `t(...)` instead of `TranslationHelper` since it ensures
that the translation keys are not missing in the locale files when
running the `extractext` task.

By adding comments with `t(...)` calls, `i18next-parser` will generate
the strings as if they were present as literals in the code (see
https://github.com/i18next/i18next-parser#caveats).

This does _not_ suppress the warnings (since `i18next-parser` does not
have access to TS types, so it cannot infer template literals) but it at
least makes it less likely that a translation will be missed by mistake,
have typos, etc.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request javascript Pull requests that update Javascript code python Pull requests that update Python code

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants