diff options
Diffstat (limited to 'src/js/NextSearch/Field/AbstractSearchField.js')
-rw-r--r-- | src/js/NextSearch/Field/AbstractSearchField.js | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/js/NextSearch/Field/AbstractSearchField.js b/src/js/NextSearch/Field/AbstractSearchField.js new file mode 100644 index 0000000..4f1e0d2 --- /dev/null +++ b/src/js/NextSearch/Field/AbstractSearchField.js @@ -0,0 +1,41 @@ +export default class AbstractSearchField { + + /** + * @return {String} + * @constructor + */ + get TYPE() { + return 'abstract'; + } + + /** + * + * @param {String} field + * @param {*} value + */ + constructor(field, value) { + this._name = field; + this._value = value; + } + + /** + * + * @param {AbstractModel} item + * @return {({checks: number, passed: boolean, matches: number}|{passed: false})} + */ + evaluate(item) { + return {matches: 0, checks: 0, passed: false}; + } + + /** + * @return {{field: String, type: String, value: *, operator: String}} + */ + export() { + return { + type : 'field', + operator: this.TYPE, + value : this._value, + field : this._name + }; + } +}
\ No newline at end of file |