The way your application is deployed or distributed determines the distinction between regular dependencies and dev dependencies. Regular dependencies are essential for the app to run, while dev dependencies are only necessary for making modifications to the app.
For instance, if the webpack build must be executed before the app can be utilized (such as in a continuous integration environment where the app is built during testing and deployment), then anything needed during the build process is considered a 'regular' dependency. In this scenario, most of the packages will be classified as regular dependencies.
On the other hand, if you only need to build the app once and distribute/deploy the built assets without rebuilding it each time the app is used, then dependencies required during the build process are labeled as 'dev' dependencies. Users of your code should not have to rebuild unless they are making changes to the app. Consequently, in this case, the majority of dependencies will fall under the 'dev' category.