Skip to content

Commit 766d424

Browse files
committed
Add a small explanation to the personal tokens page
1 parent f7f9b6b commit 766d424

File tree

4 files changed

+39
-0
lines changed

4 files changed

+39
-0
lines changed

src/components/page.module.css

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,15 @@
2929
color: var(--cpd-color-text-primary);
3030
}
3131

32+
.description {
33+
font: var(--cpd-font-body-md-regular);
34+
letter-spacing: var(--cpd-font-letter-spacing-body-md);
35+
color: var(--cpd-color-text-secondary);
36+
max-width: 60ch;
37+
text-align: justify;
38+
grid-column: 1 / span 2;
39+
}
40+
3241
.search {
3342
grid-area: search;
3443
display: flex;

src/components/page.tsx

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,17 @@ export const Title = ({ className, children, ...props }: TitleProps) => (
2222
</h1>
2323
);
2424

25+
type DescriptionProps = React.ComponentProps<"p">;
26+
export const Description = ({
27+
className,
28+
children,
29+
...props
30+
}: DescriptionProps) => (
31+
<p className={cx(styles["description"], className)} {...props}>
32+
{children}
33+
</p>
34+
);
35+
2536
type ControlsProps = React.ComponentProps<"div">;
2637
export const Controls = ({ className, children, ...props }: ControlsProps) => (
2738
<div className={cx(styles["controls"], className)} {...props}>

src/routes/_console.personal-tokens.tsx

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,13 @@ const titleMessage = defineMessage({
8080
description: "The title of the personal tokens list page",
8181
});
8282

83+
const descriptionMessage = defineMessage({
84+
id: "pages.personal_tokens.description",
85+
defaultMessage:
86+
"Personal tokens are long-lived access tokens with specific access, including Synapse and MAS administration API access. They are useful for automating tasks and for creating integrations.",
87+
description: "The description of the personal tokens list page",
88+
});
89+
8390
export const Route = createFileRoute("/_console/personal-tokens")({
8491
staticData: {
8592
breadcrumb: {
@@ -129,6 +136,9 @@ export const Route = createFileRoute("/_console/personal-tokens")({
129136
<FormattedMessage {...messages.actionAdd} />
130137
</Page.Button>
131138
</Page.Controls>
139+
<Page.Description>
140+
<FormattedMessage {...descriptionMessage} />
141+
</Page.Description>
132142
</Page.Header>
133143

134144
<Placeholder.LoadingTable />
@@ -892,12 +902,17 @@ function RouteComponent() {
892902
<Page.Title>
893903
<FormattedMessage {...titleMessage} />
894904
</Page.Title>
905+
895906
<Page.Controls>
896907
<PersonalTokenAddButton
897908
serverName={credentials.serverName}
898909
synapseRoot={synapseRoot}
899910
/>
900911
</Page.Controls>
912+
913+
<Page.Description>
914+
<FormattedMessage {...descriptionMessage} />
915+
</Page.Description>
901916
</Page.Header>
902917

903918
<Table.Root>

translations/extracted/en.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,6 +231,10 @@
231231
"description": "Label for the token creation date field",
232232
"message": "Created at"
233233
},
234+
"pages.personal_tokens.description": {
235+
"description": "The description of the personal tokens list page",
236+
"message": "Personal tokens are long-lived access tokens with specific access, including Synapse and MAS administration API access. They are useful for automating tasks and for creating integrations."
237+
},
234238
"pages.personal_tokens.device_id_help": {
235239
"description": "Help text for device ID field",
236240
"message": "Leave empty to generate a random 10-character device ID"

0 commit comments

Comments
 (0)