Implemented custom asset versioning to make creating releases easier

This commit is contained in:
Dan Brown
2015-12-16 17:09:44 +00:00
parent f4b342a575
commit 2a4ff6fb6a
5 changed files with 57 additions and 6 deletions

30
app/helpers.php Normal file
View File

@ -0,0 +1,30 @@
<?php
if (! function_exists('versioned_asset')) {
/**
* Get the path to a versioned file.
*
* @param string $file
* @return string
*
* @throws \InvalidArgumentException
*/
function versioned_asset($file)
{
static $manifest = null;
if (is_null($manifest)) {
$manifest = json_decode(file_get_contents(public_path('build/manifest.json')), true);
}
if (isset($manifest[$file])) {
return '/' . $manifest[$file];
}
if (file_exists(public_path($file))) {
return '/' . $file;
}
throw new InvalidArgumentException("File {$file} not defined in asset manifest.");
}
}