Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Simplify language labels to a single const object
Replace getLanguageLabel() and getAvailableLanguages() with a simple
languageLabels Record<SupportedLanguage, string> constant.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
  • Loading branch information
adamziel and claude committed Nov 28, 2025
commit 9a8bf603c53c8507dc1e883f604118fe868adf18
Original file line number Diff line number Diff line change
Expand Up @@ -200,40 +200,12 @@ export function inferLanguageFromContent(input: string): SupportedLanguage {
return bestLang;
}

/**
* Get a human-readable label for a language
*/
export function getLanguageLabel(language: SupportedLanguage): string {
switch (language) {
case 'php':
return 'PHP';
case 'sql':
return 'SQL';
case 'html':
return 'HTML';
case 'markdown':
return 'Markdown';
case 'javascript':
return 'JavaScript';
case 'css':
return 'CSS';
case 'plaintext':
return 'Plain Text';
}
}

/**
* Get all available languages for the dropdown
*/
export function getAvailableLanguages(): {
value: SupportedLanguage;
label: string;
}[] {
return [
{ value: 'php', label: 'PHP' },
{ value: 'sql', label: 'SQL' },
{ value: 'html', label: 'HTML' },
{ value: 'markdown', label: 'Markdown' },
{ value: 'plaintext', label: 'Plain Text' },
];
}
export const languageLabels: Record<SupportedLanguage, string> = {
php: 'PHP',
sql: 'SQL',
html: 'HTML',
markdown: 'Markdown',
javascript: 'JavaScript',
css: 'CSS',
plaintext: 'Plain Text',
};
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ import { Button, Flex, FlexItem, SelectControl } from '@wordpress/components';
import { useCallback, useEffect, useRef, useState } from 'react';
import { Modal } from '../modal';
import {
getAvailableLanguages,
languageLabels,
type SupportedLanguage,
} from './infer-language-from-blueprint';
import css from './string-editor-modal.module.css';
Expand Down Expand Up @@ -216,10 +216,9 @@ export function StringEditorModal({
<SelectControl
label="Language"
value={language}
options={getAvailableLanguages().map((lang) => ({
value: lang.value,
label: lang.label,
}))}
options={Object.entries(languageLabels).map(
([value, label]) => ({ value, label })
)}
onChange={handleLanguageChange}
__nextHasNoMarginBottom
/>
Expand Down