create static method

Future<SolevatoClient> create({
  1. required String baseUrl,
  2. required String inboxIdentifier,
  3. SolevatoUser? user,
  4. bool enablePersistence = true,
  5. SolevatoCallbacks? callbacks,
})

Creates an instance of SolevatoClient with the baseUrl of your solevato installation, inboxIdentifier for the targeted inbox. Specify custom user details using user and callbacks for handling solevato events. By default persistence is enabled, to disable persistence set enablePersistence as false

Implementation

static Future<SolevatoClient> create({
  required String baseUrl,
  required String inboxIdentifier,
  SolevatoUser? user,
  bool enablePersistence = true,
  SolevatoCallbacks? callbacks,
}) async {
  if (enablePersistence) {
    await LocalStorage.openDB();
  }

  final solevatoParams = SolevatoParameters(
    clientInstanceKey: getClientInstanceKey(
        baseUrl: baseUrl,
        inboxIdentifier: inboxIdentifier,
        userIdentifier: user?.identifier),
    isPersistenceEnabled: enablePersistence,
    baseUrl: baseUrl,
    inboxIdentifier: inboxIdentifier,
    userIdentifier: user?.identifier,
  );

  final client = SolevatoClient._(
    solevatoParams,
    callbacks: callbacks,
    user: user,
  );

  client._init();

  return client;
}