How to use the @foal/typeorm/node_modules/typeorm.Entity function in @foal/typeorm

To help you get started, we’ve selected a few @foal/typeorm examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github FoalTS / foal / packages / acceptance-tests / src / auth.typeorm.spec.ts View on Github external
it('with redirections.', async () => {
    @Entity()
    class User extends UserWithPermissions {
      @Column({ unique: true })
      email: string;

      @Column()
      password: string;
    }

    @TokenRequired({ user: fetchUserWithPermissions(User), store: TypeORMStore, cookie: true })
    class MyController {
      @Get('/foo')
      foo() {
        return new HttpResponseOK();
      }

      @Get('/bar')
github FoalTS / foal / packages / acceptance-tests / src / auth.spec.ts View on Github external
it('Authentication and authorization', async () => {
    @Entity()
    class User extends UserWithPermissions {
      @Column({ unique: true })
      email: string;

      @Column()
      password: string;
    }

    @LoginRequired({ user: fetchUserWithPermissions(User) })
    class MyController {
      @Get('/foo')
      foo() {
        return new HttpResponseOK();
      }

      @Get('/bar')
github FoalTS / foal / packages / acceptance-tests / src / authentication / session-token.cookie.redirection.spec.ts View on Github external
describe('[Authentication|session token|cookie|redirection] Users', () => {

  let app: any;
  let token: string;

  @Entity()
  class User {
    @PrimaryGeneratedColumn()
    id: number;

    @Column({ unique: true })
    email: string;

    @Column()
    password: string;
  }

  @TokenRequired({ store: TypeORMStore, cookie: true })
  class ApiController {
    @Get('/products')
    readProducts() {
      return new HttpResponseOK([]);
github FoalTS / foal / packages / acceptance-tests / src / authorization / groups-and-permissions.spec.ts View on Github external
describe('[Authorization|permissions] Users', () => {

  let app;
  let tokenUser1: string;
  let tokenUser2: string;

  @Entity()
  class User extends UserWithPermissions {}

  @TokenRequired({ user: fetchUserWithPermissions(User), store: TypeORMStore })
  class AppController {
    @Get('/bar')
    @PermissionRequired('access-bar')
    bar() {
      return new HttpResponseNoContent();
    }

    @Get('/foo')
    @PermissionRequired('access-foo')
    foo() {
      return new HttpResponseNoContent();
    }
  }
github FoalTS / foal / packages / acceptance-tests / src / authentication / jwt.cookie.spec.ts View on Github external
let app: any;
  let token: string;

  const cookieOptions: CookieOptions = {
    httpOnly: true,
    path: '/'
  };

  let blackList: string[];

  function isBlackListed(token: string): boolean {
    return blackList.includes(token);
  }

  @Entity()
  class User {
    @PrimaryGeneratedColumn()
    id: number;

    @Column({ unique: true })
    email: string;

    @Column()
    password: string;
  }

  @JWTRequired({ user: fetchUser(User), blackList: isBlackListed, cookie: true })
  class ApiController {
    @Get('/products')
    readProducts(ctx: Context) {
      return new HttpResponseOK({
github FoalTS / foal / packages / acceptance-tests / src / authentication / session-token.token.spec.ts View on Github external
describe('[Authentication|session token|no cookie|no redirection] Users', () => {

  let app: any;
  let token: string;

  @Entity()
  class User {
    @PrimaryGeneratedColumn()
    id: number;

    @Column({ unique: true })
    email: string;

    @Column()
    password: string;
  }

  @TokenRequired({ store: TypeORMStore })
  class ApiController {
    @Get('/products')
    readProducts() {
      return new HttpResponseOK([]);
github FoalTS / foal / packages / acceptance-tests / src / authentication / jwt.token.spec.ts View on Github external
describe('[Authentication|JWT|no cookie|no redirection] Users', () => {

  let app: any;
  let token: string;

  let blackList: string[];

  function isBlackListed(token: string): boolean {
    return blackList.includes(token);
  }

  @Entity()
  class User {
    @PrimaryGeneratedColumn()
    id: number;

    @Column({ unique: true })
    email: string;

    @Column()
    password: string;
  }

  const credentialsSchema = {
    additionalProperties: false,
    properties: {
      email: { type: 'string', format: 'email' },
      password: { type: 'string' }
github FoalTS / foal / packages / acceptance-tests / src / authentication / session-token.cookie.spec.ts View on Github external
describe('[Authentication|session token|cookie|no redirection] Users', () => {

  let app: any;
  let token: string;

  @Entity()
  class User {
    @PrimaryGeneratedColumn()
    id: number;

    @Column({ unique: true })
    email: string;

    @Column()
    password: string;
  }

  @TokenRequired({ store: TypeORMStore, cookie: true })
  class ApiController {
    @Get('/products')
    readProducts() {
      return new HttpResponseOK([]);
github FoalTS / foal / packages / examples / src / app / entities / user.entity.ts View on Github external
import { Column, Entity, PrimaryGeneratedColumn } from '@foal/typeorm/node_modules/typeorm';

import { hashPassword } from '@foal/core';
import { UserWithPermissions } from '@foal/typeorm';

@Entity()
export class User extends UserWithPermissions {

  @PrimaryGeneratedColumn()
  id: number;

  @Column({ unique: true })
  email: string;

  @Column()
  password: string;

  async setPassword(password: string): Promise {
    this.password = await hashPassword(password);
  }

}
github FoalTS / foal / packages / examples / src / app / entities / product.entity.ts View on Github external
import { Column, Entity, PrimaryGeneratedColumn } from '@foal/typeorm/node_modules/typeorm';

@Entity()
export class Product {

  @PrimaryGeneratedColumn()
  id: number;

  @Column()
  text: string;

}