* move shared link in content and deprecate unused dialog service * Update public-api.ts * fix * fix demoshell
8.6 KiB
Title
| Title |
|---|
| Upgrading from ADF v5.0 to v6.0 |
Upgrading from ADF v5.0 to v6.0
This guide explains how to upgrade your ADF v5.0 project to work with v6.0.
Do not skip this task, if you want your application to be updated to a most recent version of ADF. Upgrades of multiple versions of ADF cannot be done in one step only, but should follow the chain of sequential updates.
Note: the steps described below might involve making significant changes to your code. If you are working with a versioning system then you should commit any changes you are currently working on. If you aren't using versioning then be sure to make a backup copy of your project before going ahead with the upgrade.
Since 6.0 is a major version release, there are breaking changes you need to take into account as well as the usual library updates. After updating the libraries, check the other sections to see if any of the changes affect your project.
Contents
Library updates
-
Update the
package.jsonfile with the latest library versions:"dependencies": { ... "@alfresco/adf-core": "6.0.0", "@alfresco/adf-content-services": "6.0.0", "@alfresco/adf-process-services-cloud": "6.0.0", "@alfresco/adf-insights": "6.0.0", "@alfresco/js-api": "6.0.0", ... -
Clean your old distribution and dependencies by deleting
node_modulesandpackage-lock.json. -
Reinstall your dependencies
npm install
Breaking changes
The ADF project follows the semver conventions and so we only make breaking changes (ie, not backward-compatible) in major versions. ADF 6.0 is the first major version since general availability so a number of deprecated items have been removed and also some existing items have been renamed. The sections below explain how to adapt your project to the changes 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: Moved from ADF Core to ADF content services
LibraryFavoriteDirective: Moved from ADF Core to ADF content services
LibraryMembershipDirective: Moved from ADF Core to ADF content services
NodeDeleteDirective: Moved from ADF Core to ADF content services
NodeFavoriteDirective: Moved from ADF Core to ADF content services
NodeRestoreDirective: Moved from ADF Core to ADF content services
[TODO ADD HERE the PRs ]
Each section needs to contains: Title Description How to fix it:
Deprecated items
| Class | Before | After |
|---|---|---|
LoginDialogService |
@alfresco/adf-core |
DataColumnModule
DataColumnModule has been deprecated and moved in DataTableModule
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 evrywhere
Relocated classes
| Class | Before | After |
|---|---|---|
VersionCompatibilityService |
@alfresco/adf-core |
@alfresco/adf-content-services |
VersionCompatibilityDirective |
@alfresco/adf-core |
@alfresco/adf-content-services |
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 |
@alfresco/adf-core |
@alfresco/adf-content-services |
LibraryFavoriteDirective |
@alfresco/adf-core |
@alfresco/adf-content-services |
LibraryMembershipDirective |
@alfresco/adf-core |
@alfresco/adf-content-services |
NodeDeleteDirective |
@alfresco/adf-core |
@alfresco/adf-content-services |
NodeFavoriteDirective |
@alfresco/adf-core |
@alfresco/adf-content-services |
NodeRestoreDirective |
@alfresco/adf-core |
@alfresco/adf-content-services |
[AppsProcessService] |
@alfresco/adf-core |
@alfresco/adf-process-services |
SharedLinksApiService |
@alfresco/adf-core |
@alfresco/adf-process-services |
LockService |
@alfresco/adf-core |
@alfresco/adf-process-services |
FavoritesApiService |
@alfresco/adf-core |
@alfresco/adf-process-services |
Update Data-table a data change
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
DataRowUpdateModel {
obj: any;
id: string;
}
For example if your table use entry nodes you can pass:
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
@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 has been moved in the @alfresco/adf-content-services in ContentPipeModule
v6.0.0 and before:
@NgModule({
imports: [
````
PipeModule
````
]})
v6.0.0 and after:
@NgModule({
imports: [
````
ContentPipeModule
````
]})
nodeUpdated Subject
The nodeUpdated Subject has been moved from AlfrescoApiService to NodesApiService
v6.0.0 and before:
this.alfrescoApiService.nodeUpdated.pipe .....
v6.0.0 and after:
this.nodesApiService.nodeUpdated.pipe .....
Comments component
adf-comments component is now a real presentational components. The taskId and nodeId has now renamed to id
The adf-comments has now two specialization in :
adf-node-commentsNode Comments Componenadf-task-commentsTask Comments Component