feat(plugin-a11y): align with plugin convention and add tsnapi snapshots#49
Merged
Merged
Conversation
✅ Deploy Preview for devfra ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Bring the a11y inspector in line with the other first-party plugins so it participates in the shared tsnapi API-snapshot guard instead of being skipped as a private package. - rename `@devframes/a11y` -> `@devframes/plugin-a11y` and publish it as a multi-entry library (`.`, `/node`, `/cli`, `/vite`, `/client`) built with tsdown, mirroring plugin-inspect / plugin-terminals - move the Solid panel SPA to `src/spa` so `/client` exposes a clean, node-free browser module while the panel keeps building to `dist/spa` - add the required devframe metadata fields and a `typecheck` script - wire the package into alias.ts, turbo.json, and the tsnapi suite, which now snapshots all five plugins
3234ac9 to
a99284f
Compare
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.
What
The a11y inspector was the one first-party plugin not covered by the shared
tsnapi API-snapshot guard: it shipped as a private
@devframes/a11yapp withno library
exports, sodescribePackagesApiSnapshotsskipped it. This bringsit fully in line with the other plugins (
plugin-inspect,plugin-terminals,plugin-git,plugin-code-server) so its public surface is snapshotted too.Changes
@devframes/a11y→@devframes/plugin-a11y,un-privated, with a multi-entry
exportsmap (.,/node,/cli,/vite,/client) built by a 3-configtsdownsetup mirroringplugin-inspect.src/client→src/spa(building todist/spa) so/clientcan expose a clean, node-free browser module(
connectA11y) atdist/client/index.mjswithout colliding with the SPA assets.createA11yDevframe()factory (src/index.ts),setupA11y()(/node),createA11yCli()(/cli),a11yVitePlugin()(/vite).(read from
package.json), atypecheckscript,devframe/vitepeer deps,and
sideEffects: false.alias.ts(+ regeneratedtsconfig.base.jsonpaths),turbo.jsontask rename, and five committed tsnapi snapshots.The runtime id, RPC namespace, BroadcastChannel, and mount path
(
devframe-a11y-inspector) are intentionally unchanged, so the dev-server andstatic-build behaviour — and their tests — are untouched.
Verification
pnpm lint,pnpm test(513 passed),pnpm typecheck, andpnpm buildall pass.The snapshot suite now covers all five plugins; a second run is stable with no
rewrites.
This PR was created with the help of an agent.