image-in-browser
Version:
Package for encoding / decoding images, transforming images, applying filters, drawing primitives on images on the client side (no need for server Node.js)
54 lines • 1.38 kB
JavaScript
import { IfdDirectory } from './ifd-directory.js';
export class IfdContainer {
get keys() {
return this.directories.keys();
}
get values() {
return this.directories.values();
}
get entries() {
return this.directories.entries();
}
get size() {
return this.directories.size;
}
get isEmpty() {
if (this.directories.size === 0) {
return true;
}
for (const ifd of this.directories.values()) {
if (!ifd.isEmpty) {
return false;
}
}
return true;
}
constructor(directories) {
this.directories = directories !== null && directories !== void 0 ? directories : new Map();
}
static from(other) {
const dirs = new Map(other.directories);
return new IfdContainer(dirs);
}
has(key) {
return this.directories.has(key);
}
get(ifdName) {
let ifd = this.directories.get(ifdName);
if (ifd === undefined) {
ifd = new IfdDirectory();
this.directories.set(ifdName, ifd);
return ifd;
}
else {
return ifd;
}
}
set(ifdName, value) {
this.directories.set(ifdName, value);
}
clear() {
this.directories.clear();
}
}
//# sourceMappingURL=ifd-container.js.map