@praxisui/page-builder
Version:
Page and widget builder utilities for Praxis UI (grid, dynamic widgets, editors).
135 lines (127 loc) • 6.29 kB
TypeScript
import { MatDialogRef, MatDialog } from '@angular/material/dialog';
import * as i0 from '@angular/core';
import { EventEmitter, OnInit, OnChanges, SimpleChanges } from '@angular/core';
import { ComponentDocMeta, ComponentMetadataRegistry, GridPageDefinition, GridWidgetInstance, WidgetConnection } from '@praxisui/core';
import { MatSnackBar } from '@angular/material/snack-bar';
declare const PLACEHOLDER = 1;
interface ConfirmDialogData {
title?: string;
message?: string;
confirmLabel?: string;
cancelLabel?: string;
icon?: string;
}
declare class ConfirmDialogComponent {
data: ConfirmDialogData;
ref: MatDialogRef<ConfirmDialogComponent, boolean>;
constructor(data: ConfirmDialogData, ref: MatDialogRef<ConfirmDialogComponent, boolean>);
static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmDialogComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<ConfirmDialogComponent, "praxis-confirm-dialog", never, {}, {}, never, never, true, never>;
}
declare class TileToolbarComponent {
selected: boolean;
widgetType: string | null;
remove: EventEmitter<void>;
settings: EventEmitter<void>;
static ɵfac: i0.ɵɵFactoryDeclaration<TileToolbarComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<TileToolbarComponent, "praxis-tile-toolbar", never, { "selected": { "alias": "selected"; "required": false; }; "widgetType": { "alias": "widgetType"; "required": false; }; }, { "remove": "remove"; "settings": "settings"; }, never, never, true, never>;
}
declare class FloatingToolbarComponent {
visible: boolean;
canUndo: boolean;
canRedo: boolean;
add: EventEmitter<void>;
undo: EventEmitter<void>;
redo: EventEmitter<void>;
settings: EventEmitter<void>;
preview: EventEmitter<void>;
connections: EventEmitter<void>;
connectionsEdit: EventEmitter<void>;
connectionsVisual: EventEmitter<void>;
save: EventEmitter<void>;
static ɵfac: i0.ɵɵFactoryDeclaration<FloatingToolbarComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<FloatingToolbarComponent, "praxis-floating-toolbar", never, { "visible": { "alias": "visible"; "required": false; }; "canUndo": { "alias": "canUndo"; "required": false; }; "canRedo": { "alias": "canRedo"; "required": false; }; }, { "add": "add"; "undo": "undo"; "redo": "redo"; "settings": "settings"; "preview": "preview"; "connections": "connections"; "connectionsEdit": "connectionsEdit"; "connectionsVisual": "connectionsVisual"; "save": "save"; }, never, never, true, never>;
}
interface ComponentPaletteData {
title?: string;
allowedWidgetIds?: string[];
allowedWidgetTags?: string[];
predicate?: (m: ComponentDocMeta) => boolean;
}
declare class ComponentPaletteDialogComponent implements OnInit {
private dialogRef;
private registry;
data?: ComponentPaletteData | undefined;
query: string;
private all;
filtered: i0.Signal<ComponentDocMeta[]>;
density: i0.Signal<"roomy" | "dense" | "normal">;
constructor(dialogRef: MatDialogRef<ComponentPaletteDialogComponent, string>, registry: ComponentMetadataRegistry, data?: ComponentPaletteData | undefined);
ngOnInit(): void;
select(id: string): void;
trackById: (_: number, m: ComponentDocMeta) => string;
getPreview(m: ComponentDocMeta): string;
private _adjustSizeEffect;
private applyFilters;
static ɵfac: i0.ɵɵFactoryDeclaration<ComponentPaletteDialogComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<ComponentPaletteDialogComponent, "praxis-component-palette-dialog", never, {}, {}, never, never, true, never>;
}
declare class ConnectionBuilderComponent implements OnInit, OnChanges {
private dialog;
private registry;
private snack;
page?: GridPageDefinition | string;
widgets?: GridWidgetInstance[];
pageChange: EventEmitter<GridPageDefinition>;
private originalSnapshot;
showOnlyIssues: boolean;
showFriendly: boolean;
filterText: string;
groupBy: 'none' | 'from' | 'to' | 'event';
sortBy: 'from' | 'to';
mapPlaceholder: string;
connections: i0.WritableSignal<WidgetConnection[]>;
selectedIndex: i0.WritableSignal<number>;
readonly filteredConnections: i0.Signal<WidgetConnection[]>;
readonly groupedConnections: i0.Signal<{
label: string;
list: WidgetConnection[];
}[]>;
constructor(dialog: MatDialog, registry: ComponentMetadataRegistry, snack: MatSnackBar);
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
isExpanded(i: number): boolean;
toggleExpanded(i: number, ev?: Event): void;
setSortBy(v: 'from' | 'to'): void;
onGroupByChange(): void;
toggleShowOnlyIssues(): void;
toggleFriendly(): void;
trackByIndex: (i: number) => number;
fromLabel(c: WidgetConnection): string;
toLabel(c: WidgetConnection): string;
fromFriendly(c: WidgetConnection): string;
toFriendly(c: WidgetConnection): string;
outputDescription(c: WidgetConnection): string;
inputDescription(c: WidgetConnection): string;
widgetFriendlyNameForKey(key: string): string;
componentIconForKey(key: string): string;
private widgetTypeByKey;
private applyFilters;
private applyGrouping;
private groupByKey;
private sortList;
createNew(): void;
startEdit(index: number, _c: WidgetConnection): void;
startEditByConn(c: WidgetConnection): void;
duplicateConnection(index: number): void;
removeConnection(index: number): void;
connectionStatus(c: WidgetConnection): 'ok' | 'warn' | 'err';
onSave(): void;
openDiagramFor(_c: WidgetConnection): void;
openDiagramFullscreen(): void;
private parsePage;
static ɵfac: i0.ɵɵFactoryDeclaration<ConnectionBuilderComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<ConnectionBuilderComponent, "praxis-connection-builder", never, { "page": { "alias": "page"; "required": false; }; "widgets": { "alias": "widgets"; "required": false; }; }, { "pageChange": "pageChange"; }, never, never, true, never>;
}
export { ComponentPaletteDialogComponent, ConfirmDialogComponent, ConnectionBuilderComponent, FloatingToolbarComponent, PLACEHOLDER, TileToolbarComponent };
export type { ComponentPaletteData, ConfirmDialogData };