mirror of
https://github.com/ohwgiles/laminar.git
synced 2025-06-13 12:54:29 +00:00
shorter filesize format function
This commit is contained in:
parent
66a5ec1f47
commit
64313c7949
@ -222,7 +222,7 @@
|
|||||||
<div class="panel-heading">Artifacts</div>
|
<div class="panel-heading">Artifacts</div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
<ul class="list-unstyled" style="margin-bottom: 0">
|
<ul class="list-unstyled" style="margin-bottom: 0">
|
||||||
<li v-for="art in job.artifacts"><a :href="art.url" target="_self">{{art.filename}}</a> [{{ art.size | prettyBytes }}]</li>
|
<li v-for="art in job.artifacts"><a :href="art.url" target="_self">{{art.filename}}</a> [{{ art.size | iecFileSize }}]</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -3,35 +3,12 @@
|
|||||||
* https://laminar.ohwg.net
|
* https://laminar.ohwg.net
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// usage: {{ file.size | prettyBytes }}
|
Vue.filter('iecFileSize', function(bytes) {
|
||||||
// source: https://gist.github.com/james2doyle/4aba55c22f084800c199
|
var exp = Math.floor(Math.log(bytes) / Math.log(1024));
|
||||||
Vue.filter('prettyBytes', function (num) {
|
return (bytes / Math.pow(1024, exp)).toFixed(1) + ' ' +
|
||||||
// jacked from: https://github.com/sindresorhus/pretty-bytes
|
['B', 'KiB', 'MiB', 'GiB', 'TiB'][exp];
|
||||||
if (typeof num !== 'number' || isNaN(num)) {
|
|
||||||
throw new TypeError('Expected a number');
|
|
||||||
}
|
|
||||||
|
|
||||||
var exponent;
|
|
||||||
var unit;
|
|
||||||
var neg = num < 0;
|
|
||||||
var units = ['B', 'kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
|
|
||||||
|
|
||||||
if (neg) {
|
|
||||||
num = -num;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (num < 1) {
|
|
||||||
return (neg ? '-' : '') + num + ' B';
|
|
||||||
}
|
|
||||||
|
|
||||||
exponent = Math.min(Math.floor(Math.log(num) / Math.log(1000)), units.length - 1);
|
|
||||||
num = (num / Math.pow(1000, exponent)).toFixed(2) * 1;
|
|
||||||
unit = units[exponent];
|
|
||||||
|
|
||||||
return (neg ? '-' : '') + num + ' ' + unit;
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
const wsp = function(path) {
|
const wsp = function(path) {
|
||||||
return new WebSocket((location.protocol === 'https:'?'wss://':'ws://')
|
return new WebSocket((location.protocol === 'https:'?'wss://':'ws://')
|
||||||
+ location.host + path);
|
+ location.host + path);
|
||||||
|
Loading…
Reference in New Issue
Block a user