UNPKG

ngx-drupal7-services

Version:

# Angular 2+/Ionic 2+ Drupal 7 Services #### Typescript angular module for [Drupal Services 3.x](https://www.drupal.org/project/services)

83 lines 7.42 kB
import { Injectable } from '@angular/core'; import { MainService } from '../main/main.service'; import * as i0 from "@angular/core"; /** * node service for drupal * @see BACK_END/admin/structure/services/list/END_POINT/resources for more details */ export class NodeService extends MainService { constructor() { super(...arguments); this.entityType = 'node'; } /** * impelement index resource * @return array of nodes */ getAllNodes() { return this.get(); } /** * implement retrive resource * @param nid node id to retrive * @return object of the node entity */ getNodeById(nid) { return this.get(nid); } /** * implement create resource * @param node node entity to create * @return created node details */ createNode(node) { return this.post(node); } /** * implement create resource * @param node node to create * @return created node details */ updateNode(node) { return this.put(node, node.nid); } /** * implement delete resource * @param nid node id to delete * @return array true if node deleted, otherwise return false array */ deleteNode(nid) { return this.delete(nid); } /** * implement files resource * @param nid node id * @return array of files that attached to that node */ files(nid) { return this.get(`${nid}/files`); } /** * implement comments resource * @param nid node id * @return array of comments that attached to that node */ comments(nid) { return this.get(`${nid}/comments`); } /** * implement attach_files resource * @param nid node id * @file object contains the field details and the file to upload * @return attached file */ attachFilesToNode(nid, file) { return this.post(file, `${nid}/attach_file`); } } /** @nocollapse */ NodeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: NodeService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); /** @nocollapse */ NodeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: NodeService }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.4", ngImport: i0, type: NodeService, decorators: [{ type: Injectable }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWRydXBhbDctc2VydmljZXMvc3JjL2xpYi9ub2RlL25vZGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFHbkQ7OztHQUdHO0FBRUgsTUFBTSxPQUFPLFdBQVksU0FBUSxXQUFXO0lBRDVDOztRQUVFLGVBQVUsR0FBRyxNQUFNLENBQUM7S0EwRXJCO0lBeEVDOzs7T0FHRztJQUNILFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxHQUFXO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFVBQVUsQ0FBQyxJQUFnQjtRQUN6QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxVQUFVLENBQUMsSUFBbUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxVQUFVLENBQUMsR0FBVztRQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsR0FBVztRQUNmLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsUUFBUSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVBOzs7O01BSUU7SUFDSCxRQUFRLENBQUMsR0FBVztRQUNsQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFQTs7Ozs7TUFLRTtJQUNILGlCQUFpQixDQUFDLEdBQVcsRUFBRSxJQUFnQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsR0FBRyxjQUFjLENBQUMsQ0FBQztJQUMvQyxDQUFDOzsySEF6RVUsV0FBVzsrSEFBWCxXQUFXOzJGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IE1haW5TZXJ2aWNlIH0gZnJvbSAnLi4vbWFpbi9tYWluLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGaWxlRW50aXR5LCBDb21tZW50RW50aXR5LCBOb2RlRW50aXR5LCBDcmVhdGVkTm9kZSwgRmlsZUF0dGFjaCB9IGZyb20gJy4uL21vZGVscyc7XHJcblxyXG4vKipcclxuICogbm9kZSBzZXJ2aWNlIGZvciBkcnVwYWxcclxuICogQHNlZSBCQUNLX0VORC9hZG1pbi9zdHJ1Y3R1cmUvc2VydmljZXMvbGlzdC9FTkRfUE9JTlQvcmVzb3VyY2VzIGZvciBtb3JlIGRldGFpbHNcclxuICovXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIE5vZGVTZXJ2aWNlIGV4dGVuZHMgTWFpblNlcnZpY2Uge1xyXG4gIGVudGl0eVR5cGUgPSAnbm9kZSc7XHJcblxyXG4gIC8qKlxyXG4gICAqIGltcGVsZW1lbnQgaW5kZXggcmVzb3VyY2VcclxuICAgKiBAcmV0dXJuIGFycmF5IG9mIG5vZGVzXHJcbiAgICovXHJcbiAgZ2V0QWxsTm9kZXMoKTogT2JzZXJ2YWJsZTxOb2RlRW50aXR5W10+IHtcclxuICAgIHJldHVybiB0aGlzLmdldCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogaW1wbGVtZW50IHJldHJpdmUgcmVzb3VyY2VcclxuICAgKiBAcGFyYW0gbmlkIG5vZGUgaWQgdG8gcmV0cml2ZVxyXG4gICAqIEByZXR1cm4gb2JqZWN0IG9mIHRoZSBub2RlIGVudGl0eVxyXG4gICAqL1xyXG4gIGdldE5vZGVCeUlkKG5pZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxOb2RlRW50aXR5PiB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXQobmlkKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGltcGxlbWVudCBjcmVhdGUgcmVzb3VyY2VcclxuICAgKiBAcGFyYW0gbm9kZSBub2RlIGVudGl0eSB0byBjcmVhdGVcclxuICAgKiBAcmV0dXJuIGNyZWF0ZWQgbm9kZSBkZXRhaWxzXHJcbiAgICovXHJcbiAgY3JlYXRlTm9kZShub2RlOiBOb2RlRW50aXR5KTogT2JzZXJ2YWJsZTxDcmVhdGVkTm9kZT4ge1xyXG4gICAgcmV0dXJuIHRoaXMucG9zdChub2RlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGltcGxlbWVudCBjcmVhdGUgcmVzb3VyY2VcclxuICAgKiBAcGFyYW0gbm9kZSBub2RlIHRvIGNyZWF0ZVxyXG4gICAqIEByZXR1cm4gY3JlYXRlZCBub2RlIGRldGFpbHNcclxuICAgKi9cclxuICB1cGRhdGVOb2RlKG5vZGU6IHtuaWQ6IG51bWJlcn0pOiBPYnNlcnZhYmxlPENyZWF0ZWROb2RlPiB7XHJcbiAgICByZXR1cm4gdGhpcy5wdXQobm9kZSwgbm9kZS5uaWQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogaW1wbGVtZW50IGRlbGV0ZSByZXNvdXJjZVxyXG4gICAqIEBwYXJhbSBuaWQgbm9kZSBpZCB0byBkZWxldGVcclxuICAgKiBAcmV0dXJuIGFycmF5IHRydWUgaWYgbm9kZSBkZWxldGVkLCBvdGhlcndpc2UgcmV0dXJuIGZhbHNlIGFycmF5XHJcbiAgICovXHJcbiAgZGVsZXRlTm9kZShuaWQ6IG51bWJlcik6IE9ic2VydmFibGU8Ym9vbGVhbltdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5kZWxldGUobmlkKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGltcGxlbWVudCBmaWxlcyByZXNvdXJjZVxyXG4gICAqIEBwYXJhbSBuaWQgbm9kZSBpZFxyXG4gICAqIEByZXR1cm4gYXJyYXkgb2YgZmlsZXMgdGhhdCBhdHRhY2hlZCB0byB0aGF0IG5vZGVcclxuICAgKi9cclxuICBmaWxlcyhuaWQ6IG51bWJlcik6IE9ic2VydmFibGU8RmlsZUVudGl0eVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXQoYCR7bmlkfS9maWxlc2ApO1xyXG4gIH1cclxuXHJcbiAgIC8qKlxyXG4gICAqIGltcGxlbWVudCBjb21tZW50cyByZXNvdXJjZVxyXG4gICAqIEBwYXJhbSBuaWQgbm9kZSBpZFxyXG4gICAqIEByZXR1cm4gYXJyYXkgb2YgY29tbWVudHMgdGhhdCBhdHRhY2hlZCB0byB0aGF0IG5vZGVcclxuICAgKi9cclxuICBjb21tZW50cyhuaWQ6IG51bWJlcik6IE9ic2VydmFibGU8Q29tbWVudEVudGl0eVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXQoYCR7bmlkfS9jb21tZW50c2ApO1xyXG4gIH1cclxuXHJcbiAgIC8qKlxyXG4gICAqIGltcGxlbWVudCBhdHRhY2hfZmlsZXMgcmVzb3VyY2VcclxuICAgKiBAcGFyYW0gbmlkIG5vZGUgaWRcclxuICAgKiBAZmlsZSBvYmplY3QgY29udGFpbnMgdGhlIGZpZWxkIGRldGFpbHMgYW5kIHRoZSBmaWxlIHRvIHVwbG9hZFxyXG4gICAqIEByZXR1cm4gYXR0YWNoZWQgZmlsZVxyXG4gICAqL1xyXG4gIGF0dGFjaEZpbGVzVG9Ob2RlKG5pZDogbnVtYmVyLCBmaWxlOiBGaWxlQXR0YWNoKTogT2JzZXJ2YWJsZTxGaWxlRW50aXR5PiB7XHJcbiAgICByZXR1cm4gdGhpcy5wb3N0KGZpbGUsIGAke25pZH0vYXR0YWNoX2ZpbGVgKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==