Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit14e5370

Browse files
committed
fix: re-add original create template context menu
1 parenta62e69d commit14e5370

File tree

3 files changed

+100
-16
lines changed

3 files changed

+100
-16
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
importtype{Meta,StoryObj}from"@storybook/react";
2+
import{screen,userEvent}from"@storybook/test";
3+
import{CreateTemplateButton}from"./CreateTemplateButton";
4+
5+
constmeta:Meta<typeofCreateTemplateButton>={
6+
title:"pages/TemplatesPage/CreateTemplateButton",
7+
component:CreateTemplateButton,
8+
};
9+
10+
exportdefaultmeta;
11+
typeStory=StoryObj<typeofCreateTemplateButton>;
12+
13+
exportconstClose:Story={};
14+
15+
exportconstOpen:Story={
16+
play:async({ step})=>{
17+
constuser=userEvent.setup();
18+
awaitstep("click on trigger",async()=>{
19+
awaituser.click(screen.getByRole("button"));
20+
});
21+
},
22+
};
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
importAddIconfrom"@mui/icons-material/AddOutlined";
2+
importInventory2from"@mui/icons-material/Inventory2";
3+
importNoteAddOutlinedfrom"@mui/icons-material/NoteAddOutlined";
4+
importUploadOutlinedfrom"@mui/icons-material/UploadOutlined";
5+
importButtonfrom"@mui/material/Button";
6+
importtype{FC}from"react";
7+
import{
8+
MoreMenu,
9+
MoreMenuContent,
10+
MoreMenuItem,
11+
MoreMenuTrigger,
12+
}from"components/MoreMenu/MoreMenu";
13+
14+
typeCreateTemplateButtonProps={
15+
onNavigate:(path:string)=>void;
16+
};
17+
18+
exportconstCreateTemplateButton:FC<CreateTemplateButtonProps>=({
19+
onNavigate,
20+
})=>{
21+
return(
22+
<MoreMenu>
23+
<MoreMenuTrigger>
24+
<ButtonstartIcon={<AddIcon/>}variant="contained">
25+
Create Template
26+
</Button>
27+
</MoreMenuTrigger>
28+
<MoreMenuContent>
29+
<MoreMenuItem
30+
onClick={()=>{
31+
onNavigate("/templates/new?exampleId=scratch");
32+
}}
33+
>
34+
<NoteAddOutlined/>
35+
From scratch
36+
</MoreMenuItem>
37+
<MoreMenuItem
38+
onClick={()=>{
39+
onNavigate("/templates/new");
40+
}}
41+
>
42+
<UploadOutlined/>
43+
Upload template
44+
</MoreMenuItem>
45+
<MoreMenuItem
46+
onClick={()=>{
47+
onNavigate("/starter-templates");
48+
}}
49+
>
50+
<Inventory2/>
51+
Choose a starter template
52+
</MoreMenuItem>
53+
</MoreMenuContent>
54+
</MoreMenu>
55+
);
56+
};

‎site/src/pages/TemplatesPage/TemplatesPageView.tsx

Lines changed: 22 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ import {
3737
TableRowSkeleton,
3838
}from"components/TableLoader/TableLoader";
3939
import{useClickableTableRow}from"hooks/useClickableTableRow";
40+
import{useDashboard}from"modules/dashboard/useDashboard";
4041
import{linkToTemplate,useLinks}from"modules/navigation";
4142
importtype{FC}from"react";
4243
import{useNavigate}from"react-router-dom";
@@ -46,6 +47,7 @@ import {
4647
formatTemplateActiveDevelopers,
4748
formatTemplateBuildTime,
4849
}from"utils/templates";
50+
import{CreateTemplateButton}from"./CreateTemplateButton";
4951
import{EmptyTemplates}from"./EmptyTemplates";
5052
import{TemplatesFilter}from"./TemplatesFilter";
5153

@@ -190,27 +192,31 @@ export const TemplatesPageView: FC<TemplatesPageViewProps> = ({
190192
examples,
191193
templates,
192194
})=>{
195+
const{ experiments}=useDashboard();
193196
constisLoading=!templates;
194197
constisEmpty=templates&&templates.length===0;
195198
constnavigate=useNavigate();
199+
constmultiOrgExperimentEnabled=experiments.includes("multi-organization");
200+
console.log("multiOrgExperimentEnabled",multiOrgExperimentEnabled);
201+
constcreateTemplateAction=()=>{
202+
returnmultiOrgExperimentEnabled ?(
203+
<Button
204+
startIcon={<AddIcon/>}
205+
variant="contained"
206+
onClick={()=>{
207+
navigate("/starter-templates");
208+
}}
209+
>
210+
Create Template
211+
</Button>
212+
) :(
213+
<CreateTemplateButtononNavigate={navigate}/>
214+
);
215+
};
196216

197217
return(
198218
<Margins>
199-
<PageHeader
200-
actions={
201-
canCreateTemplates&&(
202-
<Button
203-
startIcon={<AddIcon/>}
204-
variant="contained"
205-
onClick={()=>{
206-
navigate("/starter-templates");
207-
}}
208-
>
209-
Create Template
210-
</Button>
211-
)
212-
}
213-
>
219+
<PageHeaderactions={canCreateTemplates&&createTemplateAction()}>
214220
<PageHeaderTitle>
215221
<Stackspacing={1}direction="row"alignItems="center">
216222
Templates
@@ -237,7 +243,7 @@ export const TemplatesPageView: FC<TemplatesPageViewProps> = ({
237243
</TableCell>
238244
<TableCellwidth="10%">{Language.buildTimeLabel}</TableCell>
239245
<TableCellwidth="15%">{Language.lastUpdatedLabel}</TableCell>
240-
<TableCellwidth="1%"></TableCell>
246+
<TableCellwidth="1%"/>
241247
</TableRow>
242248
</TableHead>
243249
<TableBody>

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp