Skip to content

Releases: jaywcjlove/typenexus

v0.5.7

02 Dec 06:33

Choose a tag to compare

v0.5.6

22 Sep 07:47

Choose a tag to compare

v0.5.5

24 Jun 13:28

Choose a tag to compare

v0.5.4

04 Mar 14:14

Choose a tag to compare

v0.5.3

27 Nov 00:31

Choose a tag to compare

Buy me a coffee

Documentation v0.5.3: https://raw.githack.com/jaywcjlove/typenexus/513ed5a/index.html

npm i typenexus@0.5.3

v0.5.2...v0.5.3

v0.5.2

22 Sep 06:54

Choose a tag to compare

Documentation v0.5.2: https://raw.githack.com/jaywcjlove/typenexus/2cabd6a/index.html

npm i typenexus@0.5.2

v0.5.1...v0.5.2

v0.5.1

07 Jul 18:31

Choose a tag to compare

Documentation v0.5.1: https://raw.githack.com/jaywcjlove/typenexus/7471f66/index.html

npm i typenexus@0.5.1

v0.5.0...v0.5.1

v0.5.0

07 Jul 04:27

Choose a tag to compare

Documentation v0.5.0: https://raw.githack.com/jaywcjlove/typenexus/4cb2e14/index.html

npm i typenexus@0.5.0

v0.4.1...v0.5.0

Inject uploaded file

To inject uploaded file, use @UploadedFile decorator:

@Post("/file")
saveFile(@UploadedFile("fileName") file: Express.Multer.File) {}

To inject uploaded multiple files, use the @UploadedFiles decorator:

@Post("/files")
saveFiles(@UploadedFiles("fileName") file: Express.Multer.File[]) {}

You can also specify uploading options to multer this way:

import type { Options } from 'multer';
// to keep code clean better to extract this function into separate file
const fileUploadOptions: () => Options = () => ({
  storage: multerFn.diskStorage({
    destination: (req, file, cb) => {
      //...
    },
    filename: (req, file, cb) => {
      //...
    }
  }),
  fileFilter: (req, file, cb) => {
    //...
  },
  limits: {
    fieldNameSize: 255,
    fileSize: 1024 * 1024 * 2
  }
});

// use options this way:
@Post("/file")
saveFiles(@UploadedFile("fileName", fileUploadOptions) file: Express.Multer.File) {}

To inject all uploaded files use @UploadedFiles decorator instead. typenexus uses multer to handle file uploads.

v0.4.1

02 May 15:03

Choose a tag to compare

Documentation v0.4.1: https://raw.githack.com/jaywcjlove/typenexus/16dfdb3/index.html

npm i typenexus@0.4.1

v0.4.0...v0.4.1

v0.4.0

01 May 18:43

Choose a tag to compare

Documentation v0.4.0: https://raw.githack.com/jaywcjlove/typenexus/8983f54/index.html

npm i typenexus@0.4.0

v0.3.1...v0.4.0

@DSource() decorator injects you a DataSource object.

Support constructor @DSource() decorator

import { Controller, Get, DSource, DataSource } from 'typenexus';
import { Response, Request }from 'express';
import { User } from '../entity/User.js';

@Controller('/users')
export class UserController {
  constructor(@DSource() private dataSource: DataSource) {}
  @ContentType('application/json')
  @Get() // => GET /users
  public async getUsers(): Promise<User[]> {
    return this.dataSource.manager.find(User);
  }
}