TypeScript React Multi-Check Testing Program
- The component has a label
- The special
Select All
option- if checked, all other options are checked
- if unchecked, all other options are unchecked
- if all other options are checked, it should be checked
- if any other option are unchecked, it should be unchecked
- The options support multiple-columns, and the direction is from top to bottom in each column
Suppose
options = ['aaa', 'bbb', 'ccc', 'ddd', 'eee', 'fff']
columns = 3
There are seveal posibilities:
- not preferred
Select All ccc fff
aaa ddd
bbb eee
- preferred
Select All ccc eee
aaa ddd fff
bbb
Make the column sizes as even as possible, and put extra options in the first several columns, and also make them even, so the 2nd solution is preferred.
npm install
npm run dev
npm test