Skip to content

Commit 134cad5

Browse files
lucasfernogLaegel
andauthored
feat(docs) use rc-collapse on the config docs (tauri-apps#81)
* feat(docs) use rc-collapse on the config docs * fix: Changed rc-collapse for a custom component Co-authored-by: Laegel <[email protected]>
1 parent 88a9922 commit 134cad5

File tree

5 files changed

+109
-28
lines changed

5 files changed

+109
-28
lines changed

src/css/custom.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,3 +206,4 @@ h2 > [class^='ti-'] {
206206
[class*='announcementBar_'] {
207207
height: auto !important;
208208
}
209+

src/theme/Collapse/index.js

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import React, { useState } from 'react'
2+
import classnames from 'classnames'
3+
import styles from './styles.module.css'
4+
5+
export const Collapse = ({ children, isOpened = false, header }) => {
6+
const [isOpenedState, toggle] = useState(isOpened)
7+
8+
const collapseStyle = isOpenedState
9+
? {
10+
display: 'block',
11+
}
12+
: {
13+
display: 'none',
14+
}
15+
16+
return (
17+
<div>
18+
<div className={classnames(styles.header, isOpenedState ? styles.active : '')} onClick={() => toggle(!isOpenedState)}>
19+
{header}
20+
</div>
21+
<div className={styles.content} style={collapseStyle}>
22+
{children}
23+
</div>
24+
</div>
25+
)
26+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
.content {
2+
display: none;
3+
}
4+
5+
.header {
6+
height: 40px;
7+
display: flex;
8+
align-content: center;
9+
}
10+
11+
.header::after {
12+
background-image: var(--ifm-menu-link-sublist-icon);
13+
background-size: 2rem 2rem;
14+
background-position: center;
15+
content: ' ';
16+
display: inline-block;
17+
height: 1.25rem;
18+
width: 1.25rem;
19+
transition: transform var(--ifm-transition-fast) linear;
20+
transform: rotate(90deg);
21+
margin-top: -8px;
22+
background-color: var(--ifm-background-color);
23+
}
24+
25+
26+
.header.active::after {
27+
transform: rotate(180deg);
28+
}

src/theme/Properties/index.js

Lines changed: 51 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,61 @@
11
import React from 'react'
22
import classnames from 'classnames'
33
import styles from './styles.module.css'
4+
import { Collapse } from '@theme/Collapse'
45

56
import { Opening, Closing } from '@theme/CurlyBraces'
67

7-
export default ({ rows, anchorRoot = '' }) => (
8-
<div className={styles.row}>
9-
<Opening />
10-
{rows.map((row) => (
11-
<div
12-
id={(anchorRoot ? anchorRoot + '.' : '') + row.property}
13-
className={classnames(styles.content, 'anchorify')}
14-
>
8+
function Header(row) {
9+
return (
10+
<span
11+
className={styles.property}
12+
dangerouslySetInnerHTML={{
13+
__html: `<code><strong>${row.property}</strong><span>${
14+
row.optional ? '?' : ''
15+
}: ${row.type}</span></code>`,
16+
}}
17+
></span>
18+
)
19+
}
20+
21+
function Content(row) {
22+
return (
23+
<div>
24+
{!row.child && Header(row)}
25+
{!row.child && (
1526
<div
16-
className={styles.property}
17-
dangerouslySetInnerHTML={{
18-
__html: `<code><strong>${row.property}</strong><span>${
19-
row.optional ? '?' : ''
20-
}: ${row.type}</span></code>`,
21-
}}
27+
className={styles.description}
28+
dangerouslySetInnerHTML={{ __html: row.description }}
2229
></div>
23-
{!row.child && (
24-
<div
25-
className={styles.description}
26-
dangerouslySetInnerHTML={{ __html: row.description }}
27-
></div>
28-
)}
30+
)}
2931

30-
{row.child}
32+
{row.child}
33+
</div>
34+
)
35+
}
36+
37+
export default ({ rows, anchorRoot = '' }) => {
38+
return (
39+
<div className={styles.row}>
40+
<Opening />
41+
42+
<div className={classnames(styles.content)}>
43+
{rows.map((row) =>
44+
row.child ? (
45+
<Collapse header={Header(row)}>
46+
{Content(row)}
47+
</Collapse>
48+
) : (
49+
<div
50+
id={(anchorRoot ? anchorRoot + '.' : '') + row.property}
51+
className={classnames('anchorify')}
52+
>
53+
{Content(row)}
54+
</div>
55+
)
56+
)}
3157
</div>
32-
))}
33-
<Closing />
34-
</div>
35-
)
58+
<Closing />
59+
</div>
60+
)
61+
}

src/theme/Properties/styles.module.css

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
}
2929

3030
.row .description {
31-
margin-top: -20px;
31+
margin: 0 0 30px;
3232
}
3333

3434
.description .alert {
@@ -37,5 +37,5 @@
3737

3838
.property code {
3939
position: relative;
40-
top: -11px;
41-
}
40+
top: -12px;
41+
}

0 commit comments

Comments
 (0)