@ribajs/core
Version:
Core module of Riba.js
21 lines • 1.8 kB
JavaScript
import { ModuleElementService } from "./module-element.service.js";
import { Observer } from "../observer.js";
export class AdapterService extends ModuleElementService {
type = "adapter";
constructor(adapters) {
super(adapters);
}
register(adapter, fallbackName, forceFallback = false) {
const name = forceFallback
? fallbackName || adapter.name
: adapter.name || fallbackName;
if (!name) {
throw new Error("Adapter name not found!");
}
this.elements[name] = adapter;
const options = { adapters: this.elements };
Observer.updateOptions(options);
return this.elements;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2FkYXB0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFMUMsTUFBTSxPQUFPLGNBQ1gsU0FBUSxvQkFBb0I7SUFHbEIsSUFBSSxHQUFzQixTQUFTLENBQUM7SUFLOUMsWUFBWSxRQUFrQjtRQUM1QixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUtNLFFBQVEsQ0FDYixPQUFnQixFQUNoQixZQUFxQixFQUNyQixhQUFhLEdBQUcsS0FBSztRQUVyQixNQUFNLElBQUksR0FBRyxhQUFhO1lBQ3hCLENBQUMsQ0FBQyxZQUFZLElBQUksT0FBTyxDQUFDLElBQUk7WUFDOUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNWLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUM7UUFDOUIsTUFBTSxPQUFPLEdBQUcsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQTJCLEVBQUUsQ0FBQztRQUMvRCxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0NBQ0YifQ==