You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Rework a standardized versioned format, write an RFC.
It will probably not be compatible with the current beta format.
Front-end
Field IDs should include a sequential part to make sure that no duplicate IDs are generated.
Sequential forms should prefix all IDs with an index, so that two instances of the same form can appear in a page without interference (label for attributes and radio/checkbox groups would be affected)
Add builtin basic CSS styles (should be toggleable in the backend)
Maybe consider adding themes that can be selected in the form or plugin settings
Add front-end field validation + support for back-end validation display
Back-end
Add optional back-end field validation (can be configured per form and/or per field)
AJAX form submission must support detailed validation error responses
Add automatic support for WPML (currently, the plugin can work with WPML if the mvpf-form custom post type is manually set to "translate" in the settings. However, form IDs are not automatically translated by the plugin and must be done by the user)
Consider support for Polylang too
Add a better template override system: same as woocommerce, check if the file exists in the active theme, else use the builtin one.
Additionally, add better actions and/or filters to override a specific template.
Admin UI
Rework the entire UI inside a single React app, with MobX-backed state.
Enhanced form structure editor, not based on rows but on a grid (to be rendered with CSS grids using grid-column and grid-row)
Add a breakpoint system to allow users to specify a different fields layout at specific breakpoints (reorder / resize fields and save their new rect)
Rework the field settings UI to prevent having to scroll back up when editing a field at the bottom of the form. Decouple the field data and the settings structure, so that any update doesn't depend on the saved field data and can then convert the JSON data to the newer format.
Synchronize field and form settings with the MobX state for easier settings edition (ex: conditional email based on a select field)
Hide select options value attribute from the settings editor: the value does not matter, as it's only used internally, and showing it makes the settings editor more complex than it should be. Optionally allow to edit them if the user choses so. Otherwise, generate a unique ID.
Dependent fields: set field as mandatory or not, or show/hide field depending on other field values.
This could allow to hide a select with a set of options and show another depending on a checked value. However, the grid system wouldn't allow two fields from being displayed in the same grid cell. Possible solution: Create a "dependent group" field type that would contain the two conditional select fields.
Optional "technical ID" setting to allow getting a specific field from code without relying on the auto-generated UUID or the title (which can be updated or translated by the user, breaking the code).
Notes for the v1.0 roadmap
Form structure format
Rework a standardized versioned format, write an RFC.
It will probably not be compatible with the current beta format.
Front-end
Back-end
mvpf-form
custom post type is manually set to "translate" in the settings. However, form IDs are not automatically translated by the plugin and must be done by the user)Admin UI
Rework the entire UI inside a single React app, with MobX-backed state.
Useful links
The text was updated successfully, but these errors were encountered: