chore: Update deployment index.blade.php script for better performance

This commit is contained in:
Andras Bacsai 2024-05-29 11:13:22 +02:00
parent a8c3a2d991
commit e26f4ce707

View File

@ -105,48 +105,43 @@
@endforelse @endforelse
@if ($deployments_count > 0) @if ($deployments_count > 0)
@assets <script src="https://cdn.jsdelivr.net/npm/dayjs@1/dayjs.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/dayjs@1/dayjs.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/dayjs@1/plugin/utc.js"></script>
<script src="https://cdn.jsdelivr.net/npm/dayjs@1/plugin/utc.js"></script> <script src="https://cdn.jsdelivr.net/npm/dayjs@1/plugin/relativeTime.js"></script>
<script src="https://cdn.jsdelivr.net/npm/dayjs@1/plugin/relativeTime.js"></script> <script>
@endassets function goto(url) {
@script window.location.href = url;
<script> };
function goto(url) { let timers = {};
window.location.href = url;
};
let timers = {};
dayjs.extend(window.dayjs_plugin_utc); dayjs.extend(window.dayjs_plugin_utc);
dayjs.extend(window.dayjs_plugin_relativeTime); dayjs.extend(window.dayjs_plugin_relativeTime);
Alpine.data('elapsedTime', (uuid, status, created_at, updated_at) => ({ Alpine.data('elapsedTime', (uuid, status, created_at, updated_at) => ({
finished_time: 'calculating...', finished_time: 'calculating...',
started_time: 'calculating...', started_time: 'calculating...',
init() { init() {
if (timers[uuid]) { if (timers[uuid]) {
clearInterval(timers[uuid]); clearInterval(timers[uuid]);
}
if (status === 'in_progress') {
timers[uuid] = setInterval(() => {
this.finished_time = dayjs().diff(dayjs.utc(created_at),
'second') + 's'
}, 1000);
} else {
let seconds = dayjs.utc(updated_at).diff(dayjs.utc(created_at), 'second')
this.finished_time = seconds + 's';
}
},
measure_finished_time() {
return this.finished_time;
},
measure_since_started() {
return dayjs.utc(created_at).fromNow();
} }
})) if (status === 'in_progress') {
</script> timers[uuid] = setInterval(() => {
@endscript this.finished_time = dayjs().diff(dayjs.utc(created_at),
'second') + 's'
}, 1000);
} else {
let seconds = dayjs.utc(updated_at).diff(dayjs.utc(created_at), 'second')
this.finished_time = seconds + 's';
}
},
measure_finished_time() {
return this.finished_time;
},
measure_since_started() {
return dayjs.utc(created_at).fromNow();
}
}))
</script>
@endif @endif
</div> </div>
</div> </div>