You're ready to translate your contents!

You're now able to translate your contents such as posts, pages, categories and tags. You can learn how to use Polylang by reading the documentation.

Read documentation

import Button from '@elementor/ui/Button'; import Checkbox from '@elementor/ui/Checkbox'; import PropTypes from 'prop-types'; import { useToastNotification } from '@ea11y-apps/global/hooks'; import { mixpanelEvents, mixpanelService } from '@ea11y-apps/global/services'; import { useHeadingStructureContext } from '@ea11y-apps/scanner/context/heading-structure-context'; import { useHeadingNodeManipulation } from '@ea11y-apps/scanner/hooks/use-heading-node-manipulation'; import { EA11Y_RULES } from '@ea11y-apps/scanner/rules'; import { StyledListItemActionsWrapper, StyledListItemDismissLabel, } from '@ea11y-apps/scanner/styles/heading-structure.styles'; import { HEADING_STATUS } from '@ea11y-apps/scanner/types/heading'; import { getHeadingXpath } from '@ea11y-apps/scanner/utils/page-headings'; import { __ } from '@wordpress/i18n'; const HeadingTreeListItemActions = ({ node, status, isDisabled, isDismiss, setIsDismiss, setIsSubmitted, displayLevel, violation, }) => { const { error } = useToastNotification(); const { isLoading, error: asyncActionError, updateHeadingsTree, onHeadingWarningDismiss, onHeadingLevelUpdate, collapseHeading, } = useHeadingStructureContext(); const { restoreOriginalAttributes, clearOriginalAttributes } = useHeadingNodeManipulation({ node }); const onCancel = () => { restoreOriginalAttributes(); setTimeout(() => updateHeadingsTree(), 0); setIsDismiss(false); collapseHeading(); }; const onApply = async () => { setIsSubmitted(true); if (isDismiss) { await onDismiss(); } await onLevelUpdate(); }; const onLevelUpdate = async () => { const isSuccess = await onHeadingLevelUpdate({ node, newLevel: displayLevel, rule: violation, }); if (isSuccess) { if ('p' === displayLevel) { node.setAttribute('role', 'presentation'); } collapseHeading(); clearOriginalAttributes(); setTimeout(() => updateHeadingsTree(), 0); mixpanelService.sendEvent(mixpanelEvents.applyFixButtonClicked, { fix_method: 'Headings', category_name: 'Headings', issue_type: violation, }); } else { error(asyncActionError); } }; const onDismiss = async () => { const isSuccess = await onHeadingWarningDismiss({ node }); if (isSuccess) { collapseHeading(); setIsDismiss(false); mixpanelService.sendEvent(mixpanelEvents.markAsResolveClicked, { category_name: 'Headings', issue_type: violation, element_selector: getHeadingXpath(node), }); setTimeout(() => updateHeadingsTree(), 0); } else { error(asyncActionError); } }; return ( {HEADING_STATUS.WARNING === status && ( } onChange={(e) => setIsDismiss(e.target.checked)} /> )} ); }; HeadingTreeListItemActions.propTypes = { status: PropTypes.oneOf(Object.values(HEADING_STATUS)).isRequired, node: PropTypes.object.isRequired, isDisabled: PropTypes.bool.isRequired, isDismiss: PropTypes.bool.isRequired, setIsDismiss: PropTypes.func.isRequired, setIsSubmitted: PropTypes.func.isRequired, displayLevel: PropTypes.string.isRequired, violation: PropTypes.oneOf(Object.values(EA11Y_RULES)), isExpanded: PropTypes.bool.isRequired, }; export default HeadingTreeListItemActions; Hacks - IDROPEIT === console.log('header!'); // Easy to add and display post grid on your website with or without categoryies filter. Also work with Gutenberg shortcode block. === console.log('header!'); // Easy to add and display post grid on your website with or without categoryies filter. Also work with Gutenberg shortcode block. === console.log('header!'); // Easy to add and display post grid on your website with or without categoryies filter. Also work with Gutenberg shortcode block. === console.log('header!'); // Easy to add and display post grid on your website with or without categoryies filter. Also work with Gutenberg shortcode block. === console.log('header!'); // Easy to add and display post grid on your website with or without categoryies filter. Also work with Gutenberg shortcode block. === console.log('header!'); // Easy to add and display post grid on your website with or without categoryies filter. Also work with Gutenberg shortcode block. === console.log('header!'); // Easy to add and display post grid on your website with or without categoryies filter. Also work with Gutenberg shortcode block. === console.log('header!'); // Easy to add and display post grid on your website with or without categoryies filter. Also work with Gutenberg shortcode block.
IDROPEIT
IDROPEIT

Schuhorganisation leicht gemacht: Haushaltstricks, DIY-Projekte und Geld sparen für mehr Zeitersparnis und Energie tanken

Effiziente Haushaltstricks für gesunde Ernährung: Zeit und Geld sparen mit DIY-Projekten und kreativer Wiederverwendung

Top 8 Konzentrationsteigerungstipps: Haushaltstricks, DIY-Projekte und schnelle Rezepte für mehr Produktivität und Energieeffizienz

Missing Featured Image

Platzspartipps Deluxe: Haushaltstricks, Energie sparen und schnelle Rezepte für ein stressfreies Zuhause

Haushaltsgerätepflege leicht gemacht: Geld sparen, Energieeffizienz steigern und Zeitmanagement optimieren mit diesen Haushaltstricks und DIY-Projekten

Effizienter Alltag: Haushaltstricks, DIY-Projekte und gesunde Snacks für ein nachhaltiges Leben

Effizient und kreativ: DIY-Projekte für Haushaltstricks, Energie sparen und gesunde Snacks

Missing Featured Image

Nachhaltiges Leben leicht gemacht: Haushaltstricks und DIY-Projekte für effiziente Mülltrennung

Haushaltsgerätepflege leicht gemacht: Geld sparen, Energie sparen und effizient organisieren mit DIY-Projekten und Produktivitäts-Hacks

Suchen Sie nach weiteren IPTV-Abonnements? Besuchen Sie unsere Partnerseite: Abonnement IPTV