diff --git a/rsconcept/frontend/src/app/Navigation/Logo.tsx b/rsconcept/frontend/src/app/Navigation/Logo.tsx index 9077a190..96d9f87f 100644 --- a/rsconcept/frontend/src/app/Navigation/Logo.tsx +++ b/rsconcept/frontend/src/app/Navigation/Logo.tsx @@ -10,9 +10,7 @@ function Logo() { return ( ); diff --git a/rsconcept/frontend/src/components/ui/Checkbox.tsx b/rsconcept/frontend/src/components/ui/Checkbox.tsx index 84c93f82..373d831b 100644 --- a/rsconcept/frontend/src/components/ui/Checkbox.tsx +++ b/rsconcept/frontend/src/components/ui/Checkbox.tsx @@ -49,6 +49,7 @@ function Checkbox({ className={clsx( 'flex items-center gap-2', // prettier: split lines 'outline-none', + 'focus-frame', cursor, className )} diff --git a/rsconcept/frontend/src/components/ui/CheckboxTristate.tsx b/rsconcept/frontend/src/components/ui/CheckboxTristate.tsx index 47e7ce2a..83d83823 100644 --- a/rsconcept/frontend/src/components/ui/CheckboxTristate.tsx +++ b/rsconcept/frontend/src/components/ui/CheckboxTristate.tsx @@ -53,6 +53,7 @@ function CheckboxTristate({ className={clsx( 'flex items-center gap-2', // prettier: split lines 'outline-none', + 'focus-frame', cursor, className )} diff --git a/rsconcept/frontend/src/components/ui/SearchBar.tsx b/rsconcept/frontend/src/components/ui/SearchBar.tsx index fbf7e04b..54c573fd 100644 --- a/rsconcept/frontend/src/components/ui/SearchBar.tsx +++ b/rsconcept/frontend/src/components/ui/SearchBar.tsx @@ -21,7 +21,7 @@ function SearchBar({ id, value, onChange, noBorder, ...restProps }: SearchBarPro noOutline placeholder='Поиск' type='search' - className='w-full pl-10' + className='w-full pl-10 outline-none' noBorder={noBorder} value={value} onChange={event => (onChange ? onChange(event.target.value) : undefined)} diff --git a/rsconcept/frontend/src/components/ui/SelectMulti.tsx b/rsconcept/frontend/src/components/ui/SelectMulti.tsx index 275b9f9e..48fe6618 100644 --- a/rsconcept/frontend/src/components/ui/SelectMulti.tsx +++ b/rsconcept/frontend/src/components/ui/SelectMulti.tsx @@ -55,6 +55,10 @@ function SelectMulti = GroupBase const adjustedStyles: StylesConfig = useMemo( () => ({ + container: defaultStyles => ({ + ...defaultStyles, + borderRadius: '0.25rem' + }), control: (styles, { isDisabled }) => ({ ...styles, borderRadius: '0.25rem', @@ -118,6 +122,7 @@ function SelectMulti = GroupBase })} menuPortalTarget={!noPortal ? document.body : null} styles={adjustedStyles} + classNames={{ container: () => 'focus-frame' }} {...restProps} /> ); diff --git a/rsconcept/frontend/src/components/ui/SelectSingle.tsx b/rsconcept/frontend/src/components/ui/SelectSingle.tsx index 74cd5b45..8a76a980 100644 --- a/rsconcept/frontend/src/components/ui/SelectSingle.tsx +++ b/rsconcept/frontend/src/components/ui/SelectSingle.tsx @@ -57,6 +57,10 @@ function SelectSingle = GroupBase = useMemo( () => ({ + container: defaultStyles => ({ + ...defaultStyles, + borderRadius: '0.25rem' + }), control: (defaultStyles, { isDisabled }) => ({ ...defaultStyles, borderRadius: '0.25rem', @@ -116,6 +120,7 @@ function SelectSingle = GroupBase 'focus-frame' }} {...restProps} /> ); diff --git a/rsconcept/frontend/src/components/ui/TabLabel.tsx b/rsconcept/frontend/src/components/ui/TabLabel.tsx index 8969973c..99be8694 100644 --- a/rsconcept/frontend/src/components/ui/TabLabel.tsx +++ b/rsconcept/frontend/src/components/ui/TabLabel.tsx @@ -19,8 +19,10 @@ function TabLabel({ label, title, titleHtml, hideTitle, className, ...otherProps 'clr-tab', 'text-sm whitespace-nowrap font-controls', 'select-none hover:cursor-pointer', + 'outline-none', className )} + tabIndex='-1' data-tooltip-id={!!title || !!titleHtml ? globals.tooltip : undefined} data-tooltip-html={titleHtml} data-tooltip-content={title} diff --git a/rsconcept/frontend/src/components/ui/TextArea.tsx b/rsconcept/frontend/src/components/ui/TextArea.tsx index 1fbd02bd..cfdbc0e2 100644 --- a/rsconcept/frontend/src/components/ui/TextArea.tsx +++ b/rsconcept/frontend/src/components/ui/TextArea.tsx @@ -5,6 +5,7 @@ import Label from './Label'; export interface TextAreaProps extends CProps.Editor, CProps.Colors, CProps.TextArea { dense?: boolean; + noResize?: boolean; } function TextArea({ @@ -15,6 +16,7 @@ function TextArea({ dense, noBorder, noOutline, + noResize, className, colors = 'clr-input', ...restProps @@ -35,7 +37,9 @@ function TextArea({ className={clsx( 'px-3 py-2', 'leading-tight', + 'overflow-x-hidden overflow-y-auto', { + 'resize-none': noResize, 'border': !noBorder, 'flex-grow max-w-full': dense, 'clr-outline': !noOutline diff --git a/rsconcept/frontend/src/models/rslang.ts b/rsconcept/frontend/src/models/rslang.ts index 10e6678e..d8f26208 100644 --- a/rsconcept/frontend/src/models/rslang.ts +++ b/rsconcept/frontend/src/models/rslang.ts @@ -208,6 +208,7 @@ export enum RSErrorType { missingParenthesis = 33798, missingCurlyBrace = 33799, invalidQuantifier = 33800, + invalidImperative = 33801, expectedArgDeclaration = 33812, expectedLocal = 33813, localDoubleDeclare = 10241, diff --git a/rsconcept/frontend/src/pages/RSFormPage/EditorConstituenta/FormConstituenta.tsx b/rsconcept/frontend/src/pages/RSFormPage/EditorConstituenta/FormConstituenta.tsx index fd0e5056..8b7aba25 100644 --- a/rsconcept/frontend/src/pages/RSFormPage/EditorConstituenta/FormConstituenta.tsx +++ b/rsconcept/frontend/src/pages/RSFormPage/EditorConstituenta/FormConstituenta.tsx @@ -9,7 +9,6 @@ import { IconSave } from '@/components/Icons'; import RefsInput from '@/components/RefsInput'; import SubmitButton from '@/components/ui/SubmitButton'; import TextArea from '@/components/ui/TextArea'; -import TextInput from '@/components/ui/TextInput'; import AnimateFade from '@/components/wrap/AnimateFade'; import { useRSForm } from '@/context/RSFormContext'; import { CstType, IConstituenta, ICstUpdateData } from '@/models/rsform'; @@ -155,9 +154,11 @@ function FormConstituenta({ disabled={disabled} onChange={newValue => setTerm(newValue)} /> - ROW_SIZE_IN_CHARACTERS ? 2 : 1} dense + noResize noBorder disabled={true} label='Типизация' diff --git a/rsconcept/frontend/src/pages/RSFormPage/EditorRSForm/EditorRSForm.tsx b/rsconcept/frontend/src/pages/RSFormPage/EditorRSForm/EditorRSForm.tsx index f5b31a00..4d2e4c80 100644 --- a/rsconcept/frontend/src/pages/RSFormPage/EditorRSForm/EditorRSForm.tsx +++ b/rsconcept/frontend/src/pages/RSFormPage/EditorRSForm/EditorRSForm.tsx @@ -50,11 +50,7 @@ function EditorRSForm({ isModified, onDestroy, setIsModified }: EditorRSFormProp onSubmit={initiateSubmit} onDestroy={onDestroy} /> - + diff --git a/rsconcept/frontend/src/pages/RSFormPage/EditorRSForm/FormRSForm.tsx b/rsconcept/frontend/src/pages/RSFormPage/EditorRSForm/FormRSForm.tsx index 56cd797f..78548ea0 100644 --- a/rsconcept/frontend/src/pages/RSFormPage/EditorRSForm/FormRSForm.tsx +++ b/rsconcept/frontend/src/pages/RSFormPage/EditorRSForm/FormRSForm.tsx @@ -154,7 +154,6 @@ function FormRSForm({ id, isModified, setIsModified }: FormRSFormProps) { /> setCommon(value)} /> + setLayout(data?.value ?? SelectorGraphLayout[0].value)} /> - + {coloring === 'status' ? : null} {coloring === 'type' ? : null}