mirror of
https://github.com/muerwre/vault-frontend.git
synced 2025-04-25 21:06:42 +07:00
added sample settings page
This commit is contained in:
parent
7a6a44cccf
commit
100c4c138a
29 changed files with 527 additions and 113 deletions
70
src/containers/settings/SettingsNotes/index.tsx
Normal file
70
src/containers/settings/SettingsNotes/index.tsx
Normal file
|
@ -0,0 +1,70 @@
|
|||
import React, { useState, VFC } from 'react';
|
||||
|
||||
import Masonry from 'react-masonry-css';
|
||||
|
||||
import { Card } from '~/components/containers/Card';
|
||||
import { Filler } from '~/components/containers/Filler';
|
||||
import { Group } from '~/components/containers/Group';
|
||||
import { Padder } from '~/components/containers/Padder';
|
||||
import { Button } from '~/components/input/Button';
|
||||
import { Icon } from '~/components/input/Icon';
|
||||
import { InputText } from '~/components/input/InputText';
|
||||
import { Textarea } from '~/components/input/Textarea';
|
||||
import { HorizontalMenu } from '~/components/menu/HorizontalMenu';
|
||||
|
||||
import styles from './styles.module.scss';
|
||||
|
||||
interface SettingsNotesProps {}
|
||||
|
||||
const breakpointCols = {
|
||||
default: 2,
|
||||
1280: 1,
|
||||
};
|
||||
|
||||
const sampleNotes = [...new Array(40)].map((_, i) => (
|
||||
<Card key={i} style={{ height: Math.random() * 400 + 50 }}>
|
||||
{i}
|
||||
</Card>
|
||||
));
|
||||
|
||||
const SettingsNotes: VFC<SettingsNotesProps> = () => {
|
||||
const [text, setText] = useState('');
|
||||
|
||||
return (
|
||||
<div>
|
||||
<Padder>
|
||||
<Group horizontal>
|
||||
<HorizontalMenu>
|
||||
<HorizontalMenu.Item active>Новые</HorizontalMenu.Item>
|
||||
<HorizontalMenu.Item>Старые</HorizontalMenu.Item>
|
||||
</HorizontalMenu>
|
||||
|
||||
<Filler />
|
||||
|
||||
<InputText suffix={<Icon icon="search" size={24} />} />
|
||||
</Group>
|
||||
</Padder>
|
||||
|
||||
<Masonry
|
||||
className={styles.wrap}
|
||||
breakpointCols={breakpointCols}
|
||||
columnClassName={styles.column}
|
||||
>
|
||||
<Card>
|
||||
<Group>
|
||||
<Textarea handler={setText} value={text} />
|
||||
|
||||
<Group horizontal>
|
||||
<Filler />
|
||||
<Button size="mini">Добавить</Button>
|
||||
</Group>
|
||||
</Group>
|
||||
</Card>
|
||||
|
||||
{sampleNotes}
|
||||
</Masonry>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
export { SettingsNotes };
|
27
src/containers/settings/SettingsNotes/styles.module.scss
Normal file
27
src/containers/settings/SettingsNotes/styles.module.scss
Normal file
|
@ -0,0 +1,27 @@
|
|||
@import "src/styles/variables";
|
||||
@import "src/styles/mixins";
|
||||
|
||||
div.wrap {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
margin-right: 0;
|
||||
padding: $gap $gap * 0.5;
|
||||
|
||||
@include tablet {
|
||||
padding: 0 $gap * 0.5;
|
||||
}
|
||||
}
|
||||
|
||||
.column {
|
||||
background-clip: padding-box;
|
||||
box-sizing: border-box;
|
||||
padding: 0 $gap * 0.5;
|
||||
|
||||
@include tablet {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
& > div {
|
||||
margin-bottom: $gap;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue