ADF 2.5.0 Release Note

cancel
Showing results for 
Search instead for 
Did you mean: 

ADF 2.5.0 Release Note

eugenio_romano
Alfresco Employee
6 4 6,979

Alfresco Application Development Framework, version 2.5.0 Release Note

These release notes provide information about the 2.5.0 release of the Alfresco Application Development Framework.

This is the latest General Available release of the Application Development Framework, which contains the Angular components to build a Web Application on top of the Alfresco Platform.

The release can be found on GitHub at this location.

New name packages

"@alfresco/adf-content-services" : "2.5.0"
"@alfresco/adf-process-services" : "2.5.0"
"@alfresco/adf-core‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍" : "2.5.0"
"@alfresco/adf-insights‍‍‍‍" : "2.5.0"‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

Goals for this release

In this release we have focused on updating the version of the Angular and Material libraries from 5 to 6. The team has also spent part of the sprints improving the e2e test coverage.
We truly believe in TDD and the whole library has a unit test coverage of 90%. The e2e coverage is still partly achieved with manual work but this is due to a technical debt that we want to fix. The commitment of the team to increasing the coverage of the automatic e2e tests is an added guarantee of the quality and stability that we want delivery in ADF.
Amongst all this hard work, we also found a little time to add some new functionality and fix bugs.

 

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.

Notable new features

Below are the most important new features of this release:

 

  • Update Angular 6 and Material 6 

  • Search Improvements
  • General Header component
  • Card view new property types rendering
  • Default metadata properties hide/show property
  • NotificationService expose MatSnackBarConfig
  • Dynamic Table - Datetime widget
  • Attach a form to a standalone Task
  • Task list/Process list processDefinitionId filter                                      

Angular 6

Update Angular 6 and Material 6

In this release, we have updated our direct dependency on the Angular and Material libraries from version 5 to 6. In forthcoming releases, this will allow us to use some of the new improvements released in the last major version. The update of our direct dependency is also a good habit that we always follow for security reasons.

Search Improvements

  • You can now select multiple buckets for the facet result. All buckets from the same facet are combined with logical "OR", so you can select "JPEG" and "PNG" for the "content.mimetype" for example.
  • Facet fields and queries now respect the order of declaration in the application configuration file. When rendering query results, the Search Filter uses the order of declaration.
  • Facet buckets get the numbers automatically updated based on user interaction.
Empty Page State

General Header component

This component is a reusable header for Alfresco applications. It displays a customizable header that can be reused. Use the input properties to configure the left side (title, button) and the primary color of the header. The right side of the header can contain other components which are transcluded in the header component.



<adf-layout-header
    title="title"
    logo="logo.png"
    [redirectUrl]="'/home'"
    color="primary"
    (toggled)=toggleMenu($event)>
    .......
</adf-layout-header>



For more information about this component please refer to the official documentation.

Metadata default property

Default metadata properties hide/show

In ADF 2.5.0 you can now customize the metadata card with the option of showing or hiding the default properties of the file.

<adf-content-metadata-card .......
                           [displayEmpty]="false">

</adf-content-metadata-card>
Card view

Card view new property types rendering

Two new property types are now available in the card view: 
new CardViewKeyValuePairsItemModel({
    label: 'CardView Key-Value Pairs Item',
    value: [],
    key: 'key-value-pairs',
    editable: this.isEditable
}),
new CardViewSelectItemModel({
    label: 'CardView Select Item',
    value: 'one',
    options$: of([{ key: 'one', label: 'One' }, { key: 'two', label: 'Two' }]),
    key: 'select',
    editable: this.isEditable
}),
KeyValuePairs is a map key value that is rendered as shown in the image to the left. It uses a nicely-formatted table that allows also for easy editing.

ViewSelectItem is a selectBox that allows you to limit the set of possible values for a property.

For more information about this component please refer to the official documentation.

Notification

NotificationService customizability improvement

The NotificationService now exposes a new input parameter to allow a full customization of the notification message:

  • Direction : Text layout direction for the snack bar.
  • Duration : The length of time in milliseconds to wait before automatically dismissing the snack bar.
  • Horizontal Position : The horizontal position to place the snack bar.
  • Vertical Position : The vertical position to place the snack bar.
  • panelClass :  Extra CSS classes to be added to the snack bar container.
For more information about this component please refer to the official documentation.

Datetime datatable

Dynamic Table - Datetime widget

You can now render DateTime items in the dynamic table of a form.

Standalone task

Attach a form to a standalone Task

You can now attach a form to a new task that is not part of a Process using the task-standalone component 

<adf-task-standalone
    [taskName]= "taskname">
</adf-task-standalone>

For more information about this component please refer to the official documentation. 

 

Task List new processDefinitionId The Definition Id of the process

Task list/Process list processDefinitionId filter

A new input parameter processDefinitionId has been added to the Tasklist and the Processlist to allow you to filter the list by processDefinitionId.

Lazy loading improvements

You can now use ADF libraries with the lazy-loaded feature modules. Every ADF library now supports "forRoot" and "forChild" semantics for the main modules.

For example, you should use "CoreModule.forRoot()" in the main application module, and "CoreModule.forChild()" in the lazy modules.

Localization

This release includes: French, German, Italian, Spanish, Japanese, Dutch, Norwegian (Bokmål), Russian, Brazilian Portuguese and Simplified Chinese versions.

References

Below you can find a brief list of references to help you start using the new release.

Official GitHub Project - alfresco-ng2-components

Getting started guides with Alfresco Application Development Framework

Component catalog

Gitter chat supporting Alfresco ADF

ADF examples

List of all components

Alfresco-JS-API

ADF App Generator 

Please refer to the official documentation for further details and suggestions.

Issues addressed

Release Notes - Apps Development Framework - Version 2.5.0

Documentation

  • [ADF-3288] - Update version upload documentation

Feature

  • [ADF-2494] - Task Standalone - Provide a way to attach a form
  • [ADF-2671] - When user doesn't have permissions, a tooltip should be showed
  • [ADF-2927] - Add Clear all button to facet fields and facet queries
  • [ADF-3103] - Task List - Provide a way to filter the list by ProcessDefinitionId
  • [ADF-3141] - ADF-ProcessList Enanchement
  • [ADF-3149] - Create fake Report Issues page for Error Component
  • [ADF-3193] - CardView item key-value pair properties
  • [ADF-3237] - Task Details - Create a way to change and remove a form
  • [ADF-3267] - Dynamic Table - The boolean column should render Yes/No value
  • [ADF-3268] - Dynamic Table - Add the datetime widget
  • [ADF-3274] - Start Task - Use the people widget instead of the people list
  • [ADF-3275] - ADF Card view combobox
  • [ADF-3284] - ProcessFilter - the method ng doesn't check the property filterParam
  • [ADF-3286] - NotificationService expose MatSnackBarConfig
  • [ADF-3299] - Upgrade Angular
  • [ADF-3300] - Upgrade Angular Material Design
  • [ADF-3308] - ProcessList Component - Provide a way to filter the list by fields
  • [ADF-3366] - Update Site details

Epic

  • [ADF-3177] - General ADF Header component

Story

  • [ADF-2131] - Search sorting (P1)
  • [ADF-2563] - Upload new version information options
  • [ADF-3367] - Multi-selection on facets
  • [ADF-3372] - Ability to hide/show "Properties" Content Metadata Card

Bug

  • [ADF-2669] - Delete version confirmation dialog has wrong 'cancel' color
  • [ADF-2765] - Card view has broken layout in demo shell
  • [ADF-2769] - Search on document picker not working - when having custom dropdown defined.
  • [ADF-2854] - [Demo shell] User is not redirected to active process when completing the first task as initiator
  • [ADF-2876] - Activiti Form - Complete button does not get enabled when logged in as Active Directory users.
  • [ADF-2962] - Can't reach the Hide/Show password icon using tab key
  • [ADF-3157] - Comma in file name causes problems in Chrome browser #3458
  • [ADF-3172] - the task list is not correctly updated after creating a new task assigned to someone else
  • [ADF-3199] - Datatable columns are not aligned.
  • [ADF-3214] - PathElementEntity is missing properties
  • [ADF-3255] - [Login page] -> The user remain logged on even the 'Remember me' checkbox unchecked
  • [ADF-3283] - CLONE - Thumbs.db files are uploading with a folder upload
  • [ADF-3289] - AppsDefinitionApi contains two methods with same name and different firms
  • [ADF-3292] - CLONE - Filter category should be deselected when user makes a new search query
  • [ADF-3294] - CLONE - DND - uploading folder into a folder fails
  • [ADF-3298] - CardViewSelectItemComponent has the label twice
  • [ADF-3301] - Error thrown when user downloads from DocumentList
  • [ADF-3309] - Files with pptx extension are not generated first time
  • [ADF-3324] - Preview - unshared file breaks preview
  • [ADF-3328] - Page title not translated on reloads
  • [ADF-3361] - Search on document picker returns 0 results after change in adf-sites-dropdown
  • [ADF-3362] - Search on document picker with custom site list has problems
  • [ADF-3365] - ADF search filter component doesn't provide the option to control the order of the facets
  • [ADF-3373] - Refresh button is not displayed on the form
  • [ADF-3383] - Incorrect datatype for password in PersonBodyCreate in index.d.ts
  • [ADF-3386] - Task Filters accordion is not expanding / collapsing
  • [ADF-3406] - Search chips do not remove queries
  • [ADF-3424] - Start Task - the Autocomplete shows an Object
  • [ADF-3426] - The translation not working properly
  • [ADF-3445] - Document list is not refreshed after editing the name of a folder
  • [ADF-3448] - Menu dropdown is not properly displayed after right clicking on a node
  • [ADF-3449] - Reports calendar is not displaying day numbers
  • [ADF-3450] - The colour of the custom toolbar enabled icons is changing to white when selecting other colour
  • [ADF-3451] - Setting PageSize 0 to content mimeType of facet no type is showed
  • [ADF-3452] - Show file - active form
  • [ADF-3456] - Context menu is not displayed when right clicking on a row on document list
  • [ADF-3459] - Putting invalid format date in Create Date Range filter doesn't show the correct error
  • [ADF-3461] - Search results sorting by Author isn't working properly
  • [ADF-3463] - Process Heat Map doesn't display all the information

Task

  • [ADF-2506] - Create automated test for empty process list
  • [ADF-3018] - Create automated test for apps > replacing
  • [ADF-3030] - Move ADF E2E tests
  • [ADF-3259] - Consolidate login component
  • [ADF-3273] - Consolidating the User info component
  • [ADF-3305] - Expose the alfresco logo image
  • [ADF-3321] - Share the knowledge - APS - ADF
  • [ADF-3329] - Create automated tests for datatable component
  • [ADF-3330] - Create automated tests for Uploader component
  • [ADF-3334] - Create automated tests for Task list - Start Task
  • [ADF-3335] - Create automated tests for Task filters component
  • [ADF-3336] - Create automated tests for Document List
  • [ADF-3337] - Create automated tests for Process filters component
  • [ADF-3339] - Create component in demo-shell to facilitate the testing of the header component
  • [ADF-3344] - Setup Automation test framework in ADF
  • [ADF-3358] - Possibility to set a hyperlink on logo - header component
  • [ADF-3359] - Make header background color fully customizable
  • [ADF-3360] - Possibility to customize tooltip-text on logo - Header component
  • [ADF-3363] - Create automated tests for Info drawer
  • [ADF-3370] - Create automated tests for process filters - sorting
  • [ADF-3374] - Commenting on files (Adding / Viewing)
  • [ADF-3380] - Provide lazy loading support for the Viewer
  • [ADF-3384] - Create automated tests for Version Component
  • [ADF-3388] - Create automated tests for Notification Component
  • [ADF-3399] - Create an automated test to cover Header component tests.
  • [ADF-3407] - Create tests to cover comment functionality on Content Services PT1
  • [ADF-3418] - Add the new localised Files
  • [ADF-3419] - Update Generator App to 2.5.0
  • [ADF-3420] - Release Note 2.5.0
  • [ADF-3439] - Create automated test for Header component (update).

Feature Bug

  • [ADF-3091] - User can't access the action toolbar for "Version Manager" in info drawer panel
  • [ADF-3092] - User can't upload a new version for a file from the info drawer panel
  • [ADF-3178] - [Demo Shell] Not able to login to APS when SSO is selected in settings
  • [ADF-3400] - CLONE - The filter facets number are not updated when another filter facet item is applied
  • [ADF-3409] - Attach form button is always displayed as enabled
  • [ADF-3410] - Required fields on a form are not displayed on a read-only mode.
  • [ADF-3413] - Form name still displayed after removing form

Feature (Task)

  • [ADF-3031] - Moving of E2E tests
  • [ADF-3032] - Refactor APS/ACS API calls
  • [ADF-3033] - Refactor related bamboo jobs
  • [ADF-3034] - Document running of tests
  • [ADF-3136] - Create automated test for attachment list > menu functionality for Tasks.
  • [ADF-3137] - Create automated tests for Attachment list - complete task
  • [ADF-3317] - Upload file - TaskList - Task App
  • [ADF-3319] - Empty list component
  • [ADF-3369] - Add 'showHeaderContent' property of adf-task-details set on false on Demo-Shell

Please refer to the Alfresco issue tracker for other known issues in this release. If you have any questions about the release, please contact us using gitter .

4 Comments
sai401
Member II

I am getting these errors while ng build......

Cannot find name 'ResponseFacetField'.

Property '$field' does not exist on type 'FacetFieldBucket'. Did you mean 'field'?

Property '$checked' does not exist on type 'FacetFieldBucket'. Did you mean 'checked'?

eugenio_romano
Alfresco Employee

You are right the ResponseFaceField is not exported anymore, you can use FacetField

export interface FacetField {
field: string;
label: string;
mincount?: number;
limit?: number;
offset?: number;
prefix?: string;
buckets?: SearchFilterList<FacetFieldBucket>;
pageSize?: number;
currentPageSize?: number;
checked?: boolean;
}

this is the old one

export interface ResponseFacetField {
label: string;
buckets: SearchFilterList<FacetFieldBucket>;
pageSize?: number;
currentPageSize?: number;
expanded?: boolean;
}‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍
sai401
Member II

what about expanded?:boolean field in FacetField it is not there?

eugenio_romano
Alfresco Employee

this is in the SearchCategory