Tags: relaticle/custom-fields
Tags
fix(imports): report every invalid cell instead of aborting the row o… …r silently guessing (#206) * feat(imports): add a sentinel for cells a cast cannot convert * feat(imports): parse dates and numbers against a declared format * fix(imports): report every invalid cell instead of aborting or swallowing it * test(imports): cover real imports and pin the cast contract * test(imports): cover the field-type transformer wrapper * feat(imports): default the import date convention to ISO
feat: deterministic record lookups, configurable search minimum, and … …an option-count search threshold [3.x] (#205) * feat: add selects config block for picker behavior * fix: order record lookup results deterministically * fix: make the record-select minimum search length configurable end to end * feat: only show select search above the configured option threshold * docs: document the selects config block and the search-box opt-out * perf: default record lookups to the model key instead of updated_at
fix: match record filter values against json storage regardless of ca… …rdinality (#202) Record fields always persist to json_value because RecordFieldType is declared as a multiChoice schema, but the filter branched on allow_multiple and queried string_value for single-value fields. That column is never populated, so filtering a single-value record field returned no rows. Also renders option labels as HTML. formatOptionWithAvatar() returns avatar markup, which SelectFilter escaped by default, printing the raw div in the dropdown.
fix: keep a persisted field's code stable when its name is renamed (#201 ) The name input derived `code` from `name` whenever the current code still matched the slug of the previous name. That heuristic is right while a field is being created, but on a persisted field the code is an identity rather than a label: stored values, report columns and visibility conditions all key on it, and a field cloned onto a new form version shares its code with the original. Renaming such a field therefore rewrote the code and silently severed it from its own data — the values kept the old code, and reporting saw two unrelated columns where the user expected one renamed column. Only derive the code while the field is being created. Both create actions bind no record so they are unaffected; both edit actions bind one, which is what now suppresses the rewrite. The duplicate action does not use this form and already generates its own unique code.
chore(deps): bump @hono/node-server (#189) Bumps the npm_and_yarn group with 1 update in the /docs directory: [@hono/node-server](https://github.com/honojs/node-server). Updates `@hono/node-server` from 1.19.13 to 2.0.12 - [Release notes](https://github.com/honojs/node-server/releases) - [Commits](honojs/node-server@v1.19.13...v2.0.12) --- updated-dependencies: - dependency-name: "@hono/node-server" dependency-version: 2.0.12 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
PreviousNext