Updating from Ionic 4 to 7 or start new project

I need to update my Ionic 4 (cordova, angular 8.1.3) app. Target is Ionic 7 (capacitor).

From your experience, which option should be more optimal, less work and headache.

A. update to ionic 5, then to 6 and finally to Ionic 7 (also migration from cordova for capacitor)
B. start new IONIC 7 (capacitor) and migrate the code logic and page flows to the new App.

My application is intermediate level and using these plugins:
cordova-open-native-settings 1.5.2 “Native settings”
cordova-plugin-add-swift-support 2.0.2 “AddSwiftSupport”
cordova-plugin-app-version 0.1.9 “AppVersion”
cordova-plugin-camera 5.0.3 “Camera”
cordova-plugin-device 2.0.2 “Device”
cordova-plugin-file 6.0.2 “File”
cordova-plugin-fingerprint-aio 3.0.1 “FingerprintAllInOne”
cordova-plugin-geolocation 4.1.0 “Geolocation”
cordova-plugin-inappbrowser 5.0.0 “InAppBrowser”
cordova-plugin-insomnia 4.3.0 “Insomnia (prevent screen sleep)”
cordova-plugin-ionic-keyboard 2.2.0 “cordova-plugin-ionic-keyboard”
cordova-plugin-ionic-webview 4.1.2 “cordova-plugin-ionic-webview”
cordova-plugin-ionic 5.4.7 “cordova-plugin-ionic”
cordova-plugin-nativeaudio 3.0.9 “Cordova Native Audio”
cordova-plugin-screen-orientation 3.0.2 “Screen Orientation”
cordova-plugin-splashscreen 5.0.2 “Splashscreen”
cordova-plugin-statusbar 2.4.2 “StatusBar”
cordova-plugin-whitelist 1.3.3 “Whitelist”
cordova-sqlite-storage 6.0.0 “Cordova SQLite storage plugin - cordova-sqlite-storage plugin version”
es6-promise-plugin 4.2.2 “Promise”
ionic-plugin-deeplinks 1.0.22 “Ionic Deeplink Plugin”
onesignal-cordova-plugin 2.11.0 “OneSignal Push Notifications”
phonegap-plugin-barcodescanner 8.1.0 “BarcodeScanner”

start a new ionic 7 project and then, page after page, start to convert your code because there are many breaking changes both in the plugins and in the ionic components.

You can start installing your plugin’s new versions (if you have cordova plugins try to install the capacitor version) and test if they work or if they need to be modified (pretty sure they do)

This means migrating from Ionic 3 to Ionic 7 requires a significant effort, especially for large-scale enterprise applications. This could make other platforms more attractive for complex projects. I hope Ionic must have provided tools to facilitate the migration process (not sure).

I think it’s not their fault, users (when possible) should always keep the software updated both for security reasons and for new features reasons. I understand that often there are plugins which need a specific version, but in my opinion we should follow the “continuous delivery” manifesto even for the framework upgrades

Anyway, Capacitor has already the “migration tool”, but your application must be using it and your Ionic version should be at least 4, if i’m not wrong

any option to use ionic 5 native plugin.
Example node,npm,cordova correct version to use cordova plugin.
please help me.