alfresco-ng2-components/docs/core/node-favorite.directive.md
Andy Stark e03f3a1a6b [ADF-3323] Fixed broken links in doc files (#3662)
* [ADF-3323] Fixed URL path to Typescript source files

* [ADF-3323] Fixed and checked broken links caused by previous bug
2018-08-14 15:42:45 +01:00

2.0 KiB

Added, Status, Last reviewed
Added Status Last reviewed
v2.0.0 Active 2018-04-10

Node Favorite directive

Selectively toggles nodes as favorites.

Basic Usage

<adf-toolbar>
    <button mat-icon-button
            (toggle)="done()"
            [adf-node-favorite]="documentList.selection">
    </button>
</adf-toolbar>

<adf-document-list #documentList ...>
 ...
</adf-document-list>
@Component({
    selector: 'my-component'
})
export class MyComponent {

    done() {
        // ...
    }

}

Class members

Properties

Name Type Default value Description
selection MinimalNodeEntity[] [] Array of nodes to toggle as favorites.

Events

Name Type Description
error EventEmitter<any> Emitted when the favorite setting has fail.
toggle EventEmitter<any> Emitted when the favorite setting is complete.

Details

You can bind the directive instance to a template variable through the adfFavorite reference, which also lets you add extra styling to the element:

<button
    mat-menu-item
    #selection="adfFavorite"
    [ngClass]="{ 'icon-highlight': selection.hasFavorites() }"
    [adf-node-favorite]="documentList.selection">
    <mat-icon [ngClass]="{ 'icon-highlight': selection.hasFavorites() }">
        {{ selection.hasFavorites() ? 'star' : 'star_border' }}
    </mat-icon>
</button>

The directive behaves as follows:

  • If there are no favorite nodes in the selection, then all are marked as favorites
  • If there are one or more favorite node in the selection, then only those that are not favorites are marked
  • If all nodes in the selection are favorites, then they all have their favorite status removed

See the Demo Shell for examples of usage.