useSavePanoSettings.jsx 670 B

12345678910111213141516171819202122
  1. import { useEffect } from "react";
  2. import {
  3. savePanoPositionToLocalStorage,
  4. savePanoPovToLocalStorage,
  5. } from "../../../domain/localStorageMethods";
  6. const useSavePanoSettings = panoRef => {
  7. useEffect(() => {
  8. if (panoRef.current) {
  9. panoRef.current.addListener("position_changed", () => {
  10. const { lat, lng } = panoRef.current.getPosition();
  11. savePanoPositionToLocalStorage(lat(), lng());
  12. });
  13. panoRef.current.addListener("pov_changed", () => {
  14. const { heading, pitch } = panoRef.current.getPov();
  15. savePanoPovToLocalStorage(heading, pitch);
  16. });
  17. }
  18. }, [panoRef]);
  19. };
  20. export default useSavePanoSettings;