feat(previews): add refreshAllPreviews method to refresh all previews
This commit introduces the `refreshAllPreviews` method in the `PreviewsStore` class, which iterates through all previews and triggers a file change broadcast for each. This ensures that all previews are updated after a file save operation. refactor(CodeBlock): handle unsupported languages by falling back to plaintext The `CodeBlock` component now defaults to 'plaintext' when an unsupported language is detected, improving the user experience by avoiding unsupported language errors. prompts: update dependency installation instructions The prompts documentation has been updated to clarify the process of installing dependencies, emphasizing the importance of updating `package.json` first and avoiding individual package installations.
This commit is contained in:
@@ -35,18 +35,21 @@ export const CodeBlock = memo(
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
let effectiveLanguage = language;
|
||||
|
||||
if (language && !isSpecialLang(language) && !(language in bundledLanguages)) {
|
||||
logger.warn(`Unsupported language '${language}'`);
|
||||
logger.warn(`Unsupported language '${language}', falling back to plaintext`);
|
||||
effectiveLanguage = 'plaintext';
|
||||
}
|
||||
|
||||
logger.trace(`Language = ${language}`);
|
||||
logger.trace(`Language = ${effectiveLanguage}`);
|
||||
|
||||
const processCode = async () => {
|
||||
setHTML(await codeToHtml(code, { lang: language, theme }));
|
||||
setHTML(await codeToHtml(code, { lang: effectiveLanguage, theme }));
|
||||
};
|
||||
|
||||
processCode();
|
||||
}, [code]);
|
||||
}, [code, language, theme]);
|
||||
|
||||
return (
|
||||
<div className={classNames('relative group text-left', className)}>
|
||||
|
||||
Reference in New Issue
Block a user