Skip to content

fix(vue-components): resolve indexed inputs and deduplicate array errors - #883

Merged
MakhBeth merged 2 commits into
mainfrom
fix/omega-indexed-input-errors
Sep 10, 2026
Merged

fix(vue-components): resolve indexed inputs and deduplicate array errors#883
MakhBeth merged 2 commits into
mainfrom
fix/omega-indexed-input-errors

Conversation

@MakhBeth

@MakhBeth MakhBeth commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Indexed inputs such as rows[13].text now resolve schema metadata and render outside form.Array. Registered array fields appear once in form.Errors, with their field label, instead of also appearing as unregistered dotted paths.

  • Move array-index stripping into OmegaInput and remove OmegaArray's redundant metadata provider. Preserve the injection used by OmegaTaggedUnion for active-branch metadata.

  • Normalize bracket indices to dotted paths when registering, looking up, and unregistering field labels.

  • Add regressions for indices 0 and 13, field errors and labels, unmount cleanup, and inputs inside form.Array. Include a patch changeset.

  • Add Storybook OmegaForm / Indexed Table: sortable and paginated v-data-table cells use source indices outside form.Array, with Row 14 initially invalid and an inspectable form-values view.

Validation: 9 targeted tests passed across IndexedInputErrors and TaggedUnionBehavior. Focused Vue typecheck of the OmegaForm stories passed. The full package Vue typecheck reports an unrelated error in stories/FixedNuxtErrorBoundary/Demo.vue:40 (TS2345: {} is not assignable to never). The pre-push ship gate passed: pnpm check, pnpm lint, and pnpm test.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

@MakhBeth
MakhBeth marked this pull request as ready for review September 10, 2026 21:53
@pkg-pr-new

pkg-pr-new Bot commented Sep 10, 2026

Copy link
Copy Markdown

Open in StackBlitz

@effect-app/cli

npm i https://pkg.pr.new/effect-app/libs/@effect-app/cli@883

effect-app

npm i https://pkg.pr.new/effect-app/libs/effect-app@883

@effect-app/eslint-codegen-model

npm i https://pkg.pr.new/effect-app/libs/@effect-app/eslint-codegen-model@883

@effect-app/eslint-shared-config

npm i https://pkg.pr.new/effect-app/libs/@effect-app/eslint-shared-config@883

@effect-app/infra

npm i https://pkg.pr.new/effect-app/libs/@effect-app/infra@883

@effect-app/vue

npm i https://pkg.pr.new/effect-app/libs/@effect-app/vue@883

@effect-app/vue-components

npm i https://pkg.pr.new/effect-app/libs/@effect-app/vue-components@883

commit: cac0d34

@MakhBeth
MakhBeth merged commit cbf7488 into main Sep 10, 2026
4 checks passed
@MakhBeth
MakhBeth deleted the fix/omega-indexed-input-errors branch September 10, 2026 22:19
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