1<?php
2
3// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the GNU Affero General Public License v3.0.
4// See the LICENCE file in the repository root for full licence text.
5
6declare(strict_types=1);
7
8namespace App\Providers;
9
10use App\Libraries\OAuth\RefreshTokenGrant;
11use Laravel\Passport\Bridge\RefreshTokenRepository;
12use Laravel\Passport\Passport;
13use Laravel\Passport\PassportServiceProvider as BasePassportServiceProvider;
14
15class PassportServiceProvider extends BasePassportServiceProvider
16{
17 /**
18 * Overrides RefreshTokenGrant to copy verified attribute of the token
19 */
20 protected function makeRefreshTokenGrant()
21 {
22 $repository = $this->app->make(RefreshTokenRepository::class);
23
24 $grant = new RefreshTokenGrant($repository);
25 $grant->setRefreshTokenTTL(Passport::refreshTokensExpireIn());
26
27 return $grant;
28 }
29}