From: Eduardo San Martin Morote Date: Thu, 26 Sep 2024 09:44:49 +0000 (+0200) Subject: test: add storeToRefs X-Git-Tag: @pinia/nuxt@0.5.5~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=dee897b16c70d5fa6c4835799defe2eba5c67544;p=thirdparty%2Fvuejs%2Fpinia.git test: add storeToRefs --- diff --git a/packages/pinia/test-dts/storeToRefs.test-d.ts b/packages/pinia/test-dts/storeToRefs.test-d.ts new file mode 100644 index 00000000..6fc198ea --- /dev/null +++ b/packages/pinia/test-dts/storeToRefs.test-d.ts @@ -0,0 +1,50 @@ +import { + expectType, + createPinia, + defineStore, + mapStores, + storeToRefs, +} from './' +import { App, computed, ComputedRef, ref, Ref, shallowRef } from 'vue' + +const useOptionsStore = defineStore('main', { + state: () => ({ + n: 0, + ref: ref({ + n: 0, + ref: ref(0), + }), + shallowRef: shallowRef({ + n: 0, + ref: ref(0), + }), + }), +}) + +const optionsStore = useOptionsStore() +const optionsRefs = storeToRefs(optionsStore) + +expectType>(optionsRefs.n) +expectType>(optionsRefs.ref) +expectType }>>(optionsRefs.shallowRef) + +const useSetupStore = defineStore('main', () => { + return { + n: ref(0), + ref: ref({ + n: 0, + ref: ref(0), + }), + shallowRef: shallowRef({ + n: 0, + ref: ref(0), + }), + } +}) + +const setupStore = useSetupStore() +const setupRefs = storeToRefs(setupStore) + +expectType>(setupRefs.n) +expectType>(setupRefs.ref) +expectType }>>(setupRefs.shallowRef)