posit-dev / posit-dev/shinyreact
First-class API for user-registered `useShinyInput` input handlers
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 14
- Forks
- 3
- Avg merge
- 9h 12m
- Merged PRs (30d)
- 74
Description
As of #124, every untyped useShinyInput value is routed through shinyreact's built-in shinyreact.default handler (shinyreact.asis available opt-in), so values flow through Shiny's server-side input-handler dispatch. Still open: a first-class way for app authors to register their own per-id handlers to validate/coerce/deny incoming values (today they must call shiny.input_handler.input_handlers.add(...) and set type= themselves), and a way to handle the action button's ignore_init behavior at the input layer instead of @reactive.event(ignore_init=True) at each call site.
Note: this may naturally fall away when UI is expressed with component classes.
Filed from the retired docs/todos.md.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the existing useShinyInput call sites and the shiny.input_handler.input_handlers.add(...) path described in the issue. Determine how per-id registration and action-button ignore_init should fit the current input-handler dispatch, and treat both capabilities as done only when app authors no longer need the current manual workarounds.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, react
- Domain
- api, backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100