UNPKG

@ribajs/router

Version:

Routing extension for Riba.js inspired by Barba.js

29 lines 2.16 kB
import { HideShowTransition } from "./Transition/HideShowTransition.js"; export class RouterService { static _options; static instance; static get options() { return this._options; } constructor() { } static getSingleton() { if (this.instance) { return this.instance; } throw new Error(`Singleton of RouterService not defined, please call setSingleton first!`); } static setSingleton(options = {}) { if (this.instance) { console.warn(`Singleton of RouterService already defined!`); return this.instance; } options.defaultTransition = options.defaultTransition ?? new HideShowTransition(); options.scrollToAnchorOffset = options.scrollToAnchorOffset ?? 0; this._options = options; this.instance = new this(); return this.instance; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvcm91dGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFeEUsTUFBTSxPQUFPLGFBQWE7SUFDZCxNQUFNLENBQUMsUUFBUSxDQUFzQjtJQUN4QyxNQUFNLENBQUMsUUFBUSxDQUFpQjtJQUVoQyxNQUFNLEtBQUssT0FBTztRQUN2QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVEO0lBRUEsQ0FBQztJQUVNLE1BQU0sQ0FBQyxZQUFZO1FBQ3hCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2xCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN2QixDQUFDO1FBRUQsTUFBTSxJQUFJLEtBQUssQ0FDYix5RUFBeUUsQ0FDMUUsQ0FBQztJQUNKLENBQUM7SUFFTSxNQUFNLENBQUMsWUFBWSxDQUFDLFVBQXdDLEVBQUU7UUFDbkUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsT0FBTyxDQUFDLElBQUksQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1lBQzVELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN2QixDQUFDO1FBQ0QsT0FBTyxDQUFDLGlCQUFpQjtZQUN2QixPQUFPLENBQUMsaUJBQWlCLElBQUksSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQ3hELE9BQU8sQ0FBQyxvQkFBb0IsR0FBRyxPQUFPLENBQUMsb0JBQW9CLElBQUksQ0FBQyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBOEIsQ0FBQztRQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7Q0FDRiJ9