@docusaurus/theme-classic 0.0.0-4853 → 0.0.0-4855

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.
@@ -12,6 +12,14 @@
12
12
  /// <reference types="@docusaurus/plugin-content-blog" />
13
13
  /// <reference types="@docusaurus/plugin-content-pages" />
14
14
 
15
+ // This file, like all the other ambient declaration files for plugins, is
16
+ // needed for TS to understand our `@theme` alias. The export signatures are
17
+ // duplicated from the implementation, which is fine, since every module only
18
+ // default-exports a React component.
19
+ // TODO we'll eventually migrate to TS `paths` option. This is not easy due to
20
+ // our theme shadowing—we probably need the user to specify multiple theme paths
21
+ // in their tsconfig.
22
+
15
23
  declare module '@docusaurus/theme-classic' {
16
24
  export type Options = {
17
25
  customCss?: string | string[];
@@ -188,6 +196,40 @@ declare module '@theme/DocItemFooter' {
188
196
  export default function DocItemFooter(props: Props): JSX.Element;
189
197
  }
190
198
 
199
+ declare module '@theme/DocPage/Layout' {
200
+ import type {ReactNode} from 'react';
201
+
202
+ export interface Props {
203
+ readonly children: ReactNode;
204
+ }
205
+
206
+ export default function DocPageLayout(props: Props): JSX.Element;
207
+ }
208
+
209
+ declare module '@theme/DocPage/Layout/Aside' {
210
+ import type {Dispatch, SetStateAction} from 'react';
211
+ import type {PropSidebar} from '@docusaurus/plugin-content-docs';
212
+
213
+ export interface Props {
214
+ readonly sidebar: PropSidebar;
215
+ readonly hiddenSidebarContainer: boolean;
216
+ readonly setHiddenSidebarContainer: Dispatch<SetStateAction<boolean>>;
217
+ }
218
+
219
+ export default function DocPageLayoutAside(props: Props): JSX.Element;
220
+ }
221
+
222
+ declare module '@theme/DocPage/Layout/Main' {
223
+ import type {ReactNode} from 'react';
224
+
225
+ export interface Props {
226
+ readonly hiddenSidebarContainer: boolean;
227
+ readonly children: ReactNode;
228
+ }
229
+
230
+ export default function DocPageLayoutMain(props: Props): JSX.Element;
231
+ }
232
+
191
233
  declare module '@theme/DocPaginator' {
192
234
  import type {PropNavigation} from '@docusaurus/plugin-content-docs';
193
235
 
@@ -242,7 +284,7 @@ declare module '@theme/DocSidebar/Desktop/Content' {
242
284
 
243
285
  declare module '@theme/DocSidebar/Desktop/CollapseButton' {
244
286
  export interface Props {
245
- onClick: React.MouseEventHandler;
287
+ readonly onClick: React.MouseEventHandler;
246
288
  }
247
289
 
248
290
  export default function CollapseButton(props: Props): JSX.Element;
@@ -269,7 +311,7 @@ declare module '@theme/DocSidebarItem/Link' {
269
311
  import type {PropSidebarItemLink} from '@docusaurus/plugin-content-docs';
270
312
 
271
313
  export interface Props extends DocSidebarItemProps {
272
- item: PropSidebarItemLink;
314
+ readonly item: PropSidebarItemLink;
273
315
  }
274
316
 
275
317
  export default function DocSidebarItemLink(props: Props): JSX.Element;
@@ -280,7 +322,7 @@ declare module '@theme/DocSidebarItem/Html' {
280
322
  import type {PropSidebarItemHtml} from '@docusaurus/plugin-content-docs';
281
323
 
282
324
  export interface Props extends DocSidebarItemProps {
283
- item: PropSidebarItemHtml;
325
+ readonly item: PropSidebarItemHtml;
284
326
  }
285
327
 
286
328
  export default function DocSidebarItemHtml(props: Props): JSX.Element;
@@ -291,7 +333,7 @@ declare module '@theme/DocSidebarItem/Category' {
291
333
  import type {PropSidebarItemCategory} from '@docusaurus/plugin-content-docs';
292
334
 
293
335
  export interface Props extends DocSidebarItemProps {
294
- item: PropSidebarItemCategory;
336
+ readonly item: PropSidebarItemCategory;
295
337
  }
296
338
 
297
339
  export default function DocSidebarItemCategory(props: Props): JSX.Element;
@@ -350,7 +392,7 @@ declare module '@theme/Footer/Logo' {
350
392
  import type {FooterLogo} from '@docusaurus/theme-common';
351
393
 
352
394
  export interface Props {
353
- logo: FooterLogo;
395
+ readonly logo: FooterLogo;
354
396
  }
355
397
 
356
398
  export default function FooterLogo(props: Props): JSX.Element;
@@ -358,7 +400,7 @@ declare module '@theme/Footer/Logo' {
358
400
 
359
401
  declare module '@theme/Footer/Copyright' {
360
402
  export interface Props {
361
- copyright: string;
403
+ readonly copyright: string;
362
404
  }
363
405
 
364
406
  export default function FooterCopyright(props: Props): JSX.Element;
@@ -368,7 +410,7 @@ declare module '@theme/Footer/LinkItem' {
368
410
  import type {FooterLinkItem} from '@docusaurus/theme-common';
369
411
 
370
412
  export interface Props {
371
- item: FooterLinkItem;
413
+ readonly item: FooterLinkItem;
372
414
  }
373
415
 
374
416
  export default function FooterLinkItem(props: Props): JSX.Element;
@@ -378,10 +420,10 @@ declare module '@theme/Footer/Layout' {
378
420
  import type {ReactNode} from 'react';
379
421
 
380
422
  export interface Props {
381
- style: 'light' | 'dark';
382
- links: ReactNode;
383
- logo: ReactNode;
384
- copyright: ReactNode;
423
+ readonly style: 'light' | 'dark';
424
+ readonly links: ReactNode;
425
+ readonly logo: ReactNode;
426
+ readonly copyright: ReactNode;
385
427
  }
386
428
 
387
429
  export default function FooterLayout(props: Props): JSX.Element;
@@ -391,7 +433,7 @@ declare module '@theme/Footer/Links' {
391
433
  import type {Footer} from '@docusaurus/theme-common';
392
434
 
393
435
  export interface Props {
394
- links: Footer['links'];
436
+ readonly links: Footer['links'];
395
437
  }
396
438
 
397
439
  export default function FooterLinks(props: Props): JSX.Element;
@@ -401,7 +443,7 @@ declare module '@theme/Footer/Links/MultiColumn' {
401
443
  import type {MultiColumnFooter} from '@docusaurus/theme-common';
402
444
 
403
445
  export interface Props {
404
- columns: MultiColumnFooter['links'];
446
+ readonly columns: MultiColumnFooter['links'];
405
447
  }
406
448
 
407
449
  export default function FooterLinksMultiColumn(props: Props): JSX.Element;
@@ -411,7 +453,7 @@ declare module '@theme/Footer/Links/Simple' {
411
453
  import type {SimpleFooter} from '@docusaurus/theme-common';
412
454
 
413
455
  export interface Props {
414
- links: SimpleFooter['links'];
456
+ readonly links: SimpleFooter['links'];
415
457
  }
416
458
 
417
459
  export default function FooterLinksSimple(props: Props): JSX.Element;
@@ -423,7 +465,7 @@ declare module '@theme/Heading' {
423
465
  type HeadingType = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
424
466
 
425
467
  export interface Props extends ComponentProps<HeadingType> {
426
- as: HeadingType;
468
+ readonly as: HeadingType;
427
469
  }
428
470
 
429
471
  export default function Heading(props: Props): JSX.Element;
@@ -625,9 +667,9 @@ declare module '@theme/Navbar/MobileSidebar/Layout' {
625
667
  import type {ReactNode} from 'react';
626
668
 
627
669
  interface Props {
628
- header: ReactNode;
629
- primaryMenu: ReactNode;
630
- secondaryMenu: ReactNode;
670
+ readonly header: ReactNode;
671
+ readonly primaryMenu: ReactNode;
672
+ readonly secondaryMenu: ReactNode;
631
673
  }
632
674
 
633
675
  export default function NavbarMobileSidebarLayout(props: Props): JSX.Element;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@docusaurus/theme-classic",
3
- "version": "0.0.0-4853",
3
+ "version": "0.0.0-4855",
4
4
  "description": "Classic theme for Docusaurus",
5
5
  "main": "lib/index.js",
6
6
  "types": "src/theme-classic.d.ts",
@@ -21,15 +21,15 @@
21
21
  "format:lib-next": "prettier --config ../../.prettierrc --write \"lib-next/**/*.{js,ts,jsx,tsc}\""
22
22
  },
23
23
  "dependencies": {
24
- "@docusaurus/core": "0.0.0-4853",
25
- "@docusaurus/plugin-content-blog": "0.0.0-4853",
26
- "@docusaurus/plugin-content-docs": "0.0.0-4853",
27
- "@docusaurus/plugin-content-pages": "0.0.0-4853",
28
- "@docusaurus/theme-common": "0.0.0-4853",
29
- "@docusaurus/theme-translations": "0.0.0-4853",
30
- "@docusaurus/utils": "0.0.0-4853",
31
- "@docusaurus/utils-common": "0.0.0-4853",
32
- "@docusaurus/utils-validation": "0.0.0-4853",
24
+ "@docusaurus/core": "0.0.0-4855",
25
+ "@docusaurus/plugin-content-blog": "0.0.0-4855",
26
+ "@docusaurus/plugin-content-docs": "0.0.0-4855",
27
+ "@docusaurus/plugin-content-pages": "0.0.0-4855",
28
+ "@docusaurus/theme-common": "0.0.0-4855",
29
+ "@docusaurus/theme-translations": "0.0.0-4855",
30
+ "@docusaurus/utils": "0.0.0-4855",
31
+ "@docusaurus/utils-common": "0.0.0-4855",
32
+ "@docusaurus/utils-validation": "0.0.0-4855",
33
33
  "@mdx-js/react": "^1.6.22",
34
34
  "clsx": "^1.1.1",
35
35
  "copy-text-to-clipboard": "^3.0.1",
@@ -45,8 +45,8 @@
45
45
  "@babel/cli": "^7.17.6",
46
46
  "@babel/core": "^7.17.9",
47
47
  "@babel/preset-typescript": "^7.16.7",
48
- "@docusaurus/module-type-aliases": "0.0.0-4853",
49
- "@docusaurus/types": "0.0.0-4853",
48
+ "@docusaurus/module-type-aliases": "0.0.0-4855",
49
+ "@docusaurus/types": "0.0.0-4855",
50
50
  "@types/mdx-js__react": "^1.5.5",
51
51
  "@types/prismjs": "^1.26.0",
52
52
  "@types/rtlcss": "^3.1.3",
@@ -62,5 +62,5 @@
62
62
  "engines": {
63
63
  "node": ">=14"
64
64
  },
65
- "gitHead": "4b716dd2a6d3cbe3516aac8ca20e7f9c61504f46"
65
+ "gitHead": "9cfea8db2f22d348706de240a56303bb257d16b6"
66
66
  }
@@ -34,7 +34,7 @@ function extractDocRouteMetadata(props: Props): null | {
34
34
  versionMetadata,
35
35
  location,
36
36
  } = props;
37
- const currentDocRoute = docRoutes.find((docRoute) =>
37
+ const currentDocRoute = docRoutes!.find((docRoute) =>
38
38
  matchPath(location.pathname, docRoute),
39
39
  );
40
40
  if (!currentDocRoute) {
@@ -12,6 +12,14 @@
12
12
  /// <reference types="@docusaurus/plugin-content-blog" />
13
13
  /// <reference types="@docusaurus/plugin-content-pages" />
14
14
 
15
+ // This file, like all the other ambient declaration files for plugins, is
16
+ // needed for TS to understand our `@theme` alias. The export signatures are
17
+ // duplicated from the implementation, which is fine, since every module only
18
+ // default-exports a React component.
19
+ // TODO we'll eventually migrate to TS `paths` option. This is not easy due to
20
+ // our theme shadowing—we probably need the user to specify multiple theme paths
21
+ // in their tsconfig.
22
+
15
23
  declare module '@docusaurus/theme-classic' {
16
24
  export type Options = {
17
25
  customCss?: string | string[];
@@ -188,6 +196,40 @@ declare module '@theme/DocItemFooter' {
188
196
  export default function DocItemFooter(props: Props): JSX.Element;
189
197
  }
190
198
 
199
+ declare module '@theme/DocPage/Layout' {
200
+ import type {ReactNode} from 'react';
201
+
202
+ export interface Props {
203
+ readonly children: ReactNode;
204
+ }
205
+
206
+ export default function DocPageLayout(props: Props): JSX.Element;
207
+ }
208
+
209
+ declare module '@theme/DocPage/Layout/Aside' {
210
+ import type {Dispatch, SetStateAction} from 'react';
211
+ import type {PropSidebar} from '@docusaurus/plugin-content-docs';
212
+
213
+ export interface Props {
214
+ readonly sidebar: PropSidebar;
215
+ readonly hiddenSidebarContainer: boolean;
216
+ readonly setHiddenSidebarContainer: Dispatch<SetStateAction<boolean>>;
217
+ }
218
+
219
+ export default function DocPageLayoutAside(props: Props): JSX.Element;
220
+ }
221
+
222
+ declare module '@theme/DocPage/Layout/Main' {
223
+ import type {ReactNode} from 'react';
224
+
225
+ export interface Props {
226
+ readonly hiddenSidebarContainer: boolean;
227
+ readonly children: ReactNode;
228
+ }
229
+
230
+ export default function DocPageLayoutMain(props: Props): JSX.Element;
231
+ }
232
+
191
233
  declare module '@theme/DocPaginator' {
192
234
  import type {PropNavigation} from '@docusaurus/plugin-content-docs';
193
235
 
@@ -242,7 +284,7 @@ declare module '@theme/DocSidebar/Desktop/Content' {
242
284
 
243
285
  declare module '@theme/DocSidebar/Desktop/CollapseButton' {
244
286
  export interface Props {
245
- onClick: React.MouseEventHandler;
287
+ readonly onClick: React.MouseEventHandler;
246
288
  }
247
289
 
248
290
  export default function CollapseButton(props: Props): JSX.Element;
@@ -269,7 +311,7 @@ declare module '@theme/DocSidebarItem/Link' {
269
311
  import type {PropSidebarItemLink} from '@docusaurus/plugin-content-docs';
270
312
 
271
313
  export interface Props extends DocSidebarItemProps {
272
- item: PropSidebarItemLink;
314
+ readonly item: PropSidebarItemLink;
273
315
  }
274
316
 
275
317
  export default function DocSidebarItemLink(props: Props): JSX.Element;
@@ -280,7 +322,7 @@ declare module '@theme/DocSidebarItem/Html' {
280
322
  import type {PropSidebarItemHtml} from '@docusaurus/plugin-content-docs';
281
323
 
282
324
  export interface Props extends DocSidebarItemProps {
283
- item: PropSidebarItemHtml;
325
+ readonly item: PropSidebarItemHtml;
284
326
  }
285
327
 
286
328
  export default function DocSidebarItemHtml(props: Props): JSX.Element;
@@ -291,7 +333,7 @@ declare module '@theme/DocSidebarItem/Category' {
291
333
  import type {PropSidebarItemCategory} from '@docusaurus/plugin-content-docs';
292
334
 
293
335
  export interface Props extends DocSidebarItemProps {
294
- item: PropSidebarItemCategory;
336
+ readonly item: PropSidebarItemCategory;
295
337
  }
296
338
 
297
339
  export default function DocSidebarItemCategory(props: Props): JSX.Element;
@@ -350,7 +392,7 @@ declare module '@theme/Footer/Logo' {
350
392
  import type {FooterLogo} from '@docusaurus/theme-common';
351
393
 
352
394
  export interface Props {
353
- logo: FooterLogo;
395
+ readonly logo: FooterLogo;
354
396
  }
355
397
 
356
398
  export default function FooterLogo(props: Props): JSX.Element;
@@ -358,7 +400,7 @@ declare module '@theme/Footer/Logo' {
358
400
 
359
401
  declare module '@theme/Footer/Copyright' {
360
402
  export interface Props {
361
- copyright: string;
403
+ readonly copyright: string;
362
404
  }
363
405
 
364
406
  export default function FooterCopyright(props: Props): JSX.Element;
@@ -368,7 +410,7 @@ declare module '@theme/Footer/LinkItem' {
368
410
  import type {FooterLinkItem} from '@docusaurus/theme-common';
369
411
 
370
412
  export interface Props {
371
- item: FooterLinkItem;
413
+ readonly item: FooterLinkItem;
372
414
  }
373
415
 
374
416
  export default function FooterLinkItem(props: Props): JSX.Element;
@@ -378,10 +420,10 @@ declare module '@theme/Footer/Layout' {
378
420
  import type {ReactNode} from 'react';
379
421
 
380
422
  export interface Props {
381
- style: 'light' | 'dark';
382
- links: ReactNode;
383
- logo: ReactNode;
384
- copyright: ReactNode;
423
+ readonly style: 'light' | 'dark';
424
+ readonly links: ReactNode;
425
+ readonly logo: ReactNode;
426
+ readonly copyright: ReactNode;
385
427
  }
386
428
 
387
429
  export default function FooterLayout(props: Props): JSX.Element;
@@ -391,7 +433,7 @@ declare module '@theme/Footer/Links' {
391
433
  import type {Footer} from '@docusaurus/theme-common';
392
434
 
393
435
  export interface Props {
394
- links: Footer['links'];
436
+ readonly links: Footer['links'];
395
437
  }
396
438
 
397
439
  export default function FooterLinks(props: Props): JSX.Element;
@@ -401,7 +443,7 @@ declare module '@theme/Footer/Links/MultiColumn' {
401
443
  import type {MultiColumnFooter} from '@docusaurus/theme-common';
402
444
 
403
445
  export interface Props {
404
- columns: MultiColumnFooter['links'];
446
+ readonly columns: MultiColumnFooter['links'];
405
447
  }
406
448
 
407
449
  export default function FooterLinksMultiColumn(props: Props): JSX.Element;
@@ -411,7 +453,7 @@ declare module '@theme/Footer/Links/Simple' {
411
453
  import type {SimpleFooter} from '@docusaurus/theme-common';
412
454
 
413
455
  export interface Props {
414
- links: SimpleFooter['links'];
456
+ readonly links: SimpleFooter['links'];
415
457
  }
416
458
 
417
459
  export default function FooterLinksSimple(props: Props): JSX.Element;
@@ -423,7 +465,7 @@ declare module '@theme/Heading' {
423
465
  type HeadingType = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
424
466
 
425
467
  export interface Props extends ComponentProps<HeadingType> {
426
- as: HeadingType;
468
+ readonly as: HeadingType;
427
469
  }
428
470
 
429
471
  export default function Heading(props: Props): JSX.Element;
@@ -625,9 +667,9 @@ declare module '@theme/Navbar/MobileSidebar/Layout' {
625
667
  import type {ReactNode} from 'react';
626
668
 
627
669
  interface Props {
628
- header: ReactNode;
629
- primaryMenu: ReactNode;
630
- secondaryMenu: ReactNode;
670
+ readonly header: ReactNode;
671
+ readonly primaryMenu: ReactNode;
672
+ readonly secondaryMenu: ReactNode;
631
673
  }
632
674
 
633
675
  export default function NavbarMobileSidebarLayout(props: Props): JSX.Element;