403Webshell
Server IP : 193.146.211.90  /  Your IP : 10.85.6.55
Web Server : Apache
System : Linux wordpress-gti-69dcdb54f7-n4wdq 6.11.8-arch1-2 #1 SMP PREEMPT_DYNAMIC Fri, 15 Nov 2024 15:35:07 +0000 x86_64
User : 1001 ( 1001)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /bitnami/wordpress/wp-content/plugins/presto-player/src/admin/blocks/shared/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /bitnami/wordpress/wp-content/plugins/presto-player/src/admin/blocks/shared//options.js
const { useEffect, useState } = wp.element;
const { useSelect } = wp.data;
import { usePrevious } from "@/admin/blocks/util";

export default function ({ attributes, setAttributes }) {
  const { chapters, poster } = attributes;
  const [presetData, setPresetData] = useState({});
  const data = {
    branding: {},
    loading: false,
    presets: [],
    presetData: {},
  };

  data.branding = useSelect((select) => {
    return select("presto-player/player").branding();
  });
  useEffect(() => {
    document.body.style.setProperty("--plyr-color-main", data.branding?.color);
  }, [data.branding?.color]);

  data.loading = useSelect((select) => {
    return select("presto-player/player").presetsLoading();
  });
  data.presets = useSelect((select) => {
    return select("presto-player/player").getPresets();
  });

  // set preset data when presets are loaded
  useEffect(() => {
    const thisPreset = data.presets.find((preset) => {
      return preset.id === attributes?.preset;
    });
    data.presetData = thisPreset;
  }, [data.presets, attributes?.preset]);

  // This will reload the player to show the controls
  let [count, setCount] = useState(1);
  useEffect(() => {
    setCount(count + 1);
  }, [poster, data.presetData]);

  // re-render only if times change
  const prevChapters = usePrevious(chapters);
  useEffect(() => {
    let times = chapters?.map((item) => item.time);
    let prevTimes = prevChapters?.map((item) => item.time);
    if (_.difference(times, prevTimes).length) {
      setCount(count + 1);
    }
  }, [chapters]);

  return data;
}

Youez - 2016 - github.com/yon3zu
LinuXploit