UNPKG

@lomray/microservice-payment-stripe

Version:

Stripe payment microservice based on NodeJS & inverted json.

71 lines (67 loc) 2.5 kB
'use strict'; var tslib = require('tslib'); var microserviceHelpers = require('@lomray/microservice-helpers'); var classTransformer = require('class-transformer'); var classValidator = require('class-validator'); var classValidatorJsonschema = require('class-validator-jsonschema'); var typeorm = require('typeorm'); var cartProductPrice = require('./cart-product-price.js'); let Cart = class Cart { }; tslib.__decorate([ typeorm.PrimaryGeneratedColumn('uuid'), classValidator.Allow(), tslib.__metadata("design:type", String) ], Cart.prototype, "id", void 0); tslib.__decorate([ classValidatorJsonschema.JSONSchema({ description: 'User id of the user who created the cart.', }), typeorm.Column({ type: 'varchar', length: 36, default: null }), microserviceHelpers.IsUndefinable(), microserviceHelpers.IsNullable(), tslib.__metadata("design:type", Object) ], Cart.prototype, "userId", void 0); tslib.__decorate([ classValidatorJsonschema.JSONSchema({ description: 'Using this field allows to store any additional data with the cart.', }), typeorm.Column({ type: 'jsonb', default: {} }), microserviceHelpers.IsUndefinable(), tslib.__metadata("design:type", Object) ], Cart.prototype, "params", void 0); tslib.__decorate([ microserviceHelpers.IsTypeormDate(), typeorm.CreateDateColumn(), tslib.__metadata("design:type", Date) ], Cart.prototype, "createdAt", void 0); tslib.__decorate([ microserviceHelpers.IsTypeormDate(), typeorm.UpdateDateColumn(), tslib.__metadata("design:type", Date) ], Cart.prototype, "updatedAt", void 0); tslib.__decorate([ classValidatorJsonschema.JSONSchema({ examples: [ { priceId: 'price_1O554EEHwJl6pnAbKY23V8LO', quantity: 1 }, { priceId: 'price_1O554EEHwJl6pnAb8wOcES6i', quantity: 3 }, ], }), classValidator.ValidateNested(), classTransformer.Type(() => cartProductPrice), classValidator.IsObject({ each: true }), microserviceHelpers.IsUndefinable(), typeorm.OneToMany('CartProductPrice', 'cart', { cascade: true }), typeorm.JoinColumn({ name: 'cartId' }), tslib.__metadata("design:type", Array) ], Cart.prototype, "items", void 0); Cart = tslib.__decorate([ classValidatorJsonschema.JSONSchema({ properties: { items: { $ref: '#/definitions/CartProductPrice', type: 'array' }, }, }), typeorm.Entity() ], Cart); var Cart$1 = Cart; module.exports = Cart$1;