iOS SDK
IDPersonalCabinetManagerProtocol
Протокол менеджера с таблицей виджетов личного кабинета
public protocol SIDPersonalCabinetManagerProtocol {
var tableView: UIView { get }
func updateData()
static func loadCacheableImage(from urlString: String?) async -> UIImage?
static func loadCacheableImage(from urlString: String?, completion: @escaping (UIImage?) -> Void)
}
, где
tableView
Таблица виджетов личного кабинета
updateData()
Позволяет обновить данные представления, вызывая соответствующую обработку данных и перерисовку UI.
loadCacheableImage(from urlString: String?)
Метод, который загружает кэшируемое изображение по URL-адресу асинхронно. И возвращает загруженное изображение или nil, если загрузка не удалась.
| Параметр | Тип | Описание |
|---|---|---|
urlString | String | URL-адрес изображения (опционально) |
loadCacheableImage(from urlString: String?, completion: @escaping (UIImage?) -> Void)
Загружает кэшируемое изображение по URL-адресу и вызывает обработчик по завершении загрузки. Принимает загруженное изображение или nil, если загрузка не удалась.
| Параметр | Тип | Описание |
|---|---|---|
urlString | String | URL-адрес изображения (опционально) |
completion | @escaping (UIImage?) -> Void | Замыкание, вызываемое после завершения загрузки изображения (опционально) |
SIDPersonalCabinetContainerFactory
Класс используется для создания контейнера единого личного кабинета и регистрации кастомных виджетов.
public class SIDPersonalCabinetContainerFactory {
public init() {}
public func createContainer(additionalPath: String?,
version: Int?,
heightDelegate: SIDTableViewHeightDelegate,
elkEventHandler: SIDElkEventHandler?) -> SIDPersonalCabinetManager
public static func registerCustomWidgetView(name: String, view: SIDPCCustomWidgetViewProtocol)
}
, где
метод createContainer
Создает экземпляр менеджера личного кабинета (SIDPersonalCabinetManager).
| Параметр | Тип | Описание |
|---|---|---|
additionalPath | String | Дополнительный путь запроса (обязательно) |
version | Int | Версия приложения (обязательно) |
heightDelegate | SIDTableViewHeightDelegate | Обработчик изменения высоты таблицы (обязательно) |
elkEventHandler | SIDElkEventHandler? | Обработчик событий от ЕЛК (обязательно) |
Возвращает объект типа SIDPersonalCabinetManager
метод registerCustomWidgetView
Регистрирует кастомный виджет для отображения в едином личном кабинете.
| Параметр | Тип | Описание |
|---|---|---|
name | String | Имя виджета для поиска в json (обязательно) |
view | SIDPCCustomWidgetViewProtocol | Виджет (обязательно) |
reloginAuthELKLite
Выполняет приоритетную авторизацию с помощью единого веб-окна.
| Параметр | Тип | Описание |
|---|---|---|
request | SIDAuthRequest | Модель запроса для авторизации (обязательно) |
viewController | UIViewController | Контроллер представления для открытия Safari View Controller (обязательно) |
delegate | SIDWebViewDelegateProtocol? | Обработчик событий WebView (опционально) |
public func reloginAuthELKLite(
request: SIDAuthRequest,
viewController: UIViewController,
delegate: SIDWebViewDelegateProtocol?
)