@selfcommunity/react-core
Version:
React Core Components useful for integrating UI Community components (react-ui).
20 lines (19 loc) • 878 B
JavaScript
import { useMemo } from 'react';
import { useLoadScript } from '@react-google-maps/api';
import { useSCPreferences } from '../components/provider/SCPreferencesProvider';
import * as SCPreferences from '../constants/Preferences';
const GOOGLE_MAPS_LIBRARIES = ['places', 'geocoding', 'maps'];
const useSCGoogleApiLoader = () => {
const { preferences } = useSCPreferences();
const geocodingApiKey = useMemo(() => {
return preferences && SCPreferences.PROVIDERS_GOOGLE_GEOCODING_API_KEY in preferences
? preferences[SCPreferences.PROVIDERS_GOOGLE_GEOCODING_API_KEY].value
: null;
}, [preferences]);
const { isLoaded, loadError } = useLoadScript({
googleMapsApiKey: geocodingApiKey,
libraries: GOOGLE_MAPS_LIBRARIES,
});
return { isLoaded, loadError, geocodingApiKey };
};
export default useSCGoogleApiLoader;