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

fixed tag autocomplete behaviour

This commit is contained in:
Fedor Katurov 2022-01-09 19:55:02 +07:00
parent 9dc83b0db8
commit 85d20e5009
8 changed files with 25 additions and 20 deletions

View file

@ -13,10 +13,10 @@ type IProps = IEditorComponentProps & {};
const EditorUploadCoverButton: FC<IProps> = () => {
const { values, setFieldValue } = useNodeFormContext();
const { uploadFiles, files, pendingImages } = useUploader(
const { uploadFile, files, pendingImages } = useUploader(
UploadSubject.Editor,
UploadTarget.Nodes,
[]
values.cover ? [values.cover] : []
);
const background = values.cover ? getURL(values.cover, PRESETS['300']) : null;
@ -27,14 +27,15 @@ const EditorUploadCoverButton: FC<IProps> = () => {
}, [setFieldValue]);
const onInputChange = useCallback(
(event: ChangeEvent<HTMLInputElement>) => {
async (event: ChangeEvent<HTMLInputElement>) => {
const files = Array.from(event.target.files || [])
.filter(file => getFileType(file) === UploadType.Image)
.slice(0, 1);
uploadFiles(files);
const result = await uploadFile(files[0]);
setFieldValue('cover', result);
},
[uploadFiles]
[uploadFile, setFieldValue]
);
useEffect(() => {

View file

@ -11,6 +11,7 @@ interface TagAutocompleteProps {
onSelect: (val: string) => void;
search: string;
options: string[];
visible: boolean;
}
const TagAutocomplete: VFC<TagAutocompleteProps> = ({
@ -19,6 +20,7 @@ const TagAutocomplete: VFC<TagAutocompleteProps> = ({
onSelect,
search,
options,
visible,
}) => {
const [selected, setSelected] = useState(-1);
const [categories, tags] = useMemo(
@ -82,7 +84,7 @@ const TagAutocomplete: VFC<TagAutocompleteProps> = ({
return (
<div
className={classNames(styles.window)}
className={classNames(styles.window, { [styles.visible]: visible })}
ref={wrapper}
style={pop.styles.popper}
{...pop.attributes.popper}

View file

@ -18,6 +18,11 @@ $row_height: 24px;
z-index: 10;
border-radius: 4px;
animation: appear 0.25s forwards;
visibility: hidden;
&.visible {
visibility: visible;
}
}
.scroll {