Status: backlog Priority: P0 Created: 2026-02-22 Owner: AI Depends-on: (none) Phase: 9 — Namespace Consolidation
form.cljc has satellite files (form_chart.cljc, form_expressions.cljc, form_machines.cljc) that don't need to be separate. The chart and expressions are tightly coupled to the form public API. Additionally, routing.cljc contains form-route-state, edit!, and create! which belong in the form namespace.
form_chart.cljc content into form.cljcform_expressions.cljc content into form.cljcform_machines.cljc content into form.cljcform-route-state, edit!, create! from routing.cljc into form.cljcform-fn-registry atom, register-form-fn!, resolve-form-fn, and all register-form-fn! calls. Expression functions call form functions directly via declare forward refs.form.cljc (they're used by server_paginated_report.cljc, incrementally_loaded_report.cljc, and test files)all-keys — identical in form.cljc and form_expressions.cljc, keep oneupdate-tree* — identical, keep the public one from form.cljcsubform-options / subform-ui — private helpers in form_expressions.cljc conflict with public fns in form.cljc. Rename expression-private versions (e.g., expr-subform-options / expr-subform-ui) or inline themdeclare for valid?, default-state, mark-fields-complete*, optional-fields, form-key->attribute, etc.)form_expressions.cljc)form_expressions.cljc)form-chart (from form_chart.cljc)form_machines.cljc)form-route-state, edit!, create! (from routing.cljc)Add (from satellite files):
[com.fulcrologic.statecharts.data-model.operations :as ops][com.fulcrologic.statecharts.integration.fulcro.operations :as fops][com.fulcrologic.statecharts.chart :refer [statechart]][com.fulcrologic.statecharts.convenience :refer [handle on]][com.fulcrologic.statecharts.elements :refer [data-model final on-entry script state transition entry-fn exit-fn]]Remove:
[com.fulcrologic.rad.statechart.form-chart :as form-chart][com.fulcrologic.rad.statechart.form-expressions :as fex]form-chart/form-chart → form-chart (local def)fex/* → direct calls (same file now)`form-chart/form-chart → `form-chart (resolves to com.fulcrologic.rad.statechart.form/form-chart)src/main/com/fulcrologic/rad/statechart/form.cljc — primary targetsrc/main/com/fulcrologic/rad/statechart/form_chart.cljc — absorbed, then deletedsrc/main/com/fulcrologic/rad/statechart/form_expressions.cljc — absorbed, then deletedsrc/main/com/fulcrologic/rad/statechart/form_machines.cljc — absorbed, then deletedform-chart, form-expressions, form-machines content is in form.cljcform-route-state, edit!, create! are in form.cljcrequiring-resolve or form-fn-registry remainsform_statechart_spec.cljc passes after updating requires (fc/ → form/, fex/ → form/)form_spec.cljc still passesCan you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |