UNPKG

6.5 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../../src/find-options/FindOperator.ts"],"names":[],"mappings":"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","file":"FindOperator.js","sourcesContent":["import {FindOperatorType} from \"./FindOperatorType\";\nimport {Connection} from \"../\";\n\n/**\n * Find Operator used in Find Conditions.\n */\nexport class FindOperator<T> {\n\n // -------------------------------------------------------------------------\n // Private Properties\n // -------------------------------------------------------------------------\n\n /**\n * Operator type.\n */\n private _type: FindOperatorType;\n\n /**\n * Parameter value.\n */\n private _value: T|FindOperator<T>;\n\n /**\n * Indicates if parameter is used or not for this operator.\n */\n private _useParameter: boolean;\n\n /**\n * Indicates if multiple parameters must be used for this operator.\n */\n private _multipleParameters: boolean;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(type: FindOperatorType, value: T|FindOperator<T>, useParameter: boolean = true, multipleParameters: boolean = false) {\n this._type = type;\n this._value = value;\n this._useParameter = useParameter;\n this._multipleParameters = multipleParameters;\n }\n\n // -------------------------------------------------------------------------\n // Accessors\n // -------------------------------------------------------------------------\n\n /**\n * Indicates if parameter is used or not for this operator.\n * Extracts final value if value is another find operator.\n */\n get useParameter(): boolean {\n if (this._value instanceof FindOperator)\n return this._value.useParameter;\n\n return this._useParameter;\n }\n\n /**\n * Indicates if multiple parameters must be used for this operator.\n * Extracts final value if value is another find operator.\n */\n get multipleParameters(): boolean {\n if (this._value instanceof FindOperator)\n return this._value.multipleParameters;\n\n return this._multipleParameters;\n }\n\n /**\n * Gets the final value needs to be used as parameter value.\n */\n get value(): T {\n if (this._value instanceof FindOperator)\n return this._value.value;\n\n return this._value;\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Gets SQL needs to be inserted into final query.\n */\n toSql(connection: Connection, aliasPath: string, parameters: string[]): string {\n switch (this._type) {\n case \"not\":\n if (this._value instanceof FindOperator) {\n return `NOT(${this._value.toSql(connection, aliasPath, parameters)})`;\n } else {\n return `${aliasPath} != ${parameters[0]}`;\n }\n case \"lessThan\":\n return `${aliasPath} < ${parameters[0]}`;\n case \"lessThanOrEqual\":\n return `${aliasPath} <= ${parameters[0]}`;\n case \"moreThan\":\n return `${aliasPath} > ${parameters[0]}`;\n case \"moreThanOrEqual\":\n return `${aliasPath} >= ${parameters[0]}`;\n case \"equal\":\n return `${aliasPath} = ${parameters[0]}`;\n case \"like\":\n return `${aliasPath} LIKE ${parameters[0]}`;\n case \"between\":\n return `${aliasPath} BETWEEN ${parameters[0]} AND ${parameters[1]}`;\n case \"in\":\n return `${aliasPath} IN (${parameters.join(\", \")})`;\n case \"any\":\n return `${aliasPath} = ANY(${parameters[0]})`;\n case \"isNull\":\n return `${aliasPath} IS NULL`;\n case \"raw\":\n if (this.value instanceof Function) {\n return this.value(aliasPath);\n } else {\n return `${aliasPath} = ${this.value}`;\n }\n }\n\n return \"\";\n }\n\n}"],"sourceRoot":".."}
\No newline at end of file