Skip to main content

Migration

From 7.x.x to 8.x.x

This section outlines the necessary changes when migrating from version 7.x.x to version 8.x.x of the MeetingDoctors SDK.

Installation

From

public class func initialize(
_ application: UIApplication = UIApplication.shared,
with configuration: MeetingDoctorsSDK.MeetingDoctors.Configuration,
options _: [UIApplication.LaunchOptionsKey : Any]?,
completion: ((MeetingDoctorsSDK.MeetingDoctorsResult<MeetingDoctorsSDK.MeetingDoctorsInstallationType>) -> Void)? = nil
) -> UUID?

To

public static func initialize(
configuration: MeetingDoctors.Configuration,
completion: @escaping @Sendable (Swift.Result<UUID, any Error>) -> Void
)

Authentication

From

public class func authenticate(
token: String,
completion: @escaping (MeetingDoctorsResult<Void>) -> Void
)

To

static func authenticate(
token: String,
completion: @escaping @Sendable (Swift.Result<Void, any Error>) -> Void
)

To

Professional List

public class func professionalListViewController(
with filter: MeetingDoctorsSDK.MeetingDoctorsFilterType = MeetingDoctorsFilter.default,
showHeader: Bool = false,
divider: (MeetingDoctorsSDK.MeetingDoctorsDividerType)? = nil,
topDividers: [MeetingDoctorsSDK.MeetingDoctorsDividerType]? = [],
onUpdateLayout listener: ((CGSize) -> Void)? = nil
) -> MeetingDoctorsSDK.MeetingDoctorsResult<UIViewController>

To

public static func professionalListViewController(
filter: any MeetingDoctorsFilterType = MeetingDoctorsFilter.default,
showHeader: Bool = false,
divider: (any MeetingDoctorsDividerType)? = nil, // status 3
topDividers: [any MeetingDoctorsDividerType]? = [],
completion: @escaping @Sendable(Swift.Result<UIViewController, any Error>) -> Void
)

MyHealth

From

public class func myHealthViewController() -> MeetingDoctorsResult<UIViewController>

To

public static func myHealthViewController(
completion: @escaping (Swift.Result<UIViewController, Error>
) -> Void)

My Health

From

public class func myHealthViewController() -> MeetingDoctorsResult<UIViewController>

To

public static func myHealthViewController(
completion: @escaping (Swift.Result<UIViewController, Error>
) -> Void)

Medical History

From

public class func medicalHistoryViewController() -> MeetingDoctorsResult<UIViewController>

To

public static func medicalHistoryViewController(
completion: @escaping (Swift.Result<UIViewController, Error>
) -> Void)

Feeds

From

public class func feedsViewController() -> MeetingDoctorsResult<UIViewController>

To

public static func feedsViewController(
completion: @escaping (Swift.Result<UIViewController, Error>
) -> Void)

Videocall

From

public class func deeplink(
_ deeplinkOption: MeetingDoctorsDeeplinkOption,
origin: UIViewController? = nil,
animated: Bool = true,
completion: @escaping ((MeetingDoctorsResult<Void>) -> Void)
)

To

public static func startVideocall(
origin: UIViewController? = nil,
animated: Bool = true,
completion: @escaping @Sendable (Swift.Result<Void, any Error>) -> Void
)

Booking

From

public class func bookingViewController() -> MeetingDoctorsResult<UIViewController>

To

public static func bookingViewController(
completion: @escaping (Swift.Result<UIViewController, Error>
) -> Void)

Customization

From

// A custom view displayed in the center of the navigation bar.
titleView: UIView?

// Title of the inbox navigation bar
inboxTitle: String?

// Left bar button item to use as child navigation item. It can be customized to put a button that invokes the MeetingDoctors.dismiss() method or open a side menu. By default it is empty.
rootLeftBarButtonItem: UIBarButtonItem?

// Right bar button item to use as child navigation item. It can be customized to put a button that invokes the MeetingDoctors.dismiss() method or open a side menu. By default it is empty.
rootRightBarButtonItem: UIBarButtonItem? { get set }

// Inbox cell style for contact list (classic / meetingDoctors / complete)
inboxCellStyle: MeetingDoctorsInboxCellStyle

// Inbox contact list divider behavior.
divider: MeetingDoctorsDividerType?

// professional list array of Header
topDivider: [MeetingDoctorsDividerType]?

// View used as background in chat screen.
chatBackgroundView: UIView?

/// String of the literal for usser banned
supportMailBanned: String?

To

// Inbox cell style for contact list (classic / meetingDoctors / complete)
MeetingDoctors.style?.inboxCellStyle: MeetingDoctorsInboxCellStyle

// View used as background in chat screen.
MeetingDoctors.style?.chatBackgroundView: UIView?

/// String of the literal for usser banned
MeetingDoctors.style?.supportMailBanned: String?