[AAE-10769] remove alfresco deps from datatable (#8045)

* remove alfresco dep

* [ci:force] move data-column in datatable

* new datatable service

* doc

* required changes

* fix

* fix
This commit is contained in:
Eugenio Romano
2023-01-04 09:08:03 +01:00
committed by GitHub
parent 85429b4cf1
commit 4da74f1c07
30 changed files with 361 additions and 135 deletions

View File

@@ -24,8 +24,10 @@ project.
- [Library updates](#library-updates)
- [Breaking changes](#breaking-changes)
- [Deprecated items](#deprecated-items)
- [DataColumnModule](#datacolumnmodule)
- [PaginationModel](#paginationmodel)
- [Relocated classes](#relocated-classes)
- [Update Data-table or Document List after a node change](#update-data-table-or-document-list-after-a-node-change)
- [NodeNameTooltipPipe](#nodenametooltippipe)
- [nodeUpdated Subject](#nodeupdated-subject)
- [Renamed items](#renamed-items)
@@ -66,13 +68,12 @@ in 6.0. See also our
For more information about the changes and links to the associated
pull requests.
[TODO ADD HERE the PRs ]
[`CheckAllowableOperationDirective`](../content-services/directives/check-allowable-operation.directive.md): Moved from ADF Core to ADF content services
[LibraryFavoriteDirective](../../lib/content-services/src/lib/directives/library-favorite.directive.ts): Moved from ADF Core to ADF content services
[LibraryMembershipDirective](../../lib/content-services/src/lib/directives/library-membership.directive.ts): Moved from ADF Core to ADF content services
[NodeDeleteDirective](../content-services/directives/node-delete.directive.md): Moved from ADF Core to ADF content services
[NodeFavoriteDirective](../content-services/directives/node-favorite.directive.md): Moved from ADF Core to ADF content services
[NodeRestoreDirective](../content-services/directives/node-restore.directive.md): Moved from ADF Core to ADF content services
[TODO ADD HERE the PRs ][`checkallowableoperationdirective`](../content-services/directives/check-allowable-operation.directive.md): Moved from ADF Core to ADF content services
[`LibraryFavoriteDirective`](../../lib/content-services/src/lib/directives/library-favorite.directive.ts): Moved from ADF Core to ADF content services
[`LibraryMembershipDirective`](../../lib/content-services/src/lib/directives/library-membership.directive.ts): Moved from ADF Core to ADF content services
[`NodeDeleteDirective`](../content-services/directives/node-delete.directive.md): Moved from ADF Core to ADF content services
[`NodeFavoriteDirective`](../content-services/directives/node-favorite.directive.md): Moved from ADF Core to ADF content services
[`NodeRestoreDirective`](../content-services/directives/node-restore.directive.md): Moved from ADF Core to ADF content services
[TODO ADD HERE the PRs ]
Each section needs to contains:
@@ -82,6 +83,29 @@ How to fix it:
## Deprecated items
### DataColumnModule
[`DataColumnModule`](../../lib/core/src/lib/datatable/data-column/data-column.module.ts) has been deprecated and moved in [`DataTableModule`](../../lib/core/src/lib/datatable/datatable.module.ts)
v6.0.0 and before:
@NgModule({
imports: [
```
DataColumnModule,
DataTableModule
```
])
v6.0.0 and after:
@NgModule({
imports: [
```
DataTableModule,
```
])
### PaginationModel
`Pagination` model from `@alfresco/js-api` has been now deprecated in favour of internal implementated model [`PaginationModel`](../../lib/core/src/lib/models/pagination.model.ts) evrywhere
@@ -95,23 +119,61 @@ How to fix it:
| `SitesService` | `@alfresco/adf-core` | `@alfresco/adf-content-services` |
| `SearchService` | `@alfresco/adf-core` | `@alfresco/adf-content-services` |
| `AppsProcessService` | `@alfresco/adf-core` | `@alfresco/adf-process-services` |
| [`CheckAllowableOperationDirective`](../content-services/directives/check-allowable-operation.directive.md)| `@alfresco/adf-core` | `@alfresco/adf-content-services` |
| [`LibraryFavoriteDirective`](../../lib/content-services/src/lib/directives/library-favorite.directive.ts)| `@alfresco/adf-core` | `@alfresco/adf-content-services` |
| [`LibraryMembershipDirective`](../../lib/content-services/src/lib/directives/library-membership.directive.ts)| `@alfresco/adf-core` | `@alfresco/adf-content-services` |
| [`NodeDeleteDirective`](../content-services/directives/node-delete.directive.md)| `@alfresco/adf-core` | `@alfresco/adf-content-services` |
| [`NodeFavoriteDirective`](../content-services/directives/node-favorite.directive.md)| `@alfresco/adf-core` | `@alfresco/adf-content-services` |
| [`NodeRestoreDirective`](../content-services/directives/node-restore.directive.md)| `@alfresco/adf-core` | `@alfresco/adf-content-services` |
| [`AppsProcessService`] | `@alfresco/adf-core` | `@alfresco/adf-process-services` |
Following classes have been relocated:
### Update Data-table a data change
The following directives have been moved from the Core library to the Content Services
library. You should modify your code to import these classes from
`@alfresco/adf-content-services`.
v6.0.0 and after You will need to provide a ```DataTableService``` to update a row of your table.
The model to update the DataTable require the ID of the row you want change and the new data Object of the row
- [`CheckAllowableOperationDirective`](../content-services/directives/check-allowable-operation.directive.md)
- [`LibraryFavoriteDirective`](../../lib/content-services/src/lib/directives/library-favorite.directive.ts)
- [`LibraryMembershipDirective`](../../lib/content-services/src/lib/directives/library-membership.directive.ts)
- [`NodeDeleteDirective`](../content-services/directives/node-delete.directive.md)
- [`NodeFavoriteDirective`](../content-services/directives/node-favorite.directive.md)
- [`NodeRestoreDirective`](../content-services/directives/node-restore.directive.md)
```typescript
DataRowUpdateModel {
obj: any;
id: string;
}
```
For example if your table use entry nodes you can pass:
```typescript
this.dataTableService.rowUpdate.next({id: node.id, obj: {entry: node}});
```
As good practice is better to provide a DataTableService in the component where you are going to deliver the new object
```typescript
@Component({
selector: 'app-files-component',
templateUrl: './files.component.html',
styleUrls: ['./files.component.scss'],
encapsulation: ViewEncapsulation.None,
providers: [
DataTableService
]
})
export class FilesComponent implements OnInit {
constructor(private dataTableService: DataTableService,
private nodeService: NodesApiService) {
}
ngOnInit() {
this.nodeService.nodeUpdated.subscribe((node) => {
this.dataTableService.rowUpdate.next({id: node.id, obj: {entry: node}});
});
}
```
### NodeNameTooltipPipe
[NodeNameTooltipPipe](../core/pipes/node-name-tooltip.pipe.md) has been moved in the `@alfresco/adf-content-services` in `ContentPipeModule`
[`NodeNameTooltipPipe`](../core/pipes/node-name-tooltip.pipe.md) has been moved in the `@alfresco/adf-content-services` in [`ContentPipeModule`](../../lib/content-services/src/lib/pipes/content-pipe.module.ts)
v6.0.0 and before:
@@ -133,7 +195,7 @@ v6.0.0 and after:
### nodeUpdated Subject
The nodeUpdated [Subject](http://reactivex.io/documentation/subject.html) has been moved from [AlfrescoApiService](../core/services/alfresco-api.service.md) to [NodesApiService](../core/services/nodes-api.service.md)
The nodeUpdated [`Subject`](http://reactivex.io/documentation/subject.html) has been moved from [`AlfrescoApiService`](../core/services/alfresco-api.service.md) to [`NodesApiService`](../core/services/nodes-api.service.md)
v6.0.0 and before: