feat(useFavicon): add temporary option to restore favicon on unmount#367
Open
udohjeremiah wants to merge 1 commit intouidotdev:mainfrom
Open
feat(useFavicon): add temporary option to restore favicon on unmount#367udohjeremiah wants to merge 1 commit intouidotdev:mainfrom
udohjeremiah wants to merge 1 commit intouidotdev:mainfrom
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Feature Request: Support temporary favicon with cleanup on unmount
Current behavior
useFaviconsets the favicon but never restores the original when the component unmounts, making it impossible to use it temporarily on a specific page or component.Proposed API
Add an optional
optionsparameter with atemporaryflag:Notes on implementation
optionsis stored in a ref (following the same pattern asuseScript) so changes to the options object don't cause the effect to re-run unnecessarily.link[rel~="icon"]exists in the document (e.g. frameworks that only use apreloadhint instead of an icon link), the hook creates one and removes it on cleanup rather than restoring an emptyhref. This handles environments like TanStack Start correctly.hrefis restored as expected.Use case
Setting a page-specific favicon that should revert to the app's default favicon when navigating away.