// @flow import { observer, inject } from "mobx-react"; import { DocumentIcon } from "outline-icons"; import * as React from "react"; import { withTranslation, type TFunction } from "react-i18next"; import styled from "styled-components"; import DocumentsStore from "stores/DocumentsStore"; import Document from "models/Document"; import Button from "components/Button"; import { DropdownMenu, DropdownMenuItem } from "components/DropdownMenu"; type Props = { document: Document, documents: DocumentsStore, t: TFunction, }; @observer class TemplatesMenu extends React.Component { render() { const { documents, document, t, ...rest } = this.props; const templates = documents.templatesInCollection(document.collectionId); if (!templates.length) { return null; } return ( {t("Templates")} } {...rest} > {templates.map((template) => ( document.updateFromTemplate(template)} >
{template.titleWithDefault}
{t("By {{ author }}", { author: template.createdBy.name })}
))}
); } } const Author = styled.div` font-size: 13px; `; export default withTranslation()( inject("documents")(TemplatesMenu) );