@lomray/microservice-users
Version:
Users microservice based on NodeJS & inverted json.
75 lines (71 loc) • 2.67 kB
JavaScript
;
var tslib = require('tslib');
var microserviceHelpers = require('@lomray/microservice-helpers');
var classValidator = require('class-validator');
var classValidatorJsonschema = require('class-validator-jsonschema');
var typeorm = require('typeorm');
var idProvider = require('../constants/id-provider.js');
let IdentityProvider = class IdentityProvider {
};
tslib.__decorate([
typeorm.PrimaryColumn(),
classValidator.Allow(),
tslib.__metadata("design:type", String)
], IdentityProvider.prototype, "userId", void 0);
tslib.__decorate([
typeorm.Column({
type: 'enum',
enum: idProvider,
}),
classValidator.IsEnum(idProvider),
tslib.__metadata("design:type", String)
], IdentityProvider.prototype, "provider", void 0);
tslib.__decorate([
typeorm.Column({ type: 'varchar', length: 70 }),
classValidator.Length(5, 70),
tslib.__metadata("design:type", String)
], IdentityProvider.prototype, "identifier", void 0);
tslib.__decorate([
classValidatorJsonschema.JSONSchema({
description: 'Concrete provider in case with firebase: google, apple, etc...',
}),
typeorm.Column({ type: 'varchar', length: 20, default: null }),
classValidator.Length(1, 20),
microserviceHelpers.IsUndefinable(),
microserviceHelpers.IsNullable(),
tslib.__metadata("design:type", Object)
], IdentityProvider.prototype, "type", void 0);
tslib.__decorate([
typeorm.Column({ type: 'json', default: {} }),
classValidator.IsObject(),
microserviceHelpers.IsUndefinable(),
tslib.__metadata("design:type", Object)
], IdentityProvider.prototype, "params", void 0);
tslib.__decorate([
microserviceHelpers.IsTypeormDate(),
typeorm.CreateDateColumn(),
tslib.__metadata("design:type", Date)
], IdentityProvider.prototype, "createdAt", void 0);
tslib.__decorate([
microserviceHelpers.IsTypeormDate(),
typeorm.UpdateDateColumn(),
tslib.__metadata("design:type", Date)
], IdentityProvider.prototype, "updatedAt", void 0);
tslib.__decorate([
microserviceHelpers.IsTypeormDate(),
typeorm.DeleteDateColumn(),
tslib.__metadata("design:type", Date)
], IdentityProvider.prototype, "deletedAt", void 0);
tslib.__decorate([
typeorm.ManyToOne('User', 'identityProviders'),
typeorm.JoinColumn(),
tslib.__metadata("design:type", Function)
], IdentityProvider.prototype, "user", void 0);
IdentityProvider = tslib.__decorate([
classValidatorJsonschema.JSONSchema({
properties: { user: { $ref: '#/definitions/User' } },
}),
typeorm.Entity()
], IdentityProvider);
var IdentityProvider$1 = IdentityProvider;
module.exports = IdentityProvider$1;