Repository navigation
chore: update @elgato/schemas to use @elgato/tsconfig - #185
Conversation
… for both apps and libs, and Stream Deck plugins for node (WIP)
…e README with configs
…r, and include), and update readme.
🦋 Changeset detectedLatest commit: 22d42e7 The changes in this PR will be included in the next version bump. This PR includes changesets to release 3 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
There was a problem hiding this comment.
🟡 Changes recommended
Wireit omits the new build configuration from its tracked inputs, allowing configuration-only changes to reuse stale compiled artifacts.
1 open issue
1 file not reviewed
pnpm-lock.yaml: Generated file
What changed in this PR
Migrates @elgato/schemas to the shared TypeScript configuration and compiler-based ES module output, updating CLI consumers and package publishing rules.
Changes:
- Replaces Rollup with TypeScript compilation and updates imports and tests for the shared configuration.
- Removes CommonJS output and bundled JSON exports; updates the CLI to import JSON schemas directly.
- Adjusts build caching, published file patterns, dependencies, documentation, and release notes.
| File | Description |
|---|---|
| turbo.json | Caches generated schema files alongside compiled output. |
| pnpm-lock.yaml | Updates configuration dependencies and removes unused Rollup tooling. |
| packages/schemas/tsconfig.json | Adopts shared configuration for source and tests. |
| packages/schemas/tsconfig.build.json | Adds a dedicated compilation configuration. |
| packages/schemas/tests/validate.ts | Updates Ajv and relative imports. |
| packages/schemas/tests/setup.ts | Adds an explicit module extension. |
| packages/schemas/src/streamdeck/plugins/schemas.ts | Updates schema type imports for ES modules. |
| packages/schemas/src/streamdeck/plugins/manifest/v7.6.ts | Updates the manifest import extension. |
| packages/schemas/src/streamdeck/plugins/manifest/v7.1.ts | Updates type import extensions. |
| packages/schemas/src/streamdeck/plugins/manifest/v7.0.ts | Updates type import extensions. |
| packages/schemas/src/streamdeck/plugins/manifest/v6.9.ts | Updates type import extensions. |
| packages/schemas/src/streamdeck/plugins/manifest/v6.6.ts | Updates type import extensions. |
| packages/schemas/src/streamdeck/plugins/manifest/v6.5.ts | Updates type import extensions. |
| packages/schemas/src/streamdeck/plugins/manifest/v6.4.ts | Updates the manifest import extension. |
| packages/schemas/src/streamdeck/plugins/manifest/latest.ts | Uses explicit extensions and a type-only device import. |
| packages/schemas/src/streamdeck/plugins/manifest/__tests__/v7.1.test.ts | Adds a fixture array non-null assertion. |
| packages/schemas/src/streamdeck/plugins/manifest/__tests__/v7.0.test.ts | Adds fixture array non-null assertions. |
| packages/schemas/src/streamdeck/plugins/manifest/__tests__/v6.9.test.ts | Adds a fixture array non-null assertion. |
| packages/schemas/src/streamdeck/plugins/manifest/__tests__/v6.6.test.ts | Adds fixture array non-null assertions. |
| packages/schemas/src/streamdeck/plugins/manifest/__tests__/all.test.ts | Updates fixture access for stricter type checking. |
| packages/schemas/src/streamdeck/plugins/layout/stream-deck-plus.ts | Updates layout type import extensions. |
| packages/schemas/src/streamdeck/plugins/layout/stream-deck-neo.ts | Updates layout type import extensions. |
| packages/schemas/src/streamdeck/plugins/layout/layout.ts | Updates shared layout import extensions. |
| packages/schemas/src/streamdeck/plugins/layout/__tests__/stream-deck-plus.test.ts | Adds non-null and tuple type assertions. |
| packages/schemas/src/streamdeck/plugins/layout/__tests__/stream-deck-neo.test.ts | Adds non-null and tuple type assertions. |
| packages/schemas/src/streamdeck/plugins/json.ts | Removes bundled JSON re-exports. |
| packages/schemas/src/streamdeck/plugins/index.ts | Updates public export extensions. |
| packages/schemas/rollup.config.ts | Removes the Rollup build configuration. |
| packages/schemas/README.md | Documents direct JSON imports instead of bundled exports. |
| packages/schemas/package.json | Switches compilation, exports, and dependencies. |
| packages/plugin/package.json | Consolidates published file patterns. |
| packages/cli/tsup.config.ts | Bundles imported schema JSON files. |
| packages/cli/tsconfig.json | Enables JSON module resolution. |
| packages/cli/src/validation/plugin/schemas.ts | Imports schema JSON with import attributes. |
| packages/cli/package.json | Updates published CLI file patterns. |
| .changeset/fiery-cooks-sniff.md | Records removal of older CommonJS support. |
| .changeset/fair-suns-drum.md | Records the shared TypeScript configuration migration. |
| .changeset/fair-ants-smash.md | Records removal of pre-bundled JSON exports. |
Review effort: Balanced
There was a problem hiding this comment.
🟡 Changes recommended
Missing Wireit schema inputs and task dependencies can leave the CLI library using stale bundled validation schemas.
1 open issue
1 resolved since last review
1 file not reviewed
pnpm-lock.yaml: Generated file
Review effort: Balanced
There was a problem hiding this comment.
🔵 Needs a closer look
The export build still omits its new compiler configuration from tracked inputs, allowing stale build artifacts after configuration changes.
No open issues 🎉
1 resolved since last review
1 file not reviewed
pnpm-lock.yaml: Generated file
Review effort: Balanced


No description provided.