An open API service indexing awesome lists of open source software.

https://github.com/extensionengine/hub3

Parse HUB3 formatted bank reports
https://github.com/extensionengine/hub3

Last synced: 9 months ago
JSON representation

Parse HUB3 formatted bank reports

Awesome Lists containing this project

README

          





# @extensionengine/hub3

[![circleci build status](https://badgen.net/circleci/github/ExtensionEngine/hub3/master?icon)](https://app.circleci.com/pipelines/github/ExtensionEngine/hub3?branch=master)
[![install size](https://badgen.net/packagephobia/install/@extensionengine/hub3)](https://packagephobia.now.sh/result?p=@extensionengine/hub3)
[![npm package version](https://badgen.net/npm/v/@extensionengine/hub3)](https://npm.im/@extensionengine/hub3)
[![github license](https://badgen.net/github/license/ExtensionEngine/hub3)](https://github.com/ExtensionEngine/hub3/blob/master/LICENSE)
[![js @extensionengine style](https://badgen.net/badge/code%20style/@extensionengine/black)](https://github.com/ExtensionEngine/eslint-config)

> Parse [HUB3](http://com.pbz.hr/download/Format_za_dostavu_izvadaka_klijentima_na_elektronskom_mediju.pdf) formatted bank reports

## Installation

npm install @extensionengine/hub3

## API

#### Table of Contents

- [HUB3Error](#hub3error)
- [isHUB3Error](#ishub3error)
- [Parameters](#parameters)
- [ParserError](#parsererror)
- [parseHUB3](#parsehub3)
- [Parameters](#parameters-1)
- [Examples](#examples)
- [LineRecord](#linerecord)
- [Properties](#properties)

### HUB3Error

**Extends Error**

Base class for all HUB3 specific errors

#### isHUB3Error

Check if error is HUB3 specific error

##### Parameters

- `err` **[Error](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Error)** error

Returns **[boolean](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** result

### ParserError

**Extends HUB3Error**

Custom error class used for reporting parsing errors

### parseHUB3

- **See:
**

Parse HUB3 bank report

#### Parameters

- `buffer` **[Buffer](https://nodejs.org/api/buffer.html)** HUB3 file contents

#### Examples

```javascript
const { HUB3Error, parse } = require('@extensionengine/hub3');
const path = require('path');
const { readFileSync } = require('fs');

const hub3 = readFileSync(path.join(__dirname, '../reports/1110779471-20200826.mn'));
try {
const records = parse(hub3);
console.log({ records });
} catch (err) {
if (!HUB3Error.isHUB3Error(err)) throw err;
console.error('Failed to parse report:', err.message);
process.exit(1);
}
```

- Throws **[ParserError](#parsererror)**

Returns **[Array](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)<[LineRecord](#linerecord)>** array of line records

### LineRecord

Type: [Object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object)

#### Properties

- `tip_sloga` **[String](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** type