1
0
Fork 0
mirror of https://github.com/muerwre/vault-frontend.git synced 2025-04-25 12:56:41 +07:00

#23 using custom blocks at lab nodes

This commit is contained in:
Fedor Katurov 2021-03-22 11:09:38 +07:00
parent bee41ebfb3
commit 031de64acc
17 changed files with 330 additions and 43 deletions

View file

@ -0,0 +1,28 @@
import React, { FC, useCallback, useMemo } from 'react';
import { Markdown } from '~/components/containers/Markdown';
import { INodeComponentProps } from '~/redux/node/constants';
import { formatTextParagraphs } from '~/utils/dom';
import { path } from 'ramda';
import styles from './styles.module.scss';
import { useHistory } from 'react-router';
import { URLS } from '~/constants/urls';
const LabText: FC<INodeComponentProps> = ({ node }) => {
const content = useMemo(() => formatTextParagraphs(path(['blocks', 0, 'text'], node) || ''), [
node.blocks,
]);
const history = useHistory();
const onClick = useCallback(() => history.push(URLS.NODE_URL(node.id)), [node.id]);
return (
<Markdown
dangerouslySetInnerHTML={{ __html: content }}
className={styles.wrap}
onClick={onClick}
/>
);
};
export { LabText };

View file

@ -0,0 +1,21 @@
@import "~/styles/variables.scss";
.wrap {
padding: 0 $gap;
@include tablet {
position: relative;
max-height: 50vh;
overflow: hidden;
&::after {
content: ' ';
position: absolute;
background: linear-gradient(transparentize($content_bg, 1), $content_bg 80%);
bottom: 0;
left: auto;
width: 100%;
height: 100px;
}
}
}