Server IP : 104.21.93.192 / Your IP : 216.73.216.73 Web Server : LiteSpeed System : Linux premium900.web-hosting.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 User : redwjova ( 1790) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/redwjova/sort.llc/wp-content/themes/kadence/inc/customizer/react/src/common/ |
Upload File : |
if ( kadencegooglefonts === undefined ) { var kadencegooglefonts = []; } const { Component, } = wp.element; import PropTypes from "prop-types"; import WebFont from "webfontloader"; const statuses = { inactive: 'inactive', active: 'active', loading: 'loading', }; const noop = () => {}; class KadenceWebfontLoader extends Component { constructor(props) { super( props ); this.handleLoading = this.handleLoading.bind( this ); this.handleActive = this.handleActive.bind( this ); this.addFont = this.addFont.bind( this ); this.handleInactive = this.handleInactive.bind( this ); this.loadFonts = this.loadFonts.bind( this ); this.state = { status: undefined, }; } addFont( font ) { if ( ! kadencegooglefonts.includes( font ) ) { kadencegooglefonts.push( font ); } }; handleLoading() { this.setState( { status: statuses.loading } ); }; handleActive() { this.setState( { status: statuses.active } ); }; handleInactive() { this.setState( { status: statuses.inactive } ); }; loadFonts() { //if ( ! this.state.fonts.includes( this.props.config.google.families[ 0 ] ) ) { if ( ! kadencegooglefonts.includes( this.props.config.google.families[ 0 ] ) ) { WebFont.load( { ...this.props.config, loading: this.handleLoading, active: this.handleActive, inactive: this.handleInactive, } ); this.addFont( this.props.config.google.families[ 0 ] ); } } componentDidMount() { this.loadFonts(); } componentDidUpdate( prevProps, prevState ) { const { onStatus, config } = this.props; if ( prevState.status !== this.state.status ) { onStatus( this.state.status ); } if ( prevProps.config !== config ) { this.loadFonts(); } } render() { const { children } = this.props; return children || null; } } KadenceWebfontLoader.propTypes = { config: PropTypes.object.isRequired, children: PropTypes.element, onStatus: PropTypes.func.isRequired, }; KadenceWebfontLoader.defaultProps = { onStatus: noop, }; export default KadenceWebfontLoader;