@nakedobjects/gemini
Version:
Single Page Application client for a Naked Objects application.
50 lines (49 loc) • 2.67 kB
TypeScript
import { AfterViewInit, OnDestroy, QueryList } from '@angular/core';
import { FormBuilder, FormGroup } from '@angular/forms';
import { ActivatedRoute } from '@angular/router';
import * as Ro from '@nakedobjects/restful-objects';
import { ConfigService, ContextService, ErrorService, PaneRouteData, UrlManagerService } from '@nakedobjects/services';
import { ActionViewModel, CollectionViewModel, DialogViewModel, MultiLineDialogViewModel, ParameterViewModel, ViewModelFactoryService } from '@nakedobjects/view-models';
import { Dictionary } from 'lodash';
import { SubscriptionLike as ISubscription } from 'rxjs';
import { PaneComponent } from '../pane/pane';
import { ParametersComponent } from '../parameters/parameters.component';
import * as i0 from "@angular/core";
export declare class MultiLineDialogComponent extends PaneComponent implements AfterViewInit, OnDestroy {
private readonly viewModelFactory;
private readonly error;
private readonly formBuilder;
private readonly configService;
constructor(activatedRoute: ActivatedRoute, urlManager: UrlManagerService, viewModelFactory: ViewModelFactoryService, context: ContextService, error: ErrorService, formBuilder: FormBuilder, configService: ConfigService);
parmComponents?: QueryList<ParametersComponent>;
private sub?;
dialog: MultiLineDialogViewModel;
rowData: {
form: FormGroup;
dialog: DialogViewModel;
parms: Dictionary<ParameterViewModel>;
sub: ISubscription;
}[];
form: (i: number) => FormGroup<any>;
get objectFriendlyName(): string;
get objectTitle(): string;
get dialogTitle(): string;
get header(): string[];
get rows(): DialogViewModel[];
parameters: (row: DialogViewModel) => ParameterViewModel[];
rowSubmitted: (row: DialogViewModel) => boolean;
rowTooltip: (row: DialogViewModel) => string;
rowMessage: (row: DialogViewModel) => string;
rowDisabled: (row: DialogViewModel) => boolean;
get count(): string;
invokeAndAdd(index: number): void;
close: () => void;
private createForm;
setMultiLineDialog(holder: Ro.MenuRepresentation | Ro.DomainObjectRepresentation | CollectionViewModel, newDialogId: string, routeData: PaneRouteData, actionViewModel?: ActionViewModel): void;
protected setup(routeData: PaneRouteData): void;
focus(parms: QueryList<ParametersComponent>): void;
ngAfterViewInit(): void;
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<MultiLineDialogComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<MultiLineDialogComponent, "nof-multi-line-dialog", never, {}, {}, never, never, false, never>;
}