Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
primogenial
/
wp-content
/
plugins
/
woocommerce
/
packages
/
woocommerce-blocks
/
assets
/
js
/
blocks
/
classic-template
:
utils.ts
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
/** * External dependencies */ import { Block } from '@wordpress/blocks'; /** * Internal dependencies */ import { TEMPLATES } from './constants'; import { TemplateDetails } from './types'; // Finds the most appropriate template details object for specific template keys such as single-product-hoodie. export function getTemplateDetailsBySlug( parsedTemplate: string, templates: TemplateDetails ) { const templateKeys = Object.keys( templates ); let templateDetails = null; for ( let i = 0; templateKeys.length > i; i++ ) { const keyToMatch = parsedTemplate.substr( 0, templateKeys[ i ].length ); const maybeTemplate = templates[ keyToMatch ]; if ( maybeTemplate ) { templateDetails = maybeTemplate; break; } } return templateDetails; } export function isClassicTemplateBlockRegisteredWithAnotherTitle( // eslint-disable-next-line @typescript-eslint/no-explicit-any block: Block< any > | undefined, parsedTemplate: string ) { const templateDetails = getTemplateDetailsBySlug( parsedTemplate, TEMPLATES ); return block?.title !== templateDetails?.title; } export function hasTemplateSupportForClassicTemplateBlock( parsedTemplate: string, templates: TemplateDetails ): boolean { return getTemplateDetailsBySlug( parsedTemplate, templates ) ? true : false; }