in authui-container/server/api/gcip-handler.ts [223:282]
private getEnabledPasswordAndPhoneIdps(tenantId: string): Promise<TenantUiConfig> {
if (tenantId.charAt(0) === '_') {
let retrievedProjectId: string;
return this.app.getProjectId()
.then((projectId) => {
retrievedProjectId = projectId;
return this.getGcipConfigHandler.send({
urlParams: {
projectId,
},
}, DEFAULT_ERROR_GET_GCIP_CONFIG);
})
.then((httpResponse) => {
const config: Config = typeof httpResponse.body === 'object' ?
httpResponse.body : JSON.parse(httpResponse.body);
const signInOptions: SignInOption[] = [];
if (config &&
config.signIn &&
config.signIn.email &&
config.signIn.email.enabled) {
signInOptions.push({provider: 'password'});
}
if (config &&
config.signIn &&
config.signIn.phoneNumber &&
config.signIn.phoneNumber.enabled) {
signInOptions.push({provider: 'phone'});
}
return {
displayName: retrievedProjectId,
signInOptions,
};
});
} else {
return this.app.getProjectId()
.then((projectId) => {
return this.getTenantBasicConfigHandler.send({
urlParams: {
projectId,
tenantId,
},
}, DEFAULT_ERROR_GET_TENANT_CONFIG);
})
.then((httpResponse) => {
const config: Tenant = typeof httpResponse.body === 'object' ?
httpResponse.body : JSON.parse(httpResponse.body);
const signInOptions: SignInOption[] = [];
if (config &&
config.allowPasswordSignup) {
signInOptions.push({provider: 'password'});
}
return {
displayName: (config && config.displayName) || undefined,
signInOptions,
};
});
}
}