Skip to content

Improve formula pickers and conditional logic editing - #51

Merged
AllTerrainDeveloper merged 2 commits into
mainfrom
codex/formula-picker-conditional-editor
Sep 13, 2026
Merged

AllTerrainDeveloper merged 2 commits into
mainfrom
codex/formula-picker-conditional-editor

Conversation

@AllTerrainDeveloper

@AllTerrainDeveloper AllTerrainDeveloper commented Sep 13, 2026 •

Copy link
Copy Markdown
Owner

Form authors can now insert references by typing { and reuse complete conditions instead of rebuilding nearly identical rules. For example, copy an opinion-scale condition from another field, then change “less than 6” to “at least 6”.

  • Open a searchable value picker from merge-tag and calculation inputs, preserving the insertion point and edits across autosaves. Capture picker navigation before OpenStation desktop shortcuts so arrow keys cannot switch desktops or toggle Overview/Show Desktop. Notification previews describe references as {the value of Question label}.
  • Add a compact Conditional button to field headers. Its dialog edits a draft with Save/Cancel and a source-only Copy condition chooser. Copying includes every rule, enabled state, show/hide and all/any matching, with independent rule objects.
  • Make the bottom condition strip fully editable, including source, comparison, value, Add rule, Delete and Clear. Keep the Copy action stable on hover.
  • Use os-select for predefined answers, including choices, opinion scales, ratings, toggles, countries and manageable slider ranges. Preserve obsolete stored values visibly as disabled options. Both selectors and free-text condition inputs have a 100px minimum width.
  • Widen the form canvas by 100px, update builder documentation and rebuild all affected distributable bundles. Saved schema and runtime evaluation remain unchanged.

Validation: npm run typecheck, npm test (405 tests) and npm run build:bundles passed; node bin/package.mjs produced the plugin zip; git diff --check passed. Manually tested on Docker at localhost:8889: brace insertion, all four arrow keys and Enter with OpenStation active, preview text, copying, dialog save/cancel, inline rule editing, discrete selectors and minimum input widths. PHP is unchanged; the PR's CI runs the PHP checks.

@AllTerrainDeveloper
AllTerrainDeveloper merged commit 8a797f0 into main Sep 13, 2026
3 checks passed
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

Successfully merging this pull request may close these issues.

1 participant