1.0.0-rc.7 • Published 1 month ago

@5stones/onix v1.0.0-rc.7

Weekly downloads
-
License
MIT
Repository
-
Last release
1 month ago

ONIX

A strongly typed library for parsing ONIX feeds.

Usage

At a high level, you can pass an XML string into the parse function which will return an object of type ONIXMessageRoot.

import { parse } from '@5stones/onix';

const someONIXMessage = '...';
const parsed = parse(someONIXMessage);

There are also numerous interfaces, enums, and other data that can be used for strong typing and parsing (e.g. BISAC data).

There are also the following helpers for dealing with BISAC:

import {
  getBISACLabelsForCode,
  getBISACCodeForLabel,
  getBISACAncestorForCode,
  type BISACNode,
} from '@5stones/onix';

const labels: string[] = getBISACLabelsForCode('...');
const code: string = getBISACCodeForLabel('...');
const ancestor: BISACNode | undefined = getBISACAncestorForCode('...');

Code Generation

If you need to update the BISAC codes/labels and/or the ONIX enums you can use the two scraper scripts that scrape the relevant documentation websites and generate the code:

yarn generate:bisac
yarn generate:onix-enums

Release

The standard release command for this project is:

yarn version [--new-version <newversion> | major | minor | patch ]

This command will:

  1. Generate/update the Changelog
  2. Bump the package version
  3. Tag & pushing the commit

e.g.

yarn version --new-version 1.2.17
yarn version patch // 1.2.17 -> 1.2.18
1.0.0-rc.7

1 month ago

1.0.0-rc.6

1 month ago

1.0.0-rc.5

1 month ago

1.0.0-rc.4

1 month ago

1.0.0-rc.3

1 month ago

1.0.0-rc.2

1 month ago

1.0.0-rc.1

1 month ago