diff --git a/website/src/pages/documents/edit-document-modal.tsx b/website/src/pages/documents/edit-document-modal.tsx index e4ccdb257..af77228c9 100644 --- a/website/src/pages/documents/edit-document-modal.tsx +++ b/website/src/pages/documents/edit-document-modal.tsx @@ -167,6 +167,7 @@ export const EditDocumentModal: React.FC = ({ const [creator, setCreator] = useState(documentMetadata.creators ?? []) const [keywords, setKeywords] = useState(documentMetadata.keywords ?? []) + const [freeKeyword, setFreeKeyword] = useState("") const [languages, setLanguages] = useState(documentMetadata.languages ?? []) const [spatialCoverage, setSpatialCoverage] = useState( documentMetadata.spatialCoverage ?? [] @@ -792,8 +793,45 @@ export const EditDocumentModal: React.FC = ({ newTags={newKeywords} onAdd={(tagName) => addKeyword(tagName)} onRemove={removeKeyword} - addButtonLabel="Add Keyword" - /> + addButtonLabel="Add Pre-existing Keywords" + > + {isEditing && ( +
+ setFreeKeyword(e.target.value)} + onKeyDown={(e) => { + if (e.key === "Enter" && freeKeyword.trim()) { + addKeyword(freeKeyword.trim()) + setFreeKeyword("") + } + }} + /> + +
+ )} + void addButtonLabel: string customForm?: React.ReactNode + children?: React.ReactNode } export const TagSelector: React.FC = ({ @@ -21,6 +22,7 @@ export const TagSelector: React.FC = ({ onRemove, addButtonLabel, customForm, + children, }) => { const [showDropdown, setShowDropdown] = useState(false) @@ -50,6 +52,7 @@ export const TagSelector: React.FC = ({
+ {children}