mirror of
https://github.com/IRBorisov/ConceptPortal.git
synced 2025-06-26 13:00:39 +03:00
Small UI improvement
This commit is contained in:
parent
d038682793
commit
c7a0de77d0
|
@ -9,7 +9,7 @@ Styling conventions
|
||||||
<pre>
|
<pre>
|
||||||
- layer: z-position
|
- layer: z-position
|
||||||
- outer layout: fixed bottom-1/2 left-0 -translate-x-1/2
|
- outer layout: fixed bottom-1/2 left-0 -translate-x-1/2
|
||||||
- rectangle: mt-3 min-w-fit min-w-10 flex-grow
|
- rectangle: mt-3 min-w-fit min-w-10 flex-grow shrink-0
|
||||||
- inner layout: px-3 py-2 flex flex-col gap-3 justify-start items-center
|
- inner layout: px-3 py-2 flex flex-col gap-3 justify-start items-center
|
||||||
- overflow behavior: overflow-scroll
|
- overflow behavior: overflow-scroll
|
||||||
- border: borer-2 outline-none shadow-md
|
- border: borer-2 outline-none shadow-md
|
||||||
|
|
|
@ -131,7 +131,7 @@ function FormConstituenta({
|
||||||
</Overlay>
|
</Overlay>
|
||||||
<form id={id}
|
<form id={id}
|
||||||
className={clsx(
|
className={clsx(
|
||||||
'mt-1 min-w-[47.8rem] max-w-[47.8rem]',
|
'mt-1 w-[47.8rem] shrink-0',
|
||||||
'px-4 py-1',
|
'px-4 py-1',
|
||||||
classnames.flex_col
|
classnames.flex_col
|
||||||
)}
|
)}
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
import clsx from 'clsx';
|
import clsx from 'clsx';
|
||||||
import { useMemo } from 'react';
|
import { useMemo } from 'react';
|
||||||
import { BiBug } from 'react-icons/bi';
|
|
||||||
|
|
||||||
import { ConceptLoader } from '@/components/Common/ConceptLoader';
|
import { ConceptLoader } from '@/components/Common/ConceptLoader';
|
||||||
import { useConceptTheme } from '@/context/ThemeContext';
|
import { useConceptTheme } from '@/context/ThemeContext';
|
||||||
|
@ -13,6 +12,8 @@ import { IExpressionParse, ParsingStatus } from '@/models/rslang';
|
||||||
import { colorbgCstStatus } from '@/utils/color';
|
import { colorbgCstStatus } from '@/utils/color';
|
||||||
import { labelExpressionStatus } from '@/utils/labels';
|
import { labelExpressionStatus } from '@/utils/labels';
|
||||||
|
|
||||||
|
import StatusIcon from './StatusIcon';
|
||||||
|
|
||||||
interface StatusBarProps {
|
interface StatusBarProps {
|
||||||
processing?: boolean
|
processing?: boolean
|
||||||
isModified?: boolean
|
isModified?: boolean
|
||||||
|
@ -39,7 +40,7 @@ function StatusBar({ isModified, processing, constituenta, parseData, onAnalyze
|
||||||
title='Проверить определение [Ctrl + Q]'
|
title='Проверить определение [Ctrl + Q]'
|
||||||
className={clsx(
|
className={clsx(
|
||||||
'w-[10rem] h-[1.75rem]',
|
'w-[10rem] h-[1.75rem]',
|
||||||
'px-3',
|
'px-2 flex items-center justify-center gap-2',
|
||||||
'border',
|
'border',
|
||||||
'select-none',
|
'select-none',
|
||||||
'cursor-pointer',
|
'cursor-pointer',
|
||||||
|
@ -50,12 +51,12 @@ function StatusBar({ isModified, processing, constituenta, parseData, onAnalyze
|
||||||
>
|
>
|
||||||
{processing ?
|
{processing ?
|
||||||
<ConceptLoader size={3} /> :
|
<ConceptLoader size={3} /> :
|
||||||
<div className='flex items-center justify-center h-full gap-2'>
|
<>
|
||||||
<BiBug size='1rem' className='translate-y-[0.1rem]' />
|
<StatusIcon status={status} />
|
||||||
<span className='font-semibold small-caps'>
|
<span className='pb-[0.125rem] font-semibold small-caps pr-2'>
|
||||||
{labelExpressionStatus(status)}
|
{labelExpressionStatus(status)}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</>
|
||||||
}
|
}
|
||||||
</div>);
|
</div>);
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
'use client';
|
||||||
|
|
||||||
|
import { BiBug, BiCheckCircle, BiHelpCircle, BiPauseCircle } from 'react-icons/bi';
|
||||||
|
|
||||||
|
import { ExpressionStatus } from '@/models/rsform';
|
||||||
|
|
||||||
|
interface StatusIconProps {
|
||||||
|
status: ExpressionStatus
|
||||||
|
}
|
||||||
|
|
||||||
|
function StatusIcon({ status }: StatusIconProps) {
|
||||||
|
if (status === ExpressionStatus.VERIFIED || status === ExpressionStatus.PROPERTY) {
|
||||||
|
return <BiCheckCircle size='1rem' />;
|
||||||
|
} else if (status === ExpressionStatus.UNKNOWN) {
|
||||||
|
return <BiHelpCircle size='1rem' />;
|
||||||
|
} else if (status === ExpressionStatus.INCALCULABLE) {
|
||||||
|
return <BiPauseCircle size='1rem' />;
|
||||||
|
}else {
|
||||||
|
return <BiBug size='1rem' />;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default StatusIcon;
|
|
@ -399,7 +399,7 @@ function RSTabs() {
|
||||||
className='flex flex-col min-w-[45rem]'
|
className='flex flex-col min-w-[45rem]'
|
||||||
>
|
>
|
||||||
<TabList className={clsx(
|
<TabList className={clsx(
|
||||||
'h-[1.9rem] mx-auto',
|
'mx-auto',
|
||||||
'flex',
|
'flex',
|
||||||
'border-b-2 border-x-2 divide-x-2'
|
'border-b-2 border-x-2 divide-x-2'
|
||||||
)}>
|
)}>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user