Skip to content

feat(sources): recover HeadersList + SourceIdentityFields stack into main - #224

Merged
RhysSullivan merged 4 commits into
mainfrom
rs/source-forms-recovery
Apr 13, 2026
Merged

feat(sources): recover HeadersList + SourceIdentityFields stack into main#224
RhysSullivan merged 4 commits into
mainfrom
rs/source-forms-recovery

Conversation

@RhysSullivan

Copy link
Copy Markdown
Collaborator

Recovery PR

The stacked PRs #216 through #220 were all marked merged via auto-merge, but only #216 actually landed in main. The other four were squash-merged into their direct base branches (which were other feature branches in the stack) instead of cascading into main, so #217-#220's content ended up orphaned on intermediate branches.

This PR rolls up the remaining four commits from that stack, rebased onto latest main (resolving conflicts with #221/#222/#223 which landed concurrently):

  1. feat(react): add <HeadersList> and <SourceIdentityFields> primitives — originally feat(react): add <AuthenticationSection> primitive #217
  2. refactor(mcp): adopt <HeadersList> in Add/Edit source forms — originally refactor(mcp): adopt shared primitives in Add/Edit source forms #218
  3. refactor(sources): adopt <HeadersList> in openapi, graphql, google-discovery, onepassword forms — originally refactor(sources): standardize openapi, graphql, google-discovery, onepassword forms #219
  4. refactor(react): restructure sources list and sources-add container — originally refactor(react): restructure sources list and sources-add container #220

Conflict resolutions against concurrent main changes:

Typecheck + oxlint both clean locally across react, openapi, graphql, google-discovery, mcp.

mrzmyr added 4 commits April 13, 2026 00:37
Two composable primitives shared across source-plugin Add forms:

- <HeadersList> + presets prop — headers list with quick-add picker (replaces the closed AuthenticationSection).
- <SourceIdentityFields> + useSourceIdentity hook — display-name + auto-derived namespace, with namespace detaching on manual edit.
Replaces the hand-rolled auth/URL/headers UI with <FilterTabs> + <HeadersList> + inline OAuth content, <FloatActions> for the save/cancel row, and <IOSSpinner> + <Textarea maxRows> for probe status and previews.
…scovery, onepassword forms

Uses the shared <HeadersList> primitive plus plugin-specific tab / OAuth / strategy-picker UI:

- openapi: restores spec-derived multi-preset strategy picker (Bearer + API Key + Basic…) that the prior <AuthenticationSection> version silently dropped. Title card moves below the spec input.
- graphql, google-discovery: inline <FilterTabs> for None / Header / OAuth where needed.
- Removes the spec-operations list from Add forms — not useful pre-connect.
- pages/sources.tsx: restructures the list to use CardStack entries with
  title cards, moves connected sources to the top, and drops the old
  built-in section header (built-ins live exclusively in the sidebar now).
- pages/sources-add.tsx: wraps the add-source container in a relative
  positioning wrapper so FloatActions can render as a sticky bottom bar
  inside the form without escaping the layout.
@RhysSullivan
RhysSullivan merged commit a3fa7c1 into main Apr 13, 2026
3 of 6 checks passed
@RhysSullivan
RhysSullivan deleted the rs/source-forms-recovery branch April 13, 2026 08:13
RhysSullivan added a commit that referenced this pull request May 31, 2026
…main (#224)

* feat(react): add <HeadersList> and <SourceIdentityFields> primitives

Two composable primitives shared across source-plugin Add forms:

- <HeadersList> + presets prop — headers list with quick-add picker (replaces the closed AuthenticationSection).
- <SourceIdentityFields> + useSourceIdentity hook — display-name + auto-derived namespace, with namespace detaching on manual edit.

* refactor(mcp): adopt <HeadersList> in Add/Edit source forms

Replaces the hand-rolled auth/URL/headers UI with <FilterTabs> + <HeadersList> + inline OAuth content, <FloatActions> for the save/cancel row, and <IOSSpinner> + <Textarea maxRows> for probe status and previews.

* refactor(sources): adopt <HeadersList> in openapi, graphql, google-discovery, onepassword forms

Uses the shared <HeadersList> primitive plus plugin-specific tab / OAuth / strategy-picker UI:

- openapi: restores spec-derived multi-preset strategy picker (Bearer + API Key + Basic…) that the prior <AuthenticationSection> version silently dropped. Title card moves below the spec input.
- graphql, google-discovery: inline <FilterTabs> for None / Header / OAuth where needed.
- Removes the spec-operations list from Add forms — not useful pre-connect.

* refactor(react): restructure sources list and sources-add container

- pages/sources.tsx: restructures the list to use CardStack entries with
  title cards, moves connected sources to the top, and drops the old
  built-in section header (built-ins live exclusively in the sidebar now).
- pages/sources-add.tsx: wraps the add-source container in a relative
  positioning wrapper so FloatActions can render as a sticky bottom bar
  inside the form without escaping the layout.

---------

Co-authored-by: mrzmyr <mrzmyr@users.noreply.github.com>
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.

2 participants