UNPKG

@ribajs/router

Version:

Routing extension for Riba.js inspired by Barba.js

35 lines 2.72 kB
import { deferred } from "@ribajs/utils"; export class BaseTransition { oldContainer; newContainer; newContainerLoading; deferred = deferred(); action; constructor(action = "replace") { this.action = action; } async init(oldContainer, newContainer) { this.oldContainer = oldContainer; this.deferred = deferred(); const newContainerLoading = deferred(); this.newContainerLoading = newContainerLoading.promise; this.start(); this.newContainer = await newContainer; newContainerLoading.resolve(this.newContainer); return this.deferred.promise; } async done() { if (!this.oldContainer) { throw new Error("Can't remove old container"); } if (this.action === "replace") { this.oldContainer.remove(); } if (!this.newContainer) { throw new Error("Can't show new container"); } this.newContainer.style.visibility = "visible"; return this.deferred.resolve(undefined); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZVRyYW5zaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvVHJhbnNpdGlvbi9CYXNlVHJhbnNpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTXpDLE1BQU0sT0FBZ0IsY0FBYztJQUN4QixZQUFZLENBQWU7SUFFM0IsWUFBWSxDQUFlO0lBRTNCLG1CQUFtQixDQUF3QjtJQUUzQyxRQUFRLEdBQUcsUUFBUSxFQUFFLENBQUM7SUFFdEIsTUFBTSxDQUF1QjtJQUV2QyxZQUFZLFNBQStCLFNBQVM7UUFDbEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQU9NLEtBQUssQ0FBQyxJQUFJLENBQ2YsWUFBeUIsRUFDekIsWUFBa0M7UUFFbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFFakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLEVBQUUsQ0FBQztRQUMzQixNQUFNLG1CQUFtQixHQUFHLFFBQVEsRUFBZSxDQUFDO1FBQ3BELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxtQkFBbUIsQ0FBQyxPQUFPLENBQUM7UUFFdkQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWIsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLFlBQVksQ0FBQztRQUN2QyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQy9DLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7SUFDL0IsQ0FBQztJQUtNLEtBQUssQ0FBQyxJQUFJO1FBQ2YsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDaEQsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdCLENBQUM7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztRQUMvQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FNRiJ9