4.0.1 • Published 1 month ago

agsjs v4.0.1

Weekly downloads
3
License
MIT
Repository
github
Last release
1 month ago

agsjs

A modern and lightweight AGS file parser for JavaScript

Installation

npm install agsjs --save

How to use

Default use as ES6 module

import { parse } from 'agsjs'

const content = fetch('sample.ags').then(x => x.text()),
const results = parse(content)

The results are returned as a JavaScript Array parsed from the file content. It follows the tree-like structure of the file format.

Every entry of the array has three properties:

  • heading, a non-empty string of the group name
  • columns which contains an array of the group headings and group related informations
  • rows which contains an array of the formatted data according to the group headings

Convenience functions

findGroup

Returns a JavaScript object or null if heading is not found

import { parse, find } from 'agsjs'

const groups = parse(content)
const projGroup = find('PROJ', groups)
console.log(projGroup)
// { "heading": "PROJ", columns: [...], rows: [...] } OR null

map

Returns an array Match group headings and rows to a custom JavaScript object with named keys as parameters

import { parse, find, map } from 'agsjs'

const groups = parse(content)
const projGroup = find('PROJ', groups)
const keys = [{
  name: 'reference',
  header: 'PROJ_ID'
}, {
  name: 'name',
  header: 'PROJ_NAME',
  required: true,
  default: ''
}, {
  name: 'location',
  header: 'PROJ_LOC'
}, {
  name: 'client',
  header: 'PROJ_CLNT'
}]
const dataset = map(projGroup, keys)

License

MIT License

4.0.1

1 month ago

4.0.0

1 month ago

3.0.1

8 months ago

3.0.0

2 years ago

2.0.0

3 years ago

1.1.0

3 years ago

1.0.1

4 years ago

1.0.0

4 years ago

0.9.0

4 years ago

0.2.0

4 years ago

0.1.0

4 years ago