Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Idea: enhance sveltekit redirect #4

Closed
garlandcrow opened this issue Oct 13, 2022 · 6 comments
Closed

Idea: enhance sveltekit redirect #4

garlandcrow opened this issue Oct 13, 2022 · 6 comments

Comments

@garlandcrow
Copy link

Was looking around for prior art on doing flash messages in sveltekit and found this project. I was thinking it might be good to stick to the sveltekit style throw redirect(...) and maybe (not sure your exact implementation so maybe not possible) you could wrap the sveltekit redirect and add your functionality there so then i can do something like this.

import { redirect }  "sveltekit-flash-message/server"`

throw redirect(302, "/dashboard", {type: "success", message: "It worked"})
@ciscoheat
Copy link
Owner

Thank you, that's an excellent idea, will implement that for the next release. :)

@ciscoheat
Copy link
Owner

Version 0.8.0 is released now, doing exactly this. It simplified the API quite a bit, so thank you again! Let me know if you have more suggestions. I would like the following signatures:

// For compatibility with sveltekit/redirect
redirect(303, '/', { message }, event)

// Redirecting to event.url with 303 status.
redirect({ message }, event)

// Redirecting to '/' with 303 status
redirect('/' , { message }, event)

But all the parameter combinations are complicated to combine correctly, so I settled with redirect303 for now. Any ideas?

@ciscoheat
Copy link
Owner

I managed to fix it in version 0.9.1, just released.

@garlandcrow
Copy link
Author

Just saw your updates, nice work! Just added to my project today so will feedback/make some PRs if I notice anything :)

@garlandcrow
Copy link
Author

I played with it today and using it now. I like it, does just what I needed. I ended up using $page.data.flash on the page instead of importing and wrapping page with new Flash(page) and using like a store. Maybe its cause I don't have a use case like that, and I just use flash as a simple message forwarder. Thanks!

@ciscoheat
Copy link
Owner

Great to hear. :) Just for curiosity, does your $page.data.flash usage mean that you don't have any client-side functionality, navigation or anything that may update/modify the flash message on the client?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants