--- Title: Release notes v3.0.0 --- # Alfresco Application Development Framework (ADF) version 3.0.0 Release Note These release notes provide information about the **3.0.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](https://github.com/Alfresco/alfresco-ng2-components/releases/tag/3.0.0). If you want to be updated on the [ADF roadmap](../roadmap.md), check the public page [here](../roadmap.md). ## Contents - [New package versions](#new-package-versions) - [Goals for this release](#goals-for-this-release) - [Extensibility](#extensibility) - [Search enhancement](#search-enhancement) - [Single Sign On enhancement](#single-sign-on-enhancement) - [JS-API in Typescript](#js-api-in-typescript) - [Angular 7](#angular-7) - [Create library Component](#create-library-component) - [Tree view component](#tree-view-component) - [Deprecation removal](#deprecation-removal) - [Activiti 7 support (Experimental)](#activiti-7-support-experimental) - [Localization](#localization) - [References](#references) - [Icon Component](#icon-component) - [Issues addressed](#issues-addressed) - [Documentation](#documentation) - [Feature](#feature) - [Epic](#epic) - [Story](#story) - [Bug](#bug) - [Task](#task) - [Feature Documentation](#feature-documentation) - [Feature Bug](#feature-bug) - [Feature (Task)](#feature-task) ## New package versions "@alfresco/adf-content-services" : "3.0.0" "@alfresco/adf-process-services" : "3.0.0" "@alfresco/adf-core" : "3.0.0" "@alfresco/adf-insights" : "3.0.0", "@alfresco/adf-extensions": "3.0.0" ## Goals for this release This is a major release of the Alfresco Application Development Framework, developed to speed up the applications running in production environments, thanks to a porting of the [JS-API](https://github.com/Alfresco/alfresco-js-api) to Typescript. All the benefits of [Extensibility](../user-guide/app-extensions.md), initially introduced in [Alfresco Content Application (ACA)](https://github.com/Alfresco/alfresco-content-app) and the Alfresco Digital Workspace (ADW), are now available at the framework level and more enhancements are planned to be introduced in the following releases. This new major version of ADF has been updated to the latest and greatest [Angular 7](https://angular.io/), together with a first iteration of support for [Activiti 7](https://www.activiti.org/), the next generation Cloud Native implementation of Activiti. Also the [Yeoman App Generator](https://github.com/Alfresco/generator-ng2-alfresco-app) has been updated to let you create five small [Angular CLI](https://cli.angular.io/) based applications to help get you started: one on content only, two on process only (using APS 1.6.4 or higher or using Activiti 7), two on content and process. Please report issues with this release in the [issue tracker](https://github.com/Alfresco/alfresco-ng2-components/issues/new). You can collaborate on this release or share feedback by using the discussion tools on [Gitter](http://gitter.im/Alfresco/alfresco-ng2-components). Below are the most important new features of this release: - [Extensibility](#extensibility) - [Search enhancement](#search-enhancement) - [Single Sign On enhancement](#single-sign-on-enhancement) - [JS-API in Typescript](#js-api-in-typescript) - [Angular 7](#angular-7) - [Create Library Component](#create-library-component) - [Tree view component](#tree-view-component) - [Deprecation removal](#deprecation-removal) - [Activiti 7 support (experimental)](#activiti-7-support-experimental) ### Extensibility Extensibility was first introduced into the [Alfresco Content Application (ACA)](https://github.com/Alfresco/alfresco-content-app) and the Alfresco Digital Workspace (ADW), and has now been moved to the main ADF framework, for the benefit of all developers. The home of extensibility support in the framework is the **@alfresco/adf-extensions** library. Check the documentation [here](https://alfresco.github.io/alfresco-content-app/#/extending/) for further details on how to add extension features to any ADF application. ### Search enhancement #### Grouped facet queries By default, the queries declared in the `facetQueries` are collected into a single collapsible category. This new functionality lets you group different facet queries under custom labels by using the `group` property on those facet queries: ![Grouped Facet Queries](../docassets/images/search-facet-queries-groups.png) Please refer to the [search filter component documentation](../content-services/components/search-filter.component.md#facet-queries) for more details. #### filterWithContains You can now choose to filter facet field results using 'contains' instead of 'starts with', by using the `filterWithContains` boolean property (default is false): ```json { "search": { "filterWithContains": true } } ``` ### Single Sign On enhancement #### SSO ticket fix In order to make the SSO work completely with the new ACS 6.1.0, a new exchange token for alf_ticket mechanism has been introduced via a new flow in the JS-API that performs this operation. For more details about this issue please refer to the [this JIRA ticket](https://issues.alfresco.com/jira/browse/ADF-3882). #### withCredential The `withCredentials` property has been added as a configuration Boolean parameter in the JS-API and in ADF. This indicates whether or not cross-site Access-Control requests should be made using credentials. This configuration is usually needed when you are dealing with **Kerberos**. For more details please see the links below: - [App config withCredentials configuration](../core/services/app-config.service.md) - [Login component withCredentials behaviour](../core/components/login.component.md) - [alfresco-js-api withCredentials PR](https://github.com/Alfresco/alfresco-js-api/pull/358/files) ### JS-API in Typescript The [Alfresco JS-API layer](https://github.com/Alfresco/alfresco-js-api) has been rewritten in [TypeScript](https://en.wikipedia.org/wiki/TypeScript). _Note that the output of the project is still JavaScript code so you can use in the usual way._ This rewrite has been necessary to make the JS-API lighter and faster with the following benefits: - Tree-shakable. - Strong typing enhances code quality and readability. - In the JS-API project, it is now easier to generate new code thanks our code generator template. - TypeScript already provides a number of features that are planned for future version of JavaScript. - Intellisense in your IDE will now work much better with the JS-API Note that the following old package names have been deprecated: **alfresco-js-api**, **alfresco-js-api-node**. The [`Node`](https://github.com/Alfresco/alfresco-js-api/blob/develop/src/api/content-rest-api/docs/Node.md) and Browser version are now both in: **_@alfresco/js-api_** Refer to the official [Alfresco JS-API documenation](https://github.com/Alfresco/alfresco-js-api) to learn more about this. ### Angular 7 Alfresco ADF 3.0.0 has been updated to version 7.0.3 of Angular and Material. Refer to the official project CHANGELOG files to find out what's new inside: - [Angular 7 CHANGELOG](https://github.com/angular/angular/blob/master/CHANGELOG.md) - [Material 7 CHANGELOG](https://github.com/angular/material2/blob/master/CHANGELOG.md) ### Create library Component You can now create a new Content Services document library/site with the Create Library dialog: ![Dropdown sites](../docassets/images/CreateLibraryDialog.png) For more information about the dialog, see the [component documentation](../content-services/dialogs/library.dialog.md) ### Tree view component ![TreeView component screenshot](../docassets/images/tree-view.png) Shows the folder and subfolders of a node as a tree view. For more information about the [Tree View component,](../content-services/components/tree-view.component.md) see the [component documentation](../content-services/components/tree-view.component.md) #### Basic Usage ```html ``` ### Deprecation removal Following the [SEMVER 2.0](https://semver.org/) strategy, ADF 3.0.0 introduces breaking changes only in major versions like this one. For this reason, all the features, components and services, marked as deprecated in ADF 2.X, have been removed. ### Activiti 7 support (Experimental) From ADF 3.0.0, Alfresco is excited to announce ADF support for [Activiti 7](https://www.activiti.org/). This is a first iteration and more coverage of the services will be added in the following versions of ADF. This is the reason why this support is marked as **experimental** for this release. The next release (3.1) plans on moving from experimental to standard ADF components with more complete coverage. This ADF release introduces a collection of brand new components re-designed and implemented from scratch for [Activiti 7](https://www.activiti.org/). Below is a list of all new components services and pipes added along with links to documentation and source code: #### Components | Name | Description | Source link | | ---- | ----------- | ----------- | | [App list cloud component](../process-services-cloud/components/app-list-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Shows all deployed cloud application instances. | [Source](../../lib/process-services-cloud/src/lib/app/components/app-list-cloud.component.ts) | | [Group cloud component](../process-services-cloud/components/group-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Searches Groups. | [Source](../../lib/process-services-cloud/src/lib/group/components/group-cloud.component.ts) | | [Edit process filter cloud component](../process-services-cloud/components/edit-process-filter-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Shows Process Filter Details. | [Source](../../lib/process-services-cloud/src/lib/process/process-filters/components/edit-process-filter-cloud.component.ts) | | [Process filters cloud component](../process-services-cloud/components/process-filters-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Lists all available process filters and allows to select a filter. | [Source](../../lib/process-services-cloud/src/lib/process/process-filters/components/process-filters-cloud.component.ts) | | [Process list cloud component](../process-services-cloud/components/process-list-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Renders a list containing all the process instances matched by the parameters specified. | [Source](../../lib/process-services-cloud/src/lib/process/process-list/components/process-list-cloud.component.ts) | | [Start process cloud component](../process-services-cloud/components/start-process-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Starts a process. | [Source](../../lib/process-services-cloud/src/lib/process/start-process/components/start-process-cloud.component.ts) | | [People cloud component](../process-services-cloud/components/people-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Allows one or more users to be selected (with auto-suggestion) based on the input parameters. | [Source](../../lib/process-services-cloud/src/lib/task/start-task/components/people-cloud/people-cloud.component.ts) | | [Start task cloud component](../process-services-cloud/components/start-task-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Creates/starts a new task for the specified app. | [Source](../../lib/process-services-cloud/src/lib/task/start-task/components/start-task-cloud.component.ts) | | [Edit task filter cloud component](../process-services-cloud/components/edit-task-filter-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Edits Task Filter Details. | [Source](../../lib/process-services-cloud/src/lib/task/task-filters/components/edit-task-filter-cloud.component.ts) | | [Task filters cloud component](../process-services-cloud/components/task-filters-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Shows all available filters. | [Source](../../lib/process-services-cloud/src/lib/task/task-filters/components/task-filters-cloud.component.ts) | | [Task header cloud component](../process-services-cloud/components/task-header-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Shows all the information related to a task. | [Source](../../lib/process-services-cloud/src/lib/task/task-header/components/task-header-cloud.component.ts) | | [Task list cloud component](../process-services-cloud/components/task-list-cloud.component.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Renders a list containing all the tasks matched by the parameters specified. | [Source](../../lib/process-services-cloud/src/lib/task/task-list/components/task-list-cloud.component.ts) | #### Pipes | Name | Description | Source link | | ---- | ----------- | ----------- | | [Group initial pipe](../process-services-cloud/pipes/group-initial.pipe.md) | Extracts the initial character from a group name. | [Source](../../lib/process-services-cloud/src/lib/group/pipe/group-initial.pipe.ts) | #### Services | Name | Description | Source link | | ---- | ----------- | ----------- | | [Apps process cloud service](../process-services-cloud/services/apps-process-cloud.service.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Gets details of deployed apps for the current user. | [Source](../../lib/process-services-cloud/src/lib/app/services/apps-process-cloud.service.ts) | | [Group cloud service](../process-services-cloud/services/group-cloud.service.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Searches and gets information for groups. | [Source](../../lib/process-services-cloud/src/lib/group/services/group-cloud.service.ts) | | [Process filter cloud service](../process-services-cloud/services/process-filter-cloud.service.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Manage Process Filters, which are pre-configured Process Instance queries. | [Source](../../lib/process-services-cloud/src/lib/process/process-filters/services/process-filter-cloud.service.ts) | | [Process list cloud service](../process-services-cloud/services/process-list-cloud.service.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Searches processes. | [Source](../../lib/process-services-cloud/src/lib/process/process-list/services/process-list-cloud.service.ts) | | [Start process cloud service](../process-services-cloud/services/start-process-cloud.service.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Gets process definitions and starts processes. | [Source](../../lib/process-services-cloud/src/lib/process/start-process/services/start-process-cloud.service.ts) | | [Start task cloud service](../process-services-cloud/services/start-task-cloud.service.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Starts standalone tasks. | [Source](../../lib/process-services-cloud/src/lib/task/start-task/services/start-task-cloud.service.ts) | | [Task filter cloud service](../process-services-cloud/services/task-filter-cloud.service.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Manages task filters. | [Source](../../lib/process-services-cloud/src/lib/task/task-filters/services/task-filter-cloud.service.ts) | | [Task cloud service](../process-services-cloud/services/task-cloud.service.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Manages cloud tasks. | [Source](../../lib/process-services-cloud/src/lib/task/services/task-cloud.service.ts) | | [Task list cloud service](../process-services-cloud/services/task-list-cloud.service.md) ![Experimental](../docassets/images/ExperimentalIcon.png) | Searches tasks. | [Source](../../lib/process-services-cloud/src/lib/task/task-list/services/task-list-cloud.service.ts) | ## Localization This release includes: French, German, Italian, Spanish, Japanese, Dutch, Norwegian (BokmÅl), Russian, Brazilian Portuguese and Simplified Chinese versions. ## References Below is a brief list of references to help you start using the new release: - [Getting started guides with Alfresco Application Development Framework](https://community.alfresco.com/community/application-development-framework/pages/get-started) - [Alfresco ADF Documentation on the Builder Network](../README.md) - [Gitter chat supporting Alfresco ADF](https://gitter.im/Alfresco/alfresco-ng2-components) - [ADF examples on GitHub](https://github.com/Alfresco/adf-examples) - [Official GitHub Project - alfresco-ng2-components](https://github.com/Alfresco/alfresco-ng2-components) - [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api) - [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app) Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions. ### Icon Component Universal [icon component](../core/components/icon.component.md) that supports Material Ligatures and custom registered SVG icons in the same format. ```html ``` See [Icon Component](../core/components/icon.component.md) [documentation](../core/components/icon.component.md) for more details. ## Issues addressed Below the list of JIRA issues, closed for this release. ### Documentation ### Feature ### Epic ### Story ### Bug ### Task ### Feature Documentation ### Feature Bug ### Feature (Task) Please refer to the [Alfresco issue tracker](https://issues.alfresco.com/jira/projects/ADF/issues/ADF-581?filter=allopenissues) for other known issues in this release. If you have any questions about the release, please contact us using [Gitter](https://gitter.im/Alfresco/alfresco-ng2-components). Thanks to the whole application team and the amazing Alfresco community for the hard work.