UNPKG

vuex-composition-helpers

Version:
113 lines 4.09 kB
import { computed } from '@vue/composition-api'; import { computedGetter, getAction, getMutation, getStoreFromInstance, useMapping } from './util'; function computedState(store, prop) { return computed(() => store.state[prop]); } function computedNamespacedState(store, namespace, prop) { let module = namespace.split('/').reduce((module, key) => module[key], store.state); return computed(() => module[prop]); } export function useStore() { return getStoreFromInstance(); } export function useState(storeOrNamespace, namespaceOrMap, map) { let realStore, realNamespace, realMap; if (arguments.length >= 3) { realStore = storeOrNamespace || getStoreFromInstance(); realNamespace = namespaceOrMap || null; realMap = map || null; } else if (arguments.length === 2) { if (typeof storeOrNamespace === 'string') { realStore = getStoreFromInstance(); realNamespace = storeOrNamespace || null; } else { realStore = storeOrNamespace || getStoreFromInstance(); realNamespace = null; } realMap = namespaceOrMap || null; } else { realStore = getStoreFromInstance(); realNamespace = null; realMap = storeOrNamespace || null; } return useMapping(realStore, realNamespace, realMap, !realNamespace ? computedState : computedNamespacedState); } export function useGetters(storeOrNamespace, namespaceOrMap, map) { let realStore, realNamespace, realMap; if (arguments.length >= 3) { realStore = storeOrNamespace || getStoreFromInstance(); realNamespace = namespaceOrMap || null; realMap = map || null; } else if (arguments.length === 2) { if (typeof storeOrNamespace === 'string') { realStore = getStoreFromInstance(); realNamespace = storeOrNamespace || null; } else { realStore = storeOrNamespace || getStoreFromInstance(); realNamespace = null; } realMap = namespaceOrMap || null; } else { realStore = getStoreFromInstance(); realNamespace = null; realMap = storeOrNamespace || null; } return useMapping(realStore, realNamespace, realMap, computedGetter); } export function useMutations(storeOrNamespace, namespaceOrMap, map) { let realStore, realNamespace, realMap; if (arguments.length >= 3) { realStore = storeOrNamespace || getStoreFromInstance(); realNamespace = namespaceOrMap || null; realMap = map || null; } else if (arguments.length === 2) { if (typeof storeOrNamespace === 'string') { realStore = getStoreFromInstance(); realNamespace = storeOrNamespace || null; } else { realStore = storeOrNamespace || getStoreFromInstance(); realNamespace = null; } realMap = namespaceOrMap || null; } else { realStore = getStoreFromInstance(); realNamespace = null; realMap = storeOrNamespace || null; } return useMapping(realStore, realNamespace, realMap, getMutation); } export function useActions(storeOrNamespace, namespaceOrMap, map) { let realStore, realNamespace, realMap; if (arguments.length >= 3) { realStore = storeOrNamespace || getStoreFromInstance(); realNamespace = namespaceOrMap || null; realMap = map || null; } else if (arguments.length === 2) { if (typeof storeOrNamespace === 'string') { realStore = getStoreFromInstance(); realNamespace = storeOrNamespace || null; } else { realStore = storeOrNamespace || getStoreFromInstance(); realNamespace = null; } realMap = namespaceOrMap || null; } else { realStore = getStoreFromInstance(); realNamespace = null; realMap = storeOrNamespace || null; } return useMapping(realStore, realNamespace, realMap, getAction); } //# sourceMappingURL=global.js.map