43 lines
631 B
JavaScript
43 lines
631 B
JavaScript
import { ValueRequirement } from "./ValueRequirement.js";
|
|
import { Field } from "../Field.js";
|
|
|
|
export class Term extends Field {
|
|
separator = null;
|
|
isRequired = false;
|
|
position = null;
|
|
allowMultiple = false;
|
|
valueRequirement = ValueRequirement.REQUIRED;
|
|
|
|
constructor(key) {
|
|
super(key)
|
|
}
|
|
|
|
// Virtual methods
|
|
|
|
getInputQualifier() {
|
|
return "";
|
|
}
|
|
|
|
// Builder methods
|
|
|
|
required() {
|
|
this.isRequired = true;
|
|
return this;
|
|
}
|
|
|
|
pos(i) {
|
|
this.position = i;
|
|
return this;
|
|
}
|
|
|
|
multiple() {
|
|
this.allowMultiple = true;
|
|
return this;
|
|
}
|
|
|
|
value(requirement) {
|
|
this.valueRequirement = requirement;
|
|
return this;
|
|
}
|
|
}
|