Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
primogenial
/
plugins
/
jetpack
/
jetpack_vendor
/
automattic
/
jetpack-videopress
/
src
/
client
/
admin
/
hooks
/
use-playback-token
:
index.ts
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
/** * External dependencies */ import { useSelect } from '@wordpress/data'; /** * Internal dependencies */ import { STORE_ID, VIDEO_PRIVACY_LEVELS, VIDEO_PRIVACY_LEVEL_PRIVATE, } from '../../../state/constants'; import { VideopressSelectors, VideoPressVideo } from '../../types'; /** * React custom hook to get the Users. * * @param {VideoPressVideo} video - The VideoPress video * @returns {object} Playback token */ export default function usePlaybackToken( video: VideoPressVideo ) { const videoNeedsPlaybackToken = video.privacySetting ? VIDEO_PRIVACY_LEVELS[ video.privacySetting ] === VIDEO_PRIVACY_LEVEL_PRIVATE : false; // Data const playbackToken = useSelect( select => { if ( videoNeedsPlaybackToken ) { return ( select( STORE_ID ) as VideopressSelectors ).getPlaybackToken( video.guid ); } return null; }, [ video.guid ] ); const isFetchingPlaybackToken = useSelect( select => { if ( videoNeedsPlaybackToken ) { return ( select( STORE_ID ) as VideopressSelectors ).isFetchingPlaybackToken(); } return false; }, [ video.guid ] ); return { playbackToken: playbackToken?.token, isFetchingPlaybackToken, }; }