hateoas-link-resolver
TypeScript icon, indicating that this package has built-in type declarations

1.2.0 • Public • Published

HATEOAS-link-resolver

Build Status Maintainability Test Coverage

Small helper library for resolving templated HATEOAS links

Install

Use your favourite package manager

npm i -S hateoas-link-resolver

or

yarn add hateoas-link-resolver

Usage

Just resolve templated links

import { resolve } from 'hateoas-link-resolver';
const templatedLink = 'https://example.org/{id}/sub';
const resolvedLink = resolve(link, {id: '123'});

Use Link repository. Put all link into repository and then retrieve from there and resolve

import { LinkRepository } from 'hateoas-link-resolver';
const links = {
    endpoint1: {
        href: "https://example.org/{id}",
        templated: true
    },
    endpoint2: {
        href: "https://example.org/path/{id}",
        templated: true
    }
};
const repo = new LinkRepository(links);

// resolve
repo.resolve('endpoint1', {id: '123'});

// check existence
repo.has('endpoint1');

// get unresolved link
repo.get('endpoint1');

Limitations

This helper is for rather simple link structures and does not support list of links.

Alternatives

If you need resolving of list of links you might want to try hateoas-hal-link-resolver

Dependencies (0)

    Dev Dependencies (22)

    Package Sidebar

    Install

    npm i hateoas-link-resolver

    Weekly Downloads

    92

    Version

    1.2.0

    License

    MIT

    Unpacked Size

    47.5 kB

    Total Files

    35

    Last publish

    Collaborators

    • dasch