wp-customize-fonts-control.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. wp.customize.bind( 'ready', () => {
  2. let resetButton;
  3. wp.customize.control(
  4. 'customize-global-styles-fonts-reset-button',
  5. ( control ) => {
  6. control.container
  7. .find( '.button' )
  8. .on( 'click', resetFontSelection );
  9. resetButton = control.container[ 0 ];
  10. resetButton.hidden = determineIfSetToDetault();
  11. }
  12. );
  13. wp.customize(
  14. 'customize-global-styles-fontsbody',
  15. bindControlToHideResetButton
  16. );
  17. wp.customize(
  18. 'customize-global-styles-fontsheading',
  19. bindControlToHideResetButton
  20. );
  21. function bindControlToHideResetButton( control ) {
  22. control.bind( () => {
  23. resetButton.hidden = false;
  24. } );
  25. }
  26. function determineIfSetToDetault() {
  27. return (
  28. fontControlDefaultBody[ 0 ] ===
  29. wp.customize.settings.settings[
  30. 'customize-global-styles-fontsbody'
  31. ].value &&
  32. fontControlDefaultHeading[ 0 ] ===
  33. wp.customize.settings.settings[
  34. 'customize-global-styles-fontsheading'
  35. ].value
  36. );
  37. }
  38. function resetFontSelection() {
  39. wp.customize( 'customize-global-styles-fontsbody', ( item ) => {
  40. item.set( fontControlDefaultBody[ 0 ] );
  41. } );
  42. wp.customize( 'customize-global-styles-fontsheading', ( item ) => {
  43. item.set( fontControlDefaultHeading[ 0 ] );
  44. } );
  45. resetButton.hidden = true;
  46. }
  47. } );