import React, { useEffect, useState } from "react"; import { __ } from "@wordpress/i18n"; import { useSelector } from 'react-redux'; import { Snackbar } from "@wordpress/components"; const EditGoogleVariationItem = ({ id, variation }) => { const getFontWeightTitle = ( weight ) => { if ( undefined === weight ) { weight = '400'; } let updatedWeight = weight, oldWeight = weight; if ( 'italic' === weight ) { oldWeight = '400italic'; } if ( oldWeight.includes('italic') ) { updatedWeight = `${oldWeight.replace('italic', '')} ` + __( 'Italic', 'custom-fonts' ); } switch ( weight ) { case '100': case '100italic': return __( 'Thin ', 'custom-fonts' ) + updatedWeight; case '200': case '200italic': return __( 'Extra Light ', 'custom-fonts' ) + updatedWeight; case '300': case '300italic': return __( 'Light ', 'custom-fonts' ) + updatedWeight; case '400': case '400italic': return __( 'Regular ', 'custom-fonts' ) + updatedWeight; case '500': case '500italic': return __( 'Medium ', 'custom-fonts' ) + updatedWeight; case '600': case '600italic': return __( 'Semi Bold ', 'custom-fonts' ) + updatedWeight; case '700': case '700italic': return __( 'Bold ', 'custom-fonts' ) + updatedWeight; case '800': case '800italic': return __( 'Extra Bold ', 'custom-fonts' ) + updatedWeight; case '900': case '900italic': return __( 'Ultra-Bold ', 'custom-fonts' ) + updatedWeight; default: return updatedWeight; } } return (
{ getFontWeightTitle(variation) }
); }; const EditGoogleFont = ({fontId, fontName, fontUpdateAction, setFontUpdateAction}) => { const restAllData = useSelector( ( state ) => state.fonts ); const editFontId = parseInt( fontId ); const [showMessage, setShowMessage] = useState(''); const editType = useSelector( ( state ) => state.editType); let toBeEditFont = {}; let variations = []; restAllData.forEach(function(individualFont) { if ( editFontId === individualFont.id && undefined !== bsf_custom_fonts_admin.googleFonts[individualFont.title] ) { const gFontData = bsf_custom_fonts_admin.googleFonts[individualFont.title]; variations = gFontData[0] ? gFontData[0] : []; toBeEditFont = individualFont; } }); useEffect( () => { setTimeout(() => { setFontUpdateAction(''); }, 3000) }, [fontUpdateAction]) let editingFontData = {}; if ( undefined === toBeEditFont['fonts-data'] || ! toBeEditFont['fonts-data'].length ) { editingFontData = toBeEditFont['fonts-data']; } return (

{__( 'Edit Font', 'custom-fonts' )}

{__('Selected Variant', 'custom-fonts')}

{variations.map((variation) => ( ))}
{fontUpdateAction.length > 0 ?
{fontUpdateAction === 'edit' ? editType === 'add' ? __('Variation Added Successfully!', 'custom-fonts') : __('Variation Removed Successfully!', 'custom-fonts') : __('Font Removed Successfully!', 'custom-fonts')}
: null}
); }; export default EditGoogleFont; .button-secondary .dashicons-plus-alt { line-height: 1 !important; } .button-secondary { min-height: 20px !important; } .select_compare { min-height: 20px !important; line-height: 1 !important; } .button-secondary { vertical-align: middle !important; line-height: 2 !important; } .button-primary { margin-right: .2rem !important; margin-bottom: .2rem !important; vertical-align: bottom !important; min-height: 28px !important; line-height: 1 !important; } .hasDatepicker, .width-15 { min-height: 28px !important; } #my-quick-export-btn { vertical-align: top !important; } #my-date-time-format select { min-height: 28px !important; background: #fff !important; -webkit-appearance: auto !important; } #my-sort select { min-height: 28px !important; background: #fff !important; -webkit-appearance: auto !important; } input[type="text"][name^="settings"] { min-height: 28px !important; } input[type="number"][name^="settings"] { min-height: 28px !important; } .tab-actions-forms select { min-height: 28px !important; background: #fff !important; -webkit-appearance: auto !important; } .selection .select2-selection{ min-height: 28px !important; } .tab-actions-forms input { min-height: 28px !important; } .tab-actions-forms select { min-height: 28px !important; background: #fff !important; -webkit-appearance: auto !important; } .tab-actions-forms input[type="checkbox"] { min-height: auto !important; } .fields-control-block select { min-height: 28px !important; background: #fff !important; -webkit-appearance: auto !important; } .fields-control-block input { min-height: 28px !important; } .fields-control-block input[type="radio"] { min-height: auto !important; } #go-to-setup-fields-section { margin-left: 6.7rem !important; } @media( max-width: 1200px ) { #my-date-filter input[type="text"] { width: 20% !important; } #go-to-setup-fields-section { margin-left: 0.7rem !important; } } @media( max-width: 1030px ) { #my-date-filter input[type="text"] { width: 15% !important; } } @media( max-width: 800px ) { #my-quick-export-btn { margin-top: 8px !important; } } .tabs-content td, th { vertical-align: baseline !important; } .tabs-content .dashicons { line-height: 1 !important; } .tabs-content .btn-clone, .btn-to-actions, .btn-to-scheduled, .btn-trash, .btn-export { padding: 0 4px !important; } #export-block-right .like-input { min-height: 28px !important; } #setup-fields-block select { padding-left: 0px ; padding-right: 0px ; } #my-format select { line-height: 1 !important; min-height: 28px !important; } #my-format .wp-picker-container { line-height: 2.3em !important; } monitorninja – IVY

IVY

Author name: monitorninja

Remarkable_access_to_betting_insights_with_corgi-betbonus_ca_for_informed_choice

Remarkable access to betting insights with corgi-betbonus.ca for informed choices Understanding the Landscape of Online Betting Bonuses The Importance of Wagering Requirements Navigating the Variety of Betting Markets Understanding Different Sports Betting Odds Formats The Role of Responsible Gambling Strategies for Maintaining Control The Future of Online Betting and Bonus Offers Beyond Bonuses: Assessing Platform […]

Remarkable_access_to_betting_insights_with_corgi-betbonus_ca_for_informed_choice Read More »

Experiența_unică_royal-casino_com_ro_transformă_pariurile_într-o_aventură_p

Experiența unică royal-casino.com.ro transformă pariurile într-o aventură palpitantă și profitabilă O Gamă Extinsă de Jocuri pentru Toate Gusturile Jocuri Exclusivități și Progresive Bonusuri și Promoții Atractive Condiții de Pariere și Reguli Securitate și Metode de Plată Sigure Opțiuni de Depunere și Retragere Suport Clienți Profesional și Eficient Avantajele Jocurilor de Noroc Online și Responsabilitate 🔥

Experiența_unică_royal-casino_com_ro_transformă_pariurile_într-o_aventură_p Read More »

Zábavné_odměny_kolem_https_plinko-hra_cz_pro_všechny_milovníky_rychlé_a_vz

Zábavné odměny kolem https://plinko-hra.cz pro všechny milovníky rychlé a vzrušující hry Jak funguje hra Plinko a proč je tak oblíbená Strategie a tipy pro hru Plinko Různé varianty hry Plinko Výhody hraní Plinka online Psychologie hry Plinko a proč je tak návyková Zodpovědné hraní Plinka a prevence závislosti Budoucnost hry Plinko a technologické inovace 🔥

Zábavné_odměny_kolem_https_plinko-hra_cz_pro_všechny_milovníky_rychlé_a_vz Read More »

Notable_insights_alongside_https_grandmondials_org_illuminate_lasting_ancestral

Notable insights alongside https://grandmondials.org illuminate lasting ancestral legacies and traditions Unveiling the Tapestry of Ancestral Origins The Role of Oral Tradition and Storytelling Exploring Cultural Traditions and Heritage The Preservation of Endangered Languages and Customs The Impact of Ancestral Knowledge on Contemporary Life Lessons in Resilience and Adaptation The Role of Technology in Preserving and

Notable_insights_alongside_https_grandmondials_org_illuminate_lasting_ancestral Read More »

Professionelle_Lösungen_mit_my-empire_com_de_für_dauerhaften_Unternehmenserfol

Professionelle Lösungen mit my-empire.com.de für dauerhaften Unternehmenserfolg entwickeln Strategische Online-Marketing-Lösungen Die Bedeutung von Suchmaschinenoptimierung (SEO) Individuelle Webentwicklung und Design Responsive Design für mobile Nutzer Social Media Management und Community Aufbau Die Rolle von Content-Marketing im Social Media Professionelle Beratung und Projektmanagement Langfristige Partnerschaft für Ihren Erfolg 🔥 Spielen ▶️ Professionelle Lösungen mit my-empire.com.de für dauerhaften

Professionelle_Lösungen_mit_my-empire_com_de_für_dauerhaften_Unternehmenserfol Read More »

Glückliche_Gewinnerchancen_erwarten_dich_bei_rolldorado-casino_com_de_für_ein

Glückliche Gewinnerchancen erwarten dich bei rolldorado-casino.com.de für ein spannendes Spielerlebnis Das Spielangebot von rolldorado-casino.com.de: Vielfalt und Qualität Die beliebtesten Spielkategorien im Überblick Bonusangebote und Promotionen bei rolldorado-casino.com.de Umsatzbedingungen und wichtige Hinweise Sicherheit und Seriosität von rolldorado-casino.com.de Zertifizierungen und Datenschutzmaßnahmen Kunden Support und Benutzerfreundlichkeit Zukunftsperspektiven und Innovationen bei rolldorado-casino.com.de 🔥 Spielen ▶️ Glückliche Gewinnerchancen erwarten dich

Glückliche_Gewinnerchancen_erwarten_dich_bei_rolldorado-casino_com_de_für_ein Read More »

Practical_strategies_for_players_with_honey-betz_cz_and_winning_casino_insights

Practical strategies for players with honey-betz.cz and winning casino insights Understanding Game Variety and Player Preferences The Appeal of Live Dealer Games Maximizing Bonuses and Promotions Understanding Wagering Requirements Bankroll Management and Responsible Gaming Setting Limits and Recognizing Problem Gambling Navigating Payment Options at honey-betz.cz Beyond the Games: Player Support and Platform Security 🔥 Play

Practical_strategies_for_players_with_honey-betz_cz_and_winning_casino_insights Read More »

Remarkable_catches_and_thrilling_adventures_await_with_Fishing_Frenzy_this_seaso

Remarkable catches and thrilling adventures await with Fishing Frenzy this season Understanding Fishing Techniques Choosing the Right Gear Hotspots for Anglers in the Region Understanding Fish Behavior and Habitat The Importance of Structure Conservation and Responsible Angling Beyond the Catch: The Future of Angling 🔥 Play ▶️ Remarkable catches and thrilling adventures await with Fishing

Remarkable_catches_and_thrilling_adventures_await_with_Fishing_Frenzy_this_seaso Read More »

Professionelle_Beratung_und_https_honeybetz_co_at_für_sicheres_Online-Glückssp

Professionelle Beratung und https://honeybetz.co.at für sicheres Online-Glücksspiel genießen Sicherheitsaspekte beim Online-Glücksspiel: Was du wissen musst Die Bedeutung der Lizenzierung Das Spieleangebot von Honeybetz.co.at: Vielfalt und Unterhaltung Live Casino und die Interaktion mit Dealern Zahlungsmethoden und Kundenservice bei Honeybetz.co.at Verantwortungsvolles Spielen: Tipps und Hilfsangebote Mobile Verfügbarkeit und Benutzerfreundlichkeit von https://honeybetz.co.at Die Zukunft des Online-Glücksspiels und die

Professionelle_Beratung_und_https_honeybetz_co_at_für_sicheres_Online-Glückssp Read More »

Elegant_solutions_featuring_spingalaxys_ca_enhance_contemporary_home_aesthetics

Elegant solutions featuring spingalaxys.ca enhance contemporary home aesthetics easily The Appeal of Minimalist Lighting Solutions Selecting the Right Minimalist Fixtures Enhancing Living Spaces with Textured Wall Art Incorporating Texture with Different Materials The Role of Area Rugs in Defining Zones Selecting the Right Rug Size and Material Statement Mirrors: Adding Light and Space The Growing

Elegant_solutions_featuring_spingalaxys_ca_enhance_contemporary_home_aesthetics Read More »