UNPKG

nehan

Version:

Html layout engine for paged-media written in Typescript

66 lines 1.58 kB
export class DomTokenList { constructor(items) { this.tokens = items || []; } get length() { return this.tokens.length; } item(index) { return this.tokens[index]; } contains(token) { return this.tokens.some((t) => { return t === token; }); } add(token) { this.tokens.push(token); } remove(token) { return this.tokens = this.tokens.filter((t) => { return t !== token; }); } replace(old_token, new_token) { return this.tokens = this.tokens.map((t) => { return (t === old_token) ? new_token : t; }); } supports(token) { throw new Error("Sorry, not implemented yet"); } toggle(token, force) { let contains = this.contains(token); if (force === true) { if (contains === false) { this.add(token); } return true; } if (force === false) { if (contains === true) { this.remove(token); } return false; } if (contains === true) { this.remove(token); return false; } this.add(token); return true; } entries() { return this.tokens; } keys() { return Object.keys(this.tokens); } values() { return this.tokens; } forEach(callback) { Array.prototype.forEach.call(this.tokens, callback); } } //# sourceMappingURL=dom-token-list.js.map