Skip to content

[pull] main from tinacms:main - #314

Merged
pull[bot] merged 6 commits into
code:mainfrom
tinacms:main
Aug 24, 2026
Merged

[pull] main from tinacms:main#314
pull[bot] merged 6 commits into
code:mainfrom
tinacms:main

Conversation

@pull

@pull pull Bot commented Aug 24, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

joshbermanssw and others added 6 commits August 24, 2026 11:09
#7468)

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: kulesy <kulewidak@gmail.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: kulesy <kulewidak@gmail.com>
…7472)

Closes #7471

**TL;DR** Make the toolkit `Button` and `IconButton` actually render the
`disabled` attribute.

**Pain:** both components destructured `disabled` and used it only to
pick styling classes, so the attribute never reached the element.
`pointer-events-none` blocks the pointer but not the keyboard, which
left every disabled button in the CMS focusable and activatable with
Enter or Space — 18 `<Button>`/`<IconButton>` call sites carrying a
`disabled` prop, across 11 files. The same hole applied to `busy`, so a
button already mid-flight could be re-fired from the keyboard into a
double submit.

**Solution:** passes the attribute through on both components, and folds
`busy` into it to match the `disabled={disabled || busy}` that
`DropdownButton` already ships. `Button` is polymorphic via `as`, so the
attribute is omitted for tags that cannot carry it. Three test suites
and a rename-modal click guard existed only to work around the hole and
are removed.

---------

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Closes #7211

`@tinacms/mdx` declared `uvu`, a test runner, in `dependencies`. Two
shortcode
parsing files imported it, in both cases only for `ok` as a one-line
assertion
helper, across six call sites. A local `assert` in `src/assert.ts`
replaces
those calls, so the dependency and its catalog entry are removed.

## What this does not do

This does not remove `uvu` from a consumer's `node_modules`.
`micromark@3.x`
and its extensions depend on `uvu` at runtime, and `@tinacms/mdx`
depends on
those, so `node_modules/uvu` is installed either way. Issue #7211
predicted
that `uvu` would disappear from a fresh install; that turned out not to
hold.
The change is still worth making, because a test runner should not be an
import in shipped source, but it is not an install-size win.

## Relationship to #7468

This branch originally also moved `typedoc` out of `dependencies`. #7468
has
since landed on main and removed `typedoc` outright, along with the
`docs`
script and the orphaned `typedoc-plugin-markdown` and `concat-md`
catalog
entries. The merge resolves in favour of main, so the typedoc work is no
longer part of this PR, and the changeset here covers `uvu` alone.

## Verification

- `vitest run` in `@tinacms/mdx`: 179 passing, 0 failing.
- `pnpm build` for `@tinacms/mdx` passes, and the built `dist/index.js`
  contains no reference to `uvu`.
- `pnpm install --frozen-lockfile` passes against the resolved lockfile.
- `biome check` is clean on every changed file.
- `src/assert.test.ts` covers the pass-through and throw paths of the
new
  helper.

Part of the dependency cleanup alongside #7207, #7208, #7209, and #7468.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: Matt Wicks [SSW] <wicksipedia@users.noreply.github.com>
Co-authored-by: Josh Berman <joshberman@ssw.com.au>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
@pull pull Bot locked and limited conversation to collaborators Aug 24, 2026
@pull pull Bot added the ⤵️ pull label Aug 24, 2026
@pull
pull Bot merged commit 7dd8ed0 into code:main Aug 24, 2026
10 of 11 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants