Skip to content

Commit 21d76a4

Browse files
authored
Fix prism re-highlighting code (#153)
1 parent b4e65e6 commit 21d76a4

File tree

9 files changed

+26
-2
lines changed

9 files changed

+26
-2
lines changed

.changeset/rotten-windows-enjoy.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'docusaurus-theme-redoc': patch
3+
---
4+
5+
Fix prism re-highlighting all code on load
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import ExecutionEnvironment from '@docusaurus/ExecutionEnvironment';
2+
3+
if (ExecutionEnvironment.canUseDOM) {
4+
/**
5+
* @see https://github.com/rohit-gohri/redocusaurus/issues/89#issuecomment-942256382
6+
*/
7+
// @ts-expect-error prism global
8+
window.Prism = window.Prism || {};
9+
// @ts-expect-error prism global
10+
window.Prism.manual = true;
11+
}

packages/docusaurus-theme-redoc/src/index.ts

+4-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,10 @@ export default function redocTheme(
5353
return path.join(__dirname, '..', 'src', 'theme');
5454
},
5555
getClientModules() {
56-
return [path.join(__dirname, 'custom.css')];
56+
return [
57+
path.join(__dirname, 'custom.css'),
58+
path.join(__dirname, 'global.js'),
59+
];
5760
},
5861
};
5962
}

packages/docusaurus-theme-redoc/src/redocData.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { RedocRawOptions } from 'redoc';
1+
import type { RedocRawOptions } from 'redoc';
22
import merge from 'lodash/merge';
33
import { GlobalData, RedocThemeOverrides, ThemeOptions } from './types/options';
44

packages/docusaurus-theme-redoc/src/theme/ApiSchema/ApiSchema.tsx

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import React from 'react';
22
import clsx from 'clsx';
33
import { ThemeProvider } from 'styled-components';
4+
import '../../global';
45
import { SchemaDefinition } from 'redoc';
56
import { useSpec } from '../../utils/useSpec';
67
import { useSpecData } from '../useSpecData';

packages/docusaurus-theme-redoc/src/theme/Redoc/Redoc.tsx

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import React from 'react';
22
import clsx from 'clsx';
3+
import '../../global';
34
import { Redoc as RedocComponent } from 'redoc';
45
import { SpecProps } from '../../types/common';
56
import { useSpec } from '../../utils/useSpec';

packages/docusaurus-theme-redoc/src/theme/Redoc/ServerStyles.tsx

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import React from 'react';
2+
import '../../global';
23
import { AppStore, Redoc } from 'redoc';
34
// eslint-disable-next-line import/no-extraneous-dependencies
45
import { renderToString } from 'react-dom/server';

packages/docusaurus-theme-redoc/src/theme/Redoc/Styles.tsx

+1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import React from 'react';
2+
import '../../global';
23
import type { AppStore } from 'redoc';
34

45
/**

packages/docusaurus-theme-redoc/src/utils/useSpec.ts

+1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import useBaseUrl from '@docusaurus/useBaseUrl';
33
import useIsBrowser from '@docusaurus/useIsBrowser';
44
import { usePluginData } from '@docusaurus/useGlobalData';
55
import { useColorMode } from '@docusaurus/theme-common';
6+
import '../global';
67
import { AppStore, RedocRawOptions } from 'redoc';
78
import { SpecProps } from '../types/common';
89
import { GlobalData } from '../types/options';

0 commit comments

Comments
 (0)