@jalik/hal
Version:
Hypertext Application Language toolbox
123 lines • 3.02 kB
JavaScript
;
/*
* The MIT License (MIT)
* Copyright (c) 2024 Karl STEIN
*/
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createHalPagedResource = createHalPagedResource;
exports.createHalResource = createHalResource;
exports.getHalEmbedded = getHalEmbedded;
exports.getHalLinks = getHalLinks;
exports.getHalLink = getHalLink;
exports.getHalPage = getHalPage;
exports.getHalPageNumber = getHalPageNumber;
exports.getHalPageSize = getHalPageSize;
exports.getHalPageTotalElements = getHalPageTotalElements;
exports.getHalPageTotalPages = getHalPageTotalPages;
/**
* Creates a paged HAL resource.
* @param embedded
* @param page
* @param links
*/
function createHalPagedResource(embedded, page, links) {
var res = {
page: page,
_embedded: embedded,
_links: links
};
if (links == null) {
delete res._links;
}
return res;
}
/**
* Creates an HAL resource.
* @param resource
* @param embedded
* @param links
*/
function createHalResource(resource, embedded, links) {
var res = __assign(__assign({}, resource), { _embedded: embedded, _links: links });
if (embedded == null) {
delete res._embedded;
}
if (links == null) {
delete res._links;
}
return res;
}
/**
* Returns embedded from an HAL document.
* @param doc
*/
function getHalEmbedded(doc) {
return doc._embedded;
}
/**
* Returns links from an HAL document.
* @param doc
*/
function getHalLinks(doc) {
return doc._links;
}
/**
* Returns a specific link from an HAL document.
* @param doc
* @param link
*/
function getHalLink(doc, link) {
var _a;
return (_a = doc._links) === null || _a === void 0 ? void 0 : _a[link];
}
/**
* Returns page from an HAL document.
* @param doc
*/
function getHalPage(doc) {
return doc.page;
}
/**
* Returns page number from an HAL document.
* @param doc
*/
function getHalPageNumber(doc) {
var _a;
return (_a = doc.page) === null || _a === void 0 ? void 0 : _a.number;
}
/**
* Returns page size from an HAL document.
* @param doc
*/
function getHalPageSize(doc) {
var _a;
return (_a = doc.page) === null || _a === void 0 ? void 0 : _a.size;
}
/**
* Returns total elements from an HAL document.
* @param doc
*/
function getHalPageTotalElements(doc) {
var _a;
return (_a = doc.page) === null || _a === void 0 ? void 0 : _a.totalElements;
}
/**
* Returns total pages from an HAL document.
* @param doc
*/
function getHalPageTotalPages(doc) {
var _a;
return (_a = doc.page) === null || _a === void 0 ? void 0 : _a.totalPages;
}
//# sourceMappingURL=index.js.map