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

Commit43cc6c4

Browse files
committed
feat: update design and copy
1 parent314c1ce commit43cc6c4

File tree

4 files changed

+96
-79
lines changed

4 files changed

+96
-79
lines changed

‎site/src/components/Paywall/Paywall.tsx

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -51,16 +51,28 @@ export const Paywall: FC<PaywallProps> = ({
5151
<Stackdirection="column"alignItems="center"spacing={3}>
5252
<ulcss={styles.featureList}>
5353
<licss={styles.feature}>
54-
<FeatureIcontype={type}/> Template access control
54+
<FeatureIcontype={type}/>
55+
{type==="premium"
56+
?"High availability & workspace proxies"
57+
:"Template access control"}
5558
</li>
5659
<licss={styles.feature}>
57-
<FeatureIcontype={type}/> User groups
60+
<FeatureIcontype={type}/>
61+
{type==="premium"
62+
?"Multi-org & role-based access control"
63+
:"User groups"}
5864
</li>
5965
<licss={styles.feature}>
60-
<FeatureIcontype={type}/> 24 hour support
66+
<FeatureIcontype={type}/>
67+
{type==="premium"
68+
?"24x7 global support with SLA"
69+
:"24 hour support"}
6170
</li>
6271
<licss={styles.feature}>
63-
<FeatureIcontype={type}/> Audit logs
72+
<FeatureIcontype={type}/>
73+
{type==="premium"
74+
?"Unlimited Git & external auth integrations"
75+
:"Audit logs"}
6476
</li>
6577
</ul>
6678
<Button
@@ -71,7 +83,7 @@ export const Paywall: FC<PaywallProps> = ({
7183
variant="outlined"
7284
color="neutral"
7385
>
74-
Learn about Enterprise
86+
Learn about{type==="enterprise" ?"Enterprise" :"Premium"}
7587
</Button>
7688
</Stack>
7789
</div>
@@ -100,9 +112,8 @@ const styles = {
100112
flexDirection:"row",
101113
justifyContent:"center",
102114
alignItems:"center",
103-
minHeight:300,
104-
maxWidth:920,
105-
margin:"auto",
115+
minHeight:280,
116+
marginBottom:32,
106117
padding:24,
107118
borderRadius:8,
108119
gap:32,
@@ -114,12 +125,9 @@ const styles = {
114125
margin:0,
115126
},
116127
description:(theme)=>({
117-
marginTop:16,
118128
fontFamily:"inherit",
119-
maxWidth:420,
120-
lineHeight:"160%",
121-
color:theme.palette.text.secondary,
122-
fontSize:16,
129+
maxWidth:460,
130+
fontSize:14,
123131
}),
124132
separator:(theme)=>({
125133
width:1,
@@ -131,7 +139,7 @@ const styles = {
131139
listStyle:"none",
132140
margin:0,
133141
marginRight:8,
134-
padding:"012px",
142+
padding:"024px",
135143
fontSize:14,
136144
fontWeight:500,
137145
},

‎site/src/pages/ManagementSettingsPage/CustomRolesPage/CustomRolesPageView.stories.tsx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,14 @@ export const NotEnabled: Story = {
2121
},
2222
};
2323

24+
exportconstNotEnabledEmptyTable:Story={
25+
args:{
26+
roles:[],
27+
canAssignOrgRole:true,
28+
isCustomRolesEnabled:false,
29+
},
30+
};
31+
2432
exportconstEnabled:Story={
2533
args:{
2634
roles:[MockRoleWithOrgPermissions],

‎site/src/pages/ManagementSettingsPage/CustomRolesPage/CustomRolesPageView.tsx

Lines changed: 64 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -45,74 +45,73 @@ export const CustomRolesPageView: FC<CustomRolesPageViewProps> = ({
4545
constisEmpty=Boolean(roles&&roles.length===0);
4646
return(
4747
<>
48-
<ChooseOne>
49-
<Condcondition={!isCustomRolesEnabled}>
50-
<Paywall
51-
type="premium"
52-
message="Custom Roles"
53-
description="Create custom roles to assign a specific set of permissions to a user. You need an Enterprise license to use this feature."
54-
documentationLink={docs("/admin/groups")}
55-
/>
56-
</Cond>
57-
<Cond>
58-
<TableContainer>
59-
<Table>
60-
<TableHead>
48+
{!isCustomRolesEnabled&&(
49+
<Paywall
50+
type="premium"
51+
message="Custom Roles"
52+
description="Custom Roles are available in the Premium plan and require an upgraded license. Please contact your Customer Success team for more information."
53+
documentationLink={docs("/admin/groups")}
54+
/>
55+
)}
56+
<TableContainer>
57+
<Table>
58+
<TableHead>
59+
<TableRow>
60+
<TableCellwidth="40%">Name</TableCell>
61+
<TableCellwidth="59%">Permissions</TableCell>
62+
<TableCellwidth="1%"/>
63+
</TableRow>
64+
</TableHead>
65+
<TableBody>
66+
<ChooseOne>
67+
<Condcondition={isLoading}>
68+
<TableLoader/>
69+
</Cond>
70+
71+
<Condcondition={isEmpty}>
6172
<TableRow>
62-
<TableCellwidth="40%">Name</TableCell>
63-
<TableCellwidth="59%">Permissions</TableCell>
64-
<TableCellwidth="1%"/>
73+
<TableCellcolSpan={999}>
74+
<EmptyState
75+
message="No custom roles yet"
76+
description={
77+
canAssignOrgRole&&isCustomRolesEnabled
78+
?"Create your first custom role"
79+
:!isCustomRolesEnabled
80+
?"Upgrade to a premium license to create a custom role"
81+
:"You don't have permission to create a custom role"
82+
}
83+
cta={
84+
canAssignOrgRole&&
85+
isCustomRolesEnabled&&(
86+
<Button
87+
component={RouterLink}
88+
to="create"
89+
startIcon={<AddOutlined/>}
90+
variant="contained"
91+
>
92+
Create custom role
93+
</Button>
94+
)
95+
}
96+
/>
97+
</TableCell>
6598
</TableRow>
66-
</TableHead>
67-
<TableBody>
68-
<ChooseOne>
69-
<Condcondition={isLoading}>
70-
<TableLoader/>
71-
</Cond>
72-
73-
<Condcondition={isEmpty}>
74-
<TableRow>
75-
<TableCellcolSpan={999}>
76-
<EmptyState
77-
message="No custom roles yet"
78-
description={
79-
canAssignOrgRole
80-
?"Create your first custom role"
81-
:"You don't have permission to create a custom role"
82-
}
83-
cta={
84-
canAssignOrgRole&&(
85-
<Button
86-
component={RouterLink}
87-
to="create"
88-
startIcon={<AddOutlined/>}
89-
variant="contained"
90-
>
91-
Create custom role
92-
</Button>
93-
)
94-
}
95-
/>
96-
</TableCell>
97-
</TableRow>
98-
</Cond>
99+
</Cond>
99100

100-
<Cond>
101-
{roles?.map((role)=>(
102-
<RoleRow
103-
key={role.name}
104-
role={role}
105-
canAssignOrgRole={canAssignOrgRole}
106-
onDelete={()=>onDeleteRole(role)}
107-
/>
108-
))}
109-
</Cond>
110-
</ChooseOne>
111-
</TableBody>
112-
</Table>
113-
</TableContainer>
114-
</Cond>
115-
</ChooseOne>
101+
<Cond>
102+
{roles?.map((role)=>(
103+
<RoleRow
104+
key={role.name}
105+
role={role}
106+
canAssignOrgRole={canAssignOrgRole}
107+
onDelete={()=>onDeleteRole(role)}
108+
/>
109+
))}
110+
</Cond>
111+
</ChooseOne>
112+
</TableBody>
113+
</Table>
114+
</TableContainer>
116115
</>
117116
);
118117
};

‎site/src/theme/branding.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
exportinterfaceBranding{
22
paywall:{
3+
// Colors for enterprise are temporary and will be removed when the enterprise license is removed
34
enterprise:{
45
background:string;
56
border:string;
@@ -10,6 +11,7 @@ export interface Branding {
1011
};
1112
};
1213
badge:{
14+
// Colors for enterprise are temporary and will be removed when the enterprise license is removed
1315
enterprise:{
1416
background:string;
1517
border:string;

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp