@docusaurus/theme-classic 0.0.0-4375 → 0.0.0-4379
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.js +0 -2
- package/lib/theme-classic.d.ts +12 -135
- package/lib-next/theme/CodeBlock/index.js +1 -1
- package/lib-next/theme/DocItem/index.js +1 -2
- package/lib-next/theme/DocSidebar/index.js +1 -1
- package/lib-next/theme/DocVersionBanner/index.js +4 -1
- package/lib-next/theme/Layout/index.js +1 -2
- package/lib-next/theme/LayoutProviders/index.js +6 -6
- package/lib-next/theme/Navbar/index.js +6 -6
- package/lib-next/theme/NavbarItem/DocNavbarItem.js +4 -1
- package/lib-next/theme/NavbarItem/DocSidebarNavbarItem.js +4 -1
- package/lib-next/theme/NavbarItem/DocsVersionDropdownNavbarItem.js +1 -1
- package/lib-next/theme/NavbarItem/DocsVersionNavbarItem.js +4 -1
- package/lib-next/theme/SkipToContent/index.js +1 -1
- package/lib-next/theme/Tabs/__tests__/index.test.js +8 -6
- package/lib-next/theme/Tabs/index.js +6 -3
- package/lib-next/theme/ThemedImage/index.js +2 -2
- package/package.json +12 -12
- package/src/index.ts +0 -4
- package/src/theme/CodeBlock/index.tsx +1 -1
- package/src/theme/DocItem/index.tsx +1 -2
- package/src/theme/DocSidebar/index.tsx +1 -1
- package/src/theme/DocVersionBanner/index.tsx +1 -1
- package/src/theme/Layout/index.tsx +1 -2
- package/src/theme/LayoutProviders/index.tsx +6 -6
- package/src/theme/Navbar/index.tsx +6 -6
- package/src/theme/NavbarItem/DocNavbarItem.tsx +4 -1
- package/src/theme/NavbarItem/DocSidebarNavbarItem.tsx +4 -1
- package/src/theme/NavbarItem/DocsVersionDropdownNavbarItem.tsx +1 -1
- package/src/theme/NavbarItem/DocsVersionNavbarItem.tsx +1 -1
- package/src/theme/SkipToContent/index.tsx +1 -1
- package/src/theme/Tabs/index.tsx +6 -3
- package/src/theme/ThemedImage/index.tsx +2 -2
- package/src/theme-classic.d.ts +12 -135
- package/lib-next/theme/ThemeContext.js +0 -9
- package/lib-next/theme/ThemeProvider/index.js +0 -28
- package/lib-next/theme/UserPreferencesContext.js +0 -9
- package/lib-next/theme/UserPreferencesProvider/index.js +0 -27
- package/lib-next/theme/hooks/styles.css +0 -10
- package/lib-next/theme/hooks/useDocs.js +0 -11
- package/lib-next/theme/hooks/useHideableNavbar.js +0 -66
- package/lib-next/theme/hooks/useKeyboardNavigation.js +0 -35
- package/lib-next/theme/hooks/useLockBodyScroll.js +0 -18
- package/lib-next/theme/hooks/usePrismTheme.js +0 -20
- package/lib-next/theme/hooks/useTabGroupChoice.js +0 -39
- package/lib-next/theme/hooks/useTheme.js +0 -81
- package/lib-next/theme/hooks/useThemeContext.js +0 -22
- package/lib-next/theme/hooks/useUserPreferencesContext.js +0 -22
- package/lib-next/theme/hooks/useWindowSize.js +0 -59
- package/src/theme/ThemeContext.ts +0 -15
- package/src/theme/ThemeProvider/index.tsx +0 -28
- package/src/theme/UserPreferencesContext.ts +0 -12
- package/src/theme/UserPreferencesProvider/index.tsx +0 -30
- package/src/theme/hooks/styles.css +0 -10
- package/src/theme/hooks/useDocs.ts +0 -12
- package/src/theme/hooks/useHideableNavbar.ts +0 -72
- package/src/theme/hooks/useKeyboardNavigation.ts +0 -39
- package/src/theme/hooks/useLockBodyScroll.ts +0 -20
- package/src/theme/hooks/usePrismTheme.ts +0 -22
- package/src/theme/hooks/useTabGroupChoice.ts +0 -46
- package/src/theme/hooks/useTheme.ts +0 -91
- package/src/theme/hooks/useThemeContext.ts +0 -23
- package/src/theme/hooks/useUserPreferencesContext.ts +0 -25
- package/src/theme/hooks/useWindowSize.ts +0 -69
package/lib/index.js
CHANGED
|
@@ -178,8 +178,6 @@ options) {
|
|
|
178
178
|
configureWebpack() {
|
|
179
179
|
const prismLanguages = additionalLanguages.map(lang => `prism-${lang}`).join('|');
|
|
180
180
|
return {
|
|
181
|
-
ignoreWarnings: [// See https://github.com/facebook/docusaurus/pull/3382
|
|
182
|
-
e => e.message.includes("Can't resolve '@theme-init/hooks/useDocs")],
|
|
183
181
|
plugins: [new ContextReplacementPlugin(/prismjs[\\/]components$/, new RegExp(`^./(${prismLanguages})$`))]
|
|
184
182
|
};
|
|
185
183
|
},
|
package/lib/theme-classic.d.ts
CHANGED
|
@@ -215,86 +215,6 @@ declare module '@theme/Heading' {
|
|
|
215
215
|
export default function Heading(props: Props): JSX.Element;
|
|
216
216
|
}
|
|
217
217
|
|
|
218
|
-
declare module '@theme/hooks/useHideableNavbar' {
|
|
219
|
-
export type useHideableNavbarReturns = {
|
|
220
|
-
readonly navbarRef: (node: HTMLElement | null) => void;
|
|
221
|
-
readonly isNavbarVisible: boolean;
|
|
222
|
-
};
|
|
223
|
-
|
|
224
|
-
const useHideableNavbar: (hideOnScroll: boolean) => useHideableNavbarReturns;
|
|
225
|
-
export default useHideableNavbar;
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
declare module '@theme/hooks/useLockBodyScroll' {
|
|
229
|
-
const useLockBodyScroll: (lock?: boolean) => void;
|
|
230
|
-
export default useLockBodyScroll;
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
declare module '@theme/hooks/usePrismTheme' {
|
|
234
|
-
import type defaultTheme from 'prism-react-renderer/themes/palenight';
|
|
235
|
-
|
|
236
|
-
const usePrismTheme: () => typeof defaultTheme;
|
|
237
|
-
export default usePrismTheme;
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
declare module '@theme/hooks/useTabGroupChoice' {
|
|
241
|
-
export type useTabGroupChoiceReturns = {
|
|
242
|
-
readonly tabGroupChoices: {readonly [groupId: string]: string};
|
|
243
|
-
readonly setTabGroupChoices: (groupId: string, newChoice: string) => void;
|
|
244
|
-
};
|
|
245
|
-
|
|
246
|
-
const useTabGroupChoice: () => useTabGroupChoiceReturns;
|
|
247
|
-
export default useTabGroupChoice;
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
declare module '@theme/hooks/useTheme' {
|
|
251
|
-
export type useThemeReturns = {
|
|
252
|
-
readonly isDarkTheme: boolean;
|
|
253
|
-
readonly setLightTheme: () => void;
|
|
254
|
-
readonly setDarkTheme: () => void;
|
|
255
|
-
};
|
|
256
|
-
|
|
257
|
-
const useTheme: () => useThemeReturns;
|
|
258
|
-
export default useTheme;
|
|
259
|
-
}
|
|
260
|
-
|
|
261
|
-
declare module '@theme/hooks/useThemeContext' {
|
|
262
|
-
export type ThemeContextProps = {
|
|
263
|
-
isDarkTheme: boolean;
|
|
264
|
-
setLightTheme: () => void;
|
|
265
|
-
setDarkTheme: () => void;
|
|
266
|
-
};
|
|
267
|
-
|
|
268
|
-
export default function useThemeContext(): ThemeContextProps;
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
declare module '@theme/hooks/useUserPreferencesContext' {
|
|
272
|
-
export type UserPreferencesContextProps = {
|
|
273
|
-
tabGroupChoices: {readonly [groupId: string]: string};
|
|
274
|
-
setTabGroupChoices: (groupId: string, newChoice: string) => void;
|
|
275
|
-
};
|
|
276
|
-
|
|
277
|
-
export default function useUserPreferencesContext(): UserPreferencesContextProps;
|
|
278
|
-
}
|
|
279
|
-
|
|
280
|
-
declare module '@theme/hooks/useWindowSize' {
|
|
281
|
-
export const windowSizes: {
|
|
282
|
-
desktop: 'desktop';
|
|
283
|
-
mobile: 'mobile';
|
|
284
|
-
ssr: 'ssr';
|
|
285
|
-
};
|
|
286
|
-
|
|
287
|
-
export type WindowSize = keyof typeof windowSizes;
|
|
288
|
-
|
|
289
|
-
export default function useWindowSize(): WindowSize;
|
|
290
|
-
}
|
|
291
|
-
|
|
292
|
-
declare module '@theme/hooks/useKeyboardNavigation' {
|
|
293
|
-
const useKeyboardNavigation: () => void;
|
|
294
|
-
|
|
295
|
-
export default useKeyboardNavigation;
|
|
296
|
-
}
|
|
297
|
-
|
|
298
218
|
declare module '@theme/Layout' {
|
|
299
219
|
import type {ReactNode} from 'react';
|
|
300
220
|
|
|
@@ -314,8 +234,7 @@ declare module '@theme/Layout' {
|
|
|
314
234
|
};
|
|
315
235
|
}
|
|
316
236
|
|
|
317
|
-
|
|
318
|
-
export default Layout;
|
|
237
|
+
export default function Layout(props: Props): JSX.Element;
|
|
319
238
|
}
|
|
320
239
|
|
|
321
240
|
declare module '@theme/LayoutHead' {
|
|
@@ -323,8 +242,17 @@ declare module '@theme/LayoutHead' {
|
|
|
323
242
|
|
|
324
243
|
export interface Props extends Omit<LayoutProps, 'children'> {}
|
|
325
244
|
|
|
326
|
-
|
|
327
|
-
|
|
245
|
+
export default function LayoutHead(props: Props): JSX.Element;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
declare module '@theme/LayoutProviders' {
|
|
249
|
+
import type {ReactNode} from 'react';
|
|
250
|
+
|
|
251
|
+
export interface Props {
|
|
252
|
+
readonly children: ReactNode;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
export default function LayoutProviders(props: Props): JSX.Element;
|
|
328
256
|
}
|
|
329
257
|
|
|
330
258
|
declare module '@theme/SearchMetadata' {
|
|
@@ -621,17 +549,6 @@ declare module '@theme/Details' {
|
|
|
621
549
|
export default Details;
|
|
622
550
|
}
|
|
623
551
|
|
|
624
|
-
declare module '@theme/ThemeProvider' {
|
|
625
|
-
import type {ReactNode} from 'react';
|
|
626
|
-
|
|
627
|
-
export interface Props {
|
|
628
|
-
readonly children: ReactNode;
|
|
629
|
-
}
|
|
630
|
-
|
|
631
|
-
const ThemeProvider: (props: Props) => JSX.Element;
|
|
632
|
-
export default ThemeProvider;
|
|
633
|
-
}
|
|
634
|
-
|
|
635
552
|
declare module '@theme/TOCItems' {
|
|
636
553
|
import type {TOCItem} from '@docusaurus/types';
|
|
637
554
|
|
|
@@ -712,46 +629,6 @@ declare module '@theme/Toggle' {
|
|
|
712
629
|
export default Toggle;
|
|
713
630
|
}
|
|
714
631
|
|
|
715
|
-
declare module '@theme/UserPreferencesProvider' {
|
|
716
|
-
import type {ReactNode} from 'react';
|
|
717
|
-
|
|
718
|
-
export interface Props {
|
|
719
|
-
readonly children: ReactNode;
|
|
720
|
-
}
|
|
721
|
-
|
|
722
|
-
const UserPreferencesProvider: (props: Props) => JSX.Element;
|
|
723
|
-
export default UserPreferencesProvider;
|
|
724
|
-
}
|
|
725
|
-
|
|
726
|
-
declare module '@theme/LayoutProviders' {
|
|
727
|
-
import type {ReactNode} from 'react';
|
|
728
|
-
|
|
729
|
-
export interface Props {
|
|
730
|
-
readonly children: ReactNode;
|
|
731
|
-
}
|
|
732
|
-
|
|
733
|
-
const LayoutProviders: (props: Props) => JSX.Element;
|
|
734
|
-
export default LayoutProviders;
|
|
735
|
-
}
|
|
736
|
-
|
|
737
|
-
declare module '@theme/ThemeContext' {
|
|
738
|
-
import type {Context} from 'react';
|
|
739
|
-
import type {ThemeContextProps} from '@theme/hooks/useThemeContext';
|
|
740
|
-
|
|
741
|
-
const ThemeContext: Context<ThemeContextProps | undefined>;
|
|
742
|
-
export default ThemeContext;
|
|
743
|
-
}
|
|
744
|
-
|
|
745
|
-
declare module '@theme/UserPreferencesContext' {
|
|
746
|
-
import type {Context} from 'react';
|
|
747
|
-
import type {UserPreferencesContextProps} from '@theme/hooks/useUserPreferencesContext';
|
|
748
|
-
|
|
749
|
-
const UserPreferencesContext: Context<
|
|
750
|
-
UserPreferencesContextProps | undefined
|
|
751
|
-
>;
|
|
752
|
-
export default UserPreferencesContext;
|
|
753
|
-
}
|
|
754
|
-
|
|
755
632
|
declare module '@theme/Logo' {
|
|
756
633
|
import type {ComponentProps} from 'react';
|
|
757
634
|
|
|
@@ -15,8 +15,8 @@ import {
|
|
|
15
15
|
parseLanguage,
|
|
16
16
|
parseLines,
|
|
17
17
|
ThemeClassNames,
|
|
18
|
+
usePrismTheme,
|
|
18
19
|
} from '@docusaurus/theme-common';
|
|
19
|
-
import usePrismTheme from '@theme/hooks/usePrismTheme';
|
|
20
20
|
import styles from './styles.module.css';
|
|
21
21
|
export default function CodeBlock({
|
|
22
22
|
children,
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import React from 'react';
|
|
8
8
|
import clsx from 'clsx';
|
|
9
|
-
import useWindowSize from '@theme/hooks/useWindowSize';
|
|
10
9
|
import DocPaginator from '@theme/DocPaginator';
|
|
11
10
|
import DocVersionBanner from '@theme/DocVersionBanner';
|
|
12
11
|
import DocVersionBadge from '@theme/DocVersionBadge';
|
|
@@ -16,7 +15,7 @@ import TOC from '@theme/TOC';
|
|
|
16
15
|
import TOCCollapsible from '@theme/TOCCollapsible';
|
|
17
16
|
import Heading from '@theme/Heading';
|
|
18
17
|
import styles from './styles.module.css';
|
|
19
|
-
import {ThemeClassNames} from '@docusaurus/theme-common';
|
|
18
|
+
import {ThemeClassNames, useWindowSize} from '@docusaurus/theme-common';
|
|
20
19
|
export default function DocItem(props) {
|
|
21
20
|
const {content: DocContent} = props;
|
|
22
21
|
const {metadata, frontMatter} = DocContent;
|
|
@@ -12,8 +12,8 @@ import {
|
|
|
12
12
|
MobileSecondaryMenuFiller,
|
|
13
13
|
ThemeClassNames,
|
|
14
14
|
useScrollPosition,
|
|
15
|
+
useWindowSize,
|
|
15
16
|
} from '@docusaurus/theme-common';
|
|
16
|
-
import useWindowSize from '@theme/hooks/useWindowSize';
|
|
17
17
|
import Logo from '@theme/Logo';
|
|
18
18
|
import IconArrow from '@theme/IconArrow';
|
|
19
19
|
import {translate} from '@docusaurus/Translate';
|
|
@@ -8,7 +8,10 @@ import React from 'react';
|
|
|
8
8
|
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
|
|
9
9
|
import Link from '@docusaurus/Link';
|
|
10
10
|
import Translate from '@docusaurus/Translate';
|
|
11
|
-
import {
|
|
11
|
+
import {
|
|
12
|
+
useActivePlugin,
|
|
13
|
+
useDocVersionSuggestions,
|
|
14
|
+
} from '@docusaurus/plugin-content-docs/client';
|
|
12
15
|
import {
|
|
13
16
|
ThemeClassNames,
|
|
14
17
|
useDocsPreferredVersion,
|
|
@@ -13,8 +13,7 @@ import Navbar from '@theme/Navbar';
|
|
|
13
13
|
import Footer from '@theme/Footer';
|
|
14
14
|
import LayoutProviders from '@theme/LayoutProviders';
|
|
15
15
|
import LayoutHead from '@theme/LayoutHead';
|
|
16
|
-
import useKeyboardNavigation from '@theme
|
|
17
|
-
import {ThemeClassNames} from '@docusaurus/theme-common';
|
|
16
|
+
import {ThemeClassNames, useKeyboardNavigation} from '@docusaurus/theme-common';
|
|
18
17
|
import ErrorPageContent from '@theme/ErrorPageContent';
|
|
19
18
|
import './styles.css';
|
|
20
19
|
|
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
import React from 'react';
|
|
8
|
-
import ThemeProvider from '@theme/ThemeProvider';
|
|
9
|
-
import UserPreferencesProvider from '@theme/UserPreferencesProvider';
|
|
10
8
|
import {
|
|
9
|
+
ColorModeProvider,
|
|
10
|
+
TabGroupChoiceProvider,
|
|
11
11
|
AnnouncementBarProvider,
|
|
12
12
|
DocsPreferredVersionContextProvider,
|
|
13
13
|
MobileSecondaryMenuProvider,
|
|
@@ -15,9 +15,9 @@ import {
|
|
|
15
15
|
} from '@docusaurus/theme-common';
|
|
16
16
|
export default function LayoutProviders({children}) {
|
|
17
17
|
return (
|
|
18
|
-
<
|
|
18
|
+
<ColorModeProvider>
|
|
19
19
|
<AnnouncementBarProvider>
|
|
20
|
-
<
|
|
20
|
+
<TabGroupChoiceProvider>
|
|
21
21
|
<ScrollControllerProvider>
|
|
22
22
|
<DocsPreferredVersionContextProvider>
|
|
23
23
|
<MobileSecondaryMenuProvider>
|
|
@@ -25,8 +25,8 @@ export default function LayoutProviders({children}) {
|
|
|
25
25
|
</MobileSecondaryMenuProvider>
|
|
26
26
|
</DocsPreferredVersionContextProvider>
|
|
27
27
|
</ScrollControllerProvider>
|
|
28
|
-
</
|
|
28
|
+
</TabGroupChoiceProvider>
|
|
29
29
|
</AnnouncementBarProvider>
|
|
30
|
-
</
|
|
30
|
+
</ColorModeProvider>
|
|
31
31
|
);
|
|
32
32
|
}
|
|
@@ -9,17 +9,17 @@ import clsx from 'clsx';
|
|
|
9
9
|
import Translate from '@docusaurus/Translate';
|
|
10
10
|
import SearchBar from '@theme/SearchBar';
|
|
11
11
|
import Toggle from '@theme/Toggle';
|
|
12
|
-
import useThemeContext from '@theme/hooks/useThemeContext';
|
|
13
12
|
import {
|
|
14
13
|
useThemeConfig,
|
|
15
14
|
useMobileSecondaryMenuRenderer,
|
|
16
15
|
usePrevious,
|
|
17
16
|
useHistoryPopHandler,
|
|
17
|
+
useHideableNavbar,
|
|
18
|
+
useLockBodyScroll,
|
|
19
|
+
useWindowSize,
|
|
20
|
+
useColorMode,
|
|
18
21
|
} from '@docusaurus/theme-common';
|
|
19
|
-
import
|
|
20
|
-
import useLockBodyScroll from '@theme/hooks/useLockBodyScroll';
|
|
21
|
-
import useWindowSize from '@theme/hooks/useWindowSize';
|
|
22
|
-
import {useActivePlugin} from '@theme/hooks/useDocs';
|
|
22
|
+
import {useActivePlugin} from '@docusaurus/plugin-content-docs/client';
|
|
23
23
|
import NavbarItem from '@theme/NavbarItem';
|
|
24
24
|
import Logo from '@theme/Logo';
|
|
25
25
|
import IconMenu from '@theme/IconMenu';
|
|
@@ -84,7 +84,7 @@ function useColorModeToggle() {
|
|
|
84
84
|
const {
|
|
85
85
|
colorMode: {disableSwitch},
|
|
86
86
|
} = useThemeConfig();
|
|
87
|
-
const {isDarkTheme, setLightTheme, setDarkTheme} =
|
|
87
|
+
const {isDarkTheme, setLightTheme, setDarkTheme} = useColorMode();
|
|
88
88
|
const toggle = useCallback(
|
|
89
89
|
(e) => (e.target.checked ? setDarkTheme() : setLightTheme()),
|
|
90
90
|
[setLightTheme, setDarkTheme],
|
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import React from 'react';
|
|
8
8
|
import DefaultNavbarItem from '@theme/NavbarItem/DefaultNavbarItem';
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
useLatestVersion,
|
|
11
|
+
useActiveDocContext,
|
|
12
|
+
} from '@docusaurus/plugin-content-docs/client';
|
|
10
13
|
import clsx from 'clsx';
|
|
11
14
|
import {getInfimaActiveClassName} from '@theme/NavbarItem/utils';
|
|
12
15
|
import {useDocsPreferredVersion, uniq} from '@docusaurus/theme-common';
|
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import React from 'react';
|
|
8
8
|
import DefaultNavbarItem from '@theme/NavbarItem/DefaultNavbarItem';
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
useLatestVersion,
|
|
11
|
+
useActiveDocContext,
|
|
12
|
+
} from '@docusaurus/plugin-content-docs/client';
|
|
10
13
|
import clsx from 'clsx';
|
|
11
14
|
import {getInfimaActiveClassName} from '@theme/NavbarItem/utils';
|
|
12
15
|
import {useDocsPreferredVersion, uniq} from '@docusaurus/theme-common';
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
useVersions,
|
|
12
12
|
useLatestVersion,
|
|
13
13
|
useActiveDocContext,
|
|
14
|
-
} from '@
|
|
14
|
+
} from '@docusaurus/plugin-content-docs/client';
|
|
15
15
|
import {useDocsPreferredVersion} from '@docusaurus/theme-common';
|
|
16
16
|
import {translate} from '@docusaurus/Translate';
|
|
17
17
|
|
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import React from 'react';
|
|
8
8
|
import DefaultNavbarItem from '@theme/NavbarItem/DefaultNavbarItem';
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
useActiveVersion,
|
|
11
|
+
useLatestVersion,
|
|
12
|
+
} from '@docusaurus/plugin-content-docs/client';
|
|
10
13
|
import {useDocsPreferredVersion} from '@docusaurus/theme-common';
|
|
11
14
|
|
|
12
15
|
const getVersionMainDoc = (version) =>
|
|
@@ -37,7 +37,7 @@ function SkipToContent() {
|
|
|
37
37
|
}
|
|
38
38
|
});
|
|
39
39
|
return (
|
|
40
|
-
<div ref={containerRef}>
|
|
40
|
+
<div ref={containerRef} role="region">
|
|
41
41
|
{/* eslint-disable-next-line jsx-a11y/anchor-is-valid */}
|
|
42
42
|
<a href="#" className={styles.skipToContent} onClick={handleSkip}>
|
|
43
43
|
<Translate
|
|
@@ -8,8 +8,10 @@ import React from 'react';
|
|
|
8
8
|
import renderer from 'react-test-renderer';
|
|
9
9
|
import Tabs from '../index';
|
|
10
10
|
import TabItem from '../../TabItem';
|
|
11
|
-
import
|
|
12
|
-
|
|
11
|
+
import {
|
|
12
|
+
TabGroupChoiceProvider,
|
|
13
|
+
ScrollControllerProvider,
|
|
14
|
+
} from '@docusaurus/theme-common';
|
|
13
15
|
describe('Tabs', () => {
|
|
14
16
|
test('Should reject bad Tabs child', () => {
|
|
15
17
|
expect(() => {
|
|
@@ -55,7 +57,7 @@ describe('Tabs', () => {
|
|
|
55
57
|
expect(() => {
|
|
56
58
|
renderer.create(
|
|
57
59
|
<ScrollControllerProvider>
|
|
58
|
-
<
|
|
60
|
+
<TabGroupChoiceProvider>
|
|
59
61
|
<Tabs>
|
|
60
62
|
<TabItem value="v1">Tab 1</TabItem>
|
|
61
63
|
<TabItem value="v2">Tab 2</TabItem>
|
|
@@ -112,7 +114,7 @@ describe('Tabs', () => {
|
|
|
112
114
|
Tab 2
|
|
113
115
|
</TabItem>
|
|
114
116
|
</Tabs>
|
|
115
|
-
</
|
|
117
|
+
</TabGroupChoiceProvider>
|
|
116
118
|
</ScrollControllerProvider>,
|
|
117
119
|
);
|
|
118
120
|
}).not.toThrow(); // TODO Better Jest infrastructure to mock the Layout
|
|
@@ -123,7 +125,7 @@ describe('Tabs', () => {
|
|
|
123
125
|
const tabs = ['Apple', 'Banana', 'Carrot'];
|
|
124
126
|
renderer.create(
|
|
125
127
|
<ScrollControllerProvider>
|
|
126
|
-
<
|
|
128
|
+
<TabGroupChoiceProvider>
|
|
127
129
|
<Tabs
|
|
128
130
|
values={tabs.map((t, idx) => ({
|
|
129
131
|
label: t,
|
|
@@ -134,7 +136,7 @@ describe('Tabs', () => {
|
|
|
134
136
|
<TabItem value={idx}>{t}</TabItem>
|
|
135
137
|
))}
|
|
136
138
|
</Tabs>
|
|
137
|
-
</
|
|
139
|
+
</TabGroupChoiceProvider>
|
|
138
140
|
</ScrollControllerProvider>,
|
|
139
141
|
);
|
|
140
142
|
}).not.toThrow();
|
|
@@ -6,8 +6,11 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import React, {useState, cloneElement, Children, isValidElement} from 'react';
|
|
8
8
|
import useIsBrowser from '@docusaurus/useIsBrowser';
|
|
9
|
-
import
|
|
10
|
-
|
|
9
|
+
import {
|
|
10
|
+
useScrollPositionBlocker,
|
|
11
|
+
duplicates,
|
|
12
|
+
useTabGroupChoice,
|
|
13
|
+
} from '@docusaurus/theme-common';
|
|
11
14
|
import clsx from 'clsx';
|
|
12
15
|
import styles from './styles.module.css'; // A very rough duck type, but good enough to guard against mistakes while
|
|
13
16
|
// allowing customization
|
|
@@ -72,7 +75,7 @@ function TabsComponent(props) {
|
|
|
72
75
|
);
|
|
73
76
|
}
|
|
74
77
|
|
|
75
|
-
const {tabGroupChoices, setTabGroupChoices} =
|
|
78
|
+
const {tabGroupChoices, setTabGroupChoices} = useTabGroupChoice();
|
|
76
79
|
const [selectedValue, setSelectedValue] = useState(defaultValue);
|
|
77
80
|
const tabRefs = [];
|
|
78
81
|
const {blockElementScrollPositionUntilNextRender} =
|
|
@@ -7,12 +7,12 @@
|
|
|
7
7
|
import React from 'react';
|
|
8
8
|
import clsx from 'clsx';
|
|
9
9
|
import useIsBrowser from '@docusaurus/useIsBrowser';
|
|
10
|
-
import
|
|
10
|
+
import {useColorMode} from '@docusaurus/theme-common';
|
|
11
11
|
import styles from './styles.module.css';
|
|
12
12
|
|
|
13
13
|
function ThemedImage(props) {
|
|
14
14
|
const isBrowser = useIsBrowser();
|
|
15
|
-
const {isDarkTheme} =
|
|
15
|
+
const {isDarkTheme} = useColorMode();
|
|
16
16
|
const {sources, className, alt = '', ...propsRest} = props;
|
|
17
17
|
const clientThemes = isDarkTheme ? ['dark'] : ['light'];
|
|
18
18
|
const renderedSourceNames = isBrowser
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@docusaurus/theme-classic",
|
|
3
|
-
"version": "0.0.0-
|
|
3
|
+
"version": "0.0.0-4379",
|
|
4
4
|
"description": "Classic theme for Docusaurus",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "src/theme-classic.d.ts",
|
|
@@ -23,14 +23,14 @@
|
|
|
23
23
|
"update-code-translations": "node -e 'require(\"./update-code-translations.js\").run()'"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@docusaurus/core": "0.0.0-
|
|
27
|
-
"@docusaurus/plugin-content-blog": "0.0.0-
|
|
28
|
-
"@docusaurus/plugin-content-docs": "0.0.0-
|
|
29
|
-
"@docusaurus/plugin-content-pages": "0.0.0-
|
|
30
|
-
"@docusaurus/theme-common": "0.0.0-
|
|
31
|
-
"@docusaurus/theme-translations": "0.0.0-
|
|
32
|
-
"@docusaurus/utils": "0.0.0-
|
|
33
|
-
"@docusaurus/utils-validation": "0.0.0-
|
|
26
|
+
"@docusaurus/core": "0.0.0-4379",
|
|
27
|
+
"@docusaurus/plugin-content-blog": "0.0.0-4379",
|
|
28
|
+
"@docusaurus/plugin-content-docs": "0.0.0-4379",
|
|
29
|
+
"@docusaurus/plugin-content-pages": "0.0.0-4379",
|
|
30
|
+
"@docusaurus/theme-common": "0.0.0-4379",
|
|
31
|
+
"@docusaurus/theme-translations": "0.0.0-4379",
|
|
32
|
+
"@docusaurus/utils": "0.0.0-4379",
|
|
33
|
+
"@docusaurus/utils-validation": "0.0.0-4379",
|
|
34
34
|
"@mdx-js/mdx": "^1.6.21",
|
|
35
35
|
"@mdx-js/react": "^1.6.21",
|
|
36
36
|
"clsx": "^1.1.1",
|
|
@@ -45,8 +45,8 @@
|
|
|
45
45
|
"rtlcss": "^3.3.0"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@docusaurus/module-type-aliases": "0.0.0-
|
|
49
|
-
"@docusaurus/types": "0.0.0-
|
|
48
|
+
"@docusaurus/module-type-aliases": "0.0.0-4379",
|
|
49
|
+
"@docusaurus/types": "0.0.0-4379",
|
|
50
50
|
"@types/mdx-js__react": "^1.5.4",
|
|
51
51
|
"@types/parse-numeric-range": "^0.0.1",
|
|
52
52
|
"@types/rtlcss": "^3.1.1",
|
|
@@ -61,5 +61,5 @@
|
|
|
61
61
|
"engines": {
|
|
62
62
|
"node": ">=14"
|
|
63
63
|
},
|
|
64
|
-
"gitHead": "
|
|
64
|
+
"gitHead": "92aba1ab0bda5fe2b1f6cc8cdd50677051187dcb"
|
|
65
65
|
}
|
package/src/index.ts
CHANGED
|
@@ -171,10 +171,6 @@ export default function docusaurusThemeClassic(
|
|
|
171
171
|
.join('|');
|
|
172
172
|
|
|
173
173
|
return {
|
|
174
|
-
ignoreWarnings: [
|
|
175
|
-
// See https://github.com/facebook/docusaurus/pull/3382
|
|
176
|
-
(e) => e.message.includes("Can't resolve '@theme-init/hooks/useDocs"),
|
|
177
|
-
],
|
|
178
174
|
plugins: [
|
|
179
175
|
new ContextReplacementPlugin(
|
|
180
176
|
/prismjs[\\/]components$/,
|
|
@@ -16,8 +16,8 @@ import {
|
|
|
16
16
|
parseLanguage,
|
|
17
17
|
parseLines,
|
|
18
18
|
ThemeClassNames,
|
|
19
|
+
usePrismTheme,
|
|
19
20
|
} from '@docusaurus/theme-common';
|
|
20
|
-
import usePrismTheme from '@theme/hooks/usePrismTheme';
|
|
21
21
|
import type {Props} from '@theme/CodeBlock';
|
|
22
22
|
|
|
23
23
|
import styles from './styles.module.css';
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
|
|
8
8
|
import React from 'react';
|
|
9
9
|
import clsx from 'clsx';
|
|
10
|
-
import useWindowSize from '@theme/hooks/useWindowSize';
|
|
11
10
|
import DocPaginator from '@theme/DocPaginator';
|
|
12
11
|
import DocVersionBanner from '@theme/DocVersionBanner';
|
|
13
12
|
import DocVersionBadge from '@theme/DocVersionBadge';
|
|
@@ -18,7 +17,7 @@ import TOC from '@theme/TOC';
|
|
|
18
17
|
import TOCCollapsible from '@theme/TOCCollapsible';
|
|
19
18
|
import Heading from '@theme/Heading';
|
|
20
19
|
import styles from './styles.module.css';
|
|
21
|
-
import {ThemeClassNames} from '@docusaurus/theme-common';
|
|
20
|
+
import {ThemeClassNames, useWindowSize} from '@docusaurus/theme-common';
|
|
22
21
|
|
|
23
22
|
export default function DocItem(props: Props): JSX.Element {
|
|
24
23
|
const {content: DocContent} = props;
|
|
@@ -14,8 +14,8 @@ import {
|
|
|
14
14
|
type MobileSecondaryMenuComponent,
|
|
15
15
|
ThemeClassNames,
|
|
16
16
|
useScrollPosition,
|
|
17
|
+
useWindowSize,
|
|
17
18
|
} from '@docusaurus/theme-common';
|
|
18
|
-
import useWindowSize from '@theme/hooks/useWindowSize';
|
|
19
19
|
import Logo from '@theme/Logo';
|
|
20
20
|
import IconArrow from '@theme/IconArrow';
|
|
21
21
|
import {translate} from '@docusaurus/Translate';
|
|
@@ -15,8 +15,7 @@ import Footer from '@theme/Footer';
|
|
|
15
15
|
import LayoutProviders from '@theme/LayoutProviders';
|
|
16
16
|
import LayoutHead from '@theme/LayoutHead';
|
|
17
17
|
import type {Props} from '@theme/Layout';
|
|
18
|
-
import useKeyboardNavigation from '@theme
|
|
19
|
-
import {ThemeClassNames} from '@docusaurus/theme-common';
|
|
18
|
+
import {ThemeClassNames, useKeyboardNavigation} from '@docusaurus/theme-common';
|
|
20
19
|
import ErrorPageContent from '@theme/ErrorPageContent';
|
|
21
20
|
import './styles.css';
|
|
22
21
|
|
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
import React from 'react';
|
|
9
|
-
import ThemeProvider from '@theme/ThemeProvider';
|
|
10
|
-
import UserPreferencesProvider from '@theme/UserPreferencesProvider';
|
|
11
9
|
import {
|
|
10
|
+
ColorModeProvider,
|
|
11
|
+
TabGroupChoiceProvider,
|
|
12
12
|
AnnouncementBarProvider,
|
|
13
13
|
DocsPreferredVersionContextProvider,
|
|
14
14
|
MobileSecondaryMenuProvider,
|
|
@@ -18,9 +18,9 @@ import type {Props} from '@theme/LayoutProviders';
|
|
|
18
18
|
|
|
19
19
|
export default function LayoutProviders({children}: Props): JSX.Element {
|
|
20
20
|
return (
|
|
21
|
-
<
|
|
21
|
+
<ColorModeProvider>
|
|
22
22
|
<AnnouncementBarProvider>
|
|
23
|
-
<
|
|
23
|
+
<TabGroupChoiceProvider>
|
|
24
24
|
<ScrollControllerProvider>
|
|
25
25
|
<DocsPreferredVersionContextProvider>
|
|
26
26
|
<MobileSecondaryMenuProvider>
|
|
@@ -28,8 +28,8 @@ export default function LayoutProviders({children}: Props): JSX.Element {
|
|
|
28
28
|
</MobileSecondaryMenuProvider>
|
|
29
29
|
</DocsPreferredVersionContextProvider>
|
|
30
30
|
</ScrollControllerProvider>
|
|
31
|
-
</
|
|
31
|
+
</TabGroupChoiceProvider>
|
|
32
32
|
</AnnouncementBarProvider>
|
|
33
|
-
</
|
|
33
|
+
</ColorModeProvider>
|
|
34
34
|
);
|
|
35
35
|
}
|
|
@@ -10,17 +10,17 @@ import clsx from 'clsx';
|
|
|
10
10
|
import Translate from '@docusaurus/Translate';
|
|
11
11
|
import SearchBar from '@theme/SearchBar';
|
|
12
12
|
import Toggle from '@theme/Toggle';
|
|
13
|
-
import useThemeContext from '@theme/hooks/useThemeContext';
|
|
14
13
|
import {
|
|
15
14
|
useThemeConfig,
|
|
16
15
|
useMobileSecondaryMenuRenderer,
|
|
17
16
|
usePrevious,
|
|
18
17
|
useHistoryPopHandler,
|
|
18
|
+
useHideableNavbar,
|
|
19
|
+
useLockBodyScroll,
|
|
20
|
+
useWindowSize,
|
|
21
|
+
useColorMode,
|
|
19
22
|
} from '@docusaurus/theme-common';
|
|
20
|
-
import
|
|
21
|
-
import useLockBodyScroll from '@theme/hooks/useLockBodyScroll';
|
|
22
|
-
import useWindowSize from '@theme/hooks/useWindowSize';
|
|
23
|
-
import {useActivePlugin} from '@theme/hooks/useDocs';
|
|
23
|
+
import {useActivePlugin} from '@docusaurus/plugin-content-docs/client';
|
|
24
24
|
import NavbarItem, {type Props as NavbarItemConfig} from '@theme/NavbarItem';
|
|
25
25
|
import Logo from '@theme/Logo';
|
|
26
26
|
import IconMenu from '@theme/IconMenu';
|
|
@@ -88,7 +88,7 @@ function useColorModeToggle() {
|
|
|
88
88
|
const {
|
|
89
89
|
colorMode: {disableSwitch},
|
|
90
90
|
} = useThemeConfig();
|
|
91
|
-
const {isDarkTheme, setLightTheme, setDarkTheme} =
|
|
91
|
+
const {isDarkTheme, setLightTheme, setDarkTheme} = useColorMode();
|
|
92
92
|
const toggle = useCallback(
|
|
93
93
|
(e) => (e.target.checked ? setDarkTheme() : setLightTheme()),
|
|
94
94
|
[setLightTheme, setDarkTheme],
|