UNPKG

@stormzx/sqlbuilder

Version:

A simple sql builder.

46 lines (35 loc) 887 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _fragment = _interopRequireDefault(require("./fragment")); var _lodash = _interopRequireDefault(require("lodash")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } class OrderFragment extends _fragment.default { #orders = []; get priority() { return 700; } orderBy(columns, operator) { columns = _lodash.default.flattenDeep([columns]); columns.forEach(column => { this.#orders.push({ column, operator }); }); } get sql() { if (this.#orders.length == 0) { return ''; } return `order by ` + this.#orders.map(({ column, operator }) => { return `${column} ${operator}`; }).join(', '); } } exports.default = OrderFragment;