These release notes provide information for the 1.7.0 release of Alfresco Application Development Framework.
This is the next Limited Available release of Application Development Framework, containing the Angular components to build a Web Application on top of the Alfresco Services.
The release can be found on GitHub at this link.
In the ADF 1.7 release we've had a big focus on Content capabilities. We brought in a new design for the Document List and the Uploader. Quite a few changes has made its way in to the release, breadcrumbs now has multiple modes (drop down and normal) and has been separated from the document list. The pagination component is now separated from the document list and has a new design too, and we've added toolbars to the document list. We will continue this effort to split up into more granular components and improve the design.
We have introduced a "Copy and Move" component that integrates into the document list. The idea is to use the same picker for both forms and document list, i.e use it to select content in a form, or select the destination to copy or move items into. This is still work in progress as some of the features in the picker, such as search highlight didn't make it in time for code freeze. We will continue to improve this in the next release.
This release builds on last month's contains bug fixes and new feature. See the list below for major details.
Please report issues with this release in the issue tracker. You can collaborate on this release or share feedback by using the discussion tools on gitter.
Below the most relevant features of this release:
In the previous release, there was a mixing usage of TAG prefix for all the components ("alfresco-", "activiti-", "adf-" ) . We find out that this approach was quite cumbersome. Now all the component using only the TAG adf- prefix.
The good news is that you don't need to rename your old component because the old name also if are not suggested anymore to use will be still supported. If you want see the complete list of all our components pelase follow this link.
Two new content actions have been added, the "copy" and the "move" for both folders and files. You can define them the same way as you can do it for the existing content actions.
<content-action
icon="content_copy"
target="folder"
title="{{'DOCUMENT_LIST.ACTIONS.FOLDER.COPY' | translate}}"
permission="update"
[disableWithNoPermission]="true"
handler="copy">
</content-action>
<content-action
icon="redo"
target="folder"
title="{{'DOCUMENT_LIST.ACTIONS.FOLDER.MOVE' | translate}}"
permission="update"
[disableWithNoPermission]="true"
handler="move">
</content-action>
DocumentList now provides a site dropdown component to show and interact with the sites of the current user.
<adf-sites-dropdown
(change)="getSiteContent($event)">
</adf-sites-dropdown>
adf-toolbar is an easy container for headers, titles, actions, breadcrumbs.
<adf-toolbar title="Toolbar">
<adf-toolbar-title>
<adf-breadcrumb ...></adf-breadcrumb>
</adf-toolbar-title>
<button md-icon-button>
<md-icon>create_new_folder</md-icon>
</button>
<button md-icon-button>
<md-icon>delete</md-icon>
</button>
</adf-toolbar>
Is now possible add an ignore list for files that you don't want to allow upload on your CS. The configuration of this service is made through the config service
In the example below, you can see how filtered out the: '.git', '.DS_Store' and 'desktop.ini'.
```json
{
"ecmHost": "http://localhost:3000/ecm",
"bpmHost": "http://localhost:3000/bpm",
"application": {
"name": "Alfresco"
},
"files": {
"excluded": [".DS_Store", "desktop.ini", ".git"]
}
}
```
Start Process task form has been redesigned :
This component shows all the basic information of a process.
<adf-process-instance-header
processInstance="localProcessDetails">
</adf-process-instance-details>
The component is using the adf-card-view component to render all the information like a card.
From now, it is possible to delete files (if you have permission) from within the search results.
This action will do delete the particular file from your contents and NOT just from the search results.
You can now customize the copyright text in the adf-login component using the copyrightText property:
copyrightText | string | Your custom Copyright All Rights Reserved. | The copyright text below the login box |
The due date and the description of the task details are now editable and integrate into the adf-task-header component
Application Configuration Service (AppConfigService) gets support for dynamic variable substitution for APS and ACS endpoint settings.
It is now possible having a configuration like given below:
{
"ecmHost": "http://{hostname}:{port}/ecm",
"bpmHost": "http://{hostname}:{port}/bpm",
"application": {
"name": "Alfresco"
}
}
At runtime, the "hostname" and "port" variables will be automatically replaced with the actual values taken from the client machine. This helps reducing overhead with having multiple CI and E2E environments, all environments can use the same config file.
You can see more details on this feature in the following article: Variable substitution in configuration strings
Developers have now a possibility storing and retrieving user preferences for either ADF or custom components.
@Component({...})
class AppComponent {
constructor(userPreferences: UserPreferencesService) {
userPreferences.set('myProperty1', 'value1');
userPreferences.set('myProperty2', 'value2');
console.log(
userPreferences.get('myProperty1')
);
}
}
The UserPreferencesService provides an API needed to store preferences based on different profiles. You can now have multiple users on the same machine with different set of preferences (like pagination size, authentication type, etc.).
With the current ADF version, we got a Pipe that has the goal to highlight a specific term found in the text. Basically, when the term has been found, a CSS class is added to the HTML code. By doing so it will be easy to customise the colour just overriding the CSS class.
Note that the Pipe can be used in all the template where this behaviour is needed, but at the moment we are using that only inside the search result.
You can now customize the document list style row based on the permissions of the node. For more information about this feature please follow this link.
Two new methods has been added into the alfresco-js-api to support retrieve the audit informations inside the process service:
ActivitiPublicRestApi.TaskApi | getTaskAuditJson | GET /api/enterprise/tasks/{taskId}/audit | Retrieve audit infromation in json format |
ActivitiPublicRestApi.TaskApi | getTaskAuditPdf | GET /app/rest/tasks/{taskId}/audit | Retrieve the task audit infromation in pdf format |
for further details about those endepoints please refer to the official documentation
In the ng2-alfresco-core component, there are a lot of services that you can use out of the box outside our component and you can find the complete list here
The list below is the list of the new services added in 1.7.0:
With the goal to make even easy contribute to our project, we have created a new Contribution guide to help all the people the community to contribute to the ADF code.
To make the contribution process smooth we have also added an automatic CLA ( Contributor License Agreement ) in our GitHub CI.
Below you can find a brief list of references to help you starting to use the new release.
Official GitHub Project - alfresco-ng2-components
Getting started guides with Alfresco Application Development Framework
Gitter chat supporting Alfresco ADF
Please refer to the official documentation for further details and suggestions.
Below you can find a detailed list of tickets addressed in the new release. For a better understanding, the list is grouped by topic.
Release Notes - Apps Development Framework - Version 1.7.0
Please refer to the Alfresco issue tracker for other known issues in this release. If you have more questions, please reply here or contact us using gitter.
Blog posts and updates about Application Development Framework (ADF).
By using this site, you are agreeing to allow us to collect and use cookies as outlined in Alfresco’s Cookie Statement and Terms of Use (and you have a legitimate interest in Alfresco and our products, authorizing us to contact you in such methods). If you are not ok with these terms, please do not use this website.