Replace system provide with composables (#7668)

This commit is contained in:
Nicola Krumschmidt
2021-08-27 17:18:39 +02:00
committed by GitHub
parent d64ca14348
commit 2569724ce8
7 changed files with 37 additions and 16 deletions

View File

@@ -1 +1,2 @@
export * from './use-layout-state';
export * from './use-system';

View File

@@ -0,0 +1,19 @@
import { inject } from 'vue';
import { AxiosInstance } from 'axios';
import { API_INJECT, STORES_INJECT } from '../constants';
export function useStores(): Record<string, any> {
const stores = inject<Record<string, any>>(STORES_INJECT);
if (!stores) throw new Error('[useStores]: This function has to be used inside a Directus extension.');
return stores;
}
export function useApi(): AxiosInstance {
const api = inject<AxiosInstance>(API_INJECT);
if (!api) throw new Error('[useApi]: This function has to be used inside a Directus extension.');
return api;
}

View File

@@ -1,3 +1,4 @@
export * from './extensions';
export * from './fields';
export * from './injection';
export * from './symbols';

View File

@@ -0,0 +1,2 @@
export const STORES_INJECT = 'stores';
export const API_INJECT = 'api';