#26 - Loading animation + success message fix
This commit was merged in pull request #31.
This commit is contained in:
@@ -53,6 +53,24 @@ class RsvTimeline extends HTMLElement {
|
||||
}
|
||||
}
|
||||
|
||||
_skeleton() {
|
||||
const frag = document.createDocumentFragment();
|
||||
const label = document.createElement('div');
|
||||
label.className = 'rsv-slots-label rsv-slots-skeleton rsv-slots-skeleton-label';
|
||||
frag.appendChild(label);
|
||||
for (let i = 0; i < 4; i++) {
|
||||
const row = document.createElement('div');
|
||||
row.className = 'rsv-slots-slot rsv-slots-skeleton';
|
||||
const time = document.createElement('span');
|
||||
time.className = 'rsv-slots-slot-time rsv-slots-skeleton rsv-slots-skeleton-text';
|
||||
const badge = document.createElement('span');
|
||||
badge.className = 'rsv-slots-slot-badge rsv-slots-skeleton rsv-slots-skeleton-badge';
|
||||
row.append(time, badge);
|
||||
frag.appendChild(row);
|
||||
}
|
||||
return frag;
|
||||
}
|
||||
|
||||
async _render() {
|
||||
// Version guard: discard renders that were superseded by a newer call.
|
||||
const v = ++this._version;
|
||||
@@ -63,6 +81,8 @@ class RsvTimeline extends HTMLElement {
|
||||
return;
|
||||
}
|
||||
|
||||
this.replaceChildren(this._skeleton());
|
||||
|
||||
try {
|
||||
const occupancy = await RsvTimetableService.get_availability_for_date(this.timetableId, this.date);
|
||||
if (v !== this._version) return;
|
||||
|
||||
Reference in New Issue
Block a user