UNPKG

@configurator/ravendb

Version:
49 lines 1.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SuggestToken = void 0; const QueryToken_1 = require("./QueryToken"); const Exceptions_1 = require("../../../Exceptions"); const StringUtil_1 = require("../../../Utility/StringUtil"); const QueryFieldUtil_1 = require("../../Queries/QueryFieldUtil"); class SuggestToken extends QueryToken_1.QueryToken { constructor(fieldName, alias, termParameterName, optionsParameterName) { super(); if (!fieldName) { (0, Exceptions_1.throwError)("InvalidArgumentException", "fieldName cannot be null"); } if (!termParameterName) { (0, Exceptions_1.throwError)("InvalidArgumentException", "termParameterName cannot be null"); } this._fieldName = fieldName; this._alias = alias; this._termParameterName = termParameterName; this._optionsParameterName = optionsParameterName; } static create(fieldName, alias, termParameterName, optionsParameterName) { return new SuggestToken(fieldName, QueryFieldUtil_1.QueryFieldUtil.escapeIfNecessary(alias), termParameterName, optionsParameterName); } get fieldName() { return this._fieldName; } writeTo(writer) { writer .append("suggest(") .append(this._fieldName) .append(", $") .append(this._termParameterName); if (this._optionsParameterName) { writer .append(", $") .append(this._optionsParameterName); } writer.append(")"); if (StringUtil_1.StringUtil.isNullOrWhitespace(this._alias) || this.fieldName === this._alias) { return; } writer .append(" as ") .append(this._alias); } } exports.SuggestToken = SuggestToken; //# sourceMappingURL=SuggestToken.js.map