/
githubmirror
/
gutenberg
Обзор
Документация
Войти
/
githubmirror
/
gutenberg
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
trunk
packages/fields/src/actions/duplicate-pattern.tsx
37 строк
1 KB
Marco Ciampini
ESLint: Replace strict config with bulk suppressions (#81248)
07 авг 2026, 14:34
Не верифицирован
07 авг 2026, 14:34
7f43eaf
Код
Авторство
О чём код?
import { _x } from '@wordpress/i18n'; // @ts-expect-error `@wordpress/patterns` is not typed yet. import { privateApis as patternsPrivateApis } from '@wordpress/patterns'; import type { Action } from '@wordpress/dataviews'; import { unlock } from '../lock-unlock'; import type { Pattern } from '../types'; // Patterns. const { CreatePatternModalContents, useDuplicatePatternProps } = unlock( patternsPrivateApis ); const duplicatePattern: Action< Pattern > = { id: 'duplicate-pattern', label: _x( 'Duplicate', 'action label' ), isEligible: ( item ) => item.type !== 'wp_template_part', modalHeader: _x( 'Duplicate pattern', 'action label' ), modalFocusOnMount: 'firstContentElement', RenderModal: ( { items, closeModal } ) => { const [ item ] = items; const duplicatedProps = useDuplicatePatternProps( { pattern: item, onSuccess: () => closeModal?.(), } ); return ( <CreatePatternModalContents onClose={ closeModal } confirmLabel={ _x( 'Duplicate', 'action label' ) } { ...duplicatedProps } /> ); }, }; /** * Duplicate action for Pattern. */ export default duplicatePattern;