@rero/ng-core
Version:
RERO angular core library.
87 lines (86 loc) • 3.38 kB
TypeScript
import { Location } from '@angular/common';
import { OnDestroy, OnInit, ViewContainerRef } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { TranslateService } from '@ngx-translate/core';
import { NgxSpinnerService } from 'ngx-spinner';
import { MessageService } from 'primeng/api';
import { Observable, Subscription } from 'rxjs';
import { Error } from '../../error/error';
import { ActionStatus } from '../action-status';
import { RecordUiService } from '../record-ui.service';
import { RecordService } from '../record.service';
import { IRecordEvent } from './detail-button/IRecordEvent.interface';
import { RecordDetailDirective } from './detail.directive';
import * as i0 from "@angular/core";
export declare class DetailComponent implements OnInit, OnDestroy {
protected route: ActivatedRoute;
protected router: Router;
protected location: Location;
protected recordService: RecordService;
protected recordUiService: RecordUiService;
protected translate: TranslateService;
protected spinner: NgxSpinnerService;
protected messageService: MessageService;
protected viewContainerRef: ViewContainerRef;
/** View component for displaying record */
viewComponent: any;
/** Record can be used ? */
useStatus: ActionStatus;
/** Record can be updated ? */
updateStatus: ActionStatus;
/** Record can be deleted ? */
deleteStatus: ActionStatus;
/** Observable resolving record data */
record$: Observable<any>;
/** Record data */
record: any;
/** Error message */
error: Error;
/** Admin mode for CRUD operations */
adminMode: ActionStatus;
/** Type of record */
type: string;
/**Subscription to route parameters observables */
private routeParametersSubscription;
/** Object type route config */
private config;
private detailComponentSubscription;
/** Directive for displaying record */
recordDetail: RecordDetailDirective;
/** On init hook */
ngOnInit(): void;
/**
* Component destruction.
*
* Unsubscribes from the observables of the route parameters.
* Unsubscribes from the observable for detail view.
*/
ngOnDestroy(): void;
/**
* Record event
* @param event - Record event message
*/
recordEvent(event: IRecordEvent): void;
/**
* Getter giving the information if file management is enabled.
* @returns True if file management is enabled.
*/
get filesEnabled(): boolean;
/**
* Delete the record and go back to previous page.
* @param event - DOM event
* @param element - string (PID to remove) or object
*/
deleteRecord(element: any): Subscription;
/**
* Show a modal containing message given in parameter.
* @param message - message to display into modal
*/
showDeleteMessage(message: string): void;
/** Dynamically load component depending on selected resource type. */
private loadRecordView;
/** Load component view corresponding to type */
private loadViewComponentRef;
static ɵfac: i0.ɵɵFactoryDeclaration<DetailComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<DetailComponent, "ng-core-record-detail", never, { "viewComponent": { "alias": "viewComponent"; "required": false; }; }, {}, never, never, false, never>;
}