alcaeus
Version:
Hydra Core hypermedia-aware client library
20 lines (19 loc) • 703 B
JavaScript
import { Alcaeus } from './alcaeus.js';
import ResourceStoreImpl from './ResourceStore.js';
import defaultSelectors from './RootSelectors/index.js';
import inferences from './inferences/index.js';
export default ({ dataset, fetch, Headers, rootSelectors } = {}) => class {
init() {
this.hydra = new Alcaeus({
environment: this,
rootSelectors: rootSelectors || defaultSelectors,
resources: new ResourceStoreImpl({
dataset: dataset || this.dataset(),
inferences,
environment: this,
}),
fetch: fetch || global.fetch,
Headers: Headers || global.Headers,
});
}
};