Skip to content

Release v2.2.0

Choose a tag to compare

@github-actions github-actions released this 04 Jun 17:11
02b7eed

Added

  • @cratis/eslint-plugin-components: ESLint rules for projects that consume Cratis Components, designed to compose on top of @cratis/eslint-config.
    • no-root-barrel-import (rule) — disallows importing from the @cratis/components root barrel. Use a subpath export (@cratis/components/CommandDialog, @cratis/components/DataPage, @cratis/components/Toolbar, …); the root pulls the whole optional-peer-heavy surface and hides intent. Covers import and re-export … from. Configurable package name and allow-list.
    • no-primereact-dialog (rule) — disallows importing Dialog from primereact/dialog. Use CommandDialog from @cratis/components/CommandDialog, or Dialog from @cratis/components/Dialogs — the wrappers add Arc command binding, overlay/focus fixes, and theming.

Changed

  • Add the ESLint workspace to the repo workspaces.

Notes

  • Named per the ESLint scoped-plugin convention (@scope/eslint-plugin-*). The plugin namespace is @cratis/components, so rule IDs read @cratis/components/no-root-barrel-import.
  • Ships as raw ESM (no build step), declares only eslint as a peer dependency, and exposes meta.version plus per-rule docs URLs. It owns these rules because Components owns its subpath export surface and the dialog wrappers.

🤖 Generated with Claude Code