sb-element
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 12.0.1. It is a component library constructed around the SCSS library [Sb-Theming](https://github.com/SeverinBuchser/SbTheming) and supports [Angular Schematics]
41 lines • 4.29 kB
JavaScript
export class ListItem {
constructor(value) {
this.value = value;
}
insertNext(nextOrValue) {
let item = ListItem.toItem(nextOrValue);
item.previous = this;
if (this.next) {
item.next = this.next;
this.next.previous = item;
}
this.next = item;
return item;
}
insertPrevious(previousOrValue) {
let item = ListItem.toItem(previousOrValue);
item.next = this;
if (this.previous) {
item.previous = this.previous;
this.previous.next = item;
}
this.previous = item;
return item;
}
static toItem(itemOrValue) {
let item;
if (itemOrValue instanceof ListItem) {
item = itemOrValue;
}
else {
item = new ListItem(itemOrValue);
}
return item;
}
}
export class NullListItem extends ListItem {
constructor() {
super(null);
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc2ItZWxlbWVudC9zcmMvbGliL21vZGVscy9saW5rZWQtbGlzdC9saXN0LWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFFBQVE7SUFJbkIsWUFBbUIsS0FBUTtRQUFSLFVBQUssR0FBTCxLQUFLLENBQUc7SUFBRyxDQUFDO0lBSXhCLFVBQVUsQ0FBQyxXQUE0QjtRQUM1QyxJQUFJLElBQUksR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNiLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7U0FDM0I7UUFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFJTSxjQUFjLENBQUMsZUFBZ0M7UUFDcEQsSUFBSSxJQUFJLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztTQUMzQjtRQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLE1BQU0sQ0FBQyxNQUFNLENBQUksV0FBNEI7UUFDbkQsSUFBSSxJQUFpQixDQUFDO1FBQ3RCLElBQUksV0FBVyxZQUFZLFFBQVEsRUFBRTtZQUNuQyxJQUFJLEdBQUcsV0FBVyxDQUFDO1NBQ3BCO2FBQU07WUFDTCxJQUFJLEdBQUcsSUFBSSxRQUFRLENBQUksV0FBVyxDQUFDLENBQUM7U0FDckM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxZQUFhLFNBQVEsUUFBYTtJQUM3QztRQUNFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBMaXN0SXRlbTxUPiB7XG4gIHB1YmxpYyBuZXh0PzogTGlzdEl0ZW08VD47XG4gIHB1YmxpYyBwcmV2aW91cz86IExpc3RJdGVtPFQ+O1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB2YWx1ZTogVCkge31cblxuICBwdWJsaWMgaW5zZXJ0TmV4dChuZXh0OiBMaXN0SXRlbTxUPik6IExpc3RJdGVtPFQ+O1xuICBwdWJsaWMgaW5zZXJ0TmV4dCh2YWx1ZTogVCk6IExpc3RJdGVtPFQ+O1xuICBwdWJsaWMgaW5zZXJ0TmV4dChuZXh0T3JWYWx1ZTogTGlzdEl0ZW08VD4gfCBUKTogTGlzdEl0ZW08VD4ge1xuICAgIGxldCBpdGVtID0gTGlzdEl0ZW0udG9JdGVtKG5leHRPclZhbHVlKTtcbiAgICBpdGVtLnByZXZpb3VzID0gdGhpcztcbiAgICBpZiAodGhpcy5uZXh0KSB7XG4gICAgICBpdGVtLm5leHQgPSB0aGlzLm5leHQ7XG4gICAgICB0aGlzLm5leHQucHJldmlvdXMgPSBpdGVtO1xuICAgIH1cbiAgICB0aGlzLm5leHQgPSBpdGVtO1xuICAgIHJldHVybiBpdGVtO1xuICB9XG5cbiAgcHVibGljIGluc2VydFByZXZpb3VzKHByZXZpb3VzOiBMaXN0SXRlbTxUPik6IExpc3RJdGVtPFQ+O1xuICBwdWJsaWMgaW5zZXJ0UHJldmlvdXModmFsdWU6IFQpOiBMaXN0SXRlbTxUPjtcbiAgcHVibGljIGluc2VydFByZXZpb3VzKHByZXZpb3VzT3JWYWx1ZTogTGlzdEl0ZW08VD4gfCBUKTogTGlzdEl0ZW08VD4ge1xuICAgIGxldCBpdGVtID0gTGlzdEl0ZW0udG9JdGVtKHByZXZpb3VzT3JWYWx1ZSk7XG4gICAgaXRlbS5uZXh0ID0gdGhpcztcbiAgICBpZiAodGhpcy5wcmV2aW91cykge1xuICAgICAgaXRlbS5wcmV2aW91cyA9IHRoaXMucHJldmlvdXM7XG4gICAgICB0aGlzLnByZXZpb3VzLm5leHQgPSBpdGVtO1xuICAgIH1cbiAgICB0aGlzLnByZXZpb3VzID0gaXRlbTtcbiAgICByZXR1cm4gaXRlbTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHRvSXRlbTxUPihpdGVtT3JWYWx1ZTogTGlzdEl0ZW08VD4gfCBUKTogTGlzdEl0ZW08VD4ge1xuICAgIGxldCBpdGVtOiBMaXN0SXRlbTxUPjtcbiAgICBpZiAoaXRlbU9yVmFsdWUgaW5zdGFuY2VvZiBMaXN0SXRlbSkge1xuICAgICAgaXRlbSA9IGl0ZW1PclZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICBpdGVtID0gbmV3IExpc3RJdGVtPFQ+KGl0ZW1PclZhbHVlKTtcbiAgICB9XG4gICAgcmV0dXJuIGl0ZW07XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE51bGxMaXN0SXRlbSBleHRlbmRzIExpc3RJdGVtPGFueT4ge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcihudWxsKTtcbiAgfVxufVxuIl19