feat(spec): ActionParamSchema gains widget config — multiple/accept/maxSize (objectui#2700)#3317
Merged
os-zhuang merged 2 commits intoJul 19, 2026
Merged
Conversation
…axSize (objectui#2700) The console now renders action params through the same field-widget renderer the record form uses (objectui ADR-0059), so inline params can declare the widget config the form widgets consume: `multiple` (array value shape, mirrors FieldSchema.multiple) and the upload constraints `accept` (MIME types / extensions) + `maxSize` (bytes, positive integer) for file/image params. Field-backed params keep inheriting these from the referenced field at runtime; inline values override. Purely additive. Docs: regenerated references/ui/action.mdx; ui/actions.mdx notes that any FieldType param renders its real widget (file upload, lookup picker, richtext, ...). Changeset: @objectstack/spec minor. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Rg7oavKSUdb2KzYEEYrCHX
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
📓 Docs Drift CheckThis PR changes 1 package(s): 103 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:
|
…dow policy) The auto-generated objectui-refresh changeset declared `@objectstack/console: major`, which fails `check-changeset-no-major` on every PR: all publishable packages are in the Changesets fixed group, so one `major` would promote the entire monorepo. Per the check's launch-window policy, breaking changes ship as `minor` — the changeset content is unchanged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Rg7oavKSUdb2KzYEEYrCHX
os-zhuang
marked this pull request as ready for review
July 19, 2026 18:08
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Companion to objectstack-ai/objectui#2704 (objectui#2700 / ADR-0059 — ActionParamDialog renders params through the shared form field-widget renderer).
What
Purely additive widening of
ActionParamSchema(packages/spec/src/ui/action.zod.ts): inline action params can now declare the widget config the form field widgets consume —multiple(boolean) — array value shape; mirrorsFieldSchema.multiple.accept(string[]) — accepted upload types (MIME types / extensions) forfile/imageparams.maxSize(positiveint) — max upload size in bytes forfile/imageparams.Field-backed params (
{ field }) keep inheriting these from the referenced field at runtime; inline values override. No existing schema changes shape.Tests / checks
ActionParamSchematests: upload widget config accepted, undefined when undeclared,maxSizerejects0/negative/fractional, richFieldTypes (file/image/richtext/color/date/address/code) accepted as param types.@objectstack/specsuite: 256 files / 6799 tests green; build green;check:docs/check:api-surface/check:spec-changesgreen.Docs
content/docs/references/ui/action.mdxregenerated (gen:docs) — the three keys appear in theActionParamtable.content/docs/ui/actions.mdx— params section now notes that the console renders anyFieldTypeparam through the record form's field widgets (file upload, lookup picker, richtext, …).@objectstack/specminor.🤖 Generated with Claude Code
https://claude.ai/code/session_01Rg7oavKSUdb2KzYEEYrCHX
Generated by Claude Code