From 0f5e0df58b6e9f09e4206e82892679a2980c3415 Mon Sep 17 00:00:00 2001 From: Robert Kossessa Date: Wed, 31 Jan 2024 00:11:55 +0100 Subject: [PATCH] ADD: Pinia --- package-lock.json | 68 +++++++++++ package.json | 1 + src/App.vue | 8 +- src/components/config/pages/LEDsConfig.vue | 6 +- src/components/profile/ProfileManager.vue | 71 ++---------- src/renderer.js | 43 ++----- src/store.js | 125 ++++++++++++++++++--- 7 files changed, 209 insertions(+), 113 deletions(-) diff --git a/package-lock.json b/package-lock.json index 76e88e8..9e6c35f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,6 +21,7 @@ "concurrently": "^8.2.2", "electron-squirrel-startup": "^1.0.0", "lucide-vue-next": "^0.309.0", + "pinia": "^2.1.7", "radix-vue": "^1.3.0", "tailwind-merge": "^2.2.0", "tailwindcss-animate": "^1.0.7", @@ -8304,6 +8305,56 @@ "node": ">=0.10.0" } }, + "node_modules/pinia": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.1.7.tgz", + "integrity": "sha512-+C2AHFtcFqjPih0zpYuvof37SFxMQ7OEG2zV9jRI12i9BOy3YQVAHwdKtyyc8pDcDyIc33WCIsZaCFWU7WWxGQ==", + "dependencies": { + "@vue/devtools-api": "^6.5.0", + "vue-demi": ">=0.14.5" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "@vue/composition-api": "^1.4.0", + "typescript": ">=4.4.4", + "vue": "^2.6.14 || ^3.3.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "node_modules/pinia/node_modules/vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, "node_modules/pirates": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", @@ -16738,6 +16789,23 @@ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==" }, + "pinia": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.1.7.tgz", + "integrity": "sha512-+C2AHFtcFqjPih0zpYuvof37SFxMQ7OEG2zV9jRI12i9BOy3YQVAHwdKtyyc8pDcDyIc33WCIsZaCFWU7WWxGQ==", + "requires": { + "@vue/devtools-api": "^6.5.0", + "vue-demi": ">=0.14.5" + }, + "dependencies": { + "vue-demi": { + "version": "0.14.6", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.6.tgz", + "integrity": "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==", + "requires": {} + } + } + }, "pirates": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", diff --git a/package.json b/package.json index fc8ffde..80a73bc 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ "concurrently": "^8.2.2", "electron-squirrel-startup": "^1.0.0", "lucide-vue-next": "^0.309.0", + "pinia": "^2.1.7", "radix-vue": "^1.3.0", "tailwind-merge": "^2.2.0", "tailwindcss-animate": "^1.0.7", diff --git a/src/App.vue b/src/App.vue index b4865cb..8c1ec73 100644 --- a/src/App.vue +++ b/src/App.vue @@ -7,15 +7,21 @@ import ConfigSelect from '@/components/config/ConfigSelect.vue' import { ref } from 'vue' import ConfigSection from '@/components/config/ConfigSection.vue' import { Bolt } from 'lucide-vue-next' +import { useStore } from '@/store' const currentConfigPage = ref('profile_settings') +const store = useStore() + +store.fetchProfiles() +