generateApiKey method

String generateApiKey(
  1. String appName, {
  2. required Duration? expireAfter,
})

Implementation

String generateApiKey(
  String appName, {
  required Duration? expireAfter,
}) {
  DateTime createdAt = DateTime.now();
  String random = RandomGenerator().generate(10);
  ApiKeyModel model = ApiKeyModel(
    name: appName,
    apiKey: random,
    createdAt: createdAt,
    expireAfter: expireAfter,
  );
  String fullQuery = model.toQuery();
  String? encrypted = _encrypter.encrypt(fullQuery);
  if (encrypted == null) {
    throw EncryptionException();
  }
  return encrypted;
}