Skip to content

Commit e431721

Browse files
committed
Start adding DropdownButton to Template page
1 parent 066b7dc commit e431721

File tree

2 files changed

+26
-7
lines changed

2 files changed

+26
-7
lines changed

site/src/pages/TemplatePage/TemplatePage.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,11 @@ export const TemplatePage: FC<React.PropsWithChildren<unknown>> = () => {
3131
templateState.context
3232
const isLoading = !template || !activeTemplateVersion || !templateResources
3333

34+
const handleDeleteTemplate = (templateId: string) => {
35+
//TODO
36+
console.log("implement me", templateId)
37+
}
38+
3439
if (isLoading) {
3540
return <Loader />
3641
}
@@ -45,6 +50,7 @@ export const TemplatePage: FC<React.PropsWithChildren<unknown>> = () => {
4550
activeTemplateVersion={activeTemplateVersion}
4651
templateResources={templateResources}
4752
templateVersions={templateVersions}
53+
handleDeleteTemplate={handleDeleteTemplate}
4854
/>
4955
</>
5056
)

site/src/pages/TemplatePage/TemplatePageView.tsx

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ import Link from "@material-ui/core/Link"
44
import { makeStyles } from "@material-ui/core/styles"
55
import AddCircleOutline from "@material-ui/icons/AddCircleOutline"
66
import SettingsOutlined from "@material-ui/icons/SettingsOutlined"
7+
import { DeleteButton } from "components/DropdownButton/ActionCtas"
8+
import { DropdownButton } from "components/DropdownButton/DropdownButton"
79
import frontMatter from "front-matter"
810
import { FC } from "react"
911
import ReactMarkdown from "react-markdown"
@@ -36,13 +38,15 @@ export interface TemplatePageViewProps {
3638
activeTemplateVersion: TemplateVersion
3739
templateResources: WorkspaceResource[]
3840
templateVersions?: TemplateVersion[]
41+
handleDeleteTemplate: (templateId: string) => void
3942
}
4043

4144
export const TemplatePageView: FC<React.PropsWithChildren<TemplatePageViewProps>> = ({
4245
template,
4346
activeTemplateVersion,
4447
templateResources,
4548
templateVersions,
49+
handleDeleteTemplate
4650
}) => {
4751
const styles = useStyles()
4852
const readme = frontMatter(activeTemplateVersion.readme)
@@ -66,13 +70,22 @@ export const TemplatePageView: FC<React.PropsWithChildren<TemplatePageViewProps>
6670
{Language.settingsButton}
6771
</Button>
6872
</Link>
69-
<Link
70-
underline="none"
71-
component={RouterLink}
72-
to={`/templates/${template.name}/workspace`}
73-
>
74-
<Button startIcon={<AddCircleOutline />}>{Language.createButton}</Button>
75-
</Link>
73+
74+
<DropdownButton
75+
primaryAction={
76+
<Link
77+
underline="none"
78+
component={RouterLink}
79+
to={`/templates/${template.name}/workspace`}
80+
>
81+
<Button startIcon={<AddCircleOutline />}>{Language.createButton}</Button>
82+
</Link>
83+
}
84+
secondaryActions={[
85+
{ action: "delete", button: <DeleteButton handleAction={() => handleDeleteTemplate(template.id)} /> }
86+
]}
87+
canCancel={false}
88+
/>
7689
</Stack>
7790
}
7891
>

0 commit comments

Comments
 (0)