Загрузка приложения
IStorefrontProfileAction
Физическое объявление TypeScript из стартового проекта Nuxt со связанными типами и комментариями к полям.
IStorefrontProfileActionТипизированное действие формы профиля, различаемое по action.
src/lib/interfaces/orionplace/accounts/IStorefrontProfile.tsexport type IStorefrontProfileAction =
| {
// Значение поля action.
action:
'load' | 'refresh' | 'avatar-delete' | 'auth-resend' | 'auth-restart';
}
| { /* Значение поля action. */ action: 'details'; /* Значение поля data. */ data: IProfileUpdateRequest }
| { /* Значение поля action. */ action: 'password'; /* Значение поля data. */ data: IProfilePasswordRequest }
| { /* Значение поля action. */ action: 'delete-account'; /* Значение поля data. */ data: IProfileDeleteRequest }
| { /* Значение поля action. */ action: 'avatar-add'; /* Значение поля file. */ file: File }
| {
// Значение поля action.
action: 'email';
// Значение поля data.
data:
| { /* Значение поля step. */ step: 'step_email'; /* Значение поля email. */ email: string }
| { /* Значение поля step. */ step: 'step_email_code'; /* Значение поля code. */ code: string };
}
| { /* Значение поля action. */ action: 'notifications'; /* Значение поля data. */ data: { /* Для действия `notifications` значение `true` включает все необязательные типы email-уведомлений, а `false` выключает их. Для включения нужен сохранённый email. */ enabled: boolean } }
| {
// Значение поля action.
action: 'notification-locale';
// Значение поля data.
data: { /* Значение поля email_notification_locale. */ email_notification_locale: string };
}
| {
// Значение поля action.
action: 'authenticate';
// Значение поля data.
data: {
// Значение поля step.
step: IStorefrontProfileState['authStep'];
// Необязательное поле phone; может отсутствовать.
phone?: string;
// Необязательное поле auth_password; может отсутствовать.
auth_password?: string;
// Необязательное поле otp_code; может отсутствовать.
otp_code?: string;
// Необязательное поле first_name; может отсутствовать.
first_name?: string;
// Необязательное поле last_name; может отсутствовать.
last_name?: string;
};
};