It is a real regression, and a common one. A component used once, taking eight props, is not an abstraction. It is the same code with an argument list bolted on, and now you read two files instead of one.
The useful split is by what changes together, not by line count. In a dashboard that is usually: the data layer, one component per widget that owns its own query, and a layout that arranges them. Three or four real boundaries, not 31.
Inline anything that is used once and has more than about four props. Keep the pieces that another screen actually reuses. You will probably land around 900 lines across six files, and that is a better place than either end.