Skip to content

Commit ab905ac

Browse files
committed
Implement create app step
1 parent 6361b37 commit ab905ac

3 files changed

Lines changed: 208 additions & 76 deletions

File tree

packages/localizations/src/en-US.ts

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -616,6 +616,40 @@ export const enUS: LocalizationResource = {
616616
},
617617
},
618618
},
619+
samlMicrosoft: {
620+
mainHeaderTitle: 'Configure Microsoft Entra',
621+
createAppStep: {
622+
headerSubtitle: 'Create a new enterprise application in your Azure portal',
623+
createAppInstructions: {
624+
title: 'Create a new enterprise application in Microsoft Entra',
625+
step1: 'Sign in to Microsoft Azure Portal and go to <bold>Enterprise applications.</bold>',
626+
step2:
627+
"Click <bold>New application.</bold> You'll be redirected to the <bold>Browse Microsoft Entra Gallery</bold> page.",
628+
step3: 'Select <bold>Create your own application.</bold>',
629+
step4: {
630+
label: 'In the modal that opens:',
631+
subSteps: {
632+
appName: 'Fill out your application name.',
633+
nonGallery:
634+
"Select <bold>Integrate any other application you don't find in the gallery (Non-gallery)</bold>.",
635+
create: 'Select <bold>Create</bold>.',
636+
},
637+
},
638+
},
639+
assignUsersInstructions: {
640+
title: 'Assign your users or groups in Microsoft',
641+
paragraph1: 'You need to assign users or groups before they can use it to log in.',
642+
step1: 'In the <bold>Getting Started</bold> section, select the <bold>Assign users and groups.</bold>',
643+
step2: "Select <bold>Add user/group.</bold> You'll be redirected to the <bold>Add Assignment page.</bold>",
644+
step3: 'Select the <bold>None Selected link.</bold>',
645+
step4:
646+
'To assign a user to the enterprise app, you can either use the search field to find a user or select the checkbox next to the user in the table.',
647+
step5:
648+
"Select <bold>Select</bold> at the bottom of the page. You'll be redirected to the <bold>Add Assignment</bold> page.",
649+
step6: 'Select <bold>Assign</bold> at the bottom of the page.',
650+
},
651+
},
652+
},
619653
},
620654
},
621655
createOrganization: {

packages/shared/src/types/localization.ts

Lines changed: 10 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -1674,87 +1674,24 @@ export type __internal_LocalizationResource = {
16741674
step1: LocalizationValue;
16751675
step2: LocalizationValue;
16761676
step3: LocalizationValue;
1677-
step4: LocalizationValue;
1678-
step5: LocalizationValue;
1679-
};
1680-
};
1681-
identityProviderMetadataStep: {
1682-
headerSubtitle: LocalizationValue;
1683-
modes: {
1684-
title: LocalizationValue;
1685-
ariaLabel: LocalizationValue;
1686-
metadataFile: LocalizationValue;
1687-
manual: LocalizationValue;
1688-
};
1689-
metadataFile: {
1690-
label: LocalizationValue;
1691-
description: LocalizationValue;
1692-
uploadFile: LocalizationValue;
1693-
replaceFile: LocalizationValue;
1694-
removeFile: LocalizationValue;
1695-
fileUploaded: LocalizationValue;
1696-
};
1697-
manual: {
1698-
description: LocalizationValue;
1699-
signOnUrl: {
1700-
label: LocalizationValue;
1701-
placeholder: LocalizationValue;
1702-
};
1703-
issuer: {
1677+
step4: {
17041678
label: LocalizationValue;
1705-
placeholder: LocalizationValue;
1706-
};
1707-
signingCertificate: {
1708-
label: LocalizationValue;
1709-
uploadFile: LocalizationValue;
1710-
replaceFile: LocalizationValue;
1711-
removeFile: LocalizationValue;
1712-
fileUploaded: LocalizationValue;
1713-
};
1714-
};
1715-
};
1716-
serviceProviderStep: {
1717-
headerSubtitle: LocalizationValue;
1718-
title: LocalizationValue;
1719-
paragraph: LocalizationValue;
1720-
serviceProviderFields: {
1721-
acsUrl: {
1722-
label: LocalizationValue;
1723-
};
1724-
spEntityId: {
1725-
label: LocalizationValue;
1726-
};
1727-
};
1728-
nameIdInstructions: {
1729-
step1: LocalizationValue;
1730-
step2: LocalizationValue;
1731-
};
1732-
};
1733-
attributeMappingStep: {
1734-
headerSubtitle: LocalizationValue;
1735-
paragraph: LocalizationValue;
1736-
step1: LocalizationValue;
1737-
step2: LocalizationValue;
1738-
attributeMappingTable: {
1739-
columns: {
1740-
googleAttribute: LocalizationValue;
1741-
appAttribute: LocalizationValue;
1742-
};
1743-
rows: {
1744-
email: { googleAttribute: LocalizationValue; appAttribute: LocalizationValue };
1745-
firstName: { googleAttribute: LocalizationValue; appAttribute: LocalizationValue };
1746-
lastName: { googleAttribute: LocalizationValue; appAttribute: LocalizationValue };
1679+
subSteps: {
1680+
appName: LocalizationValue;
1681+
nonGallery: LocalizationValue;
1682+
create: LocalizationValue;
1683+
};
17471684
};
17481685
};
1749-
};
1750-
configureUserAccess: {
1751-
headerSubtitle: LocalizationValue;
17521686
assignUsersInstructions: {
1687+
title: LocalizationValue;
17531688
paragraph1: LocalizationValue;
17541689
step1: LocalizationValue;
17551690
step2: LocalizationValue;
17561691
step3: LocalizationValue;
1757-
paragraph2: LocalizationValue;
1692+
step4: LocalizationValue;
1693+
step5: LocalizationValue;
1694+
step6: LocalizationValue;
17581695
};
17591696
};
17601697
};

packages/ui/src/components/ConfigureSSO/steps/ConfigureStep/saml/SamlMicrosoftConfigureSteps.tsx

Lines changed: 164 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { type JSX } from 'react';
22

3-
import { Col, descriptors, Heading, localizationKeys, Text } from '@/customizables';
3+
import { Box, Col, descriptors, Heading, localizationKeys, Text } from '@/customizables';
44

55
import { Step } from '../../../elements/Step';
66
import { useWizard, Wizard } from '../../../elements/Wizard';
@@ -32,16 +32,177 @@ const SamlMicrosoftCreateAppStep = (): JSX.Element => {
3232
as='h3'
3333
textVariant='subtitle'
3434
localizationKey={localizationKeys(
35-
'configureSSO.configureStep.samlCustom.createAppStep.createAppInstructions.title',
35+
'configureSSO.configureStep.samlMicrosoft.createAppStep.createAppInstructions.title',
36+
)}
37+
/>
38+
39+
<Col
40+
elementDescriptor={descriptors.configureSSOInstructionsList}
41+
as='ul'
42+
sx={theme => ({
43+
gap: theme.space.$1x5,
44+
margin: 0,
45+
paddingInlineStart: theme.space.$5,
46+
listStyleType: 'disc',
47+
})}
48+
>
49+
<Text
50+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
51+
as='li'
52+
colorScheme='secondary'
53+
localizationKey={localizationKeys(
54+
'configureSSO.configureStep.samlMicrosoft.createAppStep.createAppInstructions.step1',
55+
)}
56+
/>
57+
<Text
58+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
59+
as='li'
60+
colorScheme='secondary'
61+
localizationKey={localizationKeys(
62+
'configureSSO.configureStep.samlMicrosoft.createAppStep.createAppInstructions.step2',
63+
)}
64+
/>
65+
<Text
66+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
67+
as='li'
68+
colorScheme='secondary'
69+
localizationKey={localizationKeys(
70+
'configureSSO.configureStep.samlMicrosoft.createAppStep.createAppInstructions.step3',
71+
)}
72+
/>
73+
74+
<Box
75+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
76+
as='li'
77+
sx={theme => ({
78+
fontSize: theme.fontSizes.$md,
79+
lineHeight: theme.lineHeights.$small,
80+
color: theme.colors.$colorMutedForeground,
81+
})}
82+
>
83+
<Text
84+
as='span'
85+
colorScheme='secondary'
86+
localizationKey={localizationKeys(
87+
'configureSSO.configureStep.samlMicrosoft.createAppStep.createAppInstructions.step4.label',
88+
)}
89+
/>
90+
<Col
91+
elementDescriptor={descriptors.configureSSOInstructionsList}
92+
as='ul'
93+
sx={theme => ({
94+
gap: theme.space.$1x5,
95+
marginBlockStart: theme.space.$1x5,
96+
marginBlockEnd: 0,
97+
paddingInlineStart: theme.space.$5,
98+
listStyleType: 'circle',
99+
})}
100+
>
101+
<Text
102+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
103+
as='li'
104+
colorScheme='secondary'
105+
localizationKey={localizationKeys(
106+
'configureSSO.configureStep.samlMicrosoft.createAppStep.createAppInstructions.step4.subSteps.appName',
107+
)}
108+
/>
109+
<Text
110+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
111+
as='li'
112+
colorScheme='secondary'
113+
localizationKey={localizationKeys(
114+
'configureSSO.configureStep.samlMicrosoft.createAppStep.createAppInstructions.step4.subSteps.nonGallery',
115+
)}
116+
/>
117+
<Text
118+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
119+
as='li'
120+
colorScheme='secondary'
121+
localizationKey={localizationKeys(
122+
'configureSSO.configureStep.samlMicrosoft.createAppStep.createAppInstructions.step4.subSteps.create',
123+
)}
124+
/>
125+
</Col>
126+
</Box>
127+
</Col>
128+
</Col>
129+
130+
<Col sx={theme => ({ gap: theme.space.$1x5 })}>
131+
<Heading
132+
elementDescriptor={descriptors.configureSSOInstructionsHeading}
133+
as='h3'
134+
textVariant='subtitle'
135+
localizationKey={localizationKeys(
136+
'configureSSO.configureStep.samlMicrosoft.createAppStep.assignUsersInstructions.title',
36137
)}
37138
/>
38139
<Text
39140
as='p'
40141
colorScheme='secondary'
41142
localizationKey={localizationKeys(
42-
'configureSSO.configureStep.samlCustom.createAppStep.createAppInstructions.paragraph',
143+
'configureSSO.configureStep.samlMicrosoft.createAppStep.assignUsersInstructions.paragraph1',
43144
)}
44145
/>
146+
147+
<Col
148+
elementDescriptor={descriptors.configureSSOInstructionsList}
149+
as='ul'
150+
sx={theme => ({
151+
gap: theme.space.$1x5,
152+
margin: 0,
153+
paddingInlineStart: theme.space.$5,
154+
listStyleType: 'disc',
155+
})}
156+
>
157+
<Text
158+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
159+
as='li'
160+
colorScheme='secondary'
161+
localizationKey={localizationKeys(
162+
'configureSSO.configureStep.samlMicrosoft.createAppStep.assignUsersInstructions.step1',
163+
)}
164+
/>
165+
<Text
166+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
167+
as='li'
168+
colorScheme='secondary'
169+
localizationKey={localizationKeys(
170+
'configureSSO.configureStep.samlMicrosoft.createAppStep.assignUsersInstructions.step2',
171+
)}
172+
/>
173+
<Text
174+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
175+
as='li'
176+
colorScheme='secondary'
177+
localizationKey={localizationKeys(
178+
'configureSSO.configureStep.samlMicrosoft.createAppStep.assignUsersInstructions.step3',
179+
)}
180+
/>
181+
<Text
182+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
183+
as='li'
184+
colorScheme='secondary'
185+
localizationKey={localizationKeys(
186+
'configureSSO.configureStep.samlMicrosoft.createAppStep.assignUsersInstructions.step4',
187+
)}
188+
/>
189+
<Text
190+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
191+
as='li'
192+
colorScheme='secondary'
193+
localizationKey={localizationKeys(
194+
'configureSSO.configureStep.samlMicrosoft.createAppStep.assignUsersInstructions.step5',
195+
)}
196+
/>
197+
<Text
198+
elementDescriptor={descriptors.configureSSOInstructionsListItem}
199+
as='li'
200+
colorScheme='secondary'
201+
localizationKey={localizationKeys(
202+
'configureSSO.configureStep.samlMicrosoft.createAppStep.assignUsersInstructions.step6',
203+
)}
204+
/>
205+
</Col>
45206
</Col>
46207
</Step.Section>
47208
</Step.Body>

0 commit comments

Comments
 (0)