• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

react-ui-org / react-ui / 34754572403
61%

Build:
DEFAULT BRANCH: master
Ran 13 Sep 2026 11:30AM UTC
Jobs 1
Files 29
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

11 Sep 2026 11:59AM UTC coverage: 61.181% (+0.4%) from 60.829%
34754572403

push

github

bedrich-schindler
Migrate the library to TypeScript (#394)

Convert all components, providers, helpers and the library entry from
JSX with `prop-types` to TypeScript (`strict: true`) while keeping the
runtime behaviour and the public exports unchanged.

* Every component gets a co-located `<Component>.types.ts` with its
  `Props` type (extending the matching `*HTMLAttributes`) and the JSDoc
  descriptions copied from `propTypes`; context values, provider props and
  helper types live in `.types.ts` files too. Shared unions (`Color`,
  `Priority`, `Size`, `Layout`, `ValidationState`, `Breakpoint`,
  `LabelPosition`) live in `src/types`.
* `defaultProps` are replaced by default values in the parameter
  destructuring (react-docgen reads them for the documentation);
  `propTypes` are kept for runtime validation. Plain function components
  are annotated as `React.FunctionComponent` so `propTypes` do not leak
  into the declarations, and `withGlobalProps` is generic in props and
  ref element (`never` for components that do not forward a ref).
* Toolchain: TypeScript 7 (`@typescript/native`) type-checks and emits
  declarations, TypeScript 6 stays installed as `typescript` for tools
  that need the compiler API (typescript-eslint); Babel
  (`@babel/preset-typescript`) transpiles for webpack and Jest, which
  replaces `ts-jest` and the second Jest config. `eslint-plugin-deprecation`
  and `eslint-plugin-typescript-sort-keys` are replaced by
  `@typescript-eslint/no-deprecated` and `eslint-plugin-perfectionist`
  because they do not support TypeScript 6.
* Build emits `dist/types/**` and bundles them with `dts-bundle-generator`
  into the published `dist/react-ui.d.ts` referenced by `types`; package
  contents are defined by a `files` allowlist instead of `.npmignore`.
* Stories use the real component props (`StoryProps` helper for props the
  story defaults), `npm run typecheck` is part of `npm run lint`, and the
  contributing rules and docs describe the TypeScript setup.

129 of 242 branches covered (53.31%)

Branch coverage included in aggregate %.

71 of 78 new or added lines in 21 files covered. (91.03%)

161 of 232 relevant lines covered (69.4%)

8.14 hits per line

Uncovered Changes

Lines Coverage ∆ File
6
53.55
src/components/ScrollView/ScrollView.tsx
1
91.67
src/utils/mergeDeep.ts
Jobs
ID Job ID Ran Files Coverage
1 34754572403.1 13 Sep 2026 11:30AM UTC 51
64.03
GitHub Action Run
Source Files on build 34754572403
  • Tree
  • List 29
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #34754572403
  • 886d9bd0 on github
  • Prev Build on master (#34343520066)
  • Next Build on master (#34843084284)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc