open-index/open-npm huggingface dataset:
npm package: @fuse-autotech/nest-timeout
Description: This package enables to use a custom timeout alongside with the global timeout interceptor.
Author: Gil Tichon & Alex Genkin
Latest version: 2.1.0

<div align="center">
<p align="center">
  <a href="http://fuseautotech.com/" target="blank"><img src="https://fuseautotech.com/hubfs/Logo.svg" width="300" alt="Fuse Logo" /></a>
  <a href="http://nestjs.com/" target="blank"><img src="https://nestjs.com/img/logo-small.svg" width="120" alt="Nest Logo" /></a>
</p>

<h1>Timeout Interceptor for NestJS</h1>
</div>

## Description

NestJS Timeout Interceptor repository. It enables setting up a global timeout for a NestJS application, which can be overridden by a Timeout Decorator for controller classes and methods specific timeouts.
This gives the user more flexibility with a small amount of additional code. Method timeouts are preferred over class timeouts, which are preferred over global timeouts. Enjoy!

## Installation

```bash
$ npm install @fuse-autotech/nest-timeout
```

## Usage
### Interceptor
Options:
* `defaultTimeout` - Number of milliseconds after which the interceptor throws a `RequestTimeoutException` if no other timeout is defined for the endpoint
* `isEnabled` - Determine if the interceptor is enabled. Defaults to `true`. Useful for debugging to avoid timeouts
```typescript

import { Module } from "@nestjs/common";
import { APP_INTERCEPTOR } from "@nestjs/core";
import { TimeoutInterceptor } from "@fuse-autotech/nest-timeout";

@Module({
    imports: [],
    controllers: [],
    providers: [{
        provide: APP_INTERCEPTOR,
        useValue: new TimeoutInterceptor({ defaultTimeout: 10000 })
    }]
})
export class AppModule {}

```
### `@Timeout()` Decorator
Can be used both on Controllers and Controller Methods:
```typescript

import { Controller, Get, Param, Post } from '@nestjs/common';
import { Timeout } from '@fuse-autotech/nest-timeout';

@Controller('cats')
@Timeout(10000) // Applied for all methods unless decorated
export class CatsController {
    @Get()
    findAll(): string {
        return 'This action returns all cats';
    }
		
    @Get(':id') 
    @Timeout(30000) // Overrides controller timeout
    findOne(@Param('id') id: string ): string {
			return `This action returns a #${id} cat`;
		}

    @Post()
    @Timeout(0) // Disables timeout for the method
    create(): string {
        return 'This action adds a new cat';
    }
}
```

## License

Nest timeout is [MIT licensed](LICENSE.md).
npm package: @fuse-open/opentk
Description: Unofficial package of OpenTK and ANGLE.
Author: The Open Toolkit Team
Latest version: 3.2.0

# opentk

[![NPM package](https://img.shields.io/npm/v/@fuse-open/opentk.svg?style=flat-square)](https://www.npmjs.com/package/@fuse-open/opentk)

Unofficial package of OpenTK and ANGLE.
npm package: @fuse-open/transpiler
Description: JavaScript and TypeScript transpiler powered by Babel.
Author: Fuse Open
Latest version: 1.18.0

# fusejs-transpiler

[![NPM package](https://img.shields.io/npm/v/@fuse-open/transpiler.svg?style=flat-square)](https://www.npmjs.com/package/@fuse-open/transpiler)

JavaScript and TypeScript transpiler powered by Babel.

## Install

```
$ npm install @fuse-open/transpiler
```

## Usage

```
$ fusejs-transpiler

port:49250
```
npm package: @fuse-open/tsconfig
Description: A base TSConfig for working with FuseJS
Author: Fuse Open
Latest version: 2.7.0

# tsconfig

[![NPM package](https://img.shields.io/npm/v/@fuse-open/tsconfig.svg?style=flat-square)](https://www.npmjs.com/package/@fuse-open/tsconfig)
[![License: MIT](https://img.shields.io/github/license/fuse-open/tsconfig.svg?style=flat-square)](LICENSE)

A base TSConfig for working with FuseJS

## Install

```shell
npm i -D @fuse-open/tsconfig
```

### Related packages

* [fuse-sdk](https://www.npmjs.com/package/fuse-sdk)
* [fuselibs](https://www.npmjs.com/package/@fuse-open/fuselibs)
* [types](https://www.npmjs.com/package/@fuse-open/types)

## Usage

Install and add a `tsconfig.json` file to your project with the following contents.

```json
{
  "extends": "@fuse-open/tsconfig"
}
```

Now your TypeScript project is configured for FuseJS 🥳
npm package: @fuse-open/xamarin-mac
Description: Unofficial package of Xamarin.Mac.
Author: Xamarin, Inc and contributors
Latest version: 9.3.0

# xamarin-mac

[![NPM package](https://img.shields.io/npm/v/@fuse-open/xamarin-mac.svg?style=flat-square)](https://www.npmjs.com/package/@fuse-open/xamarin-mac)

Unofficial package of Xamarin.Mac.