descargar pdf y fotos
This commit is contained in:
+43
@@ -0,0 +1,43 @@
|
||||
class Optional {
|
||||
constructor(type, condition = true) {
|
||||
this.type = type;
|
||||
this.condition = condition;
|
||||
}
|
||||
|
||||
decode(stream, parent) {
|
||||
let { condition } = this;
|
||||
if (typeof condition === 'function') {
|
||||
condition = condition.call(parent, parent);
|
||||
}
|
||||
|
||||
if (condition) {
|
||||
return this.type.decode(stream, parent);
|
||||
}
|
||||
}
|
||||
|
||||
size(val, parent) {
|
||||
let { condition } = this;
|
||||
if (typeof condition === 'function') {
|
||||
condition = condition.call(parent, parent);
|
||||
}
|
||||
|
||||
if (condition) {
|
||||
return this.type.size(val, parent);
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
encode(stream, val, parent) {
|
||||
let { condition } = this;
|
||||
if (typeof condition === 'function') {
|
||||
condition = condition.call(parent, parent);
|
||||
}
|
||||
|
||||
if (condition) {
|
||||
return this.type.encode(stream, val, parent);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = Optional;
|
||||
Reference in New Issue
Block a user