nestjs-paginate
Version:
Pagination and filtering helper method for TypeORM repositories or query builders using Nest.js framework.
105 lines • 4.53 kB
JavaScript
;
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.CatEntity = exports.CutenessLevel = void 0;
const typeorm_1 = require("typeorm");
const cat_home_entity_1 = require("./cat-home.entity");
const cat_toy_entity_1 = require("./cat-toy.entity");
const column_option_1 = require("./column-option");
const size_embed_1 = require("./size.embed");
var CutenessLevel;
(function (CutenessLevel) {
CutenessLevel["LOW"] = "low";
CutenessLevel["MEDIUM"] = "medium";
CutenessLevel["HIGH"] = "high";
})(CutenessLevel || (exports.CutenessLevel = CutenessLevel = {}));
let CatEntity = class CatEntity {
afterLoad() {
var _a;
if (this.home && !((_a = this.home) === null || _a === void 0 ? void 0 : _a.id)) {
this.home = null;
}
if (this.weightChange) {
this.weightChange = Number(this.weightChange); // convert value returned as character to number
}
}
};
exports.CatEntity = CatEntity;
__decorate([
(0, typeorm_1.PrimaryGeneratedColumn)(),
__metadata("design:type", Number)
], CatEntity.prototype, "id", void 0);
__decorate([
(0, typeorm_1.Column)(),
__metadata("design:type", String)
], CatEntity.prototype, "name", void 0);
__decorate([
(0, typeorm_1.Column)(),
__metadata("design:type", String)
], CatEntity.prototype, "color", void 0);
__decorate([
(0, typeorm_1.Column)({ nullable: true }),
__metadata("design:type", Number)
], CatEntity.prototype, "age", void 0);
__decorate([
(0, typeorm_1.Column)({ type: 'text' }) // We don't use enum type as it makes it easier when testing across different db drivers.
,
__metadata("design:type", String)
], CatEntity.prototype, "cutenessLevel", void 0);
__decorate([
(0, typeorm_1.Column)(column_option_1.DateColumnNullable),
__metadata("design:type", Date)
], CatEntity.prototype, "lastVetVisit", void 0);
__decorate([
(0, typeorm_1.Column)(() => size_embed_1.SizeEmbed),
__metadata("design:type", size_embed_1.SizeEmbed)
], CatEntity.prototype, "size", void 0);
__decorate([
(0, typeorm_1.OneToMany)(() => cat_toy_entity_1.CatToyEntity, (catToy) => catToy.cat, {
eager: true,
}),
__metadata("design:type", Array)
], CatEntity.prototype, "toys", void 0);
__decorate([
(0, typeorm_1.OneToOne)(() => cat_home_entity_1.CatHomeEntity, (catHome) => catHome.cat, { nullable: true }),
(0, typeorm_1.JoinColumn)(),
__metadata("design:type", cat_home_entity_1.CatHomeEntity)
], CatEntity.prototype, "home", void 0);
__decorate([
(0, typeorm_1.CreateDateColumn)(column_option_1.DateColumnNotNull),
__metadata("design:type", String)
], CatEntity.prototype, "createdAt", void 0);
__decorate([
(0, typeorm_1.DeleteDateColumn)(column_option_1.DateColumnNullable),
__metadata("design:type", String)
], CatEntity.prototype, "deletedAt", void 0);
__decorate([
(0, typeorm_1.ManyToMany)(() => CatEntity),
(0, typeorm_1.JoinTable)(),
__metadata("design:type", Array)
], CatEntity.prototype, "friends", void 0);
__decorate([
(0, typeorm_1.Column)({ type: 'decimal', precision: 5, scale: 2, nullable: true }),
__metadata("design:type", Number)
], CatEntity.prototype, "weightChange", void 0);
__decorate([
(0, typeorm_1.AfterLoad)()
// Fix due to typeorm bug that doesn't set entity to null
// when the reletated entity have only the virtual column property with a value different from null
,
__metadata("design:type", Function),
__metadata("design:paramtypes", []),
__metadata("design:returntype", void 0)
], CatEntity.prototype, "afterLoad", null);
exports.CatEntity = CatEntity = __decorate([
(0, typeorm_1.Entity)({ name: 'cat' })
], CatEntity);
//# sourceMappingURL=cat.entity.js.map