generateJWT method

String generateJWT({
  1. required String bundleId,
  2. required String teamId,
  3. required String keyId,
  4. required String pem,
  5. required Duration expiresIn,
})

Implementation

String generateJWT({
  required String bundleId,
  required String teamId,
  required String keyId,
  required String pem,
  required Duration expiresIn,
}) {
  final jwt = JWT(
    {
      'sub': bundleId,
    },
    issuer: teamId,
    header: {
      "typ": "JWT",
      'id': "$teamId.$bundleId",
      'alg': 'ES256',
      'kid': keyId,
    },
  );
  final token = jwt.sign(
    ECPrivateKey(
      pem,
    ),
    algorithm: JWTAlgorithm.ES256,
    expiresIn: expiresIn,
  );
  return token;
}