### What problem does this PR solve?
feat: Build the edges of Switch by form data #1739
### Type of change
- [x] New Feature (non-breaking change which adds functionality)
### What problem does this PR solve?
feat: Build the positions of the Switch handle #1739
### Type of change
- [x] New Feature (non-breaking change which adds functionality)
### What problem does this PR solve?
feat: Extract the code for building categorize operator coordinates to
hooks.ts #1739
### Type of change
- [x] New Feature (non-breaking change which adds functionality)