Overview
TheDataLinkManagerComponent is a standalone Angular component that provides a high-level interface for managing datalinks on an Alfresco node. It orchestrates the DatalinkListComponent and handles user actions.
Import
Selector
Component Configuration
Inputs
The Alfresco node ID to manage datalinks for
Outputs
Emitted when a datalink list item is selected. Returns the selection array.
Properties
toggleStatus
datalinkList
DatalinkListComponent for programmatic control.
Methods
ngOnInit
Lifecycle hook called after component initialization.onSelect
Handles selection events from the datalink list.Array of selected datalink items
select output EventEmitter.
onError
Handles error events by dispatching a snackbar error action.Error message to display in the snackbar
SnackbarErrorAction to the NgRx store.
onUpdate
Reloads the datalink list after updates.reload() on the child DatalinkListComponent.
openAddDatalinkDialog
Opens the dialog for adding a new datalink.Click event from the UI
DatalinkListComponent.openAddDatalinkDialog().
removeSelectionRows
Deletes selected datalink rows.Click event from the UI
DatalinkListComponent.deleteSelectRows().
Usage Example
Template Structure
The component template includes:- Child
DatalinkListComponentwith#datalinkListtemplate reference - Event bindings for selection, errors, and updates
Implementation Details
Architecture
The manager component follows a facade pattern:- Orchestration: Manages child component interactions
- Event Delegation: Forwards events to child components
- Error Handling: Dispatches errors to the NgRx store
- Standalone: Uses Angular’s modern standalone component model
Integration with NgRx Store
The component integrates with the ACA shared store:- Uses
Store<AppStore>for state management - Dispatches
SnackbarErrorActionfor error notifications - Follows the ACA extension patterns
Dependencies
@angular/core: Angular framework@angular/common: CommonModule@ngrx/store: NgRx state management@alfresco/aca-shared/store: ACA shared store types
See Also
- Datalink List Component - Child component managed by this component
- VenziaDatalinkService - Service for opening datalink dialogs
- Frontend Extension - Overview of the Angular library
