mirror of
https://gitlab.com/openstapps/openstapps.git
synced 2026-01-22 09:32:41 +00:00
refactor: split up SCUserConfiguration type
This commit is contained in:
@@ -13,7 +13,7 @@
|
|||||||
* this program. If not, see <https://www.gnu.org/licenses/>.
|
* this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {SCUserConfiguration} from './user';
|
import {SCUserConfigurationMap} from './user';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Supported authorization provider types
|
* Supported authorization provider types
|
||||||
@@ -87,7 +87,7 @@ export interface SCAuthorizationProviderEndpoints {
|
|||||||
*
|
*
|
||||||
* @see https://www.npmjs.com/package/jsonpath
|
* @see https://www.npmjs.com/package/jsonpath
|
||||||
*/
|
*/
|
||||||
mapping: { [key in keyof SCUserConfiguration]: string; };
|
mapping: SCUserConfigurationMap;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* URL to revoke a token
|
* URL to revoke a token
|
||||||
|
|||||||
@@ -15,40 +15,50 @@
|
|||||||
|
|
||||||
import {SCAcademicPriceGroup} from '../things/abstract/thing-that-can-be-offered';
|
import {SCAcademicPriceGroup} from '../things/abstract/thing-that-can-be-offered';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* User configuration keys mapped to string type while including their requiredness
|
||||||
|
*/
|
||||||
|
export type SCUserConfigurationMap = { [K in keyof SCUserConfigurationOptional]?: string } & { [K in keyof SCUserConfigurationRequired]: string };
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A user configuration
|
* A user configuration
|
||||||
*/
|
*/
|
||||||
export interface SCUserConfiguration {
|
export type SCUserConfiguration = SCUserConfigurationRequired & SCUserConfigurationOptional;
|
||||||
/**
|
|
||||||
* User's e-mail
|
|
||||||
*/
|
|
||||||
email?: string;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* User's family name
|
|
||||||
*/
|
|
||||||
familyName?: string;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* User's given name
|
|
||||||
*/
|
|
||||||
givenName?: string;
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A user configurations required properties
|
||||||
|
*/
|
||||||
|
interface SCUserConfigurationRequired {
|
||||||
/**
|
/**
|
||||||
* ID given to the user
|
* ID given to the user
|
||||||
*/
|
*/
|
||||||
id: string;
|
id: string;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The complete name of the user combining all the parts of the name into one
|
* The complete name of the user combining all the parts of the name into one
|
||||||
*/
|
*/
|
||||||
name: string;
|
name: string;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Role assigned to the user
|
* Role assigned to the user
|
||||||
*/
|
*/
|
||||||
role: keyof SCAcademicPriceGroup;
|
role: keyof SCAcademicPriceGroup;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A user configurations optional properties
|
||||||
|
*/
|
||||||
|
interface SCUserConfigurationOptional {
|
||||||
|
/**
|
||||||
|
* User's e-mail
|
||||||
|
*/
|
||||||
|
email?: string;
|
||||||
|
/**
|
||||||
|
* User's family name
|
||||||
|
*/
|
||||||
|
familyName?: string;
|
||||||
|
/**
|
||||||
|
* User's given name
|
||||||
|
*/
|
||||||
|
givenName?: string;
|
||||||
/**
|
/**
|
||||||
* Student ID given to the user
|
* Student ID given to the user
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user