This pull request is to address the problem of the current Flutterwave Vue library having support for Vue 2, which has reached EOL and is no longer actively maintained. There have been issues concerning this, and if there is, or will be, support for Vue 3 - #8 and #42.
In order to address these concerns, I have been able to move the api and rebuild the components and plugins in the library from Vue 2 to Vue 3. These changes include, but are not limited to:
[x] Rebuilding the Vue Components used in the library to be compatible with Vue 3.
[x] Rebuilding the Vue Components using the [composition api]() rather than the options api.
[x] Dropping the use of Vue.prototype in favour of [composables]() with the useFlutterWave() composable.
[x] Maintaining the same api for all components reimplemented.
[x] Reimplementing the Flutterwave plugin for support
[x] Removed Rollup and Babel configurations in favour of [Vite]().
[x] Dropped the vue-cli service in favour of [Vite]().
[x] Reimplementing and adding new tests for these components.
[x] Creating a well-documented and easy-to-use API documentation for these features.
Hopefully with this, the library can begin to be used in modern Vue and Nuxt Applications to help power payments.
With this change, the flutterwave Vue plugin can therefore be used in modern-day vue and nuxt projects, with much less weight and much better performance.
This pull request is to address the problem of the current Flutterwave Vue library having support for Vue 2, which has reached EOL and is no longer actively maintained. There have been issues concerning this, and if there is, or will be, support for Vue 3 - #8 and #42.
In order to address these concerns, I have been able to move the api and rebuild the components and plugins in the library from Vue 2 to Vue 3. These changes include, but are not limited to:
Vue.prototype
in favour of [composables]() with theuseFlutterWave()
composable.vue-cli
service in favour of [Vite]().Hopefully with this, the library can begin to be used in modern Vue and Nuxt Applications to help power payments. With this change, the flutterwave Vue plugin can therefore be used in modern-day vue and nuxt projects, with much less weight and much better performance.