-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Expand file tree
/
Copy pathcomposables.ts
More file actions
31 lines (26 loc) · 865 Bytes
/
composables.ts
File metadata and controls
31 lines (26 loc) · 865 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import { useNuxtApp } from '#app'
import {
defineStore as _defineStore,
type Pinia,
type StoreGeneric,
} from 'pinia'
export * from 'pinia'
export const usePinia = () => useNuxtApp().$pinia as Pinia | undefined
export const defineStore: typeof _defineStore =
process.env.NODE_ENV === 'production' && !__TEST__
? _defineStore
: (...args: [idOrOptions: any, setup?: any, setupOptions?: any]) => {
if (!import.meta.server) {
return _defineStore(...args)
}
const originalUseStore = _defineStore(...args)
function useStore(
pinia?: Pinia | null,
hot?: StoreGeneric
): StoreGeneric {
return originalUseStore(pinia || usePinia(), hot)
}
useStore.$id = originalUseStore.$id
useStore._pinia = originalUseStore._pinia
return useStore
}