open-index/open-npm huggingface dataset:
npm package: @relab/semantic-release-sls-yandex-cloud
Description: semantic-release plugin to deploy serverless app to yandex cloud
Author: Sergey Zwezdin
Latest version: 1.4.15

# @relab/semantic-release-sls-yandex-cloud

[**semantic-release**](https://github.com/semantic-release/semantic-release) plugin to deploy serverless app to [yandex cloud](https://github.com/yandex-cloud/serverless-plugin)

## Install

Add the plugin to your npm-project:

```bash
$ npm install @relab/semantic-release-sls-yandex-cloud -D
```

## Usage

The plugin can be configured in the [semantic-release configuration file](https://github.com/semantic-release/semantic-release/blob/master/docs/usage/configuration.md#configuration):

```json
{
    "plugins": ["@semantic-release/commit-analyzer", "@semantic-release/release-notes-generator", "@relab/semantic-release-sls-yandex-cloud"]
}
```

Once it configured, the plugin creates `~/.config/yandex-cloud/config.yaml` file and run `npx serverless deploy` for your project.

## Configuration

### Yandex Cloud serverless app

Follow [the instructions](https://github.com/yandex-cloud/serverless-plugin) to create serverless app for Yandex Cloud

### Environment variables

The `YC_OAUTH_TOKEN`, `YC_CLOUD_ID`, `YC_FOLDER_ID` and `YC_DEFAULT_ZONE` can be defined in the environment where you will run semantic release.
As an alternative you can pass it via options.

### Options

| Option        | Description                                                                                       | Required | Default           |
| :------------ | :------------------------------------------------------------------------------------------------ | :------- | :---------------- |
| `token`       | OAuth token to deploy YC app                                                                      | yes      | `YC_OAUTH_TOKEN`  |
| `cloudId`     | Cloud ID in Yandex Cloud                                                                          | yes      | `YC_CLOUD_ID`     |
| `folderId`    | Folder ID in Yandex Cloud                                                                         | yes      | `YC_FOLDER_ID`    |
| `defaultZone` | [Availability zone](https://cloud.yandex.com/en/docs/overview/concepts/geo-scope) in Yandex Cloud | yes      | `YC_DEFAULT_ZONE` |

## Examples

```json
{
    "plugins": [
        "@semantic-release/commit-analyzer",
        "@semantic-release/release-notes-generator",
        [
            "@relab/semantic-release-sls-yandex-cloud",
            {
                "token": "<-- YOUR OAUTH TOKEN -->",
                "cloudId": "<-- CLOUD ID -->",
                "folderId": "<-- FOLDER ID -->",
                "defaultZone": "<-- ZONE -->"
            }
        ]
    ]
}
```

[MIT Licence](LICENSE)
npm package: @relab/typescript-swagger-client
Description: Utility package to generate typescript client by Swagger definition
Author: Sergey Zwezdin
Latest version: 1.2.6

# @relab/typescript-swagger-client

Utility package to generate typescript client by Swagger/OpenAPI definition.

## Usage

1. `npm install --save-dev @relab/typescript-swagger-client`
2. Add command to `scripts` section of `package.json` file
```json
{
  "name": "my-app",
  "scripts": {
    "swagger-client": "typescript-swagger-client --input @api/api.generated.json --output @api/generated"
  }
}
```
3. `npm run swagger-client`

Parameters of `typescript-swagger-client`:
- `--input` - JSON-file path in your project that contains OpenAPI definition
- `--output` - Folder for generated code

## License

Released under [MIT](/LICENSE) by [Sergey Zwezdin](https://github.com/sergeyzwezdin).
npm package: @relab/winston-logger
Description: Winston logger configuration
Author: Sergey Zwezdin
Latest version: 1.0.11

# @relab/node-logger

Winston-based logger configuration with Telegram integration.

![node-logger](./docs/demo.png)

## Usage

1. `npm install --save @relab/node-logger`
2. Configure layout, verbosity level and Telegram (if necessary)
3. Patch `console` object:
```typescript
import { patchCommonLogger } from '@relab/node-logger'
patchCommonLogger()
```
4. Import `logger` to write logs into default area
5. Import `scoped` to create log area

## Configuration

### Layout
```typescript
import { configureLogger } from '@relab/node-logger'
configureLogger({ kind: 'layout', layout: ['timestamp', 'level', 'area', 'message', 'details', 'error'] })
```

### Verbosity level
```typescript
import { configureLogger } from '@relab/node-logger'
configureLogger({ kind: 'verbosity', verbosity: { area: '*', level: 'error' } })
configureLogger({ kind: 'verbosity', verbosity: { area: 'express', level: 'debug' } })
```

### Telegram
```typescript
import { configureLogger } from '@relab/node-logger'
configureLogger({
    kind: 'telegram',
    telegram: {
        enabled: true,
        token: process.env.LOGGER_TELEGRAM_TOKEN ?? '',
        chatId: Number(process.env.LOGGER_TELEGRAM_CHAT_ID),
    }
})
```

## Example of usage
```typescript
import { patchCommonLogger, logger, scoped, configureLogger } from '@relab/node-logger'

// Configure and patch logger
configureLogger({ kind: 'layout', layout: ['timestamp', 'level', 'area', 'message', 'details', 'error'] })
configureLogger({ kind: 'verbosity', verbosity: { area: '*', level: 'error' } })
configureLogger({ kind: 'verbosity', verbosity: { area: 'express', level: 'debug' } })
configureLogger({
    kind: 'telegram',
    telegram: {
        enabled: true,
        token: process.env.LOGGER_TELEGRAM_TOKEN ?? '',
        chatId: Number(process.env.LOGGER_TELEGRAM_CHAT_ID),
    }
})
patchCommonLogger()

// Create scoped logger
const expressLogger = scoped('express')

// Use logger
logger.info('Starting application')
expressLogger.info('Starting web-server')
expressLogger.error('Unable to start web-server')
console.log('Default message') // also works
```

## License

Released under [MIT](/LICENSE) by [Sergey Zwezdin](https://github.com/sergeyzwezdin).
npm package: @relabs_test/relabs-test-uikit
Description: ```tsx import React from 'react'; import { Provider, Button, DatePicker } from '@relabs_test/relabs-test-uikit';
Latest version: 0.0.11

# ReLabs React UI KIT (test)

### Ui Kit построен на базе [Ant Design](https://ant.design)

### 🙌 Как использовать

```tsx
import React from 'react';
import { Provider, Button, DatePicker } from '@relabs_test/relabs-test-uikit';

const App = () => (
  <Provider>
    <Button type='primary'>PRESS ME</Button>
    <DatePicker placeholder='select date' />
  </Provider>
);

export default App;
```

#### Изначально есть компонент ` <Provider />` Он нужен для смены темы и оборачивает все остальные компоненты

#### Есть хук `useToggleTheme()` для смены темы

```tsx
import { useToggleTheme } from 'src/lib/theme/utils/ThemeContext';

const App = () => {
  const toggleTheme = useToggleTheme();

  return (
    <Provider>
      <button onClick={toggleTheme}> Change Theme</button>

      {/* остальной код */}
    </Provider>
  );
};

// и все остальные компоненты
```

#### В папке theme/constants лежат переменные цветов(по крайней мере то, что я туда положил 🤣)

![theme/constants](../lib_theme.png)

## 🔨 Разработка

1. Клонируете репозиторий
2. Устанавливаете зависимости
3. Разрабатываете 😁

## ⚙️ Как собирать

Основная точка входа для пакета - `src/components/index.ts`.
Из этого файла импортируется то, что будет в итоговом npm пакете, точнее что можно будет использовать.
Если вы написали компонент и не экспортировали его, он будет `недоступен`. Тоже самое касается хуков и функций.

```tsx
// `src/components/index.ts`

export * from './provider/Provider';
export * from './slider/Slider';
export * from './table/table';

// и все остальные компоненты
```

### Порядок действий для публикации npm-package

1. Обновите версию в package.json (можно увеличить последнюю цифру: было 0.0.1, стало 0.0.2)

```json
{
  "name": "@relabs_test/test-ui-kit",
  "version": "0.0.1",
  "type": "module",
  "license": "MIT",
  "publishConfig": {
    "access": "public"
  }
}
```

2. Вызовите команду `yarn build` или `npm run build`
3. Вызовите команту `npm login`
4. В терминале в ide будет предложено ввести Username, Password и Email

   `терминал`
   ![терминал](../npm_login.png)
   Username: `relabs_test`

   Password: `relabs123456789`

   Email: `test.relabs.library@gmail.com`

5. На указанную почту придет одноразовый пароль, который вас попросят ввести в терминал
6. Заходим на почту test.relabs.library@gmail.com (password: relabs123456789)
7. Вводим одноразовый пароль
8. Запускаем команду npm publish
9. Хваставемся друзьям! 😁

### TypeScript

`ReLabs React UI KIT` написан на typescript и расширяет стандартные типы компонентов [antd](https://ant.design/docs/react/use-in-typescript).