node-hue-api
Version:
Philips Hue API Library for Node.js
33 lines (32 loc) • 1.16 kB
JavaScript
import { ApiDefinition } from './http/ApiDefinition';
import { resourceLinksApi } from './http/endpoints/resourceLinks';
export class ResourceLinks extends ApiDefinition {
constructor(hueApi) {
super(hueApi);
}
getAll() {
return this.execute(resourceLinksApi.getAll);
}
getResourceLink(id) {
return this.execute(resourceLinksApi.getResourceLink, { id: id });
}
getResourceLinkByName(name) {
return this.getAll()
.then(resourceLinks => {
return resourceLinks.filter(resourceLink => resourceLink.name === name);
});
}
createResourceLink(resourceLink) {
const self = this;
return self.execute(resourceLinksApi.createResourceLink, { resourceLink: resourceLink })
.then((result) => {
return self.getResourceLink(result.id);
});
}
deleteResourceLink(id) {
return this.execute(resourceLinksApi.deleteResourceLink, { id: id });
}
updateResourceLink(resourceLink) {
return this.execute(resourceLinksApi.updateResourceLink, { id: resourceLink.id, resourceLink: resourceLink });
}
}