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

Commitff4fc2f

Browse files
feat: add View Source button for template administrators in workspace creation
Adds a View Source button to the workspace creation page that allows templateadministrators to quickly navigate to the template editor. The button:- Only appears for users with template update permissions- Links directly to the template version editor- Uses the ExternalLinkIcon for consistency with other source viewing features- Is positioned next to the Cancel button in the page headerThis addresses user friction where template admins expect to be able to edittemplates directly from the workspace creation flow.Co-authored-by: matifali <10648092+matifali@users.noreply.github.com>
1 parent4ac6be6 commitff4fc2f

File tree

2 files changed

+28
-4
lines changed

2 files changed

+28
-4
lines changed

‎site/src/pages/CreateWorkspacePage/CreateWorkspacePage.tsx‎

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,16 @@ const CreateWorkspacePage: FC = () => {
6565
});
6666
constpermissionsQuery=useQuery({
6767
...checkAuthorization({
68-
checks:createWorkspaceChecks(templateQuery.data?.organization_id??""),
68+
checks:{
69+
...createWorkspaceChecks(templateQuery.data?.organization_id??""),
70+
canUpdateTemplate:{
71+
object:{
72+
resource_type:"template",
73+
resource_id:templateQuery.data?.id??"",
74+
},
75+
action:"update",
76+
},
77+
},
6978
}),
7079
enabled:!!templateQuery.data,
7180
});
@@ -208,6 +217,7 @@ const CreateWorkspacePage: FC = () => {
208217
startPollingExternalAuth={startPollingExternalAuth}
209218
hasAllRequiredExternalAuth={hasAllRequiredExternalAuth}
210219
permissions={permissionsQuery.dataasCreateWorkspacePermissions}
220+
canUpdateTemplate={permissionsQuery.data?.canUpdateTemplate}
211221
parameters={realizedParametersasTemplateVersionParameter[]}
212222
presets={templateVersionPresetsQuery.data??[]}
213223
creatingWorkspace={createWorkspaceMutation.isPending}

‎site/src/pages/CreateWorkspacePage/CreateWorkspacePageView.tsx‎

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,9 @@ import { UserAutocomplete } from "components/UserAutocomplete/UserAutocomplete";
2828
import{typeFormikContextType,useFormik}from"formik";
2929
importtype{ExternalAuthPollingState}from"hooks/useExternalAuth";
3030
import{generateWorkspaceName}from"modules/workspaces/generateWorkspaceName";
31+
import{ExternalLinkIcon}from"lucide-react";
3132
import{typeFC,useCallback,useEffect,useMemo,useState}from"react";
33+
import{Link}from"react-router-dom";
3234
import{
3335
getFormHelpers,
3436
nameValidator,
@@ -67,6 +69,7 @@ interface CreateWorkspacePageViewProps {
6769
presets:TypesGen.Preset[];
6870
permissions:CreateWorkspacePermissions;
6971
creatingWorkspace:boolean;
72+
canUpdateTemplate?:boolean;
7073
onCancel:()=>void;
7174
onSubmit:(
7275
req:TypesGen.CreateWorkspaceRequest,
@@ -92,6 +95,7 @@ export const CreateWorkspacePageView: FC<CreateWorkspacePageViewProps> = ({
9295
presets=[],
9396
permissions,
9497
creatingWorkspace,
98+
canUpdateTemplate,
9599
onSubmit,
96100
onCancel,
97101
})=>{
@@ -218,9 +222,19 @@ export const CreateWorkspacePageView: FC<CreateWorkspacePageViewProps> = ({
218222
<Marginssize="medium">
219223
<PageHeader
220224
actions={
221-
<Buttonsize="sm"variant="outline"onClick={onCancel}>
222-
Cancel
223-
</Button>
225+
<Stackdirection="row"spacing={2}>
226+
{canUpdateTemplate&&(
227+
<ButtonasChildsize="sm"variant="outline">
228+
<Linkto={`/templates/${template.organization_name}/${template.name}/versions/${versionId}/edit`}>
229+
<ExternalLinkIcon/>
230+
View source
231+
</Link>
232+
</Button>
233+
)}
234+
<Buttonsize="sm"variant="outline"onClick={onCancel}>
235+
Cancel
236+
</Button>
237+
</Stack>
224238
}
225239
>
226240
<Stackdirection="row">

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp