namespace BookStack\Api;
+use BookStack\App\AppVersion;
use BookStack\Http\ApiController;
use Exception;
use Illuminate\Contracts\Container\BindingResolutionException;
*/
public static function generateConsideringCache(): Collection
{
- $appVersion = trim(file_get_contents(base_path('version')));
+ $appVersion = AppVersion::get();
$cacheKey = 'api-docs::' . $appVersion;
- if (Cache::has($cacheKey) && config('app.env') === 'production') {
- $docs = Cache::get($cacheKey);
- } else {
- $docs = (new ApiDocsGenerator())->generate();
- Cache::put($cacheKey, $docs, 60 * 24);
+ $isProduction = config('app.env') === 'production';
+ $cacheVal = $isProduction ? Cache::get($cacheKey) : null;
+
+ if (!is_null($cacheVal)) {
+ return $cacheVal;
}
+ $docs = (new ApiDocsGenerator())->generate();
+ Cache::put($cacheKey, $docs, 60 * 24);
+
return $docs;
}