Skip to content

Commit

Permalink
feat: update Markdown components (#1578)
Browse files Browse the repository at this point in the history
  • Loading branch information
therealemjy authored Oct 12, 2023
1 parent 1db1920 commit 25ec39a
Show file tree
Hide file tree
Showing 18 changed files with 450 additions and 1,219 deletions.
3 changes: 1 addition & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,6 @@
"@radix-ui/react-slot": "^1.0.2",
"@sentry/react": "^7.43.0",
"@sentry/tracing": "^7.43.0",
"@uiw/react-markdown-preview": "^4.1.15",
"@uiw/react-md-editor": "^3.14.3",
"@wagmi/core": "^1.3.9",
"bignumber.js": "^9.1.1",
"buffer": "^6.0.3",
Expand All @@ -67,6 +65,7 @@
"react-countdown": "^2.3.5",
"react-dom": "^18.2.0",
"react-i18next": "^12.3.1",
"react-markdown": "^9.0.0",
"react-query": "^3.39.3",
"react-router": "^6.15.0",
"react-router-dom": "^6.15.0",
Expand Down
2 changes: 1 addition & 1 deletion src/components/Form/FormikMarkdownEditor.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { useField } from 'formik';
import React from 'react';

import { MarkdownEditor, MarkdownEditorProps } from '../Markdown';
import { MarkdownEditor, MarkdownEditorProps } from '../MarkdownEditor';

export interface FormikMarkdownEditorProps
extends Omit<MarkdownEditorProps, 'name' | 'onChange' | 'value' | 'onBlur'> {
Expand Down
73 changes: 0 additions & 73 deletions src/components/Markdown/Editor/index.tsx

This file was deleted.

47 changes: 0 additions & 47 deletions src/components/Markdown/Editor/styles-overrides.css

This file was deleted.

48 changes: 0 additions & 48 deletions src/components/Markdown/Editor/styles-overrides.scss

This file was deleted.

24 changes: 0 additions & 24 deletions src/components/Markdown/Editor/styles.ts

This file was deleted.

30 changes: 0 additions & 30 deletions src/components/Markdown/Viewer/index.tsx

This file was deleted.

13 changes: 0 additions & 13 deletions src/components/Markdown/Viewer/styles.ts

This file was deleted.

3 changes: 0 additions & 3 deletions src/components/Markdown/index.ts

This file was deleted.

9 changes: 0 additions & 9 deletions src/components/Markdown/previewOptions.ts

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import { Meta } from '@storybook/react';
import React from 'react';
import { State } from 'react-powerplug';

import { withCenterStory } from 'stories/decorators';

import MarkdownEditor from '.';
import { MarkdownEditor } from '.';

export default {
title: 'Components/Markdown/Editor',
Expand Down
75 changes: 75 additions & 0 deletions src/components/MarkdownEditor/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
import { useMemo } from 'react';
import { useTranslation } from 'translation';
import { cn } from 'utilities';

import { MarkdownViewer } from '../MarkdownViewer';
import { Tabs } from '../Tabs';

export interface MarkdownEditorProps {
value: string;
onChange: (text: string | undefined) => void;
name: string;
placeholder: string;
hasError?: boolean;
className?: string;
label?: string;
onBlur?: (e: React.FocusEvent<HTMLTextAreaElement, Element>) => void;
}

export const MarkdownEditor: React.FC<MarkdownEditorProps> = ({
value,
onChange,
name,
placeholder,
hasError,
className,
label,
onBlur,
}) => {
const { t } = useTranslation();

const tabsContent = useMemo(
() => [
{
title: t('markdownEditor.markdownTabLabel'),
content: (
<textarea
name={name}
placeholder={placeholder}
onChange={e => onChange(e.currentTarget.value)}
onBlur={onBlur}
value={value}
data-hasError={hasError}
className={cn(
'hover -mt-6 min-h-[12rem] w-full rounded-xl border border-lightGrey bg-background p-4 font-semibold outline-none transition-colors hover:border-grey focus:border-blue',
hasError && 'border-red hover:border-red focus:border-red',
)}
/>
),
},
{
title: t('markdownEditor.previewTabLabel'),
content: (
<div className="-mt-6 w-full">
{value ? (
<MarkdownViewer className="break-words" content={value} />
) : (
<p className="text-grey">{t('markdownEditor.placeholder')}</p>
)}
</div>
),
},
],
[value],
);

return (
<div className={cn(className)}>
{!!label && (
<p className={cn('mb-1 text-sm font-semibold', hasError && 'text-red')}>{label}</p>
)}

<Tabs tabsContent={tabsContent} />
</div>
);
};
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
import { Meta } from '@storybook/react';
import React from 'react';

import { withCenterStory } from 'stories/decorators';

import MarkdownViewer from '.';
import { MarkdownViewer } from '.';

export default {
title: 'Components/Markdown/Viewer',
Expand Down
Loading

0 comments on commit 25ec39a

Please sign in to comment.